Amazon Product API
List completed tasks
Completed product tasks that have not been collected yet — up to 1,000 per call.
https://api.screamingdata.dev/v1/amazon/product/tasks_ready- Authentication
- API key (HTTP Basic)
- Cost
- Free
- Body
- No request body
Overview
Returns the tasks that finished but have not been collected with task_get yet, up to 1,000 per call. A task leaves this list once it is collected.
Poll this endpoint (for example once a minute), then call task_get for every id. If you use webhooks, you do not need to poll.
Cost
Request
GET /v1/amazon/product/tasks_ready.
This endpoint takes no parameters.
Request example
The examples read your credentials from the API_LOGIN and API_KEY environment variables.
curl --request GET \
--url "https://api.screamingdata.dev/ v1/ amazon/ product/ tasks_ready" \
--user "$API_LOGIN:$API_KEY"import os
import requests
response = requests.get(
"https://api.screamingdata.dev/ v1/ amazon/ product/ tasks_ready",
auth=(os.environ["API_LOGIN"], os.environ["API_KEY"]),
timeout=30,
)
data = response.json()
print(data["status_code"], data["status_message"], "cost:", data["cost"])
for task in data["tasks"]:
print(task["id"], task["status_code"], task["status_message"])const auth = Buffer.from(`${process.env.API_LOGIN}:${process.env.API_KEY}`).toString("base64");
const response = await fetch("https://api.screamingdata.dev/ v1/ amazon/ product/ tasks_ready", {
headers: {
Authorization: `Basic ${auth}`,
},
});
const data = await response.json();
console.log(data.status_code, data.status_message, "cost:", data.cost);
for (const task of data.tasks) {
console.log(task.id, task.status_code, task.status_message);
}Response
HTTP 200. The body is the standard response envelope; check status_code at the top level and in every task.
{
"version": "1.0.0",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0187 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "09241240-8c3a-4d1e-b2f7-6a9e0d4c3b12",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0031 sec.",
"cost": 0,
"result_count": 2,
"path": [
"v1",
"amazon",
"product",
"tasks_ready"
],
"data": {
"api": "amazon",
"function": "product"
},
"result": [
{
"id": "09241235-4e1c-4b6a-9d8f-2c7a51f0e3b1",
"tag": "catalog-sync",
"endpoint": "/v1/amazon/product/task_get/09241235-4e1c-4b6a-9d8f-2c7a51f0e3b1",
"date_posted": "2026-09-24T12:35:08Z"
},
{
"id": "09241235-7a02-4f3e-8c11-5b9d0e6a4c27",
"tag": "launch-watch",
"endpoint": "/v1/amazon/product/task_get/09241235-7a02-4f3e-8c11-5b9d0e6a4c27",
"date_posted": "2026-09-24T12:35:08Z"
}
]
}
]
}Result fields
Each element of tasks[].result is a ready task. One completed task that has not been collected yet.
idTask id.
tagTag you set in task_post.
endpointPath to collect the result from.
date_postedWhen the task was posted, ISO 8601 in UTC.
Status codes
Codes this endpoint can return, at the request or task level. See Status codes for handling advice.
| Code | Message | HTTP | Level | When |
|---|---|---|---|---|
| 20000 | Ok. | 200 | Request / task | The request, or the individual task, was processed successfully. |
| 40100 | Authentication failed. | 401 | Request | The Authorization header is missing or malformed, or the login and API key do not match. |
| 40101 | API key revoked. | 401 | Request | The API key was revoked. Use another active key or create a new one. |
| 40102 | Account disabled. | 401 | Request | The account is disabled. Contact support. |
| 40202 | Rate limit exceeded. | 429 | Request | Too many requests or tasks per minute for this account, or too many access requests from one IP address. The Retry-After header says how many seconds to wait. |
| 50000 | Internal error. | 500 | Request | Unexpected server error. The request can be retried; contact support if it persists. |