v2.4 CURRENT PROTOCOLWebhook

Balance Alerts

Balance alerts warn you in advance when your credit balance drops below a threshold, so you can top up or slow consumption before jobs stop with a 402 error. Alerts are on by default for every team and cost no credits.

How thresholds work

Every team has two thresholds defined by default: $5 and $1. The first time the available balance (available_usd) drops below a threshold, a single alert is sent. No new alert is sent for the same threshold until the balance rises above it and drops below it again, so a team running on a low balance does not get an email for every job.

Under Settings → Billing → Balance alerts you can define up to five thresholds and change or delete the defaults. When the balance reaches zero, one final alert is also sent; this alert cannot be turned off.

Notification channels

ChannelDefaultWho receives it
In-appOnAll team members
EmailOnTeam owner and billing admins
Web pushOffMembers who allowed it in the browser
credits.lowIf an endpoint is setThe team's webhook endpoint

You can turn channels on and off under Settings → Notifications, in the "Billing" category.

Handle the credits.low event

The webhook event is the most flexible way to wire alerts into your own systems: post to a Slack channel, page whoever is on call or pause low-priority jobs. First verify the request signature as shown on the Signature Verification page.

// After the signature is verified
if (event.event_type === 'credits.low') {
  const { balance_usd, threshold_usd } = event.payload;
  await notifyOps(`Incapon balance ${balance_usd} (threshold ${threshold_usd})`);
  if (balance_usd < 1) await pauseBatchJobs(); // Hold batch jobs
}
Use alerts together with auto top-up

Set the Auto Top-Up threshold slightly above the alert threshold. As long as top-ups work normally, the alert never arrives; if it does, the card was declined or the monthly cap was reached.

Good practices

1. Pick thresholds by spend rate

Read your hourly spend from the usage breakdown and set the first threshold to at least one day of consumption, so you have time to react even outside working hours.

2. Route to a shared address, not a person

Send email alerts to a team address rather than one person, or to a shared channel through the webhook, so an alert is never missed because someone is on leave.

Next Steps & Guides

Was this guide helpful?

Your feedback helps us improve our documentation.