78trust / 100

Check

by Countersignatory in Security & trust

x402 APIPassing, checked 7 min ago

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.

POST https://countersignatory.com/v1/x402/check

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
182 ms typical, 368 ms slowest 5%
Last check
7 min ago
Next check
in 21 min

How to call it

# See the payment challenge (nothing is charged)
curl -i -X POST "https://countersignatory.com/v1/x402/check" \
  -H "content-type: application/json" \
  -d '{"input":{"action":"Send the refund of $40 to customer 1182","context":"The customer reported the item arrived broken and attached a photo. Policy allows refunds under $50 without a return."},"sla_seconds":86400,"template":"approval"}'
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fcountersignatory.com%2Fv1%2Fx402%2Fcheck
const res = await pay("https://countersignatory.com/v1/x402/check", {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: JSON.stringify({"input":{"action":"Send the refund of $40 to customer 1182","context":"The customer reported the item arrived broken and attached a photo. Policy allows refunds under $50 without a return."},"sla_seconds":86400,"template":"approval"}),
});
console.log(await res.json());

Example input

{
  "input": {
    "action": "Send the refund of $40 to customer 1182",
    "context": "The customer reported the item arrived broken and attached a photo. Policy allows refunds under $50 without a return."
  },
  "sla_seconds": 86400,
  "template": "approval"
}

Example output

{
  "answer_url": "https://countersignatory.com/v1/orders/ord_4066de73e09a4ef597802aa350ada30b",
  "created_at": "2026-10-07T22:07:09.547Z",
  "currency": "USD",
  "deadline": "2026-10-08T22:07:11.748Z",
  "fulfilment": "Answered by hand by a named group. Every answer names its responder and how they are disclosed.",
  "id": "ord_4066de73e09a4ef597802aa350ada30b",
  "market": "check.general",
  "next": "GET answer_url until status is answered, refused, refunded or expired. The answer carries value, reason and responder: { id, disclosed_as }.",
  "paid_at": "2026-10-07T22:07:11.748Z",
  "payment": {
    "network": "eip155:8453",
    "rail": "x402",
    "transaction": "0x4adebdb082c2d6eda39f3869eab87a0b31490d096e87f2a0751c7a168bedfd98"
  },
  "price": 1.25,
  "sla_seconds": 86400,
  "status": "paid",
  "template": "approval"
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
7 min agoPassed402170 ms$1.25
4 h agoPassed402165 ms$1.25
7 h agoPassed402180 ms$1.25
11 h agoPassed402368 ms$1.25
14 h agoPassed402182 ms$1.25
18 h agoPassed4021.2 s$1.25
22 h agoPassed402135 ms$1.25
25 h agoPassed402235 ms$1.25
29 h agoPassed402157 ms$1.25
32 h agoPassed402224 ms$1.25
38 h agoPassed402244 ms$1.25