---
title: "Compare a supplied USD Treasury return with a matching benchmark"
method: POST
path: "/v1/rwa/benchmark"
tags: ["treasury", "benchmark", "comparison", "usd"]
---

# Compare a supplied USD Treasury return with a matching benchmark

`POST /v1/rwa/benchmark`

## Request

- Base URL: `https://api.402rates.com`
- URL: `https://api.402rates.com/v1/rwa/benchmark`
- Auth: none declared

Free arithmetic comparison of a saved measured USD instrument response and caller-supplied US Treasury total-return index levels with identical dates. Simple actual/365; 28-32 days. Input provenance is not verified. Spot rates, unmatched windows, quoted yields and other currencies are not comparable. The spread does not establish fees or causality.

## Request body

- object
  - `snapshot` object: Saved single-instrument response, schema_version 0.5.0, with a measured USD return.
  - `benchmark` object: kind us_treasury_total_return_index, currency USD, start_date/end_date, positive start_value/end_value, HTTPS source_url and retrieved_at date. Caller declarations only.

## Response `200`

Successful response

- object
  - `report_version` '1.0.0', required
  - `status` string, required
  - `threshold_bps` number
  - `data` object[]

## Other responses

- `400`: Invalid input
- `405`: POST required
- `413`: Input exceeds 196608 bytes
- `415`: application/json required
- `429`: Free request limit reached

---

[API](https://skmtc.dev/402rates/apis/402rates-com.md) · [All operations](https://skmtc.dev/402rates/apis/402rates-com/llms.txt) · [OpenAPI document](https://skmtc.dev/402rates/apis/402rates-com/revisions/483a9d0a3f0b?raw)
