Skip to main content
_types.json is the shared type dictionary for the entire glide.co/schemas/agent-banking/v1/ vocabulary. No application data lives here — it is purely a $defs block. Every other schema in the set imports from it via $ref: "_types.json#/$defs/<name>". This keeps the wire format self-consistent: when uuidV4 gains a clarifying description, every schema that references it inherits the update in one place.

Canonical URL

https://glide.co/schemas/agent-banking/v1/_types.json

Type catalog

Scalar types

String-format types

Address types

Closed-enum vocabularies

Note on chainId and the Zod source

As of v1.0.x, the Zod source and the published JSON Schema are in sync for both chainId (8 values: eth, base, arb, op, polygon, sol, tempo, stellar) and agentScope (15 values). Any future axis additions begin in Zod and propagate to the JSON Schema in the next minor release per the versioning contract (new enum values are forward-compatible additions).

Example

Validation

Primitives in this file are not directly validated in isolation — they are referenced by other schemas. To validate a $ref chain against the canonical document:
Pass --ref for every schema that $refs _types.json — AJV resolves $ref relative URIs from the $id of the referencing document, but some toolchains require explicit pre-loading.

Common pitfalls

  • Using floats for amountCents. The JSON Schema and Zod source both require integer. IEEE-754 floats lose precision above $90 trillion; passing 250.00 instead of 25000 will fail the integer assertion and also undercount by 100x.
  • Using +00:00 for isoDateTimeUtc. The Z suffix is required. tRPC, MCP, JWT iat/nbf/exp, and Privy all use different serializers — the Z-only contract eliminates parser ambiguity at every boundary.
  • Treating chainId as a CAIP-2 identifier. The wire format uses Glide short-ids (base, not eip155:8453). Use chainIdToCaip2() / caip2ToChainId() from @glideco/schemas at protocol boundaries that speak CAIP-2 (x402, AP2, ACP).
  • Comparing chainAddress values without normalizing case. EVM addresses are case-insensitive (mixed-case is EIP-55 checksum); Solana addresses are case-sensitive base58. Use chain-aware comparison helpers, not raw string equality.
  • Assuming uuidV4 means strictly v4. The name is historical; the pattern accepts UUID v1–v8 plus all-zero / all-F sentinels. UUIDv7 (used for time-ordered IDs in newer tables) is valid here.

Reading list