Create a record set
Starts a chunked upload and returns the record set’s id and chunk_size. POST the records in chunks, then seal it. A record set that is never sealed or never triggered expires automatically, along with its staged records.
Authorizations
Body
Start a chunked upload.
Uploading records happens in three steps:
- Create a record set (this request). You get back an id and a
chunk_size. POST /record-sets/{record_set_id}/recordsonce per chunk, in any order, until every record has been sent.POST /record-sets/{record_set_id}/sealwith the total number of records you sent. Sealing validates the count and finalises the upload's content hash.
A sealed record set is then passed to a flow trigger as record_set_id.
Each record set is used by exactly one trigger. Record sets that are never
sealed, or never triggered, expire automatically along with their staged
records.
chunk_size is fixed for the whole upload and defaults to the largest chunk
the API accepts. Every chunk except the final one must contain exactly this
many records, because it is what turns a chunk index into each row's
position in the set.
Response
Successful Response
A record set's manifest and current progress.
status moves open -> sealed -> consumed: open accepts chunks,
sealed is complete and ready to trigger, and consumed means a trigger
has claimed it (each record set is used exactly once). received_count and
chunk_count track what has arrived so far, content_hash identifies the
sealed contents, batch_id points at the batch that consumed it, and
staging_expires_at is when an untriggered record set and its staged
records are reclaimed.