Specification

The complete LEX standard reference — covering message structure, field definitions, extensions, conformance, and all supporting specifications.

v1.0 Draft Apache 2.0 April 2026

Core Standard

Message Types

LEX defines five primary message types. Each has a specific purpose, direction, and response expectation.

Message Type Direction
LEAD Bidirectional
ASSET Outbound
ACKNOWLEDGMENT Response
SUBSCRIPTION Bidirectional
LEAD_CLOSURE Bidirectional

Field Dictionary

Every field in the LEX schema — type, constraints, required/optional, and examples.

# Selected key fields (see full reference for all fields)

lex.header.messageId UUID v4 Required — unique per message
lex.header.messageType Enum Required — LEAD | ASSET | ACK …
lex.header.timestamp ISO 8601 Required — within ±60s
lead.customer.email string Required — RFC 5322 validated
lead.customer.phone string Optional — E.164 format
lead.status Enum Required — 15 valid values
lead.desiredProduct.assetClass Enum Optional — VEHICLE | AVIATION …

Product Model

LEX uses a product-agnostic model. The desiredProduct block accepts any asset class using a universal structure, with optional industry-specific spec blocks.

Product Model

Product-agnostic model covering 50+ product types across all industry verticals, fleet/multi-unit orders, and B2B procurement structures.

Extension Standard

LEX is designed to be extended without breaking core compatibility. Extensions use namespaced fields added to the extensions object.

{
  "lex": { /* standard fields */ },
  "extensions": {
    "toyota.fleet.costCentre": "FLEET-NE-42",
    "cdk.crm.opportunityId": "OPP-987654",
    "acme.insurance.bundleRef": "INS-2026-XYZ"
  }
}

Supporting Specifications