{"openapi":"3.1.0","info":{"title":"LaunchDarkly Releases (BYOK) API","version":"0.1.0","description":"LaunchDarkly Releases (BYOK) lets an AI assistant read your own LaunchDarkly Releases data through the LaunchDarkly Releases API with a key you supply (LaunchDarkly API access token (a Reader role token is enough; commercial site, not EU or federal)). Read-only: 8 tools (list_release_pipelines, get_release_pipeline, list_pipeline_releases, get_flag_release, list_flag_workflows,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-launchdarkly-releases.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-launchdarkly-releases/docs"},"termsOfService":"https://connectorbay.com/byok-launchdarkly-releases/terms"},"servers":[{"url":"https://byok-launchdarkly-releases.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-launchdarkly-releases/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_release_pipelines":{"post":{"operationId":"list_release_pipelines","summary":"List a project's release pipelines with description, default flag and creation time. Use for \"What release pipelines doe","description":"List a project's release pipelines with description, default flag and creation time. Use for \"What release pipelines does the default LaunchDarkly project have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"filter":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated field:value filters, for example 'query:rollout'; see LaunchDarkly's release pipelines docs.","title":"Filter"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many results to return (1 to 100; the API default is 20).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip, for paging.","title":"Offset"}},"required":["project_key"],"title":"list_release_pipelinesArguments","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_release_pipeline":{"post":{"operationId":"get_release_pipeline","summary":"Get one release pipeline with its ordered phases (name and audiences). Use for \"Show the phases of the standard-rollout ","description":"Get one release pipeline with its ordered phases (name and audiences). Use for \"Show the phases of the standard-rollout release pipeline\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"pipeline_key":{"description":"Key of the release pipeline (from list_release_pipelines).","maxLength":100,"title":"Pipeline Key","type":"string"}},"required":["project_key","pipeline_key"],"title":"get_release_pipelineArguments","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_pipeline_releases":{"post":{"operationId":"list_pipeline_releases","summary":"List the flag releases moving through a pipeline with the active phase, its status and start and completion time. Counts","description":"List the flag releases moving through a pipeline with the active phase, its status and start and completion time. Counts of active and completed releases come with it. Use for \"Which flags are currently releasing through standard-rollout\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"pipeline_key":{"description":"Key of the release pipeline (from list_release_pipelines).","maxLength":100,"title":"Pipeline Key","type":"string"},"filter":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Filter such as 'status equals active' or 'status equals completed'.","title":"Filter"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many results to return (1 to 100; the API default is 20).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip, for paging.","title":"Offset"}},"required":["project_key","pipeline_key"],"title":"list_pipeline_releasesArguments","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_flag_release":{"post":{"operationId":"get_flag_release","summary":"Get the release a feature flag is part of: pipeline, phases and when it was canceled, if it was. Use for \"Is flag new-ch","description":"Get the release a feature flag is part of: pipeline, phases and when it was canceled, if it was. Use for \"Is flag new-checkout part of a release pipeline and which phase is it in\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"flag_key":{"description":"Key of the feature flag, for example 'new-checkout'.","maxLength":100,"title":"Flag Key","type":"string"}},"required":["project_key","flag_key"],"title":"get_flag_releaseArguments","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_flag_workflows":{"post":{"operationId":"list_flag_workflows","summary":"List the workflows (scheduled and conditional changes) of a flag in one environment with kind, creation time and executi","description":"List the workflows (scheduled and conditional changes) of a flag in one environment with kind, creation time and execution state. Use for \"What workflows are set up for flag new-checkout in production\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"flag_key":{"description":"Key of the feature flag, for example 'new-checkout'.","maxLength":100,"title":"Flag Key","type":"string"},"environment_key":{"description":"Key of the environment inside the project, for example 'production'.","maxLength":100,"title":"Environment Key","type":"string"},"status":{"anyOf":[{"enum":["active","completed","failed"],"type":"string"},{"type":"null"}],"default":null,"description":"Only workflows with this status.","title":"Status"},"sort":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Sort field, prefix with - for descending; the API supports creationDate, maintainerId, name and stopped.","title":"Sort"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many results to return (1 to 100; the API default is 20).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip, for paging.","title":"Offset"}},"required":["project_key","flag_key","environment_key"],"title":"list_flag_workflowsArguments","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_approval_requests":{"post":{"operationId":"list_approval_requests","summary":"List approval requests across the account with status, review status, resource and timing. Filter expressions are passed","description":"List approval requests across the account with status, review status, resource and timing. Filter expressions are passed through; example: status anyOf [\"pending\"]. Use for \"Which approval requests are still pending\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"filter":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Filter expression such as 'status anyOf [\"pending\",\"scheduled\"]', 'resourceKind equals flag' or 'reviewStatus anyOf [\"pending\"]'; separate filters with commas.","title":"Filter"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"How many results to return (1 to 200; the API default is 20).","title":"Limit"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip, for paging.","title":"Offset"}},"title":"list_approval_requestsArguments","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_flag_approval_requests":{"post":{"operationId":"list_flag_approval_requests","summary":"List the approval requests for one flag in one environment. Use for \"What approval requests exist for flag new-checkout ","description":"List the approval requests for one flag in one environment. Use for \"What approval requests exist for flag new-checkout in production\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"flag_key":{"description":"Key of the feature flag, for example 'new-checkout'.","maxLength":100,"title":"Flag Key","type":"string"},"environment_key":{"description":"Key of the environment inside the project, for example 'production'.","maxLength":100,"title":"Environment Key","type":"string"}},"required":["project_key","flag_key","environment_key"],"title":"list_flag_approval_requestsArguments","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_flag_status_across_environments":{"post":{"operationId":"get_flag_status_across_environments","summary":"Show a flag's lifecycle status (new, inactive, active or launched) and last request time in each environment. Use for \"I","description":"Show a flag's lifecycle status (new, inactive, active or launched) and last request time in each environment. Use for \"Is flag new-checkout still being evaluated in each environment\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_key":{"description":"Key of the LaunchDarkly project, for example 'default'.","maxLength":100,"title":"Project Key","type":"string"},"flag_key":{"description":"Key of the feature flag, for example 'new-checkout'.","maxLength":100,"title":"Flag Key","type":"string"},"env":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only this environment key.","title":"Env"}},"required":["project_key","flag_key"],"title":"get_flag_status_across_environmentsArguments","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}}}}