{"openapi":"3.1.0","info":{"title":"ConfigCat Targeting and Access (BYOK) API","version":"0.1.0","description":"ConfigCat Targeting and Access (BYOK) lets an AI assistant read your own ConfigCat Targeting and Access data through the ConfigCat Targeting and Access API with a key you supply (Public API basic auth username). Read-only: 9 tools (get_flag, get_environment_flag_values, list_flags_by_tag, list_deleted_flags, get_segment, list_permission_groups, get_permission_group, get_config, get_environment)....\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-configcat-targeting.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-configcat-targeting/docs"},"termsOfService":"https://connectorbay.com/byok-configcat-targeting/terms"},"servers":[{"url":"https://byok-configcat-targeting.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-configcat-targeting/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/get_flag":{"post":{"operationId":"get_flag","summary":"Get one feature flag or setting (by id) with key, name, hint, value type, config and tags. Use for \"Show ConfigCat flag ","description":"Get one feature flag or setting (by id) with key, name, hint, value type, config and tags. Use for \"Show ConfigCat flag 1234\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"setting_id":{"description":"Flag (setting) id, an integer from list_flags in the ConfigCat connector.","maximum":2147483647,"minimum":1,"title":"Setting Id","type":"integer"}},"required":["setting_id"],"title":"get_flagArguments","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_environment_flag_values":{"post":{"operationId":"get_environment_flag_values","summary":"Get the current value of every flag of a config in one environment, with the percentage rollout items and targeting rule","description":"Get the current value of every flag of a config in one environment, with the percentage rollout items and targeting rules (comparison attribute, comparator, compared value; the values can contain customer identifiers you chose to target) and last update time. Use for \"What are all the flag values and targeting rules of the Production environment in ConfigCat\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"config_id":{"description":"Config id (a UUID) from the ConfigCat connector list_configs.","maxLength":40,"title":"Config Id","type":"string"},"environment_id":{"description":"Environment id (a UUID) from the ConfigCat connector list_environments.","maxLength":40,"title":"Environment Id","type":"string"}},"required":["config_id","environment_id"],"title":"get_environment_flag_valuesArguments","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_flags_by_tag":{"post":{"operationId":"list_flags_by_tag","summary":"List the flags that carry a given tag, with key, name, type, hint and config. Use for \"Which ConfigCat flags are tagged ","description":"List the flags that carry a given tag, with key, name, type, hint and config. Use for \"Which ConfigCat flags are tagged checkout\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tag_id":{"description":"Tag id, an integer from list_tags in the ConfigCat connector.","maximum":2147483647,"minimum":1,"title":"Tag Id","type":"integer"}},"required":["tag_id"],"title":"list_flags_by_tagArguments","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_deleted_flags":{"post":{"operationId":"list_deleted_flags","summary":"List the flags that were deleted from a config, with key, name, type and hint. Use for \"Which flags were deleted from my","description":"List the flags that were deleted from a config, with key, name, type and hint. Use for \"Which flags were deleted from my ConfigCat config\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"config_id":{"description":"Config id (a UUID) from the ConfigCat connector list_configs.","maxLength":40,"title":"Config Id","type":"string"}},"required":["config_id"],"title":"list_deleted_flagsArguments","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_segment":{"post":{"operationId":"get_segment","summary":"Get one segment (reusable targeting group) with its name, description, comparison attribute and comparator, creation and","description":"Get one segment (reusable targeting group) with its name, description, comparison attribute and comparator, creation and update dates. The compared values are not returned. Use for \"What is the ConfigCat segment beta-testers\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"segment_id":{"description":"Segment id (a UUID) from list_segments in the ConfigCat connector.","maxLength":40,"title":"Segment Id","type":"string"}},"required":["segment_id"],"title":"get_segmentArguments","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_permission_groups":{"post":{"operationId":"list_permission_groups","summary":"List the permission groups of a product with access type, key capability flags and per-environment access. Members are n","description":"List the permission groups of a product with access type, key capability flags and per-environment access. Members are not listed. Use for \"Which permission groups does my ConfigCat product have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"product_id":{"description":"Product id (a UUID) from the ConfigCat connector list_products.","maxLength":40,"title":"Product Id","type":"string"}},"required":["product_id"],"title":"list_permission_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_permission_group":{"post":{"operationId":"get_permission_group","summary":"Get one permission group with its access type, capability flags and per-environment access. Use for \"What can the Config","description":"Get one permission group with its access type, capability flags and per-environment access. Use for \"What can the ConfigCat permission group 3 do\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"permission_group_id":{"description":"Permission group id, an integer from list_permission_groups.","maximum":2147483647,"minimum":1,"title":"Permission Group Id","type":"integer"}},"required":["permission_group_id"],"title":"get_permission_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/get_config":{"post":{"operationId":"get_config","summary":"Get one config (flag container) with its name, description, evaluation version and order. Use for \"Show ConfigCat config","description":"Get one config (flag container) with its name, description, evaluation version and order. Use for \"Show ConfigCat config 08d86d63\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"config_id":{"description":"Config id (a UUID) from the ConfigCat connector list_configs.","maxLength":40,"title":"Config Id","type":"string"}},"required":["config_id"],"title":"get_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/get_environment":{"post":{"operationId":"get_environment","summary":"Get one environment with its name, description, color and whether changes need a reason or approval. Use for \"Show the C","description":"Get one environment with its name, description, color and whether changes need a reason or approval. Use for \"Show the ConfigCat environment 08d86d63\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"environment_id":{"description":"Environment id (a UUID) from the ConfigCat connector list_environments.","maxLength":40,"title":"Environment Id","type":"string"}},"required":["environment_id"],"title":"get_environmentArguments","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}}}}