Clerk Webhooks

Clerk Webhooks deliver real-time events for users, sessions, organizations, invitations, email, SMS, and SAML changes via Svix, allowing applications to react asynchronously to identity lifecycle events.

OpenAPI Specification

clerk-webhooks-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Clerk Webhook Events
  x-logo:
    url: https://clerk.com/_next/image?url=%2Fimages%2Fclerk-logo.svg&w=96&q=75
    altText: Clerk docs
    href: https://clerk.com/docs
  contact:
    email: [email protected]
    name: Clerk Platform Team
    url: https://clerk.com/support
  description: 'Clerk''s webhooks allow you to receive real-time notifications about events that happen in your Clerk account. You can use webhooks to trigger actions in your application based on these events.


    For example, you can use webhooks to update your database when a user signs up or to send a notification when a user updates their profile.


    Webhooks are sent as HTTP POST requests to a URL that you specify. The request body contains a JSON payload with information about the event.


    To learn more about webhooks, see [Webhooks](https://clerk.dev/docs/webhooks).'
  version: v1
  termsOfService: https://clerk.com/terms
  license:
    name: MIT
    url: https://github.com/clerkinc/clerk-sdk-go/blob/main/LICENSE
servers:
- url: https://api.clerk.dev/v1
externalDocs:
  url: https://clerk.dev/docs
x-webhooks:
  email.created:
    post:
      description: Email created
      operationId: email.created
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/EmailEventPayload'
              required:
              - data
            example:
              event_attributes:
                http_request:
                  client_ip: 0.0.0.0
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: email.created
              instance_id: ins_123
              timestamp: 1716883200
              data:
                body: "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\n    <head>\n        <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n        <title>123456 is your Acme verification code</title>\n        <style type=\"text/css\">\n            #outlook a {\n                padding: 0\n            }\n\n            .ExternalClass {\n                width: 100%\n            }\n\n            .ExternalClass,\n            .ExternalClass p,\n            .ExternalClass span,\n            .ExternalClass font,\n            .ExternalClass td,\n            .ExternalClass div {\n                line-height: 100%\n            }\n\n            body,\n            table,\n            td,\n            a {\n                -webkit-text-size-adjust: 100%;\n                -ms-text-size-adjust:\
                  \ 100%\n            }\n\n            table,\n            td {\n                mso-table-lspace: 0;\n                mso-table-rspace: 0\n            }\n\n            img {\n                -ms-interpolation-mode: bicubic\n            }\n\n            img {\n                border: 0;\n                outline: none;\n                text-decoration: none\n            }\n\n            a img {\n                border: none\n            }\n\n            td img {\n                vertical-align: top\n            }\n\n            table,\n            table td {\n                border-collapse: collapse\n            }\n\n            body {\n                margin: 0;\n                padding: 0;\n                width: 100% !important\n            }\n\n            .mobile-spacer {\n                width: 0;\n                display: none\n            }\n\n            @media all and (max-width:639px) {\n                .container {\n                    width: 100% !important;\n\
                  \                    max-width: 600px !important\n                }\n\n                .mobile {\n                    width: auto !important;\n                    max-width: 100% !important;\n                    display: block !important\n                }\n\n                .mobile-center {\n                    text-align: center !important\n                }\n\n                .mobile-right {\n                    text-align: right !important\n                }\n\n                .mobile-left {\n                    text-align: left !important;\n                }\n\n                .mobile-hidden {\n                    max-height: 0;\n                    display: none !important;\n                    mso-hide: all;\n                    overflow: hidden\n                }\n\n                .mobile-spacer {\n                    width: auto !important;\n                    display: table !important\n                }\n\n                .mobile-image,\n                .mobile-image\
                  \ img {\n                    height: auto !important;\n                    max-width: 600px !important;\n                    width: 100% !important\n                }\n            }\n        </style>\n        <!--[if mso]><style type=\"text/css\">body, table, td, a { font-family: Arial, Helvetica, sans-serif !important; }</style><![endif]-->\n    </head>\n\n    <body style=\"font-family: Helvetica, Arial, sans-serif; margin: 0px; padding: 0px; background-color: #ffffff;\">\n        <span style=\"color: transparent; display: none; height: 0px; max-height: 0px; max-width: 0px; opacity: 0; overflow: hidden; visibility: hidden; width: 0px;\">Your Acme verification code</span>\n        <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"100%\" class=\"body\" style=\"width: 100%;\">\n            <tbody>\n                <tr>\n                    <td align=\"center\" valign=\"top\" style=\"vertical-align: top; line-height: 1; padding: 48px 32px;\">\n              \
                  \          <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"600\" class=\"header container\" style=\"width: 600px;\">\n                            <tbody>\n                                <tr>\n                                    <td align=\"left\" valign=\"top\" style=\"vertical-align: top; line-height: 1; padding: 16px 32px;\">\n                                        <p style=\"padding: 0px; margin: 0px; font-family: Helvetica, Arial, sans-serif; color: #000000; font-size: 24px; line-height: 36px;\">\n                                            Acme\n                                        </p>\n                                    </td>\n                                </tr>\n                            </tbody>\n                        </table>\n                        <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"600\" class=\"main container\" style=\"width: 600px; border-collapse: separate;\">\n                            <tbody>\n\
                  \                                <tr>\n                                    <td align=\"left\" valign=\"top\" bgcolor=\"#fff\" style=\"vertical-align: top; line-height: 1; background-color: #ffffff; border-radius: 0px;\">\n                                        <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"100%\" class=\"block\" style=\"width: 100%; border-collapse: separate;\">\n                                            <tbody>\n                                                <tr>\n                                                    <td align=\"left\" valign=\"top\" bgcolor=\"#ffffff\" style=\"vertical-align: top; line-height: 1; padding: 32px 32px 48px; background-color: #ffffff; border-radius: 0px;\">\n                                                        <h1 class=\"h1\" align=\"left\" style=\"padding: 0px; margin: 0px; font-style: normal; font-family: Helvetica, Arial, sans-serif; font-size: 32px; line-height: 39px; color: #000000; font-weight:\
                  \ bold;\"> Verification code </h1>\n                                                        <p align=\"left\" style=\"padding: 0px; margin: 32px 0px 0px; font-family: Helvetica, Arial, sans-serif; color: #000000; font-size: 14px; line-height: 21px;\"> Enter the following verification code when prompted: </p>\n                                                        <p style=\"padding: 0px; margin: 16px 0px 0px; font-family: Helvetica, Arial, sans-serif; color: #000000; font-size: 40px; line-height: 60px;\">\n                                                            <b>123456</b>\n                                                        </p>\n                                                        <p style=\"padding: 0px; margin: 16px 0px 0px; font-family: Helvetica, Arial, sans-serif; color: #000000; font-size: 14px; line-height: 21px;\"> To protect your account, do not share this code. </p>\n                                                        <p style=\"padding: 0px;\
                  \ margin: 64px 0px 0px; font-family: Helvetica, Arial, sans-serif; color: #000000; font-size: 14px; line-height: 21px;\">\n                                                            <b>Didn't request this?</b>\n                                                        </p>\n                                                        <p style=\"padding: 0px; margin: 4px 0px 0px; font-family: Helvetica, Arial, sans-serif; color: #000000; font-size: 14px; line-height: 21px;\"> This code was requested using <b>Chrome, OS X</b> at <b>30 August 2022, 12:14 UTC</b>. If you didn't make this request, you can safely ignore this email. </p>\n                                                    </td>\n                                                </tr>\n                                            </tbody>\n                                        </table>\n                                    </td>\n                                </tr>\n                            </tbody>\n           \
                  \             </table>\n                    </td>\n                </tr>\n            </tbody>\n        </table>\n    </body>\n\n</html>"
                body_plain: '123456 is your OTP code for Acme.


                  Do not share this with anyone.


                  It was requested at 30 August 2022, 12:14 UTC. If you did not request this, please ignore this email.

                  '
                data:
                  app:
                    domain_name: uncommon.dolphin-15.lcl.dev
                    logo_image_url: https://img.clerk.com/xxxxxx
                    logo_url: null
                    name: Acme
                    url: https://accounts.uncommon.dolphin-15.lcl.dev
                  otp_code: '123456'
                  requested_at: 30 August 2022, 12:14 UTC
                  requested_by: Chrome, OS X
                  theme:
                    button_text_color: '#ffffff'
                    primary_color: '#335bf1'
                    show_clerk_branding: true
                  user:
                    public_metadata: {}
                    public_metadata_fallback: ''
                delivered_by_clerk: true
                email_address_id: idn_abcd
                from_email_name: notifications
                id: ema_abcd
                object: email
                slug: verification_code
                status: queued
                subject: 123456 is your verification code
                to_email_address: [email protected]
                user_id: user_abcd
  organization.created:
    post:
      description: New organization was created
      operationId: organization.created
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/Organization'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organization.created
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization
                id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                name: Acme Corp
                slug: acme-corp
                image_url: https://img.clerk.com/xxxxxx
                has_image: true
                members_count: 1
                missing_member_with_elevated_permissions: false
                pending_invitations_count: 0
                max_allowed_memberships: 5
                admin_delete_enabled: true
                public_metadata: {}
                private_metadata: {}
                created_by: user_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                created_at: 1716883200000
                updated_at: 1716883200000
  organization.updated:
    post:
      description: Organization updated
      operationId: organization.updated
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/Organization'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organization.updated
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization
                id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                name: Acme Corp Updated
                slug: acme-corp-updated
                image_url: https://img.clerk.com/yyyyyy
                has_image: true
                members_count: 3
                missing_member_with_elevated_permissions: false
                pending_invitations_count: 1
                max_allowed_memberships: 10
                admin_delete_enabled: true
                public_metadata:
                  department: engineering
                private_metadata:
                  internal_id: ORG-123
                created_by: user_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                created_at: 1716883200000
                updated_at: 1716883500000
  organization.deleted:
    post:
      description: Organization deleted
      operationId: organization.deleted
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/DeletedObject'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organization.deleted
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization
                id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                slug: acme-corp
                deleted: true
  organizationDomain.created:
    post:
      description: Organization domain created
      operationId: organizationDomain.created
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/OrganizationDomain'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationDomain.created
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_domain
                id: orgdmn_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                organization_id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                name: acme.com
                enrollment_mode: automatic_invitation
                affiliation_email_address: [email protected]
                verification: null
                total_pending_invitations: 0
                total_pending_suggestions: 2
                public_organization_data:
                  id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                  name: Acme Corp
                  slug: acme-corp
                  image_url: https://img.clerk.com/proxy/example-url
                  has_image: false
                created_at: 1716883200000
                updated_at: 1716883200000
  organizationDomain.updated:
    post:
      description: Organization domain updated
      operationId: organizationDomain.updated
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/OrganizationDomain'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationDomain.updated
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_domain
                id: orgdm_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                organization_id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                name: acme.com
                enrollment_mode: automatic_suggestion
                affiliation_email_address: [email protected]
                verification:
                  status: verified
                  strategy: email_code
                  attempts: 1
                  expire_at: null
                total_pending_invitations: 2
                total_pending_suggestions: 5
                created_at: 1716883200000
                updated_at: 1716883500000
  organizationDomain.deleted:
    post:
      description: Organization domain deleted
      operationId: organizationDomain.deleted
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/DeletedObject'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationDomain.deleted
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_domain
                id: orgdm_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                deleted: true
  organizationInvitation.created:
    post:
      description: Organization invitation created
      operationId: organizationInvitation.created
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    allOf:
                    - $ref: '#/components/schemas/OrganizationInvitation'
                    - properties:
                        data:
                          type: object
                          properties:
                            public_organization_data:
                              nullable: true
                              $ref: '#/components/schemas/OrganizationInvitationPublicOrganizationData'
              required:
              - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationInvitation.created
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_invitation
                id: orginv_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                email_address: [email protected]
                role: org:member
                role_name: Member
                organization_id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                status: pending
                public_metadata: {}
                private_metadata: {}
                url: https://accounts.acme.com/accept-invitation?token=abc123
                expires_at: 1717487999000
                created_at: 1716883200000
                updated_at: 1716883200000
  organizationInvitation.accepted:
    post:
      description: Organization invitation accepted
      operationId: organizationInvitation.accepted
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/OrganizationInvitationAcceptedPayload'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationInvitation.accepted
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_invitation
                id: orginv_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                email_address: [email protected]
                role: org:member
                role_name: Member
                organization_id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                status: accepted
                public_metadata: {}
                private_metadata: {}
                url: https://accounts.acme.com/accept-invitation?token=abc123
                user_id: user_2h8op3Isl1QR7tKu5FGNfaLKEoU
                expires_at: 1717487999000
                created_at: 1716883200000
                updated_at: 1716883500000
  organizationInvitation.revoked:
    post:
      description: Organization invitation revoked
      operationId: organizationInvitation.revoked
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    allOf:
                    - $ref: '#/components/schemas/OrganizationInvitation'
                    - properties:
                        data:
                          type: object
                          properties:
                            public_organization_data:
                              nullable: true
                              $ref: '#/components/schemas/OrganizationInvitationPublicOrganizationData'
              required:
              - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationInvitation.revoked
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_invitation
                id: orginv_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                email_address: [email protected]
                role: org:member
                role_name: Member
                organization_id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                status: revoked
                public_metadata: {}
                private_metadata: {}
                url: https://accounts.acme.com/accept-invitation?token=abc123
                expires_at: 1717487999000
                created_at: 1716883200000
                updated_at: 1716883500000
  organizationMembership.created:
    post:
      description: Organization membership created
      operationId: organizationMembership.created
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/OrganizationMembership'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationMembership.created
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_membership
                id: orgmem_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                role: org:member
                role_name: Member
                permissions:
                - org:posts:read
                - org:posts:write
                public_metadata: {}
                private_metadata: {}
                organization:
                  object: organization
                  id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                  name: Acme Corp
                  slug: acme-corp
                  image_url: https://img.clerk.com/xxxxxx
                  has_image: true
                  members_count: 2
                  missing_member_with_elevated_permissions: false
                  pending_invitations_count: 0
                  max_allowed_memberships: 5
                  admin_delete_enabled: true
                  public_metadata: {}
                  private_metadata: {}
                  created_by: user_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                  created_at: 1716883200000
                  updated_at: 1716883200000
                public_user_data:
                  user_id: user_2h8op3Isl1QR7tKu5FGNfaLKEoU
                  first_name: Jane
                  last_name: Doe
                  profile_image_url: https://img.clerk.com/yyyyy
                  image_url: https://img.clerk.com/yyyyy
                  has_image: true
                  identifier: [email protected]
                created_at: 1716883200000
                updated_at: 1716883200000
  organizationMembership.updated:
    post:
      description: Organization membership updated
      operationId: organizationMembership.updated
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/OrganizationMembership'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationMembership.updated
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_membership
                id: orgmem_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                role: org:admin
                role_name: Admin
                permissions:
                - org:posts:read
                - org:posts:write
                - org:posts:delete
                - org:members:manage
                public_metadata: {}
                private_metadata: {}
                organization:
                  object: organization
                  id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                  name: Acme Corp
                  slug: acme-corp
                  image_url: https://img.clerk.com/xxxxxx
                  has_image: true
                  members_count: 2
                  missing_member_with_elevated_permissions: false
                  pending_invitations_count: 0
                  max_allowed_memberships: 5
                  admin_delete_enabled: true
                  public_metadata: {}
                  private_metadata: {}
                  created_by: user_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                  created_at: 1716883200000
                  updated_at: 1716883500000
                public_user_data:
                  user_id: user_2h8op3Isl1QR7tKu5FGNfaLKEoU
                  first_name: Jane
                  last_name: Doe
                  profile_image_url: https://img.clerk.com/yyyyy
                  image_url: https://img.clerk.com/yyyyy
                  has_image: true
                  identifier: [email protected]
                created_at: 1716883200000
                updated_at: 1716883500000
  organizationMembership.deleted:
    post:
      description: Organization membership deleted
      operationId: organizationMembership.deleted
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookEventPayload'
              - properties:
                  data:
                    $ref: '#/components/schemas/OrganizationMembership'
                required:
                - data
            example:
              event_attributes:
                http_request:
                  client_ip: 192.168.1.100
                  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
              object: event
              type: organizationMembership.deleted
              instance_id: ins_2g7np7Hrk0SN6kj5EDMLDaKNL0S
              timestamp: 1716883200
              data:
                object: organization_membership
                id: orgmem_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                role: org:member
                role_name: Member
                permissions:
                - org:posts:read
                - org:posts:write
                public_metadata: {}
                private_metadata: {}
                organization:
                  object: organization
                  id: org_2g7np7Hrk0SN6kj5EDMLDaKNL0S
                  name: Acme Corp
                  slug: acme-corp
                  image_url: https://img.clerk.com/xxxxxx
                  has_image: true
                  members_count: 1
                  missing_member_with_elevated_permissions: false
                  pending_invitations_count: 0
                  max_allowed_memberships: 5
                  admin_delete_enabled: true
                  public_metadata: {}
                  private_metadata: {}
                  created_by: user_2g7np7Hrk0SN6kj5EDMLDaKNL0S
   

# --- truncated at 32 KB (178 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/clerk-com/refs/heads/main/openapi/clerk-webhooks-openapi.yml