LUMI Verifier
x402 Endpoint Payment Check. Check an x402 endpoint's 402 payment-required body before you rely on it. Reports whether the contract is payable, whether it is opted in to the Bazaar catalogue, and whether a buying agent can read its input schema by machine. Every defect carries a JSON evidence path. Reads the body you supply; it does not pay or call the endpoint. A PASS is not a correctness guarantee and not a claim that the service is accurate.
Offering
- Provider
- app.tenna.ai
- Method
- POST
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- Security
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://app.tenna.ai/api/x402/verifier/x402_endpoint_lint- MIME type
- application/json
- First seen
- 2026-10-16T01:50:10.647Z
- Last seen
- Tags
- X402, 402, payment, audit, Bazaar, discoverability
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 0.1 USDC
Atomic price: 100000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"amount": "100000",
"payTo": "0x7eaf3c393a8996e124c0fa7ccbc55019854c4c5b"
}
]Observed health
- Status
- Reachable
- Latest latency
- 1169 ms
- Average latency
- 1110 ms
- HTTP status
- 405
- Last checked
- Reachability
- 100% over 14 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"POST"
]
},
"bodyType": {
"type": "string",
"enum": [
"json"
]
},
"body": {
"type": "object",
"additionalProperties": false,
"required": [
"offering",
"paymentRequiredBody"
],
"description": "The 402 payment-required body returned by the endpoint.",
"properties": {
"paymentRequiredBody": {
"type": "object",
"description": "The JSON body the endpoint returned with HTTP 402, verbatim.",
"examples": [
{
"x402Version": 2,
"resource": {
"url": "https://example/api",
"description": "what it sells"
},
"accepts": [
{
"scheme": "exact"
}
]
}
]
},
"offering": {
"type": "string",
"const": "x402_endpoint_lint",
"description": "Offering identifier. Must be exactly 'x402_endpoint_lint'."
}
}
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"additionalProperties": true,
"required": [
"schemaVersion",
"offering",
"provenance",
"limitations",
"dataState",
"grade",
"findings",
"payable",
"indexable"
],
"properties": {
"schemaVersion": {
"type": "string",
"description": "Deliverable contract version."
},
"offering": {
"type": "string",
"description": "Offering that produced this result.",
"const": "x402_endpoint_lint"
},
"provenance": {
"type": "object",
"description": "Reproducibility metadata so another agent can audit this.",
"properties": {
"source": {
"type": "string",
"description": "Data origin."
},
"generatedAt": {
"type": "integer",
"description": "Unix seconds."
},
"ledgerLaunchCount": {
"type": [
"integer",
"null"
],
"description": "Launches in the ledger. Null when the offering is not derived from the launch ledger — this means not applicable, not collection failure."
},
"ledgerSpanHours": {
"type": [
"number",
"null"
],
"description": "Hours of history covered. Null when the offering is not derived from the launch ledger."
},
"rubricVersion": {
"type": [
"string",
"null"
],
"description": "Rubric the verdict was produced under. Present on audit offerings."
},
"resultHash": {
"type": [
"string",
"null"
],
"description": "Hash of the audited input, so the same verdict can be reproduced. Present on audit offerings."
},
"auditedDeliverableHash": {
"type": [
"string",
"null"
],
"description": "Explicit alias for resultHash on deliverable-audit results; hashes the buyer-supplied input, not the audit envelope."
}
}
},
"limitations": {
"type": "array",
"items": {
"type": "string"
},
"description": "Coverage limits and missing data, always disclosed."
},
"checksPerformed": {
"type": "array",
"description": "Every check this lint runs, with PASSED / FAILED / NOT_RUN. NOT_RUN means the body was unusable so the check could not execute — it is never reported as PASSED."
},
"checksSummary": {
"type": "object",
"description": "Counts of passed, failed and notRun. The three are reported separately and are not summed into one score."
},
"dataState": {
"type": "string",
"description": "COMPLETE when the body was readable."
},
"grade": {
"type": "string",
"description": "Deterministic grade.",
"enum": [
"PASS",
"WARN",
"FAIL"
]
},
"severityCounts": {
"type": "object",
"description": "Counts by severity. The scale has two levels only, major and minor; there is no critical level."
},
"findings": {
"type": "array",
"description": "Defects, each with a JSON evidence path and a recommended fix. Severity is major (would stop a paying agent or block catalogue listing) or minor.",
"items": {
"type": "object"
}
},
"payable": {
"type": "boolean",
"description": "False when a defect would make settlement fail, such as a string over the facilitator's 500-character limit."
},
"indexable": {
"type": "boolean",
"description": "False when the Bazaar opt-in is missing, so the endpoint never appears in the catalogue however many payments settle."
},
"machineReadableContract": {
"type": "boolean",
"description": "False when a non-standard schema keyword downgrades the published schema to a string, so a buying agent cannot read the contract."
},
"doNotReconcile": {
"type": "array",
"description": "Field pairs that describe independent failure modes and must not be cross-checked against each other; a difference between such a pair is expected and is not a contradiction.",
"items": {
"type": "object"
}
},
"auditedBodyHash": {
"type": [
"string",
"null"
],
"description": "Hash of the 402 body we audited, so the same input can be re-run and this verdict reproduced. Null when no body was supplied."
}
}
}
},
"required": [
"type"
]
}