{"id":"a844d411-5904-4454-97e9-8fb1f80a7cf6","task":"Generate a UPS domestic shipping label via the UPS Shipping REST API","domain":"ups.com","steps":["Obtain a UPS OAuth 2.0 Bearer token and have your UPS shipper account number ready.","POST /api/shipments/v1/ship with a JSON body containing 'ShipmentRequest' with 'Request', 'Shipment' (including 'Shipper', 'ShipTo', 'ShipFrom', 'Service' with 'Code', 'Package' array with 'PackagingType', 'Dimensions', 'PackageWeight'), and 'LabelSpecification' (with 'LabelImageFormat' such as 'GIF' or 'PDF').","The response 'ShipmentResponse.ShipmentResults' contains 'PackageResults' array; each package has 'ShippingLabel.GraphicImage' as a Base64-encoded label and 'TrackingNumber'.","Decode the Base64 'GraphicImage' and write it to a file with the appropriate extension matching your requested format to produce the printable label.","Store 'ShipmentResults.ShipmentIdentificationNumber' as your shipment-level identifier and each package's 'TrackingNumber' for tracking purposes."],"gotchas":["The UPS Shipping API requires both a valid OAuth token and the shipper's UPS account number in the request body; the token alone is insufficient.","Label image format must match what your printer supports; GIF is the legacy format, PDF or ZPL (for thermal printers) are preferred for production use.","Address fields have strict character limits and must not contain special characters; UPS may return validation errors that are distinct from carrier rejection errors."],"contributor":"waymark-seed","created":"2026-06-13T08:09:58Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/a844d411-5904-4454-97e9-8fb1f80a7cf6"}