Перейти к содержимому

API профиля Instagram по ID/имени: массовая проверка

Проверяйте аккаунты Instagram по имени пользователя (ID) или ссылке на профиль и получайте перезалитое фото лица, вырезанное из последней публикации с лицом, полное имя, число публикаций, подписчиков и подписок, а также признаки приватности и верификации. Несуществующие аккаунты возвращаются как неактивные; приватные — как активные с данными профиля, но без фото. Задача использует стандартный асинхронный пакетный процесс.

Формат входных данных

Загрузите текстовый файл с одним именем пользователя (ID) Instagram в строке. Принимаются username, @username и полные ссылки instagram.com/<username>; регистр не учитывается.

Числовые ID Instagram (pk) также принимаются и преобразуются в имя пользователя.

cristiano
@zuck
https://www.instagram.com/natgeo/
1367088262

Создание задачи

POST https://api.checknumber.ai/v1/tasks

Окно терминала
curl --location 'https://api.checknumber.ai/v1/tasks' \
--header 'X-API-Key: YOUR_API_KEY' \
--form 'file=@"./input.txt"' \
--form 'task_type="instagram_profile"'

API возвращает ID задачи. Сохраните его для опроса статуса.

Ответ при загрузке

{
"task_id": "d4g8o46p2jvh04o9uolg",
"status": "pending",
"total": 5000,
"estimated_amount": {
"amount": "1.250000",
"currency": "USD"
},
"message": "Task created successfully"
}

Проверка статуса задачи

POST https://api.checknumber.ai/v1/gettasks

Окно терминала
curl --location 'https://api.checknumber.ai/v1/gettasks' \
--header 'X-API-Key: YOUR_API_KEY' \
--form 'task_id="d4g8o46p2jvh04o9uolg"'

Опрашивайте, пока status не станет exported. Не считайте pending или processing завершённым результатом.

Ответ в обработке

{
"task_id": "d4g8o46p2jvh04o9uolg",
"status": "processing",
"total": 5000,
"success": 2500,
"failure": 0
}

Ответ после экспорта

{
"task_id": "d4g8o46p2jvh04o9uolg",
"status": "exported",
"total": 5000,
"success": 5000,
"failure": 0,
"result_url": "https://example-link-to-results.zip",
"actual_amount": {
"amount": "1.250000",
"currency": "USD"
}
}

Поля результата

ПолеОписаниеПример
usernameОтправленное имя пользователя или ссылка, без изменений.cristiano
activatedСуществует ли аккаунт (no = такого имени нет).yes
avatarПубличная ссылка на фото лица из последней публикации с лицом, размещённое на ins.waavatar.xyz (бессрочно); пусто, если лицо не найдено, аккаунт приватный или без публикаций.https://ins.waavatar.xyz/ins/ec966a0f864e4aba1fd2899dce2c3fed.jpg
ig_usernameОпределённое имя пользователя Instagram (заполняется и когда отправлен числовой ID); пусто для несуществующих аккаунтов.villavicenciopaul
full_nameИмя, показанное в профиле.Cristiano Ronaldo
postsЧисло публикаций.4138
followersЧисло подписчиков.679725371
followingЧисло подписок.636
privateПриватный ли аккаунт (yes/no).no
verifiedЕсть ли значок верификации (yes/no).yes
face_statusРезультат извлечения лица: ok (фрагмент больше 400 px), ok_small (сохранено небольшое лицо), no_face, no_640_face (нет изображения не менее 640 px), private, empty (нет публикаций), posts_missed.ok

Работа с файлом результата

Скачивайте файл по result_url только после экспорта. Сохраняйте имена столбцов при дальнейшей обработке.

Поля ответа

ПолеОписание
created_atВремя создания задачи.
updated_atВремя последнего обновления статуса.
task_idУникальный идентификатор задачи.
statuspending, processing, exported или failed.
totalВсего обработано значений.
successУспешно обработано.
failureОбработано с ошибкой.
result_urlСсылка для скачивания после экспорта.
actual_amountИтоговая списанная сумма, если доступна.
estimated_amountОценочная сумма при создании задачи.

Коды состояния

СтатусОписание
200Запрос выполнен.
202Задача создана, оценочная сумма списана.
400Неверный файл, неподдерживаемый тип задачи или слишком мало корректных строк.
401Отсутствует или неверный ключ API.
402Недостаточно средств.
403Продукт недоступен для вашего аккаунта (снят или только по белому списку); обратитесь в поддержку.
404Задача не найдена.
413Загруженный файл слишком большой.
500Внутренняя ошибка сервера; повторите позже.
503Продукт временно недоступен (пауза на обслуживание); средства не списываются, повторите позже.

Примечания

  • Задача асинхронная; используйте ID для опроса статуса.
  • Перед загрузкой проверьте лимиты входных данных продукта.
  • Строки с ошибками отражаются в экспортированном результате и счётчиках.
  • Фото вырезаются из публичных публикаций в разрешении, которое Instagram отдаёт без входа (640 px), поэтому большинство фрагментов меньше 400 px и помечаются ok_small.
  • Поля основаны на текущей выборке и могут измениться при изменении схемы экспорта.