Vooma API

The Api API from Vooma — 0 operation(s) for api.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vooma-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vooma-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: API
  version: 0.1.0
  contact: {}
servers:
- url: https://api.vooma.ai/v0
  description: Vooma API
tags:
- name: Api
paths: {}
webhooks:
  onAppointmentUpdated:
    post:
      operationId: OnAppointmentUpdated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when an appointment is updated.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppointmentUpdatedEvent'
      tags:
      - Api
  onCarrierCreated:
    post:
      operationId: OnCarrierCreated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a carrier is created.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CarrierCreatedEvent'
      tags:
      - Api
  onCarrierUpdated:
    post:
      operationId: OnCarrierUpdated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a carrier is updated.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CarrierUpdatedEvent'
      tags:
      - Api
  onCustomerCreated:
    post:
      operationId: OnCustomerCreated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a customer is created.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomerCreatedEvent'
      tags:
      - Api
  onCustomerUpdated:
    post:
      operationId: OnCustomerUpdated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a customer is updated.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomerUpdatedEvent'
      tags:
      - Api
  onLocationCreated:
    post:
      operationId: OnLocationCreated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a location is created.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocationCreatedEvent'
      tags:
      - Api
  onLocationUpdated:
    post:
      operationId: OnLocationUpdated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a location is updated.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LocationUpdatedEvent'
      tags:
      - Api
  onOrderCreated:
    post:
      operationId: OnOrderCreated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when an order is created.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderCreatedEvent'
      tags:
      - Api
  onOrderUpdated:
    post:
      operationId: OnOrderUpdated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when an order is updated.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderUpdatedEvent'
      tags:
      - Api
  onTrackingUpdateCreated:
    post:
      operationId: OnTrackingUpdateCreated
      responses:
        '200':
          description: OK
        '204':
          description: No content
      description: Sent by Vooma to your server when a new tracking update is available.
      security: []
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrackingUpdateEvent'
      tags:
      - Api
components:
  schemas:
    Dimensions:
      $ref: '#/components/schemas/V0Dimensions.Dimensions'
    V0Financials.Amount:
      properties:
        uom:
          $ref: '#/components/schemas/CurrencyUnits'
        value:
          type: number
          format: double
      required:
      - uom
      - value
      type: object
    LineItemType:
      enum:
      - FREIGHT_FLAT
      - FREIGHT_PER_MILE
      - FUEL
      - FUEL_FLAT
      - FUEL_PER_MILE
      - FREIGHT_PER_CONTAINER
      - CHASSIS
      - OVERWEIGHT
      - PRE_PULL
      - STORAGE
      - DETENTION
      - TMF_PIER_PASS
      - PORT_FEE
      - REDELIVERY
      - EXTRA_MILES
      - TRANSLOAD
      - ESCORT
      - EXPEDITED
      - CHASSIS_SPLIT
      - OTHER
      type: string
    Equipment:
      $ref: '#/components/schemas/V0Equipment.Equipment'
    MayHaveID_CarrierData_:
      allOf:
      - properties:
          id:
            type: string
        type: object
      - $ref: '#/components/schemas/CarrierData'
    MayHaveID_OrderStopData_:
      allOf:
      - properties:
          id:
            type: string
        type: object
      - $ref: '#/components/schemas/OrderStopData'
    V0Dimensions.Dimension:
      properties:
        value:
          type: number
          format: double
        units:
          anyOf:
          - $ref: '#/components/schemas/DimensionUnits'
          - type: string
          description: Typically one of the DimensionUnits enum values but subject to change
      required:
      - value
      - units
      type: object
      additionalProperties: false
    OrderStop:
      $ref: '#/components/schemas/V0Stop.OrderStop'
    LocationContactData:
      $ref: '#/components/schemas/BaseContactData'
    WithId_OrderData_:
      allOf:
      - properties:
          id:
            type: string
        required:
        - id
        type: object
      - $ref: '#/components/schemas/OrderData'
    V0Datetime.DateTimeRange:
      properties:
        startDate:
          type: string
          description: Start date in YYYY-MM-DD format
        endDate:
          type: string
          description: Optional end date in YYYY-MM-DD format
        startTime:
          type: string
          description: Optional start time in `timzone` and HH:mm:ss format.
        endTime:
          type: string
          description: Optional end time in `timezone` and HH:mm:ss format
        timezone:
          type: string
          description: Optional timezone in [tz database](https://en.wikipedia.org/wiki/Tz_database) format e.g. "America/New_York". If omitted UTC is assumed.
        type:
          $ref: '#/components/schemas/DateTimeRangeType'
      required:
      - startDate
      type: object
      additionalProperties: false
    UserExternalIdentifier:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/UserExternalIdentifierType'
          - type: string
          description: 'Typically one of the UserExternalIdentifierType enum values

            but subject to change'
        value:
          type: string
      required:
      - type
      - value
      type: object
      additionalProperties: false
    OrderUpdatedEvent:
      $ref: '#/components/schemas/V0Order.OrderUpdatedEvent'
    OrderStopLocation:
      $ref: '#/components/schemas/V0Location.OrderStopLocation'
    UserExternalIdentifierType:
      enum:
      - CUSTOM
      - EMAIL
      - PHONE
      - VOOMA_USERNAME
      type: string
    AppointmentData:
      properties:
        confirmationNumber:
          type: string
        timezone:
          type: string
          description: Optional timezone in [tz database](https://en.wikipedia.org/wiki/Tz_database) format e.g. "America/New_York" or "UTC".
        confirmedDatetimeUTC:
          type: string
          format: date-time
          description: Optional ISO 8601 UTC datetime in format 2025-02-19T18:00Z for the time that Vooma confirmed the appointment.
        confirmedDatetime:
          type: string
          format: date-time
          description: Optional ISO 8601 local datetime in format 2025-02-19T13:00-05:00 for the time that Vooma confirmed the appointment. This will end in +00:00 if we are missing timezone information.
        requestedDatetimeUTC:
          type: string
          format: date-time
          description: Optional ISO 8601 UTC datetime in format 2025-02-19T18:00Z for the time that Vooma requested the appointment.
        requestedDatetime:
          type: string
          format: date-time
          description: Optional ISO 8601 local datetime in format 2025-02-19T13:00-05:00 for the time that Vooma requested the appointment. This will end in +00:00 if we are missing timezone information.
        stopIndex:
          type: number
          format: double
        movementid:
          type: string
        status:
          $ref: '#/components/schemas/AppointmentStatus'
      required:
      - requestedDatetimeUTC
      - requestedDatetime
      - stopIndex
      - status
      type: object
    CarrierContactData:
      allOf:
      - $ref: '#/components/schemas/BaseContactData'
      - properties:
          carrierId:
            type: string
        required:
        - carrierId
        type: object
    V0Reference.Reference:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/ReferenceType'
          - type: string
          description: 'Typically one of the ReferenceType enum values

            but subject to change'
        value:
          type: string
      required:
      - type
      - value
      type: object
      additionalProperties: false
    TrackingUpdateEvent:
      $ref: '#/components/schemas/V0TrackingUpdate.TrackingUpdateEvent'
    Environment:
      enum:
      - TEST
      - PRODUCTION
      type: string
    PhoneSchedulingMethod:
      properties:
        contact:
          $ref: '#/components/schemas/LocationContact'
        type:
          type: string
          enum:
          - PHONE
          nullable: false
      required:
      - contact
      - type
      type: object
    PortalSchedulingMethod:
      properties:
        details:
          $ref: '#/components/schemas/PortalSchedulingDetails'
        type:
          type: string
          enum:
          - PORTAL
          nullable: false
      required:
      - details
      - type
      type: object
    MayHaveID_AppointmentData_:
      allOf:
      - properties:
          id:
            type: string
        type: object
      - $ref: '#/components/schemas/AppointmentData'
    EmailSchedulingMethod:
      properties:
        contact:
          $ref: '#/components/schemas/LocationContact'
        type:
          type: string
          enum:
          - EMAIL
          nullable: false
      required:
      - contact
      - type
      type: object
    LocationExternalIdentifier:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/LocationExternalIdentifierType'
          - type: string
          description: 'Typically one of the LocationExternalIdentifierType enum values

            but subject to change'
        value:
          type: string
      required:
      - type
      - value
      type: object
      additionalProperties: false
    GeoCoordinates:
      properties:
        longitude:
          type: number
          format: double
        latitude:
          type: number
          format: double
      required:
      - longitude
      - latitude
      type: object
    Liftgate:
      properties:
        type:
          type: string
          enum:
          - LIFTGATE
          nullable: false
      required:
      - type
      type: object
    Location:
      $ref: '#/components/schemas/MayHaveID_LocationData_'
    V0Order.OrderCreatedEvent:
      properties:
        order:
          $ref: '#/components/schemas/Order'
        event:
          type: string
          enum:
          - order.created
          nullable: false
      required:
      - order
      - event
      type: object
    V0TrackingUpdate.TrackingUpdateEvent:
      properties:
        trackingUpdate:
          $ref: '#/components/schemas/TrackingUpdate'
        event:
          type: string
          enum:
          - trackingUpdate.created
          nullable: false
      required:
      - trackingUpdate
      - event
      type: object
    CarrierData:
      properties:
        equipment:
          items:
            $ref: '#/components/schemas/CarrierEquipment'
          type: array
        contacts:
          items:
            $ref: '#/components/schemas/CarrierContact'
          type: array
        dotNumber:
          type: string
        mcNumber:
          type: string
        name:
          type: string
      required:
      - name
      type: object
    V0Carrier.CarrierUpdatedEvent:
      properties:
        carrier:
          $ref: '#/components/schemas/Carrier'
        event:
          type: string
          enum:
          - carrier.updated
          nullable: false
      required:
      - carrier
      - event
      type: object
    V0Schedule.SchedulingDetails:
      properties:
        maxDaysAhead:
          type: number
          format: double
        notes:
          type: string
        methods:
          items:
            $ref: '#/components/schemas/SchedulingMethod'
          type: array
      required:
      - methods
      type: object
    CarrierUpdatedEvent:
      $ref: '#/components/schemas/V0Carrier.CarrierUpdatedEvent'
    LocationCreatedEvent:
      properties:
        location:
          $ref: '#/components/schemas/Location'
        event:
          type: string
          enum:
          - location.created
          nullable: false
      required:
      - location
      - event
      type: object
    TrackingStatus:
      type: string
    Pick_LocationData.Exclude_keyofLocationData.scheduling__:
      properties:
        externalIds:
          items:
            $ref: '#/components/schemas/LocationExternalIdentifier'
          type: array
        address:
          $ref: '#/components/schemas/Address'
        geoCoordinates:
          $ref: '#/components/schemas/GeoCoordinates'
        hours:
          $ref: '#/components/schemas/FacilityHours'
        contacts:
          items:
            $ref: '#/components/schemas/LocationContact'
          type: array
        name:
          type: string
      required:
      - externalIds
      - address
      type: object
      description: From T, pick a set of properties whose keys are in the union K
    Customer:
      $ref: '#/components/schemas/WithId_CustomerData_'
    Contact:
      $ref: '#/components/schemas/V0Contact.Contact'
    Tarping:
      properties:
        size:
          $ref: '#/components/schemas/Dimension'
        type:
          type: string
          enum:
          - TARPING
          nullable: false
      required:
      - size
      - type
      type: object
    WithId_CustomerData_:
      allOf:
      - properties:
          id:
            type: string
        required:
        - id
        type: object
      - $ref: '#/components/schemas/CustomerData'
    ContactData:
      anyOf:
      - $ref: '#/components/schemas/CarrierContactData'
      - $ref: '#/components/schemas/CustomerContactData'
      - $ref: '#/components/schemas/LocationContactData'
    SchedulingType:
      enum:
      - FIRST_COME_FIRST_SERVE
      - APPOINTMENT
      type: string
    CurrencyUnits:
      enum:
      - USD
      - CAD
      type: string
    V0Weight.Weight:
      properties:
        units:
          $ref: '#/components/schemas/WeightUnits'
        value:
          type: number
          format: double
      required:
      - units
      - value
      type: object
    OrderRoute:
      $ref: '#/components/schemas/V0Route.OrderRoute'
    HeadacheRack:
      properties:
        type:
          type: string
          enum:
          - HEADACHE_RACK
          nullable: false
      required:
      - type
      type: object
    Appointment:
      $ref: '#/components/schemas/MayHaveID_AppointmentData_'
    CoilRack:
      properties:
        type:
          type: string
          enum:
          - COIL_RACK
          nullable: false
      required:
      - type
      type: object
    V0Accessorial.Accessorial:
      anyOf:
      - $ref: '#/components/schemas/Tarping'
      - $ref: '#/components/schemas/Liftgate'
      - $ref: '#/components/schemas/HeadacheRack'
      - $ref: '#/components/schemas/CoilRack'
      - $ref: '#/components/schemas/PipeStakes'
      - $ref: '#/components/schemas/Gps'
      - $ref: '#/components/schemas/OverDimension'
      - $ref: '#/components/schemas/BlindShipment'
      - $ref: '#/components/schemas/DriverAssistance'
      - $ref: '#/components/schemas/Scale'
      - $ref: '#/components/schemas/Straps'
      - $ref: '#/components/schemas/Team'
      - $ref: '#/components/schemas/Transloading'
      - $ref: '#/components/schemas/Ppe'
      - $ref: '#/components/schemas/ChainsAndBinders'
      - $ref: '#/components/schemas/Dunnage'
      - $ref: '#/components/schemas/FoodGrade'
      - $ref: '#/components/schemas/Twic'
      - $ref: '#/components/schemas/LimitedAccess'
      - $ref: '#/components/schemas/InsidePickup'
      - $ref: '#/components/schemas/InsideDelivery'
      - $ref: '#/components/schemas/Permit'
      - $ref: '#/components/schemas/Other'
    CustomerUpdatedEvent:
      properties:
        customer:
          $ref: '#/components/schemas/Customer'
        event:
          type: string
          enum:
          - customer.updated
          nullable: false
      required:
      - customer
      - event
      type: object
    LineItem:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/LineItemType'
          - type: string
          description: Typically one of the LineItemType enum values but subject to change
        description:
          type: string
        amount:
          $ref: '#/components/schemas/Amount'
      required:
      - description
      - amount
      type: object
      additionalProperties: false
    FacilityHours:
      properties:
        sunday:
          $ref: '#/components/schemas/DayHours'
        saturday:
          $ref: '#/components/schemas/DayHours'
        friday:
          $ref: '#/components/schemas/DayHours'
        thursday:
          $ref: '#/components/schemas/DayHours'
        wednesday:
          $ref: '#/components/schemas/DayHours'
        tuesday:
          $ref: '#/components/schemas/DayHours'
        monday:
          $ref: '#/components/schemas/DayHours'
      type: object
    DrayageSubtype:
      enum:
      - IMPORT
      - EXPORT
      type: string
    V0Route.OrderRoute:
      properties:
        stops:
          items:
            $ref: '#/components/schemas/OrderStop'
          type: array
        mileage:
          $ref: '#/components/schemas/Mileage'
      required:
      - stops
      type: object
    Scale:
      properties:
        type:
          type: string
          enum:
          - SCALE
          nullable: false
      required:
      - type
      type: object
    OrderStopData:
      allOf:
      - $ref: '#/components/schemas/CommonStopData'
      - properties:
          location:
            $ref: '#/components/schemas/OrderStopLocation'
        required:
        - location
        type: object
    SchedulingMethod:
      anyOf:
      - $ref: '#/components/schemas/EmailSchedulingMethod'
      - $ref: '#/components/schemas/PhoneSchedulingMethod'
      - $ref: '#/components/schemas/PortalSchedulingMethod'
    ShippingUnits:
      enum:
      - BAGS
      - BALES
      - BOTTLES
      - BOXES
      - BUNDLES
      - CARTONS
      - CASES
      - CRATES
      - DRUMS
      - PACKAGES
      - PAILS
      - PALLETS
      - PIECES
      - ROLLS
      - SKIDS
      - TRUCKLOADS
      - TUBES
      - UNITS
      - VEHICLES
      type: string
    V0Cargo.Cargo:
      properties:
        declaredValue:
          $ref: '#/components/schemas/Amount'
        dimensions:
          $ref: '#/components/schemas/Dimensions'
        totalWeight:
          $ref: '#/components/schemas/Weight'
        commodities:
          items:
            $ref: '#/components/schemas/Commodity'
          type: array
      required:
      - commodities
      type: object
    LocationData:
      properties:
        name:
          type: string
        contacts:
          items:
            $ref: '#/components/schemas/LocationContact'
          type: array
        hours:
          $ref: '#/components/schemas/FacilityHours'
        scheduling:
          $ref: '#/components/schemas/SchedulingDetails'
        geoCoordinates:
          $ref: '#/components/schemas/GeoCoordinates'
        address:
          $ref: '#/components/schemas/Address'
        externalIds:
          items:
            $ref: '#/components/schemas/LocationExternalIdentifier'
          type: array
      required:
      - address
      - externalIds
      type: object
    Gps:
      properties:
        type:
          type: string
          enum:
          - GPS
          nullable: false
      required:
      - type
      type: object
    V0Location.OrderStopLocation:
      $ref: '#/components/schemas/MayHaveID_Omit_LocationData.scheduling__'
    V0Contact.LocationContact:
      $ref: '#/components/schemas/MayHaveID_LocationContactData_'
    ChargesToCustomer:
      $ref: '#/components/schemas/V0Shipment.ChargesToCustomer'
    Other:
      properties:
        description:
          type: string
        type:
          type: string
          enum:
          - OTHER
          nullable: false
      required:
      - description
      - type
      type: object
    DriverAssistance:
      properties:
        type:
          type: string
          enum:
          - DRIVER_ASSISTANCE
          nullable: false
      required:
      - type
      type: object
    InsideDelivery:
      properties:
        type:
          type: string
          enum:
          - INSIDE_DELIVERY
          nullable: false
      required:
      - type
      type: object
    V0.Document:
      properties:
        url:
          type: string
        id:
          type: string
      required:
      - url
      - id
      type: object
    Cargo:
      $ref: '#/components/schemas/V0Cargo.Cargo'
    InsidePickup:
      properties:
        type:
          type: string
          enum:
          - INSIDE_PICKUP
          nullable: false
      required:
      - type
      type: object
    Ppe:
      properties:
        type:
          type: string
          enum:
          - PPE
          nullable: false
      required:
      - type
      type: object
    Amount:
      $ref: '#/components/schemas/V0Financials.Amount'
    Mileage:
      properties:
        uom:
          $ref: '#/components/schemas/MileageUnits'
        value:
          type: number
          format: double
      required:
      - uom
      - value
      type: object
    CustomerExternalIdentifier:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/CustomerExternalIdentifierType'
          - type: string
          description: Typically one of the CustomerExternalIdentifierType enum values, but strings are also allowed
        value:
          type: string
      required:
      - type
      - value
      type: object
      additionalProperties: false
    Commodity:
      $ref: '#/components/schemas/V0Cargo.Commodity'
    WeightUnits:
      enum:
      - LB
      - KG
      type: string
    UserData:
      $ref: '#/components/schemas/V0User.UserData'
    V0User.UserData:
      properties:
        externalIds:
          items:
            $ref: '#/components/schemas/UserExternalIdentifier'
          type: array
      required:
      - externalIds
      type: object
    DayHours:
      properties:
        type:
          type: string
          enum:
          - FACILITY_HOURS
          nullable: false
        timezone:
          type: string
        endTime:
          type: string
        startTime:
          type: string
      required:
      - type
      - timezone
      - endTime
      - startTime
      type: object
      additionalProperties: false
    LocationContact:
      $ref: '#/components/schemas/V0Contact.LocationContact'
    LimitedAccess:
      properties:
        type:
          type: string
          enum:
          - LIMITED_ACCESS
          nullable: false
      required:
      - type
      type: object
    V0Shipment.ChargesToCustomer:
      properties:
        lineItems:
          items:
            $ref: '#/components/schemas/LineItem'
          type: array
      required:
      - lineItems
      type: object
    Document:
      $ref: '#/components/schemas/V0.Document'
    CarrierCreatedEvent:
      $ref: '#/components/schemas/V0Carrier.CarrierCreatedEvent'
    MovementExternalIdentifier:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/MovementExternalIdentifierType'
          - type: string
        value:
          type: string
      required:
      - type
      - value
      type: object
      additionalProperties: false
    MovementExternalIdentifierType:
      enum:
      - CUSTOM
      type: string
    PortalSchedulingDetails:
      properties:
        portal:
          $ref: '#/components/schemas/Portal'
      required:
      - portal
      type: object
    DimensionUnits:
      enum:
      - IN
      - CM
      - FT
      type: string
    Carrier:
      $ref: '#/components/schemas/MayHaveID_CarrierData_'
    Straps:
      properties:
        numberRequired:
          type: number
          format: double
        type:
          type: string
          enum:
          - STRAPS
          nullable: false
      required:
      - type
      type: object
    Dimension:
      $ref: '#/components/schemas/V0Dimensions.Dimension'
    OverDimension:
      properties:
        type:
          type: string
          enum:
          - OVER_DIMENSION
          nullable: false
      required:
      - type
      type: object
    V0ExternalId.ExternalIdentifier:
      properties:
        type:
          anyOf:
          - $ref: '#/components/schemas/ExternalIdentifierType'
          - type: string
        value:
          type: string
      required:
      - type
      - value
      type: object
      additionalProperties: false
    CustomerContactData:
      allOf:
      - $ref: '#/components/schemas/BaseContactData'
      - properties:
          customerId:
            type: string
        required:
        - customerId
        type: object
    CommonStopData:
      properties:
        externalNotes:
          type: string
        internalNotes:
          type: string
        accessorials:
          items:
            $ref: '#/components/schemas/Accessorial'
          type: array
        contact:
          $ref: '#/components/schemas/Contact'
        commodities:
          items:
            $ref: '#/components/schemas/Commodity'
          type: array
        weight:
          $ref: '#/components/schemas/Weight'
        notes:
          type: string
        schedulingType:
          $ref: '#/components/schemas/SchedulingType'
        dateTimeRanges:
          items:
            $ref: '#/components/schemas/DateTimeRange'
          type: array
        type:
          $ref: '#/components/schemas/StopType'
        stopReferences:
          items:
            $ref: '#/components/schemas/Reference'
          type: array
        externalIds:
          items:
            $ref: '#/components/schemas/ExternalIdentifier'
          type: array
      required:
      - type
      - stopReferences
      type: object
    Dunnage:
      properties:
        type:
          type: string
          enum:
          - DUNNAGE
          nullable: false
      required:
      - type
      type: object
    Omit_LocationData.scheduling_:
      $ref: '#/components/schemas/Pick_LocationData.Exclude_keyofLocationData.scheduling__'
      description: Construct a type with the properties of T except for those in type K.
    LocationExternalIdentifierType:
      enum:
      - CUSTOM
      - GOOGLE_PLACES
      - TURVO
      type: string
    V0Contact.Contact:
      $ref: '#/components/schemas/MayHaveID_ContactData_'
    AppointmentUpdatedEvent:
      $ref: '#/components/schemas/V0Appointment.AppointmentUpdatedEvent'
    DateTimeRange:
      $ref: '#/components/schemas/V0Datetime.DateTimeRange'
    ReferenceType:
      enum:
      - ORDER_REFERENCE
      - PURCHASE_ORDER
      - BILL_OF_LADING
      - INVOICE
      - SHIPMENT
      - SALES_ORDER
      - TRACKING
      - DELIVERY
      - CUSTOMER_REFERENCE
      - LOAD
      - CONTAINER
      - MASTER_BILL_OF_LADING
      - BOOKING
      - SEAL
      - PICKUP
      - APPOINTMENT
      - ITEM_REFERENCE
      - OTHER
      type: string
    Accessorial:
      $ref: '#/components/schemas/V0Accessorial.Accessorial'
    Portal:
      type: string
      enum:
      - AMAZON_CARRIER_CENTRAL
      - BLUE_YONDER
      - COSTCO
      - DSDLINK
      - E2OPEN
      - LMCONNECT
      - MANHATTAN
      - NCR
      - OPENDOCK
      - RYDERSHARE
      - YARDVIEW
    DateTimeRangeType:
      enum:
      - FACILITY_HOURS
      - APPOINTMENT
      type: string
    HazmatClassQualifier:
      type: string
      enum:
      - P
      - S
    MayHaveID_CustomerData_:
      allOf:
      - properties:
          id:
            type: string
        type: object
      - $ref: '#/components/schemas/CustomerData'
    OrderCreatedEvent:
      $ref: '#/components/schemas/V0Order.OrderCreatedEvent'
    Address:
      properties:
        country:
          type: string
        postalCode:
          type: string
        city:
          type: string
        state:
          type: string
        addressTwo:
          type: string
        addressOne:
          type: string
      type: object
    HazmatContact:
      allOf:
      - $ref: '#/components/schemas/Contact'
      - properties:
          reference:
            $ref: '#/components/schemas/Reference'
        type: object
    User:
      $ref: '#/components/schemas/V0User.User'
    V0Attributes.Attributes:
      properties: {}
      additionalProperties:
        type: string
      type: object
    HazmatClassification:
      properties:
        qualifier:
          anyOf:
          - $ref: '#/components/schemas/HazmatClassQualifier'
          - type: string
        hazardClass:
          anyOf:
          - $ref: '#/components/schemas/HazmatClass'
          - type: string
      required:
      - qualifier
      - hazardClass
      type: object
    V0Carrier.CarrierCreatedEvent:
      properties:
        carrier:
          $ref: '#/components/schemas/Carrier'
        event:
          type: string
          enum:
          - carrier.created
          nullable: false
      required:
      - carrier
      - event
      type: object
    TrackingUpdateStop:
      properties:
        type:
          $ref: '#/components/schemas/StopType'
        stopIndex:
          type: number
          format: double
      required:
      - stopIndex
      type: object
    MayHaveID_ContactData_:
      allOf:
      - properties:
          id:
            type: string
        type: object
      - $ref: '#/components/schemas/ContactData'
    Weight:
      $ref: '#/components/schemas/V0Weight.Weight'
    Attributes:
      $ref: '#/components/schemas/V0Attributes.Attributes'
    LocationUpdatedEvent:
      properties:
        location:
          $ref: '#/components/schemas/Location'
        event:
          type: string
          enum:
          - location.updated
          nullable: false
      required:
      - location

# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vooma/refs/heads/main/openapi/vooma-api-api-openapi.yml