SMKlog · Schema

QuoteRequest

One shipment to price. Name the item in plain words (the packed box is estimated) or send the four packed measurements and skip the estimate.

CompanyShippingLogisticsParcel Shippingshipping-ratesShipping LabelsE-CommerceAgentsMCPA2A

Properties

Name Type Description
product string Plain-words item description, e.g. "Yamaha FG800 acoustic guitar in a hard case". Required unless product_url is given. Drives the box and weight estimate when dimensions are omitted. Text that names
product_url string Store product page URL; the item is identified from the page. Alternative to product.
quantity integer How many of the item ship together. Default 1. Units the estimate packs into one box are priced as that box; units that need more than one box, or a quantity above 1 sent with exact dimensions (those
from_postal_code string 5-digit US ZIP; the origin is always in the United States.
to_postal_code string 5-digit US ZIP when to_country_code is US or omitted; otherwise the destination country's own postal code.
to_country_code string Destination country. Sold online: US, CA, GB, DE, AU; any other answers mode international_unsupported_online with no rates.
length_cm number Packed box length. Supply all four of length_cm, width_cm, height_cm, weight_kg to skip the estimate.
width_cm number Packed box width, cm.
height_cm number Packed box height, cm.
weight_kg number Packed weight, kg. Online pricing stops at 68 kg (150 lb), 274 cm (108 in) on the longest side and 419 cm (165 in) of length plus girth; beyond that the response is mode not_a_parcel.
package_source string Set to "manual" when supplying exact dimensions.
View JSON Schema on GitHub

JSON Schema

smklog-com-quote-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://smklog.com/developers/schemas/quote-request.schema.json",
  "title": "QuoteRequest",
  "type": "object",
  "description": "One shipment to price. Name the item in plain words (the packed box is estimated) or send the four packed measurements and skip the estimate.",
  "required": [
    "quantity",
    "from_postal_code",
    "to_postal_code"
  ],
  "properties": {
    "product": {
      "type": "string",
      "maxLength": 2000,
      "description": "Plain-words item description, e.g. \"Yamaha FG800 acoustic guitar in a hard case\". Required unless product_url is given. Drives the box and weight estimate when dimensions are omitted. Text that names no shippable item answers 400 product_not_recognized."
    },
    "product_url": {
      "type": "string",
      "format": "uri",
      "description": "Store product page URL; the item is identified from the page. Alternative to product."
    },
    "quantity": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "How many of the item ship together. Default 1. Units the estimate packs into one box are priced as that box; units that need more than one box, or a quantity above 1 sent with exact dimensions (those describe one box), return mode multiple_boxes with empty rates."
    },
    "from_postal_code": {
      "type": "string",
      "pattern": "^[0-9]{5}$",
      "description": "5-digit US ZIP; the origin is always in the United States."
    },
    "to_postal_code": {
      "type": "string",
      "maxLength": 12,
      "description": "5-digit US ZIP when to_country_code is US or omitted; otherwise the destination country's own postal code."
    },
    "to_country_code": {
      "type": "string",
      "enum": [
        "US",
        "CA",
        "GB",
        "DE",
        "AU"
      ],
      "default": "US",
      "description": "Destination country. Sold online: US, CA, GB, DE, AU; any other answers mode international_unsupported_online with no rates."
    },
    "length_cm": {
      "type": "number",
      "minimum": 1,
      "maximum": 300,
      "description": "Packed box length. Supply all four of length_cm, width_cm, height_cm, weight_kg to skip the estimate."
    },
    "width_cm": {
      "type": "number",
      "minimum": 1,
      "maximum": 300,
      "description": "Packed box width, cm."
    },
    "height_cm": {
      "type": "number",
      "minimum": 1,
      "maximum": 300,
      "description": "Packed box height, cm."
    },
    "weight_kg": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 1000,
      "description": "Packed weight, kg. Online pricing stops at 68 kg (150 lb), 274 cm (108 in) on the longest side and 419 cm (165 in) of length plus girth; beyond that the response is mode not_a_parcel."
    },
    "package_source": {
      "type": "string",
      "enum": [
        "manual"
      ],
      "description": "Set to \"manual\" when supplying exact dimensions."
    }
  },
  "x-provenance": {
    "method": "published",
    "publisher": "SMKlog (SMKLOG-2022 LLC)",
    "source": "https://quote-api.smklog.com/openapi.json",
    "published": "2026-10-12"
  }
}

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/smklog-com-quote-request"
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.