ImageToTextTask: solve an image captcha

Post an image body and receive text from it. Text can only contain digits, letters, special characters and a space. GIF animations are supported, up to 500kb. Custom captchas like “find a cat in this series of images and enter its number” are not supported.

Task object

PropertyTypeRequiredDefault valuePurpose
typeStringYesImageToTextTaskDefines the type of task.
bodyStringYesFile body encoded in base64. Make sure to send it without line breaks. Do not include ‘data:image/png,’ or similar tags, only clean base64!
phraseBooleanNofalsefalse – no requirements
true – requires workers to enter an answer with at least one “space”. If there are no spaces, they will skip the task, so use it with caution.
caseBooleanNotruefalse – no requirements
true – workers see a special mark indicating that the answer must be entered with case sensitivity.
numericIntegerNo00 – no requirements
1 – only numbers are allowed
2 – any letters are allowed except numbers
mathBooleanNofalse0 – no requirements
1 – only numbers are allowed
2 – any letters are allowed except numbers
minLengthIntegerNo00 – no requirements
>1 – defines minimum length of the answer
maxLengthIntegerNo0
0 – no requirements
>1 – defines maximum length of the answer
commentStringNo
Additional comments for workers like “enter red text”.
The result is not guaranteed and is totally up to the worker.
websiteURLStringNoOptional parameter to distinguish source of image captchas in spending statistics.

Request example

curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"ImageToTextTask",
            "body":"BASE64_BODY_HERE__NO_NEWLINES__NO_EXTRA_TAGS__ONLY_CLEAN_BASE64",
            "phrase":false,
            "case":false,
            "numeric":0,
            "math":false,
            "minLength":0,
            "maxLength":0
        }
}' https://api.ocrdatasolutions.com/createTask

Response example

JSON with no errors

{
    "errorId": 0,
    "taskId": 7654321
}

JSON with an error

{
    "errorId": 1,
    "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
    "errorDescription": "Account authorization key not found in the system"
}

Retrieve the solution

Use method getTaskResult to request the solution. Give the worker about 5 seconds before making your first request. If the worker is still busy, retry in 3 seconds.

Task solution object

PropertyTypePurpose
textStringText from image captcha
urlStringWeb address where we’ll store the captcha for the next 24 hours, after which it will be removed.

Response example

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "text":"deditur",
        "url":"http://61.39.233.233/1/147220556452507.jpg"
    },
    "cost":"0.000700",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}