> ## Documentation Index
> Fetch the complete documentation index at: https://docs.catenatelematics.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Load

> Create load context owned by the authenticated organization.

<Info>`load_ref` must be unique for your organization. The `carrier`, `vehicle` and `driver` objects are optional; send the details you know.</Info>


## OpenAPI

````yaml https://api.catenatelematics.com/v2/intelligence/openapi.json post /v2/visibility/loads
openapi: 3.1.0
info:
  title: Telematics Intelligence Service - REST API
  description: Telematics Intelligence Service REST API.
  version: 0.1.0
servers:
  - url: https://api.catenatelematics.com
    description: Catena Intelligence API
security: []
tags:
  - name: Analytics
    description: >-
      Endpoints providing analytical insights and aggregated data for vehicles,
      fleets, drivers, and trailers.
  - name: Benchmarks
    description: >-
      Endpoints providing cross-fleet benchmark data. A vehicle's metrics are
      ranked against a cohort of peer vehicles drawn from the full Catena fleet
      population. Cohort statistics are k-anonymised: percentile and cohort
      counts are suppressed when the cohort covers too few distinct fleets to
      protect individual fleet privacy.
  - name: Visibility
    description: >-
      Post load context, including planned locations, times, and the carrier,
      vehicle and driver.
paths:
  /v2/visibility/loads:
    post:
      tags:
        - Visibility
      summary: Create Load
      description: Create load context owned by the authenticated organization.
      operationId: create_load
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LoadCreate'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoadRead'
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Forbidden'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
          description: Not Found
        '405':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MethodNotAllowed'
          description: Method Not Allowed
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Conflict'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnprocessableEntity'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequests'
          description: Too Many Requests
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
          description: Internal Server Error
        '501':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotImplementedResponse'
          description: Not Implemented
      security:
        - Bearer:
            - load:create
components:
  schemas:
    LoadCreate:
      properties:
        load_ref:
          type: string
          maxLength: 255
          title: Load Reference
          description: >-
            The partner's own unique reference for this load (e.g. a load or BOL
            number)
        estimated_departure_at:
          type: string
          format: date-time
          title: Estimated Departure At
          description: >-
            When the load is expected to depart the origin. Must include a UTC
            offset.
        estimated_arrival_at:
          type: string
          format: date-time
          title: Estimated Arrival At
          description: >-
            When the load is expected to arrive at the destination. Must include
            a UTC offset.
        origin:
          $ref: '#/components/schemas/LoadStopCreate'
          title: Origin
          description: Where the load is picked up. This is the first stop of the journey.
        destination:
          $ref: '#/components/schemas/LoadStopCreate'
          title: Destination
          description: Where the load is delivered. This is the last stop of the journey.
        carrier:
          anyOf:
            - $ref: '#/components/schemas/LoadCarrier'
            - type: 'null'
          title: Carrier
          description: The carrier assigned to the load, if known
        vehicle:
          anyOf:
            - $ref: '#/components/schemas/LoadVehicle'
            - type: 'null'
          title: Vehicle
          description: The vehicle assigned to the load, if known
        driver:
          anyOf:
            - $ref: '#/components/schemas/LoadDriver'
            - type: 'null'
          title: Driver
          description: The driver assigned to the load, if known
        stops:
          items:
            $ref: '#/components/schemas/LoadIntermediateStopCreate'
          type: array
          title: Intermediate Stops
          description: >-
            Planned stops between origin and destination, in travel order. Each
            can say what it is for.
      type: object
      required:
        - load_ref
        - estimated_departure_at
        - estimated_arrival_at
        - origin
        - destination
      title: LoadCreate
      description: Load create model.
      example:
        carrier:
          dot_number: '1234567'
          mc_number: MC-7654321
          scac: ABCD
        destination:
          latitude: 40.7357
          longitude: -74.1724
          name: Newark, NJ
        driver:
          email: jane.doe@example.com
          first_name: Jane
          last_name: Doe
          phone_number: +1 614-555-0142
          tsp_id: DRV-2087
          tsp_source_name: motive
        estimated_arrival_at: '2026-08-16T08:00:00Z'
        estimated_departure_at: '2026-08-14T12:00:00Z'
        load_ref: BOL-482910
        origin:
          latitude: 39.9612
          longitude: -82.9988
          name: Columbus, OH
        stops:
          - latitude: 40.4406
            longitude: -79.9959
            name: Pittsburgh, PA
            stop_type: fuel
        vehicle:
          license_plate_number: HMT-3570
          license_plate_region: OH
          tsp_id: TRUCK-1042
          tsp_source_name: motive
          vin: 1FUJGLDR7CSBF1234
    LoadRead:
      properties:
        load_ref:
          type: string
          maxLength: 255
          title: Load Reference
          description: >-
            The partner's own unique reference for this load (e.g. a load or BOL
            number)
        estimated_departure_at:
          type: string
          format: date-time
          title: Estimated Departure At
          description: >-
            When the load is expected to depart the origin. Must include a UTC
            offset.
        estimated_arrival_at:
          type: string
          format: date-time
          title: Estimated Arrival At
          description: >-
            When the load is expected to arrive at the destination. Must include
            a UTC offset.
        id:
          type: string
          format: uuid
          title: Load ID
        partner_id:
          type: string
          format: uuid
          title: Partner ID
          description: The ID of the partner that owns this load
        carrier:
          anyOf:
            - $ref: '#/components/schemas/LoadCarrier'
            - type: 'null'
          title: Carrier
          description: >-
            The carrier assigned to the load. Null when no carrier identifier
            was sent.
        vehicle:
          anyOf:
            - $ref: '#/components/schemas/LoadVehicle'
            - type: 'null'
          title: Vehicle
          description: >-
            The vehicle assigned to the load. Null when no vehicle detail was
            sent.
        driver:
          anyOf:
            - $ref: '#/components/schemas/LoadDriver'
            - type: 'null'
          title: Driver
          description: >-
            The driver assigned to the load. Null when no driver detail was
            sent.
        stops:
          items:
            $ref: '#/components/schemas/LoadStopRead'
          type: array
          title: Stops
          description: >-
            The journey in travel order. Sequence 0 is the origin and the
            highest sequence is the destination.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: When the load was created
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: When the load last changed
      type: object
      required:
        - load_ref
        - estimated_departure_at
        - estimated_arrival_at
        - id
        - partner_id
        - created_at
        - updated_at
      title: LoadRead
      description: Load read model.
    BadRequest:
      properties:
        code:
          type: integer
          title: Code
          default: 400
        message:
          type: string
          title: Message
          default: Bad Request
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: BadRequest
    Unauthorized:
      properties:
        code:
          type: integer
          title: Code
          default: 401
        message:
          type: string
          title: Message
          default: Unauthorized
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: Unauthorized
    Forbidden:
      properties:
        code:
          type: integer
          title: Code
          default: 403
        message:
          type: string
          title: Message
          default: Forbidden
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: Forbidden
    NotFound:
      properties:
        code:
          type: integer
          title: Code
          default: 404
        message:
          type: string
          title: Message
          default: Not Found
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: NotFound
    MethodNotAllowed:
      properties:
        code:
          type: integer
          title: Code
          default: 405
        message:
          type: string
          title: Message
          default: Method Not Allowed
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: MethodNotAllowed
    Conflict:
      properties:
        code:
          type: integer
          title: Code
          default: 409
        message:
          type: string
          title: Message
          default: Conflict
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: Conflict
    UnprocessableEntity:
      properties:
        code:
          type: integer
          title: Code
          default: 422
        message:
          type: string
          title: Message
          default: Invalid Request Body
        detail:
          anyOf:
            - items:
                $ref: '#/components/schemas/ValidationErrorDetail'
              type: array
            - type: 'null'
          title: Detail
      type: object
      title: UnprocessableEntity
    TooManyRequests:
      properties:
        code:
          type: integer
          title: Code
          default: 429
        message:
          type: string
          title: Message
          default: Too Many Requests
        detail:
          anyOf:
            - $ref: '#/components/schemas/RetryAfterDetail'
            - type: 'null'
      type: object
      title: TooManyRequests
    InternalServerError:
      properties:
        message:
          type: string
          title: Message
          default: Internal Server Error
      type: object
      title: InternalServerError
    NotImplementedResponse:
      properties:
        code:
          type: integer
          title: Code
          default: 501
        message:
          type: string
          title: Message
          default: Not Implemented
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      title: NotImplementedResponse
    LoadStopCreate:
      properties:
        name:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: Name
          description: Partner's label for this stop, for example the facility name
        latitude:
          type: number
          maximum: 90
          minimum: -90
          title: Latitude
          description: Latitude of the stop, in decimal degrees
        longitude:
          type: number
          maximum: 180
          minimum: -180
          title: Longitude
          description: Longitude of the stop, in decimal degrees
        radius_meters:
          type: number
          maximum: 1000
          minimum: 100
          title: Radius (meters)
          description: >-
            How close to the stop counts as being at it, in metres. Size it to
            cover wherever trucks come to rest: the yard and the queue, not just
            the building.
          default: 100
        estimated_arrival_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Estimated Arrival At
          description: >-
            When the load is expected to arrive at this stop. Must include a UTC
            offset. On the destination it defaults to, and must match, the
            load's `estimated_arrival_at`.
        estimated_departure_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Estimated Departure At
          description: >-
            When the load is expected to leave this stop. Must include a UTC
            offset. On the origin it defaults to, and must match, the load's
            `estimated_departure_at`.
      type: object
      required:
        - latitude
        - longitude
      title: LoadStopCreate
      description: >-
        A stop on a load's journey: the origin, an intermediate stop, or the
        destination
      example:
        estimated_arrival_at: '2026-08-15T09:00:00Z'
        estimated_departure_at: '2026-08-15T09:45:00Z'
        latitude: 40.4406
        longitude: -79.9959
        name: Pittsburgh, PA
        radius_meters: 200
    LoadCarrier:
      properties:
        scac:
          anyOf:
            - type: string
            - type: 'null'
          title: SCAC
          description: The carrier's Standard Carrier Alpha Code, 2-4 letters
        dot_number:
          anyOf:
            - type: string
            - type: 'null'
          title: DOT Number
          description: USDOT number of the carrier assigned to this load
        mc_number:
          anyOf:
            - type: string
            - type: 'null'
          title: MC Number
          description: Motor Carrier (MC) number of the carrier assigned to this load
      type: object
      title: LoadCarrier
      description: The carrier assigned to a load. Send whichever identifiers you know.
    LoadVehicle:
      properties:
        vin:
          anyOf:
            - type: string
            - type: 'null'
          title: VIN
          description: >-
            Vehicle Identification Number of the assigned vehicle. 17
            characters, A-Z excluding I, O and Q, and 0-9.
        license_plate_number:
          anyOf:
            - type: string
            - type: 'null'
          title: License Plate Number
          description: >-
            License plate number of the assigned vehicle. Must be sent together
            with the region.
        license_plate_region:
          anyOf:
            - type: string
            - type: 'null'
          title: License Plate Region
          description: >-
            Two letter state or province abbreviation of the assigned vehicle's
            plate, e.g. 'OH' or 'ON'.
        tsp_id:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: TSP ID
          description: >-
            The vehicle's ID as it appears in the TSP / ELD portal (not the
            device serial number). This is the TSP's own identifier, not a
            Catena ID.
        tsp_source_name:
          anyOf:
            - $ref: '#/components/schemas/TspEnum'
            - type: 'null'
          title: TSP
          description: The TSP that `tsp_id` belongs to, e.g. 'motive' or 'samsara'
      type: object
      title: LoadVehicle
      description: The vehicle assigned to a load. Send whichever identifiers you know.
    LoadDriver:
      properties:
        first_name:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: First Name
          description: The driver's given name
        last_name:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: Last Name
          description: The driver's family name
        phone_number:
          anyOf:
            - type: string
            - type: 'null'
          title: Phone Number
          description: The driver's phone number, e.g. '+1 614-555-0142'
        email:
          anyOf:
            - type: string
              format: email
            - type: 'null'
          title: Email
          description: The driver's email address
        tsp_id:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: TSP ID
          description: >-
            The driver's ID as it appears in the TSP portal. This is the TSP's
            own identifier, not a Catena ID.
        tsp_source_name:
          anyOf:
            - $ref: '#/components/schemas/TspEnum'
            - type: 'null'
          title: TSP
          description: The TSP that `tsp_id` belongs to, e.g. 'motive' or 'samsara'
      type: object
      title: LoadDriver
      description: The driver assigned to a load. Send whichever details you know.
    LoadIntermediateStopCreate:
      properties:
        name:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: Name
          description: Partner's label for this stop, for example the facility name
        latitude:
          type: number
          maximum: 90
          minimum: -90
          title: Latitude
          description: Latitude of the stop, in decimal degrees
        longitude:
          type: number
          maximum: 180
          minimum: -180
          title: Longitude
          description: Longitude of the stop, in decimal degrees
        radius_meters:
          type: number
          maximum: 1000
          minimum: 100
          title: Radius (meters)
          description: >-
            How close to the stop counts as being at it, in metres. Size it to
            cover wherever trucks come to rest: the yard and the queue, not just
            the building.
          default: 100
        estimated_arrival_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Estimated Arrival At
          description: >-
            When the load is expected to arrive at this stop. Must include a UTC
            offset. On the destination it defaults to, and must match, the
            load's `estimated_arrival_at`.
        estimated_departure_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Estimated Departure At
          description: >-
            When the load is expected to leave this stop. Must include a UTC
            offset. On the origin it defaults to, and must match, the load's
            `estimated_departure_at`.
        stop_type:
          type: string
          enum:
            - intermediate
            - fuel
            - rest
          title: Stop Type
          description: >-
            What the stop is for: a fuel stop, a rest stop, or a plain
            intermediate stop. The origin and destination are set by their own
            fields.
          default: intermediate
      type: object
      required:
        - latitude
        - longitude
      title: LoadIntermediateStopCreate
      description: A stop between the origin and destination, with an optional role
      example:
        latitude: 39.9976
        longitude: -78.2403
        name: Pilot Travel Center, Breezewood, PA
        stop_type: fuel
    LoadStopRead:
      properties:
        id:
          type: string
          format: uuid
          title: Stop ID
        sequence:
          type: integer
          title: Sequence
          description: >-
            Position in the journey, starting at 0. 0 is the origin and the
            highest is the destination.
        stop_type:
          anyOf:
            - $ref: '#/components/schemas/LoadStopTypeEnum'
            - type: 'null'
          title: Stop Type
          description: >-
            Whether the stop is the origin, the destination or an intermediate
            stop. Null when the stop was never classified.
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        point:
          $ref: '#/components/schemas/Point'
          description: Where the stop is, as a GeoJSON Point
        radius_meters:
          type: number
          title: Radius (meters)
          description: How close to the stop counts as being at it
        estimated_arrival_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Estimated Arrival At
          description: >-
            When the load is expected to arrive at this stop. Null when none was
            sent.
        estimated_departure_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Estimated Departure At
          description: >-
            When the load is expected to leave this stop. Null when none was
            sent.
        arrived_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Arrived At
          description: When the vehicle arrived at this stop. Null until it has.
        departed_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Departed At
          description: When the vehicle left this stop. Null until it has.
      type: object
      required:
        - id
        - sequence
        - point
        - radius_meters
      title: LoadStopRead
      description: Load stop read model
    ValidationErrorDetail:
      properties:
        path:
          type: string
          title: Path
        input:
          type: string
          title: Input
        message:
          type: string
          title: Message
        error_type:
          type: string
          title: Error Type
      type: object
      required:
        - path
        - input
        - message
        - error_type
      title: ValidationErrorDetail
    RetryAfterDetail:
      properties:
        retry_after_seconds:
          type: integer
          title: Retry After Seconds
        message:
          type: string
          title: Message
      type: object
      required:
        - retry_after_seconds
        - message
      title: RetryAfterDetail
    TspEnum:
      type: string
      enum:
        - ada
        - air_eld
        - ai_eld
        - alfa_eld
        - alpha_eld
        - als
        - amcs_group
        - anytrek_classic
        - anytrek_pro
        - apex_eld
        - apollo
        - apollocloud
        - arezzo_tech
        - ascend
        - att
        - autogri_eld
        - awaregps
        - azuga
        - bellfam
        - bigroad
        - blackbear_eld
        - bluehorse_eld
        - blueinktech
        - bmw
        - bolt_eld
        - bouncie
        - bright_tech_eld
        - budgetgps
        - captain_eld
        - carrier_lynx
        - catena_simulator
        - chronos
        - club_eld
        - clutch_eld
        - cogo_eld
        - coretex
        - core_eld
        - counting_trucks_eld
        - cyntrx
        - daily_eld
        - dfl_eld
        - digital_eld
        - dlog_eld
        - dragon_eld
        - dream_eld
        - dreyev
        - driver_tech
        - drive_hos
        - drive_hos_v2
        - dronemobile
        - dsg_elogs
        - dynamic_eld
        - eighteighteight_eld
        - eldtrex_driver
        - eld_88
        - eld_books
        - eld_hub
        - eld_mandate
        - eld_mandate_prime
        - eld_rider
        - eld_road
        - elog_plus
        - eroad
        - etm_solution
        - eva_eld
        - evo_eld
        - expressway_eld
        - extreme_eld
        - ezlogz
        - ez_eld
        - ez_fleet
        - ez_lynk
        - factor_eld
        - firstgate
        - fleetcomplete
        - fleetcompletehub
        - fleethunt
        - fleet_locate
        - fleetpulse
        - fleetsharp
        - fleetup
        - flex_eld
        - fm
        - force_fleet_tracking
        - fordpro
        - forwardthinking
        - forza_eld
        - garmin
        - geotab
        - gm
        - gorilla_fleet_safety
        - gpsinsight
        - gpstab
        - gpstrackit
        - grand_eld
        - greenlight
        - groundhog
        - hcss
        - hive_eld
        - hos247
        - hos_eld
        - hutch
        - hyundai
        - ilog_eld
        - intelelogs
        - intellishift
        - ironman_eld
        - isaac
        - jjkeller
        - keepon_eld
        - kinexaiot
        - knight_eld
        - konexial
        - linxup
        - lioneight
        - loop_eld
        - lucid_eld
        - luna_eld
        - lytx
        - lytxv3
        - mapon
        - matrack
        - maven
        - mdm_eld
        - mercedes
        - michelin_connected_fleet
        - mobilefleet
        - momentum
        - monster_eld
        - moonlight_eld
        - motion_eld
        - motive
        - my_drivebook
        - my_logs_eld
        - neo_eld
        - nero
        - netradyne
        - new_eld_world
        - nextgen_eld
        - nextraq
        - nexus_eld
        - omnitracs
        - omnitracs_one
        - 1sew_eld
        - onestep
        - onroad_eld
        - ontime_eld
        - optima
        - optimus_tracker
        - orbcomm
        - orient_eld
        - orion_eld
        - oson_elogs
        - ozod_eld
        - panda_eld
        - patriot_eld
        - payd
        - peak_eld
        - pedigree
        - penske_eld
        - peoplenet
        - phillips_connect
        - phoenix
        - pop_eld
        - prestige_eld
        - prime_duty_solutions
        - prologs
        - proride_eld
        - qualitylogs_eld
        - rand_eld
        - randmcnally
        - rastrac
        - raven
        - razor_tracking
        - redfox
        - regulog_eld
        - ridehub
        - rigbot
        - rivian
        - roadeazy
        - roadready
        - rock_eld
        - rollingtrans
        - routemate
        - route_one_eld
        - royal_eld
        - safelane
        - samsara
        - sba_eld
        - selectivedrive
        - seven_days_log
        - simba_eld
        - simplex
        - simple_truck_eld
        - simple_way_eld
        - skybitz
        - smart_elds
        - sparkle_eld
        - spectre_eld
        - spireon
        - stellantis
        - sts_eld
        - sunriser_eld
        - sun_eld
        - surfsight
        - sv_eld
        - swift
        - switchboard
        - synergy_eld
        - teddy_eld
        - teletracnavman
        - teletracnavman_director
        - telogis
        - tenna
        - tesla
        - teslemetry
        - thermo_king
        - think
        - three_md
        - tive
        - topcompliance_eld
        - top_eld
        - toyota
        - traccar
        - trackease_eld
        - trackhawk_gps
        - trackpro
        - track_your_truck
        - traclog
        - transflo
        - trimac
        - trimble
        - truckford
        - trucking_kit
        - trucking_office
        - truckspy
        - truckx
        - trueroad_eld
        - tt
        - 2bro_eld
        - txt_eld
        - tx_eld
        - under_control_eld
        - us_fast_eld
        - verizon_connect
        - vista_eld
        - vistracks
        - vlog_eld
        - volvo
        - vrh_eld
        - vulcansols_eld
        - vw
        - webfleet
        - wialon
        - wireless_links
        - wizefleet_eld
        - xplore_eld
        - youlog_eld
        - zaphira_eld
        - zigzag_eld
        - zippy_eld
        - zms_eld
        - zonar
        - zubie
      title: TspEnum
      description: Enum for TSPs
    LoadStopTypeEnum:
      type: string
      enum:
        - origin
        - intermediate
        - destination
        - fuel
        - rest
      title: LoadStopTypeEnum
      description: The role a stop plays on a load's journey.
    Point:
      properties:
        bbox:
          anyOf:
            - prefixItems:
                - type: number
                - type: number
                - type: number
                - type: number
              type: array
              maxItems: 4
              minItems: 4
            - prefixItems:
                - type: number
                - type: number
                - type: number
                - type: number
                - type: number
                - type: number
              type: array
              maxItems: 6
              minItems: 6
            - type: 'null'
          title: Bbox
        type:
          type: string
          const: Point
          title: Type
        coordinates:
          anyOf:
            - $ref: '#/components/schemas/Position2D'
            - $ref: '#/components/schemas/Position3D'
          title: Coordinates
      type: object
      required:
        - type
        - coordinates
      title: Point
      description: Point Model
    Position2D:
      prefixItems:
        - type: number
          title: Longitude
        - type: number
          title: Latitude
      type: array
      maxItems: 2
      minItems: 2
    Position3D:
      prefixItems:
        - type: number
          title: Longitude
        - type: number
          title: Latitude
        - type: number
          title: Altitude
      type: array
      maxItems: 3
      minItems: 3
  securitySchemes:
    Bearer:
      type: oauth2
      flows:
        clientCredentials:
          refreshUrl: >-
            https://auth.catenatelematics.com/realms/catena/protocol/openid-connect/token
          scopes: {}
          tokenUrl: >-
            https://auth.catenatelematics.com/realms/catena/protocol/openid-connect/token
        authorizationCode:
          refreshUrl: >-
            https://auth.catenatelematics.com/realms/catena/protocol/openid-connect/token
          scopes: {}
          authorizationUrl: >-
            https://auth.catenatelematics.com/realms/catena/protocol/openid-connect/auth
          tokenUrl: >-
            https://auth.catenatelematics.com/realms/catena/protocol/openid-connect/token

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.