TriggerPipelineRunRequest
Starts a pipeline run from a fully resolved pipeline graph supplied in the request, rather than from a saved pipeline definition.
Shape
- pipeline_idPipelineId (string · uuid)
- pipeline_namestring
- pipeline_timeout_secondsinteger · int320–∞
resolved_dagResolvedDag
- The ResolvedDag schema
edgesarray of ResolvedEdge
- The ResolvedEdge schema
- from_nodeNodeId (string)
- to_nodeNodeId (string)
- from_portPortName (string) or nulloptionalAbsent on a dependency-only connection — one that orders two steps and carries nothing.
- to_portPortName (string) or nulloptionalAbsent on a dependency-only edge.
nodesarray of ResolvedNode
- The ResolvedNode schema
- capability_idCapabilityId (string)
- configobjectThe step's own settings, in whatever shape its capability defines. Passed through unread.
inputsarray of NodePortSpec
- The NodePortSpec schema
- namePortName (string)
- port_typePortTypegit_refartifactcontainer_imagetest_reportdeployment_refcredentialsevidencevaluecustomWhat kind of data a port carries. Two ports connect only when their types match.
- requiredboolean
- cardinalityPortCardinalityonemanyoptionalHow many connections this port accepts (input ports only). A
manyinput waits for every connection feeding it. - schema_idPortSchemaId (string) or nulloptionalFor a
customport, the id of the schema it carries (e.g.aws.ecs.task-definition/v1).
- max_retriesinteger · int320–∞
- node_idNodeId (string)
outputsarray of NodePortSpec
- The NodePortSpec schema
- namePortName (string)
- port_typePortTypegit_refartifactcontainer_imagetest_reportdeployment_refcredentialsevidencevaluecustomWhat kind of data a port carries. Two ports connect only when their types match.
- requiredboolean
- cardinalityPortCardinalityonemanyoptionalHow many connections this port accepts (input ports only). A
manyinput waits for every connection feeding it. - schema_idPortSchemaId (string) or nulloptionalFor a
customport, the id of the schema it carries (e.g.aws.ecs.task-definition/v1).
- provider_idProviderId (string)
- provider_imagestringThe container image this step runs. Set by the platform from the capability and version the step resolved to; a value supplied by the caller is ignored.
- retry_delay_secondsinteger · int320–∞
secret_refsarray of SecretRefThe credentials this step needs, named rather than valued — a secret's value never appears here.
- The SecretRef schema
- connection_idConnectionId (string · uuid)The provider connection the credential comes from.
- keystringA JSON path within the connection's credentials (e.g.
$.password). It does not select part of them: the step receives the connection's credentials whole. - logical_namestringThe name the step's provider knows this credential by.
- stage_idStageId (string)
- stage_indexinteger · int320–∞
- timeout_secondsinteger · int320–∞
- allow_failurebooleanoptionalWhether the step is allowed to fail: if it fails or times out, only the steps that depend on it are skipped, and the run ends
succeeded_with_warningsrather thanfailed. approvalManualApproval or nulloptionalThe approval gate on this step itself, if the pipeline put one there. A step can also inherit a gate from the environment it deploys to.
- The ManualApproval schema
- requiredinteger · int32 or nulloptional0–∞Distinct approvals needed, 1–10. On a gated environment the larger of this and the environment's own count applies.
- cache_enabledbooleanoptionalWhether this step uses the build cache, as its capability declares.
- cpustring or nulloptionalHow much CPU this step asked for. Unset means the default for its capability.
environmentResolvedEnvironment or nulloptionalThe environment this step deploys to, frozen as it was when the run was triggered.
- The ResolvedEnvironment schema
- environment_idEnvironmentId (string · uuid)
- full_pathstringThe environment's unique name: the full path of the group or repository that owns it,
:, then its slug (e.g.acme/platform:production). Two groups may each have aproductionenvironment; this tells them apart. - slugEnvironmentSlug (string)
- tierEnvironmentTierdevelopmenttestingstagingproductionWhat kind of environment this is, whatever it is called:
development,testing,stagingorproduction. Aproductionenvironment is protected by default. - accept_fromAcceptFrompeople_signed_inpeoplepeople_and_service_accountspeople_and_agentsoptionalWhich kinds of approval count toward a rule.
- concurrency_keyConcurrencyKey (string) or nulloptionalThe lock deploys to this environment take, so that only one runs at a time. Absent when the environment allows deploys to run at the same time.
- concurrency_modeConcurrencyModequeueskipcancel_previousoptionalWhat happens when another run holds the lock:
queuewaits for it,skipskips this step,cancel_previouscancels the other run. - max_lock_wait_secondsinteger · int32optional0–∞How long a queued step waits for the lock before failing, in seconds.
0means it waits for as long as the pipeline's timeout allows. - prevent_self_approvalbooleanoptional
- requiredinteger · int32optional0–∞
- requires_approvalbooleanoptional
- variablesarray of ResolvedEnvironmentVariableoptionalThe environment's variables, in name order. A secret appears here by name only — its value is never included.
- wait_timer_secondsinteger · int32optional0–∞
- image_digeststring or nulloptionalThe exact build of the container image this step runs, when the catalog records one. Pinned, so the step cannot pick up a different build behind the same tag.
- memorystring or nulloptional
- namestringoptionalThe step's display name, as the pipeline's author wrote it when the run started. Empty for older runs recorded without one.
oidc_federationNodeOidcFederation or nulloptionalThe cloud role this step assumes with a short-lived identity token, when its connection uses OIDC federation. Absent for steps that use only stored credentials.
- The NodeOidcFederation schema
- role_arnRoleArn (string)The IAM role the step assumes with
sts:AssumeRoleWithWebIdentity. - audiencestring or nulloptionalA custom audience for the identity token, when the connection sets one. The standard audience is
sts.amazonaws.com. - regionAwsRegion (string) or nulloptionalThe AWS region for the step's calls, when the connection sets one.
originNodeOrigin or nulloptionalThe component this step came from, when the author wrote a component instance rather than the step itself. Absent for a step the pipeline declares directly.
- The NodeOrigin schema
- component_idComponentId (string · uuid)
- component_nameComponentName (string)
- inner_node_idNodeId (string)This node's identifier inside the component body — what its author called it, before expansion prefixed it with the instance.
- instance_idNodeId (string)The component instance in the pipeline the author wrote.
- versionComponentVersion (string)The version the instance's reference resolved to.
- requires_dockerbooleanoptionalWhether this step needs a Docker daemon, as its capability declares.
resource_groupResolvedResourceGroup or nulloptionalThe resource group this step holds while it runs, so no other step naming the same group runs at the same time.
- The ResolvedResourceGroup schema
- keyConcurrencyKey (string)The lock a step takes so that only one step holding it runs at a time:
env:followed by an environment's id, orrg:followed by your organization's id and a resource group's name. Set by the platform. - max_lock_wait_secondsinteger · int320–∞How long a queued step waits before failing, in seconds.
0means it waits for as long as the pipeline's timeout allows. - modeConcurrencyModequeueskipcancel_previousWhat happens when another run holds the group:
queuewaits for it,skipskips this step.
- service_idServiceId (string · uuid) or nulloptionalThe catalog service this step acts on, as it was identified when the run started.
variables_fromResolvedEnvironmentVariables or nulloptionalThe environment whose plain variables this step reads without deploying there, as it stood when the run was triggered.
- The ResolvedEnvironmentVariables schema
- environment_idEnvironmentId (string · uuid)The environment the step reads from.
- full_pathstringThe environment's unique name: the full path of the group or repository that owns it,
:, then its slug (e.g.acme/platform:production). - slugEnvironmentSlug (string)The environment's slug, as the step's
variables_fromnames it. - plainarray of ResolvedPlainVariableoptionalThe environment's non-secret variables, in name order, with their values.
- withheldarray of EnvironmentVariableName (string)optionalThe names of the environment's secrets, in name order. The step does not receive them.
- versionProviderVersion (string) or nulloptionalThe provider version this step runs: the one the pipeline pins, or else the provider's default version for the repository when the run started. It must be enabled and allowed by the provider policy that applies.
stagesarray of ResolvedStage
- The ResolvedStage schema
- barrier_modeBarrierModestrictlenientWhen a stage is allowed to start.
strictwaits for every step in every earlier stage to finish, so a failure anywhere stops what follows.lenientwaits only for the steps a given step actually depends on, so an unrelated branch failing does not block it.strictis the default. - stage_idStageId (string)
- stage_indexinteger · int320–∞
pipeline_variablesarray of ResolvedPipelineVariableoptionalThe variables available to every step in this run, resolved from the repository and the groups above it when the run was triggered. Changing a variable afterwards does not affect a run already under way, and re-running uses the values the run started with.
- The ResolvedPipelineVariable schema
- nameEnvironmentVariableName (string)
- scope_idstringThe id of the group or repository that declared the variable.
- valueEnvironmentVariableValue (string) or nulloptional
triggerTriggerContext
- The TriggerContext schema
- repo_idRepositoryId (string · uuid)
- repo_pathstring
- before_shastring or nulloptionalThe commit the ref pointed at before the push — what a
pathsfilter compares against. On a run started by hand, the commit its starter named to compare from, if any. - branchstring or nulloptional
- buildMrBuildTargetmerge_resultsourceor nulloptionalWhich commit a merge-request-triggered run built.
- commit_shastring or nulloptional
- depthinteger · int32optional0–∞How many pushes made by pipeline runs led to this run, one after another;
0when no pipeline's push started it. - every_stepbooleanoptionalEvery step runs, whatever its path filter says — asked for by whoever started the run.
- extraobjectoptionalAdditional fields supplied by whatever started the run, passed along without being interpreted.
- kindTriggerKindpushmerge_requesttagschedulemanualoptionalWhat started this run.
- mr_idMergeRequestId (integer · int64) or nulloptional
- paramsobjectoptionalThe values a person supplied when starting the run, keyed by the parameter names the pipeline's manual trigger declares.
- ref_namestring or nulloptionalThe full ref (e.g.
refs/tags/v1.2.0). Set for runs a tag started, whichbranchcannot describe. - root_group_idGroupId (string · uuid) or nulloptionalThe organisation this run belongs to — the root group of the repository it was triggered for. Recorded when the run starts and never recalculated, so a repository moved to a different organisation part-way through a run keeps the artifacts, logs and cache it has already produced. Absent on runs that started before runs recorded this.
- schedule_stemstring or nulloptionalWhich scheduled trigger fired, when
kindisschedule. - source_shastring or nulloptionalThe source-branch commit this run tested: a merge request's source head for a merge-request run, whichever commit it built, and the commit itself for a push or manual run. Set by the platform; absent on a run whose graph the caller supplied, which never counts toward a merge request's pipelines.
- target_branchstring or nulloptionalThe merge request's target branch.
- target_shastring or nulloptionalThe target branch's tip this merge-request run was tested against. Once the target branch moves on, the merge check reports a merge-result run as out of date.
triggered_byActorSummaryoptionalWho started the run, set by the platform from the authenticated caller; a value supplied in a request is ignored.
- The ActorSummary schema
- emailstring
- idstring
- usernamestring
- avatar_urlstring or nulloptional
- trustTriggerTrusttrusteduntrustedoptionalWhether the code being built is trusted with the repository's connections and secrets. Set by the platform when the run starts, whatever a request says.
- trust_reasonTrustReason or nulloptionalWhy the run has the trust it has: who wrote the code, a person's merge or approval, or the organization's AI configuration. Absent on runs that started before this was recorded.
Example
Synthesized example{
"pipeline_id": "3103d1cc-cce5-4c45-ab2b-39a09ba7fc15",
"pipeline_name": "payments-api",
"pipeline_timeout_seconds": 9,
"resolved_dag": {
"edges": [
{
"from_node": "from-node-a7e7",
"to_node": "to-node-838b"
},
{
"from_node": "from-node-6156",
"to_node": "to-node-00a3"
}
],
"nodes": [
{
"capability_id": "ba247966-95c9-443e-812d-b696747c4bdb",
"config": {},
"inputs": [],
"max_retries": 84,
"node_id": "da896ab3-e7b5-412b-bc95-918323176ef8",
"outputs": [],
"provider_id": "ca12a4d6-ba6e-4048-9cbb-f274ad8d9768",
"provider_image": "provider-image-a2f5",
"retry_delay_seconds": 77,
"secret_refs": [],
"stage_id": "45c8a4c2-bab3-45b5-85f1-7483ba43424e",
"stage_index": 6,
"timeout_seconds": 12
},
{
"capability_id": "1db26307-21ee-466e-a7f0-e6597b8a3bbb",
"config": {},
"inputs": [],
"max_retries": 46,
"node_id": "f7800cdc-c293-4b00-a5da-afe7d93de3d1",
"outputs": [],
"provider_id": "651b737d-befa-440b-8c59-634b3c4b4d73",
"provider_image": "provider-image-09d2",
"retry_delay_seconds": 27,
"secret_refs": [],
"stage_id": "5aa049c3-6647-422f-885e-ab3bd6ede4e7",
"stage_index": 4,
"timeout_seconds": 19
}
],
"stages": [
{
"barrier_mode": "strict",
"stage_id": "d505a6ac-4733-48b1-a936-373136235dea",
"stage_index": 7
}
],
"pipeline_variables": [
{
"name": "payments-api",
"scope_id": "84aeda29-6cf9-4101-a07b-dc59a3686a29"
},
{
"name": "payments-api",
"scope_id": "964971af-1238-4e74-9799-643c0c6e1574"
}
]
},
"trigger": {
"repo_id": "5b0e7c2a-9d14-4e8b-a6f1-2c3d4e5f6a70",
"repo_path": "repo-path-45cf",
"before_sha": "cde1cdbd3737b6c4354024a808fde899357a4d62",
"branch": "fix/payload-build-pin",
"build": "merge_result",
"commit_sha": "6b8022b016f3630674232515100eb6b64c13e135",
"depth": 5,
"every_step": false,
"extra": {},
"kind": "push",
"mr_id": 42,
"params": {},
"ref_name": "payments-api",
"root_group_id": "4c1d8e2f-6a3b-4f90-b7c5-1e2d3c4b5a69",
"schedule_stem": "schedule-stem-6dae",
"source_sha": "6ba8344da9b1962e589941d72443059db232850c",
"target_branch": "main",
"target_sha": "90ea435a120a573b6377a34f9dd5cf4b656b37d7",
"triggered_by": {
"email": "mara@acme.example",
"id": "id-6fd2",
"username": "mara",
"avatar_url": "https://gitmoap.example/acme/031f3000"
},
"trust": "trusted",
"trust_reason": {
"kind": "written_by_people"
}
}
}
Graph
Used inside
No schema contains this one.
Contains
Used by
Sent by 1 operation
Returned by 0 operations
No operation returns it directly.