API
Четыре метода: получить URL для загрузки, создать задачу, узнать результат, повторить неудачную задачу. С правилами параметров, состояниями задач и ошибками.
POST
API загрузки изображений
/api/img_upload
cURL
curl -X POST https://bigjpg.com/api/img_upload \
-H 'X-API-KEY: YOUR_API_KEY' \
-d 'filename=small.jpg' \
-d 'filetype=image/jpeg'
# Use url from the response to upload the file to R2.
curl -X PUT --upload-file small.jpg \
-H 'Content-Type: image/jpeg' \
'UPLOAD_URL'
Python
import requests
filename = 'small.jpg'
filetype = 'image/jpeg'
r = requests.post(
url='https://bigjpg.com/api/img_upload',
headers={'X-API-KEY': 'YOUR_API_KEY'},
data={'filename': filename, 'filetype': filetype}
)
upload = r.json()
with open(filename, 'rb') as image:
requests.put(
url=upload['url'],
data=image,
headers={'Content-Type': filetype}
)
print(upload['fileurl']) # use as input in the enlarge API
- API доступен платным участникам
- Вызовите этот endpoint с API-ключом, чтобы получить временный URL загрузки R2 и публичный URL изображения
- Загрузите файл методом PUT с тем же Content-Type и используйте fileurl как input API увеличения
- Базовый URL:
https://bigjpg.com
POST
Enlarge API
/api/task/
cURL
curl -d '{"style": "art", "noise": "3", "x2": "1", "input": "YOUR_IMAGE_URL"}' \
-H 'X-API-KEY: YOUR_API_KEY' \
https://bigjpg.com/api/task/
Python
import json
import requests
data = {
'style': 'art',
'noise': '3',
'x2': '1',
'file_name': 'small.jpg',
'input': 'YOUR_IMAGE_URL'
}
r = requests.post(
url='https://bigjpg.com/api/task/',
headers={'X-API-KEY': 'YOUR_API_KEY'},
data=json.dumps(data)
)
print(r.json())
- JSON format
- style can be 'art', 'photo' which means 'cartoon illustration', 'photo'
- noise can be '-1', '0', '1', '2', '3' which means 'None', 'Low, 'Medium', 'High', 'Highest'
- x2 can be '1', '2', '3', '4' which means 2x, 4x, 8x, 16x
- input your enlarge image url
- При успехе возвращаются tid (идентификатор задачи), minute (оценка времени) и remaining_api_calls (остаток вызовов).
GET
Result Query API
/api/task/{task_ids}
cURL
curl https://bigjpg.com/api/task/tid1,tid2,tid3,tid100
Python
import requests
r = requests.get(
url='https://bigjpg.com/api/task/tid1,tid2,tid3,tid100'
)
print(r.json())
- Идентификаторы задач можно перечислять через запятую — до 100 за запрос.
- Каждая задача возвращается как {"status": ..., "url": ..., "size": ...}; status бывает new, process, success и error.
- Поля url и size пустые, пока задача не завершена.
POST
Task retry API
/api/task/{task_ids}
cURL
curl -X POST https://bigjpg.com/api/task/tid1,tid2,tid3,tid100
Python
import requests
r = requests.post(
url='https://bigjpg.com/api/task/tid1,tid2,tid3,tid100'
)
print(r.json())
Ответы об ошибках
status
- valid_api_key_required — заголовок X-API-KEY отсутствует или не распознан. Проверьте имя заголовка и то, что ключ принадлежит действующему платному аккаунту.
- requires_vip — аккаунт бесплатный или истёк. Для API нужен активный платный план.
- month_limit — месячный лимит вызовов исчерпан. Успешный вызов возвращает remaining_api_calls, так что остаток видно заранее.
- param_error — параметры вне диапазона: style — art или photo, noise — от -1 до 3, x2 — от 1 до 4 (на бесплатном аккаунте 1–2).
- input_url_error — input должен быть общедоступным URL изображения с http:// или https://.
X-API-KEY: API доступен платным участникам
Свяжитесь с нами по электронной почте для большего количества вызовов API i@bigjpg.com