Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.funbypass.com/llms.txt

Use this file to discover all available pages before exploring further.

GET /getTaskResult/{taskId}

Retrieves the current status and result of a previously created task.

Path Parameters

ParameterTypeDescription
taskIdstring (UUID)The task ID returned by createTask

Response

Processing (202)

The task is still processing. Continue polling.
{
  "errorId": 0,
  "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "processing"
}

Completed Successfully (200)

The task finished successfully. The solution.token contains the result token.
{
  "errorId": 0,
  "solution": {
    "token": "282d9a2536f.d"
  },
  "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "ready"
}

Completed with Error (200)

The task completed without a usable result token.
{
  "errorId": 1,
  "errorCode": "ERROR_CAPTCHA_UNSOLVABLE",
  "errorDescription": "The interaction could not be completed.",
  "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "ready"
}

Task Not Found (404)

The task ID doesn’t exist or has expired.
{
  "errorId": 1,
  "errorCode": "ERROR_TASK_NOT_FOUND",
  "errorDescription": "Task not found or has expired.",
  "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

Task Failed (403)

The task encountered a fatal error.
{
  "errorId": 1,
  "errorCode": "ERROR_TASK_EXCEPTION",
  "errorDescription": "An internal error occurred.",
  "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "failure"
}

Response Fields

FieldTypeDescription
errorIdinteger0 = success, 1 = error
errorCodestringError code (only when errorId: 1)
errorDescriptionstringHuman-readable error message
taskIdstringThe task UUID
statusstringprocessing, ready, or failure
solutionobjectContains the result token (only on success)
solution.tokenstringThe result token for the completed task

Polling Strategy

Poll every 0.5 seconds. Results expire 120 seconds after completion.
import time
import requests

def get_result(task_id, interval=0.5, max_attempts=600):
    for _ in range(max_attempts):
        resp = requests.get(f"https://api.funbypass.com/getTaskResult/{task_id}")
        data = resp.json()

        if data["status"] == "ready":
            if data["errorId"] == 0:
                return data["solution"]["token"]
            raise Exception(f"{data['errorCode']}: {data['errorDescription']}")

        if data["status"] == "failure":
            raise Exception(f"{data['errorCode']}: {data['errorDescription']}")

        time.sleep(interval)

    raise TimeoutError("Polling timeout")

Common Errors

Error CodeHTTPDescription
ERROR_TASK_NOT_FOUND404Task expired or doesn’t exist
ERROR_TASK_EXCEPTION403Internal task failure
ERROR_CAPTCHA_UNSOLVABLE403The interaction could not be completed
ERROR_PROXY_CONNECTION503Proxy connection failed
ERROR_SOLVE_TIMEOUT504Processing exceeded 120 seconds
ERROR_TASK_TIMEOUT504Task exceeded 300 seconds