Guide updated
Implemented against the official Account Billing API; live-account verification is pending. Signed-in permission selection, key creation, and balance reconciliation have not been tested. Automated regression is not live verification.
- Required credentials
- fal API Key (key_id:key_secret)
- Monitoring currency
- USD · US dollars
- What is monitored
- Account credit balance
- Reads credits.current_balance from GET /v1/account/billing?expand=credits with currency=USD. No cents conversion or usage subtraction. A team key reads its account's shared Credits, not a model, key, or Quota Monitor project wallet.
How to check your fal.ai balance manually
- Sign in to fal Dashboard and select the paying personal account or team at the top left.
- Open Billing and find Credits, not monthly spending or a model's unit price.
- If needed, purchase on fal and confirm posting. Check different personal/team accounts separately.
Connect fal.ai to Quota Monitor
1. Select the account that pays for your app
Sign in to fal Dashboard. Use the account name at the top left to select the paying personal account or team, then open Billing below. You do not need a new team just for monitoring.
Check: the account name and Credits are correct. Ask an existing team Admin to create the key if needed; do not elevate your own role.
2. Create a dedicated monitoring key
Keep that account selected, open API Keys, select Create Key, and name it Quota Monitor. Do not reuse a production key or use the key-creation API instead of the permission setup below.
Check: account and key name are recognizable. If only legacy ADMIN/API scopes are offered, ask fal or your administrator about scoped keys; do not hand over a full-access key.
3. Keep only the billing read permission
Choose custom permissions, remove unnecessary entries, and retain only billing:usage:read. If your UI offers presets only, READONLY is accepted by this endpoint, but also reads resources such as requests and logs.
Check: do not select the ordinary API preset, FULL, or legacy ADMIN. BILLING works but is broader than needed. Custom permissions keep a fixed list; presets can change. Signed-in setup still needs live verification.
4. Set expiry and save the complete key
Choose an expiry under your team's policy and finish creation. Save the one-time full key_id:key_secret in a password manager; both parts and the colon are required.
Check: no Key or Bearer prefix, quotes, spaces, or line breaks. Never include it in chat, screenshots, or feedback. Replace lost keys and plan renewal before expiry.
5. Add fal.ai inside your project
In Quota Monitor, open your project → add provider connection → add new connection. Choose fal.ai (USD), name the connection, paste the full key into its password field, and save it to the project.
Check: no API URL, team ID, provider project ID, or Key ID is required. USD is fixed; credentials are encrypted and only the last four characters are shown. For MCP, use the secure entry link, not agent chat.
6. Sync and compare Credits
Wait for first sync or select Query latest balance. Confirm a new successful query time, then compare with Billing for the same fal account. Record only redacted amounts, account selection, and time when testing.
Check: 24.5 USD displays as $24.5, not $0.245; do not subtract monthly spending. Live reconciliation is pending. A read-only key being unable to invoke models is expected, not a reason to grant inference access.
7. Buy Credits on fal if needed
Select Open provider on the card and confirm the account in Billing. An authorized payer can use the provider's current Credits purchase flow. No payment or automatic top-up is required just to connect monitoring.
Check: payment has posted before refreshing here. We only read billing; we never run models, purchase Credits, refund, or change payment settings. Signed-in purchase controls and minimums must be checked on fal.
8. Replace or revoke the dedicated key
Create a new least-privilege key and a replacement connection, then verify sync. Remove all project references to the old connection, delete it, and revoke the old dedicated key in fal API Keys. Plan a replacement window if connection slots are full.
Check: production keys are untouched. Removing a project connection does not revoke its fal key; clean up the provider credential when monitoring stops.
What Quota Monitor reads from fal.ai
- Only the authenticated account's Credits are monitored, not other personal/team accounts. For pooled organization billing, reconcile that account rather than allocating funds across teams yourself.
- The endpoint does not provide cash/bonus splits, expiry, per-model quotas, or request availability. We do not infer these, or treat Credits as withdrawable cash.
- The amount is the last successful official query. observedAt is query time, not settlement time; zero reporting delay is not guaranteed. Missing fields, wrong currency, and failures never become zero.
- Positive Credits do not override key expiry, permissions, model access, or concurrency limits. Never sum duplicate wallets across connections.
- The dashboard shows the latest successful snapshot. Manual refresh queries the provider again but cannot eliminate upstream billing delays. An old balance is not a new result after a failed query.
fal.ai FAQ and troubleshooting
- Why do I get 401 or a credential-format error?
- Check the full key_id:key_secret, colon, expiry, and revocation. Remove Key/Bearer prefixes and line breaks. Do not paste a masked value, Cookie, login Bearer token, or Key ID alone. Create a new dedicated key if the full secret was lost.
- Why do models work but balance returns 403?
- The API preset does not imply billing:usage:read. Ask an existing administrator for that single permission in the correct account, or check READONLY availability. Do not switch to FULL/legacy ADMIN to bypass an error. If it persists, give fal only redacted diagnostics.
- Why does it differ from spending, or by 100 times?
- current_balance is remaining Credits, not spending. USD is already in dollars. Match account and query time; cash/bonus splits are not queried. Zero Credits alone also do not prove all requests are unavailable.
- Why do projects or keys show the same balance?
- Keys belong to accounts, and teams share Credits. Quota Monitor projects organize your work without creating separate fal wallets. Do not add duplicate balances.
- What if a purchase is missing, or sync fails with 429?
- Check the paying account and official posting, then retry later for 429. Failure retains the previous snapshot and its timestamp, not a new zero balance. Missing credits or another currency fails explicitly; no estimation or automatic conversion. Share only redacted amounts, times, and error codes.
Official fal.ai references
- Official reference · fal.ai/docs/platform-apis/v1/account/billing(opens in a new tab)
- Official reference · fal.ai/docs/documentation/model-apis/authentication/key-based(opens in a new tab)
- Official reference · fal.ai/docs/documentation/setting-up/authentication(opens in a new tab)
- Official reference · fal.ai/docs/platform-apis/v1/keys/create(opens in a new tab)
- Official reference · fal.ai/docs/documentation/setting-up/teams(opens in a new tab)
- Official reference · fal.ai/docs/documentation/model-apis/pricing(opens in a new tab)
Prepared by Quota Monitor, not an official provider tutorial. Interfaces and permissions may change; check official pages. Verification is limited to the scope stated here.