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

# List webhook events

> Returns every resource type a webhook subscription can target, and the granular event names for each. The list is static and not filtered by organization. Authenticate with `Authorization: ApiKey <token>`. Use `events[].name` as the event name when creating a subscription. `groupKey` is null except for REPLACEMENT, where it is `replacementStatus`, `shipmentStatus`, or `returns`.



## OpenAPI

````yaml /openapi.json get /api/v1/webhooks/event-catalog
openapi: 3.1.0
info:
  title: Firstbase API Specification
  description: Integration endpoints for Firstbase
  version: 0.1.0
servers:
  - url: https://apipub.firstbasehq.com
    description: Production
security:
  - ApiKey: []
tags:
  - name: Catalog
    description: Browse SKUs, brands, and categories
  - name: Inventory
    description: Query and manage inventory items and assets
  - name: Inventory Levels
    description: Configure inventory levels by SKU and warehouse
  - name: Inventory Orders
    description: Create and manage inventory orders
  - name: ITAD
    description: IT asset disposition requests
  - name: New Joiners
    description: Track and remind new joiners
  - name: Offices
    description: Manage office locations
  - name: Orders
    description: Create and track equipment orders
  - name: Packages
    description: Manage equipment packages
  - name: People
    description: Provision and manage users
  - name: Regions
    description: Query regions
  - name: Replacements
    description: Create and manage equipment replacements
  - name: Returns
    description: Create and manage returns
  - name: Shipment
    description: Look up shipments and carriers
  - name: Shipment Notices
    description: Create and manage shipment notices
  - name: Warehouses
    description: Query warehouses
  - name: Webhooks
    description: Webhooks
paths:
  /api/v1/webhooks/event-catalog:
    get:
      tags:
        - Webhooks
      summary: List webhook events
      description: >-
        Returns every resource type a webhook subscription can target, and the
        granular event names for each. The list is static and not filtered by
        organization. Authenticate with `Authorization: ApiKey <token>`. Use
        `events[].name` as the event name when creating a subscription.
        `groupKey` is null except for REPLACEMENT, where it is
        `replacementStatus`, `shipmentStatus`, or `returns`.
      operationId: getWebhookEventCatalogV1
      responses:
        '200':
          description: Webhook event catalog, in display order
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebhookCatalogResource'
              examples:
                catalog:
                  summary: Abbreviated catalog
                  description: >-
                    The live response includes every resource and every event.
                    This example shows the shape, including a null groupKey and
                    the three replacement groups.
                  value:
                    - resourceType: ORDER
                      events:
                        - name: order.created
                          groupKey: null
                        - name: order.shipped
                          groupKey: null
                    - resourceType: RETURN_ORDER
                      events:
                        - name: return.submitted
                          groupKey: null
                    - resourceType: INVENTORY_ORDER
                      events:
                        - name: inventory_order.created
                          groupKey: null
                    - resourceType: REPLACEMENT
                      events:
                        - name: replacement.submitted
                          groupKey: replacementStatus
                        - name: order.shipped
                          groupKey: shipmentStatus
                        - name: return.confirmed
                          groupKey: returns
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PublicApiHttpErrors'
        '403':
          description: >-
            Missing or invalid API key. Send header `Authorization: ApiKey
            <token>`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiHttpErrors'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PublicApiHttpErrors'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PublicApiHttpErrors'
      x-codeSamples:
        - lang: curl
          label: cURL
          source: >-
            curl -sS -X GET
            'https://apipub.firstbasehq.com/api/v1/webhooks/event-catalog' \
              -H 'Authorization: ApiKey YOUR_API_KEY' \
              -H 'Accept: application/json'
components:
  schemas:
    WebhookCatalogResource:
      type: object
      description: >-
        A webhook resource type and the granular events that can be subscribed
        for it.
      properties:
        resourceType:
          type: string
          description: Resource type a webhook subscription can target.
          enum:
            - ORDER
            - RETURN_ORDER
            - INVENTORY_ORDER
            - REPLACEMENT
          example: ORDER
        events:
          type: array
          description: Granular events for this resource type, in display order.
          items:
            $ref: '#/components/schemas/WebhookCatalogEvent'
      required:
        - events
        - resourceType
    PublicApiHttpErrors:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/PublicApiError'
          description: List of error details.
      required:
        - errors
    WebhookCatalogEvent:
      type: object
      description: >-
        A granular webhook event. groupKey is set only for replacement event
        groups.
      properties:
        name:
          type: string
          description: >-
            Event name written to the webhook payload as metadata.eventName.
            Pass this value when selecting events on a subscription.
          example: order.shipped
        groupKey:
          type:
            - string
            - 'null'
          description: >-
            Replacement event group. Null for ORDER, RETURN_ORDER, and
            INVENTORY_ORDER.
          enum:
            - replacementStatus
            - shipmentStatus
            - returns
          example: replacementStatus
      required:
        - name
    PublicApiError:
      type: object
      properties:
        detail:
          type: string
          description: Human-readable description of the error
          example: Invalid request
        source:
          type: string
          description: >-
            Entity or field path that caused the error (for example order,
            shipmentNotice, or person:email)
          example: request
      required:
        - detail
        - source
  securitySchemes:
    ApiKey:
      type: apiKey
      description: Prefix the value with "ApiKey" to indicate the custom authorization type
      name: Authorization
      in: header

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.