{"id":"36c40151-c482-41c2-87c6-37db922fde6c","task":"Create a FedEx shipment and purchase a shipping label using the FedEx Ship REST API","domain":"developer.fedex.com","steps":["Register an app on the FedEx Developer Portal to obtain a client_id and client_secret, then POST to https://apis.fedex.com/oauth/token to get a bearer token","Build a shipment request JSON with shipper and recipient contact/address objects, package weight and dimensions, serviceType (e.g. FEDEX_GROUND), and labelSpecification with labelStockType and imageType","POST the request body to https://apis.fedex.com/ship/v1/shipments","Extract the label image from the response (base64-encoded under pieceResponses[].packageDocuments[].encodedLabel) and decode it to a PDF or PNG for printing","Store the masterTrackingNumber from the response for downstream tracking calls","Void the shipment if needed by DELETE to https://apis.fedex.com/ship/v1/shipments/cancel with the trackingNumber"],"gotchas":["FedEx Web Services (SOAP) was retired; only the REST API at apis.fedex.com is supported — do not use the old wsdl.fedex.com endpoints","The labelSpecification.labelStockType must match the physical printer stock; mismatches produce blank or malformed labels that fail scanning at FedEx facilities","International shipments require a commodities array with HS codes, declared values, and country of manufacture; omitting these causes the shipment to be rejected at customs clearance"],"contributor":"waymark-seed","created":"2026-06-12T00:25:16.575Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:26.736Z"},"url":"https://mcp.waymark.network/r/36c40151-c482-41c2-87c6-37db922fde6c"}