createTask : создание задачи





ВНИМАНИЕ

Документация переехала на новое место сюда.

Документация на anticaptcha.atlassian.net больше не обновляется
и может быть устаревшей.












Метод создает задачу на решение выбранного типа капчи. В параметрах передаются авторизационные данные клиента, типизированные данные задачи и другие необязательные параметры.

Адрес метода: https://api.anti-captcha.com/createTask 
Формат запроса: JSON POST

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

Параметр
Тип
Обязательный
Значение
clientKeyStringДаКлюч от учетной записи, найти его можно здесь
taskОбъект задачиДаМассив данных о задаче. Список типов задач капч здесь.
softIdIntНетИдентификатор приложения из AppCenter, необходимо для получения разработчиками 10% с трат клиентов.
languagePoolStringНет

Определяет язык очереди, в которую должна попасть капча.

en (по-умолчанию) : англоязычная очередь
rn  : группа стран Россия, Украина, Беларусь, Казахстан

callbackUrlStringНетВеб адрес для отправки результата задачи капчи или фабрики. Данные отправляются через AJAX POST.
Содержимое идентично ответу метода getTaskResult.
Содержимое ответа вашего сервера не проверяется и он должен успеть принять наш запрос за 2 секунды, затем соединение закрывается.


Примеры:


 Пример на CURL для Recaptcha v2
Solve image captcha
curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"NoCaptchaTaskProxyless",
            "websiteURL":"http://makeawebsitehub.com/recaptcha/test.php",
            "websiteKey":"6LfI9IsUAAAAAKuvopU0hfY8pWADfR_mogXokIIZ"
        },
    "softId":0,
    "languagePool":"en"
}' https://api.anti-captcha.com/createTask
 Пример на CURL для отладки запросов

Если у вас не получается понять, что вы шлете в наше API, то у нас есть тестовый метод для отладки.

Solve image captcha
curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{"name1":"value", "name2":"any json data here to see how it looks at our end"}' \
     https://api.anti-captcha.com/test
 Задача решения рекапчи с вашим прокси
{
    "clientKey":"dce6bcbb1a728ea8d871de6d169a2057",
    "task":
        {
            "type":"NoCaptchaTask",
            "websiteURL":"http://mywebsite.com/recaptcha/test.php",
            "websiteKey":"6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16",
            "proxyType":"http",
            "proxyAddress":"8.8.8.8",
            "proxyPort":8080,
            "proxyLogin":"proxyLoginHere",
            "proxyPassword":"proxyPasswordHere",
            "userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36"
        },
	"softId":0,
	"languagePool":"en"
}

Да, для этого типа задач требуется прокси. Почему? Ответ /wiki/spaces/API/pages/5079125. Если у вас нет прокси по каким-то причинам, вы можете создать Proxyless задачу, в которой прокси предоставляем мы.

 Задача решения рекапчи БЕЗ прокси
{
    "clientKey":"dce6bcbb1a728ea8d871de6d169a2057",
    "task":
        {
            "type":"NoCaptchaTaskProxyless",
            "websiteURL":"http://mywebsite.com/recaptcha/test.php",
            "websiteKey":"6Lc_aCMTAAAAABx7u2N0D1XnVbI_v6ZdbM6rYf16"
        },
	"softId":0,
	"languagePool":"en"
}
 Задача решения обычной капчи с изображением
{
    "clientKey":"dce6bcbb1a728ea8d563de6d169a2057",
    "task":
        {
            "type":"ImageToTextTask",
            "body":"BASE64_BODY_HERE!",
            "phrase":false,
            "case":false,
            "numeric":false,
            "math":0,
            "minLength":0,
            "maxLength":0
        }
}



Структура ответа:

Параметр
Тип
Значение
errorIdIntegerИдентификатор ошибки.
0 - ошибок нет, задача успешно создана, идентификатор задачи находится в параметре taskId
>1 - код ошибки, информация об ошибке находится в параметрах errorCode и errorDescription
errorCodeStringКод ошибки. См. глоссарий ошибок.
errorDescriptionStringКраткое описание ошибки на английском языке.
taskIdIntegerИдентификатор задания для последующего использования в методе getTask.
Пример ответа
{
    "errorId": 0,
    "taskId": 7654321
}