Skip to content

Output formats

Choose by query param ?format= or by Accept header. Available on /v1/listings, /v1/listings/*, /v1/search, /v1/jobs/{id}/results.

FormatQueryAccept
JSON?format=json (default)application/json
NDJSON?format=ndjsonapplication/x-ndjson
CSV?format=csvtext/csv

NDJSON

One JSON object per line, no envelope. Ideal for streaming to BigQuery / Snowflake / DuckDB.

{"zpid":"11026031","address":{"city":"Greenville",...},"price":295000}
{"zpid":"11026032","address":{"city":"Greenville",...},"price":312000}

Headers:

  • Content-Type: application/x-ndjson
  • X-Row-Count: <n>

CSV

Nested objects flatten with dot-notation. Arrays are JSON-stringified in their cell. First line is a header row.

zpid,address.streetAddress,address.city,address.state,price,beds,baths,latLong.latitude,latLong.longitude
11026031,"17 Zelma Dr",Greenville,SC,295000,3,2,34.882,-82.428

Cells containing commas, quotes, or newlines are quoted; embedded quotes are doubled per RFC 4180.

JSON (default)

Wrapped in our standard envelope:

{
"data": [...],
"meta": { "count": 50, "total": 213, "limit": 50, "offset": 0, "has_more": true },
"request_id": "..."
}