For the complete documentation index, see llms.txt. This page is also available as Markdown.

Cost to Serve

Read workspace LLM usage and calculated cost, distinguish customer and staff access, and handle partial pricing, rollout limits, and retired cost routes.

Use the current usage and calculated LLM cost reports to inspect a workspace over a selected date range. These figures depend on recorded usage, attribution, and pricing coverage. They are not a customer invoice, a contracted price, or the total cost of operating the workspace.

Choose a Report

All reports require access to the workspace in the request path. Additional access rules differ:

Report
Access
Use it to…

Usage

Workspace credential with Data.view

Inspect production-classified usage or request model/class breakdowns

Customer usage and cost

Signed-in identity user with Data.view, plus workspace enablement

Compare production-classified usage and calculated model cost; inspect excluded usage separately

LLM inference cost

Concurrence administrator identity

Inspect staff-only LLM cost and applied rates

The customer usage-and-cost capability is disabled by default and must be enabled for the workspace. An API key cannot replace its signed-in user credential. A public schema entry is not proof that this workspace has access. See Authentication and API Keys.

Query Parameters

Use inclusive start_date and end_date values in YYYY-MM-DD form. The end cannot be in the future, and the start cannot follow the end. These reports do not require a closed month. An optional service_id narrows usage before aggregation.

Each report selects one complete published calculation covering every requested date. A valid date range can still have no available calculation; acceptance of an interaction does not establish that it has reached the report. The customer overview labels its dates as UTC.

Customer Usage

Get workspace LLM usage

get

Return customer-visible LLM usage for an inclusive date range from one complete published calculation. Omit group_by for totals, daily usage, attribution, and service breakdowns; use group_by=model or group_by=class for those breakdowns. The optional service_id filter is applied before aggregation.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
start_datestring · dateRequired

First usage date to include.

end_datestring · dateRequired

Last usage date to include. It cannot be in the future.

service_idstring · uuid · nullableOptional

Limit the report to usage attributed to this service.

group_bystring · enum · nullableOptional

Return model or usage-class breakdowns instead of the overview.

Possible values:
Responses
200

Successful Response

application/json
or
or
get/v1/{workspace_id}/usage
GET /v1/{workspace_id}/usage?start_date=2026-01-01&end_date=2026-01-01 HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "period": {
    "start_date": "2026-01-01",
    "end_date": "2026-01-01"
  },
  "calculation_run_id": "123e4567-e89b-12d3-a456-426614174000",
  "attribution": {
    "conversation_attribution_rate": 1,
    "service_attribution_rate": 1
  },
  "totals": {
    "conversation_count": 1,
    "request_count": 1,
    "uncached_input_tokens": 1,
    "cached_input_tokens": 1,
    "output_tokens": 1,
    "has_unpriced_usage": true,
    "unpriced_tokens": 1
  },
  "daily": [
    {
      "usage_date": "2026-01-01",
      "uncached_input_tokens": 1,
      "cached_input_tokens": 1,
      "output_tokens": 1
    }
  ],
  "services": [
    {
      "service_id": "123e4567-e89b-12d3-a456-426614174000",
      "conversation_count": 1,
      "request_count": 1,
      "uncached_input_tokens": 1,
      "cached_input_tokens": 1,
      "output_tokens": 1
    }
  ]
}

Omit group_by for production totals, daily usage, attribution, and service breakdowns. Use group_by=model for model usage or group_by=class to inspect usage classes, including non-production usage. A request is a model-provider request; it is not a phone call or a distinct conversation. Conversation counts include linked conversations only.

Example Request

Use the regional API base and credential assigned to your workspace. Choose dates with published usage data; this read does not create resources or require cleanup.

Record the returned workspace, period, and calculation_run_id with your report. An unavailable calculation is not a zero-usage result.

Customer Usage and Cost

Overview

Get workspace usage and cost overview

get

Return customer-visible production-classified LLM usage and calculated model-provider cost for an inclusive UTC date range. The optional service_id filter is applied before aggregation. Unsupported v0 provenance and attribution fields remain null and successful responses report data_status=partial.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
start_datestring · dateRequired

First usage date to include.

end_datestring · dateRequired

Last usage date to include. It cannot be in the future.

service_idstring · uuid · nullableOptional

Limit the report to usage attributed to this service.

Responses
200

Successful Response

application/json

Customer usage and calculated model-provider cost overview.

workspace_idstring · uuidRequired
service_idstring · uuid · nullableRequired

Service identifier; null for unattributed usage.

attribution_statusconst: best_effortRequired
data_statusstring · enumRequired

V0 returns partial for a published calculation, or failed when no complete calculation covers the period.

Possible values:
data_as_ofstring · date-time · nullableRequired

Source-event freshness; null because the published facts do not retain it.

calculation_run_idstring · nullableRequired

Opaque published-calculation identifier; null when no complete calculation covers the period.

rate_card_versionstring · nullableRequired

Reproducible rate-card identifier; null because the published facts do not retain it.

currencyconst: USDRequired
get/v1/{workspace_id}/usage-cost/overview
GET /v1/{workspace_id}/usage-cost/overview?start_date=2026-01-01&end_date=2026-01-01 HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "period": {
    "start_date": "2026-01-01",
    "end_date": "2026-01-01",
    "timezone": "text"
  },
  "service_id": "123e4567-e89b-12d3-a456-426614174000",
  "attribution_status": "text",
  "attribution": {
    "conversation_attribution_rate": 1,
    "service_attribution_rate": 1,
    "may_include_amigo_operated_usage": true
  },
  "data_status": "complete",
  "data_as_of": "2026-01-01T00:00:00.000Z",
  "calculation_run_id": "text",
  "rate_card_version": "text",
  "currency": "text",
  "totals": {
    "conversation_count": 1,
    "request_count": 1,
    "uncached_input_tokens": 1,
    "cached_input_tokens": 1,
    "output_tokens": 1,
    "calculated_cost_usd": "text",
    "cost_per_conversation_usd": "text",
    "has_unpriced_usage": true,
    "unpriced_tokens": 1
  },
  "daily": [
    {
      "usage_date": "2026-01-01",
      "uncached_input_tokens": 1
    }
  ],
  "services": [
    {
      "service_id": "123e4567-e89b-12d3-a456-426614174000",
      "service_name": "text",
      "conversation_count": 1,
      "request_count": 1,
      "uncached_input_tokens": 1,
      "cached_input_tokens": 1,
      "output_tokens": 1,
      "calculated_cost_usd": "text",
      "cost_per_conversation_usd": "text",
      "cost_share": 1,
      "has_unpriced_usage": true,
      "unpriced_tokens": 1
    }
  ],
  "latest_close": {
    "close_month": "2026-01-01",
    "status": "text",
    "calculated_at": "2026-01-01T00:00:00.000Z",
    "calculation_run_id": "text",
    "rate_card_version": "text",
    "calculated_cost_usd": "text",
    "uncached_input_tokens": 1,
    "cached_input_tokens": 1,
    "output_tokens": 1,
    "has_unpriced_usage": true,
    "unpriced_tokens": 1
  }
}

The overview reports production-classified totals, daily uncached-input usage, and service breakdowns. In the current version, a published calculation returns data_status: "partial" and attribution_status: "best_effort". This is expected even when every requested date is covered: source freshness, reproducible rate-card version, conversation-attributed token share, and a compatible monthly close are not available. Their fields remain null. Production-classified totals may include Concurrence-operated usage.

Response Body

Inspect data_status before rendering totals. If no complete calculation covers the range, the overview returns HTTP 200 with data_status: "failed" and null totals, daily data, services, and calculation identifier. Show unavailable data rather than converting those nulls to zero. The models and excluded reports instead return 503 when no complete calculation is available.

Customer cost amounts and rates use decimal strings. The overview's calculated cost is a priced subtotal: it excludes unpriced usage and exposes has_unpriced_usage and unpriced_tokens. No usage yields "0.00"; usage that cannot be priced at all yields null. Review pricing coverage before comparing periods or services.

Models

Get workspace usage and cost by model

get

Return customer-visible production-classified LLM usage and calculated model-provider cost grouped by model. The optional service_id filter is applied before aggregation. Rates and money are decimal strings.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
start_datestring · dateRequired

First usage date to include.

end_datestring · dateRequired

Last usage date to include. It cannot be in the future.

service_idstring · uuid · nullableOptional

Limit the report to usage attributed to this service.

Responses
200

Successful Response

application/json

Customer usage and calculated model-provider cost grouped by model.

workspace_idstring · uuidRequired
service_idstring · uuid · nullableRequired
conversation_countintegerRequired

Distinct linked conversations in the selected scope; conversations shared by models are counted once.

currencyconst: USDRequired
get/v1/{workspace_id}/usage-cost/models
GET /v1/{workspace_id}/usage-cost/models?start_date=2026-01-01&end_date=2026-01-01 HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "period": {
    "start_date": "2026-01-01",
    "end_date": "2026-01-01"
  },
  "service_id": "123e4567-e89b-12d3-a456-426614174000",
  "conversation_count": 1,
  "currency": "text",
  "models": [
    {
      "model_id": "text",
      "provider": "text",
      "request_count": 1,
      "calls_per_conversation": 1,
      "uncached_input_tokens": 1,
      "cached_input_tokens": 1,
      "cache_rate": 1,
      "output_tokens": 1,
      "applied_rates": [
        {
          "rate_card_version": "text",
          "effective_from": "2026-01-01T00:00:00.000Z",
          "effective_to": "2026-01-01T00:00:00.000Z",
          "input_per_million": "text",
          "cached_input_per_million": "text",
          "output_per_million": "text"
        }
      ],
      "calculated_cost_usd": "text",
      "cost_share": 1,
      "is_priced": true,
      "unpriced_reason": "text"
    }
  ]
}

Model Object

If any contributing usage for a model is unpriced, its customer model cost is null, including when some of its usage is priced. Consequently, summing visible model costs need not equal the overview's priced subtotal. Model cost shares use fully priced models in the selected scope. Overview service cost shares use the workspace-wide priced subtotal, even when service_id filters the response.

Excluded Usage

Get workspace usage excluded from production-classified totals

get

Return simulation, playground, customer-test, Amigo-internal, and unresolved usage excluded from the customer's production-classified totals. The optional service_id filter is applied before aggregation.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
start_datestring · dateRequired

First usage date to include.

end_datestring · dateRequired

Last usage date to include. It cannot be in the future.

service_idstring · uuid · nullableOptional

Limit the report to usage attributed to this service.

Responses
200

Successful Response

application/json

Usage explicitly excluded from production-classified totals.

workspace_idstring · uuidRequired
get/v1/{workspace_id}/usage-cost/excluded
GET /v1/{workspace_id}/usage-cost/excluded?start_date=2026-01-01&end_date=2026-01-01 HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "period": {
    "start_date": "2026-01-01",
    "end_date": "2026-01-01"
  },
  "classes": [
    {
      "usage_class": "simulation",
      "exclusion_reason": "simulation",
      "conversation_count": 1,
      "request_count": 1,
      "uncached_input_tokens": 1,
      "cached_input_tokens": 1,
      "output_tokens": 1
    }
  ]
}

Inspect simulation, playground, customer-test, Concurrence-internal, and unresolved usage separately from production-classified totals. Exclusion reflects the recorded classification; it does not prove that every production-classified request was customer-operated.

LLM Inference Cost

Get workspace LLM cost

get

Return Amigo-admin-only LLM cost for an inclusive date range from one complete published calculation. Omit group_by for workspace totals and service costs; use group_by=model to include each model's pricing status and applied rate records. The optional service_id filter is applied before aggregation.

Authorizations
AuthorizationstringRequired

API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.

Path parameters
workspace_idstring · uuidRequired
Query parameters
start_datestring · dateRequired

First usage date to include.

end_datestring · dateRequired

Last usage date to include. It cannot be in the future.

service_idstring · uuid · nullableOptional

Limit the report to usage attributed to this service.

group_byconst: model · nullableOptional

Return model costs and applied rates instead of the overview.

Responses
200

Successful Response

application/json
or
get/v1/{workspace_id}/cost
GET /v1/{workspace_id}/cost?start_date=2026-01-01&end_date=2026-01-01 HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "workspace_id": "123e4567-e89b-12d3-a456-426614174000",
  "period": {
    "start_date": "2026-01-01",
    "end_date": "2026-01-01"
  },
  "calculation_run_id": "123e4567-e89b-12d3-a456-426614174000",
  "totals": {
    "calculated_cost_usd": "text",
    "cost_per_conversation_usd": "text",
    "has_unpriced_usage": true,
    "unpriced_tokens": 1
  },
  "services": [
    {
      "service_id": "123e4567-e89b-12d3-a456-426614174000",
      "calculated_cost_usd": "text",
      "cost_share": 1
    }
  ]
}

This is the staff-only report. A workspace administrator role alone does not grant access; a Concurrence administrator identity is required. Omit group_by for production workspace and service costs, or use group_by=model for model pricing status and applied rate records. Unlike the retired interface, it uses the selected date range rather than close_month.

Infrastructure Cost

The former infrastructure endpoint is removed. The current LLM reports do not supply pooled compute/storage allocations, reconcile the full operating bill, or promise a completed monthly close. Coordinate any infrastructure cost review separately with Concurrence.

Response Codes

The embedded contracts define each report's errors. For customer usage-and-cost reads, a disabled workspace capability returns 503; an ineligible caller returns 403. Invalid dates return 400 on /usage-cost/* and 422 on /usage and /cost. The overview's HTTP 200 with data_status: "failed" must also be handled as unavailable data.

On an unavailable result, check workspace enablement and whether a calculation covers the entire period. Retry temporary failures with backoff, and retain the workspace, period, optional service filter, and error code for support. Do not retry an authorization failure with a different credential type unless that credential has the required access.

Notes

These reports are separate from metered customer billing and invoices. Use the applicable billing records and commercial agreement for amounts owed; see Cost and Latency Optimization for deployment planning.

Retired endpoint reference bookmarks

Example Response

The former inference response example is retired. Use the current embedded usage, customer cost, or staff cost contract.

Query Parameters

The former infrastructure close_month query is retired. See Infrastructure Cost.

Response Body

The former infrastructure response is retired. It has no replacement in the LLM reports.

Component Object

Infrastructure allocation components are no longer returned by the removed endpoint.

Response Codes

Use the current report errors; the removed infrastructure route is not an available report.

Example Request

The former infrastructure request is retired. See Infrastructure Cost.

Example Response

The former infrastructure response example is retired. Do not treat LLM usage totals as an infrastructure allocation.

Last updated

Was this helpful?