Get block submissions

Everything end clients have filled in on this quotation, decrypted, keyed by block id.

This is what the builder shows in a block's Client answers tab.

These answers deliberately never travel inside quotation.blocks — the builder
autosaves that array wholesale and would clobber them, cloneQuotation() copies it
verbatim into another deal, and the block API, MCP tools and AI chat all read it. They
have their own endpoint, and their own encrypted table.

Path Parameters

ParameterTypeRequiredDescription
idintegerYesQuotation id

Response Fields

Keyed by block id:

FieldTypeDescription
stateobjectThe client's answers, both halves merged, file descriptors refreshed with a valid signed url
updatedAtdatetimeLast write
updatedBystring/nullRep's email, or null when the client themself wrote
scopestring/nullHow the anonymous write arrived: share or deal
sizeintegerPlaintext bytes, against the 64 KB per-block budget
filesarrayAttachments on that block, each with id, name, size, mime, url, uploadedAt, uploadedBy

A block with attachments but no answers yet still gets an entry.

Response

  • 200 OK: the map above, {} when nothing has been filled in
  • 403 Forbidden: the quotation belongs to another company
  • 404 Not Found: unknown quotation
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
Responses
200

Successful response

401

Unauthorized

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here!