SyncCreate or update pipeline

Create or update pipeline

Set which connections a run waits for, when it starts, and where the completion webhook goes.

ENABLING TAKES SCHEDULES OVER. Every in-scope connection is set to manual in Airbyte and its previous schedule stashed, because a run can only be a meaningful unit if Mythic is what triggers the syncs. Anything DROPPED from scope, or in the pipeline when it is disabled, gets its original schedule handed back — a connection left on manual with nothing triggering it does not error, it simply stops updating. The response reports both under schedule_changes.

connection_ids must be connections belonging to this client; otherwise 400 unknown_connections. Requires an agency key (ak_).

curl -X PUT "https://mythic-analytics.gulp.workers.dev/client/v1/airbyte/pipelines/example_string" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{
  "enabled": true,
  "connection_ids": [
    "example_string"
  ],
  "run_hour_utc": 42,
  "webhook_url": "example_string",
  "webhook_secret": "example_string"
}'
{
  "success": true,
  "data": {
    "id": "example_string",
    "client_id": "example_string",
    "agency_id": "example_string",
    "enabled": true,
    "connection_ids": [
      "example_string"
    ],
    "run_hour_utc": 42,
    "webhook_url": "example_string",
    "has_webhook_secret": true,
    "created_at": "2024-12-25T10:00:00Z",
    "updated_at": "2024-12-25T10:00:00Z",
    "schedule_changes": {
      "taken_over": [
        {}
      ],
      "handed_back": [
        {}
      ],
      "errors": [
        {}
      ]
    }
  }
}
PUT
/pipelines/{clientId}
PUT
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token
Bearer Tokenstring
Required

Agency key as bearer token, format Bearer ak_.... Grants full read-write access scoped to the agency. Agency-wide scoped keys (mcp_ with no fixed location) are accepted too and need airbyte:read or airbyte:write; a client-bound mcp_ key gets 403 agency_key_required. See Using an mcp_ key over HTTP.

Agency key as bearer token, format Bearer ak_.... Grants full read-write access scoped to the agency. Agency-wide scoped keys (mcp_ with no fixed location) are accepted too and need airbyte:read or airbyte:write; a client-bound mcp_ key gets 403 agency_key_required. See Using an mcp_ key over HTTP.
Bearer Token
Bearer Tokenstring
Required

Location secret key as bearer token, format Bearer sk_.... Grants read-only access; the agency is resolved from the location. Write endpoints return 403.

Location secret key as bearer token, format Bearer sk_.... Grants read-only access; the agency is resolved from the location. Write endpoints return 403.
path
clientIdstring
Required

Client (location) identifier the pipeline belongs to.

Content-Typestring
Required

The media type of the request body

Options: application/json
connection_idsarray

Mythic connection ids a run waits for. Authoritative — never inferred at run time. Use GET /pipelines/{clientId}/candidates to populate a picker.

run_hour_utcinteger

Hour (UTC) the daily run starts.

Min: 0 • Max: 23
webhook_urlstring

HTTPS endpoint POSTed once the run completes.

webhook_secretstring

Used to HMAC-SHA256 the request body into X-Mythic-Signature. Write-only; never returned.

Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token. Agency key as bearer token, format Bearer ak_.... Grants full read-write access scoped to the agency. Agency-wide scoped keys (mcp_ with no fixed location) are accepted too and need airbyte:read or airbyte:write; a client-bound mcp_ key gets 403 agency_key_required. See Using an mcp_ key over HTTP.

header
Authorizationstring
Required

Bearer token. Location secret key as bearer token, format Bearer sk_.... Grants read-only access; the agency is resolved from the location. Write endpoints return 403.

Path Parameters

clientIdstring
Required

Client (location) identifier the pipeline belongs to.

Body

application/json
connection_idsarray

Mythic connection ids a run waits for. Authoritative — never inferred at run time. Use GET /pipelines/\\{clientId\\}/candidates to populate a picker.

run_hour_utcinteger

Hour (UTC) the daily run starts.

webhook_urlstring

HTTPS endpoint POSTed once the run completes.

webhook_secretstring

Used to HMAC-SHA256 the request body into X-Mythic-Signature. Write-only; never returned.

Responses

successboolean
datastring