Build with TruthPal.

The evidence layer for AI agents. Give an agent a claim and a source. TruthPal checks whether the evidence supports it, contradicts it, or simply isn't enough.

HTTP APIJSONx402USDCBase

Quickstart

The core API is deliberately simple: submit a claim and the public URL of the source you want checked.

POSThttps://api.thetruthpal.com/v1/verify
Request body
{
  "claim": "The source supports this statement.",
  "source_url": "https://example.com/article"
}
Important: TruthPal evaluates the supplied source. It does not use outside world knowledge to fill gaps in the evidence.

Payments

TruthPal uses x402 for machine-to-machine payments. A client that supports x402 can pay for a verification automatically when the API returns 402 Payment Required.

01 / REQUESTAgent calls /v1/verify
02 / 402TruthPal returns payment requirements
03 / PAYAgent pays $0.01 USDC
04 / RESULTTruthPal returns the verification

Current network: Base Sepolia testnet.

Production: Base mainnet will be used for live payments when TruthPal moves to production.

POST /v1/verify

Checks whether a supplied public source establishes a supplied claim.

POST/v1/verify

Request

FieldTypeRequiredDescription
claimstringYesThe factual statement you want the source checked against.
source_urlstringYesA public HTTP or HTTPS URL containing the evidence.
Example request
{
  "claim": "The source supports this statement.",
  "source_url": "https://example.com/article"
}

Response

200 OK
{
  "verdict": "supported",
  "confidence": 0.94,
  "supporting_evidence": [
    "The source explicitly states..."
  ],
  "contradicting_evidence": [],
  "reasoning": "The source directly establishes the claim.",
  "source_freshness": "current"
}
FieldTypeDescription
verdictstringsupported, contradicted, or uncertain.
confidencenumberModel confidence in the verification result, from 0 to 1.
supporting_evidencestring[]Relevant evidence supporting the claim.
contradicting_evidencestring[]Relevant evidence that conflicts with the claim.
reasoningstringA concise explanation of how the evidence leads to the verdict.
source_freshnessstringcurrent, dated, or unknown.

Verdicts

TruthPal deliberately has three outcomes. Uncertain is a first-class result. If the source does not establish the claim, TruthPal should say so rather than guess.

SUPPORTEDEvidence in the supplied source directly or logically establishes the claim.
CONTRADICTEDEvidence in the supplied source conflicts with the claim.
UNCERTAINThe source does not address the claim sufficiently, or establishing it would require a significant assumption.

Source freshness

TruthPal reports the apparent freshness of the supplied source as part of the verification result.

ValueMeaning
currentThe source appears current based on available source information.
datedThe source contains indications that it is from an earlier date.
unknownThere is not enough information to determine freshness.

Errors

TruthPal uses standard HTTP status codes to make failures straightforward for agents to handle.

StatusMeaning
200Verification completed successfully.
400The request is invalid, for example because required input is missing or malformed.
402Payment is required before the verification can be completed.
500An unexpected error occurred while processing the request.
Building an agent? Treat uncertain as a valid verification result, not as an API failure. Treat HTTP 402 as a payment flow, not as a failed verification.

Ready to build?

TruthPal is designed to be a small, composable piece of infrastructure inside an agent's workflow.

Back to TruthPal โ†’