{"openapi":"3.1.0","info":{"title":"Celigo EU (BYOK) API","version":"0.1.0","description":"Celigo EU (BYOK) lets an AI assistant read your own Celigo EU data through the Celigo EU API with a key you supply (Celigo API token (service token or personal access token)). Read-only: 12 tools (list_integrations, list_flows, get_flow, get_flow_errors, get_integration_errors, list_jobs, get_job, get_latest_flow_jobs, list_connections, list_scripts, list_integration_revisions, list_tags). The...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-celigo-eu.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-celigo-eu/docs"},"termsOfService":"https://connectorbay.com/byok-celigo-eu/terms"},"servers":[{"url":"https://byok-celigo-eu.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-celigo-eu/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_integrations":{"post":{"operationId":"list_integrations","summary":"List your integrations with name, mode (install, settings, uninstall), version, tag and change times. Install steps, set","description":"List your integrations with name, mode (install, settings, uninstall), version, tag and change times. Install steps, settings and readme text are left out. Use for \"Which integrations do we have in Celigo\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many records to return in the first page (1 or more).","title":"Limit"}},"title":"list_integrationsArguments","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_flows":{"post":{"operationId":"list_flows","summary":"List flows with name, integration, enabled state, schedule, time zone and last run time. Pass an integration id or a nam","description":"List flows with name, integration, enabled state, schedule, time zone and last run time. Pass an integration id or a name to narrow the list; sort by last run to see what ran most recently. Use for \"Which Celigo flows are disabled\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many records to return in the first page (1 or more).","title":"Limit"},"integration_id":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only flows of this integration.","title":"Integration Id"},"name":{"anyOf":[{"maxLength":150,"type":"string"},{"type":"null"}],"default":null,"description":"Only flows with this exact name.","title":"Name"},"disabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"true for disabled flows only, false for enabled flows only.","title":"Disabled"},"sort_by":{"anyOf":[{"const":"lastExecutedAt","type":"string"},{"type":"null"}],"default":null,"description":"Set to lastExecutedAt to get the most recently run flows first.","title":"Sort By"}},"title":"list_flowsArguments","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_flow":{"post":{"operationId":"get_flow","summary":"Get one flow by id: name, integration, enabled state, schedule, time zone, last run and change times. Step definitions a","description":"Get one flow by id: name, integration, enabled state, schedule, time zone, last run and change times. Step definitions are left out. Use for \"Show the settings of Celigo flow {id}\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Flow id (the _id value from list_flows).","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"get_flowArguments","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_flow_errors":{"post":{"operationId":"get_flow_errors","summary":"Summarize the open errors of a flow per step (export or import): number of errors and time of the last one. Error record","description":"Summarize the open errors of a flow per step (export or import): number of errors and time of the last one. Error records and their data are not returned. Use for \"Which steps of this Celigo flow have open errors\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Flow id (the _id value from list_flows).","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"get_flow_errorsArguments","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_integration_errors":{"post":{"operationId":"get_integration_errors","summary":"Summarize the open errors of an integration per flow: number of errors and time of the last one. Use for \"Which flows of","description":"Summarize the open errors of an integration per flow: number of errors and time of the last one. Use for \"Which flows of this Celigo integration have open errors\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Integration id (the _id value from list_integrations).","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"get_integration_errorsArguments","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_jobs":{"post":{"operationId":"list_jobs","summary":"List flow, export and import run jobs with status, counts of successful, ignored and failed records, and start and end t","description":"List flow, export and import run jobs with status, counts of successful, ignored and failed records, and start and end times. Filter by integration, flow, status, type or time. Use for \"Which Celigo jobs failed since yesterday\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"integration_id":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs of this integration.","title":"Integration Id"},"flow_id":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs of this flow.","title":"Flow Id"},"status":{"anyOf":[{"enum":["queued","running","completed","failed","canceled","canceling","retrying"],"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs with this status.","title":"Status"},"type":{"anyOf":[{"enum":["flow","export","import","retry","bulk_retry"],"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs of this type.","title":"Type"},"created_after":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs created at or after this ISO 8601 time.","title":"Created After"},"created_before":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only jobs created at or before this ISO 8601 time.","title":"Created Before"},"min_errors":{"anyOf":[{"maximum":1000000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Only jobs with at least this many errors.","title":"Min Errors"}},"title":"list_jobsArguments","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_job":{"post":{"operationId":"get_job","summary":"Get one job by id with status, record counts and start and end times. Use for \"How did Celigo job {id} end\".","description":"Get one job by id with status, record counts and start and end times. Use for \"How did Celigo job {id} end\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Job id (the _id value from list_jobs).","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"get_jobArguments","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_latest_flow_jobs":{"post":{"operationId":"get_latest_flow_jobs","summary":"Get the most recent job or jobs of a flow, including its export and import steps, with status and record counts. Use for","description":"Get the most recent job or jobs of a flow, including its export and import steps, with status and record counts. Use for \"What happened in the last run of this Celigo flow\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Flow id (the _id value from list_flows).","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"get_latest_flow_jobsArguments","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_connections":{"post":{"operationId":"list_connections","summary":"List connections with name, type (http, salesforce, netsuite, ftp, rdbms and more), offline state and integration. Crede","description":"List connections with name, type (http, salesforce, netsuite, ftp, rdbms and more), offline state and integration. Credentials and settings are left out. Use for \"Which Celigo connections are offline\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many records to return in the first page (1 or more).","title":"Limit"}},"title":"list_connectionsArguments","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_scripts":{"post":{"operationId":"list_scripts","summary":"List scripts with name and change times. Script source code is not returned. Use for \"Which scripts exist in my Celigo a","description":"List scripts with name and change times. Script source code is not returned. Use for \"Which scripts exist in my Celigo account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many records to return in the first page (1 or more).","title":"Limit"}},"title":"list_scriptsArguments","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_integration_revisions":{"post":{"operationId":"list_integration_revisions","summary":"List the revisions (snapshot, pull, revert) of an integration with type, status and times. Use for \"What revisions does ","description":"List the revisions (snapshot, pull, revert) of an integration with type, status and times. Use for \"What revisions does this Celigo integration have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"id":{"description":"Integration id (the _id value from list_integrations).","maxLength":200,"title":"Id","type":"string"}},"required":["id"],"title":"list_integration_revisionsArguments","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_tags":{"post":{"operationId":"list_tags","summary":"List the tags defined in the account. Use for \"Which tags are defined in Celigo\".","description":"List the tags defined in the account. Use for \"Which tags are defined in Celigo\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many records to return in the first page (1 or more).","title":"Limit"}},"title":"list_tagsArguments","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}}}}