JSONL Ingestion

Bulk ingest product listings in JSON Lines format. Each line must be a valid JSON object representing one listing.

POST /v1/ingest/listing/jsonl

Request Headers

HeaderRequiredDescription
Content-TypeYesapplication/x-ndjson or text/plain
X-Listing-LocaleNoLocale for all listings in this request (default: en-US)

Request Body Format

Raw body — one JSON object per line (newline-delimited). Maximum 10,000 rows per request.

The fields shown in the parameters panel represent a sample listing record. Actual field names and required fields are determined by your schema config.

Success Response

  • 204 No Content — Ingestion accepted and queued for async processing. No response body.

Notes

  • The response panel shows the 400 error body returned when lines fail to parse.
POST/v1/ingest/listing/jsonl
curl https://api-eu-aisearch.tradly.app/v1/ingest/listing/jsonl \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR....." \
  -H "Content-Type: application/json" \
  -X POST \
RESPONSE
{
  "error": "JSON parsing errors",
  "errors": [
    {
      "line": 3,
      "error": "Invalid JSON: Unexpected token"
    }
  ],
  "total_errors": 1,
  "valid_rows": 2
}