Skip to main content

Usage and quotas

Operational Evidence tracks usage by customer and operation. The current operation identifier is:

Usage unit

Each successfully completed Evidence Report consumes:
A successful response includes the usage associated with that report:

Check your current usage

Authenticated customers can inspect their current monthly usage with:
The endpoint requires the same server-side API key used by other protected The Wo endpoints:
Example:
Example response:

Response fields

Remaining usage is calculated as:
Usage Records are the source of truth for used. The endpoint sums recorded units for the authenticated customer, operation, and current UTC calendar month. A customer with no usage receives used: 0; this is not a 404. Reading current usage is free and does not create another Usage Record.

Current usage access

If current usage is not available for the authenticated customer’s active Plan, the API returns:
If current usage cannot be read safely because a required service is temporarily unavailable, the API returns:
The API never reports fabricated zero usage when the real value cannot be read.

Customer usage page

The MVP does not provide a dedicated customer usage dashboard. GET /v1/usage/current is the customer-facing MVP surface and can later power a customer page without changing the usage contract.

When usage is recorded

The current operation lifecycle is:
Usage is therefore not recorded for failures that occur before usage recording. Monthly quota is checked before remote image retrieval. A request rejected by quota cannot use Operational Evidence as a remote-resource downloader. Remote image retrieval failures also occur before provider execution and before Usage is recorded. Examples include:
  • authentication failure;
  • invalid HTTP payload;
  • invalid application input;
  • quota rejection;
  • remote evidence image rejection;
  • remote evidence image unavailability;
  • provider unavailability;
  • provider generation failure;
  • invalid generated output;
  • Evidence Report persistence failure.

Monthly quota

Quota is evaluated per customer and operation. The current MVP uses UTC calendar months. A quota period begins at:
and ends immediately before:
For example:

Quota decision

For the current create Evidence Report endpoint:
The operation is allowed only when enough units remain before the request. For example, with a monthly limit of 500: The final available unit can therefore be consumed.

Quota exceeded

When the request would exceed the current monthly quota, the API returns:
with:
Example:

Understanding quota details

remaining describes availability before the current request. It never represents a negative value.

Customer or Plan access

Quota exhaustion is different from not having access to the billable operation. When the authenticated customer does not have a valid active Plan relationship for the operation, the API returns:
with:
This is not treated as quota exhaustion.

Quota validation unavailable

Quota checks fail closed. If The Wo cannot safely determine whether the operation is allowed, report generation does not start. The API returns:
with:

Payment Required

The current MVP does not use:
for monthly quota exhaustion. 402 is reserved for a future explicit product decision involving payment or subscription state.

Overage billing

Automatic overage billing is not part of the current MVP. A request that exceeds the available monthly quota is rejected instead of being automatically billed above the configured limit.

Concurrent requests

The current MVP calculates quota from recorded usage before executing the operation. Multiple concurrent requests can temporarily observe the same final available unit. Strict concurrent reservation is not part of the current public MVP. Customers that require strict high-concurrency quota guarantees should discuss that requirement before production onboarding.

Retrying quota errors

A 429 quota_exceeded request should not be retried repeatedly. Retry after:
  • quota becomes available;
  • the next monthly period begins;
  • or your Plan changes.
The resetAt field identifies the beginning of the next UTC quota period.