Record a billing alert for a bill

post/v1/billing/bills/{bill_id}/alerts
Requires an API key

Requires billing:write on the bill's tenant. kind hold_stop: the application stopped charging because usage neared the hold. Recorded once per bill and kind; repeating the call returns the same alert. Alerts never move money.

Path parameters

  • bill_idstringRequired
    Pattern ^bill_[0-9a-f]{32}$

Request body

  • kindstringRequired
    hold_stop: the application stopped charging near the authorization hold. Recorded once per bill.

Returns · 200

  • idstringRequired
  • tenant_idintegerRequired
  • bill_idstringRequired
  • payment_idstring | nullRequired
  • kindenumRequired
    One of over_hold, near_hold, hold_stop
  • total_minorinteger | nullRequired
  • hold_minorinteger | nullRequired
  • created_atstringRequired
  • resolved_atstring | nullRequired
POST /v1/billing/bills/{bill_id}/alerts
curl --fail-with-body -X POST "https://api.ivoracharge.com/v1/billing/bills/bill_0123456789abcdef0123456789abcdef/alerts" \
  -H "Authorization: Bearer $IVORA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "kind": "hold_stop"
}'
Response · 200
{
  "id": "id_0123456789abcdef",
  "tenant_id": 1042,
  "bill_id": "bill_0123456789abcdef",
  "payment_id": "payment_0123456789abcdef",
  "kind": "over_hold",
  "total_minor": 1250,
  "hold_minor": 1250,
  "created_at": "2026-09-30T17:00:00Z",
  "resolved_at": "2026-09-30T17:00:00Z"
}
Try it is not available here yetRequests from this page are off until the production API at https://api.ivoracharge.com is public. Use the code samples from your application server; Ivora grants production access. Keys are created in Developer tools.