Skip to main content
The Usage Export API returns the same usage data available on the Studio usage dashboard, accessible programmatically via your PropelAuth API key.

Authentication

Authenticate with a Bearer token using your PropelAuth API key from Studio API Keys:
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://studio.reducto.ai/api/v1/usage/export"
This is your personal API key from the Studio API Keys page, not the REDUCTO_API_KEY used for document processing.

Endpoint

GET https://studio.reducto.ai/api/v1/usage/export

Query Parameters

ParameterTypeDefaultDescription
startDatestring30 days agoStart date in yyyy-mm-dd format
endDatestringTodayEnd date in yyyy-mm-dd format
groupBystringproductDimension to group results by. One of: product, feature, api_key, file_type
orgIdstringAPI key’s orgTarget organization ID. Required if your account belongs to multiple organizations.
productstring(none)Filter by product. Repeatable for multiple values.
featurestring(none)Filter by feature. Repeatable for multiple values.
apiKeystring(none)Filter by API key. Repeatable for multiple values.
fileTypestring(none)Filter by file type. Repeatable for multiple values.

Response

{
  "orgId": "org_abc123",
  "startDate": "2026-05-19",
  "endDate": "2026-06-18",
  "groupBy": "product",
  "data": [
    {
      "date": "2026-05-19",
      "group": "parse",
      "credits": 150.0,
      "requestCount": 75
    },
    {
      "date": "2026-05-19",
      "group": "extract",
      "credits": 80.0,
      "requestCount": 20
    }
  ]
}

Each entry in data represents one day and one group value. credits is the total credits consumed and requestCount is the number of API requests made.

Examples

Default: last 30 days grouped by product

import requests

response = requests.get(
    "https://studio.reducto.ai/api/v1/usage/export",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
)
data = response.json()

for row in data["data"]:
    print(f"{row['date']} | {row['group']}: {row['credits']} credits, {row['requestCount']} requests")

Custom date range grouped by file type

import requests

response = requests.get(
    "https://studio.reducto.ai/api/v1/usage/export",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    params={
        "startDate": "2026-06-01",
        "endDate": "2026-06-15",
        "groupBy": "file_type",
    },
)
data = response.json()

Filter by specific products

Use repeatable query parameters to filter results:
import requests

response = requests.get(
    "https://studio.reducto.ai/api/v1/usage/export",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    params=[
        ("groupBy", "feature"),
        ("product", "parse"),
        ("product", "extract"),
    ],
)
data = response.json()

Multi-Organization Access

If your account belongs to multiple organizations, pass the orgId parameter to specify which organization’s usage to retrieve. Without it, the API defaults to the organization associated with your API key.
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://studio.reducto.ai/api/v1/usage/export?orgId=org_abc123"
You can only query organizations you are a member of. Requesting an org you don’t belong to returns a 403 error.

Error Responses

StatusMeaning
401Missing or invalid API key
400Invalid groupBy value
403Not a member of the requested organization
500Server error

Credit Usage

How credits are calculated per endpoint.

Account & Settings

Manage API keys, usage alerts, and billing in Studio.