---
title: "Create Webhook"
method: POST
path: "/webhooks"
tags: ["Webhooks"]
---

# Create Webhook

`POST /webhooks`

Create a webhook endpoint.

## Request body

- WebhookPostRequest
  - `name` string, required — Name of the webhook endpoint
  - `url` string, required — URL of webhook, must begin with https://
  - `eventTypes` RefWebhookEventType[], required
  - `active` boolean, required — Whether to set this webhook active to received events
  - `includePayload` boolean — Whether to put all datapoints' payload into the events(TASK_FINISHED, ACCOUNT_SNYC_TASK_FINISHED)
  - `secret` string, required — The key that will be used to generate HMAC-SHA512 hex digest value in the Smile-Signature header.

## Response `200`

OK

- WebhookPostResponse
  - `code` 'OK' | 'CREATED' | 'INVALID_CREDENTIALS' | 'INVALID_PARAMETERS' | 'INVALID_TOKEN' | 'UNAUTHORIZED_ACCESS' | 'MISSING_RESOURCE' | 'REQUEST_LIMIT_EXCEEDED' | 'SERVER_ERROR' | 'UNSUPPORTED_METHOD' | 'SERVER_UNAVAILABLE' | 'TIME_LIMIT_EXCEEDED' — Request status code
  - `message` string — Message response to the request
  - `requestId` string — Unique ID that is added to the body of every response for easy traceability of the request in our logs.
  - `data` Webhook — Receive event notifications via Webhooks.
    - `id` string, required — Unique ID of this object
    - `createdAt` string, date-time, required — Date and time
    - `name` string, required — Name of the webhook endpoint
    - `url` string, required — URL of webhook, must begin with https://
    - `secret` string — The key that will be used to generate HMAC-SHA512 hex digest value in the Smile-Signature header.
    - `eventTypes` RefWebhookEventType[], required — Special events that you want to subscribe to
    - `active` boolean, required — Set to true or false depending on if you would like to enable this webhook or not
    - `includePayload` boolean — Whether to put all datapoints' payload into the events(TASK_FINISHED_EVENT, ACCOUNT_SNYC_TASK_FINISHED_EVENT)
    - `updatedAt` string, date-time, required — Date and time

## Changes

> 51 revisions in range; 2 could not be searched.

- **2026-07-15** (v1) `3bcbeecafbab` — 10 info
  - removed the non-success response with the status `400`
  - removed the non-success response with the status `401`
  - removed the non-success response with the status `403`
  - removed the non-success response with the status `404`
  - …6 more
- **2025-10-24** (v1) `2c7cb8512390` — 2 warning, 2 info
  - added the new `USER_SESSION_COMPLETED` enum value to the `data/eventTypes/items/` response property for the response status `200`
  - added the new `USER_SESSION_RESET` enum value to the `data/eventTypes/items/` response property for the response status `200`
  - added the new `USER_SESSION_COMPLETED` enum value to the request property `eventTypes/items/`
  - added the new `USER_SESSION_RESET` enum value to the request property `eventTypes/items/`
- **2025-07-14** (v1) `195bfd1099ae` — 1 breaking, 1 warning, 2 info
  - removed the enum value `RECORD_STARTED` of the request property `eventTypes/items/`
  - added the new `RECORD_CREATED` enum value to the `data/eventTypes/items/` response property for the response status `200`
  - added the new `RECORD_CREATED` enum value to the request property `eventTypes/items/`
  - removed the `RECORD_STARTED` enum value from the `data/eventTypes/items/` response property for the response status `200`
- …earlier changes not shown

[Full history](https://skmtc.dev/smileapi/apis/smile-api/changes/webhooks/post.md)

---

[API](https://skmtc.dev/smileapi/apis/smile-api.md) · [All operations](https://skmtc.dev/smileapi/apis/smile-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/smileapi/smile-api/revisions/a4930eb49f4d/schema)
