Skip to main content
POST
/
v1
/
webhook
/
deposit
/
api-key
Create a Deposit Webhook
curl --request POST \
  --url https://api.hel.io/v1/webhook/deposit/api-key \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "depositId": "<string>",
  "targetUrl": "<string>"
}
'
[
  {
    "id": "68f65b3f8eda28e9761b84d9",
    "name": "deposithooktest",
    "targetUrl": "https://webhook-test-url/f5f34313-c07a-4473-a46f-3a9feb8aea1a",
    "inactive": false,
    "createdAt": "2025-10-20T15:54:39.374Z",
    "deposit": "68f65b2b03d7f2b2a12ca41e",
    "isGlobal": false,
    "sharedToken": "ZtiSEjZsTNoczv8kvDgtSx5+YO017NOlM/mrqEMj2nnHXi+UfmCQvuqvZlI0eH3JJWrW1D3UDWM+GgK9sVfR0NNPIMwWNV+jcFehjDIMlVq05Ahf2/5tUT/W7qqiHWZy"
  }
]
NOTE: When using Helio on mainnet, set your Base URL to https://api.hel.io and generate your API keys from moonpay.hel.io . For testnet, use https://api.dev.hel.io and generate your API keys from moonpay.dev.hel.io.

Authorizations

Authorization
string
header
required

Authentication using JWT token

Query Parameters

apiKey
string
required

Your API key can be generated on the Helio Dashboard’s settings page.

Body

application/json
name
string
required

The name of the webhook.

depositId
string
required

The ID of the deposit the webhook is associated with.

targetUrl
string
required

The URL that will receive the webhook payload when the event occurs.

Response

Webhook creation response

events
enum<string>[]
required
Available options:
STARTED,
RENEWED,
ENDED
id
string
required
company
string
required
targetUrl
string
required
sharedToken
string
required
creator
string