Skip to main content
POST
Idempotent publish to target platform via adapter

Authorizations

Authorization
string
header
required

Client credentials, the production model: server-to-server, short-lived tokens, least-privilege scopes, rotation by issuing a new client secret.

Body

application/json
intent_id
string
required

Minted at the decision and carried unchanged into every destination record. Fits a 64-character client-supplied id field, which is how the same id finds the record in either direction.

Pattern: ^[A-Za-z0-9_-]{10,64}$
Example:

"itn_7f3aK2mQ9xLp"

platform
string
required
external_id
string

Supply when the destination record already exists: composerID stamps the Intent ID onto it instead of creating a duplicate. Required for link-mode destinations.

dry_run
boolean
default:false

Render the payload composerID would write and return it as a PublishPreview (200) without writing anything: no destination call, no receipt, no timeline event. Preflight still runs, so a 422 comes back exactly as it would for a real publish.

Response

Dry run: the payload composerID would write, and nothing written

The answer to a dry run: exactly what a real publish would write to the destination, and nothing written.

intent_id
string
required

Minted at the decision and carried unchanged into every destination record. Fits a 64-character client-supplied id field, which is how the same id finds the record in either direction.

Pattern: ^[A-Za-z0-9_-]{10,64}$
Example:

"itn_7f3aK2mQ9xLp"

intent_version
integer
required
Required range: x >= 1
target_system
string
required
object_type
string
required

The destination object a real publish would create, stamp or link.

mode
enum<string>
required

create: a new record is written from the mapping profile. stamp: the Intent ID is written onto the existing record named by external_id. link: the destination is link-mode, so nothing is written and the linkage is recorded on composerID's side.

Available options:
create,
stamp,
link
carrier_field
string
required

Dotted path of the field on the destination object that carries the Intent ID.

idempotency_key
string
required

The key the real publish would use.

payload
object
required

The body composerID would send, in the destination's own field names. Empty for a link-mode destination.

dry_run
boolean
required
profile
string | null

The MappingProfile that rendered the payload (create mode only).

external_id
string

Stamp mode only: the existing record.

Where the record would be reachable in the destination's own UI, with {external_id} unresolved.

note
string