GET and POST /api/GetCourierRates.php — read global and per-courier weight tier rates, save rate tables, copy defaults, and update air freight rates.
The Billing Rates endpoint lets authorised users read and manage the weight-tier fee tables that Shiipp uses to calculate shipping charges. You can retrieve global platform defaults, inspect or override rates for a specific courier, copy defaults to a courier in a single call, and set the per-courier air freight multiplier — all through the same endpoint.
Authentication: JWT Bearer token — include your token as Authorization: Bearer <token> on every request. This endpoint requires the billing:manage or courier:manage permission and is accessible to admin and manager roles only.
Send a GET request to fetch rate tables. Without a query parameter the response includes global default rates and a list of all couriers with their specific rate overrides. Append ?courier_id=<uuid> to scope the response to a single courier.
Upserts the complete rate table for a courier or for the global defaults. The submitted rates array is treated as the full intended state: rows with an id are updated, rows without an id are inserted, and any existing rows for that courier not present in the array are deleted.
Rows present in the database for the target courier that are not included in the rates array will be permanently deleted. Always submit the complete desired rate table in a single call.
Clears all existing specific rate rows for the specified courier and replaces them with an exact copy of the current global default tiers. After this action, uses_global_rates will be false and the courier will have its own mirrored copy of the defaults.
Deletes one rate tier row by its ID. Use this for surgical removals rather than a full save_rates replacement when only a single row needs to be dropped.