---
title: "Publish Draft Listing"
url: "https://stage-api-docs.centraldispatch.com/apis/stage-listing-api-2-0-0/versions/6459c118-c2b9-484e-816d-5657457559e4/operations/postPublishDraftListing"
---

> Full API specification: https://stage-api-docs.centraldispatch.com/apis/stage-listing-api-2-0-0/versions/6459c118-c2b9-484e-816d-5657457559e4.md

# Publish Draft Listing

`POST` `/listings/ref/draft-listings/id/{draftListingId}`

Operation ID: `postPublishDraftListing`

Publish a draft listing, turning it into an active listing on the marketplace. #### 👥 Customer Type - Shipper #### 📝 Important Notes - The created resource is a listing, not a draft. It is returned in the response body and its URL is in the `Location` header. - The new listing keeps the draft's ID, and the draft is consumed - a second publish of the same ID is reported as not found. - Publishing enforces the complete set of Create Listing rules, so a draft that saved successfully can still be rejected here with `422`. Correct the draft with Update Draft Listing and publish again. - The `If-Match` header is required and its value can be found in the `ETag` response header of the resource's GET by ID endpoint. - A stale `If-Match` value is rejected with `422`, and the draft is left intact and unpublished.

## Path parameters

- `draftListingId` (integer, int64, required) - The ID of the listing.

## Header parameters

- `If-Match` (integer, required) - This is a required field to ensure the update is being completed on an item that has not changed since it was last read. The value of this field will be the value of the `ETag` header that was received on the preceding get call.
- `Content-Type` (string, required) - The major version of the API to make a request against. This is a custom MIME type that contains `vnd.coxauto.v[#]+`. For example, to request a resource from version 2.x.x of an API, the Content-Type header should be set to `application/vnd.coxauto.v2+json`.

## Responses

- `201` - Created. Successful request.
- `400` - Bad Request. Check the request payload. **Scenarios:** - The `If-Match` header is missing. - Missing or malformed customer ID in the access token.
- `401` - Unauthorized. Authentication failed or missing.
- `403` - Forbidden. The attempted action is not permitted.
- `404` - Not Found. **Scenarios:** - Draft listing not found. - The draft listing belongs to another customer. - The draft listing has already been published.
- `406` - Not Acceptable **Scenarios:** - `Accept` version header is missing or invalid - v2 API requires: `Accept: application/vnd.coxauto.v2+json`.
- `409` - Conflict. Update not allowed based on the current resource state. **Scenarios:** - The listing could not be created because of a conflict, such as a vehicle quota conflict.
- `415` - Unsupported Media Type **Scenarios:** - `Content-Type` version header is missing or invalid - v2 API requires `Content-Type: application/vnd.coxauto.v2+json`.
- `422` - Unprocessable Entity. Errors found in the request. **Scenarios:** - The draft listing is out of date - the `If-Match` header value does not match the current version. - The draft is incomplete or invalid as a listing. All Create Listing validation rules apply.
- `429` - Too Many Requests. Rate limit exceeded.
- `500` - Error.
- `503` - Service Unavailable **Scenarios:** - The listing service is unavailable or did not respond in time. The draft may or may not have been published, so re-read it before retrying.

## OpenAPI definition

```yaml
openapi: 3.0.1
info:
  title: Listing API
  version: 2.0.0
servers:
  - url: https://marketplace-api.centraldispatch.com
    description: Production server
paths:
  /listings/ref/draft-listings/id/{draftListingId}:
    post:
      tags:
        - Draft-Listings
      summary: Publish Draft Listing
      description: >-
        
        Publish a draft listing, turning it into an active listing on the
        marketplace.


        #### 👥 Customer Type

        - Shipper


        #### 📝 Important Notes

        - The created resource is a listing, not a draft. It is returned in the
        response body and its URL is in the `Location` header.

        - The new listing keeps the draft's ID, and the draft is consumed - a
        second publish of the same ID is reported as not found.

        - Publishing enforces the complete set of Create Listing rules, so a
        draft that saved successfully can still be rejected here with `422`.
        Correct the draft with Update Draft Listing and publish again.

        - The `If-Match` header is required and its value can be found in the
        `ETag` response header of the resource's GET by ID endpoint.

        - A stale `If-Match` value is rejected with `422`, and the draft is left
        intact and unpublished.
      operationId: postPublishDraftListing
      parameters:
        - name: draftListingId
          in: path
          description: The ID of the listing.
          required: true
          schema:
            type: integer
            format: int64
          example: 42220470
        - name: If-Match
          in: header
          description: This is a required field to ensure the update is being completed on
            an item that has not changed since it was last read. The value of
            this field will be the value of the `ETag` header that was received
            on the preceding get call.
          required: true
          schema:
            type: integer
          example: 8675309
        - name: Content-Type
          in: header
          description: The major version of the API to make a request against. This is a
            custom MIME type that contains `vnd.coxauto.v[#]+`. For example, to
            request a resource from version 2.x.x of an API, the Content-Type
            header should be set to `application/vnd.coxauto.v2+json`.
          required: true
          schema:
            type: string
          example: application/vnd.coxauto.v2+json
      responses:
        "201":
          description: Created. Successful request.
          headers:
            Location:
              description: Contains the fully qualified URL of the newly created or updated
                resource. The final segment of the URL will equal the ID of the
                resource.
              schema:
                type: string
              example: "8675309"
            Etag:
              description: Contains the current version of the resource and should be used for
                the `If-Match` header on updates.
              schema:
                type: string
              example: "8675300"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListingResponse"
        "400":
          description: |-
            Bad Request. Check the request payload.

            **Scenarios:**

             - The `If-Match` header is missing.
             - Missing or malformed customer ID in the access token.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
        "401":
          description: Unauthorized. Authentication failed or missing.
        "403":
          description: Forbidden. The attempted action is not permitted.
        "404":
          description: |-
            Not Found.

            **Scenarios:**

             - Draft listing not found.
             - The draft listing belongs to another customer.
             - The draft listing has already been published.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
        "406":
          description: >-
            Not Acceptable


            **Scenarios:**

             - `Accept` version header is missing or invalid - v2 API requires: `Accept: application/vnd.coxauto.v2+json`.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
        "409":
          description: >-
            Conflict. Update not allowed based on the current resource state.


            **Scenarios:**

             - The listing could not be created because of a conflict, such as a vehicle quota conflict.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
        "415":
          description: >-
            Unsupported Media Type


            **Scenarios:**

             - `Content-Type` version header is missing or invalid - v2 API requires `Content-Type: application/vnd.coxauto.v2+json`.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
        "422":
          description: >-
            Unprocessable Entity. Errors found in the request.


            **Scenarios:**

             - The draft listing is out of date - the `If-Match` header value does not match the current version.
             - The draft is incomplete or invalid as a listing. All Create Listing validation rules apply.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
        "429":
          description: Too Many Requests. Rate limit exceeded.
        "500":
          description: Error.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Errors"
        "503":
          description: >-
            Service Unavailable


            **Scenarios:**

             - The listing service is unavailable or did not respond in time. The draft may or may not have been published, so re-read it before retrying.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorsWithProperties"
      security:
        - Bearer: []
security:
  - Bearer: []
components:
  schemas:
    ListingResponse:
      type: object
      properties:
        listingId:
          type: integer
          description: The ID of the listing.
          format: int64
          example: 42220470
        shipperId:
          type: string
          description: The ID of the Central Dispatch customer who is the shipper.
          format: uuid
          example: afd2fb59-b89d-4572-8f9a-e57f82a61c68
        loadSpecificTerms:
          type: string
          description: "These are provisions added to a contract that specify extra
            obligations, rights, or conditions beyond the standard terms.\r

            <b>Real Life Example</b>: Charging cables need to be picked up with
            vehicles and if left behind a $200 fee will be applied.\r

            <b>Rules</b>: This information will be visible only to the assigned
            carrier after the load is dispatched, and it will no longer be
            editable at that point."
          nullable: true
          example: Charging cables need to be picked up with vehicles and if left behind a
            $200 fee will be applied.
        archivedDate:
          type: string
          description: The date and time the listing was archived, in UTC/ISO 8601 format.
          format: date-time
          nullable: true
          example: 2024-08-01T00:00:00Z
        availableDate:
          type: string
          description: The available date of the listing, in UTC/ISO 8601 format.
          format: date-time
          example: 2025-11-05T00:00:00.000Z
        createdOn:
          type: string
          description: The date and time the listing was created, in UTC/ISO 8601 format.
          format: date-time
          example: 2024-10-15T00:00:00Z
        deletedDate:
          type: string
          description: The date and time the listing was deleted, in UTC/ISO 8601 format.
          format: date-time
          nullable: true
          example: 2024-09-10T00:00:00Z
        desiredDeliveryDate:
          type: string
          description: The desired delivery date of the listing, in UTC/ISO 8601 format.
          format: date-time
          nullable: true
          example: 2025-03-04T00:00:00Z
        expirationDate:
          type: string
          description: The expiration date of the listing, in UTC/ISO 8601 format.
          format: date-time
          example: 2025-08-15T00:00:00.000Z
        externalId:
          type: string
          description: An identifier managed by the user. Shippers can use this field to
            map a record (e.g. order, shipment, dispatch) in their local TMS to
            a Central Dispatch record. This value is displayed as the load
            number on the Central Dispatch website.
          nullable: true
          example: RND10 CHEV
        hasInOpVehicle:
          type: boolean
          description: Indicates whether the vehicle is inoperable.
          example: false
        href:
          type: string
          description: The fully qualified URL of the listing.
          example: https://marketplace-api.centraldispatch.com/listings/id/42220470
        listingStatus:
          $ref: "#/components/schemas/ListingStatus"
        partnerId:
          type: string
          description: The Central Dispatch ID of the partner who created or last updated
            the transaction on behalf of the customer. Will be null if the
            customer made the API call directly.
          nullable: true
          example: b6e8c9e4-989a-4b37-8dd7-99fd34882bd0
        clientId:
          type: string
          description: The Central Dispatch ID of the user who created or last updated the
            resource.
          nullable: true
          example: 6e93ff07-6ea6-4239-b502-7bf4f68d2600
        requiresInspection:
          type: boolean
          description: Indicates the shipper requests for the carrier to use the Central
            Dispatch Mobile App to perform vehicle inspection at pickup and
            delivery. If true, the carrier will be asked to acknowledge the
            request before accepting the load.
          example: true
        requiresDriverVerificationAtPickup:
          type: boolean
          description: Indicates if the driver verification process is required. A driver
            must be assigned to the load before delivery. Information will be
            emailed to the contact physically present at the pickup location for
            use in verifying the driver's identification. The Central Dispatch
            Mobile App must be used to perform the pickup and delivery
            inspection. (Only currently applicable to select private
            Marketplaces).
          example: true
        marketplaces:
          type: array
          items:
            $ref: "#/components/schemas/MarketplaceResponse"
          description: A collection of marketplaces associated with the listing.
        partnerReferenceId:
          type: string
          description: A user supplied ID used for reference.
          nullable: true
          example: 25-KL8CH6
        price:
          $ref: "#/components/schemas/PriceResponse"
        shipperOrderId:
          type: string
          description: The ID of the shipper order.
          nullable: true
          example: 123-abc 900
        sla:
          $ref: "#/components/schemas/SlaResponse"
        source:
          $ref: "#/components/schemas/Source"
        stops:
          type: array
          items:
            $ref: "#/components/schemas/StopResponse"
          description: A collection of stops associated with the listing.
        tags:
          type: array
          items:
            $ref: "#/components/schemas/TagResponse"
          description: A collection of tags associated with the listing.
          nullable: true
        totalDistanceInMiles:
          type: integer
          description: The total travel distance in miles.
          format: int32
          example: 267
        trailerType:
          enum:
            - DRIVEAWAY
            - ENCLOSED
            - OPEN
          type: string
          description: The trailer type. This list is not exhaustive and additional values
            may be added at any time.
          example: OPEN
        vehicles:
          type: array
          items:
            $ref: "#/components/schemas/VehicleResponse"
          description: A collection of vehicles associated with the listing.
        transportationReleaseNotes:
          type: string
          description: "Displayed in Central Dispatch website/app as \"Transport Special
            Instructions\", these are specific guidelines or details for the
            safe and efficient pick up, delivery, or transportation of a load.
            This may contain sensitive data and is not available prior to
            acceptance of terms by a carrier.\r

            <b>Rules</b>: This information is visible only to the assigned
            carrier after the load is dispatched and remains editable at any
            time."
          nullable: true
          example: You will need special clearance to get in the lot. Call Jean at
            303-999-1212.
      description: Details of a listing.
    ErrorsWithProperties:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: "#/components/schemas/ErrorWithProperties"
          description: A collection of errors.
          nullable: true
      description: An error occurred, and the request could not be completed.
    Errors:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: "#/components/schemas/Error"
          description: A collection of errors.
          nullable: true
      description: An error occurred, and the request could not be completed.
    ListingStatus:
      enum:
        - ACTIVE
        - ARCHIVED
        - DELETED
        - NOTLISTED
      type: string
      description: "The status of the listing.\r

        - **ACTIVE**: The load is listed and shown in searches on Central
        Dispatch.\r

        - **ARCHIVED**: The listing has been archived and is no longer active.\r

        - **DELETED**: The listing has been removed.\r

        - **NOTLISTED**: The load is not shown in searches on Central Dispatch.
        An `ACTIVE` load automatically becomes `NOTLISTED` when it passes its
        available-to-ship date by four days, reaches its expiration date, or has
        `searchable` set to `false`. Available beginning 8/10/26.\r

        \r

        \ This list is not exhaustive and additional values may be added at any
        time."
      example: ACTIVE
    MarketplaceResponse:
      type: object
      properties:
        autoDispatchOnOfferAccepted:
          type: boolean
          description: Automatically creates a dispatch when a carrier accepts an offer on
            the listing. If not specified, the value defaults to the
            configuration of the marketplace the listing is posted to. If
            explicitly provided, the supplied value takes precedence.
          example: true
        customersExcludedFromOffers:
          type: array
          items:
            type: string
            format: uuid
          description: A collection of customer IDs excluded from offers.
          nullable: true
          example:
            - d5c62b14-cbd1-11ee-9a0e-0242ac110002
            - 157a16f0-503d-4256-ba60-a4876e8eb9bb
        digitalOffersEnabled:
          type: boolean
          description: Indicates whether digital offers are enabled for this Marketplace
            on this listing. Digital offers functionality is currently only
            available for select private Marketplaces.
          example: true
        marketplaceId:
          type: integer
          description: "The ID of the Central Dispatch Marketplace. There are three types
            of Marketplaces:\r

            \r

            - **Public**: The public Marketplace ID is `10000`.\r

            - **Test**: Test Marketplace IDs will be provided to you by Central
            Dispatch.\r

            - **Private**: Private Marketplace IDs will be provided to you by
            Central Dispatch, if necessary."
          format: int32
          example: 10000
        offersAutoAcceptEnabled:
          type: boolean
          description: Allows carrriers to digitially accept an offer. The button will be
            visible for this Marketplace on this listing. Requires
            `digitalOffersEnabled` to be true.
          example: true
        predispatchNotes:
          type: string
          description: "Provides general preparation instructions for shipments. This
            should not contain sensitive data as it is made available prior to
            acceptance of terms by a carrier.\r

            <b>Rules</b>: This information will always be visible to carriers,
            and it will no longer be editable once the load is dispatched."
          nullable: true
          example: In order to pick up the keys you will have to walk through a lot with a
            big dog that protects it, he's chained but will bark at you.
        searchable:
          type: boolean
          description: "Controls whether the listing appears in Marketplace search
            results. Allows listings to be posted but not publicly searchable.
            When `true`: listing is visible and searchable on this Marketplace.
            When `false`: listing is hidden from Marketplace search."
          example: true
        makeOffersEnabled:
          type: boolean
          description: Allows carriers to make an offer on the listing. The button will be
            visible for this Marketplace on this listing. Requires
            `digitalOffersEnabled` to be true.
          nullable: true
          example: true
      description: Details of the marketplace.
    PriceResponse:
      type: object
      properties:
        total:
          type: number
          description: The total amount to be paid for completing the dispatch.
          format: double
          example: 500
        totalCurrency:
          $ref: "#/components/schemas/Currency"
        cod:
          $ref: "#/components/schemas/CodResponse"
        balance:
          $ref: "#/components/schemas/BalanceResponse"
      description: Details of the price.
    SlaResponse:
      type: object
      properties:
        duration:
          type: string
          description: How many days the customer has to pick up/deliver. The format is
            ISO 8601 duration format `P{duration in days}D` where the number of
            days comes from when the listing becomes available. For example,
            `P2D` means 2 days. This sets the deadline for completing the
            transport.
          example: P2D
        timeZoneOffset:
          type: string
          description: "Which time zone to use for SLA calculations. For example, `-5.00`
            represents Eastern Time and `+0.00` represents UTC/GMT. Can be
            negative. Acceptable range: -12:00 to +14:00 hours."
          example: -7:00
        rolloverTime:
          pattern: ^-?(\d+\.)?\d{2}:\d{2}:\d{2}(\.\d{1,7})?$
          type: string
          description: The time of day the "business day" ends. For example, 17:30 means
            5:30 PM. If the load is accepted after this time and available for
            immediate pickup, the ability for it to be picked up on the same day
            is determined by `includeCurrentDayAfterRollOver`.
          example: 19:00:00
        includeCurrentDayAfterRollOver:
          type: boolean
          description: "Indicates whether the load can be picked up after the rollover
            time if it is available on the same day the load is accepted. This
            could be do to the pickup location not being open or reachable after
            the rollover time. Does not apply to listings with availableDate in
            the future.\r

            Example with 5:30 PM rollover:\r

            When true: When accepting the load, the carrier can choose to pick
            it up after 5:30 PM. Sla duration starts tomorrow and ends on day
            3.\r

            When false: When accepting the load, the carrier cannot choose to
            pick it up after 5:30 PM today. It can only be picked up tomorrow as
            the pickup location has closed at the rollover time. Sla duration
            starts tomorrow and ends on day 3."
          example: true
      description: Details of the service level agreement (SLA) for a listing.
    Source:
      enum:
        - API
        - UI
        - CSV
      type: string
      description: The source of the listing. This list is not exhaustive and
        additional values may be added at any time.
      example: API
    StopResponse:
      type: object
      properties:
        stopId:
          type: string
          description: The system assigned UUID of the stop.
          format: uuid
          example: 4e2efc84-6add-435c-9f12-8b19e3e5ba21
        stopNumber:
          type: integer
          description: The sequential number of the stop along the route e.g. 1 is the
            pick up stop and 2 is the delivery stop.
          format: int32
          example: 1
        locationName:
          type: string
          description: The name of the stop.
          nullable: true
          example: ABC Cars lot
        address:
          type: string
          description: The street address.
          nullable: true
          example: 345 W Elm St.
        address2:
          type: string
          description: Additional street address line.
          nullable: true
          example: 2nd Floor
        city:
          type: string
          description: The city.
          nullable: true
          example: Anaheim
        state:
          type: string
          description: The state.
          nullable: true
          example: CA
        postalCode:
          type: string
          description: The ZIP code. Must be a valid United States ZIP code or Canadian
            postal code.
          nullable: true
          example: "92802"
        country:
          type: string
          description: The country code. US or CA.
          nullable: true
          example: US
        distanceToNextStopInMiles:
          type: integer
          description: The distance to the next stop in miles.
          format: int32
          example: 267
        phone:
          type: string
          description: The primary phone number of the contact.
          nullable: true
          example: 949-555-1323
        phone2:
          type: string
          description: An additional phone number of the contact.
          nullable: true
          example: 949-555-2434
        phone3:
          type: string
          description: An additional phone number of the contact.
          nullable: true
          example: 949-555-3545
        siteId:
          type: string
          description: The ID of the site.
          nullable: true
          example: ABC
        contactName:
          type: string
          description: The name of the contact.
          nullable: true
          example: Mickey Smith
        contactPhone:
          type: string
          description: The primary phone number of the contact.
          nullable: true
          example: 949-555-1323
        contactCellPhone:
          type: string
          description: The cell phone number of the contact.
          nullable: true
          example: 949-555-1212
        metroArea:
          type: string
          description: The metro area of the stop.
          nullable: true
          example: Orange County
        locationType:
          enum:
            - Unspecified
            - AirportRentalCenter
            - Auction
            - AuctionSatelliteLot
            - CommercialBusiness
            - CorporateOfficePlant
            - CrossDockSatelliteStagingLot
            - Dealership
            - Impound
            - MarshallingYard
            - MilitaryBase
            - MobileAuction
            - Port
            - RailYard
            - ReconFacility
            - RentalCarRetailSite
            - Repo
            - Residence
            - ServiceCenter
            - ConsumerMoves
            - Terminal
            - Other
            - MechanicShop
            - Warehouse
            - ParkingLot
          type: string
          description: The facility type of the stop. This list is not exhaustive and
            additional values may be added at any time.
          example: Dealership
        geoCode:
          $ref: "#/components/schemas/GeoCodeResponse"
        twic:
          type: boolean
          description: Indicates whether the stop requires driver to have a Transportation
            Worker Identification Credential (TWIC). A TWIC is a credential
            required by the Maritime Transportation Security Act for carriers to
            access some locations. If you are not sure if a TWIC is needed,
            please contact the location.
          example: true
        contactEmailAddress:
          type: string
          description: The email address of the contact. Must be a valid email address
            format.
          nullable: true
          example: mickey@snoogle.com
      description: Details of a stop.
    TagResponse:
      type: object
      properties:
        name:
          type: string
          description: The name of the tag.
          nullable: true
          example: contractedCarrier
        value:
          type: string
          description: The value of the tag.
          nullable: true
          example: "true"
      description: Details of a listing tag.
    VehicleResponse:
      type: object
      properties:
        vehicleId:
          type: string
          description: The ID of the vehicle.
          format: uuid
          example: b331c130-e89b-12d3-a456-426614174000
        listing:
          type: string
          description: The fully qualified URL of the listing.
          nullable: true
          example: https://marketplace-api.centraldispatch.com/listings/id/42220470
        externalVehicleId:
          type: string
          description: A vehicle identifier managed by the user. Shippers can use this
            field to map a vehicle record in their local TMS to a Central
            Dispatch record.
          nullable: true
          example: EXT123456
        pickupStopNumber:
          type: integer
          description: The stop number where the vehicle will be picked up.
          format: int32
          example: 1
        dropOffStopNumber:
          type: integer
          description: The sequential stop number where the vehicle will be delivered.
          format: int32
          example: 2
        vin:
          type: string
          description: The vehicle identification number (VIN).
          nullable: true
          example: KL8CH6SA6NC001234
        year:
          type: integer
          description: The 4 digit year of the vehicle.
          format: int32
          example: 2022
        make:
          type: string
          description: The manufacturer's make of the vehicle.
          nullable: true
          example: Chevrolet
        model:
          type: string
          description: The manufacturer's model of the vehicle.
          nullable: true
          example: Spark
        trim:
          type: string
          description: The manufacturer's trim of the vehicle.
          nullable: true
          example: LS
        vehicleType:
          enum:
            - ATV
            - BOAT
            - CAR
            - HEAVY_EQUIPMENT
            - LARGE_YACHT
            - MOTORCYCLE
            - OTHER
            - PICKUP
            - RV
            - SUV
            - TRAVEL_TRAILER
            - VAN
          type: string
          description: The type of vehicle e.g. CAR, PICKUP, SUV. This list is not
            exhaustive and additional values may be added at any time.
        vehicleTypeOther:
          type: string
          description: The description of the vehicle type.
          nullable: true
          example: CAR
        color:
          type: string
          description: The color of the vehicle.
          nullable: true
          example: Red
        licensePlate:
          type: string
          description: The license plate of the vehicle.
          nullable: true
          example: B314PIE
        licensePlateState:
          type: string
          description: The two-letter state abbreviation of the vehicle's license plate.
          nullable: true
          example: CA
        lotNumber:
          type: string
          description: The lot number of the vehicle.
          nullable: true
          example: LOT789
        isInoperable:
          type: boolean
          description: Indicates whether the vehicle is inoperable.
          example: false
        tariff:
          type: number
          description: The tariff on the vehicle.
          format: double
          example: 1030.5
        tariffCurrency:
          $ref: "#/components/schemas/Currency"
        additionalInfo:
          type: string
          description: Additional information.
          nullable: true
          example: The vehicle is in the back of the lot behind the big tree.
        oversized:
          type: boolean
          description: Indicates whether the load is oversized.
          example: false
        shippingSpecs:
          $ref: "#/components/schemas/ShippingSpecsResponse"
        vehicleAttributes:
          type: array
          items:
            $ref: "#/components/schemas/VehicleAttributeResponse"
          description: A collection of vehicle attributes.
          nullable: true
        noKeys:
          type: boolean
          description: Indicates whether the vehicle has no keys.
          example: true
        noTires:
          type: boolean
          description: Indicates whether the vehicle has no tires.
          example: false
        flatTire:
          type: boolean
          description: Indicates whether the vehicle has a flat tire.
          example: true
        frameDamage:
          type: boolean
          description: Indicates whether the vehicle has frame damage.
          example: false
        doesNotRun:
          type: boolean
          description: Indicates whether the vehicle does not run.
          example: true
        doesNotSteer:
          type: boolean
          description: Indicates whether the vehicle does not steer.
          example: false
        doesNotRoll:
          type: boolean
          description: Indicates whether the vehicle does not roll.
          example: false
        inOpNotes:
          type: string
          description: Notes about the inoperable condition of the vehicle.
          nullable: true
          example: Vehicle does not start.
      description: Details of a vehicle.
    ErrorWithProperties:
      type: object
      properties:
        code:
          type: string
          description: The code used for the issue.
          nullable: true
          example: resource.issue_type
        message:
          type: string
          description: A detailed message.
          nullable: true
          example: The issue happened because something is wrong.
        properties:
          type: array
          items:
            $ref: "#/components/schemas/ErrorAltProperty"
          description: Properties related to the issue.
          nullable: true
      description: Details of an error or issue.
    Error:
      type: object
      properties:
        code:
          type: string
          description: The code used for the issue.
          nullable: true
          example: resource.issue_type
        message:
          type: string
          description: A detailed message.
          nullable: true
          example: The issue happened because something is wrong.
        property:
          type: string
          description: The property to which the issue is associated.
          nullable: true
          example: person
        properties:
          type: object
          additionalProperties:
            type: string
          description: Additional properties related to the issue.
          nullable: true
          example:
            firstName: D0nn@
            lastName: Sm!th
      description: Details of an error or issue.
    Currency:
      enum:
        - USD
      type: string
      description: The currency of the monetary field. This list is not exhaustive and
        additional values may be added at any time.
      default: USD
      example: USD
    CodResponse:
      type: object
      properties:
        amount:
          type: number
          description: The cash on delivery (COD) or cash on pick up (COP) amount due.
          format: double
          example: 200
        amountCurrency:
          $ref: "#/components/schemas/Currency"
        paymentMethod:
          enum:
            - CASH_CERTIFIED_FUNDS
            - CHECK
          type: string
          description: The method for the COD/COP payment. This list is not exhaustive and
            additional values may be added at any time.
          example: CASH_CERTIFIED_FUNDS
        paymentLocation:
          enum:
            - DELIVERY
            - PICKUP
          type: string
          description: The location that COD/COP payment is due. This list is not
            exhaustive and additional values may be added at any time.
          example: PICKUP
      description: Details of cash on delivery or cash on pick up (COD/COP).
    BalanceResponse:
      type: object
      properties:
        amount:
          type: number
          description: The balance amount that will be due after the COD/COP payment is
            applied.
          format: double
          example: 300
        amountCurrency:
          $ref: "#/components/schemas/Currency"
        paymentTime:
          enum:
            - FIFTEEN_BUSINESS_DAYS
            - FIVE_BUSINESS_DAYS
            - IMMEDIATELY
            - TEN_BUSINESS_DAYS
            - THIRTY_BUSINESS_DAYS
            - TWO_BUSINESS_DAYS
          type: string
          description: The time frame when the balance payment is due. This list is not
            exhaustive and additional values may be added at any time.
          example: IMMEDIATELY
        balancePaymentTermsBeginOn:
          enum:
            - DELIVERY
            - PICKUP
            - RECEIVING_SIGNED_BOL
          type: string
          description: The terms for beginning balance payment. This list is not
            exhaustive and additional values may be added at any time.
          example: PICKUP
        balancePaymentMethod:
          enum:
            - CASH
            - CERTIFIED_FUNDS
            - COMCHEK
            - COMPANY_CHECK
            - TCH
          type: string
          description: The payment method with which the balance due payment will be paid.
            This list is not exhaustive and additional values may be added at
            any time.
          example: CASH
      description: Details of the balance.
    GeoCodeResponse:
      type: object
      properties:
        longitude:
          type: number
          description: The longitude of the location.
          format: double
          example: -117.91836265987132
        latitude:
          type: number
          description: The latitude of the location.
          format: double
          example: 33.81228788622535
      description: Details of the geographical coordinates for a location.
      nullable: true
    ShippingSpecsResponse:
      type: object
      properties:
        height:
          type: integer
          description: The height of the vehicle.
          format: int32
          nullable: true
          example: 58
        width:
          type: integer
          description: The width of the vehicle.
          format: int32
          nullable: true
          example: 62
        length:
          type: integer
          description: The length of the vehicle.
          format: int32
          nullable: true
          example: 143
        weight:
          type: integer
          description: The weight of the vehicle.
          format: int32
          nullable: true
          example: 2246
      description: Details of the shipping specifications of a vehicle.
    VehicleAttributeResponse:
      type: object
      properties:
        vehicleAttributeType:
          enum:
            - DAMAGE
            - FEATURE
          type: string
          description: The value of the vehicle attribute. This list is not exhaustive and
            additional values may be added at any time.
          nullable: true
          example: DAMAGE
        vehicleAttributeName:
          enum:
            - CAB_AND_CHASSIS
            - CONVERTIBLE
            - CREW_CAB
            - DOES_NOT_ROLL
            - DOES_NOT_RUN
            - DOES_NOT_STEER
            - DUAL_REAR_WHEEL
            - EXTENDED_CAB
            - EXTENDED_LENGTH
            - FLAT_BED
            - FLAT_TIRE
            - FRAME_DAMAGE
            - IS_4X2
            - IS_4X4
            - LADDER_RACK
            - LEFT_KIT
            - LONG_BED
            - NO_KEYS
            - NO_TIRES
            - OTHER_INOP
            - OTHER_INOP_NOTES
            - OVERSIZE_TIRES
            - OVERSIZED_UNIT
            - RAISED_ROOF
            - REGULAR_CAB
            - SHORT_BED
            - SINGLE_REAR_WHEEL
            - STANDARD_LENGTH
            - TOOLBOX
            - UTILITY_BODY
          type: string
          description: The name of the vehicle attribute. This list is not exhaustive and
            additional values may be added at any time.
          nullable: true
          example: FLAT_BED
        value:
          type: string
          description: The value of the vehicle attribute.
          nullable: true
          example: "true"
      description: Details of a vehicle attribute.
    ErrorAltProperty:
      type: object
      properties:
        property:
          type: string
          description: The name of the property.
          nullable: true
          example: person
        value:
          type: string
          description: The value of the property.
          nullable: true
          example: J0hn D03
      description: Details of an error's property.
  securitySchemes:
    Bearer:
      type: http
      scheme: Bearer
```
