Billing and usage
API access is one plan: a monthly fee that includes a number of calls, then a price per call beyond them.
The API plan is $49.00 AUD a month including GST, with 2,000 calls each month, then $10.00 AUD per 1,000 beyond them, a cent a call.| The API plan, per calendar month, GST included | $49.00 |
| Calls included each calendar month, per account | 2,000 |
| Price per 1,000 calls beyond those, GST included | $10.00 |
| Requests per minute, per key | 60 |
| Outages per page, at most | 500 |
| Days of outage start times one query may read, at most | 31 |
| Currency | AUD |
The plan is what turns the API on
A key works only while its account has the API plan. Without it, every call returns
402 payment_required with a message saying so. There is no free tier to try it on, and no allowance
that runs without the plan.
- Start it in Settings › API. It needs a card on the account first, saved in Settings › Billing.
- The first month is pro-rated and charged at once. Starting the plan charges the rest of the current month: the monthly fee × the days left, counting today, ÷ the days in the month, rounded to the cent and never below $1.00. Starting on 25 October 2026 charges $11.06 AUD at once: 7 of the month’s 31 days, with all 2,000 calls.
- It turns on when that payment is confirmed, usually within seconds. Until then the dashboard says the
plan is starting, and calls return
402with that message. - Then it renews on the 1st, for the month ahead.
- Cancel any time, in the same place. The plan stays on until the end of the month you have already paid for, and is not refunded. Starting it again before then costs nothing.
- Enterprise accounts have the API by arrangement, are invoiced as agreed, and need neither the plan nor a card.
What counts as a call
A call is one request answered with a 2xx. That is the only thing counted against the plan, and the
only thing billed beyond it.
- Refusals are never billed. A
4xx— a bad parameter, a missing or revoked key, the rate limit — is never charged and never uses an included call. Refusals on a valid key are counted in your usage asrefused, so you can see them. - Our failures are never billed. A
5xxis our problem, not your cost. - Three endpoints are always free. GET
/v1/usage, marked Free in the reference; GET/v1/status, which needs no key at all; andGET /v1/openapi.json, likewise. - Every key on the account counts together. The included calls and the charge are per account, not per key.
A month is a calendar month, Sydney time. The included calls apply in full every month, the pro-rated first month too.
How much one call returns
A list of outages returns up to 500 a page, and one query reads at most 31 days of outage start times. No date is out of reach: step through the archive a window at a time. For years at once, or a whole state, request a bulk export in Settings › API — say which states, which dates and what it is for, and we quote it and send the file. Pagination has the window rules, and Keeping a copy in sync puts them to work.
How you are charged
- On the account's saved card, once a month. On the 1st, one charge carries the plan for the month ahead and the calls beyond the plan from the month before.
- One charge for everything. If your account also advertises on Aussie Outage Tracker, the plan, the extra calls and the advertising go on the same charge, on the same card, as one invoice.
- GST included. Prices are in AUD and include GST. We are the seller: MODLL PTY LTD, trading as Aussie Outage Tracker, issues a tax invoice for every charge and emails it, with a PDF copy, to the account owner when the payment goes through. Every line shows the GST it contains. Card payments are processed by Stripe; your card number never reaches us.
- Outside Australia, the same price with no GST. The card form asks for a billing address. If it is outside Australia, you pay the same price, it contains no GST, and the invoice is marked GST-free.
- A declined charge is retried once on your backup card, if you have saved a second one that has not expired, before anyone is told it failed.
If a payment fails and billing is past due, every call returns 402 payment_required until the card is
updated in Settings › Billing. A lapsed card stops your reads; it
never stops the archive recording.
Checking your usage
curl -H "Authorization: Bearer $AOT_API_KEY" \
"https://api.aussieoutagetracker.com.au/v1/usage"GET /v1/usage{
"data": {
"month": "2026-10",
"calls": 111,
"refused": 25,
"included_calls": 2000,
"billable_calls": 0,
"plan_aud": 49,
"price_per_1000_calls_aud": 10,
"estimated_charge_aud": 0,
"by_endpoint": [
{
"endpoint": "/v1/outages",
"calls": 43
},
{
"endpoint": "/v1/outages/:id/history",
"calls": 31
}
]
},
"meta": {
"data_as_of": "2026-10-20T02:28:26.234Z"
}
}A real response, captured from the API. Arrays are shortened to two items.
calls— calls answered2xxthis month, across every key on the account.refused— calls answered with a4xx. Counted, never billed.included_calls— the calls the plan includes each month.billable_calls— the calls beyond the included ones so far this month, each charged at the price below.plan_aud— the plan's monthly fee, charged in advance on the 1st.price_per_1000_calls_aud— the price of 1,000 calls beyond the included ones.estimated_charge_aud— what this month's calls beyond the plan would cost at today's count, GST included. The plan is charged separately.by_endpoint— the month's calls per endpoint.
Pass month=YYYY-MM for an earlier month. The same figures are in the dashboard under
Settings › API.
Every figure on this page comes from the API's published OpenAPI document, the same constants the charge
uses. If a price changes, this page, the dashboard and GET /v1/usage change together.