UNLOCK API
Áudio

Áudio

Como enviar uma tarefa de Áudio para a UNLOCK API com createTask ou in.php: nomes do tipo de tarefa, todos os parâmetros, o objeto solution, os campos de proxy e exemplos de código em 7 linguagens.
Preço
$0.25 $0.00025 por tarefa
Você envia
O áudio em base64 (MP3), até 500 KB, e o idioma
Você recebe
As palavras da gravação

Visão geral e preço

Nomes do tipo de tarefa

Este tipo tem um único nome.
AudioTask

Objeto da tarefa

type
StringObrigatório
Nome do tipo de tarefa. Reconhecido com letras maiúsculas ou minúsculas. AudioTask
body
StringObrigatório
O arquivo de áudio em base64 (MP3), com até cerca de 500 KB.
lang
StringOpcional
Idioma falado no áudio, por exemplo en.

Campos que não aparecem aqui são repassados ao resolvedor como foram enviados.

Requisição

POST /createTask
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    "type": "AudioTask",
    "body": "SUQzBAAAAAAAI1RTU0U...",
    "lang": "en"
  }
}

Objeto solution

Retornado em solution quando status é ready.
text
String
A resposta como texto.
POST /getTaskResult
{
  "errorId": 0,
  "taskId": 1001,
  "status": "ready",
  "solution": {
    "text": "five three nine two"
  },
  "cost": "0.00025",
  "createTime": 1791640000,
  "endTime": 1791640014,
  "solveCount": 1
}

Exemplos de código

import time, requests

API = "https://unlock-api.com"
KEY = "YOUR_API_KEY"

task = requests.post(f"{API}/createTask", json={
    "clientKey": KEY,
    "task": {
      "type": "AudioTask",
      "body": "SUQzBAAAAAAAI1RTU0U...",
      "lang": "en"
    }
}).json()
if task["errorId"]:
    raise SystemExit(task["errorCode"])

for _ in range(60):   # 60 x 5 s = the 5 minute task limit
    time.sleep(5)
    r = requests.post(f"{API}/getTaskResult", json={"clientKey": KEY, "taskId": task["taskId"]}).json()
    if r["errorId"]:
        raise SystemExit(f"{r['errorCode']}: {r.get('errorDescription', '')}")   # failed tasks are refunded
    if r["status"] == "ready":
        print(r["solution"]["text"])
        break
else:
    raise SystemExit("timed out")

Método de formulário in.php

A mesma tarefa com a requisição de formulário clássica. res.php retorna a resposta como texto.
in.php, res.php
curl -s "https://unlock-api.com/in.php" -d "key=YOUR_API_KEY&method=audio&lang=en&body=BASE64_AUDIO&json=1"
# {"status":1,"request":"1001"}

curl -s "https://unlock-api.com/res.php?key=YOUR_API_KEY&action=get&id=1001&json=1"
# {"status":0,"request":"CAPCHA_NOT_READY"}  then  {"status":1,"request":"ANSWER"}

API de formulário: in.php e res.php