# Product detail and sales trends

Get one Amazon ASIN's details and available trends for the last 15 days. ASIN published sales and estimated listing sales/revenue have different scopes. Use product reviews for comments.

ID: task:amazon_product_detail_v1 · Region: global · Status: available

catalog_version: 938eb1e3bdb6476050bf2983e6e8db1edcf9f0942d16c7ebd2029dcd28295afe
updated_at: 2026-10-21T10:40:52.196893+00:00

Amazon

Dataset releases define historical periods; live reads describe request-time data and do not guarantee completeness.

Docs: https://docs.kleardata.ai/capabilities/task%3Aamazon_product_detail_v1

## GET /v1/collections/tasks/amazon_product_detail_v1

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.



Existing pricing applies; metadata reads do not charge Credits.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "properties": {
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "examples": [
    {
      "country": "US",
      "include_trends": "true",
      "product": "B08LYNQ8LC"
    }
  ],
  "input_schema": {
    "additionalProperties": false,
    "properties": {
      "country": {
        "default": "US",
        "enum": [
          "US",
          "GB",
          "DE",
          "FR",
          "IN",
          "CA",
          "JP",
          "ES",
          "IT",
          "MX",
          "AE",
          "AU",
          "BR",
          "SA"
        ],
        "type": "string"
      },
      "include_trends": {
        "default": "true",
        "enum": [
          "true",
          "false"
        ],
        "type": "string"
      },
      "product": {
        "maxLength": 2048,
        "minLength": 10,
        "type": "string",
        "ui_default": ""
      }
    },
    "required": [
      "product"
    ],
    "type": "object"
  }
}
```

- input_schema (object): No field description available
- examples (array<object>): No field description available
## describe_collection_task

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.



Existing pricing applies; metadata reads do not charge Credits.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "properties": {
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "examples": [
    {
      "country": "US",
      "include_trends": "true",
      "product": "B08LYNQ8LC"
    }
  ],
  "input_schema": {
    "additionalProperties": false,
    "properties": {
      "country": {
        "default": "US",
        "enum": [
          "US",
          "GB",
          "DE",
          "FR",
          "IN",
          "CA",
          "JP",
          "ES",
          "IT",
          "MX",
          "AE",
          "AU",
          "BR",
          "SA"
        ],
        "type": "string"
      },
      "include_trends": {
        "default": "true",
        "enum": [
          "true",
          "false"
        ],
        "type": "string"
      },
      "product": {
        "maxLength": 2048,
        "minLength": 10,
        "type": "string",
        "ui_default": ""
      }
    },
    "required": [
      "product"
    ],
    "type": "object"
  }
}
```

- input_schema (object): No field description available
- examples (array<object>): No field description available
## asklear collection describe

legacy · unavailable · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.



Existing pricing applies; metadata reads do not charge Credits.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "properties": {
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "examples": [
    {
      "country": "US",
      "include_trends": "true",
      "product": "B08LYNQ8LC"
    }
  ],
  "input_schema": {
    "additionalProperties": false,
    "properties": {
      "country": {
        "default": "US",
        "enum": [
          "US",
          "GB",
          "DE",
          "FR",
          "IN",
          "CA",
          "JP",
          "ES",
          "IT",
          "MX",
          "AE",
          "AU",
          "BR",
          "SA"
        ],
        "type": "string"
      },
      "include_trends": {
        "default": "true",
        "enum": [
          "true",
          "false"
        ],
        "type": "string"
      },
      "product": {
        "maxLength": 2048,
        "minLength": 10,
        "type": "string",
        "ui_default": ""
      }
    },
    "required": [
      "product"
    ],
    "type": "object"
  }
}
```

- input_schema (object): No field description available
- examples (array<object>): No field description available
## POST /v1/collections/estimate

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

10 Credits per successful task; estimate before starting.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "$defs": {},
  "additionalProperties": false,
  "description": "Outer transport contract; each registered task validates its own input.",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "country": {
          "default": "US",
          "enum": [
            "US",
            "GB",
            "DE",
            "FR",
            "IN",
            "CA",
            "JP",
            "ES",
            "IT",
            "MX",
            "AE",
            "AU",
            "BR",
            "SA"
          ],
          "type": "string"
        },
        "include_trends": {
          "default": "true",
          "enum": [
            "true",
            "false"
          ],
          "type": "string"
        },
        "product": {
          "maxLength": 2048,
          "minLength": 10,
          "type": "string"
        }
      },
      "required": [
        "product"
      ],
      "type": "object"
    },
    "task_code": {
      "const": "amazon_product_detail_v1"
    }
  },
  "required": [
    "task_code",
    "input"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "input": {
    "country": "US",
    "include_trends": "true",
    "product": "B08LYNQ8LC"
  },
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "quote_token": "quote-token-from-estimate",
  "upper_bound_credits": 10
}
```

- quote_token (string): No field description available
- upper_bound_credits (integer): No field description available
## estimate_collection

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

10 Credits per successful task; estimate before starting.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "$defs": {},
  "additionalProperties": false,
  "description": "Outer transport contract; each registered task validates its own input.",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "country": {
          "default": "US",
          "enum": [
            "US",
            "GB",
            "DE",
            "FR",
            "IN",
            "CA",
            "JP",
            "ES",
            "IT",
            "MX",
            "AE",
            "AU",
            "BR",
            "SA"
          ],
          "type": "string"
        },
        "include_trends": {
          "default": "true",
          "enum": [
            "true",
            "false"
          ],
          "type": "string"
        },
        "product": {
          "maxLength": 2048,
          "minLength": 10,
          "type": "string"
        }
      },
      "required": [
        "product"
      ],
      "type": "object"
    },
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code",
    "input"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "input": {
    "country": "US",
    "include_trends": "true",
    "product": "B08LYNQ8LC"
  },
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "quote_token": "quote-token-from-estimate",
  "upper_bound_credits": 10
}
```

- quote_token (string): No field description available
- upper_bound_credits (integer): No field description available
## asklear collection estimate

legacy · unavailable · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

10 Credits per successful task; estimate before starting.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "$defs": {},
  "additionalProperties": false,
  "description": "Outer transport contract; each registered task validates its own input.",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "country": {
          "default": "US",
          "enum": [
            "US",
            "GB",
            "DE",
            "FR",
            "IN",
            "CA",
            "JP",
            "ES",
            "IT",
            "MX",
            "AE",
            "AU",
            "BR",
            "SA"
          ],
          "type": "string"
        },
        "include_trends": {
          "default": "true",
          "enum": [
            "true",
            "false"
          ],
          "type": "string"
        },
        "product": {
          "maxLength": 2048,
          "minLength": 10,
          "type": "string"
        }
      },
      "required": [
        "product"
      ],
      "type": "object"
    },
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code",
    "input"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "input": {
    "country": "US",
    "include_trends": "true",
    "product": "B08LYNQ8LC"
  },
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "quote_token": "quote-token-from-estimate",
  "upper_bound_credits": 10
}
```

- quote_token (string): No field description available
- upper_bound_credits (integer): No field description available
## POST /v1/collections/jobs

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

10 Credits per successful task; estimate before starting.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "$defs": {},
  "additionalProperties": false,
  "properties": {
    "idempotency_key": {
      "maxLength": 128,
      "minLength": 1,
      "type": "string"
    },
    "input": {
      "additionalProperties": false,
      "properties": {
        "country": {
          "default": "US",
          "enum": [
            "US",
            "GB",
            "DE",
            "FR",
            "IN",
            "CA",
            "JP",
            "ES",
            "IT",
            "MX",
            "AE",
            "AU",
            "BR",
            "SA"
          ],
          "type": "string"
        },
        "include_trends": {
          "default": "true",
          "enum": [
            "true",
            "false"
          ],
          "type": "string"
        },
        "product": {
          "maxLength": 2048,
          "minLength": 10,
          "type": "string"
        }
      },
      "required": [
        "product"
      ],
      "type": "object"
    },
    "max_credits": {
      "anyOf": [
        {
          "exclusiveMinimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "quote_token": {
      "maxLength": 4096,
      "minLength": 16,
      "type": "string"
    },
    "task_code": {
      "const": "amazon_product_detail_v1"
    }
  },
  "required": [
    "task_code",
    "input",
    "quote_token",
    "idempotency_key"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "idempotency_key": "directory-example",
  "input": {
    "country": "US",
    "include_trends": "true",
    "product": "B08LYNQ8LC"
  },
  "quote_token": "quote-token-from-estimate",
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "job_id": "collection-example",
  "status": "queued"
}
```

- job_id (string): No field description available
- status (string): No field description available

Follow up: GET /v1/collections/jobs/{job_id}
Read job status and its saved public result.

## start_collection

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

10 Credits per successful task; estimate before starting.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "$defs": {},
  "additionalProperties": false,
  "properties": {
    "idempotency_key": {
      "maxLength": 128,
      "minLength": 1,
      "type": "string"
    },
    "input": {
      "additionalProperties": false,
      "properties": {
        "country": {
          "default": "US",
          "enum": [
            "US",
            "GB",
            "DE",
            "FR",
            "IN",
            "CA",
            "JP",
            "ES",
            "IT",
            "MX",
            "AE",
            "AU",
            "BR",
            "SA"
          ],
          "type": "string"
        },
        "include_trends": {
          "default": "true",
          "enum": [
            "true",
            "false"
          ],
          "type": "string"
        },
        "product": {
          "maxLength": 2048,
          "minLength": 10,
          "type": "string"
        }
      },
      "required": [
        "product"
      ],
      "type": "object"
    },
    "max_credits": {
      "anyOf": [
        {
          "exclusiveMinimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "quote_token": {
      "maxLength": 4096,
      "minLength": 16,
      "type": "string"
    },
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code",
    "input",
    "quote_token",
    "idempotency_key"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "idempotency_key": "directory-example",
  "input": {
    "country": "US",
    "include_trends": "true",
    "product": "B08LYNQ8LC"
  },
  "quote_token": "quote-token-from-estimate",
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "job_id": "collection-example",
  "status": "queued"
}
```

- job_id (string): No field description available
- status (string): No field description available

Follow up: GET /v1/collections/jobs/{job_id}
Read job status and its saved public result.

## asklear collection start

legacy · unavailable · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

10 Credits per successful task; estimate before starting.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "$defs": {},
  "additionalProperties": false,
  "properties": {
    "idempotency_key": {
      "maxLength": 128,
      "minLength": 1,
      "type": "string"
    },
    "input": {
      "additionalProperties": false,
      "properties": {
        "country": {
          "default": "US",
          "enum": [
            "US",
            "GB",
            "DE",
            "FR",
            "IN",
            "CA",
            "JP",
            "ES",
            "IT",
            "MX",
            "AE",
            "AU",
            "BR",
            "SA"
          ],
          "type": "string"
        },
        "include_trends": {
          "default": "true",
          "enum": [
            "true",
            "false"
          ],
          "type": "string"
        },
        "product": {
          "maxLength": 2048,
          "minLength": 10,
          "type": "string"
        }
      },
      "required": [
        "product"
      ],
      "type": "object"
    },
    "max_credits": {
      "anyOf": [
        {
          "exclusiveMinimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "quote_token": {
      "maxLength": 4096,
      "minLength": 16,
      "type": "string"
    },
    "task_code": {
      "const": "amazon_product_detail_v1"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "task_code",
    "input",
    "quote_token",
    "idempotency_key"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "idempotency_key": "directory-example",
  "input": {
    "country": "US",
    "include_trends": "true",
    "product": "B08LYNQ8LC"
  },
  "quote_token": "quote-token-from-estimate",
  "task_code": "amazon_product_detail_v1"
}
```

### Synthetic response / 合成响应

```json
{
  "job_id": "collection-example",
  "status": "queued"
}
```

- job_id (string): No field description available
- status (string): No field description available

Follow up: GET /v1/collections/jobs/{job_id}
Read job status and its saved public result.

## GET /v1/collections/jobs/{job_id}

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

Existing pricing applies; metadata reads do not charge Credits.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "properties": {
    "job_id": {
      "type": "string"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "job_id"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "job_id": "collection-example"
}
```

### Response schema / 响应契约

```json
{
  "$defs": {
    "Schema1": {
      "additionalProperties": false,
      "description": "The limited metadata safe to store and expose with a collection result.",
      "properties": {
        "api_name": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\x21-\\x7e]+$",
          "type": "string"
        },
        "credits_charged": {
          "maximum": 1000000,
          "minimum": 0,
          "type": "integer"
        },
        "latency_ms": {
          "maximum": 120000,
          "minimum": 0,
          "type": "integer"
        },
        "request_id": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\x21-\\x7e]+$",
          "type": "string"
        }
      },
      "required": [
        "request_id",
        "api_name",
        "latency_ms",
        "credits_charged"
      ],
      "type": "object"
    }
  },
  "additionalProperties": true,
  "properties": {
    "result": {
      "additionalProperties": false,
      "properties": {
        "data": {
          "additionalProperties": true,
          "type": "object"
        },
        "meta": {
          "$ref": "#/$defs/Schema1"
        }
      },
      "required": [
        "data",
        "meta"
      ],
      "type": "object"
    }
  },
  "type": "object"
}
```

### Synthetic response / 合成响应

```json
{
  "result": {
    "data": {},
    "meta": {
      "api_name": "https://www.linkedin.com/in/example",
      "credits_charged": 0,
      "latency_ms": 0,
      "request_id": "https://www.linkedin.com/in/example"
    }
  },
  "status": "succeeded"
}
```

- result.meta.request_id (string): Asklear request identifier for tracing.
- result.meta.api_name (string): Executed collection operation name.
- result.meta.latency_ms (integer): Collection execution latency in milliseconds.
- result.meta.credits_charged (integer): Asklear user-side Credits settled for this task after completion.
- result.data.country (string): Marketplace: US, GB, DE, FR, IN, CA, JP, ES, IT, MX, AE, AU, BR or SA. Defaults to US. Source support does not imply every country was live-tested.
- result.data.asin (string): Returned ASIN; pass this to the detail or reviews task.
- result.data.parent_asin (string|null): Parent listing ASIN when available.
- result.data.title (string): Product title.
- result.data.url (string): Canonical product URL in the selected marketplace.
- result.data.images (array<string>): Public product image URLs.
- result.data.brand (string|null): Product brand when available.
- result.data.description (string|null): Stored product description; may include source formatting.
- result.data.price (object|null): Recorded selling price, not a real-time checkout quote.
- result.data.price.amount_minor (integer): Amount in the currency's smallest unit: 4199 USD means $41.99; 4199 JPY means ¥4199. Never divide every currency by 100.
- result.data.price.currency (string): ISO currency code for the selected marketplace.
- result.data.rating (number|null): Rating from 0 to 5; unavailable values are null.
- result.data.ratings_count (integer|null): Number of ratings, distinct from the stored review count.
- result.data.categories (array<string>): Category labels recorded for the product.
- result.data.updated_at (string|null): Product snapshot update date (YYYY-MM-DD), if reported.
- result.data.variation_count (integer|null): Number of listing variants, if available.
- result.data.asin_published_sales (integer|null): ASIN-level sales count publicly displayed by Amazon, typically a rounded recent-month count. Not an exact sales total; missing or unreported zero becomes null.
- result.data.listing_sales.scope (string): Always listing: estimates may cover several variants, not just the requested ASIN.
- result.data.listing_sales.estimated (boolean): Always true; units and revenue are estimates.
- result.data.listing_sales.daily.date (string|null): Date of the one-day estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.daily.units (integer|null): Estimated one-day listing units; missing is null, not zero.
- result.data.listing_sales.daily.revenue (object|null): Estimated one-day listing revenue; no currency conversion.
- result.data.listing_sales.daily.revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.daily.revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.rolling_30d.date (string|null): Date of the rolling 30-day estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.rolling_30d.units (integer|null): Estimated rolling 30-day listing units; missing is null, not zero.
- result.data.listing_sales.rolling_30d.revenue (object|null): Estimated rolling 30-day listing revenue; no currency conversion.
- result.data.listing_sales.rolling_30d.revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.rolling_30d.revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.daily_trend[].date (string|null): Date of the one-day trend estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.daily_trend[].units (integer|null): Estimated one-day trend listing units; missing is null, not zero.
- result.data.listing_sales.daily_trend[].revenue (object|null): Estimated one-day trend listing revenue; no currency conversion.
- result.data.listing_sales.daily_trend[].revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.daily_trend[].revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.rolling_30d_trend[].date (string|null): Date of the rolling 30-day trend estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.rolling_30d_trend[].units (integer|null): Estimated rolling 30-day trend listing units; missing is null, not zero.
- result.data.listing_sales.rolling_30d_trend[].revenue (object|null): Estimated rolling 30-day trend listing revenue; no currency conversion.
- result.data.listing_sales.rolling_30d_trend[].revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.rolling_30d_trend[].revenue.currency (string): ISO currency code, matching the marketplace.
## get_collection_job

legacy · available · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

Existing pricing applies; metadata reads do not charge Credits.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "properties": {
    "job_id": {
      "type": "string"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "job_id"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "job_id": "collection-example"
}
```

### Response schema / 响应契约

```json
{
  "$defs": {
    "Schema1": {
      "additionalProperties": false,
      "description": "The limited metadata safe to store and expose with a collection result.",
      "properties": {
        "api_name": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\x21-\\x7e]+$",
          "type": "string"
        },
        "credits_charged": {
          "maximum": 1000000,
          "minimum": 0,
          "type": "integer"
        },
        "latency_ms": {
          "maximum": 120000,
          "minimum": 0,
          "type": "integer"
        },
        "request_id": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\x21-\\x7e]+$",
          "type": "string"
        }
      },
      "required": [
        "request_id",
        "api_name",
        "latency_ms",
        "credits_charged"
      ],
      "type": "object"
    }
  },
  "additionalProperties": true,
  "properties": {
    "result": {
      "additionalProperties": false,
      "properties": {
        "data": {
          "additionalProperties": true,
          "type": "object"
        },
        "meta": {
          "$ref": "#/$defs/Schema1"
        }
      },
      "required": [
        "data",
        "meta"
      ],
      "type": "object"
    }
  },
  "type": "object"
}
```

### Synthetic response / 合成响应

```json
{
  "result": {
    "data": {},
    "meta": {
      "api_name": "https://www.linkedin.com/in/example",
      "credits_charged": 0,
      "latency_ms": 0,
      "request_id": "https://www.linkedin.com/in/example"
    }
  },
  "status": "succeeded"
}
```

- result.meta.request_id (string): Asklear request identifier for tracing.
- result.meta.api_name (string): Executed collection operation name.
- result.meta.latency_ms (integer): Collection execution latency in milliseconds.
- result.meta.credits_charged (integer): Asklear user-side Credits settled for this task after completion.
- result.data.country (string): Marketplace: US, GB, DE, FR, IN, CA, JP, ES, IT, MX, AE, AU, BR or SA. Defaults to US. Source support does not imply every country was live-tested.
- result.data.asin (string): Returned ASIN; pass this to the detail or reviews task.
- result.data.parent_asin (string|null): Parent listing ASIN when available.
- result.data.title (string): Product title.
- result.data.url (string): Canonical product URL in the selected marketplace.
- result.data.images (array<string>): Public product image URLs.
- result.data.brand (string|null): Product brand when available.
- result.data.description (string|null): Stored product description; may include source formatting.
- result.data.price (object|null): Recorded selling price, not a real-time checkout quote.
- result.data.price.amount_minor (integer): Amount in the currency's smallest unit: 4199 USD means $41.99; 4199 JPY means ¥4199. Never divide every currency by 100.
- result.data.price.currency (string): ISO currency code for the selected marketplace.
- result.data.rating (number|null): Rating from 0 to 5; unavailable values are null.
- result.data.ratings_count (integer|null): Number of ratings, distinct from the stored review count.
- result.data.categories (array<string>): Category labels recorded for the product.
- result.data.updated_at (string|null): Product snapshot update date (YYYY-MM-DD), if reported.
- result.data.variation_count (integer|null): Number of listing variants, if available.
- result.data.asin_published_sales (integer|null): ASIN-level sales count publicly displayed by Amazon, typically a rounded recent-month count. Not an exact sales total; missing or unreported zero becomes null.
- result.data.listing_sales.scope (string): Always listing: estimates may cover several variants, not just the requested ASIN.
- result.data.listing_sales.estimated (boolean): Always true; units and revenue are estimates.
- result.data.listing_sales.daily.date (string|null): Date of the one-day estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.daily.units (integer|null): Estimated one-day listing units; missing is null, not zero.
- result.data.listing_sales.daily.revenue (object|null): Estimated one-day listing revenue; no currency conversion.
- result.data.listing_sales.daily.revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.daily.revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.rolling_30d.date (string|null): Date of the rolling 30-day estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.rolling_30d.units (integer|null): Estimated rolling 30-day listing units; missing is null, not zero.
- result.data.listing_sales.rolling_30d.revenue (object|null): Estimated rolling 30-day listing revenue; no currency conversion.
- result.data.listing_sales.rolling_30d.revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.rolling_30d.revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.daily_trend[].date (string|null): Date of the one-day trend estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.daily_trend[].units (integer|null): Estimated one-day trend listing units; missing is null, not zero.
- result.data.listing_sales.daily_trend[].revenue (object|null): Estimated one-day trend listing revenue; no currency conversion.
- result.data.listing_sales.daily_trend[].revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.daily_trend[].revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.rolling_30d_trend[].date (string|null): Date of the rolling 30-day trend estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.rolling_30d_trend[].units (integer|null): Estimated rolling 30-day trend listing units; missing is null, not zero.
- result.data.listing_sales.rolling_30d_trend[].revenue (object|null): Estimated rolling 30-day trend listing revenue; no currency conversion.
- result.data.listing_sales.rolling_30d_trend[].revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.rolling_30d_trend[].revenue.currency (string): ISO currency code, matching the marketplace.
## asklear collection get-job

legacy · unavailable · api_key, oauth

REST requires a customer API Key; MCP requires an enabled authenticated server; CLI requires its published artifact and command.

One product or one page per request. Each successful request, including an empty page, is charged independently.
Listing sales are estimates and may cover multiple variants. Published ASIN sales are not exact real-time sales.
Amounts use the currency's minor unit; JPY has no fractional unit. Missing data is null, not zero.
Stored reviews may be delayed and refer to other variants. No live review collection is started.
14 marketplaces are supported by the source contract; live verification is recorded separately.

Existing pricing applies; metadata reads do not charge Credits.

Where the request declares idempotency_key, reuse it for the same operation; metadata GET is read-only.

A pending response supplies a result/status reference. Read it first; do not automatically resubmit paid execution after a timeout or ambiguous result. Correct 401/403/422 errors before retrying.

### Input schema / 输入契约

```json
{
  "properties": {
    "job_id": {
      "type": "string"
    },
    "task_query": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional task attribution: when provided, write one concise, self-contained task_query in the user's language and reuse that exact value in every call for the task, including discovery, search, approval retry, results, export, and status checks. For MCP calls, when omitted, Asklear records a generic non-user-specific attribution so compatible clients can still call the tool. REST calls may omit it and remain unattributed. It is a task description, not a task identifier. Do not include hidden reasoning, credentials, or direct personal identifiers such as phone numbers, email addresses, identity numbers, or street addresses.",
      "maxLength": 300
    }
  },
  "required": [
    "job_id"
  ],
  "type": "object"
}
```

### Synthetic request / 合成请求

```json
{
  "job_id": "collection-example"
}
```

### Response schema / 响应契约

```json
{
  "$defs": {
    "Schema1": {
      "additionalProperties": false,
      "description": "The limited metadata safe to store and expose with a collection result.",
      "properties": {
        "api_name": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\x21-\\x7e]+$",
          "type": "string"
        },
        "credits_charged": {
          "maximum": 1000000,
          "minimum": 0,
          "type": "integer"
        },
        "latency_ms": {
          "maximum": 120000,
          "minimum": 0,
          "type": "integer"
        },
        "request_id": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\x21-\\x7e]+$",
          "type": "string"
        }
      },
      "required": [
        "request_id",
        "api_name",
        "latency_ms",
        "credits_charged"
      ],
      "type": "object"
    }
  },
  "additionalProperties": true,
  "properties": {
    "result": {
      "additionalProperties": false,
      "properties": {
        "data": {
          "additionalProperties": true,
          "type": "object"
        },
        "meta": {
          "$ref": "#/$defs/Schema1"
        }
      },
      "required": [
        "data",
        "meta"
      ],
      "type": "object"
    }
  },
  "type": "object"
}
```

### Synthetic response / 合成响应

```json
{
  "result": {
    "data": {},
    "meta": {
      "api_name": "https://www.linkedin.com/in/example",
      "credits_charged": 0,
      "latency_ms": 0,
      "request_id": "https://www.linkedin.com/in/example"
    }
  },
  "status": "succeeded"
}
```

- result.meta.request_id (string): Asklear request identifier for tracing.
- result.meta.api_name (string): Executed collection operation name.
- result.meta.latency_ms (integer): Collection execution latency in milliseconds.
- result.meta.credits_charged (integer): Asklear user-side Credits settled for this task after completion.
- result.data.country (string): Marketplace: US, GB, DE, FR, IN, CA, JP, ES, IT, MX, AE, AU, BR or SA. Defaults to US. Source support does not imply every country was live-tested.
- result.data.asin (string): Returned ASIN; pass this to the detail or reviews task.
- result.data.parent_asin (string|null): Parent listing ASIN when available.
- result.data.title (string): Product title.
- result.data.url (string): Canonical product URL in the selected marketplace.
- result.data.images (array<string>): Public product image URLs.
- result.data.brand (string|null): Product brand when available.
- result.data.description (string|null): Stored product description; may include source formatting.
- result.data.price (object|null): Recorded selling price, not a real-time checkout quote.
- result.data.price.amount_minor (integer): Amount in the currency's smallest unit: 4199 USD means $41.99; 4199 JPY means ¥4199. Never divide every currency by 100.
- result.data.price.currency (string): ISO currency code for the selected marketplace.
- result.data.rating (number|null): Rating from 0 to 5; unavailable values are null.
- result.data.ratings_count (integer|null): Number of ratings, distinct from the stored review count.
- result.data.categories (array<string>): Category labels recorded for the product.
- result.data.updated_at (string|null): Product snapshot update date (YYYY-MM-DD), if reported.
- result.data.variation_count (integer|null): Number of listing variants, if available.
- result.data.asin_published_sales (integer|null): ASIN-level sales count publicly displayed by Amazon, typically a rounded recent-month count. Not an exact sales total; missing or unreported zero becomes null.
- result.data.listing_sales.scope (string): Always listing: estimates may cover several variants, not just the requested ASIN.
- result.data.listing_sales.estimated (boolean): Always true; units and revenue are estimates.
- result.data.listing_sales.daily.date (string|null): Date of the one-day estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.daily.units (integer|null): Estimated one-day listing units; missing is null, not zero.
- result.data.listing_sales.daily.revenue (object|null): Estimated one-day listing revenue; no currency conversion.
- result.data.listing_sales.daily.revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.daily.revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.rolling_30d.date (string|null): Date of the rolling 30-day estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.rolling_30d.units (integer|null): Estimated rolling 30-day listing units; missing is null, not zero.
- result.data.listing_sales.rolling_30d.revenue (object|null): Estimated rolling 30-day listing revenue; no currency conversion.
- result.data.listing_sales.rolling_30d.revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.rolling_30d.revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.daily_trend[].date (string|null): Date of the one-day trend estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.daily_trend[].units (integer|null): Estimated one-day trend listing units; missing is null, not zero.
- result.data.listing_sales.daily_trend[].revenue (object|null): Estimated one-day trend listing revenue; no currency conversion.
- result.data.listing_sales.daily_trend[].revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.daily_trend[].revenue.currency (string): ISO currency code, matching the marketplace.
- result.data.listing_sales.rolling_30d_trend[].date (string|null): Date of the rolling 30-day trend estimate, YYYY-MM-DD; null when not reported.
- result.data.listing_sales.rolling_30d_trend[].units (integer|null): Estimated rolling 30-day trend listing units; missing is null, not zero.
- result.data.listing_sales.rolling_30d_trend[].revenue (object|null): Estimated rolling 30-day trend listing revenue; no currency conversion.
- result.data.listing_sales.rolling_30d_trend[].revenue.amount_minor (integer): Revenue in the currency's smallest unit.
- result.data.listing_sales.rolling_30d_trend[].revenue.currency (string): ISO currency code, matching the marketplace.
