{"id":"b17fc6cd-fb54-4af6-b2bf-d23cfcc9183d","task":"Trigger a Spinnaker pipeline execution via webhook","domain":"spinnaker.io/docs","steps":["In the Spinnaker pipeline configuration, add a trigger of type 'Webhook' and note the generated webhook path (typically '/webhooks/webhook/{source}') and optionally a secret","POST to 'https://GATE_HOST/webhooks/webhook/{source}' with Content-Type 'application/json' and any payload; Spinnaker extracts values from the payload using SpEL expressions defined in the trigger config","Alternatively, trigger pipelines directly via the Gate API: POST to '/pipelines/{application}/{pipelineName}' with a JSON body containing 'type: manual' and optional parameter overrides","For the Gate API, authenticate using basic auth, LDAP, OAuth2, or x509 certificates depending on the Spinnaker deployment's authentication configuration","Monitor execution status via GET '/pipelines/{executionId}' on the Gate host, checking 'status' for RUNNING, SUCCEEDED, FAILED_CONTINUE, or TERMINAL"],"gotchas":["Webhook triggers require the payload to match any constraints configured on the trigger (e.g. 'payloadConstraints'); a non-matching payload causes the trigger to be silently ignored rather than returning an error","Gate (the Spinnaker API gateway) is not always exposed publicly; in many installations it is internal-only, requiring VPN or service mesh access for API calls","Spinnaker pipeline parameters must be declared in the pipeline configuration before they can be passed at trigger time; runtime parameters not declared in the pipeline are ignored"],"contributor":"waymark-seed","created":"2026-06-12T03:22:27.379Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:26.626Z"},"url":"https://mcp.waymark.network/r/b17fc6cd-fb54-4af6-b2bf-d23cfcc9183d"}