The Usage API returns your organization’s current month usage counters alongside your plan limits — useful for building dashboards, usage alerts, or automated upgrade prompts.
Get usage
GET /v1/usage
Returns usage for the current calendar month and the limits for your current plan.
curl -s "https://api.hookdeploy.dev/v1/usage" \
-H "Authorization: Bearer hd_live_YOUR_KEY"
Response:
{
"data": {
"data": {
"plan": "starter",
"billing_interval": "monthly",
"requests_this_month": 1250,
"max_requests_per_month": 15000,
"storage_bytes": 19251,
"max_storage_bytes": 5368709120,
"endpoint_count": 8,
"max_endpoints": 25,
"member_count": 2,
"max_users": 2,
"destination_count": 3,
"max_forward_destinations": 5,
"tunnel_access": false
}
}
}
Fields:
| Field | Description |
|---|---|
plan | Your current plan key: free, starter, team |
billing_interval | monthly or yearly. Usage always resets monthly regardless of billing interval. |
requests_this_month | Webhook requests captured this calendar month |
max_requests_per_month | Metered monthly request capacity for your plan. -1 means unlimited. This counter is not itself a hard ingestion gate. |
storage_bytes | Total payload storage used this month in bytes |
max_storage_bytes | Monthly storage limit in bytes. -1 means unlimited. |
endpoint_count | Number of endpoints in your organization |
max_endpoints | Endpoint limit for your plan. -1 means unlimited. |
member_count | Number of active members in your organization |
max_users | Member limit for your plan. -1 means unlimited. |
destination_count | Number of enabled forward destinations across all endpoints |
max_forward_destinations | Forward destination limit for your plan. -1 means unlimited. |
tunnel_access | Whether your plan includes private tunnel access (WireGuard/Tailscale) |
Usage resets: Counters reset at midnight UTC on the first of each month. The billing_interval field reflects whether you pay monthly or yearly, but usage tracking is always monthly.
Plan limits: A value of -1 for any limit means the field is unlimited on your plan.
Example: check if near request limit
USAGE=$(curl -s "https://api.hookdeploy.dev/v1/usage" \
-H "Authorization: Bearer hd_live_YOUR_KEY")
CURRENT=$(echo $USAGE | jq '.data.data.requests_this_month')
MAX=$(echo $USAGE | jq '.data.data.max_requests_per_month')
echo "Used $CURRENT of $MAX requests this month"
Next steps
- Endpoints API — Manage your webhook endpoints
- API Overview — Authentication, routes, errors, and pagination