Наша собственная статистика посещений включена всегда. Google Analytics помогает нам понять, как пользуются нашими публичными страницами (но не вашим рабочим пространством после входа), и включается только с вашего разрешения. См. нашу политику конфиденциальности.

API Akamai sec-cpt solver

POST

Состояние API

Состояние за 24 ч
Норма
Среднее время за 24 ч
—
  • Стабильно / норма
  • Доступно
  • Ограничено
  • Почти недоступно
Норма

API EverySolve для Akamai sec-cpt возвращает токен для вашего сценария прохождения проверки. Отправьте POST /api/v1/captcha, указав в type значение akamai_sec_cpt, и передайте входные данные, перечисленные ниже.Ответ sec-cpt — промежуточная проверка Akamai с cookie проверки и JSON-данными из заблокированного ответа. Эта задача возвращает токен проверки после ожидания, заданного самой проверкой. Она отличается от задачи получения веб-cookie Akamai, для которой нужен только URL.

$3.06 за 1 000 успешных решений ($0.003056 за каждое успешное решение). Неудачные решения не оплачиваются.

Промпт для ИИ

Помогите мне написать скрипт, который вызывает API EveryInfra «Akamai sec-cpt».

Контракт API:
- Запрос: POST https://api.everyinfra.com/api/v1/captcha с заголовком Authorization: Bearer <API Key>. Берите ключ из переменной окружения EVERYINFRA_API_KEY, не указывайте его в коде.
- В теле запроса задайте для type значение akamai_sec_cpt, а параметры укажите рядом, на том же уровне.
- Обязательные параметры:
  - sec_cpt: Значение sec-cpt из блокирующего ответа Akamai.
  - sec_json: JSON-данные проверки, которые идут в паре с sec_cpt в том же ответе.
- Пример тела запроса:
{
  "type": "akamai_sec_cpt",
  "sec_cpt": "<sec_cpt>",
  "sec_json": "<sec_json>"
}
- Оплата: $3.06 за 1 000 успешных решений ($0.003056 за каждое успешное решение). Неудачные решения не оплачиваются.
- При ошибке 422 исправьте параметры по подсказкам и допустимым значениям из ошибки. При 429 или 503 дождитесь истечения Retry-After и повторите попытку.

Прежде чем писать код, спросите меня, сколько записей нужно обработать и в каком формате сохранить результаты, затем согласуйте со мной план и примерную стоимость.

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

ИмяРасположениеТипОбязательныйПо умолчаниюОписание
AuthorizationheaderstringДа-Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода.
typebodystringДаakamai_sec_cptТип капчи, фиксированное значение.
sec_cptbodystringДа-Значение sec-cpt из блокирующего ответа Akamai.
sec_jsonbodyobjectДа-JSON-данные проверки, которые идут в паре с sec_cpt в том же ответе.

Примеры кода

bash
curl -X POST 'https://api.everyinfra.com/api/v1/captcha' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "type": "akamai_sec_cpt",
  "sec_cpt": "<sec_cpt>",
  "sec_json": "<sec_json>"
}'

Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.

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

Предпросмотр полей

Для этих параметров пока нет примера ответа. Здесь показаны структура ответа и поля из описания API, а … служит заполнителем; это не результат реального вызова.

json
{
  "id": "req_…",
  "type": "akamai_sec_cpt",
  "solution": {
    "token": "…"
  },
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}

Откуда брать параметры для Akamai sec-cpt

Скопируйте и sec_cpt, и sec_json из одного и того же ответа с проверкой; JSON-данные не являются ключом сайта.

Код для поиска этих значений на странице

akamai_sec_cpt-1.js
document.cookie.split('; ').find(c => c.startsWith('sec_cpt'))

Как определить Akamai sec-cpt

Ответ sec-cpt — промежуточная проверка Akamai с cookie проверки и JSON-данными из заблокированного ответа.

Чем Akamai sec-cpt отличается от других проверок

Эта задача возвращает токен проверки после ожидания, заданного самой проверкой. Она отличается от задачи получения веб-cookie Akamai, для которой нужен только URL.

Как использовать API для Akamai sec-cpt

API Akamai sec-cpt возвращает токен в token. Формат решения: token. Передайте токен в поле либо в запросе проверки, как предусмотрено целевым сценарием.

  1. 01Выполните запрос GET /api/v1/captcha/types и выберите запись akamai_sec_cpt.
  2. 02Выполните POST /api/v1/captcha, передав type: "akamai_sec_cpt" и обязательные параметры.
  3. 03Получите токен из token.
  4. 04Передайте токен в поле либо в запросе проверки, как предусмотрено целевым сценарием.

Оплата и доступность EverySolve списывает средства только при успешном предоставлении решения. За неудачную попытку итоговое списание не производится, а зарезервированная сумма возвращается автоматически. Получайте available и поля с ценами из GET /api/v1/captcha/types при отправке запроса, а не воспринимайте их как статические данные страницы.

Вопросы об интеграции Akamai sec-cpt

Как определить Akamai sec-cpt перед выбором типа?

Ответ sec-cpt — промежуточная проверка Akamai с cookie проверки и JSON-данными из заблокированного ответа. Используйте akamai_sec_cpt, только если эти признаки соответствуют целевой проверке.

Какие значения с целевой страницы нужны в запросе для Akamai sec-cpt?

Скопируйте и sec_cpt, и sec_json из одного и того же ответа с проверкой; JSON-данные не являются ключом сайта. Передайте sec_cpt и sec_json. Для этого типа не объявлены необязательные параметры.

Что возвращает Akamai sec-cpt и с чем это не следует путать?

API Akamai sec-cpt возвращает токен в token. Формат решения: token. Эта задача возвращает токен проверки после ожидания, заданного самой проверкой. Она отличается от задачи получения веб-cookie Akamai, для которой нужен только URL.

Какой внешний источник описывает интеграцию Akamai sec-cpt?

Страница продукта Akamai даёт сведения об этом семействе защиты из первоисточника. [Открыть справку по Akamai sec-cpt](https://www.akamai.com/products/bot-manager). Специфичные для EverySolve поля и текущую доступность по-прежнему смотрите в каталоге типов.

Справка по Akamai sec-cpt

Все типы капчи

Ошибки и оплата

401
Ключ отсутствует или недействителен.
402
Недостаточно средств на балансе. Сначала пополните баланс.
422
Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
429
Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
503
Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
200 (пусто)
Нет данных. Без списания.

Ошибки