Calibration certificate vs intended use: range, uncertainty and validity

$0.005 USDC per call · Business, finance and compliance · POST /api/v1/calibration-coverage · Id calibration-coverage

Checks whether an instrument's calibration certificate covers an intended measurement, for an agent about to rely on a reading or accept a calibrated device. Three checks: the intended range [min, max] lies inside the calibrated ranges (touching or overlapping ranges are joined); the stated expanded uncertainty of every calibrated range used is no larger than the required uncertainty; the calibration is current on the caller's `asOf` date (due date = validUntil, or calibratedOn plus intervalMonths, clamped to month end) and on `usedOn` when given. Units must be identical (no conversion is attempted). A missing uncertainty when one is required, or no due date, returns unknown. The reference instant is always supplied by the caller. Does not assess traceability, the accreditation of the laboratory or drift between calibrations.

What you get

A calibration that stops at 100 units does not cover a 150-unit reading, and one that expired last month covers nothing. Each condition is checked from the certificate's own numbers.

Call it

Send the JSON body below to https://agents.writerslogic.com/api/v1/calibration-coverage. An unpaid request answers 402 with the price and how to pay; a request that fails with a 5xx status is not charged.

curl -i -X POST https://agents.writerslogic.com/api/v1/calibration-coverage \
  -H 'content-type: application/json' \
  -d '{"certificate":{"unit":"bar","ranges":[{"min":"0","max":"100","uncertainty":"0.05"},{"min":"100","max":"200","uncertainty":"0.15"}],"calibratedOn":"2026-02-28","intervalMonths":12},"use":{"min":"20","max":"150","unit":"bar","requiredUncertainty":"0.2","usedOn":"2026-10-01"},"asOf":"2026-11-04"}'

Input

FieldTypeRequiredDescription
certificateobjectyes
useobjectyes
asOfstringyesThe reference date for validity; required, never defaulted to today.

Example request body

{
  "certificate": {
    "unit": "bar",
    "ranges": [
      {
        "min": "0",
        "max": "100",
        "uncertainty": "0.05"
      },
      {
        "min": "100",
        "max": "200",
        "uncertainty": "0.15"
      }
    ],
    "calibratedOn": "2026-02-28",
    "intervalMonths": 12
  },
  "use": {
    "min": "20",
    "max": "150",
    "unit": "bar",
    "requiredUncertainty": "0.2",
    "usedOn": "2026-10-01"
  },
  "asOf": "2026-11-04"
}

Result

The response is { "data": ..., "_provenance": ... }. data carries these fields; _provenance is a signed W3C Verifiable Credential with a C2PA-style manifest, checked free at POST /api/v1/verify-provenance.

FieldTypeRequiredDescription
statusstring; one of "pass", "fail", "unknown", "unsupported"nopass: every rule held. fail: a rule was violated (see witnesses). unknown: the input lacks the evidence to decide. unsupported: outside what this engine covers. Missing evidence is never a pass.
rangeCoveredbooleanno
uncoveredSegmentsarray<object>no
worstUncertaintystringnoLargest uncertainty among the calibrated ranges that overlap the intended use.
dueDatestringnoDate the calibration lapses (inclusive).
validOnAsOfbooleanno
validOnUsebooleanno
witnessesarray<object>no
versionsobjectnoEvery semantic dependency of this answer (engine, tables and their as-of dates, tokenizer, calendar, rounding profile).
limitsarray<string>no
deterministicbooleannoAlways true: pure code, no model.

Pay and connect

Available through: x402 (USDC on Base), MCP. MCP clients reach it through the money-math-kit package.

Machine-readable