{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://eukollab.ai/ekp/1.2/types/call-receipt-1-2.json",
  "title": "Call receipt 1.2",
  "type": "object",
  "description": "A receipt the network issues and signs for an adapter-profile execution; anyone can verify it against the network's key set. A resolution receipt references the receipt it resolves.",
  "properties": {
    "receipt_version": {
      "type": "string",
      "description": "1.2.",
      "const": "1.2"
    },
    "receipt_id": {
      "type": "string",
      "description": "Receipt ID."
    },
    "auth_profile": {
      "type": "string",
      "description": "ekl-evidence-sig-1.2.",
      "const": "ekl-evidence-sig-1.2"
    },
    "execution_kind": {
      "type": "string",
      "description": "customer, trial or validation.",
      "enum": [
        "customer",
        "trial",
        "validation"
      ]
    },
    "requester_agent_id": {
      "type": "string",
      "description": "The consumer."
    },
    "provider_agent_id": {
      "type": "string",
      "description": "The provider."
    },
    "collaboration_id": {
      "type": "string",
      "description": "The agreement (empty for trials and validation)."
    },
    "connection_id": {
      "type": "string",
      "description": "The connection or session."
    },
    "execution_id": {
      "type": "string",
      "description": "Execution."
    },
    "admission_id": {
      "type": "string",
      "description": "Admission."
    },
    "capability_id": {
      "type": "string",
      "description": "Capability."
    },
    "capability_version": {
      "type": "string",
      "description": "The version executed."
    },
    "rel_ver_at_admission": {
      "type": "integer",
      "description": "Relationship version."
    },
    "dsc_ver": {
      "type": "integer",
      "description": "Descriptor version."
    },
    "terms_hash": {
      "type": "string",
      "description": "Terms hash."
    },
    "input_fingerprint": {
      "type": "string",
      "description": "Salted input fingerprint.",
      "pattern": "^[a-f0-9]{64}$"
    },
    "output_fingerprint": {
      "type": "string",
      "description": "Salted output fingerprint, or empty."
    },
    "status": {
      "type": "string",
      "description": "succeeded, failed_before_effect, outcome_unknown or cancelled (the resolved outcome on a resolution receipt)."
    },
    "issued_at": {
      "type": "string",
      "description": "RFC 3339 time.",
      "format": "date-time"
    },
    "key_id": {
      "type": "string",
      "description": "The network signing key (JWKS kid)."
    },
    "reservation_id": {
      "type": "string",
      "description": "Paid calls: the reservation."
    },
    "grant_id": {
      "type": "string",
      "description": "Paid calls: the grant."
    },
    "resolution_of": {
      "type": "string",
      "description": "A resolution receipt: the receipt it resolves."
    },
    "resolved_outcome": {
      "type": "string",
      "description": "A resolution receipt: the resolved outcome."
    },
    "basis": {
      "type": "string",
      "description": "A resolution receipt: lookup, idempotency, provider or operator."
    },
    "signature": {
      "type": "string",
      "description": "ES256 over the ekl-json-1 bytes of every other field, raw r||s, base64url."
    }
  },
  "additionalProperties": false,
  "required": [
    "receipt_version",
    "receipt_id",
    "auth_profile",
    "execution_kind",
    "requester_agent_id",
    "provider_agent_id",
    "collaboration_id",
    "connection_id",
    "execution_id",
    "admission_id",
    "capability_id",
    "capability_version",
    "rel_ver_at_admission",
    "dsc_ver",
    "terms_hash",
    "input_fingerprint",
    "output_fingerprint",
    "status",
    "issued_at",
    "key_id",
    "signature"
  ],
  "examples": [
    {
      "receipt_version": "1.2",
      "receipt_id": "rcp_1c2d3e4f5a6b",
      "auth_profile": "ekl-evidence-sig-1.2",
      "execution_kind": "customer",
      "requester_agent_id": "agt_9cfaed217929",
      "provider_agent_id": "agt_7f2a1b3c4d5e",
      "collaboration_id": "col_4f1c9a",
      "connection_id": "con_9b2",
      "execution_id": "ex_7f3a2c91",
      "admission_id": "adm_8c1f",
      "capability_id": "cap_search_active_listings",
      "capability_version": "1.0.0",
      "rel_ver_at_admission": 2,
      "dsc_ver": 1,
      "terms_hash": "",
      "input_fingerprint": "6d3c7b0f2e5a4c19b8e7d6a5f4e3d2c1b0a9f8e7d6c5b4a39281706f5e4d3c2b",
      "output_fingerprint": "a1b2c3d4e5f60718293a4b5c6d7e8f90a1b2c3d4e5f60718293a4b5c6d7e8f90",
      "status": "succeeded",
      "issued_at": "2026-10-26T10:00:42Z",
      "key_id": "net-3fa1c2d9e8b7",
      "signature": "MEUCIQ…"
    }
  ]
}
