Duplicate check
duplicate_checkBefore you pay the same x402 request again: flags a repeat of resource + payee + amount + nonce inside a time window (default 600 seconds, clamped from 60 to 86400). EIP-712 signed (domain APEX DuplicateGuard, type DuplicateVerdict) by the payee attester. Verdicts: FRESH, DUPLICATE, COULD_NOT_RECORD. This is not a permission to pay, and PayGuard does not read this signature. One check is $0.003 after 5 free a day; up to 20 is $0.01 (pass items). A batch of 21 is refused and nothing is recorded. Free doors: /check/duplicate and /check/duplicate/batch. The official client hook runs before the EIP-3009 nonce exists, so pass the nonce you will sign. Live poisoning counts stay on arc_poison_stats.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "duplicate_check"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| items | No | JSON array of up to 20 checks, each with resource, payee, amount and nonce. When this is set, the single fields are not used. | |
| nonce | No | EIP-3009 nonce: 0x and 64 hex characters. The official x402 client creates this after onBeforePaymentCreation, so pass the nonce you will sign. | |
| payee | No | 0x address that would be paid | |
| amount | No | Atomic USDC (6 decimals, 3000 means $0.003) or a decimal like 0.003. A bare 1 is 1 atomic unit, not 1 USDC. | |
| window | No | Seconds. Default 600. Clamped from 60 to 86400. | |
| payment | No | a signed x402 payment (base64, as in PAYMENT-SIGNATURE). Pass it here and the purchase completes inside this tool call. | |
| resource | No | Exact https resource URL the payment would buy |