ShipEngine at https://api.shipengine.com/v1 connects to many carriers — UPS, FedEx, USPS, DHL — through one API.
Copy a key from the ShipEngine dashboard (sandbox keys start with TEST_) and send it as the API-Key header. In the examples it's written {{SHIPENGINE_API_KEY}}.
Full reference: https://www.shipengine.com/docs/
curl https://api.shipengine.com/v1/carriers \
-H "API-Key: {{SHIPENGINE_API_KEY}}"
curl "https://api.shipengine.com/v1/tracking?carrier_code=ups&tracking_number={{TRACKING_NUMBER}}" \
-H "API-Key: {{SHIPENGINE_API_KEY}}"
curl -X POST https://api.shipengine.com/v1/rates/estimate \
-H "API-Key: {{SHIPENGINE_API_KEY}}" \
-H "Content-Type: application/json" \
-d '{"carrier_ids": ["{{CARRIER_ID}}"], "from_country_code": "US", "from_postal_code": "78756", "to_country_code": "US", "to_postal_code": "10001", "weight": {"value": 1, "unit": "pound"}}'