witness_register_terms
Register what a service should deliver
Use this when about to depend on a public HTTPS service and you want neutral evidence of what it delivers. Pass `service_url`; `checks` default to HTTP 200 and a non-empty body (also JSON keys, latency, size, regex). Returns a `terms_id`; then call witness_delivery. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parameterschecksseller_refservice_urlrequiredresearch_consentdata_classification
witness_delivery
Did the service deliver?
Use this when asked whether a service delivered what was agreed ("did the supplier deliver?"). Pass the `terms_id` from witness_register_terms and mode PUBLIC_REPLAY (GAIP fetches it) or BUYER_SUBMITTED. Returns PASS / FAIL / UNKNOWN per check, what changed since last time, and a receipt. Free, read-only, no account; inputs must be public and non-personal.
Parametersbodymoderequiredterms_idrequiredsyntheticepisode_idbody_sha256http_statuscontent_typeresearch_consentcontinuity_handledata_classificationindependent_operator_id
gaip_receipt_export
Export a GAIP receipt
Use this when you need a GAIP receipt in another format. Pass `receipt_id` and `format`: x402 (attestation style), erc8004 (validation-response shape) or vc (W3C-VC-like JSON-LD). Ed25519-signed when the runtime key is available; hash chain and Merkle proof; no on-chain write. Free, read-only, no account; inputs must be public and non-personal.
Parametersformatrequiredreceipt_idrequired
verify_gaip_receipt
Verify a GAIP receipt
Use this when you hold a GAIP receipt_id and want to confirm it ("is this receipt genuine?"). Returns the retained record, hash chain and Merkle inclusion proof. Integrity only: it does not make the underlying claim true. Free, read-only, no account; inputs must be public and non-personal.
Parameterssyntheticepisode_idreceipt_idrequiredcontinuity_handledata_classificationindependent_operator_id
witness_dispute_bundle
Export a delivery evidence bundle
Use this when a witnessed delivery failed and you must hand the facts to the other party or a resolver. Pass `terms_id` or a delivery `receipt_id`. Returns one hash-stamped bundle: terms, every check, receipts, timeline, summary. No judgement of who is right. Free, read-only, no account; inputs must be public and non-personal.
Parametersterms_idreceipt_idreceipt_formatcontinuity_handle
gaip_watch_register
Watch an agent or MCP server for changes
Use this when asked to keep an eye on an agent or MCP server ("tell me if it changes or goes down"). Pass the `continuity_handle` from any GAIP result, `kind` and `target_url`. GAIP re-checks every 24 hours (3 free watches), receipts each change and can call your webhook. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parametersslakindrequiredterms_idtarget_urlwebhook_urlinterval_hourscontinuity_handlerequireddata_classification
gaip_watch_list
List my watches
Use this when asked which agents or services you are watching. Pass your `continuity_handle`. Returns each watch's kind, target, last verdict, last and next check and webhook endpoint (never the secret). Free, read-only, no account; inputs must be public and non-personal.
Parameterscontinuity_handlerequired
gaip_watch_remove
Remove a watch
Use this when asked to stop watching an agent or service. Pass your `continuity_handle` and the `watch_id`. Its stored events are deleted; retained receipts stay verifiable. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parameterswatch_idrequiredcontinuity_handlerequired
gaip_watch_events
Read watch change events
Use this when asked what changed on a watched agent or service. Pass your `continuity_handle` and optionally a `watch_id`. Returns recent change events: verdict before and after, a change summary, the receipt and webhook delivery status. Free, read-only, no account; inputs must be public and non-personal.
Parameterslimitwatch_idcontinuity_handlerequired
gaip_citation_witness
Verify citations and quotes
Use this when asked to verify citations or quotes ("do these sources really say this?"). Pass `citations` (1-20 {url, quote}). GAIP fetches each page once (robots.txt respected); returns QUOTE_FOUND / QUOTE_NOT_FOUND_IN_FETCHED_VERSION / SOURCE_UNREACHABLE..., an excerpt and a receipt. Free, read-only, no account; inputs must be public and non-personal.
Parameterscitationsrequireddata_classification
gaip_check_sar_receipt
Check an x402 SAR receipt
Use this when handed an x402 SAR-shaped receipt (draft proposal shape; may change). Pass `sar_receipt`, optionally the issuer's `public_key`. Returns missing fields, whether receipt_id matches the core and whether the signature checks out against that key. Free, read-only, no account; inputs must be public and non-personal.
Parameterspublic_keysar_receiptrequired
witness_accept_terms
Accept registered terms (the other party)
Use this when you are the other party to terms a buyer registered. Pass the `terms_id`, your own `continuity_handle` and `business_purpose_statement` true (businesses only); the buyer confirms it with the `agreement_id`. Returns an `agreement_id` naming both parties. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parametersterms_idrequiredagreement_idfinding_modeacceptance_ruleseller_key_proofconsumer_contractcontinuity_handleagreement_cancelleddata_classificationmandate_check_receiptbusiness_purpose_statement
witness_finding
Was the agreed rule met? (signed finding)
Use this when deliveries exist for an agreement and you want GAIP's signed finding. Pass the `agreement_id` and your `continuity_handle`. Returns MET, NOT_MET or INDETERMINATE on the agreed rule with the records relied on. Evidence only; no sum of money. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parametersagreement_idrequiredcontinuity_handledata_classification
witness_signoff
Record a role's decision on a proposal (sign-off)
Use this when a role (APPROVER, REVIEWER, OWNER, OPERATOR or a hashed role_id) decided on an agent's proposal. Pass `proposal_sha256`, `decision` (APPROVED, REFUSED, CHANGED), optionally `agreement_id`. Returns a chained, signed entry of the role's decision, never GAIP's. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parametersrolerole_iddecisionrequiredagent_urlagreement_idreason_sha256proposal_sha256requiredcontinuity_handledata_classification
assurance_prepare
Prepare a buyer-side delivery check
Use this when you, the buyer, chose a public service and want its delivery checked end to end. Pass `service_url`, `checks` and explicit_read_only_consent=true. GAIP preflights it and records your checks; returns a `terms_id` for assurance_complete. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parameterschecksrequiredepisode_idtask_classservice_urlrequiredcounterparty_iddata_classificationexplicit_read_only_consentrequired
assurance_complete
Complete a buyer-side delivery check
Use this when finishing a Buyer Assurance check. Pass the `terms_id` from assurance_prepare and mode PUBLIC_REPLAY (GAIP replays the service) or BUYER_SUBMITTED. Returns PASS / FAIL / UNKNOWN per check and a delivery receipt. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parametersbodymoderequiredterms_idrequiredbody_sha256http_statuscontent_typedata_classification
assurance_verify
Verify a Buyer Assurance receipt
Use this when you hold a Buyer Assurance terms or delivery receipt_id and want to confirm it. Returns the retained record and its integrity proof (integrity only). Free, read-only, no account; inputs must be public and non-personal.
Parametersreceipt_idrequired
gaip_verify_supplier_claims
Verify an agent's or supplier's claims
Use this to check what an agent, API or supplier claims. Pass `claims` (each with an `id`; add `check_url` and GAIP tests it now), your `observations` and `metadata`. Returns per claim what GAIP saw, what you reported and whether they agree. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parametersclaimsrequiredmetadatarequiredprotocolsyntheticepisode_idtask_classobservationscounterparty_idcontinuity_handledata_classificationindependent_operator_id
inspect_counterparty_evidence
What evidence exists about this agent?
Use this when asked what evidence exists about an agent before delegating to it. Pass its `counterparty_id` and any `observations`. Returns task-specific evidence coverage, conflicts, gaps and GAIP's own earlier checks of it, with a receipt. Never a trust score or recommendation. Free, read-only, no account; inputs must be public and non-personal.
Parameterssyntheticepisode_idtask_classmax_age_daysobservationscounterparty_idcontinuity_handledata_classificationindependent_operator_id
gaip_evidence_pack
Build an evidence pack
Use this when an insurer, auditor or buyer asks what evidence exists about an agent or supplier. Pass its `subject` (public id or https URL). Returns conformance, watch, witness, repair and incident records with Merkle proofs, plus gaps. A compilation, not certification or advice. Free, read-only, no account; inputs must be public and non-personal.
Parametersscopesubjectrequiredrequester
gaip_incident_bundle
Build an incident evidence bundle
Use this when something went wrong with an agent and you need the facts in order. Pass the `receipt_ids` you hold and attributed `observations`. Returns a verified, source-attributed timeline with an EU AI Act Art. 73 reference aid. No fault, cause or liability finding. Free, read-only, no account; inputs must be public and non-personal.
Parameterstitlereceipt_idsobservationsai_system_refdata_classification
gaip_measure_outcome_value
Did the task deliver, and at what cost?
Use this when asked whether an outcome-priced task delivered and what it cost. Pass `episode_id`, `task` (acceptance_criteria), `delivery`, `costs`; `delivery_check` {url, checks} has GAIP test delivery now. Returns a dossier, running totals and a receipt. No ROI claim. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Parameterstaskrequiredcostsrequiredcurrencydeliveryrequiredfx_to_gbpsyntheticepisode_idrequiredtask_classevidence_refsdelivery_checkdownstream_usecounterparty_id+4 more