Skip to main content
POST
Request a compliance attestation for a user. The API evaluates the user against your configured policy and returns a signed attestation.

Request Parameters

Use verification_hash for offchain integration (Phase 1). Use to with your contract address for onchain integration (Phase 2).

Supported Chains


Use verification_hash to evaluate compliance without a deployed contract.

Request

cURL

Response (Compliant)

Response (Non-Compliant)

Some policies return a reason object when the user is not compliant, providing a machine-readable code and a human-readable message explaining why the evaluation failed. Both the code and message values are fully customizable when authoring a policy.

Response Fields

Authorizations

x-api-key
string
header
required

Body

application/json

Transaction details to evaluate for policy compliance and to issue a chain-appropriate attestation.

from
string
required

End user's wallet address initiating the transaction. This field is used for policy enforcement and compliance checks.

chain
string
required

Target blockchain name. Examples: ethereum, sepolia, base, solana.

verification_hash
string

Your project identifier from the dashboard. Required for interface-only integration. Use this OR 'to', not both.

to
string

Your deployed contract or program address. Required for onchain enforcement. Use this OR 'verification_hash', not both.

data
string

Encoded transaction payload. Required when using PredicateClient for function call validation.

msg_value
string

Native token amount (wei for EVM, lamports for Solana). Required when using PredicateClient.

user_ip
string

End-user IP address for geolocation-based policy evaluation.

Response

200 - application/json

Successfully evaluated and returned attestation

Evaluation result and attestation payload to embed onchain.

policy_id
string

Identifier of the evaluated policy.

policy_name
string

Human-readable display name of the policy as configured in the dashboard.

verification_hash
string

Unique value used to prove contract ownership by setting it as the onchain policyID during onboarding.

is_compliant
boolean

True if the request satisfied the configured policy.

attestation
object

Chain‑appropriate attestation fields for onchain verification.

reason
object

Present on non-compliant responses when the policy provides a reason. Not included for compliant responses.