{"openapi":"3.1.0","info":{"title":"Coralogix (BYOK) API","version":"0.1.0","description":"Coralogix (BYOK) lets an AI assistant read your own Coralogix data through the Coralogix API with a key you supply (Coralogix API key with read permissions for the data pipeline objects). Read-only: 12 tools (list_events2metrics, get_events2metrics, get_events2metrics_limits, list_rule_groups, get_rule_group, list_retention_tags, list_quota_policies, list_enrichments, list_custom_enrichments,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-coralogix-data-pipeline.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-coralogix-data-pipeline/docs"},"termsOfService":"https://connectorbay.com/byok-coralogix-data-pipeline/terms"},"servers":[{"url":"https://byok-coralogix-data-pipeline.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-coralogix-data-pipeline/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_events2metrics":{"post":{"operationId":"list_events2metrics","summary":"List the team's events-to-metrics rules (logs or spans turned into metrics) with type, data source and permutation limit","description":"List the team's events-to-metrics rules (logs or spans turned into metrics) with type, data source and permutation limits. Use for \"Which logs-to-metrics rules are configured in Coralogix\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"list_events2metricsArguments","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_events2metrics":{"post":{"operationId":"get_events2metrics","summary":"Get one events-to-metrics rule by id: name, description, type, data source and permutation limit state. Use for \"Show th","description":"Get one events-to-metrics rule by id: name, description, type, data source and permutation limit state. Use for \"Show the details of one Coralogix events-to-metrics rule\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"},"id":{"description":"Id of the events-to-metrics rule, as returned by list_events2metrics.","maxLength":200,"title":"Id","type":"string"}},"required":["region","id"],"title":"get_events2metricsArguments","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_events2metrics_limits":{"post":{"operationId":"get_events2metrics_limits","summary":"Show how many events-to-metrics rules, label permutations and labels the team may use and how many are used. Use for \"Ho","description":"Show how many events-to-metrics rules, label permutations and labels the team may use and how many are used. Use for \"How close am I to my Coralogix logs-to-metrics limits\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"get_events2metrics_limitsArguments","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_rule_groups":{"post":{"operationId":"list_rule_groups","summary":"List the log parsing rule groups with name, order, enabled flag, creator and description (matchers and subgroups are not","description":"List the log parsing rule groups with name, order, enabled flag, creator and description (matchers and subgroups are not returned). Use for \"Which parsing rule groups does my Coralogix team have, in what order\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"list_rule_groupsArguments","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_rule_group":{"post":{"operationId":"get_rule_group","summary":"Get one parsing rule group by id with its name, order, enabled flag and creator. Use for \"Show one Coralogix parsing rul","description":"Get one parsing rule group by id with its name, order, enabled flag and creator. Use for \"Show one Coralogix parsing rule group\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"},"group_id":{"description":"Id of the parsing rule group, as returned by list_rule_groups.","maxLength":200,"title":"Group Id","type":"string"}},"required":["region","group_id"],"title":"get_rule_groupArguments","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_retention_tags":{"post":{"operationId":"list_retention_tags","summary":"List the retention tags (named data retention periods) available to the team with their order and whether they can be ed","description":"List the retention tags (named data retention periods) available to the team with their order and whether they can be edited. Use for \"Which retention tags are defined in Coralogix\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"list_retention_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}},"/v1/tools/list_quota_policies":{"post":{"operationId":"list_quota_policies","summary":"List the data plan policies that decide priority and retention per application or subsystem, with order, priority and en","description":"List the data plan policies that decide priority and retention per application or subsystem, with order, priority and enabled state. Use for \"Which Coralogix data plan policies are enabled\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"},"enabled_only":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to return only policies that are enabled.","title":"Enabled Only"}},"required":["region"],"title":"list_quota_policiesArguments","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_enrichments":{"post":{"operationId":"list_enrichments","summary":"List the enrichment rules that add geo, suspicious-IP or similar fields to incoming logs, with source field and target f","description":"List the enrichment rules that add geo, suspicious-IP or similar fields to incoming logs, with source field and target field names. Use for \"Which log enrichments are configured in Coralogix\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"list_enrichmentsArguments","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_custom_enrichments":{"post":{"operationId":"list_custom_enrichments","summary":"List the custom enrichment lookup files with name, description, file size and version (file contents are not returned). ","description":"List the custom enrichment lookup files with name, description, file size and version (file contents are not returned). Use for \"Which custom enrichment files are uploaded to Coralogix\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"list_custom_enrichmentsArguments","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_logs_archive_target":{"post":{"operationId":"get_logs_archive_target","summary":"Show where logs are archived: S3 bucket and region or IBM COS endpoint, archive format and whether archiving is active. ","description":"Show where logs are archived: S3 bucket and region or IBM COS endpoint, archive format and whether archiving is active. Use for \"Where does Coralogix archive my logs\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"get_logs_archive_targetArguments","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_metrics_storage_config":{"post":{"operationId":"get_metrics_storage_config","summary":"Show the metrics archive configuration: bucket, prefix, whether it is disabled and retention days per resolution. Use fo","description":"Show the metrics archive configuration: bucket, prefix, whether it is disabled and retention days per resolution. Use for \"How are my Coralogix metrics archived and how long are they kept\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"get_metrics_storage_configArguments","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_recording_rule_sets":{"post":{"operationId":"list_recording_rule_sets","summary":"List the Prometheus-style recording rule sets with id and name (rule groups inside are not returned). Use for \"Which rec","description":"List the Prometheus-style recording rule sets with id and name (rule groups inside are not returned). Use for \"Which recording rule sets exist in Coralogix\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"region":{"description":"Coralogix region of your account: eu1, eu2, us1, us2, us3, ap1, ap2 or ap3 (the host is api.<region>.coralogix.com). A call to another region fails.","enum":["eu1","eu2","us1","us2","us3","ap1","ap2","ap3"],"title":"Region","type":"string"}},"required":["region"],"title":"list_recording_rule_setsArguments","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}}}}