Label Package Response for `application/vnd.usps.labels+json` and `application/vnd.usps.labels+xml`.

GovernmentPostal ServiceShippingLogisticsAddress ValidationPackage Tracking

Properties

Name Type Description
labelAddress object
routingInformation string The "420" 3-digit GS1 Application Identifier and the 5 or 9 digit Destination ZIP Code™.
trackingNumber string The human-readable version of the package tracking number.
constructCode string The barcode construct code associated with the tracking number.
SKU string Pricing SKU.
postage number Amount of Postage Required, does not include insurance or other extra service fees.
extraServices object
serviceTypeCode string The Service Type Code associated with the package. A list of Service Type Codes can be found at: [https://postalpro.usps.com/IMPB_Service_Type_Codes](https://postalpro.usps.com/IMPB_Service_Type_Codes
zone string Indicates the calculated zone used for pricing between the provided `originZIPCode` and `destinationZIPCode` for a given `mailClass`, `mailingDate`, `rateIndicator`, and `weight`.
mailingDate string The date on which the package will be mailed as provided in the request. If the time was not provided, it will be defaulted to 10:00 p.m. local time.
commitment object
weightUOM string Weight Unit of Measurement * lb - Pounds
weight number The package weight, in weightUOM. Items must weigh 70 pounds (1120 ounces) or less.
dimensionalWeight number The dimensional weight of the package, if greater than specified in weight, in ounces.
fees array Fees associated with the package.
permitHolderName string The permit holder name.
inductionType object The permit holder induction type.
labelBrokerID string Unique Label Broker ID that can be used as an alternative to the Label Broker QR Code to retrieve the label at a Post Office. Will only be provided when an imageType of LABEL_BROKER is requested.
bannerText string Banner text printed on the label.
retailDistributionCode string Retail Description Code associated with label.
returnReceiptTrackingNumber string The human-readable version of the return Receipt tracking number. * Note: This will be included in the response when `packageOptions.returnReceiptTracking` is set to true in the request.
links object
warnings object
labelImage string Contains the Base64-encoded file contents of the label image. Provided only when `imageInfo.imageType` is not `NONE`. Note: - Not provided when Extra Service Code `415 - USPS Label Delivery` is reques
receiptImage string Contains the Base64-encoded file contents of the label receipt image. Provided only when `imageInfo.receiptOption` is `SEPARATE_PAGE`. Note: - When `imageInfo.imageType` is `ZPL203DPI`, `ZPL300DPI`, o
labelBrokerQR string The Label Broker QR Code image, Base64 encoded file contents. Only provided if `imageType` in the `imageInfo` is set to `LABEL_BROKER`.
returnLabel object Return label
View JSON Schema on GitHub

JSON Schema

usps-label-vendor-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/usps/json-schema/usps-label-vendor-response-schema.json",
  "title": "Label Package Response for `application/vnd.usps.labels+json` and `application/vnd.usps.labels+xml`.",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/usps-domestic-labels-openapi.yml#/components/schemas/LabelVendorResponse",
  "type": "object",
  "allOf": [
    {
      "$ref": "#/$defs/LabelMetadata"
    },
    {
      "type": "object",
      "properties": {
        "labelImage": {
          "type": "string",
          "description": "Contains the Base64-encoded file contents of the label image. Provided only when `imageInfo.imageType` is not `NONE`.\n\nNote:\n- Not provided when Extra Service Code `415 - USPS Label Delivery` is requested, as no images are returned for this service.\n",
          "format": "byte"
        },
        "receiptImage": {
          "type": "string",
          "description": "Contains the Base64-encoded file contents of the label receipt image. Provided only when `imageInfo.receiptOption` is `SEPARATE_PAGE`.\n\nNote:\n- When `imageInfo.imageType` is `ZPL203DPI`, `ZPL300DPI`, or `EPL300DPI` and `imageInfo.receiptOption` is `SEPARATE_PAGE`, the receipt will be returned as an additional label segment within the single ZPL or EPL payload in `labelImage`. In this case, `receiptImage` will not be populated.\n- Not provided when Extra Service Code `415 - USPS Label Delivery` is requested, as no images are returned for this service.\n",
          "format": "byte"
        },
        "labelBrokerQR": {
          "type": "string",
          "description": "The Label Broker QR Code image, Base64 encoded file contents. Only provided if `imageType` in the `imageInfo` is set to `LABEL_BROKER`.",
          "format": "byte"
        },
        "returnLabel": {
          "description": "Return label",
          "allOf": [
            {
              "$ref": "#/$defs/ReturnLabelMetadata"
            },
            {
              "type": "object",
              "properties": {
                "returnLabelImage": {
                  "type": "string",
                  "description": "Contains the Base64-encoded file contents of the return label image. Provided only when `imageInfo.returnLabel` is `true` and `imageInfo.imageType` is not `NONE`.\n",
                  "format": "byte"
                },
                "returnReceiptImage": {
                  "type": "string",
                  "description": "Contains the Base64-encoded file contents of the return receipt image. Provided only when `imageInfo.returnLabel` is `true` and `imageInfo.receiptOption` is `SEPARATE_PAGE`.\n\nNote:\n- When `imageInfo.imageType` is `ZPL203DPI` or `ZPL300DPI` and `imageInfo.receiptOption` is `SEPARATE_PAGE`, the receipt will be returned as an additional label segment within the single ZPL payload in `labelImage`. In this case, `receiptImage` will not be populated.\n",
                  "format": "byte"
                },
                "labelBrokerQR": {
                  "type": "string",
                  "description": "The Label Broker QR Code image, Base64 encoded file contents. Only provided if `imageType` in the `imageInfo` is set to `LABEL_BROKER`.",
                  "format": "byte"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "$defs": {
    "Address": {
      "title": "Address",
      "type": "object",
      "properties": {
        "streetAddress": {
          "maxLength": 50,
          "minLength": 1,
          "type": "string",
          "description": "The number of a building along with the name of the road or street on which it is located."
        },
        "streetAddressAbbreviation": {
          "maxLength": 50,
          "minLength": 0,
          "type": "string",
          "description": "This is the abbreviation of street address line for the address.",
          "readOnly": true
        },
        "secondaryAddress": {
          "maxLength": 50,
          "type": "string",
          "description": "The secondary unit designator, such as apartment(APT) or suite(STE) number, defining the exact location of the address within a building.  For more information please see [Postal Explorer](https://pe.usps.com/text/pub28/28c2_003.htm)."
        },
        "cityAbbreviation": {
          "type": "string",
          "description": "This is the abbreviation of city name for the address.",
          "readOnly": true
        }
      },
      "additionalProperties": true,
      "description": "Address fields standard to all locations."
    },
    "Addressee": {
      "title": "Addressee",
      "type": "object",
      "properties": {
        "firstName": {
          "maxLength": 50,
          "minLength": 1,
          "type": "string",
          "description": "First Name corresponding to the address."
        },
        "lastName": {
          "maxLength": 50,
          "minLength": 1,
          "type": "string",
          "description": "Last Name corresponding to the address."
        },
        "firm": {
          "maxLength": 50,
          "minLength": 0,
          "type": "string",
          "description": "Firm/business name corresponding to the address."
        }
      },
      "additionalProperties": true,
      "description": "Fields used to identity the entity receiving a mail piece or package"
    },
    "Commitment": {
      "title": "Commitment",
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Commitment name such as 1-day, 2-day, 3-day, Military, DPO."
        },
        "scheduleDeliveryDate": {
          "type": "string",
          "description": "Date in the `YYYY-MM-DD` format. Date USPS expects that the package or mailpiece will be delivered based on the origin, destination, and drop-off time and date in the request. Actual delivery date may vary based on when the package or mailpiece is entered or other conditions.\n\nNote: This field has been deprecated in favor of `expectedDeliveryDate` and will be removed in a future release. Please transition to using `expectedDeliveryDate`.\n",
          "deprecated": true
        },
        "expectedDeliveryDate": {
          "type": "string",
          "description": "Date in the YYYY-MM-DD format."
        },
        "isPriorityMailNextDay": {
          "type": "boolean",
          "description": "Indicates if the commitment is for Priority Mail Next Day service."
        }
      },
      "additionalProperties": true,
      "description": "The commitment and scheduled delivery date of the package."
    },
    "DomesticAddress": {
      "title": "Domestic Address",
      "additionalProperties": true,
      "description": "Address fields for US locations",
      "allOf": [
        {
          "$ref": "#/$defs/Address"
        },
        {
          "type": "object",
          "properties": {
            "city": {
              "maxLength": 28,
              "minLength": 1,
              "type": "string",
              "description": "This is the city name of the address."
            },
            "state": {
              "$ref": "#/$defs/State"
            },
            "ZIPCode": {
              "pattern": "^\\d{5}$",
              "type": "string",
              "description": "This is the 5-digit ZIP code."
            },
            "ZIPPlus4": {
              "pattern": "^\\d{4}$",
              "type": [
                "string",
                "null"
              ],
              "description": "This is the 4-digit component of the ZIP+4 code. Using the correct Zip+4 reduces the number of times your mail is handled and can decrease the chance of a misdelivery or error."
            },
            "urbanization": {
              "maxLength": 96,
              "type": "string",
              "description": "An area, sector, or residential development within a geographic area (typically used for addresses in Puerto Rico)."
            }
          },
          "additionalProperties": true
        }
      ]
    },
    "DomesticLabelAddress": {
      "title": "Domestic Label Address",
      "required": [
        "ZIPCode",
        "city",
        "state",
        "streetAddress"
      ],
      "type": "object",
      "additionalProperties": true,
      "description": "The address where the package is being shipped from. The ZIP Code™ in the `fromAddress` object is used to calculate pricing. \n\nNotes:\n* The First and Last Name or Firm Name are always required.\n* If the `returnAddress` is not provided, the `fromAddress` will be used as the `returnAddress`.\n* If the `returnLabel` field is set to “true”, then the `fromAddress` ZIP Plus 4 is looked up by the API, unless the `ignoreBadAddress` field is set to true or the address cannot be found. If `ignoreBadAddress` field is true then ZIP Plus 4 is required.\n",
      "allOf": [
        {
          "$ref": "#/$defs/DomesticAddress"
        },
        {
          "$ref": "#/$defs/Addressee"
        },
        {
          "type": "object",
          "properties": {
            "phone": {
              "$ref": "#/$defs/Phone"
            },
            "email": {
              "$ref": "#/$defs/Email"
            },
            "ignoreBadAddress": {
              "type": "boolean",
              "description": "Allows Non-Validated Origin Street Address. Enter `true` to bypass street address validation failures/errors or `false` if only validated addresses should be allowed.\n\nNote: Integrators are recommended to always use `false` to ensure no delivery issues. In the event USPS cannot validate the street address, this tag will “bypass” address validation error when `true` is indicated to allow label creation which could impact delivery.\n"
            }
          },
          "additionalProperties": true
        }
      ]
    },
    "Email": {
      "maxLength": 50,
      "pattern": "^[a-zA-Z0-9_+&*-]+(?:\\.[a-zA-Z0-9_+&*-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,}$",
      "type": "string",
      "description": "Email address used for redirect notification via email. ",
      "format": "email"
    },
    "ExtraServiceResponse": {
      "title": "Extra Service Response",
      "type": "array",
      "minItems": 0,
      "description": "Extra services requested on the mailpiece.",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the extra service."
          },
          "SKU": {
            "type": "string",
            "description": "SKU of the extra service."
          },
          "price": {
            "type": "number",
            "description": "The price for the extra service.",
            "format": "float"
          },
          "warnings": {
            "type": "array",
            "description": "Warnings and additional details around the Extra Services.",
            "minItems": 0,
            "items": {
              "type": "object",
              "properties": {
                "warningCode": {
                  "type": "string",
                  "description": "Code corresponding to the warning"
                },
                "warningDescription": {
                  "type": "string",
                  "description": "Warning or additional information regarding the Extra Service."
                }
              },
              "additionalProperties": false
            }
          }
        },
        "additionalProperties": false
      }
    },
    "LabelMetadata": {
      "title": "Label Metadata",
      "type": "object",
      "properties": {
        "labelAddress": {
          "$ref": "#/$defs/DomesticLabelAddress"
        },
        "routingInformation": {
          "type": "string",
          "description": "The \"420\" 3-digit GS1 Application Identifier and the 5 or 9 digit Destination ZIP Code™."
        },
        "trackingNumber": {
          "type": "string",
          "description": "The human-readable version of the package tracking number."
        },
        "constructCode": {
          "type": "string",
          "description": "The barcode construct code associated with the tracking number."
        },
        "SKU": {
          "type": "string",
          "description": "Pricing SKU."
        },
        "postage": {
          "type": "number",
          "description": "Amount of Postage Required, does not include insurance or other extra service fees."
        },
        "extraServices": {
          "$ref": "#/$defs/ExtraServiceResponse"
        },
        "serviceTypeCode": {
          "type": "string",
          "description": "The Service Type Code associated with the package. A list of Service Type Codes can be found at: [https://postalpro.usps.com/IMPB_Service_Type_Codes](https://postalpro.usps.com/IMPB_Service_Type_Codes).\n"
        },
        "zone": {
          "type": "string",
          "description": "Indicates the calculated zone used for pricing between the provided `originZIPCode` and `destinationZIPCode` for a given `mailClass`, `mailingDate`, `rateIndicator`, and `weight`."
        },
        "mailingDate": {
          "type": "string",
          "description": "The date on which the package will be mailed as provided in the request. If the time was not provided, it will be defaulted to 10:00 p.m. local time.",
          "format": "date-time"
        },
        "commitment": {
          "$ref": "#/$defs/Commitment"
        },
        "weightUOM": {
          "type": "string",
          "description": "Weight Unit of Measurement\n   * lb - Pounds"
        },
        "weight": {
          "type": "number",
          "description": "The package weight, in weightUOM. Items must weigh 70 pounds (1120 ounces) or less."
        },
        "dimensionalWeight": {
          "type": "number",
          "description": "The dimensional weight of the package, if greater than specified in weight, in ounces."
        },
        "fees": {
          "type": "array",
          "description": "Fees associated with the package.",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Name of the fee."
              },
              "SKU": {
                "type": "string",
                "description": "Pricing SKU."
              },
              "price": {
                "type": "number",
                "description": "The price for the fee.",
                "format": "float"
              }
            },
            "additionalProperties": false
          }
        },
        "permitHolderName": {
          "type": "string",
          "description": "The permit holder name."
        },
        "inductionType": {
          "type": "object",
          "additionalProperties": false,
          "description": "The permit holder induction type."
        },
        "labelBrokerID": {
          "maxLength": 10,
          "type": "string",
          "description": "Unique Label Broker ID that can be used as an alternative to the Label Broker QR Code to retrieve the label at a Post Office. Will only be provided when an imageType of LABEL_BROKER is requested."
        },
        "bannerText": {
          "type": "string",
          "description": "Banner text printed on the label."
        },
        "retailDistributionCode": {
          "type": "string",
          "description": "Retail Description Code associated with label."
        },
        "returnReceiptTrackingNumber": {
          "type": "string",
          "description": "The human-readable version of the return Receipt tracking number.\n\n* Note: This will be included in the response when `packageOptions.returnReceiptTracking` is set to true in the request.\n"
        },
        "links": {
          "$ref": "#/$defs/Links"
        },
        "warnings": {
          "$ref": "#/$defs/Warnings"
        }
      },
      "additionalProperties": true,
      "description": "Label Metadata returned from label creation and label edit."
    },
    "Links": {
      "title": "Hypermedia Links",
      "type": "array",
      "description": "Hypermedia links to related resources.",
      "items": {
        "required": [
          "href",
          "rel"
        ],
        "type": "object",
        "properties": {
          "rel": {
            "type": "array",
            "description": "The short name(s) of the relationship corresponding to the link.",
            "items": {
              "type": "string"
            }
          },
          "title": {
            "type": "string",
            "description": "A human-readable description of the link relationship."
          },
          "href": {
            "type": "string",
            "description": "The URL to a related resource.",
            "format": "uri"
          },
          "method": {
            "type": "string",
            "description": "The HTTP method to use to access this link.",
            "enum": [
              "GET",
              "POST",
              "PUT",
              "DELETE"
            ]
          },
          "submissionMediaType": {
            "type": "string",
            "description": "The media type of the resource request."
          },
          "targetMediaType": {
            "type": "string",
            "description": "The media type of the resource response."
          }
        },
        "additionalProperties": false
      }
    },
    "Phone": {
      "pattern": "^\\+?[1-9][0-9]{7,14}$|^[0-9]{6,15}$",
      "type": "string",
      "description": "The phone number, including the country extension and area code or the local national format, with no punctuation."
    },
    "ReturnLabelMetadata": {
      "title": "Return Label Metadata",
      "description": "Return Label Metadata",
      "type": "object",
      "properties": {
        "labelAddress": {
          "$ref": "#/$defs/DomesticLabelAddress"
        },
        "routingInformation": {
          "type": "string",
          "description": "The \"420\" 3-digit GS1 Application Identifier and the 5 or 9 digit Destination ZIP Code™"
        },
        "trackingNumber": {
          "type": "string",
          "description": "The human readable version of the package tracking number"
        },
        "SKU": {
          "type": "string",
          "description": "Pricing SKU"
        },
        "sku": {
          "type": "string",
          "description": "Pricing SKU",
          "deprecated": true
        },
        "postage": {
          "type": "number",
          "description": "Amount of Postage Required, does not include insurance or other extra service fees."
        },
        "extraServices": {
          "$ref": "#/$defs/ExtraServiceResponse"
        },
        "serviceTypeCode": {
          "type": "string",
          "description": "The Service Type Code associated with the package. A list of Service Type Codes can be found at: [https://postalpro.usps.com/IMPB_Service_Type_Codes](https://postalpro.usps.com/IMPB_Service_Type_Codes)\n"
        },
        "zone": {
          "type": "string",
          "description": "Indicates the calculated zone used for pricing between the provided `originZIPCode` and `destinationZIPCode` for a given `mailClass`, `mailingDate`, `rateIndicator`, and `weight`."
        },
        "mailingDate": {
          "type": "string",
          "description": "The date and time when the request was processed, with a two-hour offset applied.",
          "format": "date-time"
        },
        "weightUOM": {
          "type": "string",
          "description": "Weight Unit of Measurement\n   * lb - Pounds"
        },
        "weight": {
          "type": "number",
          "description": "The package weight, in weightUOM. Items must weigh 70 pounds (1120 ounces) or less."
        },
        "dimensionalWeight": {
          "type": "number",
          "description": "The dimensional weight of package, if greater than specified in weight, in ounces."
        },
        "fees": {
          "type": "array",
          "description": "Fees associated to the package.",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Name of the fee."
              },
              "SKU": {
                "type": "string",
                "description": "Pricing SKU"
              },
              "price": {
                "type": "number",
                "description": "The price for the fee.",
                "format": "float"
              }
            },
            "additionalProperties": false
          }
        },
        "labelBrokerID": {
          "maxLength": 10,
          "type": "string",
          "description": "Unique Label Broker ID that can be used as an alternative to the Label Broker QR Code to retrieve the label at a Post Office. Will only be provided when an imageType of LABEL_BROKER is requested."
        },
        "bannerText": {
          "type": "string",
          "description": "Banner text printed on the label"
        },
        "retailDistributionCode": {
          "type": "string",
          "description": "Retail Description Code associated with the label"
        },
        "links": {
          "$ref": "#/$defs/Links"
        },
        "warnings": {
          "$ref": "#/$defs/Warnings"
        }
      }
    },
    "State": {
      "maxLength": 2,
      "minLength": 2,
      "pattern": "^(AA|AE|AL|AK|AP|AS|AZ|AR|CA|CO|CT|DE|DC|FM|FL|GA|GU|HI|ID|IL|IN|IA|KS|KY|LA|ME|MH|MD|MA|MI|MN|MS|MO|MP|MT|NE|NV|NH|NJ|NM|NY|NC|ND|OH|OK|OR|PW|PA|PR|RI|SC|SD|TN|TX|UT|VT|VI|VA|WA|WV|WI|WY)$",
      "type": "string",
      "description": "This is the two-character state code of the address."
    },
    "Warnings": {
      "title": "Warnings",
      "type": "array",
      "description": "Warnings and additional details around the Label.",
      "minItems": 0,
      "items": {
        "type": "object",
        "properties": {
          "warningCode": {
            "type": "string",
            "description": "Code corresponding to the warning"
          },
          "warningDescription": {
            "type": "string",
            "description": "Warning or additional information regarding the Label."
          }
        },
        "additionalProperties": false
      }
    }
  }
}

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/usps-label-vendor-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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.