WARP · Schema

MultiStopsQuoteBody

FreightLTLFTLLogisticsShippingWarehousingAPISupply Chain

Properties

Name Type Description
pickupDate string Pickup date in YYYY-MM-DD format
pickupInfo object
deliveryInfo object
transits array Intermediate transit stops in route order (min 1, max 18)
listItems array 1 to 100 items. Bounds: height 0.1-85, length 0.1-636, width 0.1-102, quantity 1-9999, totalWeight 0.01-80000.
pickupServices array
deliveryServices array
additionalServices array
shipmentType string Shipment type. Only FTL is accepted for multi-stops; any other value is rejected with 400.
vehicleType object
View JSON Schema on GitHub

JSON Schema

wearewarp-com-multi-stops-quote-body-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/wearewarp-com/main/json-schema/wearewarp-com-multi-stops-quote-body-schema.json",
  "title": "MultiStopsQuoteBody",
  "x-generated": "2026-10-25",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_original/wearewarp-com-freight-openapi.json#/components/schemas/MultiStopsQuoteBody",
  "type": "object",
  "required": [
    "pickupDate",
    "pickupInfo",
    "deliveryInfo",
    "transits",
    "listItems"
  ],
  "properties": {
    "pickupDate": {
      "type": "string",
      "format": "date",
      "description": "Pickup date in YYYY-MM-DD format"
    },
    "pickupInfo": {
      "type": "object",
      "required": [
        "zipcode"
      ],
      "properties": {
        "zipcode": {
          "type": "string",
          "description": "Postal code of the pickup location (US 5-digit or ZIP+4)"
        },
        "country": {
          "type": "string",
          "description": "Country code (ISO 3166-1 alpha-2). Defaults to US. Only US ZIP codes pass the zipcode validation at the moment, so CA cannot be quoted through multi-stops yet.",
          "enum": [
            "US",
            "CA"
          ],
          "default": "US"
        }
      }
    },
    "deliveryInfo": {
      "type": "object",
      "required": [
        "zipcode"
      ],
      "properties": {
        "zipcode": {
          "type": "string",
          "description": "Postal code of the final delivery location (US 5-digit or ZIP+4)"
        },
        "country": {
          "type": "string",
          "description": "Country code (ISO 3166-1 alpha-2). Defaults to US. Only US ZIP codes pass the zipcode validation at the moment, so CA cannot be quoted through multi-stops yet.",
          "enum": [
            "US",
            "CA"
          ],
          "default": "US"
        }
      }
    },
    "transits": {
      "type": "array",
      "description": "Intermediate transit stops in route order (min 1, max 18)",
      "minItems": 1,
      "maxItems": 18,
      "items": {
        "type": "object",
        "required": [
          "zipcode"
        ],
        "properties": {
          "zipcode": {
            "type": "string",
            "description": "Postal code of the transit stop (US 5-digit or ZIP+4)"
          },
          "country": {
            "type": "string",
            "description": "Country code (ISO 3166-1 alpha-2). Defaults to US. Only US ZIP codes pass the zipcode validation at the moment, so CA cannot be quoted through multi-stops yet.",
            "enum": [
              "US",
              "CA"
            ],
            "default": "US"
          }
        }
      }
    },
    "listItems": {
      "type": "array",
      "description": "1 to 100 items. Bounds: height 0.1-85, length 0.1-636, width 0.1-102, quantity 1-9999, totalWeight 0.01-80000.",
      "minItems": 1,
      "maxItems": 100,
      "items": {
        "$ref": "#/$defs/BookShipmentItem"
      }
    },
    "pickupServices": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "$ref": "#/$defs/PickupService"
      }
    },
    "deliveryServices": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "$ref": "#/$defs/DeliveryService"
      }
    },
    "additionalServices": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "$ref": "#/$defs/AdditionalService"
      }
    },
    "shipmentType": {
      "type": "string",
      "enum": [
        "FTL"
      ],
      "default": "FTL",
      "description": "Shipment type. Only FTL is accepted for multi-stops; any other value is rejected with 400."
    },
    "vehicleType": {
      "type": "object",
      "required": [
        "code"
      ],
      "properties": {
        "code": {
          "type": "string",
          "enum": [
            "DRY_VAN_53",
            "STRAIGHT_TRUCK_26",
            "CARGO_VAN"
          ]
        }
      }
    }
  },
  "$defs": {
    "AdditionalService": {
      "type": "object",
      "required": [
        "quantity",
        "service"
      ],
      "properties": {
        "quantity": {
          "type": "number"
        },
        "service": {
          "type": "string",
          "description": "Addtional service options",
          "enum": [
            "photo-required",
            "sort-n-seg",
            "extra-stop",
            "extra-miles",
            "driver-assist",
            "notify",
            "check_calls",
            "otp_late_fee",
            "otd_late_fee",
            "carrier_otp",
            "carrier_otd",
            "tonu",
            "miscellaneous",
            "deduction",
            "racket_straps",
            "trailer_rental",
            "storage",
            "cross_dock_charge",
            "drop_loaded_equipment",
            "drop_and_hook",
            "drop_equipment",
            "reweigh_reclass",
            "insurance",
            "chassis_rental"
          ]
        }
      }
    },
    "BookShipmentItem": {
      "type": "object",
      "required": [
        "height",
        "length",
        "width",
        "sizeUnit",
        "totalWeight",
        "weightUnit",
        "quantity"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "height": {
          "type": "number",
          "description": "Maximum 108 on POST /freights/booking; maximum 85 on POST /freights/freight-quote, /freights/book and the multi-stops endpoints (checked on the raw value, whatever the sizeUnit)."
        },
        "length": {
          "type": "number"
        },
        "width": {
          "type": "number"
        },
        "sizeUnit": {
          "type": "string",
          "enum": [
            "IN",
            "FT"
          ]
        },
        "totalWeight": {
          "type": "number"
        },
        "weightUnit": {
          "type": "string",
          "enum": [
            "lbs",
            "kgs"
          ]
        },
        "quantity": {
          "type": "integer",
          "format": "int32"
        },
        "packaging": {
          "type": "string",
          "description": "Packaging unit of the line item (e.g. Pallet). Defaults to Pallet.",
          "default": "Pallet"
        },
        "temperature_limit": {
          "type": "object",
          "description": "Temperature-controlled (reefer) freight is NOT supported yet by the quote endpoints: POST /freights/quote rejects any non-zero min/max and POST /freights/freight-quote rejects the field entirely with 400 `Reefer Shipment is not supported yet!`. Omit this field unless instructed otherwise by WARP.",
          "properties": {
            "min": {
              "type": "number",
              "description": "Minimum temperature."
            },
            "max": {
              "type": "number",
              "description": "Maximum temperature."
            }
          }
        },
        "stackable": {
          "type": "boolean"
        },
        "notes": {
          "type": "string"
        },
        "freightClass": {
          "type": "string",
          "description": "NMFC freight class of the line item (e.g. 70)."
        },
        "barcodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "DeliveryService": {
      "type": "object",
      "required": [
        "quantity",
        "service"
      ],
      "properties": {
        "quantity": {
          "type": "number"
        },
        "service": {
          "type": "string",
          "description": "Delivery service options",
          "enum": [
            "photo-required-delivery",
            "liftgate-delivery",
            "convention-trade-show-delivery",
            "inside-delivery",
            "limited-access-delivery",
            "residential-delivery",
            "construction-site-delivery",
            "delivery-appointment",
            "delivery-layover",
            "lumper",
            "detention-receiver",
            "redelivery",
            "drop-loaded",
            "driver-assist-delivery",
            "drop-and-hook-delivery",
            "inside-delivery-upstairs-mezzanine-trash-removal",
            "inside-delivery-back-side-of-the-house",
            "inside-delivery-living-space-garage"
          ]
        }
      }
    },
    "PickupService": {
      "type": "object",
      "required": [
        "quantity",
        "service"
      ],
      "properties": {
        "quantity": {
          "type": "number"
        },
        "service": {
          "type": "string",
          "description": "Pickup service options",
          "enum": [
            "photo-required-pickup",
            "liftgate-pickup",
            "convention-trade-show-pickup",
            "inside-pickup",
            "limited-access-pickup",
            "residential-pickup",
            "construction-site-pickup",
            "pickup-appointment",
            "pickup-layover",
            "detention-shipper",
            "drop-empty",
            "driver-assist-pickup",
            "drop-and-hook-pickup",
            "inside-pickup-upstairs-mezzanine-trash-removal",
            "inside-pickup-back-side-of-the-house",
            "inside-pickup-living-space-garage"
          ]
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/wearewarp-com-multi-stops-quote-body"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.