/products/{productId}/execute

Execute a product end-to-end against a transport draft. Mirrors the operator-UI 'Test product' button.

Logs. Each invocation persists log events to the product's test-run log group (/test/products/{productId}). Read them back via GET /products/{productId}/execution-logs?onlyTestRuns=true (or the lower-level /execution-log-streams flow). The synchronous response body also returns the full calculator output (context / feasibility / pricing / scheduling).

412 (Precondition Failed). Returned when the referenced draft's transport cannot be parsed by TransportForProductsSchema — i.e. the draft is not yet in a state where products can be evaluated against it. The response payload.message carries the literal TransportForProductsSchema parse failed: <serialised validation issues> so callers can identify exactly which transport fields are missing or malformed and patch the draft before retrying.

422 (Unprocessable Entity). Returned when the brick payload itself fails at runtime — e.g. the user code throws, returns a value that doesn't match its function-type schema, or the L2L runner reflects a brick-runtime exception. The response carries internalCode: "BRICK_RUNTIME_ERROR" and the unwrapped Error.message from the brick. Distinct from 5xx — a 422 means your brick is broken, not the platform; do not retry without changing the brick payload. Persistent log events for the failing run are also available via GET /products/{productId}/execution-logs?onlyTestRuns=true.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required

The unique identifier of the product to execute

Body Params

Body containing the transport draft to evaluate the product against.

string
required

Identifier of the transport draft to evaluate the product against. Create one via POST /v5/drafts.

Responses

400

Invalid request body

401

Unauthorized

404

Product or transport draft not found

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json