---
title: "Register Webhook"
method: POST
path: "/notification/v1/connect/webhook/subscriptions"
tags: ["Webhooks"]
---

# Register Webhook

`POST /notification/v1/connect/webhook/subscriptions`

Registers a new webhook triggered by specific events. Each webhook is linked to a `business_id`, `client_id`, `endpoint`, and `event_names` defining the events that trigger it. The service sends POST requests to the specified URL for these events. The URL must be reachable and preferably secure (HTTPS). Optionally, a signing key can be provided to verify webhook payload authenticity.

## Request body

- RegisterWebhookRequest
  - `event_names` string[] — Specifies the type of events that will trigger the webhook. - "appointment.created": Trigger on appointment create events. - "user.delete": Trigger on user delete events.
  - `endpoint` string, required — The fully qualified URL where the webhook will send POST requests. The URL must be reachable by the webhook service.
  - `signing_key` string — A secret key provided by the client for verifying the authenticity of webhook payloads. It should be a securely generated, random string.
  - `protocol` string — Specifies the protocol or delivery mechanism used for the webhook. - "http": Plain HTTP endpoint. - "https": Secure HTTPS endpoint. - "SQS endpoint": AWS SQS queue URL for message delivery. - "Lambda function": AWS Lambda function ARN for direct invocation.

## Response `201`

Webhook registered successfully.

- RegisterWebhookResponse
  - `id` string — The unique identifier for the webhook.
  - `status` string — A message indicating the status of the response.

## Other responses

- `400` — Bad request.
- `401` — Unauthorized request.
- `500` — Server error.

---

[API](https://skmtc.net/eka/apis/eka-developer-apis.md) · [All operations](https://skmtc.net/eka/apis/eka-developer-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/eka/eka-developer-apis/revisions/9ea23456f722/schema)
