{
  "asyncapi": "3.0.0",
  "info": {
    "title": "TruckerTech Nexus events",
    "version": "1.1.0",
    "description": "Partner events delivered to TruckerTech Nexus, the remote connector request and reply, and the canonical event messages a connector normalizes Partner events to. Every schema is generated from the code that enforces it.",
    "x-truckertech-versions": {
      "canon": 2,
      "statusTaxonomy": 1,
      "faultTaxonomy": 1,
      "webhookEnvelope": 1,
      "adapterManifest": 1,
      "livePort": 1,
      "remoteProtocol": "tt-nexus-remote/1"
    }
  },
  "defaultContentType": "application/json",
  "channels": {
    "nexusIngress": {
      "address": "/api/nexus/events/{connection}",
      "title": "Ingress",
      "description": "HTTPS POST, one event per delivery.",
      "parameters": {
        "connection": {
          "description": "The connection (account binding) id the delivery is for."
        }
      },
      "messages": {
        "partnerEvent": {
          "$ref": "#/components/messages/PartnerEvent"
        }
      }
    },
    "remoteConnector": {
      "title": "Remote connector endpoint",
      "description": "HTTPS POST to the allowlisted host and `endpointPath` of the connector's registered manifest.",
      "messages": {
        "request": {
          "$ref": "#/components/messages/RemoteConnectorRequest"
        },
        "response": {
          "$ref": "#/components/messages/RemoteConnectorResponse"
        }
      }
    }
  },
  "operations": {
    "receivePartnerEvent": {
      "action": "receive",
      "title": "Receive a Partner event",
      "channel": {
        "$ref": "#/channels/nexusIngress"
      },
      "messages": [
        {
          "$ref": "#/channels/nexusIngress/messages/partnerEvent"
        }
      ]
    },
    "callRemoteConnector": {
      "action": "send",
      "title": "Call a remote connector",
      "channel": {
        "$ref": "#/channels/remoteConnector"
      },
      "messages": [
        {
          "$ref": "#/channels/remoteConnector/messages/request"
        }
      ],
      "reply": {
        "channel": {
          "$ref": "#/channels/remoteConnector"
        },
        "messages": [
          {
            "$ref": "#/channels/remoteConnector/messages/response"
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AdapterManifest": {
        "type": "object",
        "properties": {
          "manifestVersion": {
            "type": "number",
            "const": 1
          },
          "contractVersion": {
            "type": "number",
            "const": 1
          },
          "adapterId": {
            "type": "string",
            "maxLength": 96,
            "pattern": "^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$"
          },
          "version": {
            "type": "string",
            "maxLength": 64,
            "pattern": "^(0|[1-9][0-9]{0,5})\\.(0|[1-9][0-9]{0,5})\\.(0|[1-9][0-9]{0,5})(-[0-9A-Za-z]+(\\.[0-9A-Za-z]+)*)?$"
          },
          "packageName": {
            "type": "string",
            "maxLength": 128,
            "pattern": "^@truckertech\\/integration-[a-z0-9]+(-[a-z0-9]+)*$"
          },
          "displayName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 120
          },
          "systemNode": {
            "type": "object",
            "properties": {
              "providerKind": {
                "type": "string",
                "enum": [
                  "synthetic",
                  "ecosystem_partner"
                ]
              },
              "providerCode": {
                "type": "string",
                "pattern": "^[a-z][a-z0-9-]{0,63}$"
              },
              "displayName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 120
              }
            },
            "required": [
              "providerKind",
              "providerCode",
              "displayName"
            ],
            "additionalProperties": false
          },
          "runtime": {
            "type": "object",
            "properties": {
              "transport": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "kind": {
                        "type": "string",
                        "const": "local_synthetic"
                      },
                      "baseUrlPolicy": {
                        "type": "string",
                        "const": "no_network"
                      }
                    },
                    "required": [
                      "kind",
                      "baseUrlPolicy"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "kind": {
                        "type": "string",
                        "const": "https"
                      },
                      "baseUrlPolicy": {
                        "type": "string",
                        "const": "allowlisted_hosts"
                      },
                      "allowedHosts": {
                        "minItems": 1,
                        "maxItems": 8,
                        "type": "array",
                        "items": {
                          "type": "string",
                          "pattern": "^(?=.{1,253}$)([a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z]{2,63}$"
                        }
                      }
                    },
                    "required": [
                      "kind",
                      "baseUrlPolicy",
                      "allowedHosts"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "kind": {
                        "type": "string",
                        "const": "nexus_remote"
                      },
                      "protocol": {
                        "type": "string",
                        "enum": [
                          "tt-nexus-remote/1"
                        ]
                      },
                      "baseUrlPolicy": {
                        "type": "string",
                        "const": "allowlisted_hosts"
                      },
                      "allowedHosts": {
                        "minItems": 1,
                        "maxItems": 8,
                        "type": "array",
                        "items": {
                          "type": "string",
                          "pattern": "^(?=.{1,253}$)([a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z]{2,63}$"
                        }
                      },
                      "endpointPath": {
                        "type": "string",
                        "maxLength": 256,
                        "pattern": "^(\\/(?!\\.{1,2}(?:\\/|$))[A-Za-z0-9._~-]+)+$"
                      },
                      "keySetReference": {
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9_.:-]{0,127}$"
                      }
                    },
                    "required": [
                      "kind",
                      "protocol",
                      "baseUrlPolicy",
                      "allowedHosts",
                      "endpointPath",
                      "keySetReference"
                    ],
                    "additionalProperties": false
                  }
                ]
              },
              "authMethod": {
                "type": "string",
                "enum": [
                  "none_local_synthetic",
                  "oauth2_authorization_code",
                  "oauth2_client_credentials",
                  "signed_jwt",
                  "mutual_tls",
                  "api_key"
                ]
              },
              "environments": {
                "minItems": 1,
                "maxItems": 4,
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "local",
                    "development",
                    "staging",
                    "sandbox",
                    "production"
                  ]
                }
              },
              "regions": {
                "minItems": 1,
                "maxItems": 16,
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^[a-z]{2}(-[a-z0-9]{1,3})?$"
                }
              },
              "timeoutMs": {
                "type": "integer",
                "minimum": 1,
                "maximum": 120000
              },
              "retry": {
                "type": "object",
                "properties": {
                  "maxAttempts": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 5
                  },
                  "baseDelayMs": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 10000
                  }
                },
                "required": [
                  "maxAttempts",
                  "baseDelayMs"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "transport",
              "authMethod",
              "environments",
              "regions",
              "timeoutMs",
              "retry"
            ],
            "additionalProperties": false
          },
          "sockets": {
            "minItems": 1,
            "maxItems": 32,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "socketCode": {
                  "type": "string",
                  "maxLength": 120,
                  "pattern": "^[a-z][a-z0-9_]*(\\.[a-z][a-z0-9_]*)+$"
                },
                "schemaVersion": {
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 999
                },
                "purposeCodes": {
                  "minItems": 1,
                  "maxItems": 16,
                  "type": "array",
                  "items": {
                    "type": "string",
                    "pattern": "^[a-z][a-z0-9_.]{0,63}$"
                  }
                },
                "operations": {
                  "type": "object",
                  "properties": {
                    "read": {
                      "minItems": 0,
                      "maxItems": 32,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9_.]{0,63}$"
                      }
                    },
                    "event": {
                      "minItems": 0,
                      "maxItems": 32,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9_.]{0,63}$"
                      }
                    },
                    "command": {
                      "minItems": 0,
                      "maxItems": 32,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9_.]{0,63}$"
                      }
                    }
                  },
                  "required": [
                    "read",
                    "event",
                    "command"
                  ],
                  "additionalProperties": false
                },
                "authoritativeFields": {
                  "minItems": 0,
                  "maxItems": 64,
                  "type": "array",
                  "items": {
                    "type": "string",
                    "maxLength": 120,
                    "pattern": "^[a-z][A-Za-z0-9]*(\\.[a-z][A-Za-z0-9]*)*$"
                  }
                },
                "authorization": {
                  "type": "object",
                  "properties": {
                    "customerAuthorization": {
                      "type": "string",
                      "const": "required"
                    },
                    "scopes": {
                      "minItems": 0,
                      "maxItems": 32,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9_.:-]{0,95}$"
                      }
                    }
                  },
                  "required": [
                    "customerAuthorization",
                    "scopes"
                  ],
                  "additionalProperties": false
                },
                "tenantMapping": {
                  "type": "object",
                  "properties": {
                    "bindingLevel": {
                      "type": "string",
                      "enum": [
                        "role_organization",
                        "role_organization_account"
                      ]
                    },
                    "externalAccountReference": {
                      "type": "string",
                      "enum": [
                        "required",
                        "optional",
                        "not_applicable"
                      ]
                    }
                  },
                  "required": [
                    "bindingLevel",
                    "externalAccountReference"
                  ],
                  "additionalProperties": false
                },
                "freshness": {
                  "type": "object",
                  "properties": {
                    "maxStalenessSeconds": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 31536000
                    },
                    "onStale": {
                      "type": "string",
                      "enum": [
                        "mark_stale",
                        "refuse"
                      ]
                    }
                  },
                  "required": [
                    "maxStalenessSeconds",
                    "onStale"
                  ],
                  "additionalProperties": false
                },
                "limits": {
                  "type": "object",
                  "properties": {
                    "requestsPerMinute": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 100000
                    },
                    "onRateLimit": {
                      "type": "string",
                      "enum": [
                        "backoff_and_retry",
                        "fail"
                      ]
                    }
                  },
                  "required": [
                    "requestsPerMinute",
                    "onRateLimit"
                  ],
                  "additionalProperties": false
                },
                "failure": {
                  "type": "object",
                  "properties": {
                    "partialFailure": {
                      "type": "string",
                      "enum": [
                        "per_item",
                        "all_or_nothing"
                      ]
                    }
                  },
                  "required": [
                    "partialFailure"
                  ],
                  "additionalProperties": false
                },
                "idempotency": {
                  "type": "object",
                  "properties": {
                    "replaySafe": {
                      "type": "boolean"
                    },
                    "commandKey": {
                      "type": "string",
                      "enum": [
                        "provider_key",
                        "platform_dedupe_only",
                        "not_applicable"
                      ]
                    }
                  },
                  "required": [
                    "replaySafe",
                    "commandKey"
                  ],
                  "additionalProperties": false
                },
                "reconciliation": {
                  "type": "object",
                  "properties": {
                    "method": {
                      "type": "string",
                      "enum": [
                        "poll",
                        "event",
                        "manual",
                        "not_applicable"
                      ]
                    }
                  },
                  "required": [
                    "method"
                  ],
                  "additionalProperties": false
                },
                "attribution": {
                  "type": "object",
                  "properties": {
                    "required": {
                      "type": "boolean",
                      "const": true
                    },
                    "displayText": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 120
                    }
                  },
                  "required": [
                    "required",
                    "displayText"
                  ],
                  "additionalProperties": false
                },
                "dataRights": {
                  "type": "object",
                  "properties": {
                    "onwardUse": {
                      "type": "string",
                      "enum": [
                        "tenant_only",
                        "tenant_and_core_participants"
                      ]
                    },
                    "retentionDays": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 3650
                    }
                  },
                  "required": [
                    "onwardUse",
                    "retentionDays"
                  ],
                  "additionalProperties": false
                },
                "delivery": {
                  "type": "object",
                  "properties": {
                    "webhook": {
                      "type": "boolean"
                    },
                    "polling": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "webhook",
                    "polling"
                  ],
                  "additionalProperties": false
                },
                "requiresCertification": {
                  "type": "boolean"
                }
              },
              "required": [
                "socketCode",
                "schemaVersion",
                "purposeCodes",
                "operations",
                "authoritativeFields",
                "authorization",
                "tenantMapping",
                "freshness",
                "limits",
                "failure",
                "idempotency",
                "reconciliation",
                "attribution",
                "dataRights",
                "delivery",
                "requiresCertification"
              ],
              "additionalProperties": false
            }
          },
          "support": {
            "type": "object",
            "properties": {
              "ownerCode": {
                "type": "string",
                "pattern": "^[a-z][a-z0-9-]{0,63}$"
              },
              "incidentPath": {
                "type": "string",
                "minLength": 1,
                "maxLength": 280
              }
            },
            "required": [
              "ownerCode",
              "incidentPath"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "manifestVersion",
          "contractVersion",
          "adapterId",
          "version",
          "packageName",
          "displayName",
          "systemNode",
          "runtime",
          "sockets",
          "support"
        ],
        "additionalProperties": false,
        "description": "The capability manifest an adapter version is registered with."
      },
      "AttributionEnvelope": {
        "type": "object",
        "properties": {
          "origin": {
            "type": "string",
            "enum": [
              "truckertech-derived",
              "partner-provided-fact",
              "partner-advisory",
              "partner-executed-action",
              "reconciled-canonical"
            ]
          },
          "factClass": {
            "$ref": "#/components/schemas/FactClass"
          },
          "providerRef": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          },
          "adapterRef": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          },
          "socketCode": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "socketSchemaVersion": {
            "type": "integer",
            "minimum": 1,
            "maximum": 999
          },
          "connectionRef": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          },
          "observedAt": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
          },
          "effectiveAt": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              {
                "type": "null"
              }
            ]
          },
          "receivedAt": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
          },
          "freshness": {
            "type": "object",
            "properties": {
              "state": {
                "type": "string",
                "enum": [
                  "fresh",
                  "stale",
                  "unknown"
                ]
              },
              "maxStalenessSeconds": {
                "type": "integer",
                "minimum": 1,
                "maximum": 31536000
              }
            },
            "required": [
              "state",
              "maxStalenessSeconds"
            ],
            "additionalProperties": false
          },
          "derivedFrom": {
            "maxItems": 50,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            }
          },
          "evidenceRefs": {
            "maxItems": 50,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            }
          },
          "displayText": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "origin",
          "factClass",
          "providerRef",
          "adapterRef",
          "socketCode",
          "socketSchemaVersion",
          "connectionRef",
          "observedAt",
          "effectiveAt",
          "receivedAt",
          "freshness",
          "derivedFrom",
          "evidenceRefs",
          "displayText"
        ],
        "additionalProperties": false,
        "description": "Provider identity, freshness and source class, carried with every canonical fact."
      },
      "CanonFaultClass": {
        "type": "string",
        "enum": [
          "none",
          "timeout",
          "rate_limit",
          "duplicate_suppressed",
          "out_of_order",
          "transient_provider_failure",
          "permanent_provider_rejection",
          "provider_unavailable"
        ],
        "x-truckertech-taxonomy-version": 1
      },
      "CanonSocket.career.workflow_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "career.workflow_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "applicationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerApplicationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "candidatePersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "employerRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "jobPostingRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "phase": {
                "type": "string",
                "enum": [
                  "application",
                  "offer",
                  "onboarding"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "application": {
                "type": "object",
                "properties": {
                  "state": {
                    "type": "string",
                    "enum": [
                      "submitted",
                      "screening",
                      "interviewing",
                      "advanced",
                      "withdrawn",
                      "rejected"
                    ]
                  },
                  "submittedAt": {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  "decisionReasonCode": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z][a-z0-9_.-]*$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "state",
                  "submittedAt",
                  "decisionReasonCode"
                ],
                "additionalProperties": false
              },
              "offer": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "offerRef": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      "state": {
                        "type": "string",
                        "enum": [
                          "extended",
                          "accepted",
                          "declined",
                          "rescinded",
                          "expired"
                        ]
                      },
                      "extendedAt": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      },
                      "respondedAt": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "date-time",
                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "expiresAt": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "date-time",
                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "required": [
                      "offerRef",
                      "state",
                      "extendedAt",
                      "respondedAt",
                      "expiresAt"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "onboarding": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "state": {
                        "type": "string",
                        "enum": [
                          "not_started",
                          "in_progress",
                          "blocked",
                          "completed"
                        ]
                      },
                      "startedAt": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "date-time",
                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "completedAt": {
                        "anyOf": [
                          {
                            "type": "string",
                            "format": "date-time",
                            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "requirements": {
                        "maxItems": 100,
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "requirementCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 64,
                              "pattern": "^[a-z][a-z0-9_.-]*$"
                            },
                            "state": {
                              "type": "string",
                              "enum": [
                                "met",
                                "unmet",
                                "expiring",
                                "expired",
                                "waived",
                                "unknown"
                              ]
                            },
                            "evidenceRef": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 200
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "required": [
                            "requirementCode",
                            "state",
                            "evidenceRef"
                          ],
                          "additionalProperties": false
                        }
                      }
                    },
                    "required": [
                      "state",
                      "startedAt",
                      "completedAt",
                      "requirements"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "applicationRef",
              "providerApplicationRef",
              "candidatePersonRef",
              "employerRoleOrganizationRef",
              "jobPostingRef",
              "phase",
              "status",
              "application",
              "offer",
              "onboarding"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Career workflow status",
        "description": "Application, offer and onboarding status of one candidate as a partner recruiting workflow reported it. References only: no personal data beyond the candidate’s Person reference.",
        "x-truckertech-socket": {
          "socketCode": "career.workflow_status",
          "schemaVersion": 1,
          "family": "career_workflow",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.carrier_identity.risk_signals.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "carrier_identity.risk_signals"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "carrier": {
                "type": "object",
                "properties": {
                  "carrierRoleOrganizationRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "usdotNumber": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{1,8}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "mcNumber": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{1,8}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "otherRegistryRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "partnerCarrierRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "carrierRoleOrganizationRef",
                  "usdotNumber",
                  "mcNumber",
                  "otherRegistryRef",
                  "partnerCarrierRef"
                ],
                "additionalProperties": false
              },
              "assessment": {
                "type": "object",
                "properties": {
                  "resultFamily": {
                    "type": "string",
                    "enum": [
                      "pass",
                      "partial",
                      "incomplete",
                      "fail",
                      "review",
                      "none"
                    ]
                  },
                  "partnerLabel": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64
                  },
                  "grade": {
                    "anyOf": [
                      {
                        "type": "object",
                        "properties": {
                          "value": {
                            "type": [
                              "number",
                              "null"
                            ]
                          },
                          "letter": {
                            "anyOf": [
                              {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 8
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "scaleMin": {
                            "type": "number"
                          },
                          "scaleMax": {
                            "type": "number"
                          },
                          "higherIsBetter": {
                            "type": "boolean"
                          },
                          "bandLabel": {
                            "anyOf": [
                              {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 64
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "required": [
                          "value",
                          "letter",
                          "scaleMin",
                          "scaleMax",
                          "higherIsBetter",
                          "bandLabel"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "determinedAt": {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  }
                },
                "required": [
                  "resultFamily",
                  "partnerLabel",
                  "grade",
                  "determinedAt"
                ],
                "additionalProperties": false
              },
              "signals": {
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "string",
                      "enum": [
                        "fraud.reported",
                        "fraud.double_brokering_reported",
                        "fraud.impersonation_suspected",
                        "identity.chameleon_suspected",
                        "identity.contact_mismatch",
                        "identity.contact_changed_recently",
                        "identity.shared_contact",
                        "identity.voip_or_ip_risk",
                        "equipment.vin_unverified",
                        "authority.recently_granted",
                        "authority.for_sale_indicator",
                        "authority.revoked_or_pending",
                        "insurance.lapse_or_cancel",
                        "insurance.below_requirement",
                        "safety.out_of_service",
                        "watchlist.partner_blocked",
                        "partner.other"
                      ]
                    },
                    "severity": {
                      "type": "string",
                      "enum": [
                        "info",
                        "caution",
                        "critical"
                      ]
                    },
                    "state": {
                      "type": "string",
                      "enum": [
                        "active",
                        "cleared"
                      ]
                    },
                    "observedAt": {
                      "type": "string",
                      "format": "date-time",
                      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                    },
                    "partnerLabel": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64
                    },
                    "evidenceRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "code",
                    "severity",
                    "state",
                    "observedAt",
                    "partnerLabel",
                    "evidenceRef"
                  ],
                  "additionalProperties": false
                }
              },
              "counts": {
                "type": "object",
                "properties": {
                  "incidentReports": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "incidentReportsFraud": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "verifiedUsers": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "totalUsers": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "associatedCarriers": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "incidentReports",
                  "incidentReportsFraud",
                  "verifiedUsers",
                  "totalUsers",
                  "associatedCarriers"
                ],
                "additionalProperties": false
              },
              "monitoring": {
                "type": "object",
                "properties": {
                  "monitored": {
                    "type": "boolean"
                  },
                  "since": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "monitored",
                  "since"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "carrier",
              "assessment",
              "signals",
              "counts",
              "monitoring"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Carrier Identity risk signals",
        "description": "A Carrier Identity partner’s own assessment of a carrier, the canonical risk signals behind it, counts and watch-list state. The partner’s fact, attributed and as-of; never a TruckerTech verification or score.",
        "x-truckertech-socket": {
          "socketCode": "carrier_identity.risk_signals",
          "schemaVersion": 1,
          "family": "carrier_identity",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.communications.channel_message.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "communications.channel_message"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "messageRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerMessageRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "threadRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "channel": {
                "type": "string",
                "enum": [
                  "email",
                  "sms",
                  "chat",
                  "voice",
                  "push"
                ]
              },
              "direction": {
                "type": "string",
                "enum": [
                  "inbound",
                  "outbound"
                ]
              },
              "senderPartyRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "recipientPartyRefs": {
                "minItems": 1,
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "contentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "attachmentRefs": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "relatedCoreRefs": {
                "maxItems": 20,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "deliveryState": {
                "type": "string",
                "enum": [
                  "queued",
                  "sent",
                  "delivered",
                  "read",
                  "received",
                  "failed",
                  "bounced"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "sentAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "deliveredAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "readAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "failureCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "messageRef",
              "providerMessageRef",
              "threadRef",
              "channel",
              "direction",
              "senderPartyRef",
              "recipientPartyRefs",
              "contentRef",
              "attachmentRefs",
              "relatedCoreRefs",
              "deliveryState",
              "status",
              "sentAt",
              "deliveredAt",
              "readAt",
              "failureCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Communications: channel message",
        "description": "Metadata of one message on a connected channel: parties by reference, thread, delivery state and times. The body is a reference, never content; no email address or phone number is an identifier.",
        "x-truckertech-socket": {
          "socketCode": "communications.channel_message",
          "schemaVersion": 1,
          "family": "communications_channels",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.documents.document_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "documents.document_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "documentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerDocumentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "kind": {
                "type": "string",
                "enum": [
                  "rate_confirmation",
                  "bill_of_lading",
                  "proof_of_delivery",
                  "invoice",
                  "agreement",
                  "insurance_certificate",
                  "tax_form",
                  "other"
                ]
              },
              "ownerRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "relatedCoreRefs": {
                "maxItems": 20,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "versionNumber": {
                "type": "integer",
                "minimum": 1,
                "maximum": 10000
              },
              "supersedesDocumentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "contentSha256": {
                "anyOf": [
                  {
                    "type": "string",
                    "pattern": "^[0-9a-f]{64}$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "draft",
                  "issued",
                  "received",
                  "superseded",
                  "voided",
                  "expired"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "issuedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "expiresOn": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "documentRef",
              "providerDocumentRef",
              "kind",
              "ownerRoleOrganizationRef",
              "relatedCoreRefs",
              "versionNumber",
              "supersedesDocumentRef",
              "contentSha256",
              "stage",
              "status",
              "issuedAt",
              "expiresOn"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Document status",
        "description": "The state of one document version as a document system reported it: kind, owner, version chain and content digest. The document is a reference, never its content.",
        "x-truckertech-socket": {
          "socketCode": "documents.document_status",
          "schemaVersion": 1,
          "family": "documents_esignature",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.background_check.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "driver_lifecycle.background_check"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "checkRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerCheckRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "consentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "purpose": {
                "type": "string",
                "enum": [
                  "pre_employment",
                  "annual",
                  "continuous",
                  "other"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "outcome": {
                "type": "string",
                "enum": [
                  "clear",
                  "findings",
                  "prohibited",
                  "unable_to_verify",
                  "pending"
                ]
              },
              "findingCodes": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z][a-z0-9_.-]*$"
                }
              },
              "requestedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "validUntil": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "reportEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "checkRef",
              "providerCheckRef",
              "driverPersonRef",
              "carrierRoleOrganizationRef",
              "consentRef",
              "purpose",
              "status",
              "outcome",
              "findingCodes",
              "requestedAt",
              "completedAt",
              "validUntil",
              "reportEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Background check",
        "description": "The outcome of a background check for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.background_check",
          "schemaVersion": 1,
          "family": "driver_lifecycle",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.clearinghouse_query.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "driver_lifecycle.clearinghouse_query"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "checkRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerCheckRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "consentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "purpose": {
                "type": "string",
                "enum": [
                  "pre_employment",
                  "annual",
                  "continuous",
                  "other"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "outcome": {
                "type": "string",
                "enum": [
                  "clear",
                  "findings",
                  "prohibited",
                  "unable_to_verify",
                  "pending"
                ]
              },
              "findingCodes": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z][a-z0-9_.-]*$"
                }
              },
              "requestedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "validUntil": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "reportEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "checkRef",
              "providerCheckRef",
              "driverPersonRef",
              "carrierRoleOrganizationRef",
              "consentRef",
              "purpose",
              "status",
              "outcome",
              "findingCodes",
              "requestedAt",
              "completedAt",
              "validUntil",
              "reportEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Drug and Alcohol Clearinghouse query",
        "description": "The outcome of a Drug and Alcohol Clearinghouse query for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.clearinghouse_query",
          "schemaVersion": 1,
          "family": "driver_lifecycle",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.dac_report.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "driver_lifecycle.dac_report"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "checkRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerCheckRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "consentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "purpose": {
                "type": "string",
                "enum": [
                  "pre_employment",
                  "annual",
                  "continuous",
                  "other"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "outcome": {
                "type": "string",
                "enum": [
                  "clear",
                  "findings",
                  "prohibited",
                  "unable_to_verify",
                  "pending"
                ]
              },
              "findingCodes": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z][a-z0-9_.-]*$"
                }
              },
              "requestedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "validUntil": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "reportEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "checkRef",
              "providerCheckRef",
              "driverPersonRef",
              "carrierRoleOrganizationRef",
              "consentRef",
              "purpose",
              "status",
              "outcome",
              "findingCodes",
              "requestedAt",
              "completedAt",
              "validUntil",
              "reportEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "DAC employment history report",
        "description": "The outcome of a DAC employment history report for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.dac_report",
          "schemaVersion": 1,
          "family": "driver_lifecycle",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.mvr_result.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "driver_lifecycle.mvr_result"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "checkRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerCheckRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "consentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "purpose": {
                "type": "string",
                "enum": [
                  "pre_employment",
                  "annual",
                  "continuous",
                  "other"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "outcome": {
                "type": "string",
                "enum": [
                  "clear",
                  "findings",
                  "prohibited",
                  "unable_to_verify",
                  "pending"
                ]
              },
              "findingCodes": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z][a-z0-9_.-]*$"
                }
              },
              "requestedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "validUntil": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "reportEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "checkRef",
              "providerCheckRef",
              "driverPersonRef",
              "carrierRoleOrganizationRef",
              "consentRef",
              "purpose",
              "status",
              "outcome",
              "findingCodes",
              "requestedAt",
              "completedAt",
              "validUntil",
              "reportEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Driver MVR result",
        "description": "The outcome of a motor vehicle record for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.mvr_result",
          "schemaVersion": 1,
          "family": "driver_lifecycle",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.voe_result.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "driver_lifecycle.voe_result"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "checkRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerCheckRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "consentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "purpose": {
                "type": "string",
                "enum": [
                  "pre_employment",
                  "annual",
                  "continuous",
                  "other"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "outcome": {
                "type": "string",
                "enum": [
                  "clear",
                  "findings",
                  "prohibited",
                  "unable_to_verify",
                  "pending"
                ]
              },
              "findingCodes": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z][a-z0-9_.-]*$"
                }
              },
              "requestedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "validUntil": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "reportEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "checkRef",
              "providerCheckRef",
              "driverPersonRef",
              "carrierRoleOrganizationRef",
              "consentRef",
              "purpose",
              "status",
              "outcome",
              "findingCodes",
              "requestedAt",
              "completedAt",
              "validUntil",
              "reportEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Verification of employment",
        "description": "The outcome of a verification of employment for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.voe_result",
          "schemaVersion": 1,
          "family": "driver_lifecycle",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.equipment_finance.agreement_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "equipment_finance.agreement_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "agreementRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerAgreementRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "customerRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "assetRefs": {
                "minItems": 1,
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "kind": {
                "type": "string",
                "enum": [
                  "lease",
                  "loan",
                  "lease_to_own",
                  "rental"
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "application",
                  "approved",
                  "active",
                  "delinquent",
                  "paid_off",
                  "terminated",
                  "declined"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "nextPaymentDueOn": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "nextPaymentAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "maturesOn": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "agreementDocumentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "agreementRef",
              "providerAgreementRef",
              "customerRoleOrganizationRef",
              "assetRefs",
              "kind",
              "stage",
              "status",
              "nextPaymentDueOn",
              "nextPaymentAmount",
              "maturesOn",
              "agreementDocumentRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Equipment lease or financing status",
        "description": "The status of one equipment lease or financing agreement: stage, assets by reference and the next payment as evidence. No bank account or payment instruction.",
        "x-truckertech-socket": {
          "socketCode": "equipment_finance.agreement_status",
          "schemaVersion": 1,
          "family": "equipment_finance",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.erp.demand.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "erp.demand"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "demandRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerDemandRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "kind": {
                "type": "string",
                "enum": [
                  "purchase_order",
                  "sales_order",
                  "transfer_order",
                  "forecast"
                ]
              },
              "shipperRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "stage": {
                "type": "string",
                "enum": [
                  "open",
                  "released",
                  "planned",
                  "tendered",
                  "fulfilled",
                  "cancelled"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "originFacilityRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "destinationFacilityRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "shipWindow": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "start": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      },
                      "end": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      }
                    },
                    "required": [
                      "start",
                      "end"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "deliveryWindow": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "start": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      },
                      "end": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      }
                    },
                    "required": [
                      "start",
                      "end"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "lines": {
                "minItems": 1,
                "maxItems": 500,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "lineRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "itemRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "quantity": {
                      "type": "number",
                      "exclusiveMinimum": 0,
                      "maximum": 1000000000
                    },
                    "unit": {
                      "type": "string",
                      "enum": [
                        "each",
                        "case",
                        "pallet",
                        "kilogram",
                        "liter",
                        "cubic_meter"
                      ]
                    },
                    "weightKilograms": {
                      "anyOf": [
                        {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 1000000
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "volumeCubicMeters": {
                      "anyOf": [
                        {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 100000
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "lineRef",
                    "itemRef",
                    "quantity",
                    "unit",
                    "weightKilograms",
                    "volumeCubicMeters"
                  ],
                  "additionalProperties": false
                }
              },
              "totalWeightKilograms": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRefs": {
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              }
            },
            "required": [
              "demandRef",
              "providerDemandRef",
              "kind",
              "shipperRoleOrganizationRef",
              "stage",
              "status",
              "originFacilityRef",
              "destinationFacilityRef",
              "shipWindow",
              "deliveryWindow",
              "lines",
              "totalWeightKilograms",
              "loadCoreRefs"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "ERP demand",
        "description": "Freight demand (an order or forecast) from a shipper ERP: facilities by reference, windows, and metric lines. Read and event only; releasing or tendering demand is an external write.",
        "x-truckertech-socket": {
          "socketCode": "erp.demand",
          "schemaVersion": 1,
          "family": "erp_demand",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied",
            "inferred"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.esignature.envelope_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "esignature.envelope_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "envelopeRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerEnvelopeRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "documentRefs": {
                "minItems": 1,
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "signers": {
                "minItems": 1,
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "signerPartyRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "role": {
                      "type": "string",
                      "enum": [
                        "signer",
                        "approver",
                        "copy_recipient"
                      ]
                    },
                    "routingOrder": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 100
                    },
                    "state": {
                      "type": "string",
                      "enum": [
                        "pending",
                        "sent",
                        "viewed",
                        "signed",
                        "declined"
                      ]
                    },
                    "actedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "signerPartyRef",
                    "role",
                    "routingOrder",
                    "state",
                    "actedAt"
                  ],
                  "additionalProperties": false
                }
              },
              "envelopeState": {
                "type": "string",
                "enum": [
                  "created",
                  "sent",
                  "partially_signed",
                  "completed",
                  "declined",
                  "voided",
                  "expired"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "sentAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "voidReasonCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "envelopeRef",
              "providerEnvelopeRef",
              "documentRefs",
              "signers",
              "envelopeState",
              "status",
              "sentAt",
              "completedAt",
              "voidReasonCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "E-signature envelope status",
        "description": "The state of one signature envelope and each signer, by party reference, as an e-signature provider reported it. No signer contact point, name or signature image.",
        "x-truckertech-socket": {
          "socketCode": "esignature.envelope_status",
          "schemaVersion": 1,
          "family": "documents_esignature",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.factoring.credit_approval.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "factoring.credit_approval"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "creditDecisionRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerDecisionRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierAuthorizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "debtorKind": {
                "type": "string",
                "enum": [
                  "broker",
                  "shipper",
                  "other"
                ]
              },
              "debtorRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "providerDebtorRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "decision": {
                "type": "string",
                "enum": [
                  "approved",
                  "limited",
                  "declined",
                  "pending",
                  "not_found"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "creditLimit": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "determinedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "expiresAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "visibility": {
                "type": "string",
                "const": "carrier_only"
              },
              "reasonCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "creditDecisionRef",
              "providerDecisionRef",
              "carrierRoleOrganizationRef",
              "carrierAuthorizationRef",
              "debtorKind",
              "debtorRoleOrganizationRef",
              "providerDebtorRef",
              "decision",
              "status",
              "creditLimit",
              "determinedAt",
              "expiresAt",
              "visibility",
              "reasonCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Factoring credit approval",
        "description": "The carrier’s own factor’s credit decision on a broker or shipper, read with the carrier’s recorded authorization; carrier-only, attributed, with its age. TruckerTech computes no score.",
        "x-truckertech-socket": {
          "socketCode": "factoring.credit_approval",
          "schemaVersion": 1,
          "family": "factoring_payments",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.factoring.invoice_funding.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "factoring.invoice_funding"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "invoiceRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerInvoiceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "debtorKind": {
                "type": "string",
                "enum": [
                  "broker",
                  "shipper",
                  "other"
                ]
              },
              "debtorRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "submitted",
                  "verified",
                  "advanced",
                  "reserve_pending",
                  "paid_by_debtor",
                  "remitted",
                  "disputed",
                  "rejected"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "invoiceAmount": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "advancedAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "feeAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "noticeOfAssignmentAcknowledged": {
                "type": [
                  "boolean",
                  "null"
                ]
              },
              "fundingScheduledAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "fundingConfirmedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "remittanceEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "exceptionCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "invoiceRef",
              "providerInvoiceRef",
              "carrierRoleOrganizationRef",
              "debtorKind",
              "debtorRoleOrganizationRef",
              "loadCoreRef",
              "stage",
              "status",
              "invoiceAmount",
              "advancedAmount",
              "feeAmount",
              "noticeOfAssignmentAcknowledged",
              "fundingScheduledAt",
              "fundingConfirmedAt",
              "remittanceEvidenceRef",
              "exceptionCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Factoring and payments: invoice funding",
        "description": "Observed funding and remittance state of one invoice at a factoring or payments provider. Evidence only: no payment destination, instruction or trigger.",
        "x-truckertech-socket": {
          "socketCode": "factoring.invoice_funding",
          "schemaVersion": 1,
          "family": "factoring_payments",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.factoring.invoice_funding.v2": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "factoring.invoice_funding"
          },
          "schemaVersion": {
            "type": "number",
            "const": 2
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "invoiceRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerInvoiceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "debtorKind": {
                "type": "string",
                "enum": [
                  "broker",
                  "shipper",
                  "other"
                ]
              },
              "debtorRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "submitted",
                  "verified",
                  "advanced",
                  "reserve_pending",
                  "paid_by_debtor",
                  "remitted",
                  "disputed",
                  "rejected"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "invoiceAmount": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "advancedAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "feeAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "noticeOfAssignmentAcknowledged": {
                "type": [
                  "boolean",
                  "null"
                ]
              },
              "fundingScheduledAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "fundingConfirmedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "remittanceEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "exceptionCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "providerVersion": {
                "anyOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "invoiceRef",
              "providerInvoiceRef",
              "carrierRoleOrganizationRef",
              "debtorKind",
              "debtorRoleOrganizationRef",
              "loadCoreRef",
              "stage",
              "status",
              "invoiceAmount",
              "advancedAmount",
              "feeAmount",
              "noticeOfAssignmentAcknowledged",
              "fundingScheduledAt",
              "fundingConfirmedAt",
              "remittanceEvidenceRef",
              "exceptionCode",
              "providerVersion"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Factoring and payments: invoice funding (version 2, with the hand-off)",
        "description": "Version 1 of the invoice funding fact plus the factor’s record version, and the invoice hand-off and withdrawal commands. Evidence by reference; no payment destination; not a funding trigger.",
        "x-truckertech-socket": {
          "socketCode": "factoring.invoice_funding",
          "schemaVersion": 2,
          "family": "factoring_payments",
          "interactionModes": [
            "read",
            "event",
            "command"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.freight_audit.invoice_audit.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "freight_audit.invoice_audit"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "auditRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerAuditRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "invoiceRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "payerRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "payeeRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "state": {
                "type": "string",
                "enum": [
                  "pending",
                  "approved",
                  "adjusted",
                  "disputed",
                  "rejected"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "billedAmount": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "approvedAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "adjustments": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "reasonCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-z][a-z0-9_.-]*$"
                    },
                    "amount": {
                      "type": "object",
                      "properties": {
                        "amountMinorUnits": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 9007199254740991
                        },
                        "currency": {
                          "type": "string",
                          "enum": [
                            "USD",
                            "CAD",
                            "MXN"
                          ]
                        }
                      },
                      "required": [
                        "amountMinorUnits",
                        "currency"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "reasonCode",
                    "amount"
                  ],
                  "additionalProperties": false
                }
              },
              "auditedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "auditRef",
              "providerAuditRef",
              "invoiceRef",
              "loadCoreRef",
              "payerRoleOrganizationRef",
              "payeeRoleOrganizationRef",
              "state",
              "status",
              "billedAmount",
              "approvedAmount",
              "adjustments",
              "auditedAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Freight invoice audit",
        "description": "A freight audit partner’s result on one freight invoice: billed and approved amounts and coded adjustments, as evidence. No payment instruction.",
        "x-truckertech-socket": {
          "socketCode": "freight_audit.invoice_audit",
          "schemaVersion": 1,
          "family": "freight_audit",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.fuel.price.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "fuel.price"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "stationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerStationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "fuelType": {
                "type": "string",
                "enum": [
                  "diesel",
                  "reefer_diesel",
                  "def",
                  "gasoline",
                  "cng",
                  "lng",
                  "other"
                ]
              },
              "retailPricePerKiloliter": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "discountedPricePerKiloliter": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "discountProgramRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "effectiveAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "expiresAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "stationRef",
              "providerStationRef",
              "fuelType",
              "retailPricePerKiloliter",
              "discountedPricePerKiloliter",
              "discountProgramRef",
              "effectiveAt",
              "expiresAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Fuel price",
        "description": "A station’s retail and discounted price for one fuel, per kilolitre, with the discount program by reference. The station is a reference, never a coordinate.",
        "x-truckertech-socket": {
          "socketCode": "fuel.price",
          "schemaVersion": 1,
          "family": "fuel",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.fuel.transaction.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "fuel.transaction"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "transactionRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerTransactionRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cardRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "vehicleRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "driverPersonRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "fuelType": {
                "type": "string",
                "enum": [
                  "diesel",
                  "reefer_diesel",
                  "def",
                  "gasoline",
                  "cng",
                  "lng",
                  "other"
                ]
              },
              "volumeLiters": {
                "type": "number",
                "exclusiveMinimum": 0,
                "maximum": 10000
              },
              "unitPricePerKiloliter": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "totalAmount": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "discountAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "odometerKilometers": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 10000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "transactedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              }
            },
            "required": [
              "transactionRef",
              "providerTransactionRef",
              "cardRef",
              "carrierRoleOrganizationRef",
              "vehicleRef",
              "driverPersonRef",
              "stationRef",
              "fuelType",
              "volumeLiters",
              "unitPricePerKiloliter",
              "totalAmount",
              "discountAmount",
              "odometerKilometers",
              "status",
              "transactedAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Fuel transaction",
        "description": "One fuel purchase from a fuel card or network: card and station by reference, litres, price per kilolitre, total and discount. No card number and no coordinates.",
        "x-truckertech-socket": {
          "socketCode": "fuel.transaction",
          "schemaVersion": 1,
          "family": "fuel",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.identity.assurance_result.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "identity.assurance_result"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "subjectPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerResultRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "provenance": {
                "type": "string",
                "enum": [
                  "live",
                  "synthetic-development-or-preview"
                ]
              },
              "checks": {
                "minItems": 1,
                "maxItems": 3,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "check": {
                      "type": "string",
                      "enum": [
                        "identity-proofing",
                        "document-proofing",
                        "liveness"
                      ]
                    },
                    "outcome": {
                      "type": "string",
                      "enum": [
                        "passed",
                        "failed",
                        "inconclusive",
                        "not_performed"
                      ]
                    },
                    "completedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "check",
                    "outcome",
                    "completedAt"
                  ],
                  "additionalProperties": false
                }
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "providerExpiresAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "subjectPersonRef",
              "providerResultRef",
              "status",
              "provenance",
              "checks",
              "completedAt",
              "providerExpiresAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Identity assurance result",
        "description": "The outcome of identity, document and liveness checks a proofing provider ran for one Person. Carries outcomes and references only; TruckerTech decides the assurance level.",
        "x-truckertech-socket": {
          "socketCode": "identity.assurance_result",
          "schemaVersion": 1,
          "family": "identity_assurance",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.insurance.claim_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "insurance.claim_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "claimRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerClaimRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "policyRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "claimantRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "coverageType": {
                "type": "string",
                "enum": [
                  "auto_liability",
                  "cargo",
                  "general_liability",
                  "workers_compensation"
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "lossOccurredOn": {
                "type": "string",
                "format": "date",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
              },
              "stage": {
                "type": "string",
                "enum": [
                  "reported",
                  "under_review",
                  "approved",
                  "denied",
                  "paid",
                  "closed",
                  "in_subrogation"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "claimedAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "paidAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "evidenceRefs": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                }
              },
              "reportedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              }
            },
            "required": [
              "claimRef",
              "providerClaimRef",
              "policyRef",
              "claimantRoleOrganizationRef",
              "coverageType",
              "loadCoreRef",
              "lossOccurredOn",
              "stage",
              "status",
              "claimedAmount",
              "paidAmount",
              "evidenceRefs",
              "reportedAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Insurance claim status",
        "description": "Where one insurance claim stands with a claims-services partner: coverage, stage, amounts as evidence and documents by reference. A loss carries its date, never its place.",
        "x-truckertech-socket": {
          "socketCode": "insurance.claim_status",
          "schemaVersion": 1,
          "family": "insurance_claims",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.load_board.posting.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "load_board.posting"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "postingRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "source": {
                "type": "string",
                "enum": [
                  "native",
                  "external_board"
                ]
              },
              "sourceBoardRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "providerPostingRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "brokerRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "providerBrokerRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "originRegionRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "destinationRegionRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "pickupWindow": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "start": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      },
                      "end": {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      }
                    },
                    "required": [
                      "start",
                      "end"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "equipmentType": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "dry_van",
                      "reefer",
                      "flatbed",
                      "step_deck",
                      "tanker",
                      "container",
                      "power_only",
                      "other"
                    ]
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "weightKilograms": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "distanceMeters": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 20000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "rate": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "postedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "refreshedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "expiresAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "filter": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "brokerVerified": {
                        "type": "string",
                        "enum": [
                          "yes",
                          "no",
                          "unknown"
                        ]
                      },
                      "brokerApprovedByCarrier": {
                        "type": "string",
                        "enum": [
                          "yes",
                          "no",
                          "unknown"
                        ]
                      },
                      "brokerCreditApprovedByFactor": {
                        "type": "string",
                        "enum": [
                          "yes",
                          "no",
                          "unknown"
                        ]
                      },
                      "creditApprovalRef": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 200
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "required": [
                      "brokerVerified",
                      "brokerApprovedByCarrier",
                      "brokerCreditApprovedByFactor",
                      "creditApprovalRef"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "postingRef",
              "source",
              "sourceBoardRef",
              "providerPostingRef",
              "brokerRoleOrganizationRef",
              "providerBrokerRef",
              "status",
              "originRegionRef",
              "destinationRegionRef",
              "pickupWindow",
              "equipmentType",
              "weightKilograms",
              "distanceMeters",
              "rate",
              "postedAt",
              "refreshedAt",
              "expiresAt",
              "filter"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Load board posting",
        "description": "A native or external-board load with its source and age, regions by reference, and the strict default filter inputs. Carries no address or coordinates.",
        "x-truckertech-socket": {
          "socketCode": "load_board.posting",
          "schemaVersion": 1,
          "family": "load_board",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.maintenance.inspection.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "maintenance.inspection"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "inspectionRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerInspectionRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "assetRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "assetKind": {
                "type": "string",
                "enum": [
                  "tractor",
                  "trailer",
                  "straight_truck",
                  "other"
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "kind": {
                "type": "string",
                "enum": [
                  "pre_trip",
                  "post_trip",
                  "annual",
                  "roadside",
                  "preventive"
                ]
              },
              "result": {
                "type": "string",
                "enum": [
                  "pass",
                  "pass_with_defects",
                  "fail"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "inspectorPartyRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "inspectedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "defects": {
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "defectCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-z][a-z0-9_.-]*$"
                    },
                    "severity": {
                      "type": "string",
                      "enum": [
                        "minor",
                        "major",
                        "out_of_service"
                      ]
                    },
                    "correctedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "workOrderRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "defectCode",
                    "severity",
                    "correctedAt",
                    "workOrderRef"
                  ],
                  "additionalProperties": false
                }
              },
              "reportEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "inspectionRef",
              "providerInspectionRef",
              "assetRef",
              "assetKind",
              "carrierRoleOrganizationRef",
              "kind",
              "result",
              "status",
              "inspectorPartyRef",
              "inspectedAt",
              "defects",
              "reportEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Vehicle inspection",
        "description": "One vehicle inspection and its defects by governed code and severity. A roadside inspection carries no place or coordinate.",
        "x-truckertech-socket": {
          "socketCode": "maintenance.inspection",
          "schemaVersion": 1,
          "family": "maintenance",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.maintenance.work_order.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "maintenance.work_order"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "workOrderRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerWorkOrderRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "assetRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "assetKind": {
                "type": "string",
                "enum": [
                  "tractor",
                  "trailer",
                  "straight_truck",
                  "other"
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "shopRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "stage": {
                "type": "string",
                "enum": [
                  "opened",
                  "in_progress",
                  "waiting_parts",
                  "completed",
                  "cancelled"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "openedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "odometerKilometers": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 10000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "lines": {
                "maxItems": 200,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "lineRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "jobCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-z][a-z0-9_.-]*$"
                    },
                    "laborMinutes": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 100000
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "partRefs": {
                      "maxItems": 100,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      }
                    }
                  },
                  "required": [
                    "lineRef",
                    "jobCode",
                    "laborMinutes",
                    "partRefs"
                  ],
                  "additionalProperties": false
                }
              },
              "totalAmount": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "inspectionRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "workOrderRef",
              "providerWorkOrderRef",
              "assetRef",
              "assetKind",
              "carrierRoleOrganizationRef",
              "shopRef",
              "stage",
              "status",
              "openedAt",
              "completedAt",
              "odometerKilometers",
              "lines",
              "totalAmount",
              "inspectionRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Maintenance work order",
        "description": "One repair or service order: asset, shop by reference, stage, job lines, kilometres and total. No place or coordinate.",
        "x-truckertech-socket": {
          "socketCode": "maintenance.work_order",
          "schemaVersion": 1,
          "family": "maintenance",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.parts.order.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "parts.order"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "partsOrderRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerOrderRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "supplierRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "buyerRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "workOrderRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "quoted",
                  "ordered",
                  "backordered",
                  "shipped",
                  "delivered",
                  "cancelled",
                  "returned"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "lines": {
                "minItems": 1,
                "maxItems": 200,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "partRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "quantity": {
                      "type": "integer",
                      "exclusiveMinimum": 0,
                      "maximum": 100000
                    },
                    "unitPrice": {
                      "anyOf": [
                        {
                          "type": "object",
                          "properties": {
                            "amountMinorUnits": {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            "currency": {
                              "type": "string",
                              "enum": [
                                "USD",
                                "CAD",
                                "MXN"
                              ]
                            }
                          },
                          "required": [
                            "amountMinorUnits",
                            "currency"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "partRef",
                    "quantity",
                    "unitPrice"
                  ],
                  "additionalProperties": false
                }
              },
              "orderTotal": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "orderedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "expectedDeliveryAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "deliveredAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "partsOrderRef",
              "providerOrderRef",
              "supplierRef",
              "buyerRoleOrganizationRef",
              "workOrderRef",
              "stage",
              "status",
              "lines",
              "orderTotal",
              "orderedAt",
              "expectedDeliveryAt",
              "deliveredAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Parts order",
        "description": "One parts order from a supplier: parts by reference, quantities, prices as evidence and delivery dates, optionally tied to a work order.",
        "x-truckertech-socket": {
          "socketCode": "parts.order",
          "schemaVersion": 1,
          "family": "parts",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.qualification.carrier_compliance.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "qualification.carrier_compliance"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "carrier": {
                "type": "object",
                "properties": {
                  "carrierRoleOrganizationRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "usdotNumber": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{1,8}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "mcNumber": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{1,8}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "otherRegistryRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "carrierRoleOrganizationRef",
                  "usdotNumber",
                  "mcNumber",
                  "otherRegistryRef"
                ],
                "additionalProperties": false
              },
              "determination": {
                "type": "object",
                "properties": {
                  "status": {
                    "$ref": "#/components/schemas/CanonStatus"
                  },
                  "determinedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "date-time",
                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "reasonCode": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z][a-z0-9_.-]*$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "status",
                  "determinedAt",
                  "reasonCode"
                ],
                "additionalProperties": false
              },
              "operatingAuthority": {
                "type": "string",
                "enum": [
                  "active",
                  "inactive",
                  "revoked",
                  "pending",
                  "unknown"
                ]
              },
              "safetyRating": {
                "type": "string",
                "enum": [
                  "satisfactory",
                  "conditional",
                  "unsatisfactory",
                  "not_rated"
                ]
              },
              "insurance": {
                "maxItems": 20,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "coverageType": {
                      "type": "string",
                      "enum": [
                        "auto_liability",
                        "cargo",
                        "general_liability",
                        "workers_compensation"
                      ]
                    },
                    "state": {
                      "type": "string",
                      "enum": [
                        "met",
                        "unmet",
                        "expiring",
                        "expired",
                        "waived",
                        "unknown"
                      ]
                    },
                    "coverageMinorUnits": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 9007199254740991
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "currency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "USD",
                            "CAD",
                            "MXN"
                          ]
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "expiresOn": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "coverageType",
                    "state",
                    "coverageMinorUnits",
                    "currency",
                    "expiresOn"
                  ],
                  "additionalProperties": false
                }
              },
              "requirements": {
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "requirementCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-z][a-z0-9_.-]*$"
                    },
                    "state": {
                      "type": "string",
                      "enum": [
                        "met",
                        "unmet",
                        "expiring",
                        "expired",
                        "waived",
                        "unknown"
                      ]
                    },
                    "expiresOn": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "evidenceRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "requirementCode",
                    "state",
                    "expiresOn",
                    "evidenceRef"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "carrier",
              "determination",
              "operatingAuthority",
              "safetyRating",
              "insurance",
              "requirements"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Carrier qualification and compliance",
        "description": "A partner-reported carrier qualification and compliance determination: operating authority, safety rating, insurance and per-requirement state. The determination is the partner’s and stays attributed.",
        "x-truckertech-socket": {
          "socketCode": "qualification.carrier_compliance",
          "schemaVersion": 1,
          "family": "qualification_compliance",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.retention.driver_signal.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "retention.driver_signal"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "signalRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "programRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "signalCode": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.-]*$"
              },
              "severity": {
                "type": "string",
                "enum": [
                  "info",
                  "watch",
                  "at_risk"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "observedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "evidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "signalRef",
              "driverPersonRef",
              "carrierRoleOrganizationRef",
              "programRef",
              "signalCode",
              "severity",
              "status",
              "observedAt",
              "evidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Driver retention signal",
        "description": "A retention partner’s signal about one driver, by governed code and severity. Partner estimates stay inferred and attributed; no survey text rides on the socket.",
        "x-truckertech-socket": {
          "socketCode": "retention.driver_signal",
          "schemaVersion": 1,
          "family": "retention",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "inferred"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.safety.csa_monitoring.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "safety.csa_monitoring"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "carrier": {
                "type": "object",
                "properties": {
                  "carrierRoleOrganizationRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "usdotNumber": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{1,8}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "mcNumber": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{1,8}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "otherRegistryRef": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "carrierRoleOrganizationRef",
                  "usdotNumber",
                  "mcNumber",
                  "otherRegistryRef"
                ],
                "additionalProperties": false
              },
              "snapshotOn": {
                "type": "string",
                "format": "date",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
              },
              "basics": {
                "maxItems": 7,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "basic": {
                      "type": "string",
                      "enum": [
                        "unsafe_driving",
                        "crash_indicator",
                        "hos_compliance",
                        "vehicle_maintenance",
                        "controlled_substances",
                        "hazardous_materials",
                        "driver_fitness"
                      ]
                    },
                    "percentile": {
                      "anyOf": [
                        {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 100
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "alert": {
                      "type": "boolean"
                    },
                    "inspectionCount": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 1000000
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "basic",
                    "percentile",
                    "alert",
                    "inspectionCount"
                  ],
                  "additionalProperties": false
                }
              },
              "changeCodes": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z][a-z0-9_.-]*$"
                }
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              }
            },
            "required": [
              "carrier",
              "snapshotOn",
              "basics",
              "changeCodes",
              "status"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Safety and CSA monitoring",
        "description": "A safety-monitoring partner’s snapshot of one carrier’s CSA BASIC measures, alerts and change codes. Measures are the partner’s and stay attributed; it is not a qualification determination.",
        "x-truckertech-socket": {
          "socketCode": "safety.csa_monitoring",
          "schemaVersion": 1,
          "family": "safety_monitoring",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.scheduling.appointment.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "scheduling.appointment"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "appointmentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerAppointmentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "kind": {
                "type": "string",
                "enum": [
                  "pickup",
                  "delivery",
                  "drop",
                  "live_load",
                  "live_unload",
                  "other"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "facilityRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "stopCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "windowStart": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "windowEnd": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "facilityTimeZone": {
                "type": "string"
              },
              "dockRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "rescheduleReasonCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cancelledAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "appointmentRef",
              "providerAppointmentRef",
              "kind",
              "status",
              "facilityRef",
              "stopCoreRef",
              "loadCoreRef",
              "windowStart",
              "windowEnd",
              "facilityTimeZone",
              "dockRef",
              "rescheduleReasonCode",
              "cancelledAt"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Scheduling and appointments",
        "description": "A facility appointment window and its partner-reported status. Read and event only in version 1: booking is an external write and stays behind the governed command architecture.",
        "x-truckertech-socket": {
          "socketCode": "scheduling.appointment",
          "schemaVersion": 1,
          "family": "scheduling",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.telematics.hos_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "telematics.hos_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "driverPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "vehicleRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "dutyStatus": {
                "type": "string",
                "enum": [
                  "off_duty",
                  "sleeper_berth",
                  "driving",
                  "on_duty_not_driving",
                  "personal_conveyance",
                  "yard_move"
                ]
              },
              "dutyStatusSince": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "driveRemainingMinutes": {
                "type": "integer",
                "minimum": 0,
                "maximum": 1440
              },
              "shiftRemainingMinutes": {
                "type": "integer",
                "minimum": 0,
                "maximum": 1440
              },
              "cycleRemainingMinutes": {
                "type": "integer",
                "minimum": 0,
                "maximum": 10080
              }
            },
            "required": [
              "driverPersonRef",
              "vehicleRef",
              "status",
              "dutyStatus",
              "dutyStatusSince",
              "driveRemainingMinutes",
              "shiftRemainingMinutes",
              "cycleRemainingMinutes"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Hours-of-service status",
        "description": "A driver’s current duty status and remaining drive, shift and cycle minutes as an ELD reported them. Carries no location.",
        "x-truckertech-socket": {
          "socketCode": "telematics.hos_status",
          "schemaVersion": 1,
          "family": "eld_hos_telematics",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.telematics.vehicle_position.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "telematics.vehicle_position"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "vehicleRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "driverPersonRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "position": {
                "type": "object",
                "properties": {
                  "persistence": {
                    "type": "string",
                    "const": "non_persistable"
                  },
                  "latitude": {
                    "type": "number",
                    "minimum": -90,
                    "maximum": 90
                  },
                  "longitude": {
                    "type": "number",
                    "minimum": -180,
                    "maximum": 180
                  },
                  "headingDegrees": {
                    "anyOf": [
                      {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMaximum": 360
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "speedMetersPerSecond": {
                    "anyOf": [
                      {
                        "type": "number",
                        "minimum": 0,
                        "maximum": 200
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "accuracyMeters": {
                    "anyOf": [
                      {
                        "type": "number",
                        "exclusiveMinimum": 0,
                        "maximum": 100000
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "persistence",
                  "latitude",
                  "longitude",
                  "headingDegrees",
                  "speedMetersPerSecond",
                  "accuracyMeters"
                ],
                "additionalProperties": false
              },
              "positionObservedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "ignitionOn": {
                "type": [
                  "boolean",
                  "null"
                ]
              }
            },
            "required": [
              "vehicleRef",
              "driverPersonRef",
              "position",
              "positionObservedAt",
              "ignitionOn"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Vehicle position (transaction-scoped)",
        "description": "The latest fix for one vehicle. Result-only: the position may be used inside one check and is never stored; only the check’s outcome may persist.",
        "x-truckertech-socket": {
          "socketCode": "telematics.vehicle_position",
          "schemaVersion": 1,
          "family": "eld_hos_telematics",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": [
            "position"
          ]
        }
      },
      "CanonSocket.tms.load.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "tms.load"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "loadRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerLoadRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "orderRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "shipperRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "brokerRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "tendered",
                  "booked",
                  "dispatched",
                  "in_transit",
                  "delivered",
                  "cancelled"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "equipmentType": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "dry_van",
                      "reefer",
                      "flatbed",
                      "step_deck",
                      "tanker",
                      "container",
                      "power_only",
                      "other"
                    ]
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "weightKilograms": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "pieceCount": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 100000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "temperatureControl": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "minCelsius": {
                        "type": "number",
                        "minimum": -60,
                        "maximum": 60
                      },
                      "maxCelsius": {
                        "type": "number",
                        "minimum": -60,
                        "maximum": 60
                      }
                    },
                    "required": [
                      "minCelsius",
                      "maxCelsius"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "distanceMeters": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 20000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "rate": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stops": {
                "minItems": 2,
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "stopRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "stopCoreRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "sequence": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 100
                    },
                    "kind": {
                      "type": "string",
                      "enum": [
                        "pickup",
                        "delivery",
                        "stop_off"
                      ]
                    },
                    "facilityRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "appointmentRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "windowStart": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "windowEnd": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "facilityTimeZone": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "arrivedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "departedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "stopRef",
                    "stopCoreRef",
                    "sequence",
                    "kind",
                    "facilityRef",
                    "appointmentRef",
                    "windowStart",
                    "windowEnd",
                    "facilityTimeZone",
                    "arrivedAt",
                    "departedAt"
                  ],
                  "additionalProperties": false
                }
              },
              "tenderedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cancelledAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "exceptionCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "loadRef",
              "providerLoadRef",
              "loadCoreRef",
              "orderRef",
              "shipperRoleOrganizationRef",
              "brokerRoleOrganizationRef",
              "carrierRoleOrganizationRef",
              "stage",
              "status",
              "equipmentType",
              "weightKilograms",
              "pieceCount",
              "temperatureControl",
              "distanceMeters",
              "rate",
              "stops",
              "tenderedAt",
              "cancelledAt",
              "exceptionCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "TMS loads and orders",
        "description": "One load and the order it serves as a TMS reported it: parties, stage, equipment, metric weight and distance, rate as evidence, and stops by facility and Core reference. Carries no address or coordinates.",
        "x-truckertech-socket": {
          "socketCode": "tms.load",
          "schemaVersion": 1,
          "family": "tms_loads_orders",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.tms.load.v2": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "tms.load"
          },
          "schemaVersion": {
            "type": "number",
            "const": 2
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "loadRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerLoadRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "orderRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "shipperRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "brokerRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stage": {
                "type": "string",
                "enum": [
                  "tendered",
                  "booked",
                  "dispatched",
                  "in_transit",
                  "delivered",
                  "cancelled"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "equipmentType": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "dry_van",
                      "reefer",
                      "flatbed",
                      "step_deck",
                      "tanker",
                      "container",
                      "power_only",
                      "other"
                    ]
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "weightKilograms": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "pieceCount": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 100000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "temperatureControl": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "minCelsius": {
                        "type": "number",
                        "minimum": -60,
                        "maximum": 60
                      },
                      "maxCelsius": {
                        "type": "number",
                        "minimum": -60,
                        "maximum": 60
                      }
                    },
                    "required": [
                      "minCelsius",
                      "maxCelsius"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "distanceMeters": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 20000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "rate": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amountMinorUnits": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USD",
                          "CAD",
                          "MXN"
                        ]
                      }
                    },
                    "required": [
                      "amountMinorUnits",
                      "currency"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stops": {
                "minItems": 2,
                "maxItems": 100,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "stopRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "stopCoreRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "sequence": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 100
                    },
                    "kind": {
                      "type": "string",
                      "enum": [
                        "pickup",
                        "delivery",
                        "stop_off"
                      ]
                    },
                    "facilityRef": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "appointmentRef": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "windowStart": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "windowEnd": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "facilityTimeZone": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "arrivedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "departedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "format": "date-time",
                          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                        },
                        {
                          "type": "null"
                        }
                      ]
                    }
                  },
                  "required": [
                    "stopRef",
                    "stopCoreRef",
                    "sequence",
                    "kind",
                    "facilityRef",
                    "appointmentRef",
                    "windowStart",
                    "windowEnd",
                    "facilityTimeZone",
                    "arrivedAt",
                    "departedAt"
                  ],
                  "additionalProperties": false
                }
              },
              "tenderedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "cancelledAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "exceptionCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "providerVersion": {
                "anyOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "loadRef",
              "providerLoadRef",
              "loadCoreRef",
              "orderRef",
              "shipperRoleOrganizationRef",
              "brokerRoleOrganizationRef",
              "carrierRoleOrganizationRef",
              "stage",
              "status",
              "equipmentType",
              "weightKilograms",
              "pieceCount",
              "temperatureControl",
              "distanceMeters",
              "rate",
              "stops",
              "tenderedAt",
              "cancelledAt",
              "exceptionCode",
              "providerVersion"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "TMS loads and orders (version 2, with commands)",
        "description": "Version 1 of the TMS load fact plus the provider version, and the load create, update and cancel commands. Canonical parameters only: external writes stay disabled.",
        "x-truckertech-socket": {
          "socketCode": "tms.load",
          "schemaVersion": 2,
          "family": "tms_loads_orders",
          "interactionModes": [
            "read",
            "event",
            "command"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.tms.tender_response.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "tms.tender_response"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "loadRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerLoadRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "response": {
                "type": "string",
                "enum": [
                  "accepted",
                  "declined"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "respondedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "declineReasonCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "loadRef",
              "providerLoadRef",
              "loadCoreRef",
              "carrierRoleOrganizationRef",
              "response",
              "status",
              "respondedAt",
              "declineReasonCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "TMS tender response",
        "description": "A carrier’s accept or decline of a load tender as the TMS reported it. Observed only: responding to a tender from TruckerTech is a version-2 command.",
        "x-truckertech-socket": {
          "socketCode": "tms.tender_response",
          "schemaVersion": 1,
          "family": "tms_loads_orders",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.tolls.transaction.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "tolls.transaction"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "transactionRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerTransactionRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "transponderRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "vehicleRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "agencyRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "plazaRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "axleCount": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 2,
                    "maximum": 12
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "amount": {
                "type": "object",
                "properties": {
                  "amountMinorUnits": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USD",
                      "CAD",
                      "MXN"
                    ]
                  }
                },
                "required": [
                  "amountMinorUnits",
                  "currency"
                ],
                "additionalProperties": false
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "transactedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "transactionRef",
              "providerTransactionRef",
              "carrierRoleOrganizationRef",
              "transponderRef",
              "vehicleRef",
              "agencyRef",
              "plazaRef",
              "axleCount",
              "amount",
              "status",
              "transactedAt",
              "loadCoreRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Toll transaction",
        "description": "One toll charge from a toll partner: agency, plaza and transponder by reference, axles and amount. No coordinates.",
        "x-truckertech-socket": {
          "socketCode": "tolls.transaction",
          "schemaVersion": 1,
          "family": "tolls",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.training.course_completion.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "training.course_completion"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "enrollmentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerEnrollmentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "learnerPersonRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "sponsorRoleOrganizationRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "courseRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "state": {
                "type": "string",
                "enum": [
                  "assigned",
                  "in_progress",
                  "completed",
                  "failed",
                  "expired"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "assignedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "completedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "expiresOn": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "certificateEvidenceRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "enrollmentRef",
              "providerEnrollmentRef",
              "learnerPersonRef",
              "sponsorRoleOrganizationRef",
              "courseRef",
              "state",
              "status",
              "assignedAt",
              "completedAt",
              "expiresOn",
              "certificateEvidenceRef"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Training course completion",
        "description": "Where one learner stands on one course from a training partner: state, dates and the certificate by reference. No score detail and no personal data beyond references.",
        "x-truckertech-socket": {
          "socketCode": "training.course_completion",
          "schemaVersion": 1,
          "family": "training",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.visibility.shipment_eta.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "visibility.shipment_eta"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "shipmentRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerShipmentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stopCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "milestone": {
                "type": "string",
                "enum": [
                  "not_started",
                  "en_route_to_pickup",
                  "at_pickup",
                  "in_transit",
                  "at_delivery",
                  "delivered",
                  "exception"
                ]
              },
              "milestoneObservedAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "estimatedArrivalAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "etaConfidence": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "high",
                      "medium",
                      "low"
                    ]
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "delayMinutes": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": -10080,
                    "maximum": 10080
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "distanceRemainingMeters": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 20000000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "exceptionCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "shipmentRef",
              "providerShipmentRef",
              "loadCoreRef",
              "stopCoreRef",
              "status",
              "milestone",
              "milestoneObservedAt",
              "estimatedArrivalAt",
              "etaConfidence",
              "delayMinutes",
              "distanceRemainingMeters",
              "exceptionCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Visibility and ETA",
        "description": "A shipment milestone and estimated arrival from a visibility provider. Carries no coordinates.",
        "x-truckertech-socket": {
          "socketCode": "visibility.shipment_eta",
          "schemaVersion": 1,
          "family": "visibility_eta",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "inferred",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.weather.advisory.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "weather.advisory"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "advisoryRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerAdvisoryRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "zoneRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "facilityRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stopCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "hazardCode": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.-]*$"
              },
              "severity": {
                "type": "string",
                "enum": [
                  "minor",
                  "moderate",
                  "severe",
                  "extreme"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "issuedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "validFrom": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "validUntil": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              }
            },
            "required": [
              "advisoryRef",
              "providerAdvisoryRef",
              "zoneRef",
              "facilityRef",
              "loadCoreRef",
              "stopCoreRef",
              "hazardCode",
              "severity",
              "status",
              "issuedAt",
              "validFrom",
              "validUntil"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "Weather advisory",
        "description": "A weather partner’s advisory for a zone, facility, load or stop, by reference: hazard, severity and validity. Never a coordinate or a polygon.",
        "x-truckertech-socket": {
          "socketCode": "weather.advisory",
          "schemaVersion": 1,
          "family": "weather",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "inferred"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.wms.dock_activity.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "wms.dock_activity"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "activityRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerActivityRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "facilityRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "doorRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "appointmentRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "stopCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "trailerRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "activity": {
                "type": "string",
                "enum": [
                  "checked_in",
                  "door_assigned",
                  "at_door",
                  "loading",
                  "unloading",
                  "completed",
                  "released"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "activityObservedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "palletCount": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 1000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "weightKilograms": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100000
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "exceptionCode": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z][a-z0-9_.-]*$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "activityRef",
              "providerActivityRef",
              "facilityRef",
              "doorRef",
              "appointmentRef",
              "loadCoreRef",
              "stopCoreRef",
              "trailerRef",
              "activity",
              "status",
              "activityObservedAt",
              "palletCount",
              "weightKilograms",
              "exceptionCode"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "WMS dock activity",
        "description": "A dock door activity (check-in, door assignment, loading, unloading, release) as a WMS reported it. A door is a reference, never a coordinate.",
        "x-truckertech-socket": {
          "socketCode": "wms.dock_activity",
          "schemaVersion": 1,
          "family": "wms_yms_dock",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.yms.trailer_status.v1": {
        "type": "object",
        "properties": {
          "socketCode": {
            "type": "string",
            "const": "yms.trailer_status"
          },
          "schemaVersion": {
            "type": "number",
            "const": 1
          },
          "attribution": {
            "$ref": "#/components/schemas/AttributionEnvelope"
          },
          "payload": {
            "type": "object",
            "properties": {
              "trailerRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "providerTrailerRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "facilityRef": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "yardSlotRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "doorRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "carrierRoleOrganizationRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "loadCoreRef": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "yardState": {
                "type": "string",
                "enum": [
                  "in_gate",
                  "parked",
                  "at_door",
                  "out_gate"
                ]
              },
              "loadState": {
                "type": "string",
                "enum": [
                  "empty",
                  "partial",
                  "loaded",
                  "unknown"
                ]
              },
              "status": {
                "$ref": "#/components/schemas/CanonStatus"
              },
              "stateObservedAt": {
                "type": "string",
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              "dwellMinutes": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 525600
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "trailerRef",
              "providerTrailerRef",
              "facilityRef",
              "yardSlotRef",
              "doorRef",
              "carrierRoleOrganizationRef",
              "loadCoreRef",
              "yardState",
              "loadState",
              "status",
              "stateObservedAt",
              "dwellMinutes"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "socketCode",
          "schemaVersion",
          "attribution",
          "payload"
        ],
        "additionalProperties": false,
        "title": "YMS trailer status",
        "description": "Where a trailer sits in a facility yard (gate, yard slot or door) and whether it is loaded, as a YMS reported it. A slot is a reference, never a coordinate.",
        "x-truckertech-socket": {
          "socketCode": "yms.trailer_status",
          "schemaVersion": 1,
          "family": "wms_yms_dock",
          "interactionModes": [
            "read",
            "event"
          ],
          "factClasses": [
            "observed",
            "supplied",
            "derived"
          ],
          "nonPersistablePaths": []
        }
      },
      "CanonStatus": {
        "type": "string",
        "enum": [
          "accepted",
          "received",
          "in_review",
          "action_required",
          "approved",
          "declined",
          "scheduled",
          "completed",
          "cancelled",
          "expired",
          "unknown"
        ],
        "x-truckertech-taxonomy-version": 1
      },
      "FactClass": {
        "type": "string",
        "enum": [
          "observed",
          "supplied",
          "derived",
          "inferred"
        ]
      },
      "IngressOutcome": {
        "type": "object",
        "properties": {
          "outcome": {
            "type": "string",
            "enum": [
              "accepted",
              "refused",
              "conflict",
              "unavailable"
            ]
          }
        },
        "required": [
          "outcome"
        ],
        "additionalProperties": false
      },
      "PartnerWebhookEnvelope": {
        "type": "object",
        "properties": {
          "envelopeVersion": {
            "type": "number",
            "const": 1
          },
          "partnerId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "connectionReference": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "eventId": {
            "type": "string",
            "pattern": "^[\\x21-\\x7e]{1,200}$"
          },
          "eventType": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "idempotencyKey": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "sequenceNumber": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "occurredAtMs": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "payload": {}
        },
        "required": [
          "envelopeVersion",
          "partnerId",
          "connectionReference",
          "eventId",
          "eventType",
          "idempotencyKey",
          "sequenceNumber",
          "occurredAtMs",
          "payload"
        ],
        "additionalProperties": false,
        "description": "One event a Partner delivers for one connection. `payload` is the Partner event; the connector normalizes it to a canonical socket."
      },
      "RemoteMessage": {
        "type": "object",
        "properties": {
          "body": {},
          "protected": {
            "$ref": "#/components/schemas/RemoteProtectedHeader"
          },
          "signature": {
            "type": "string",
            "pattern": "^[A-Za-z0-9_-]{86}$"
          }
        },
        "required": [
          "body",
          "protected",
          "signature"
        ],
        "additionalProperties": false,
        "description": "One `tt-nexus-remote/1` message in canonical form (RFC 8785): the body, the protected header and the Ed25519 signature over both."
      },
      "RemoteProtectedHeader": {
        "type": "object",
        "properties": {
          "alg": {
            "type": "string",
            "minLength": 1,
            "maxLength": 32
          },
          "aud": {
            "type": "string",
            "maxLength": 96,
            "pattern": "^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$"
          },
          "bodySha256": {
            "type": "string",
            "pattern": "^[a-f0-9]{64}$"
          },
          "iss": {
            "type": "string",
            "maxLength": 96,
            "pattern": "^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$"
          },
          "kid": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$"
          },
          "manifestSha256": {
            "type": "string",
            "pattern": "^[a-f0-9]{64}$"
          },
          "nonce": {
            "type": "string",
            "pattern": "^[A-Za-z0-9_-]{22}$"
          },
          "op": {
            "type": "string",
            "enum": [
              "describe",
              "authorize",
              "read",
              "command",
              "events",
              "normalize",
              "health",
              "reconcile"
            ]
          },
          "protocol": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64
          },
          "replyTo": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^[A-Za-z0-9_-]{22}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "ts": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "typ": {
            "type": "string",
            "enum": [
              "request",
              "response"
            ]
          }
        },
        "required": [
          "alg",
          "aud",
          "bodySha256",
          "iss",
          "kid",
          "manifestSha256",
          "nonce",
          "op",
          "protocol",
          "replyTo",
          "ts",
          "typ"
        ],
        "additionalProperties": false
      },
      "RemoteRequestBody.authorize": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          },
          "request": {
            "type": "object",
            "properties": {
              "scopes": {
                "maxItems": 32,
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^[a-z][a-z0-9_.:-]{0,95}$"
                }
              }
            },
            "required": [
              "scopes"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "invocation",
          "request"
        ],
        "additionalProperties": false
      },
      "RemoteRequestBody.command": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          },
          "request": {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "pattern": "^[a-z][a-z0-9_.]{0,63}$"
              },
              "idempotencyKey": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
              },
              "expectedVersion": {
                "anyOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "parameters": {
                "$ref": "#/components/schemas/WireJsonObject"
              }
            },
            "required": [
              "operation",
              "idempotencyKey",
              "expectedVersion",
              "parameters"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "invocation",
          "request"
        ],
        "additionalProperties": false,
        "x-truckertech-status": {
          "state": "built-disabled",
          "rule": "External writes stay disabled until authority, idempotency, reconciliation, rollback and audit evidence pass."
        }
      },
      "RemoteRequestBody.describe": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "RemoteRequestBody.events": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          },
          "request": {
            "type": "object",
            "properties": {
              "mode": {
                "type": "string",
                "const": "poll"
              },
              "cursor": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 512
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "limit": {
                "type": "integer",
                "minimum": 1,
                "maximum": 500
              }
            },
            "required": [
              "mode",
              "cursor",
              "limit"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "invocation",
          "request"
        ],
        "additionalProperties": false
      },
      "RemoteRequestBody.health": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          }
        },
        "required": [
          "invocation"
        ],
        "additionalProperties": false
      },
      "RemoteRequestBody.normalize": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          },
          "request": {
            "type": "object",
            "properties": {
              "source": {
                "type": "string",
                "enum": [
                  "read",
                  "event"
                ]
              },
              "operation": {
                "type": "string",
                "pattern": "^[a-z][a-z0-9_.]{0,63}$"
              },
              "payload": {
                "$ref": "#/components/schemas/WireJsonValue"
              }
            },
            "required": [
              "source",
              "operation",
              "payload"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "invocation",
          "request"
        ],
        "additionalProperties": false
      },
      "RemoteRequestBody.read": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          },
          "request": {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "pattern": "^[a-z][a-z0-9_.]{0,63}$"
              },
              "parameters": {
                "$ref": "#/components/schemas/WireJsonObject"
              }
            },
            "required": [
              "operation",
              "parameters"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "invocation",
          "request"
        ],
        "additionalProperties": false
      },
      "RemoteRequestBody.reconcile": {
        "type": "object",
        "properties": {
          "invocation": {
            "$ref": "#/components/schemas/WireInvocation"
          },
          "request": {
            "type": "object",
            "properties": {
              "operation": {
                "type": "string",
                "pattern": "^[a-z][a-z0-9_.]{0,63}$"
              },
              "idempotencyKey": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
              },
              "expectedVersion": {
                "anyOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "intended": {
                "$ref": "#/components/schemas/WireJsonObject"
              }
            },
            "required": [
              "operation",
              "idempotencyKey",
              "expectedVersion",
              "intended"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "invocation",
          "request"
        ],
        "additionalProperties": false
      },
      "RemoteResponseBody.authorize": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "completed"
              },
              "value": {
                "type": "object",
                "properties": {
                  "grantedScopes": {
                    "maxItems": 32,
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[a-z][a-z0-9_.:-]{0,95}$"
                    }
                  },
                  "externalAccountReference": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "expiresAt": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "grantedScopes",
                  "externalAccountReference",
                  "expiresAt"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "outcome",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "faulted"
              },
              "fault": {
                "type": "string",
                "enum": [
                  "timeout",
                  "rate_limit",
                  "transient_provider_failure",
                  "permanent_provider_rejection",
                  "provider_unavailable"
                ]
              },
              "retryAfterMs": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 86400000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "outcome",
              "fault",
              "retryAfterMs"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "refused"
              },
              "reason": {
                "type": "string",
                "enum": [
                  "invalid-input",
                  "not-declared",
                  "not-admitted",
                  "suspended",
                  "credential-unavailable",
                  "unsupported",
                  "deadline-exceeded",
                  "nonconforming-output"
                ]
              }
            },
            "required": [
              "outcome",
              "reason"
            ],
            "additionalProperties": false
          }
        ]
      },
      "RemoteResponseBody.command": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "acknowledged"
              },
              "providerReference": {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "acknowledgedVersion": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "outcome",
              "providerReference",
              "acknowledgedVersion"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "rejected"
              },
              "rejection": {
                "type": "string",
                "enum": [
                  "expected_version_mismatch",
                  "invalid_command",
                  "not_permitted",
                  "idempotency_conflict"
                ]
              }
            },
            "required": [
              "outcome",
              "rejection"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "unknown"
              },
              "fault": {
                "type": "string",
                "enum": [
                  "timeout",
                  "rate_limit",
                  "transient_provider_failure",
                  "permanent_provider_rejection",
                  "provider_unavailable"
                ]
              }
            },
            "required": [
              "outcome",
              "fault"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "refused"
              },
              "reason": {
                "type": "string",
                "enum": [
                  "invalid-input",
                  "not-declared",
                  "not-admitted",
                  "suspended",
                  "credential-unavailable",
                  "unsupported",
                  "deadline-exceeded",
                  "nonconforming-output"
                ]
              }
            },
            "required": [
              "outcome",
              "reason"
            ],
            "additionalProperties": false
          }
        ],
        "x-truckertech-status": {
          "state": "built-disabled",
          "rule": "External writes stay disabled until authority, idempotency, reconciliation, rollback and audit evidence pass."
        }
      },
      "RemoteResponseBody.describe": {
        "type": "object",
        "properties": {
          "portVersion": {
            "type": "number",
            "const": 1
          },
          "adapterId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 96
          },
          "adapterVersion": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64
          },
          "manifest": {
            "$ref": "#/components/schemas/AdapterManifest"
          }
        },
        "required": [
          "portVersion",
          "adapterId",
          "adapterVersion",
          "manifest"
        ],
        "additionalProperties": false
      },
      "RemoteResponseBody.events": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "completed"
              },
              "value": {
                "type": "object",
                "properties": {
                  "events": {
                    "maxItems": 500,
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "eventId": {
                          "type": "string"
                        },
                        "eventType": {
                          "type": "string",
                          "pattern": "^[a-z][a-z0-9_.]{0,63}$"
                        },
                        "occurredAt": {
                          "type": "string"
                        },
                        "sequence": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "minimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "payload": {
                          "$ref": "#/components/schemas/WireJsonValue"
                        }
                      },
                      "required": [
                        "eventId",
                        "eventType",
                        "occurredAt",
                        "sequence",
                        "payload"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "nextCursor": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 512
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "events",
                  "nextCursor"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "outcome",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "faulted"
              },
              "fault": {
                "type": "string",
                "enum": [
                  "timeout",
                  "rate_limit",
                  "transient_provider_failure",
                  "permanent_provider_rejection",
                  "provider_unavailable"
                ]
              },
              "retryAfterMs": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 86400000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "outcome",
              "fault",
              "retryAfterMs"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "refused"
              },
              "reason": {
                "type": "string",
                "enum": [
                  "invalid-input",
                  "not-declared",
                  "not-admitted",
                  "suspended",
                  "credential-unavailable",
                  "unsupported",
                  "deadline-exceeded",
                  "nonconforming-output"
                ]
              }
            },
            "required": [
              "outcome",
              "reason"
            ],
            "additionalProperties": false
          }
        ]
      },
      "RemoteResponseBody.health": {
        "type": "object",
        "properties": {
          "state": {
            "type": "string",
            "enum": [
              "unknown",
              "healthy",
              "degraded",
              "failed",
              "revoked"
            ]
          },
          "checkedAt": {
            "type": "string"
          },
          "latencyMs": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 600000
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "state",
          "checkedAt",
          "latencyMs"
        ],
        "additionalProperties": false
      },
      "RemoteResponseBody.normalize": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "completed"
              },
              "value": {
                "maxItems": 500,
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "socketCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 120
                    },
                    "schemaVersion": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 999
                    },
                    "factClass": {
                      "type": "string",
                      "enum": [
                        "observed",
                        "supplied",
                        "derived",
                        "inferred"
                      ]
                    },
                    "subjectReference": {
                      "type": "string"
                    },
                    "observedAt": {
                      "type": "string"
                    },
                    "fields": {
                      "$ref": "#/components/schemas/WireJsonObject"
                    },
                    "attribution": {
                      "type": "object",
                      "properties": {
                        "adapterId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 96
                        },
                        "adapterVersion": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 64
                        },
                        "providerCode": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 64
                        },
                        "displayText": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 120
                        }
                      },
                      "required": [
                        "adapterId",
                        "adapterVersion",
                        "providerCode",
                        "displayText"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "socketCode",
                    "schemaVersion",
                    "factClass",
                    "subjectReference",
                    "observedAt",
                    "fields",
                    "attribution"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "outcome",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "faulted"
              },
              "fault": {
                "type": "string",
                "enum": [
                  "timeout",
                  "rate_limit",
                  "transient_provider_failure",
                  "permanent_provider_rejection",
                  "provider_unavailable"
                ]
              },
              "retryAfterMs": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 86400000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "outcome",
              "fault",
              "retryAfterMs"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "refused"
              },
              "reason": {
                "type": "string",
                "enum": [
                  "invalid-input",
                  "not-declared",
                  "not-admitted",
                  "suspended",
                  "credential-unavailable",
                  "unsupported",
                  "deadline-exceeded",
                  "nonconforming-output"
                ]
              }
            },
            "required": [
              "outcome",
              "reason"
            ],
            "additionalProperties": false
          }
        ]
      },
      "RemoteResponseBody.read": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "completed"
              },
              "value": {
                "type": "object",
                "properties": {
                  "operation": {
                    "type": "string",
                    "pattern": "^[a-z][a-z0-9_.]{0,63}$"
                  },
                  "observedAt": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "payload": {
                    "$ref": "#/components/schemas/WireJsonValue"
                  }
                },
                "required": [
                  "operation",
                  "observedAt",
                  "payload"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "outcome",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "faulted"
              },
              "fault": {
                "type": "string",
                "enum": [
                  "timeout",
                  "rate_limit",
                  "transient_provider_failure",
                  "permanent_provider_rejection",
                  "provider_unavailable"
                ]
              },
              "retryAfterMs": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 86400000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "outcome",
              "fault",
              "retryAfterMs"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "refused"
              },
              "reason": {
                "type": "string",
                "enum": [
                  "invalid-input",
                  "not-declared",
                  "not-admitted",
                  "suspended",
                  "credential-unavailable",
                  "unsupported",
                  "deadline-exceeded",
                  "nonconforming-output"
                ]
              }
            },
            "required": [
              "outcome",
              "reason"
            ],
            "additionalProperties": false
          }
        ]
      },
      "RemoteResponseBody.reconcile": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "completed"
              },
              "value": {
                "type": "object",
                "properties": {
                  "state": {
                    "type": "string",
                    "enum": [
                      "applied",
                      "not_applied",
                      "diverged"
                    ]
                  },
                  "observedVersion": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,199}$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "providerReference": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "required": [
                  "state",
                  "observedVersion",
                  "providerReference"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "outcome",
              "value"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "faulted"
              },
              "fault": {
                "type": "string",
                "enum": [
                  "timeout",
                  "rate_limit",
                  "transient_provider_failure",
                  "permanent_provider_rejection",
                  "provider_unavailable"
                ]
              },
              "retryAfterMs": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 86400000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "outcome",
              "fault",
              "retryAfterMs"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "outcome": {
                "type": "string",
                "const": "refused"
              },
              "reason": {
                "type": "string",
                "enum": [
                  "invalid-input",
                  "not-declared",
                  "not-admitted",
                  "suspended",
                  "credential-unavailable",
                  "unsupported",
                  "deadline-exceeded",
                  "nonconforming-output"
                ]
              }
            },
            "required": [
              "outcome",
              "reason"
            ],
            "additionalProperties": false
          }
        ]
      },
      "WireInvocation": {
        "type": "object",
        "properties": {
          "requestId": {
            "type": "string"
          },
          "correlationId": {
            "type": "string"
          },
          "connectionReference": {
            "type": "string"
          },
          "purposeCode": {
            "type": "string"
          },
          "externalAccountReference": {
            "type": [
              "string",
              "null"
            ]
          },
          "socketCode": {
            "type": "string",
            "minLength": 1,
            "maxLength": 120
          },
          "schemaVersion": {
            "type": "integer",
            "minimum": 1,
            "maximum": 999
          },
          "deadlineAtMs": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "requestId",
          "correlationId",
          "connectionReference",
          "purposeCode",
          "externalAccountReference",
          "socketCode",
          "schemaVersion",
          "deadlineAtMs"
        ],
        "additionalProperties": false
      },
      "WireJsonObject": {
        "description": "Wire JSON: objects, arrays, strings, integers in the IEEE-754 safe range (never -0), true and false, and null. Strings are well-formed Unicode of at most 65536 characters; an object has at most 4096 members and an array at most 4096 items; nesting is at most 32 levels; no member is named __proto__, constructor or prototype at any depth.",
        "type": "object"
      },
      "WireJsonValue": {
        "description": "Wire JSON: objects, arrays, strings, integers in the IEEE-754 safe range (never -0), true and false, and null. Strings are well-formed Unicode of at most 65536 characters; an object has at most 4096 members and an array at most 4096 items; nesting is at most 32 levels; no member is named __proto__, constructor or prototype at any depth.",
        "type": [
          "object",
          "array",
          "string",
          "integer",
          "boolean",
          "null"
        ]
      }
    },
    "messages": {
      "PartnerEvent": {
        "name": "PartnerEvent",
        "title": "Partner event",
        "summary": "One signed event a Partner delivers for one connection.",
        "contentType": "application/json",
        "headers": {
          "type": "object",
          "required": [
            "x-tt-nexus-signature"
          ],
          "properties": {
            "x-tt-nexus-signature": {
              "type": "string",
              "pattern": "^hmac-sha256;key-id=[A-Za-z0-9][A-Za-z0-9._:-]{0,127};t=[1-9][0-9]{0,15};value=[0-9a-f]{64}$"
            }
          }
        },
        "payload": {
          "$ref": "#/components/schemas/PartnerWebhookEnvelope"
        }
      },
      "RemoteConnectorRequest": {
        "name": "RemoteConnectorRequest",
        "title": "Remote connector request",
        "summary": "A signed `tt-nexus-remote/1` request from TruckerTech Nexus (`typ: \"request\"`).",
        "contentType": "application/json",
        "headers": {
          "type": "object",
          "required": [
            "tt-nexus-protocol"
          ],
          "properties": {
            "tt-nexus-protocol": {
              "const": "tt-nexus-remote/1"
            }
          }
        },
        "payload": {
          "$ref": "#/components/schemas/RemoteMessage"
        }
      },
      "RemoteConnectorResponse": {
        "name": "RemoteConnectorResponse",
        "title": "Remote connector response",
        "summary": "The connector's signed `tt-nexus-remote/1` response (`typ: \"response\"`), bound to the request by `replyTo`.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/RemoteMessage"
        }
      },
      "CanonSocket.career.workflow_status.v1": {
        "name": "CanonSocket.career.workflow_status.v1",
        "title": "Career workflow status",
        "summary": "Application, offer and onboarding status of one candidate as a partner recruiting workflow reported it. References only: no personal data beyond the candidate’s Person reference.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.career.workflow_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "career.workflow_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.carrier_identity.risk_signals.v1": {
        "name": "CanonSocket.carrier_identity.risk_signals.v1",
        "title": "Carrier Identity risk signals",
        "summary": "A Carrier Identity partner’s own assessment of a carrier, the canonical risk signals behind it, counts and watch-list state. The partner’s fact, attributed and as-of; never a TruckerTech verification or score.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.carrier_identity.risk_signals.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "carrier_identity.risk_signals",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.communications.channel_message.v1": {
        "name": "CanonSocket.communications.channel_message.v1",
        "title": "Communications: channel message",
        "summary": "Metadata of one message on a connected channel: parties by reference, thread, delivery state and times. The body is a reference, never content; no email address or phone number is an identifier.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.communications.channel_message.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "communications.channel_message",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.documents.document_status.v1": {
        "name": "CanonSocket.documents.document_status.v1",
        "title": "Document status",
        "summary": "The state of one document version as a document system reported it: kind, owner, version chain and content digest. The document is a reference, never its content.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.documents.document_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "documents.document_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.background_check.v1": {
        "name": "CanonSocket.driver_lifecycle.background_check.v1",
        "title": "Background check",
        "summary": "The outcome of a background check for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.driver_lifecycle.background_check.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.background_check",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.clearinghouse_query.v1": {
        "name": "CanonSocket.driver_lifecycle.clearinghouse_query.v1",
        "title": "Drug and Alcohol Clearinghouse query",
        "summary": "The outcome of a Drug and Alcohol Clearinghouse query for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.driver_lifecycle.clearinghouse_query.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.clearinghouse_query",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.dac_report.v1": {
        "name": "CanonSocket.driver_lifecycle.dac_report.v1",
        "title": "DAC employment history report",
        "summary": "The outcome of a DAC employment history report for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.driver_lifecycle.dac_report.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.dac_report",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.mvr_result.v1": {
        "name": "CanonSocket.driver_lifecycle.mvr_result.v1",
        "title": "Driver MVR result",
        "summary": "The outcome of a motor vehicle record for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.driver_lifecycle.mvr_result.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.mvr_result",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.driver_lifecycle.voe_result.v1": {
        "name": "CanonSocket.driver_lifecycle.voe_result.v1",
        "title": "Verification of employment",
        "summary": "The outcome of a verification of employment for one driver as the provider reported it: status, outcome, finding codes and dates. No raw report and no personal data beyond references.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.driver_lifecycle.voe_result.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "driver_lifecycle.voe_result",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.equipment_finance.agreement_status.v1": {
        "name": "CanonSocket.equipment_finance.agreement_status.v1",
        "title": "Equipment lease or financing status",
        "summary": "The status of one equipment lease or financing agreement: stage, assets by reference and the next payment as evidence. No bank account or payment instruction.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.equipment_finance.agreement_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "equipment_finance.agreement_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.erp.demand.v1": {
        "name": "CanonSocket.erp.demand.v1",
        "title": "ERP demand",
        "summary": "Freight demand (an order or forecast) from a shipper ERP: facilities by reference, windows, and metric lines. Read and event only; releasing or tendering demand is an external write.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.erp.demand.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "erp.demand",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.esignature.envelope_status.v1": {
        "name": "CanonSocket.esignature.envelope_status.v1",
        "title": "E-signature envelope status",
        "summary": "The state of one signature envelope and each signer, by party reference, as an e-signature provider reported it. No signer contact point, name or signature image.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.esignature.envelope_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "esignature.envelope_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.factoring.credit_approval.v1": {
        "name": "CanonSocket.factoring.credit_approval.v1",
        "title": "Factoring credit approval",
        "summary": "The carrier’s own factor’s credit decision on a broker or shipper, read with the carrier’s recorded authorization; carrier-only, attributed, with its age. TruckerTech computes no score.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.factoring.credit_approval.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "factoring.credit_approval",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.factoring.invoice_funding.v1": {
        "name": "CanonSocket.factoring.invoice_funding.v1",
        "title": "Factoring and payments: invoice funding",
        "summary": "Observed funding and remittance state of one invoice at a factoring or payments provider. Evidence only: no payment destination, instruction or trigger.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.factoring.invoice_funding.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "factoring.invoice_funding",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.factoring.invoice_funding.v2": {
        "name": "CanonSocket.factoring.invoice_funding.v2",
        "title": "Factoring and payments: invoice funding (version 2, with the hand-off)",
        "summary": "Version 1 of the invoice funding fact plus the factor’s record version, and the invoice hand-off and withdrawal commands. Evidence by reference; no payment destination; not a funding trigger.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.factoring.invoice_funding.v2"
        },
        "x-truckertech-socket": {
          "socketCode": "factoring.invoice_funding",
          "schemaVersion": 2,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.freight_audit.invoice_audit.v1": {
        "name": "CanonSocket.freight_audit.invoice_audit.v1",
        "title": "Freight invoice audit",
        "summary": "A freight audit partner’s result on one freight invoice: billed and approved amounts and coded adjustments, as evidence. No payment instruction.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.freight_audit.invoice_audit.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "freight_audit.invoice_audit",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.fuel.price.v1": {
        "name": "CanonSocket.fuel.price.v1",
        "title": "Fuel price",
        "summary": "A station’s retail and discounted price for one fuel, per kilolitre, with the discount program by reference. The station is a reference, never a coordinate.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.fuel.price.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "fuel.price",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.fuel.transaction.v1": {
        "name": "CanonSocket.fuel.transaction.v1",
        "title": "Fuel transaction",
        "summary": "One fuel purchase from a fuel card or network: card and station by reference, litres, price per kilolitre, total and discount. No card number and no coordinates.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.fuel.transaction.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "fuel.transaction",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.identity.assurance_result.v1": {
        "name": "CanonSocket.identity.assurance_result.v1",
        "title": "Identity assurance result",
        "summary": "The outcome of identity, document and liveness checks a proofing provider ran for one Person. Carries outcomes and references only; TruckerTech decides the assurance level.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.identity.assurance_result.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "identity.assurance_result",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.insurance.claim_status.v1": {
        "name": "CanonSocket.insurance.claim_status.v1",
        "title": "Insurance claim status",
        "summary": "Where one insurance claim stands with a claims-services partner: coverage, stage, amounts as evidence and documents by reference. A loss carries its date, never its place.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.insurance.claim_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "insurance.claim_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.load_board.posting.v1": {
        "name": "CanonSocket.load_board.posting.v1",
        "title": "Load board posting",
        "summary": "A native or external-board load with its source and age, regions by reference, and the strict default filter inputs. Carries no address or coordinates.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.load_board.posting.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "load_board.posting",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.maintenance.inspection.v1": {
        "name": "CanonSocket.maintenance.inspection.v1",
        "title": "Vehicle inspection",
        "summary": "One vehicle inspection and its defects by governed code and severity. A roadside inspection carries no place or coordinate.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.maintenance.inspection.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "maintenance.inspection",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.maintenance.work_order.v1": {
        "name": "CanonSocket.maintenance.work_order.v1",
        "title": "Maintenance work order",
        "summary": "One repair or service order: asset, shop by reference, stage, job lines, kilometres and total. No place or coordinate.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.maintenance.work_order.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "maintenance.work_order",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.parts.order.v1": {
        "name": "CanonSocket.parts.order.v1",
        "title": "Parts order",
        "summary": "One parts order from a supplier: parts by reference, quantities, prices as evidence and delivery dates, optionally tied to a work order.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.parts.order.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "parts.order",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.qualification.carrier_compliance.v1": {
        "name": "CanonSocket.qualification.carrier_compliance.v1",
        "title": "Carrier qualification and compliance",
        "summary": "A partner-reported carrier qualification and compliance determination: operating authority, safety rating, insurance and per-requirement state. The determination is the partner’s and stays attributed.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.qualification.carrier_compliance.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "qualification.carrier_compliance",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.retention.driver_signal.v1": {
        "name": "CanonSocket.retention.driver_signal.v1",
        "title": "Driver retention signal",
        "summary": "A retention partner’s signal about one driver, by governed code and severity. Partner estimates stay inferred and attributed; no survey text rides on the socket.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.retention.driver_signal.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "retention.driver_signal",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.safety.csa_monitoring.v1": {
        "name": "CanonSocket.safety.csa_monitoring.v1",
        "title": "Safety and CSA monitoring",
        "summary": "A safety-monitoring partner’s snapshot of one carrier’s CSA BASIC measures, alerts and change codes. Measures are the partner’s and stay attributed; it is not a qualification determination.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.safety.csa_monitoring.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "safety.csa_monitoring",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.scheduling.appointment.v1": {
        "name": "CanonSocket.scheduling.appointment.v1",
        "title": "Scheduling and appointments",
        "summary": "A facility appointment window and its partner-reported status. Read and event only in version 1: booking is an external write and stays behind the governed command architecture.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.scheduling.appointment.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "scheduling.appointment",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.telematics.hos_status.v1": {
        "name": "CanonSocket.telematics.hos_status.v1",
        "title": "Hours-of-service status",
        "summary": "A driver’s current duty status and remaining drive, shift and cycle minutes as an ELD reported them. Carries no location.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.telematics.hos_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "telematics.hos_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.telematics.vehicle_position.v1": {
        "name": "CanonSocket.telematics.vehicle_position.v1",
        "title": "Vehicle position (transaction-scoped)",
        "summary": "The latest fix for one vehicle. Result-only: the position may be used inside one check and is never stored; only the check’s outcome may persist.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.telematics.vehicle_position.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "telematics.vehicle_position",
          "schemaVersion": 1,
          "nonPersistablePaths": [
            "position"
          ]
        }
      },
      "CanonSocket.tms.load.v1": {
        "name": "CanonSocket.tms.load.v1",
        "title": "TMS loads and orders",
        "summary": "One load and the order it serves as a TMS reported it: parties, stage, equipment, metric weight and distance, rate as evidence, and stops by facility and Core reference. Carries no address or coordinates.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.tms.load.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "tms.load",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.tms.load.v2": {
        "name": "CanonSocket.tms.load.v2",
        "title": "TMS loads and orders (version 2, with commands)",
        "summary": "Version 1 of the TMS load fact plus the provider version, and the load create, update and cancel commands. Canonical parameters only: external writes stay disabled.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.tms.load.v2"
        },
        "x-truckertech-socket": {
          "socketCode": "tms.load",
          "schemaVersion": 2,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.tms.tender_response.v1": {
        "name": "CanonSocket.tms.tender_response.v1",
        "title": "TMS tender response",
        "summary": "A carrier’s accept or decline of a load tender as the TMS reported it. Observed only: responding to a tender from TruckerTech is a version-2 command.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.tms.tender_response.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "tms.tender_response",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.tolls.transaction.v1": {
        "name": "CanonSocket.tolls.transaction.v1",
        "title": "Toll transaction",
        "summary": "One toll charge from a toll partner: agency, plaza and transponder by reference, axles and amount. No coordinates.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.tolls.transaction.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "tolls.transaction",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.training.course_completion.v1": {
        "name": "CanonSocket.training.course_completion.v1",
        "title": "Training course completion",
        "summary": "Where one learner stands on one course from a training partner: state, dates and the certificate by reference. No score detail and no personal data beyond references.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.training.course_completion.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "training.course_completion",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.visibility.shipment_eta.v1": {
        "name": "CanonSocket.visibility.shipment_eta.v1",
        "title": "Visibility and ETA",
        "summary": "A shipment milestone and estimated arrival from a visibility provider. Carries no coordinates.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.visibility.shipment_eta.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "visibility.shipment_eta",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.weather.advisory.v1": {
        "name": "CanonSocket.weather.advisory.v1",
        "title": "Weather advisory",
        "summary": "A weather partner’s advisory for a zone, facility, load or stop, by reference: hazard, severity and validity. Never a coordinate or a polygon.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.weather.advisory.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "weather.advisory",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.wms.dock_activity.v1": {
        "name": "CanonSocket.wms.dock_activity.v1",
        "title": "WMS dock activity",
        "summary": "A dock door activity (check-in, door assignment, loading, unloading, release) as a WMS reported it. A door is a reference, never a coordinate.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.wms.dock_activity.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "wms.dock_activity",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      },
      "CanonSocket.yms.trailer_status.v1": {
        "name": "CanonSocket.yms.trailer_status.v1",
        "title": "YMS trailer status",
        "summary": "Where a trailer sits in a facility yard (gate, yard slot or door) and whether it is loaded, as a YMS reported it. A slot is a reference, never a coordinate.",
        "contentType": "application/json",
        "payload": {
          "$ref": "#/components/schemas/CanonSocket.yms.trailer_status.v1"
        },
        "x-truckertech-socket": {
          "socketCode": "yms.trailer_status",
          "schemaVersion": 1,
          "nonPersistablePaths": []
        }
      }
    }
  }
}
