OpenFill is in development. Inference is off, but is tested end to end, and will switch on at launch. All data currently on the site is for live testing: it will be erased at launch.

Skip to content
openfill

Limits

Every ceiling the API enforces, with the value it enforces today and what you get when you reach it. The figures on this page are read from the gateway as it renders.

The limits

Each limit is keyed on your own account, key or address. Whatever anyone else is doing, staying under these means you are never refused for capacity.

LimitValueWhen you reach it
Inference requests per minute, per API key1,200429 rate_limit_error with Retry-After.
Batch submissions per minute, per account1,200429 rate_limit_error with Retry-After.
Order reads and cancels per minute, per account2,400429 rate_limit_error with Retry-After.
File uploads and reads per minute, per account1,200429 rate_limit_error with Retry-After.
Public requests per minute, per address600429 rate_limit_error with Retry-After.
Open market streams, per address5429, and the stream is refused. Close one to open another.
Queued orders, per account2,000429 rate_limit_error. Counted across every market. Batch lines have a cap of their own in this table.
Request body8 MB413.
Result downloads per hour, per account4 GB429 rate_limit_error with Retry-After. One download may finish past the line; the next waits.
Active API keys, per account50403 when making another. Revoke one first.
Order timeout10 seconds to 30 daysA max_wait below the floor is raised to it; above the ceiling it is refused with 400.
Price lock execute window10 secondsA locked request that has not started by then cancels with 429 capacity_unavailable. Nothing is charged.
Batches running at once, per account5429 rate_limit_error on the next create, with Retry-After.
Queued batch orders, per account5,000The batch stays in validating and fans out the rest as lines finish. Never an error.
Requests per batch input file10,000The batch fails validation, with the count in its error.
Batch input file size50 MB413 on upload.
Data storage, longest period30 days400 on the setting. A per-request retention_days is clamped to the account setting.
Data storage, total size100 GBThe oldest stored bodies are deleted to make room. Never an error.
Shortest time batch output is kept1 dayA floor rather than a limit: batch output is kept at least this long whatever your storage setting.
Top-up$5 to $10,000400 on the top-up form.

What is a limit and what is the market

A request that waits because the level is above its max price has hit no limit. It is in the book, and it runs when the level falls to its price, until your timeout. The rows above are the constants; the wait is the product.

Two refusals look like limits and are the market instead: 402 when your balance cannot cover a request at the current level, and 429 capacity_unavailable when a price-locked request misses its window. Neither is charged, and both are on errors and retries.

Reading them from code

GET /v1/limits needs no key and answers with every figure above, so a client can pace itself instead of learning a ceiling from a 429.

bash
curl https://api.openfill.ai/v1/limits

To request a higher limit, email [email protected] with your workload and the limit concerned. Each request is reviewed individually.