Pular para o conteúdo
StatusPainel

Referência da API

createTask — criar tarefa

Esta página foi traduzida automaticamente da versão em chinês e pode conter erros. Prevalece a versão em chinês.

createTask cria uma tarefa de reconhecimento; task.type indica qual captcha resolver. Os tipos assíncronos retornam um taskId, que você usa depois em getTaskResult para obter o resultado; os tipos síncronos retornam o resultado diretamente.

POSThttps://api.yescaptcha.com/createTaskEndpoint global
POSThttps://cn.yescaptcha.com/createTaskEndpoint China
Campo Tipo Obrigatório Descrição
clientKey string Sim Sua chave de conta, copiada no Painel de yescaptcha.com
task object Sim O objeto da tarefa. Deve conter type; os demais campos dependem do tipo de tarefa (veja a página de cada tipo)
softID integer Não ID de desenvolvedor. Envie o seu quando outras pessoas usarem o seu software, para receber a participação do desenvolvedor; veja Participação do desenvolvedor

Reconhecer um captcha de imagem (síncrono):

{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "ImageToTextTaskOcrBase",
"body": "BASE64_IMAGE"
}
}

Obter um token do reCAPTCHA v2 (assíncrono):

{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTaskProxyless",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
}

Os campos de task de cada tipo estão nas páginas em Tipos de tarefa e preços.

Tipos assíncronos:

{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Guarde o taskId e comece a chamar getTaskResult 5 segundos depois.

Tipos síncronos:

{
"errorId": 0,
"status": "ready",
"taskId": "2376919c-1863-11ec-a012-94e6f7355a0b",
"solution": {
"text": "LMResm"
}
}

Falha:

{
"errorId": 1,
"errorCode": "ERROR_TASK_NOT_SUPPORTED",
"errorDescription": "任务类型不正确或不受支持"
}

O servidor verifica a requisição nesta ordem e retorna o primeiro erro encontrado. Nenhum desses casos é cobrado:

  1. O corpo é um JSON válido: ERROR_REQUEST_FORMATS
  2. clientKey está presente: ERROR_REQUIRED_FIELDS
  3. clientKey existe: ERROR_KEY_DOES_NOT_EXIST
  4. A chave não está em pausa automática: ERROR_IP_BLOCKED_5MIN (veja Limite de tarefas simultâneas e pausa automática)
  5. O saldo é maior que 10 pontos: ERROR_ZERO_BALANCE
  6. task está presente: ERROR_TASK_ABSENT
  7. task.type existe: ERROR_TASK_NOT_SUPPORTED
  8. Todos os campos obrigatórios estão presentes: ERROR_REQUIRED_FIELDS (errorDescription indica qual campo está faltando)
  9. Em tarefas de imagem, a imagem é válida: ERROR_ZERO_CAPTCHA_FILESIZE, ERROR_IMAGE_TYPE_NOT_SUPPORTED e outros

Criar uma tarefa e consultar periodicamente o resultado (tipo assíncrono):

curl -s https://api.yescaptcha.com/createTask \
-H 'Content-Type: application/json' \
-d '{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTaskProxyless",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
}'
# Returns {"errorId":0,"taskId":"..."}; then poll every 5 seconds:
curl -s https://api.yescaptcha.com/getTaskResult \
-H 'Content-Type: application/json' \
-d '{"clientKey": "YOUR_CLIENT_KEY", "taskId": "TASK_ID"}'