Deel Subpackage Webhooks API
The subpackage_webhooks API from Deel — 3 operation(s) for subpackage_webhooks.
The subpackage_webhooks API from Deel — 3 operation(s) for subpackage_webhooks.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/deel-com:deel-com-subpackage-webhooks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Endpoints Subpackage Webhooks API
version: 1.0.0
servers:
- url: https://api.letsdeel.com/rest/v2
- url: https://api-staging.letsdeel.com/rest/v2
tags:
- name: subpackage_webhooks
paths:
/webhooks:
post:
operationId: create-webhook
summary: Create a webhook
description: Create a new webhooks subscription.
tags:
- subpackage_webhooks
parameters:
- name: Authorization
in: header
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
required: true
schema:
type: string
responses:
'201':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookItemResponse'
'400':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'401':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'403':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'404':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'405':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'429':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'500':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateWebhookRequest'
get:
operationId: get-webhooks
summary: List of webhooks
description: Retrieve a list of webhook subscriptions.
tags:
- subpackage_webhooks
parameters:
- name: Authorization
in: header
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookListResponse'
'400':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'401':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'403':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'404':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'405':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'429':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'500':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
/webhooks/{id}:
delete:
operationId: delete-webhook
summary: Delete a webhook
description: Delete a webhook subscription.
tags:
- subpackage_webhooks
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: Authorization
in: header
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
required: true
schema:
type: string
responses:
'200':
description: Successful operation.
content:
application/json:
schema:
$ref: '#/components/schemas/GenericResultDeleted'
'400':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'401':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'403':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'404':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'405':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'429':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'500':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
patch:
operationId: update-webhook
summary: Edit a webhook
description: Edit a webhook subscription.
tags:
- subpackage_webhooks
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: Authorization
in: header
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookItemResponse'
'400':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'401':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'403':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'404':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'405':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'429':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'500':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchWebhookRequest'
get:
operationId: get-webhook
summary: Retrieve a single webhook
description: Retrieve a single webhook subscription.
tags:
- subpackage_webhooks
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: Authorization
in: header
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookItemResponse'
'400':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'401':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'403':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'404':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'405':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'429':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'500':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
/webhooks/events/types:
get:
operationId: get-webhook-events
summary: List of webhook event types
description: Retrieve a list of webhook event types.
tags:
- subpackage_webhooks
parameters:
- name: Authorization
in: header
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEventTypeListResponse'
'400':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'401':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'403':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'404':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'405':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'429':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
'500':
description: Operation failed.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiErrorContainer'
components:
schemas:
PatchWebhookRequestStatus:
type: string
enum:
- enabled
- disabled
description: Status of webhook.
title: PatchWebhookRequestStatus
WebhookItem:
type: object
properties:
id:
type: string
description: Unique identifier of this resource.
name:
type:
- string
- 'null'
description: Webhook subscription name.
description:
type:
- string
- 'null'
description: Webhook subscription description.
status:
$ref: '#/components/schemas/WebhookItemStatus'
description: Status of webhook.
url:
type: string
description: Endpoint to receive webhook.
signing_key:
type:
- string
- 'null'
description: The webhook's signing key, used to generate webhook signatures.
api_version:
type: string
default: v2
description: Deel API version. Currently Deel accepts v1 or v2 version.
events:
type: array
items:
type: string
description: The list of events to enable for this subscription.
created_at:
type: string
description: Time at which the webhook was created.
updated_at:
type: string
description: Time at which the webhook was updated.
hidden:
type:
- boolean
- 'null'
description: Property to hide the webhook from frontend view. Commonly by Dell 3rd party apps
internal:
type: boolean
deleted_at:
type: string
description: Time at which the webhook was deleted.
required:
- id
- name
- description
- status
- url
- signing_key
- api_version
- events
- created_at
- updated_at
title: WebhookItem
WebhookEventTypeResponse:
type: object
properties:
id:
type: number
format: double
description: Event type unique identifier.
module_name:
type: string
description: Name of the rabbit queue.
module_label:
type: string
description: Display name of the rabbit queue in Deel UI.
name:
type: string
description: Name of the webhook event.
description:
type: string
description: Describes the webhook event and other pertinent info.
payload_example:
type:
- string
- 'null'
description: JSON payload example of the specific event.
created_at:
type: string
description: Time at which the event type was created.
updated_at:
type: string
description: Time at which the event type was updated.
required:
- id
- module_name
- module_label
- name
- description
title: WebhookEventTypeResponse
ApiErrorRequest:
type: object
properties:
method:
type: string
description: The HTTP method of the failed request
url:
type: string
description: The relative URL of the failed request
status:
type: number
format: double
description: The status code of the response
api_req_id:
type: string
description: The request ID of the failed request
docs:
type: string
description: A link to the official documentation for the requested endpoint resource
source:
type: string
description: The source handler which produced the returned error
code:
type: number
format: double
description: The code of the source handler which produced the returned error
title: ApiErrorRequest
WebhookItemStatus:
type: string
enum:
- enabled
- disabled
description: Status of webhook.
title: WebhookItemStatus
ApiError:
type: object
properties:
message:
type: string
description: A description of the returned error
path:
type: string
description: The JSON path where input validation failed
title: ApiError
WebhookEventTypeListResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/WebhookEventTypeResponse'
title: WebhookEventTypeListResponse
GenericResultDeleted:
type: object
properties:
data:
$ref: '#/components/schemas/GenericResultDeletedData'
required:
- data
title: GenericResultDeleted
GenericResultDeletedData:
type: object
properties:
deleted:
type: boolean
description: Confirms the deletion.
required:
- deleted
title: GenericResultDeletedData
WebhookListResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/WebhookItem'
required:
- data
title: WebhookListResponse
WebhookItemResponse:
type: object
properties:
data:
$ref: '#/components/schemas/WebhookItem'
required:
- data
title: WebhookItemResponse
CreateWebhookRequest:
type: object
properties:
name:
type:
- string
- 'null'
description: Webhook subscription name.
description:
type:
- string
- 'null'
description: Webhook subscription description.
status:
$ref: '#/components/schemas/CreateWebhookRequestStatus'
description: Status of webhook.
url:
type: string
description: Endpoint to receive webhook.
signing_key:
type:
- string
- 'null'
description: The webhook's signing key, used to generate webhook signatures.
api_version:
type: string
default: v2
description: Deel API version. Currently Deel accepts v1 or v2 version.
events:
type: array
items:
type: string
description: The list of events to enable for this subscription.
required:
- name
- description
- status
- url
- signing_key
- api_version
- events
title: CreateWebhookRequest
PatchWebhookRequest:
type: object
properties:
name:
type:
- string
- 'null'
description: Webhook subscription name.
description:
type:
- string
- 'null'
description: Webhook subscription description.
status:
$ref: '#/components/schemas/PatchWebhookRequestStatus'
description: Status of webhook.
url:
type: string
description: Endpoint to receive webhook.
signing_key:
type:
- string
- 'null'
description: The webhook's signing key, used to generate webhook signatures.
api_version:
type: string
default: v2
description: Deel API version. Currently Deel accepts v1 or v2 version.
events:
type: array
items:
type: string
description: The list of events to enable for this subscription.
required:
- name
- description
- status
- url
- signing_key
- events
title: PatchWebhookRequest
CreateWebhookRequestStatus:
type: string
enum:
- enabled
- disabled
description: Status of webhook.
title: CreateWebhookRequestStatus
ApiErrorContainer:
type: object
properties:
request:
$ref: '#/components/schemas/ApiErrorRequest'
errors:
type: array
items:
$ref: '#/components/schemas/ApiError'
title: ApiErrorContainer
securitySchemes:
deelToken:
type: http
scheme: bearer
description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
oauth2:
type: http
scheme: bearer
description: Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/