Docs /Getting Started//usage/activity

/usage/activity

Spend summaries and per-request drilldown for your organization.

/usage/activity

These endpoints return the same data as the Usage page in the dashboard: totals for a date range, a daily and per-model breakdown, and the individual requests behind them.

Authentication

Send your API key in the Authorization: Bearer header. /usage/activity/summary and /usage/activity/requests require a key belonging to an organization Admin (the manage_billing permission). Results are scoped to the organization the key belongs to.

Date ranges

start and end are Unix timestamps in seconds. A request is included when it was created at or after start and before end. end must be later than start, otherwise the response is a 400 with code invalid_usage_activity_range.

All cost fields are strings in billionths of a US dollar (nano USD). Divide by 1,000,000,000 for dollars.

/usage/activity/summary

HTTP request

GET https://api.featherless.ai/usage/activity/summary?start=1756684800&end=1759276800

curl "https://api.featherless.ai/usage/activity/summary?start=1756684800&end=1759276800" \
  -H "Authorization: Bearer $FEATHERLESS_API_KEY"

Response body

{
  "start_date": "2026-09-01T00:00:00.000Z",
  "end_date": "2026-10-01T00:00:00.000Z",
  "totals": {
    "request_count": 2,
    "input_tokens": 500,
    "output_tokens": 125,
    "total_tokens": 625,
    "total_cost_nano_usd": "24500000"
  },
  "daily": [
    {
      "date": "2026-09-05",
      "request_count": 1,
      "input_tokens": 100,
      "output_tokens": 25,
      "total_tokens": 125,
      "total_cost_nano_usd": "3500000"
    },
    {
      "date": "2026-09-06",
      "request_count": 1,
      "input_tokens": 400,
      "output_tokens": 100,
      "total_tokens": 500,
      "total_cost_nano_usd": "21000000"
    }
  ],
  "models": [
    {
      "model": "Qwen/Qwen3-30B-A3B-Instruct-2507",
      "request_count": 1,
      "input_tokens": 100,
      "output_tokens": 25,
      "total_tokens": 125,
      "total_cost_nano_usd": "3500000",
      "modality": "text"
    },
    {
      "model": "zai-org/GLM-5.3",
      "request_count": 1,
      "input_tokens": 400,
      "output_tokens": 100,
      "total_tokens": 500,
      "total_cost_nano_usd": "21000000",
      "modality": "text"
    }
  ]
}
  • totals covers the whole range. daily is the same breakdown per UTC day and models per model, each sorted ascending.

  • total_cost_nano_usd is null when no request in that bucket carried a price, for example requests served under a flat-rate plan.

  • modality is text for language models. For speech models it is audio and the token counts are character counts.

/usage/activity/requests

Lists the individual requests in a date range, newest first, with the token counts and pricing that were applied to each one.

HTTP request

GET https://api.featherless.ai/usage/activity/requests?start=1756684800&end=1759276800

curl "https://api.featherless.ai/usage/activity/requests?start=1756684800&end=1759276800&limit=100" \
  -H "Authorization: Bearer $FEATHERLESS_API_KEY"

Query parameters

  • start, end (required): the date range, as above.

  • limit (optional): requests per page, from 1 to 200. Defaults to 50.

  • cursor (optional): the next_cursor value from the previous page.

Response body

{
  "start_date": "2026-09-01T00:00:00.000Z",
  "end_date": "2026-10-01T00:00:00.000Z",
  "requests": [
    {
      "request_id": "ca6a6bb0-114c-400b-82a7-6f348ed04389",
      "created_at": "2026-09-08T18:13:39.412Z",
      "model": "Qwen/Qwen3-30B-A3B-Instruct-2507",
      "user_id": "user_example",
      "api_key_id": "key_example",
      "input_tokens": 10,
      "cached_input_tokens": 0,
      "output_tokens": 5,
      "total_tokens": 15,
      "billing_mode": "request_pricing",
      "plan_id": "feather_request_pricing",
      "input_unit_price_nano_usd": "100",
      "output_unit_price_nano_usd": "500",
      "cache_unit_price_nano_usd": "50",
      "input_cost_nano_usd": "1000",
      "output_cost_nano_usd": "2500",
      "cache_cost_nano_usd": "0",
      "total_cost_nano_usd": "3500",
      "input_price_id": "price_example_input",
      "output_price_id": "price_example_output",
      "cache_price_id": "price_example_cache",
      "input_price_source": { "kind": "model_class", "ref": "small" },
      "output_price_source": { "kind": "model_class", "ref": "small" },
      "cost_status": "final",
      "modality": "text"
    }
  ],
  "next_cursor": null
}
  • cached_input_tokens is the part of input_tokens billed at the discounted cache rate, not an additional count. input_cost_nano_usd covers only the uncached tokens and cache_cost_nano_usd the cached ones.

  • unit_price fields are the per-token rates applied, and the price_source fields say where each rate came from.

  • cost_status is final once the cost is settled, not_applicable for requests under a flat-rate plan, and unavailable if a cost could not be computed.

  • settlement_cause is present only when a request was billed for a partial response after the client disconnected mid-generation.

Last edited: Sep 9, 2026