API Workflow

The Predicate API evaluates transactions against your configured policies and returns cryptographic attestations for onchain verification.
  1. Submit transaction details to /v1/task
  2. Receive a signed PredicateMessage if compliant
  3. Embed the attestation in your transaction calldata
  4. Your smart contract verifies the attestation using PredicateClient.sol

Request Format

{
  "from": "0x1234567890123456789012345678901234567890",
  "to": "0xabcdef1234567890123456789012345678901234",
  "data": "0x...",
  "msg_value": "0",
  "chain_id": 1
}

Response Format

{
  "is_compliant": true,
  "signers": ["0xDAc74b6f9B3609E914c924eB87Adff87A30fcDf6"],
  "signature": ["0x35e593a668ec29bab179b2b0a7f83199c2ff58144..."],
  "expiry_block": 1752704559,
  "task_id": "9b1446bd-31d8-42d7-8890-61e5130d73b4"
}

Authentication

Include your API key in the request header:
x-api-key: YOUR_API_KEY
Generate keys in the Predicate Dashboard.

Base URLs

  • Production: https://api.predicate.io/v1
  • Staging: https://staging.api.predicate.io/v1