Skip to main content

Overview

The CF Benchmarks REST passthrough lets you query the CF Benchmarks REST API using your existing Kalshi API credentials. Requests are authenticated the same way as any other Kalshi Trade API call, so you do not need a separate CF Benchmarks API key. Send a request to the /cfbenchmarks endpoint and the path and query string are forwarded to CF Benchmarks. The upstream response is returned wrapped in a standard Kalshi data envelope.

Access

The passthrough requires an authenticated Kalshi Trade API request, and it is available only to accounts with the appropriate entitlement. If you receive an authorization error and believe you should have access, contact Kalshi.

Base URL and Path Mapping

Use the production Trade API base URL (see API Environments for all hosts and the demo environment):
https://external-api.kalshi.com/trade-api/v2
Everything after /cfbenchmarks/, including the query string, is forwarded to the CF Benchmarks REST API at https://www.cfbenchmarks.com/api/v1/.
Kalshi requestForwarded to
GET /trade-api/v2/cfbenchmarks/values?id=BRTIhttps://www.cfbenchmarks.com/api/v1/values?id=BRTI

Authentication

Authenticate with standard Kalshi API key request signing. See API Keys and Quick Start: Authenticated Requests for the full signing flow. As with all Trade API endpoints, sign the request path from the API root without the query string:
/trade-api/v2/cfbenchmarks/values

Example

curl "https://external-api.kalshi.com/trade-api/v2/cfbenchmarks/values?id=BRTI" \
  -H "KALSHI-ACCESS-KEY: <your-access-key>" \
  -H "KALSHI-ACCESS-SIGNATURE: <request-signature>" \
  -H "KALSHI-ACCESS-TIMESTAMP: <timestamp-ms>"
The raw CF Benchmarks payload is returned under the data field:
{
  "data": {
    "serverTime": "2019-08-13T23:30:53.992Z",
    "payload": {}
  }
}

Available Endpoints

The passthrough forwards any path and query parameters supported by CF Benchmarks. For the list of available endpoints, supported parameters, and index identifiers (such as BRTI), refer to the official CF Benchmarks API documentation.

Error Handling

The passthrough maps upstream conditions to standard Kalshi error responses:
ConditionKalshi response
Resource not found upstream404 not_found
Upstream rate limit exceeded429 too_many_requests
Upstream authorization failure, server error, or timeout503 service_unavailable
Other upstream client errors400 bad_request (with upstream detail)