Transaction Service
Machine-to-machine execution with typed JSON in and out. input is validated against the App's pinned input schema before the run starts (400 with JSON-pointer details on mismatch). The App runs once in transaction mode and the reply is validated against the pinned output schema before it is returned.
If the App cannot produce schema-valid JSON, the call fails with output_invalid (HTTP 502) carrying the raw reply for debugging. Single-turn -- no conversation state. Bills like any other run.
Requires the apps:execute scope.
Authorization
apiKey An organization API key, created from a Portal's Webhooks page (Provisioning API card). The secret is shown once at creation and stored only as a hash. Keys are organization-wide and carry scopes (end_users:read, end_users:write). Rate limit: 120 requests per minute per key (sliding 60-second window).
In: header
Path Parameters
The App's id (see GET /apps).
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/apps/497f6eca-6276-4993-bfeb-53cbbbba6f08/transaction" \ -H "Content-Type: application/json" \ -d '{ "input": {} }'{ "output": {}}