Get tasks results
Read generated objects after a source task is completed, failed, or stopped. While it is still active, this endpoint returns 409 ResultsNotReady.
Each result is a JSON object. Failed and stopped tasks can keep partial results. Use limit for page size and pass nextCursor unchanged to read more. The guide below explains the response format.
Required permissions: enrichments:tasks:read
Authorizations
AuthorizationstringheaderrequiredUse an account access token as Bearer <token>.
Path parameters
taskIdstringrequiredCopy the task's returned @id unchanged. New tasks use a 32-character hexadecimal UUID4; existing IDs with the task_ prefix remain supported.
"^(?:task_)?[a-f0-9]{32}$"Query parameters
cursorstringlimitinteger1maximum: 100default: 50Response
Stable page of flat generated objects
200 · application/json
taskIdstringrequiredresultsobject[]requiredShow child attributes
objectAdditional properties are supported.
nextCursorstring | nullrequiredSource task results
Each result is a JSON object with fields chosen by the source and your settings. There is no
inputId, per-input status, or enrichment outputs wrapper.
The catalog's outputSchema lists known fields. Results can include extra fields before the catalog lists them. Keep any extra fields when reading results.
Example response:
{ "taskId": "00000000000040008000000000000001", "results": [ { "instagramUsername": "example_user", "instagramProfileUrl": "https://www.instagram.com/example_user/" } ], "nextCursor": null}Pages default to 50 objects and accept limit from 1 to 100. A response is at
most 128 KiB and may contain fewer objects than requested. Pass nextCursor
unchanged until it is null. Once a task finishes, its result order stays the same. That order does not
necessarily show when objects were found.
Read all result pages
Replace TASK_ID with the ID returned when you created the task. Request the first page:
import requests
url = "https://api.datablist.com/v1/sources/tasks/TASK_ID/results"
headers = { "Accept": "application/json", "Authorization": "Bearer <token>"}
params = { "limit": "50"}
response = requests.get(url, headers=headers, params=params)
print(response.text)If the response has a nextCursor, copy it into the next request's cursor parameter. Replace NEXT_CURSOR below with that value:
import requests
url = "https://api.datablist.com/v1/sources/tasks/TASK_ID/results"
headers = { "Accept": "application/json", "Authorization": "Bearer <token>"}
params = { "limit": "50", "cursor": "NEXT_CURSOR"}
response = requests.get(url, headers=headers, params=params)
print(response.text)Repeat with each new nextCursor until it is null. A short page does not mean you have reached the end.
Retrieve partial results after failures and stops. The task's error reports
execution failures and credits.used reports actual usage, including paid work
that produced no objects. A task can complete successfully with an empty result
set.