Skip to content
Roboto
Esc
↑↓navigate↵open⌘Jpreview

Dry run trigger

Access control

  • Restricted tokens need the API scope api.everything_else
POST/v1/triggers/id/{trigger_id}/dry-run
Authorization
AuthorizationBearer token · headerrequired
Path parameters
trigger_idstringrequired
Header parameters
X-Roboto-Org-Idstring
X-Roboto-User-Idstring
Request body
requiredapplication/json
eventPlatformEvent | null
default: null
Show properties
Any of:
PlatformEvent
idstringrequired
sourcestringrequired
typePlatformEventTyperequired

A thing that happens on the platform that triggers can subscribe to.

Every member has a :class:~roboto.domain.platform_events.PlatformEventDescriptor in the default :class:~roboto.domain.platform_events.PlatformEventCatalog describing its payload model, the namespace roots it exposes to conditions and templates, and the :class:~roboto.domain.platform_events.OncePer values it supports.

Allowed:file.uploadeddataset.upload_completedfile.ingestedfile.metadata_updateddataset.metadata_updateddataset.createddataset.tag_addedinvocation.completedinvocation.failedsession.ingestedevent.createdschedule.fired
timestring<date-time>required
org_idstringrequired
schema_versioninteger
default: 1
dataFileUploadedPayload | UploadCompletedPayload | FileIngestedPayload | FileMetadataUpdatedPayload | DatasetMetadataUpdatedPayload | DatasetCreatedPayload | DatasetTagAddedPayload | InvocationCompletedPayload | InvocationFailedPayload | SessionIngestedPayload | EventCreatedPayload | ScheduleFiredPayloadrequired
Show properties
Any of:
FileUploadedPayload
dataset_idstringrequired
file_idstringrequired
file_versioninteger | null
default: null
Show properties
Any of:
integer
integer
null
null
transaction_idstring | null
default: null
Show properties
Any of:
string
string
null
null
UploadCompletedPayload
dataset_idstringrequired
transaction_idstringrequired
FileIngestedPayload
dataset_idstringrequired
file_idstringrequired
file_versioninteger | null
default: null
Show properties
Any of:
integer
integer
null
null
transaction_idstring | null
default: null
Show properties
Any of:
string
string
null
null
FileMetadataUpdatedPayload
dataset_idstringrequired
file_idstringrequired
file_versioninteger | null
default: null
Show properties
Any of:
integer
integer
null
null
changesetMetadataChangesetrequired

Changeset for metadata

Show properties
put_tagsstring[] | null
default: null
Show properties
Any of:
string[]
Array of string
string
string[]
Array of string
string
null
null
remove_tagsstring[] | null
default: null
Show properties
Any of:
string[]
Array of string
string
string[]
Array of string
string
null
null
put_fieldsobject | null
default: null
Show properties
Any of:
object
object
null
null
remove_fieldsstring[] | null
default: null
Show properties
Any of:
string[]
Array of string
string
string[]
Array of string
string
null
null
replace_allboolean
default: false
DatasetMetadataUpdatedPayload
dataset_idstringrequired
changesetMetadataChangesetrequired

Changeset for metadata

Show properties
put_tagsstring[] | null
default: null
Show properties
Any of:
string[]
Array of string
string
string[]
Array of string
string
null
null
remove_tagsstring[] | null
default: null
Show properties
Any of:
string[]
Array of string
string
string[]
Array of string
string
null
null
put_fieldsobject | null
default: null
Show properties
Any of:
object
object
null
null
remove_fieldsstring[] | null
default: null
Show properties
Any of:
string[]
Array of string
string
string[]
Array of string
string
null
null
replace_allboolean
default: false
DatasetCreatedPayload
dataset_idstringrequired
DatasetTagAddedPayload
dataset_idstringrequired
tags_addedstring[]required
InvocationCompletedPayload
invocation_idstringrequired
action_namestringrequired
action_owner_idstringrequired
statusInvocationStatusrequired

Invocation status enum

Allowed:012345997998999
InvocationFailedPayload
invocation_idstringrequired
action_namestringrequired
action_owner_idstringrequired
statusInvocationStatusrequired

Invocation status enum

Allowed:012345997998999
SessionIngestedPayload
session_idstringrequired
ingestion_numberintegerrequired
EventCreatedPayload
event_idstringrequired
ScheduleFiredPayload
trigger_idstringrequired
scheduled_forstring<date-time>required
null
null
dataset_idstring | null
default: null
Show properties
Any of:
string
string
null
null
file_idstring | null
default: null
Show properties
Any of:
string
string
null
null
invocation_idstring | null
default: null
Show properties
Any of:
string
string
null
null
event_idstring | null
default: null
Show properties
Any of:
string
string
null
null
scheduled_forstring<date-time> | null
default: null
Show properties
Any of:
string<date-time>
string<date-time>
null
null
event_typePlatformEventType | null
default: null
Show properties
Any of:
PlatformEventType
string
null
null
Responses
200

OK

dataobjectrequired

The structured trace a trigger dry run produces.

Gates appear in evaluation order. The first failed gate is why the trigger would not fire; every gate after it is not_evaluated.

Show properties
trigger_idstringrequired
event_typePlatformEventTyperequired

A thing that happens on the platform that triggers can subscribe to.

Every member has a :class:~roboto.domain.platform_events.PlatformEventDescriptor in the default :class:~roboto.domain.platform_events.PlatformEventCatalog describing its payload model, the namespace roots it exposes to conditions and templates, and the :class:~roboto.domain.platform_events.OncePer values it supports.

Allowed:file.uploadeddataset.upload_completedfile.ingestedfile.metadata_updateddataset.metadata_updateddataset.createddataset.tag_addedinvocation.completedinvocation.failedsession.ingestedevent.createdschedule.fired
would_firebooleanrequired
verdictstringrequired
gatesTriggerDryRunGate[]required
Show properties
Array of TriggerDryRunGate
gateTriggerDryRunGateNamerequired

The gates the evaluator runs, in evaluation order.

Allowed:subscribedenabledconditiontarget_prefilteralready_fired
statusTriggerDryRunGateStatusrequired

Outcome of one gate in a dry run.

Allowed:passedfailednot_evaluated
detailstring | null
default: null
Show properties
Any of:
string
string
null
null
condition_leavesConditionLeafTrace[] | null
default: null
Show properties
Any of:
ConditionLeafTrace[]
Array of ConditionLeafTrace
fieldstringrequired
comparatorComparatorrequired

The comparator to use when comparing a field to a value.

Allowed:EQUALSNOT_EQUALSGREATER_THANGREATER_THAN_OR_EQUALLESS_THANLESS_THAN_OR_EQUALCONTAINSNOT_CONTAINSIS_NULLIS_NOT_NULLEXISTSNOT_EXISTSBEGINS_WITHLIKENOT_LIKE
expectedany | null
default: null
Show properties
Any of:
any
any
null
null
actualany | null
default: null
Show properties
Any of:
any
any
null
null
passedbooleanrequired
null
null
targetsTargetAcceptanceTrace[] | null
default: null
Show properties
Any of:
TargetAcceptanceTrace[]
Array of TargetAcceptanceTrace
target_idstringrequired
target_typeTriggerTargetTyperequired

The kind of thing a trigger does when it fires.

Allowed:invoke_actionstart_agentsend_slack_message
acceptedbooleanrequired
reasonstring | null
default: null
Show properties
Any of:
string
string
null
null
null
null
idempotency_tokenstring | null
default: null
Show properties
Any of:
string
string
null
null
dispatchesDispatchSlotTrace[] | null
default: null
Show properties
Any of:
DispatchSlotTrace[]
Array of DispatchSlotTrace
target_idstringrequired
occupiedbooleanrequired
statusTriggerDispatchStatus | null
default: null
Show properties
Any of:
TriggerDispatchStatus
string
null
null
result_refstring | null
default: null
Show properties
Any of:
string
string
null
null
null
null
400

Thrown when the conversation context (messages, system prompt, tool results) exceeds the model's context window limit.

The token estimate and the model's context limit are not carried on the exception, so a caller cannot read usage numbers off it.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
401

Thrown when authentication fails

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
403

Thrown if an operation would exceed a user or org level limit.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
404

Thrown if a user is attempting to perform an action unrecognized by the Roboto platform.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
409

Thrown if there is a conflict between a resource you're creating and another existing resource

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
410

Thrown if a resource is missing or expired.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
500

An error the platform reported that this SDK release cannot resolve to a specific exception class.

Reported for an element of a :py:class:~roboto.http.BatchResponse whose error names a code this release defines no class for, or that arrived without a code, without a message, or as text that is not an error envelope at all. It carries whatever code and message the platform sent, so a caller handling the failure still learns what went wrong; when no message could be read, the message is the error's raw text.

The error envelope carries no status code, so http_status_code reports the 500 inherited from :py:class:RobotoDomainException rather than the status the failure actually had.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
501

Thrown by shimmed out APIs which have not yet been implemented

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
503

Thrown when a service is unavailable, such as when it's under heavy load and can't accept new requests. This is expected to be transient and ought to be retried.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
504

Thrown when the service times out while processing a request. This is exepcted to be transient and ought to be retried.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
507

Thrown when the server cannot complete the request because the response payload exceeds a storage or transport capacity limit (e.g., Lambda response size). This is NOT expected to be transient and should NOT be retried.

errorobject
Show properties
error_codenumber
messagestring
stack_tracestring | null
Try it
Server
Authorization
Parameters
Bodyapplication/json
Request
curl -X POST 'https://api.roboto.ai/v1/triggers/id/string/dry-run' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
  "event": null,
  "dataset_id": null,
  "file_id": null,
  "invocation_id": null,
  "event_id": null,
  "scheduled_for": null,
  "event_type": null
}'
Response
{
  "data": {
    "trigger_id": "string",
    "event_type": "file.uploaded",
    "would_fire": true,
    "verdict": "string",
    "gates": [
      {
        "gate": "subscribed",
        "status": "passed",
        "detail": null,
        "condition_leaves": null,
        "targets": null,
        "idempotency_token": null,
        "dispatches": null
      }
    ]
  }
}