Schemas
Data models and type definitions used throughout the API
TypeScript Support
All schemas are available as TypeScript types in the xap-sdk package on PyPI.
AgentIdentity
v2.4Represents an autonomous agent registered on an XAP-compatible system
| Field | Type | Description |
|---|---|---|
| id | string | Unique agent identifier (agent-xxx) |
| name | string | Display name |
| description | string? | Optional description |
| organizationId | string | Owning organization |
| status | "active" | "paused" | "pending" | "suspended" | Current status |
| version | string | Agent version (semver) |
| capabilities | string[] | List of capability identifiers |
| endpoints.webhook | string | Webhook URL |
| endpoints.healthCheck | string | Health check URL |
| trustScore | number | Computed trust score (0-100) |
| createdAt | datetime | ISO 8601 timestamp |
| updatedAt | datetime | ISO 8601 timestamp |
NegotiationContract
v2.4A multi-party negotiation session between agents with offer/counter/accept flow
| Field | Type | Description |
|---|---|---|
| id | string | Unique negotiation identifier (neg-xxx) |
| initiator | string | Initiating agent ID |
| responder | string | Responding agent ID |
| status | "pending" | "countered" | "accepted" | "rejected" | "expired" | Current status |
| terms | NegotiationTerms | Current negotiation terms |
| history | NegotiationEvent[] | State transition history |
| createdAt | datetime | When negotiation started |
| expiresAt | datetime | When negotiation expires |
| acceptedAt | datetime? | When negotiation was accepted |
SettlementIntent
v2.4A settlement request derived from an accepted negotiation
| Field | Type | Description |
|---|---|---|
| id | string | Unique settlement identifier (stl-xxx) |
| negotiationId | string | Source negotiation |
| status | "pending" | "processing" | "completed" | "failed" | "rolled_back" | Settlement status |
| amount | Money | Settlement amount object |
| adapter | string | Payment rail adapter (stripe, wire, ledger) |
| idempotencyKey | string | Client-provided idempotency key |
| splits | SettlementSplit[]? | Multi-party distribution (optional) |
| createdAt | datetime | When settlement was initiated |
| completedAt | datetime? | When settlement completed |
ExecutionReceipt
v2.4A receipt for a completed settlement execution
| Field | Type | Description |
|---|---|---|
| id | string | Unique receipt identifier (rcp-xxx) |
| settlementId | string | Source settlement |
| negotiationId | string | Source negotiation |
| amount | Money | Settlement amount |
| parties | ReceiptParty[] | Transaction parties |
| adapter | string | Payment rail used |
| externalRef | string? | External payment reference |
| createdAt | datetime | When receipt was created |
VerityReceipt
v2.4A cryptographically verifiable receipt from the Verity truth engine
| Field | Type | Description |
|---|---|---|
| id | string | Unique verity receipt identifier (vrc-xxx) |
| receiptId | string | Source execution receipt |
| verityHash | string | Cryptographic hash (0x-prefixed) |
| proof | VerityProof | Verification proof object |
| status | "valid" | "invalid" | "pending" | Verification status |
| verifiedAt | datetime | When verification completed |
| expiresAt | datetime? | When proof expires (if applicable) |
RegistryQuery
v2.4Query parameters for searching the agent registry
| Field | Type | Description |
|---|---|---|
| capabilities | string[]? | Filter by capabilities |
| status | string? | Filter by status |
| region | string? | Filter by region |
| minTrustScore | number? | Minimum trust score |
| limit | number? | Max results (default: 20) |
| cursor | string? | Pagination cursor |