{"openapi":"3.1.0","info":{"title":"Stitch (BYOK) API","version":"0.1.0","description":"Stitch (BYOK) lets an AI assistant read your own Stitch data through the Stitch API with a key you supply (Stitch Connect API access token (Advanced and Premium plans or free trial)). Read-only: 6 tools (list_sources, get_source, list_destinations, list_source_streams, list_last_extractions, list_last_loads). The BYOK key travels with each request, is used for that one call only and is never...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-stitch.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-stitch/docs"},"termsOfService":"https://connectorbay.com/byok-stitch/terms"},"servers":[{"url":"https://byok-stitch.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-stitch/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_sources":{"post":{"operationId":"list_sources","summary":"List the sources of the account (active, paused and deleted) with name, type, creation and pause times. Connection prope","description":"List the sources of the account (active, paused and deleted) with name, type, creation and pause times. Connection properties and credentials are left out. Use for \"Which data sources are connected to my Stitch account and are any paused\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_sourcesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_source":{"post":{"operationId":"get_source","summary":"Get one source: name, display name, type and when it was created, updated or paused. Use for \"When was Stitch source 119","description":"Get one source: name, display name, type and when it was created, updated or paused. Use for \"When was Stitch source 119945 last updated\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"source_id":{"description":"Numeric id of the source (from list_sources).","title":"Source Id","type":"integer"}},"required":["source_id"],"title":"get_sourceArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_destinations":{"post":{"operationId":"list_destinations","summary":"List the destinations (data warehouses) of the account with name, type and pause or deletion times. Connection propertie","description":"List the destinations (data warehouses) of the account with name, type and pause or deletion times. Connection properties are left out. Use for \"Which warehouse does Stitch load into\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_destinationsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_source_streams":{"post":{"operationId":"list_source_streams","summary":"List the streams (tables) available for a source with name and whether each is selected for replication. Use for \"Which ","description":"List the streams (tables) available for a source with name and whether each is selected for replication. Use for \"Which tables is Stitch replicating from source 119945\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"source_id":{"description":"Numeric id of the source (from list_sources).","title":"Source Id","type":"integer"}},"required":["source_id"],"title":"list_source_streamsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_last_extractions":{"post":{"operationId":"list_last_extractions","summary":"List the last completed extraction job of each source that ran in the past 60 days with exit status of discovery, tap an","description":"List the last completed extraction job of each source that ran in the past 60 days with exit status of discovery, tap and target and any error text. Limited to 30 requests per 10 minutes. Use for \"Did the latest Stitch extraction jobs succeed\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"stitch_client_id":{"description":"Numeric id of your Stitch client account (stitch_client_id on any source, e.g. 116078).","title":"Stitch Client Id","type":"integer"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page of results, starting at 1 (up to 100 records per page); follow the links in the answer for more.","title":"Page"}},"required":["stitch_client_id"],"title":"list_last_extractionsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_last_loads":{"post":{"operationId":"list_last_loads","summary":"List the most recent load attempt of each stream (table) from the past 60 days with the last batch time and whether it i","description":"List the most recent load attempt of each stream (table) from the past 60 days with the last batch time and whether it is in an error state. Limited to 30 requests per 10 minutes. Use for \"Which Stitch tables failed to load\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"stitch_client_id":{"description":"Numeric id of your Stitch client account (stitch_client_id on any source, e.g. 116078).","title":"Stitch Client Id","type":"integer"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page of results, starting at 1 (up to 100 records per page); follow the links in the answer for more.","title":"Page"}},"required":["stitch_client_id"],"title":"list_last_loadsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}