---
title: "Get Speed Receipt"
method: GET
path: "/api/public/speed-receipt"
tags: ["public-bench"]
---

# Get Speed Receipt

`GET /api/public/speed-receipt`

## Request

- Base URL: `https://api.ruzora.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ruzora.com/api/public/speed-receipt`
- Auth: none declared

Read the nightly-computed receipt.

A read, never a computation: the number must not move between the page
a buyer reads and the email they forward five minutes later. The
nightly tick (``/api/internal/cron/speed-receipt-tick``) is the only
writer.

## Response `200`

Successful Response

- SpeedReceiptOut: The Epic 5.7 receipt: "median time to shortlist over the last 30 days". ``eligible`` is the whole contract. It is false whenever the sample is too small OR the measured median does not beat the published promise, and in that case ``median_hours`` is ``None`` — withheld, not merely unflagged, so a renderer cannot reach past the flag and print a number it was not cleared to print. The consumer falls back to the plain 72-hour guarantee copy, which is true either way. An absent stat row (never computed) is reported identically to an ineligible one, because the page behaves identically.
  - `eligible` boolean, required
  - `median_hours` integer, nullable
  - `sample_size` integer, required
  - `window_days` integer, required
  - `promise_hours` integer, required

---

[API](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api.md) · [All operations](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api/revisions/f9b8223f3ac4?raw)
