> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clicker.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Register Webhook

> Register a new endpoint to receive webhook events containing feed items. This endpoint will respond with:

      - a UID which identifies the webhook so that you can modify or delete it later
      - a secret which you must use to verify requests that your endpoint receives. For more about how webhook signature verification works, see https://docs.daylight.xyz/reference/verifying-webhooks

      Make sure to save both of these values, the secret will only be returned after creating a webhook.
      
      If you need to register more than 1000 addresses as subscribers to your webhook, please create the webhook using this endpoint, and then use the PUT /v1/webhooks/feed/:uid endpoint to provide the addresses in chunks of 1000.



## OpenAPI

````yaml POST /v1/webhooks/feed
openapi: 3.0.0
info:
  version: 1.0.0
  title: Daylight.xyz API
  description: >-
    Welcome to the Daylight API! API endpoints require a Daylight partner API
    key passed in the HTTP Authorization header.
servers:
  - url: https://api.clicker.xyz
security:
  - {}
  - bearerAuth: []
paths:
  /v1/webhooks/feed:
    post:
      tags:
        - Social - Feed, Profiles and Discovery
      summary: Regsiter a Feed Webhook
      description: >-
        Register a new endpoint to receive webhook events containing feed items.
        This endpoint will respond with:

              - a UID which identifies the webhook so that you can modify or delete it later
              - a secret which you must use to verify requests that your endpoint receives. For more about how webhook signature verification works, see https://docs.daylight.xyz/reference/verifying-webhooks

              Make sure to save both of these values, the secret will only be returned after creating a webhook.
              
              If you need to register more than 1000 addresses as subscribers to your webhook, please create the webhook using this endpoint, and then use the PUT /v1/webhooks/feed/:uid endpoint to provide the addresses in chunks of 1000.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                walletAddresses:
                  type: array
                  items:
                    anyOf:
                      - type: string
                        default: '0xa4e221aa5a7ba51b5d5c7d5c923bfb9bcebcb252'
                        description: The address / public key.
                      - type: string
                        pattern: ^ext:.+
                  description: A list of wallet addresses or ext:<id> external identifiers.
                destinationUrl:
                  type: string
                  pattern: >-
                    https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)
              required:
                - walletAddresses
                - destinationUrl
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2WebhookResponse'
        '400':
          description: >-
            The request payload or query string parameter you passed was not
            valid
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
components:
  schemas:
    V2WebhookResponse:
      type: object
      properties:
        destinationUrl:
          type: string
          pattern: >-
            https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)
        uid:
          type: string
        secret:
          type: string
          description: >-
            Be sure to save this value, as it’s only returned after creating a
            webhook!
      required:
        - destinationUrl
        - uid
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````