VK Cloud logo
Обновлена 20 марта 2024 г. в 07:17

Распознавание контента 18+

Данный метод позволяет узнать, есть ли запрещенный контент (18+) на фотографии.

HOST: https://smarty.mail.ru

ENDPOINT: /api/v1/adult/detect

Запрос

Авторизационные данные передаются в строке запроса:

Параметр
Тип
Обязательность
Значение
oauth_token
string
Да
Токен доступа OAuth2
oauth_provider
string
Да
Провайдер OAuth2

Параметры запроса передаются в формате JSON в теле запроса:

Параметр
Тип
Обязательность
Значение
file
string
Да
Массив файлов. Имена файлов должны отличаться
meta
object
Да
Тело запроса
images
array
Да
Метаданные передаваемых изображений
name
string
Да
Имена файлов для сопоставления файлов в запросе и ответе

Пример запроса

curl -X POST "https://smarty.mail.ru/api/v1/adult/detect?oauth_token=your_token&oauth_provider=mcs" \ -H "Accept: application/json" \ -H "Content-Type: multipart/form-data" \ -F "file=@lena_color.png" \ -F "meta={  "images": [    {      "name": "file"    }  ]}"

Ответ

Параметр
Тип
Значение
status
int
Код статуса выполненной операции
body
object
Тело ответа
objects
array
Массив результатов для каждого файла

status

Возможные ответы:

  • 200 — успешное взаимодействие с серверами Vision. При остальных статусах описание ошибки приводится в body.
  • 400 — некорректный запрос: проверьте правильность синтаксиса введенных данных.
  • 403 — доступ запрещен: обновите токен доступа или выберите другого провайдера.
  • 500 — внутренняя ошибка сервера.

objects

Параметр
Тип
Обязательность
Значение
status
int
Да
Код статуса выполненной операции: 0 — успешно, 1 — перманентная ошибка, 2 — временная ошибка
error
string
Нет
Текстовое описание ошибки
name
string
Да
Имя файла для сопоставления файлов в запросе и ответе
safe
number
Да
Степень уверенности в том, что на картинке нет контента 18+; значение в отрезке [0;1]

Пример ответа

{   "status": 200,   "body": {      "objects": [         {            "status": 0,            "name": "file",            "safe": 0.010846120305359364         }      ]   }}