Contacts

Export contacts as CSV

Streams every contact in the authenticated account that matches the supplied filter tree as text/csv. The account ID is taken from the bearer token, never from the request body. An empty or omitted body matches every contact in the account. When the request advertises an acceptable gzip encoding, the CSV body is streamed gzip-encoded with Content-Encoding: gzip and Vary: Accept-Encoding; otherwise the raw CSV representation is returned. A successful empty export may remain identity with no Content-Encoding even when gzip was accepted. Once the HTTP 200 response has started, a later application, upstream, paging, idle, or total-timeout failure may still end as HTTP 200 with a clean EOF and a partial identity CSV or a valid, normally closed partial gzip member. There is no in-band abort marker. Operators can measure those known failures through bounded terminal_reason telemetry; monitoring cannot prove whether a client accepted partial data. Failures found during first-page preflight remain RFC 7807 HTTP errors, but failures found after streaming begins may return an empty or partial 200 response even before the first CSV record is written. There is no proactive encoded-size cap, so oversized responses may reach the Lambda Runtime API 413 boundary after work has been performed. Accept-Encoding interpretation and compressor finalization are delegated to gzhttp and do not provide a completeness signal. A blocked finalization write is stopped by a dedicated five-second deadline inside the Lambda timeout margin. Clients that require completeness need an independent row count or digest. Requires a user-scope token; tenant-admin tokens are rejected with 403.

post/contacts/export

Request

  • Base URL
    https://api.textla.com/v1
  • Auth
    HTTP bearer

Headers

Accept-Encodingstring

Explicitly advertise gzip when the client can decode it.

Request body

object required

Response

CSV export stream

Changes

No recorded changes to this operation across all 1 revision of this API.