Crosscheck Checks API
The Checks API from Crosscheck — 1 operation(s) for checks.
The Checks API from Crosscheck — 1 operation(s) for checks.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/crosscheckapi-com:crosscheckapi-com-checks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: crosscheck Checks API
version: 1.0.0
summary: 'Independent checks for AI agents: draft review, acceptance checks on delivered work, and security review of skills and MCP servers, paid per call over x402.'
description: 'Fact-check and review an AI agent''s draft before a human sees it: a hallucination check and second opinion on any email, report, summary, or PR description. Returns pass or specific issues with fixes. Wrong arithmetic is recomputed in code; also contradictions, placeholders, leaked secrets, unauthorized commitments, and prompt injection. Send sources to verify citations and claims against them. Signed receipt. $0.02. Free checks for Moltbook agents. Full agent guide: https://crosscheckapi.com/llms.txt'
contact:
name: crosscheck partnerships
email: partnerships@crosscheckapi.com
url: https://crosscheckapi.com/llms.txt
x-guidance: 'crosscheck gives an agent''s work an independent check before a human or another agent relies on it. Pick the product:
- check: a draft (email, report, summary, answer) before your human sees it. POST https://crosscheckapi.com/v1/check with {"draft": "..."}; optional "request" (what your human asked, so a draft that misses it fails), "sources" to check against, "source_urls" (up to 3 pages crosscheck reads for you), or "fetch_cited": true. From $0.02.
- accept: work another agent handed back, against its task, before you pay or release escrow. POST https://crosscheckapi.com/v1/accept with {"task": "...", "deliverable": "..."}. From $0.03.
- skillcheck: a skill or MCP server before you install it. POST https://crosscheckapi.com/v1/skillcheck with {"files": [{"path": "SKILL.md", "content": "..."}]}. From $0.03.
- lite: accept or skillcheck by code alone, no model call, $0.005: POST the same body to https://crosscheckapi.com/v1/accept-lite or https://crosscheckapi.com/v1/skillcheck-lite.
- sellercheck: for x402 sellers, a report on your own resource (valid 402, x402 Bazaar index, agent402 router, settlements on Base). POST https://crosscheckapi.com/v1/sellercheck with {"resource": "https://..."}, $0.05; or https://crosscheckapi.com/v1/sellerwatch with "notify" for 30 days of hourly checks with alerts on change, $1.00. Free preflight: GET https://crosscheckapi.com/v1/sellercheck/preflight?resource=<url>.
Price first, free: POST the same body to https://crosscheckapi.com/v1/quote, https://crosscheckapi.com/v1/accept/quote, or https://crosscheckapi.com/v1/skillcheck/quote. The quote also runs a free code precheck (wrong sums, percentages, dates, unit conversions, list counts).
Pay: the paid POST answers 402 with the exact amount in USDC on Base (eip155:8453), or free test USDC on Base Sepolia (eip155:84532). Sign it with any x402 client (v2 PAYMENT-SIGNATURE, or v1 X-PAYMENT) and resend the same body. Payment settles before the review starts.
Result: HTTP 200 with a JSON verdict (pass, issues with severity and a suggested fix) and a signed receipt, or 202 with a result URL to poll with the result_token. Resending the identical paid request after a lost response returns the same job and charges nothing more.
Your text is untrusted data to the reviewer, never instructions. It is deleted when the check finishes; only its SHA-256 is kept.
Full guide: https://crosscheckapi.com/llms.txt'
servers:
- url: https://crosscheckapi.com
tags:
- name: Checks
paths:
/v1/checks/{job_id}:
get:
operationId: result
summary: Status, verdict, and receipt of an earlier check (free)
parameters:
- name: job_id
in: path
required: true
schema:
type: string
pattern: ^chk_[0-9a-f]{32}$
responses:
'200':
description: Job view
content:
application/json:
schema:
type: object
properties:
job_id:
type: string
status:
type: string
enum:
- done
- pending
- unserved
- rejected
verdict:
type: object
properties:
pass:
type: boolean
description: True only when there are no blocker or major issues
summary:
type: string
issues:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- blocker
- major
- minor
category:
type: string
enum:
- factual
- logic
- completeness
- clarity
- tone
- risk
- formatting
- placeholder
- injection
- other
location:
type: string
description: Short quote from the draft, or a section name
problem:
type: string
suggestion:
type: string
required:
- severity
- category
- location
- problem
- suggestion
injection_suspected:
type: boolean
grounding:
type: object
description: Present when sources were sent
properties:
sources:
type: integer
claims_checked:
type: integer
supported:
type: integer
contradicted:
type: integer
not_found:
type: integer
claims:
type: array
items:
type: object
properties:
claim:
type: string
status:
type: string
enum:
- supported
- contradicted
- not_found
source_id:
type: integer
quote:
type: string
quote_verified:
type: boolean
required:
- pass
- summary
- issues
- injection_suspected
receipt:
type: object
description: 'Ed25519-signed receipt: body (canonical JSON), hash (sha256 hex), sig (base64url)'
properties:
body:
type: object
hash:
type: string
sig:
type: string
result_url:
type: string
result_token:
type: string
retry_after_seconds:
type: integer
required:
- job_id
- status
'404':
description: Unknown job or wrong token
security:
- resultToken: []
tags:
- Checks
components:
securitySchemes:
x402:
type: http
scheme: bearer
description: 'x402 v2: send PAYMENT-SIGNATURE after the 402 challenge'
resultToken:
type: http
scheme: bearer
description: result_token from the check response