launchdarkly Webhooks API

Configure webhooks to receive HTTP POST notifications when changes occur in LaunchDarkly.

Business capability
Webhook & Event Subscription Management BC-4270.80

Operations 10

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/v2/webhooks List webhooks #
POST /api/v2/webhooks Creates a webhook #
GET /api/v2/webhooks/{id} Get webhook #
PATCH /api/v2/webhooks/{id} Update webhook #
DELETE /api/v2/webhooks/{id} Delete webhook #
GET /webhooks List webhooks · List webhooks #
Ask an LLM
“Which webhooks are configured in our account?”
“How can I see where change notifications are being sent?”
Tell an agent
List all webhooks.
Show every webhook in the account.
POST /webhooks Create a webhook · Create a webhook #
Ask an LLM
“How do I get notified at my own URL when something changes?”
“Can I sign webhook payloads with a secret?”
Tell an agent
Create a webhook that posts to {url}.
Create webhook {name} to {url} signed with secret {secret}.
GET /webhooks/{webhookId} Get one webhook · Get a webhook #
Ask an LLM
“How do I look up the settings of a specific webhook?”
“What URL does a given webhook send to?”
Tell an agent
Get webhook {webhookId}.
Show the configuration of webhook {webhookId}.
PATCH /webhooks/{webhookId} Update a webhook · Update a webhook #
Ask an LLM
“How do I change a webhook's URL or turn it off?”
“Can I edit an existing webhook's settings?”
Tell an agent
Update webhook {webhookId} with patch {patch}.
Apply {patch} to webhook {webhookId}, commenting {comment}.
DELETE /webhooks/{webhookId} Delete a webhook · Delete a webhook #
Ask an LLM
“How do I permanently remove a webhook subscription?”
“Can I stop a webhook from sending by deleting it?”
Tell an agent destructive · confirm first
Delete webhook {webhookId}.
Permanently remove the webhook {webhookId}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/launchdarkly:launchdarkly-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

launchdarkly-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Launchdarkly Webhooks API
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: '1.0'
  description: 'Operations tagged Webhooks across 2 of this provider''s published API definitions: launchdarkly-openapi.json, launchdarkly-rest-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://app.launchdarkly.com
  description: ' Default'
- url: https://app.launchdarkly.us
  description: ' Federal'
- url: https://app.launchdarkly.com/api/v2
  description: LaunchDarkly Production API
tags:
- name: Webhooks
  description: 'The webhooks API lets you build your own integrations that subscribe to activities in LaunchDarkly. When you generate an activity in LaunchDarkly, such as when you change a flag or you create a project, LaunchDarkly sends an HTTP POST payload to the webhook''s URL. Use webhooks to update external issue trackers, update support tickets, notify customers of new feature rollouts, and more.


    Several of the endpoints in the webhooks API require a webhook ID. The webhook ID is returned as part of the Creates a webhook and List webhooks responses. It is the `_id` field, or the `_id` field of each element in the `items` array.


    ## Designating the payload


    The webhook payload is identical to an audit log entry. To learn more, read Get audit log entry.


    Here''s a sample payload:


    > ### Webhook delivery order

    >

    > Webhooks may not be delivered in chronological order. We recommend using the payload''s "date" field as a timestamp to reorder webhooks as they are received.


    ```json

    {

    "_links": {

    "canonical": {

    "href": "/api/v2/projects/alexis/environments/test",

    "type": "application/json"

    },

    "parent": {

    "href": "/api/v2/auditlog",

    "type": "application/json"

    },

    "self": {

    "href": "/api/v2/auditlog/57c0a8e29969090743529965",

    "type": "application/json"

    },

    "site": {

    "href": "/settings#/projects",

    "type": "text/html"

    }

    },

    "_id": "57c0a8e29969090743529965",

    "date": 1472243938774,

    "accesses": [

    {

    "action": "updateName",

    "resource": "proj/alexis:env/test"

    }

    ],

    "kind": "environment",

    "name": "Testing",

    "description": "- Changed the name from ~~Test~~ to *Testing*",

    "member": {

    "_links": {

    "parent": {

    "href": "/internal/account/members",

    "type": "application/json"

    },

    "self": {

    "href": "/internal/account/members/548f6741c1efad40031b18ae",

    "type": "application/json"

    }

    },

    "_id": "548f6741c1efad40031b18ae",

    "email": "ariel@acme.com",

    "firstName": "Ariel",

    "lastName": "Flores"

    },

    "titleVerb": "changed the name of",

    "title": "Ariel Flores changed the name of Testing",

    "target": {

    "_links": {

    "canonical": {

    "href": "/api/v2/projects/alexis/environments/test",

    "type": "application/json"

    },

    "site": {

    "href": "/settings#/projects",

    "type": "text/html"

    }

    },

    "name": "Testing",

    "resources": ["proj/alexis:env/test"]

    }

    }

    ```


    ## Signing the webhook


    Optionally, you can define a `secret` when you create a webhook. If you define the secret, the webhook `POST` request will include an `X-LD-Signature header`, whose value will contain an HMAC SHA256 hex digest of the webhook payload, using the `secret` as the key.


    Compute the signature of the payload using the same shared secret in your code to verify that the webhook was triggered by LaunchDarkly.


    ## Understanding connection retries


    If LaunchDarkly receives a non-`2xx` response to a webhook `POST`, it will retry the delivery one time. Webhook delivery is not guaranteed. If you build an integration on webhooks, make sure it is tolerant of delivery failures.'
paths:
  /api/v2/webhooks:
    get:
      responses:
        '200':
          description: Webhooks response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhooks'
        '401':
          description: Invalid access token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedErrorRep'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorRep'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedErrorRep'
      tags:
      - Webhooks
      summary: List webhooks
      description: Fetch a list of all webhooks.
      operationId: getAllWebhooks
      security:
      - ApiKey:
        - read
        - write
    post:
      responses:
        '200':
          description: Webhook response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestErrorRep'
        '401':
          description: Invalid access token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedErrorRep'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorRep'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedErrorRep'
      tags:
      - Webhooks
      summary: Creates a webhook
      description: Create a new webhook.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/webhookPost'
            example:
              name: apidocs test webhook
              'on': true
              sign: false
              statements:
              - actions:
                - '*'
                effect: allow
                resources:
                - proj/test
              tags:
              - example-tag
              url: https://example.com
        required: true
      operationId: postWebhook
      security:
      - ApiKey:
        - read
        - write
    servers:
    - url: https://app.launchdarkly.com
      description: ' Default'
    - url: https://app.launchdarkly.us
      description: ' Federal'
  /api/v2/webhooks/{id}:
    get:
      responses:
        '200':
          description: Webhook response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '401':
          description: Invalid access token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedErrorRep'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorRep'
        '404':
          description: Invalid resource identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundErrorRep'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedErrorRep'
      tags:
      - Webhooks
      summary: Get webhook
      description: Get a single webhook by ID.
      parameters:
      - name: id
        in: path
        description: The ID of the webhook
        required: true
        schema:
          type: string
          format: string
          description: The ID of the webhook
      operationId: getWebhook
      security:
      - ApiKey:
        - read
        - write
    patch:
      responses:
        '200':
          description: Webhook response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestErrorRep'
        '401':
          description: Invalid access token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedErrorRep'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorRep'
        '404':
          description: Invalid resource identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundErrorRep'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedErrorRep'
      tags:
      - Webhooks
      summary: Update webhook
      description: Update a webhook's settings. Updating webhook settings uses a JSON patch representation of the desired changes. To learn more, read Updates.
      parameters:
      - name: id
        in: path
        description: The ID of the webhook to update
        required: true
        schema:
          type: string
          format: string
          description: The ID of the webhook to update
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JSONPatch'
            example:
            - op: replace
              path: /on
              value: false
        required: true
      operationId: patchWebhook
      security:
      - ApiKey:
        - read
        - write
    delete:
      responses:
        '204':
          description: Action succeeded
        '401':
          description: Invalid access token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedErrorRep'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenErrorRep'
        '404':
          description: Invalid resource identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundErrorRep'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedErrorRep'
      tags:
      - Webhooks
      summary: Delete webhook
      description: Delete a webhook by ID.
      parameters:
      - name: id
        in: path
        description: The ID of the webhook to delete
        required: true
        schema:
          type: string
          format: string
          description: The ID of the webhook to delete
      operationId: deleteWebhook
      security:
      - ApiKey:
        - read
        - write
    servers:
    - url: https://app.launchdarkly.com
      description: ' Default'
    - url: https://app.launchdarkly.us
      description: ' Federal'
  /webhooks:
    get:
      operationId: listWebhooks
      summary: List webhooks
      description: Returns a list of all webhooks configured in the LaunchDarkly account.
      tags:
      - Webhooks
      responses:
        '200':
          description: Successful response containing a list of webhooks.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhooks_2'
        '401':
          description: Unauthorized. Invalid or missing access token.
      security:
      - bearerAuth: []
    post:
      operationId: createWebhook
      summary: Create a webhook
      description: Creates a new webhook subscription that will receive HTTP POST notifications when changes occur in LaunchDarkly.
      tags:
      - Webhooks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookBody'
      responses:
        '201':
          description: Webhook created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook_2'
        '400':
          description: Invalid request body.
        '401':
          description: Unauthorized. Invalid or missing access token.
      security:
      - bearerAuth: []
    servers:
    - url: https://app.launchdarkly.com/api/v2
      description: LaunchDarkly Production API
  /webhooks/{webhookId}:
    get:
      operationId: getWebhooksByWebhookId
      summary: Get a webhook
      description: Returns a single webhook by its identifier.
      tags:
      - Webhooks
      parameters:
      - $ref: '#/components/parameters/WebhookId'
      responses:
        '200':
          description: Successful response containing the webhook.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook_2'
        '401':
          description: Unauthorized. Invalid or missing access token.
        '404':
          description: Webhook not found.
      security:
      - bearerAuth: []
      x-operation-id-source: normalized
      x-operation-id-original: getWebhook
    patch:
      operationId: patchWebhooksByWebhookId
      summary: Update a webhook
      description: Updates a webhook using a JSON Patch representation.
      tags:
      - Webhooks
      parameters:
      - $ref: '#/components/parameters/WebhookId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchOperation_2'
      responses:
        '200':
          description: Webhook updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook_2'
        '400':
          description: Invalid patch request.
        '401':
          description: Unauthorized. Invalid or missing access token.
        '404':
          description: Webhook not found.
      security:
      - bearerAuth: []
      x-operation-id-source: normalized
      x-operation-id-original: patchWebhook
    delete:
      operationId: deleteWebhooksByWebhookId
      summary: Delete a webhook
      description: Permanently deletes a webhook subscription.
      tags:
      - Webhooks
      parameters:
      - $ref: '#/components/parameters/WebhookId'
      responses:
        '204':
          description: Webhook deleted successfully.
        '401':
          description: Unauthorized. Invalid or missing access token.
        '404':
          description: Webhook not found.
      security:
      - bearerAuth: []
      x-operation-id-source: normalized
      x-operation-id-original: deleteWebhook
    servers:
    - url: https://app.launchdarkly.com/api/v2
      description: LaunchDarkly Production API
components:
  schemas:
    JSONPatch:
      type: array
      items:
        $ref: '#/components/schemas/PatchOperation'
    AccessDenied:
      type: object
      required:
      - action
      - reason
      properties:
        action:
          $ref: '#/components/schemas/ActionIdentifier'
        reason:
          $ref: '#/components/schemas/AccessDeniedReason'
    webhookPost:
      type: object
      required:
      - url
      - sign
      - 'on'
      properties:
        name:
          type: string
          description: A human-readable name for your webhook
          example: Example hook
        url:
          type: string
          description: The URL of the remote webhook
          example: http://www.example.com
        secret:
          type: string
          description: If sign is true, and the secret attribute is omitted, LaunchDarkly automatically generates a secret for you.
          example: frobozz
        statements:
          description: Represents a Custom role policy, defining a resource kinds filter the webhook should respond to.
          $ref: '#/components/schemas/StatementPostList'
        sign:
          type: boolean
          description: If sign is false, the webhook does not include a signature header, and the secret can be omitted.
          example: true
        'on':
          type: boolean
          description: Whether or not this webhook is enabled.
          example: true
        tags:
          type: array
          description: List of tags for this webhook
          items:
            type: string
          example: []
    StatementPost:
      type: object
      required:
      - effect
      properties:
        resources:
          type: array
          description: Resource specifier strings
          items:
            type: string
          example:
          - proj/*:env/*:flag/*;testing-tag
        notResources:
          type: array
          description: Targeted resources are the resources NOT in this list. The <code>resources</code> field must be empty to use this field.
          items:
            type: string
        actions:
          type: array
          description: Actions to perform on a resource
          items:
            $ref: '#/components/schemas/ActionSpecifier'
          example:
          - '*'
        notActions:
          type: array
          description: Targeted actions are the actions NOT in this list. The <code>actions</code> field must be empty to use this field.
          items:
            $ref: '#/components/schemas/ActionSpecifier'
        effect:
          type: string
          description: Whether this statement should allow or deny actions on the resources.
          example: allow
          enum:
          - allow
          - deny
    InvalidRequestErrorRep:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: Specific error code encountered
          example: invalid_request
        message:
          type: string
          description: Description of the error
          example: Invalid request body
    RateLimitedErrorRep:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: Specific error code encountered
          example: rate_limited
        message:
          type: string
          description: Description of the error
          example: You've exceeded the API rate limit. Try again later.
    AccessDeniedReason:
      type: object
      required:
      - effect
      properties:
        resources:
          type: array
          description: Resource specifier strings
          items:
            type: string
          example:
          - proj/*:env/*;qa_*:/flag/*
        notResources:
          type: array
          description: Targeted resources are the resources NOT in this list. The <code>resources</code> and <code>notActions</code> fields must be empty to use this field.
          items:
            type: string
        actions:
          type: array
          description: Actions to perform on a resource
          items:
            $ref: '#/components/schemas/ActionSpecifier'
          example:
          - '*'
        notActions:
          type: array
          description: Targeted actions are the actions NOT in this list. The <code>actions</code> and <code>notResources</code> fields must be empty to use this field.
          items:
            $ref: '#/components/schemas/ActionSpecifier'
        effect:
          type: string
          description: Whether this statement should allow or deny actions on the resources.
          example: allow
          enum:
          - allow
          - deny
        role_name:
          type: string
    UnauthorizedErrorRep:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: Specific error code encountered
          example: unauthorized
        message:
          type: string
          description: Description of the error
          example: Invalid access token
    ForbiddenErrorRep:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: Specific error code encountered
          example: forbidden
        message:
          type: string
          description: Description of the error
          example: Forbidden. Access to the requested resource was denied.
    ActionSpecifier:
      type: string
    Webhooks:
      type: object
      required:
      - _links
      - items
      properties:
        _links:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Link'
          description: The location and content type of related resources
        items:
          type: array
          description: An array of webhooks
          items:
            $ref: '#/components/schemas/Webhook'
    Link:
      type: object
      properties:
        href:
          type: string
        type:
          type: string
    ActionIdentifier:
      type: string
    PatchOperation:
      type: object
      required:
      - op
      - path
      properties:
        op:
          type: string
          description: The type of operation to perform
          example: replace
        path:
          type: string
          description: A JSON Pointer string specifying the part of the document to operate on
          example: /exampleField
        value:
          description: A JSON value used in "add", "replace", and "test" operations
          example: new example value
    Statement:
      type: object
      required:
      - effect
      properties:
        resources:
          type: array
          description: Resource specifier strings
          items:
            type: string
          example:
          - proj/*:env/*;qa_*:/flag/*
        notResources:
          type: array
          description: Targeted resources are the resources NOT in this list. The <code>resources</code> and <code>notActions</code> fields must be empty to use this field.
          items:
            type: string
        actions:
          type: array
          description: Actions to perform on a resource
          items:
            $ref: '#/components/schemas/ActionSpecifier'
          example:
          - '*'
        notActions:
          type: array
          description: Targeted actions are the actions NOT in this list. The <code>actions</code> and <code>notResources</code> fields must be empty to use this field.
          items:
            $ref: '#/components/schemas/ActionSpecifier'
        effect:
          type: string
          description: Whether this statement should allow or deny actions on the resources.
          example: allow
          enum:
          - allow
          - deny
    StatementPostList:
      type: array
      items:
        $ref: '#/components/schemas/StatementPost'
    Access:
      type: object
      required:
      - denied
      - allowed
      properties:
        denied:
          type: array
          items:
            $ref: '#/components/schemas/AccessDenied'
        allowed:
          type: array
          items:
            $ref: '#/components/schemas/AccessAllowedRep'
    NotFoundErrorRep:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: Specific error code encountered
          example: not_found
        message:
          type: string
          description: Description of the error
          example: Invalid resource identifier
    AccessAllowedReason:
      type: object
      required:
      - effect
      properties:
        resources:
          type: array
          description: Resource specifier strings
          items:
            type: string
          example:
          - proj/*:env/*;qa_*:/flag/*
        notResources:
          type: array
          description: Targeted resources are the resources NOT in this list. The <code>resources</code> and <code>notActions</code> fields must be empty to use this field.
          items:
            type: string
        actions:
          type: array
          description: Actions to perform on a resource
          items:
            $ref: '#/components/schemas/ActionSpecifier'
          example:
          - '*'
        notActions:
          type: array
          description: Targeted actions are the actions NOT in this list. The <code>actions</code> and <code>notResources</code> fields must be empty to use this field.
          items:
            $ref: '#/components/schemas/ActionSpecifier'
        effect:
          type: string
          description: Whether this statement should allow or deny actions on the resources.
          example: allow
          enum:
          - allow
          - deny
        role_name:
          type: string
    AccessAllowedRep:
      type: object
      required:
      - action
      - reason
      properties:
        action:
          $ref: '#/components/schemas/ActionIdentifier'
        reason:
          $ref: '#/components/schemas/AccessAllowedReason'
    Webhook:
      type: object
      required:
      - _links
      - _id
      - url
      - 'on'
      - tags
      properties:
        _links:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Link'
          description: The location and content type of related resources
        _id:
          type: string
          description: The ID of this webhook
          example: 57be1db38b75bf0772d11384
        name:
          type: string
          description: A human-readable name for this webhook
          example: Example hook
        url:
          type: string
          description: The URL to which LaunchDarkly sends an HTTP POST payload for this webhook
          example: http://www.example.com
        secret:
          type: string
          description: The secret for this webhook
          example: frobozz
        statements:
          type: array
          description: Represents a Custom role policy, defining a resource kinds filter the webhook responds to.
          items:
            $ref: '#/components/schemas/Statement'
        'on':
          type: boolean
          description: Whether or not this webhook is enabled
          example: true
        tags:
          type: array
          description: List of tags for this webhook
          items:
            type: string
          example:
          - examples
        _access:
          description: Details on the allowed and denied actions for this webhook
          $ref: '#/components/schemas/Access'
    Webhooks_2:
      type: object
      description: A collection of webhooks.
      properties:
        items:
          type: array
          description: The list of webhooks.
          items:
            $ref: '#/components/schemas/Webhook_2'
        _links:
          $ref: '#/components/schemas/Links'
    WebhookBody:
      type: object
      description: The request body for creating a new webhook.
      required:
      - url
      - 'on'
      properties:
        url:
          type: string
          format: uri
          description: The URL to receive webhook POST requests.
        secret:
          type: string
          description: A shared secret for signing webhook payloads.
        'on':
          type: boolean
          description: Whether the webhook should be enabled.
        name:
          type: string
          description: A human-readable name for the webhook.
        tags:
          type: array
          description: Tags to apply to the webhook.
          items:
            type: string
        statements:
          type: array
          description: Policy statements filtering which events trigger this webhook.
          items:
            $ref: '#/components/schemas/Statement_2'
    Links:
      type: object
      description: HATEOAS links for navigating related resources.
      properties:
        self:
          type: object
          description: A link to this resource.
          properties:
            href:
              type: string
              description: The URL of this resource.
            type:
              type: string
              description: The media type.
      additionalProperties:
        type: object
        properties:
          href:
            type: string
            description: The URL of the linked resource.
          type:
            type: string
            description: The media type.
    Webhook_2:
      type: object
      description: A webhook configuration for receiving change notifications.
      properties:
        _id:
          type: string
          description: The unique identifier of this webhook.
        url:
          type: string
          format: uri
          description: The URL to receive webhook POST requests.
        secret:
          type: string
          description: The shared secret used to sign webhook payloads.
        'on':
          type: boolean
          description: Whether this webhook is currently enabled.
        name:
          type: string
          description: The human-readable name of this webhook.
        tags:
          type: array
          description: Tags applied to this webhook.
          items:
            type: string
        statements:
          type: array
          description: Policy statements filtering which events trigger this webhook.
          items:
            $ref: '#/components/schemas/Statement_2'
        _links:
          $ref: '#/components/schemas/Links'
    PatchOperation_2:
      type: object
      description: A JSON Patch or semantic patch request.
      properties:
        patch:
          type: array
          description: An array of JSON Patch operations.
          items:
            type: object
            required:
            - op
            - path
            properties:
              op:
                type: string
                description: The patch operation type.
                enum:
                - add
                - remove
                - replace
                - move
                - copy
                - test
              path:
                type: string
                description: The JSON Pointer path to the target field.
              value:
                description: The value to apply for add or replace operations.
        comment:
          type: string
          description: An optional comment describing the change.
    Statement_2:
      type: object
      description: A policy statement controlling resource access or event filtering.
      properties:
        effect:
          type: string
          description: Whether this statement allows or denies the action.
          enum:
          - allow
          - deny
        resources:
          type: array
          description: Resource specifiers this statement applies to.
          items:
            type: string
        notResources:
          type: array
          description: Resource specifiers this statement does not apply to.
          items:
            type: string
        actions:
          type: array
          description: The actions this statement applies to.
          items:
            type: string
        notActions:
          type: array
          description: The actions this statement does not apply to.
          items:
            type: string
  parameters:
    WebhookId:
      name: webhookId
      in: path
      required: true
      description: The unique identifier of a webhook.
      schema:
        type: string
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: Authorization
    bearerAuth:
      type: http
      scheme: bearer
      description: LaunchDarkly API access token. Create personal or service tokens in the LaunchDarkly dashboard under Account Settings.
externalDocs:
  description: LaunchDarkly API Documentation
  url: https://apidocs.launchdarkly.com/
x-refined-from:
- launchdarkly-openapi.json
- launchdarkly-rest-api-openapi.yml