---
title: "Get webhooks"
method: GET
path: "/api/v1/organization/webhooks"
tags: ["Webhooks"]
---

# Get webhooks

`GET /api/v1/organization/webhooks`

Retrieve all webhooks in the organization.

Required permissions, when user-scoped authentication is used: `MANAGE_WEB_HOOK`.

## Query parameters

- `orgId` integer

## Response `200`

List of webhooks

- Webhook[]
  - `id` integer — Webhook ID
  - `name` string — Webhook name
  - `trigger` 'NEW_USER' | 'DELETED_USER' | 'UPDATED_USER' | 'DEVICE_ADDED' | 'DEVICE_DELETED' | 'DEVICE_DATASTREAM_UPDATE' | 'PRODUCT_DATASTREAM_UPDATE' | 'GLOBAL_PRODUCT_DATASTREAM_UPDATE' | 'DEVICE_LOG_EVENT' | 'PRODUCT_LOG_EVENT' | 'GLOBAL_PRODUCT_LOG_EVENT' | 'FIRST_DEVICE_CONNECTION_IN_ORG' | 'ORGANIZATION_ADDED' — Webhook trigger type
  - `dataTrigger` object — Data trigger configuration (for datastream or log event triggers)
  - `url` string — Webhook URL. Supports placeholders such as `{device_id}`, `{user_id}`.
  - `method` 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' — HTTP method for webhook
  - `contentType` 'PLAIN_TEXT' | 'JSON' | 'URL_ENCODED_FORM' — Content type of the webhook request
  - `authType` 'NONE' | 'BASIC' | 'OAUTH2' — Authentication type
  - `body` string — Request body template
  - `formBody` object — URL-encoded form body key-value pairs (used when contentType is URL_ENCODED_FORM)
  - `queryParams` object[] — Query parameters
    - `name` string
    - `value` string
  - `basicAuthCredentials` object — Basic auth credentials (used when authType is BASIC)
    - `name` string — Username
    - `value` string — Password
  - `oAuth2Request` object — OAuth2 configuration (used when authType is OAUTH2)
  - `headers` object[] — Custom HTTP headers
    - `name` string
    - `value` string
  - `failureReceivers` integer[] — User IDs to notify on webhook failure
  - `status` 'ENABLED' | 'DISABLED' | 'DISABLED_DUE_TO_ERRORS' — Webhook status
  - `attemptCount` integer — Total number of execution attempts
  - `createdAt` integer — Creation timestamp in milliseconds
  - `lastModifiedTs` integer — Last modification timestamp in milliseconds
  - `lastTriggeredTs` integer — Last trigger timestamp in milliseconds
  - `failureLimit` integer — Number of consecutive failures before the webhook is disabled

## Other responses

- `400` — Bad request
- `403` — Forbidden
- `404` — Organization not found or access denied
- `429` — Too many requests
- `500` — Internal server error

---

[API](https://skmtc.net/blynk/apis/blynk-platform-api.md) · [All operations](https://skmtc.net/blynk/apis/blynk-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/blynk/blynk-platform-api/versions/d8640cc48a13/schema)
