Retrieve the calibration

GET
/v1/risk/calibration

How often each reason and rule was right over the last 90 days, by the outcomes you reported with feedback, and the reason weights that supports. Nothing changes until you apply them with reason_weights in the settings.

Authorization

bearerAuth
headerAuthorizationBearer <token>

A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.

Header Parameters

Coss-Version?"2026-10-10"

The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.

Value in"2026-10-10"

Response Body

The calibration.

application/json
  1. response

Feedback against the reasons and rules that fired, over the last 90 days. Feedback you give mostly on reviews and blocks over-represents those: read precision as a guide, not a measurement.

object*"risk_calibration"
Value in"risk_calibration"
window_days*integer
assessments*integer

Assessments in the window.

labeled*integer

Of those, with feedback.

reasons*array<>
rules*array<>
import { Coss } from "coss";const coss = new Coss({  apiKey: process.env.COSS_API_KEY,  baseUrl: "https://api.coss.com",});const { data, error } = await coss.risk.calibration();
{  "object": "risk_calibration",  "window_days": 90,  "assessments": 1840,  "labeled": 212,  "reasons": [    {      "code": "ip.hosting_provider",      "fired": 96,      "fraud": 4,      "legitimate": 38,      "precision": 0.095,      "default_weight": 0.25,      "weight": 0.25,      "suggested_weight": 0.16    }  ],  "rules": [    {      "rule": "rskrule_01k7c8m4q2f3e9v6t5r1n0p8yz",      "name": "Disposable email from a data center",      "matched": 31,      "fraud": 12,      "legitimate": 1,      "precision": 0.923    }  ]}