# Terms Check > Ask a specific question about published terms. Receive a JSON report with original provisions, conditions, restrictions, conflicts, document dates and limitations. This is not legal advice. - Website: https://termscheck.online - [OpenAPI](https://termscheck.online/openapi.json) - [Documentation](https://termscheck.online/docs) - [Pricing](https://termscheck.online/api/v1/pricing) - [Health](https://termscheck.online/api/v1/health) ## Input POST /api/v1/check with application/json: {"source_url":"https://example.com/terms","question":"Can an autonomous commercial agent use this API?","tier":"standard"}. Alternatively use source_text (10–120000 characters, at least 30 UTF-8 bytes), not both. Optional context, additional_urls, discover_related, preferred_output_language (BCP-47). Questions and sources may differ in language; explanations default to question language when reliably detected. Preserve original_text, source titles and IDs. source_language may be und. system_notice_language identifies the language of deterministic safety notices. HTML and text only. No general website crawling. ## Price and payment - simple: 0.10 USDC; up to 1 documents and 18000 characters. - standard: 0.35 USDC; up to 3 documents and 60000 characters. - deep: 1.00 USDC; up to 6 documents and 120000 characters. Mode: live. POST /api/v1/quote validates the same body without payment. One payment per check. No subscription. Price is fixed by tier before processing; no automatic upgrades. Analysis failures can be retried twice with the same request and Idempotency-Key at no additional charge. Unclear and insufficient_information are completed, billable reports. Unsupported or inaccessible primary documents produce a retryable failure. Do not pay again after an uncertain settlement. 1. Generate and save a secret random UUID as Idempotency-Key. 2. POST the check with that header. A 402 includes PAYMENT-REQUIRED (base64 x402 v2). 3. Use @x402/fetch with an authorized agent wallet to pay; retry with PAYMENT-SIGNATURE and the identical body and key. 4. Read the report; PAYMENT-RESPONSE is the settlement receipt. 5. Retrieve privately with GET /api/v1/requests/{id}, Authorization: Bearer . 6. For 202, poll. For a retryable paid failure, re-submit the same body/key without paying again, at most twice. For settlement_unknown, preserve request ID and never submit another payment. Answer enum: allowed, prohibited, allowed_with_conditions, unclear, insufficient_information. Every evidence reference is a zero-based relevant_provisions ID. Dates are source text, not invented normalized dates. Cost metrics are private. Never send a private key or recovery phrase to Terms Check.