Skip to content

Download Results

GET/v1/tasks/{token}/result

Once result_available is true, this returns the download URL for the result file together with the final counts. Files are retained for 7 days by default, controlled by the platform’s result_retention_days setting.

{
"task_id": "xKj9aP3qLm7v",
"download_url": "https://api.zelnum.com/api/v1/tasks/xKj9aP3qLm7v/download",
"expires_at": "2026-05-02T10:00:00+00:00",
"summary": {
"submitted": 5000,
"prefiltered": 0,
"deduped": 0,
"total": 5000,
"valid": 3800,
"invalid": 1200,
"unknown": 0,
"unknown_processed": 0,
"unknown_unprocessed": 0
}
}
FieldTypeDescription
task_idstringThe task token, echoed back.
download_urlstring (URL)Where the result file lives. Requires the same API key as every other call.
expires_atstring (ISO 8601) | nullWhen the file stops being downloadable.
summary.submittedintegerRows received in the submission.
summary.prefilteredintegerRows dropped before detection.
summary.dedupedintegerDuplicate rows removed.
summary.totalintegerRows actually checked.
summary.validintegerRows confirmed as registered.
summary.invalidintegerRows confirmed as not registered.
summary.unknownintegerRows the provider could not resolve.
summary.unknown_processedintegerUnknown rows that were retried and settled.
summary.unknown_unprocessedintegerUnknown rows still unresolved, and refunded.

GET/v1/tasks/{token}/download

Terminal window
curl -X GET "https://api.zelnum.com/api/v1/tasks/xKj9aP3qLm7v/download" \
-H "X-API-Key: YOUR_KEY_HERE" \
-o result.zip

This endpoint streams a file rather than JSON: application/zip, or text/csv when the task produced a single result. It returns 404 when the task is not found, has expired, or belongs to another account, and 422 result_not_ready when the task has not finished.

download_url and this endpoint are interchangeable — the URL exists so a browser or a worker can fetch the file without constructing the path.

  • Bulk examples — the whole submit → poll → download cycle in one script