Countersignatory
One screened human answers an approval, verification or judgment task: approve or reject, true or false, or a label, with a reason and the responder's disclosed identity. $1.25 at a 24-hour deadline. Answered by hand within the deadline or refunded in full automatically. Refused: CAPTCHAs, logins, third-party contact, medical, legal or financial advice.
Offering
- Provider
- countersignatory.com
- Method
- POST
- Offering type
- Api Endpoint
- Transport type
- http
- Category
- General Utilities
- Delivery
- Not provided
- Pricing model
- Not provided
- x402 version
- 2
Endpoint context
- URL
https://countersignatory.com/v1/x402/check- MIME type
- Not provided
- First seen
- 2026-10-16T01:50:38.788Z
- Last seen
- Tags
- human-in-the-loop, approval, Verification, judgment
Payment pricing
x402 payment terms are the authoritative price for calling this endpoint.
- Payment option 1
- 1.25 USDC
Atomic price: 1250000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "1250000",
"payTo": "0xBA753EbbD6094bF05964171eAaa6393f31641381"
}
]Observed health
- Status
- Healthy
- Latest latency
- 158 ms
- Average latency
- 342 ms
- HTTP status
- 204
- Last checked
- Reachability
- 100% over 15 checks
Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.
Input schema
{
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"oneOf": [
{
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"action": {
"description": "The action the responder is asked to approve or reject.",
"maxLength": 2000,
"minLength": 1,
"type": "string"
},
"context": {
"description": "What the responder needs to know to decide.",
"maxLength": 20000,
"minLength": 1,
"type": "string"
},
"policy": {
"description": "The policy the action should be judged against.",
"maxLength": 20000,
"type": "string"
},
"urls": {
"description": "Up to 5 pages the responder may open.",
"items": {
"description": "An http or https URL.",
"maxLength": 2000,
"pattern": "^https?://",
"type": "string"
},
"maxItems": 5,
"type": "array"
}
},
"required": [
"action",
"context"
],
"type": "object"
},
"template": {
"const": "approval"
}
}
},
{
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"claim": {
"description": "The statement to check against the evidence.",
"maxLength": 2000,
"minLength": 1,
"type": "string"
},
"evidence": {
"description": "A URL, or an uploaded PNG, JPEG, GIF, WebP or PDF of up to 10 MB before base64.",
"oneOf": [
{
"additionalProperties": false,
"properties": {
"url": {
"description": "An http or https URL.",
"maxLength": 2000,
"pattern": "^https?://",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"content_type": {
"enum": [
"image/png",
"image/jpeg",
"image/gif",
"image/webp",
"application/pdf"
],
"type": "string"
},
"data_base64": {
"minLength": 1,
"type": "string"
},
"filename": {
"maxLength": 200,
"type": "string"
}
},
"required": [
"data_base64",
"content_type"
],
"type": "object"
}
]
},
"instructions": {
"maxLength": 5000,
"type": "string"
}
},
"required": [
"claim",
"evidence"
],
"type": "object"
},
"template": {
"const": "verification"
}
}
},
{
"properties": {
"input": {
"additionalProperties": false,
"description": "Send exactly one of item or pair. An item needs labels. A pair without labels is judged A or B.",
"oneOf": [
{
"required": [
"item",
"labels"
]
},
{
"required": [
"pair"
]
}
],
"properties": {
"item": {
"description": "The one thing to label.",
"maxLength": 20000,
"minLength": 1,
"type": "string"
},
"labels": {
"description": "The 2 to 10 labels to choose from.",
"items": {
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"maxItems": 10,
"minItems": 2,
"type": "array",
"uniqueItems": true
},
"pair": {
"description": "Two things to compare.",
"items": {
"maxLength": 10000,
"minLength": 1,
"type": "string"
},
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"rubric": {
"maxLength": 5000,
"type": "string"
}
},
"type": "object"
},
"template": {
"const": "judgment"
}
}
}
],
"properties": {
"input": {
"description": "The task, in the shape its template takes.",
"type": "object"
},
"sla_seconds": {
"default": 86400,
"description": "Seconds from payment to answer, at most 86400. 86400, the default, is the base price of $1.25, and a shorter deadline costs more: the 402 states the price for the deadline you send. While the founder answers alone the minimum is 3600, and an order placed between 23:00 and 07:00 Europe/London needs a deadline at or after 08:00 there. Not answered in time is refunded in full.",
"maximum": 86400,
"minimum": 1,
"type": "integer"
},
"template": {
"description": "approval answers approve or reject. verification answers true, false or cannot_tell. judgment answers one label.",
"enum": [
"approval",
"verification",
"judgment"
],
"type": "string"
},
"webhook_url": {
"description": "An https URL that receives the order on every status change.",
"maxLength": 2000,
"pattern": "^https://",
"type": "string"
}
},
"required": [
"template",
"input"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
}Output schema
{
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}