API: Восстановление старых фотографий с помощью искусственного интеллекта

Аторизируйтесь чтобы увидеть ваш Токен

Шаг 1. Загрузка изображения на сервер (POST)

Пример запроса cURL
curl -X POST
-H "Content-Type: application/json"
-H "Accept: application/json"
-H "Authorization: Bearer ********************************"
-d '{
"photo": "https://i.pinimg.com/236x/b8/e2/33/b8e233875fd0c317274a4d78c3d0b309.jpg",
"version": "1.3",
"scale": 2,
"webhook": "https://your-domain.com/gfpgan",
"with_scratch": 0,
"only_oldPhotoRestoration": 0
}'
https://b-info.ru/api/photo
Пример запроса PHP
use GuzzleHttp\Client;
use GuzzleHttp\RequestOptions;

$token = '********************************';

$httpClient = new Client();

$body = [
 'photo' => 'https://nastroy.net/pic/images/201911/360934-1573544474.jpg',
 'version' => '1.3',
 'scale' => 2,
 'webhook' => 'https://your-domain.com/gfpgan',
 'with_scratch' => 0,
 'only_oldPhotoRestoration' => 0,
];

$response = $httpClient->post(
 'https://b-info.ru/api/photo',
 [
  RequestOptions::HEADERS => [
   'Accept' => 'application/json',
   'Authorization' => 'Bearer ' . $token,
  ],
  RequestOptions::JSON => $body
 ]
);

print_r($response->getBody()->getContents());

Параметры запроса

Название Тип Обязательный По умолчанию Описание
photo string URL-адрес фото (.jpg .jpeg .png) размер файла не более 1МБ
version string Версия модели. Поддерживается версия 1.3 или 1.4
scale int Коэффициент масштабирования (1,2,3)
with_scratch int 0 Использовать дополнительную реставрацию удаление царапин, шумов, изломов (0 - не сипользовать, 1 - использовать)
only_oldPhotoRestoration int 0 Не использовать генерацию лиц gfpgan (0 - не сипользовать, 1 - использовать)
webhook string null Вы можете указать URL-адрес веб-перехватчика (webhook), который будет вызываться после завершения обработки фото

Параметры Ответа

{
"id_input": "808d9a75dc892fd793777bb6bd65f755",
"img_input": "https://i.pinimg.com/236x/b8/e2/33/b8e233875fd0c317274a4d78c3d0b309.jpg",
"scale": 2,
"with_scratch": 0,
"only_oldPhotoRestoration": 0,
"version": "1.3",
"status": "start",
"webhook": "https://your-domain.com/gfpgan"
}
Название Тип Описание
id_input string Уникальный ID обработанного изображения
img_input string URL-адрес входного фото
scale int Коэффициент масштабирования
with_scratch int Дополнительная реставрация удаление царапин, шумов, изломов (0 - не использовалась, 1 - использовалась)
only_oldPhotoRestoration int Использовалась генерация лиц gfpgan (0 - не использовалась, 1 - использовалась)
version string Версия модели
status string Статус задания
webhook string URL-адрес веб-перехватчика (webhook)

Обратите внимание, что статус "start" указывает, что задание поступило в очередь на исполнение, но результатов пока еще нет. Получить результат можно другим методом из API, используя идентификатор id_input из текущего ответа. Среднее время обработки задания занимает от 1 до 3 минут.

Шаг 2. Получить результат (GET)

Пример запроса cURL
curl -X GET
-H "Content-Type: application/json"
-H "Accept: application/json"
-H "Authorization: Bearer ********************************"
https://b-info.ru/api/photo/{id_input}
Пример запроса PHP
use GuzzleHttp\Client;
use GuzzleHttp\RequestOptions;

$token = '********************************';

$httpClient = new Client();

$response = $httpClient->get(
 'https://b-info.ru/api/photo/{id_input}',
 [
   RequestOptions::HEADERS => [
    'Accept' => 'application/json',
    'Authorization' => 'Bearer ' . $token,
   ],
 ]
);

$array = json_decode($response->getBody()->getContents(), true);

print_r($array);

Параметры запроса

Название Тип Обязательный Описание
id_input string Уникальный ID изображения, полученный методом загрузки изображения

Параметр Ответа

{
"id_input": "cae7dec10deb5077697e508ef54c6fef",
"datetime": "2023-09-06 13:54:15",
"end_datetime": "2023-09-06 13:55:26", "version": "1.3",
"with_scratch": 0,
"only_oldPhotoRestoration": 0,
"status": "success",
"block": 2,
"restored_imgs": "https://b-info.ru/getphoto/be3866c57bd8c56d5c262c6559ab549e/cae7dec10deb5077697e508ef54c6fef",
"type_input": "api"
"timework": 12,
"price": "0.60"
}
Название Тип Описание
id_input string Уникальный ID обработанного изображения
datetime string Дата загрузки
end_datetime string Дата выполнения
version string Версия модели
with_scratch int Дополнительная реставрация удаление царапин, шумов, изломов (0 - не использовалась, 1 - использовалась)
only_oldPhotoRestoration int Использовалась генерация лиц gfpgan (0 - не использовалась, 1 - использовалась)
status string Статус задания
  • start - подготовка
  • old - предварительная реставрация
  • gfpgan - генерация лиц
  • success - готов результат
block string Статус очереди
  • 0 - ожидает очереди
  • 1 - в очереди
  • 2 - покинуло очередь
restored_imgs string URL-адрес восстановленного изображения
type_input string Тип обработки
timework int Затрачено секунд на обработку фото
price string Стоимость затраченного времени, руб.

Дополнительно. Получить список результатов (GET)

Пример запроса cURL
curl -X GET
-H "Content-Type: application/json"
-H "Accept: application/json"
-H "Authorization: Bearer ********************************"
https://b-info.ru/api/photo
Пример запроса PHP
use GuzzleHttp\Client;
use GuzzleHttp\RequestOptions;

$token = '********************************';

$httpClient = new Client();

$response = $httpClient->get(
'https://b-info.ru/api/photo',
 [
   RequestOptions::HEADERS => [
   'Accept' => 'application/json',
   'Authorization' => 'Bearer ' . $token,
  ],
 ]
);

$array = json_decode($response->getBody()->getContents(), true);

print_r($array);

Параметры запроса

Запрос не содержит параметров

Параметры Ответа

{
 "id_input": "cae7dec10deb5077697e508ef54c6fef",
 "datetime": "2023-09-06 13:54:15",
  "end_datetime": "2023-09-06 17:03:26",
 "version": "1.3",
 "with_scratch": 0,
 "only_oldPhotoRestoration": 0,
 "status": "success",
 "block": 2,
 "restored_imgs": "https://b-info.ru/getphoto/be3866c57bd8c56d5c262c6559ab549e/cae7dec10deb5077697e508ef54c6fef",
 "type_input": "api"
 "timework": 12,
 "price": "0.60"
 "access_token": "********************************"
}
{
 "id_input": "cae7dec10deb5077697e508ef54c6fe1",
 "datetime": "2023-09-06 13:54:12",
  "end_datetime": "2023-09-06 17:03:26",,
 "version": "1.4",
 "with_scratch": 1,
 "only_oldPhotoRestoration": 0,
 "status": "start",
 "block": 2,
 "restored_imgs": "https://b-info.ru/getphoto/be3866c57bd8c56d5c262c2359ab549e/cae7dec2323377697e508ef54c6fef",
 "type_input": "api"
 "timework": 100,
 "price": "1.60"
 "access_token": "********************************"
}

Дполнительные параметры ответа

Название Тип Описание
access_token string Ваш Токен

Дополнительно. Примите WEBHOOK

После завершения обработки фотографии мы отправим вам POST запрос webhook на указанный ранее URL-адрес в параметре запроса "webhook"

Пример структуры отправляемого запроса

{"img":
 {
  "id_input":"a43d18f5f5915c425d0db95ce2726610",
  "restored_imgs":"https://b-info.ru/getphoto/450dd6f8ffe4d1f352bf969d94d759de/a43d18f5f5915c425d0db95ce2726610"
},
"status":
 {
  "status":"success",
  "block":0
 },
"param":
 {
  "version":"1.3",
  "scale":"2.00",
  "with_scratch":0,
  "only_oldPhotoRestoration":0
 },
"error":
 {
  "cod":0,
  "error":null
 },
"date":
 {
  "datetime":"2023-09-06 15:40:02"
 },
 {
  "end_datetime":"2023-09-06 15:40:02"
 },
"price":
 {
  "timework":12,
  "price":0.60
 },
"token":
 {
  "access_token":"********************************"
 }
}

Описание параметров

Название Тип Описание
img.id_input string Уникальный ID обработанного изображения
img.restored_imgs string URL-адрес восстановленного изображения
status.status string Статус задания
status.block string Статус очереди
  • 0 - ожидает очереди
  • 1 - в очереди
  • 2 - покинуло очередь
param.version string Версия модели
param.scale string Коэффициент масштабирования
param.with_scratch int Дополнительная реставрация удаление царапин, шумов, изломов (0 - не использовалась, 1 - использовалась)
param.only_oldPhotoRestoration int Использовалась генерация лиц gfpgan (0 - не использовалась, 1 - использовалась)
error.cod int Код ошибки
error.error string Описание ошибки
date.datetime string Дата загрузки
date.end_datetime string Дата завершения задания
price.timework int Затрачено секунд на обработку фото
price.price number Стоимость затраченного времени, руб.
token.access_token string Токен