SMKlog · Schema

QuoteResponse

A priced parcel, or a parcel the service will not price with the reason spelled out in mode. Only mode parcel_label_ready carries rates.

CompanyShippingLogisticsParcel Shippingshipping-ratesShipping LabelsE-CommerceAgentsMCPA2A

Properties

Name Type Description
mode string parcel_label_ready with up to 5 rates; not_a_parcel (empty rates: SMKlog does not arrange pallet or freight shipments); multiple_boxes (empty rates: quote each box on its own); international_unsupport
identified_product_title string What the estimator understood the item to be
quote_id stringnull Handle to this quote, good for 15 minutes. Pass it to createPaymentSession as quote_id and that call reuses these rates instead of spending a second carrier call. Null when nothing was priced or the h
package object
packages array Every box the estimate produced; one entry when the shipment is one parcel
rates array Up to five purchasable services, best value first
dangerous_goods objectnull Present when the item matched a dangerous-goods rule: the rule, the carrier restriction and what the human must confirm at checkout
sources array Product pages the estimate read, when a search informed it
notice stringnull Human-readable reason when mode is not parcel_label_ready
source object Where the package estimate and the rates came from
View JSON Schema on GitHub

JSON Schema

smklog-com-quote-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://smklog.com/developers/schemas/quote-response.schema.json",
  "title": "QuoteResponse",
  "type": "object",
  "description": "A priced parcel, or a parcel the service will not price with the reason spelled out in mode. Only mode parcel_label_ready carries rates.",
  "required": [
    "mode",
    "rates"
  ],
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "parcel_label_ready",
        "not_a_parcel",
        "multiple_boxes",
        "international_unsupported_online",
        "parcel_restricted",
        "review",
        "parcel_rates_unavailable"
      ],
      "description": "parcel_label_ready with up to 5 rates; not_a_parcel (empty rates: SMKlog does not arrange pallet or freight shipments); multiple_boxes (empty rates: quote each box on its own); international_unsupported_online; parcel_restricted and review (empty rates with an explanation); parcel_rates_unavailable (no carrier answered)."
    },
    "identified_product_title": {
      "type": "string",
      "description": "What the estimator understood the item to be"
    },
    "quote_id": {
      "type": [
        "string",
        "null"
      ],
      "pattern": "^q_[A-Za-z0-9-]{8,80}$",
      "description": "Handle to this quote, good for 15 minutes. Pass it to createPaymentSession as quote_id and that call reuses these rates instead of spending a second carrier call. Null when nothing was priced or the handle could not be stored; absent on answers that carry no rates."
    },
    "package": {
      "$ref": "https://smklog.com/developers/schemas/package.schema.json"
    },
    "packages": {
      "type": "array",
      "items": {
        "$ref": "https://smklog.com/developers/schemas/package.schema.json"
      },
      "description": "Every box the estimate produced; one entry when the shipment is one parcel"
    },
    "rates": {
      "type": "array",
      "maxItems": 5,
      "items": {
        "$ref": "https://smklog.com/developers/schemas/rate.schema.json"
      },
      "description": "Up to five purchasable services, best value first"
    },
    "dangerous_goods": {
      "type": [
        "object",
        "null"
      ],
      "description": "Present when the item matched a dangerous-goods rule: the rule, the carrier restriction and what the human must confirm at checkout",
      "additionalProperties": true
    },
    "sources": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "format": "uri"
          }
        }
      },
      "description": "Product pages the estimate read, when a search informed it"
    },
    "notice": {
      "type": [
        "string",
        "null"
      ],
      "description": "Human-readable reason when mode is not parcel_label_ready"
    },
    "source": {
      "type": "object",
      "description": "Where the package estimate and the rates came from",
      "properties": {
        "package": {
          "type": "string",
          "description": "manual, catalog, or the estimator that produced the box"
        },
        "rates": {
          "type": "string",
          "description": "live_carrier for live carrier rating, not_a_parcel when nothing was priced"
        }
      },
      "additionalProperties": true
    }
  },
  "additionalProperties": true,
  "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-response"
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.