# GET List webhook event types

Lists every event topic available for subscription, a static example of the payload currently delivered for that topic, and the existing signing verification guide. Requires `webhooks:read`. The catalogue is one complete page, performs no Store-data reads, and accepts no query parameters. Topic values are expected to grow; clients must tolerate unknown future values. `product:created` and `order:created` emit only for Stores with custom API access; catalogue visibility and successful subscription registration do not establish delivery eligibility. Contact Sign Customiser support to confirm access if those events do not arrive.

- Source URL: https://www.signcustomiser.com/help/api/v3-get-list-webhook-event-types/
- Markdown URL: https://www.signcustomiser.com/help/api/v3-get-list-webhook-event-types.md
- Group: Webhook subscriptions
- Method: GET
- Path: /api/v3/webhook-event-types
- Auth: Bearer token
- Required scopes: `webhooks:read`

## cURL example

```bash
curl https://web.signcustomiser.com/api/v3/webhook-event-types \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_TOKEN'
```

## Response examples

### 200 GET 200 example 1

```json
{
  "data": [
    {
      "object": "webhook_event_type",
      "topic": "product:created",
      "description": "Sent after Sign Customiser creates a customer-designed product.",
      "example_payload": {
        "product": {
          "product_image_url": "https://d1no4rdxmwcuog.cloudfront.net/default/app-images/demonstration_image_1.jpg",
          "product_id": 1,
          "title": "Custom Neon: Hello World",
          "description": "Text: Hello World\nColour: Red\nFont: Comics",
          "description_html": "<p>Text: Hello World</p>\n<p>Colour: Red</p>\n<p>Font: Comics</p>",
          "external_id": "1234",
          "external_data": [],
          "price": 10000,
          "compare_price": 15000,
          "customiser_id": 1,
          "customiser_language_id": 1,
          "customiser_language_code": "en",
          "customiser_default_language_code": "en",
          "customiser_languages_version": "example-version",
          "customiser_language_hash": "example-hash",
          "customer_display_snapshot": {
            "line_items": {
              "Text": "Hello World"
            },
            "fields": {
              "text": {
                "label": "Text",
                "value": "Hello World"
              }
            }
          },
          "logo_upload_id": null,
          "uploads": [
            {
              "url": "https://d1no4rdxmwcuog.cloudfront.net/default/app-images/demonstration_image_1.jpg",
              "path": "app-images/demonstration_image_1.jpg",
              "type": "product_image"
            }
          ],
          "logo_upload": null,
          "width_cm": 10,
          "height_cm": 10,
          "length_cm": 10,
          "border_margin_cm": null,
          "mounting_letter_part": null,
          "created_at": "2024-01-01T00:00:00+00:00",
          "updated_at": "2024-01-01T00:00:00+00:00",
          "letter_heights_cm": null
        }
      },
      "links": {
        "signature_verification": "https://www.signcustomiser.com/help/integrations/subscribe-to-webhooks/"
      }
    },
    {
      "object": "webhook_event_type",
      "topic": "order:created",
      "description": "Sent after Sign Customiser records an order containing customised products.",
      "example_payload": {
        "order": {
          "order_id": 1,
          "order_number": 4,
          "external_order_number": "SIGN-12345",
          "external_id": "12345",
          "order_total": 120000,
          "app_total": 100000,
          "currency": "USD",
          "shipping_line": "ground",
          "billing_address": {
            "first_name": "John",
            "last_name": "Doe",
            "company": "Acme",
            "address_1": "123 Fake Street",
            "address_2": "Unit 456",
            "city": "Brisbane",
            "state": "Queensland",
            "postcode": "4000",
            "country": "Australia",
            "phone": "123456789",
            "email": "john@example.com",
            "created_at": "2024-01-01T00:00:00+00:00",
            "updated_at": "2024-01-01T00:00:00+00:00"
          },
          "shipping_address": {
            "first_name": "John",
            "last_name": "Doe",
            "company": "Acme",
            "address_1": "123 Fake Street",
            "address_2": "Unit 456",
            "city": "Brisbane",
            "state": "Queensland",
            "postcode": "4000",
            "country": "Australia",
            "phone": "123456789",
            "email": "john@example.com",
            "created_at": "2024-01-01T00:00:00+00:00",
            "updated_at": "2024-01-01T00:00:00+00:00"
          },
          "customer": {
            "first_name": "John",
            "last_name": "Doe",
            "phone": "123456789",
            "email": "john@example.com",
            "external_id": "1234",
            "created_at": "2024-01-01T00:00:00+00:00",
            "updated_at": "2024-01-01T00:00:00+00:00"
          },
          "products": [
            {
              "product_image_url": "https://d1no4rdxmwcuog.cloudfront.net/default/app-images/demonstration_image_1.jpg",
              "product_id": 1,
              "title": "Custom Neon: Hello World",
              "description": "Text: Hello World\nColour: Red\nFont: Comics",
              "description_html": "<p>Text: Hello World</p>\n<p>Colour: Red</p>\n<p>Font: Comics</p>",
              "external_id": "1234",
              "external_data": [],
              "price": 10000,
              "compare_price": 15000,
              "customiser_id": 1,
              "customiser_language_id": 1,
              "customiser_language_code": "en",
              "customiser_default_language_code": "en",
              "customiser_languages_version": "example-version",
              "customiser_language_hash": "example-hash",
              "customer_display_snapshot": {
                "line_items": {
                  "Text": "Hello World"
                },
                "fields": {
                  "text": {
                    "label": "Text",
                    "value": "Hello World"
                  }
                }
              },
              "logo_upload_id": null,
              "uploads": [
                {
                  "url": "https://d1no4rdxmwcuog.cloudfront.net/default/app-images/demonstration_image_1.jpg",
                  "path": "app-images/demonstration_image_1.jpg",
                  "type": "product_image"
                }
              ],
              "logo_upload": null,
              "width_cm": 10,
              "height_cm": 10,
              "length_cm": 10,
              "border_margin_cm": null,
              "mounting_letter_part": null,
              "created_at": "2024-01-01T00:00:00+00:00",
              "updated_at": "2024-01-01T00:00:00+00:00",
              "letter_heights_cm": null
            }
          ],
          "legacy_products": [],
          "created_at": "2024-01-01T00:00:00+00:00",
          "updated_at": "2024-01-01T00:00:00+00:00"
        }
      },
      "links": {
        "signature_verification": "https://www.signcustomiser.com/help/integrations/subscribe-to-webhooks/"
      }
    },
    {
      "object": "webhook_event_type",
      "topic": "form:submitted",
      "description": "Sent after a customer submits a Sign Customiser form.",
      "example_payload": {
        "form_submission": {
          "submission_number": 1234,
          "type": "custom_form_submission",
          "form": {
            "form_id": 1,
            "customiser_id": 1,
            "label": "Custom Design Form",
            "description": "Lorem ipsum dolor",
            "email": "test@test.com",
            "subject": "My Custom Email Subject",
            "created_at": "2024-01-01T00:00:00+00:00",
            "updated_at": "2024-01-01T00:00:00+00:00"
          },
          "responses": [
            {
              "field_id": "abcd1234",
              "value": "test@test.com",
              "name": "Your Email",
              "input_type": "EMAIL"
            }
          ],
          "created_at": "2024-01-01T00:00:00+00:00",
          "ad_click_ids": {
            "gclid": "CjwKCAjw7p6aBhAoBhAAEiwA..."
          },
          "utm_params": {
            "utm_source": "google",
            "utm_medium": "cpc",
            "utm_campaign": "spring_sale"
          }
        }
      },
      "links": {
        "signature_verification": "https://www.signcustomiser.com/help/integrations/subscribe-to-webhooks/"
      }
    }
  ],
  "pagination": {
    "has_more": false,
    "next_cursor": null
  },
  "links": {
    "self": "https://web.signcustomiser.com/api/v3/webhook-event-types",
    "documentation": "https://www.signcustomiser.com/help/api/",
    "next": null
  },
  "meta": {
    "api_version": "v3",
    "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
  }
}
```

### 401 Missing API key

```json
{
  "type": "https://www.signcustomiser.com/help/api/problems/missing_api_key",
  "title": "Missing API key",
  "status": 401,
  "code": "missing_api_key",
  "detail": "Provide a store API key as a bearer token.",
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
```

### 403 Insufficient scope

```json
{
  "type": "https://www.signcustomiser.com/help/api/problems/insufficient_scope",
  "title": "Insufficient scope",
  "status": 403,
  "code": "insufficient_scope",
  "detail": "This operation requires the webhooks:read scope.",
  "required_scopes": [
    "webhooks:read"
  ],
  "granted_scopes": [
    "webhooks:write"
  ],
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
```

### 422 Unknown parameter

```json
{
  "type": "https://www.signcustomiser.com/help/api/problems/unknown_parameter",
  "title": "Unknown query parameter",
  "status": 422,
  "code": "unknown_parameter",
  "detail": "This endpoint accepts no query parameters.",
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
```

### 429 Rate limited

```json
{
  "type": "https://www.signcustomiser.com/help/api/problems/rate_limited",
  "title": "Too many requests",
  "status": 429,
  "code": "rate_limited",
  "detail": "Wait before retrying.",
  "retry_after": 60,
  "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
```
