Call tariffs control how the platform prices calls, data, and events from usage files. See Call Tariffs for full details on how tariffs work.
Methods
GET
Retrieve Single Tariff
/backend/api/v1/tariffs/ID - fetch tariff with specified ID.
List Tariffs
/backend/api/v1/tariffs/ - list all tariffs.
POST
/backend/api/v1/tariffs/ - create a new tariff. The newly-created tariff will be returned.
PATCH
/backend/api/v1/tariffs/ID - update tariff with specified ID. The modified tariff will be returned.
DELETE
/backend/api/v1/tariffs/ID - delete tariff with specified ID.
Note: A tariff can only be deleted if it is not currently in use.
Actions
Actions are called by sending a POST request to /backend/api/v1/tariffs/ID/actionName.
applyIncrease
Applies a percentage price increase to the tariff in-place. Requires expert level 5 access.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
increasePercent | numeric | Yes | Percentage increase (e.g. 3.5) |
increaseScope | string | Yes | costOnly or allCharges |
Example:
curl -X POST \
https://YOUR-DOMAIN/backend/api/v1/tariffs/123/applyIncrease \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"increasePercent": 3.5,
"increaseScope": "costOnly"
}'
Returns the updated tariff.
createIncreaseVersion
Creates a new tariff with prices increased by the specified percentage. The original tariff is not modified.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
increasePercent | numeric | Yes | Percentage increase (e.g. 3.5) |
increaseScope | string | Yes | costOnly or allCharges |
Example:
curl -X POST \
https://YOUR-DOMAIN/backend/api/v1/tariffs/123/createIncreaseVersion \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"increasePercent": 3.5,
"increaseScope": "costOnly"
}'
Returns the new tariff. If a version with the same source, percentage, and scope already exists, the existing version is returned.
See Price Increases for full details on scope options and usage guidance.
Fields
| Field | Name | Type | Description |
|---|---|---|---|
| name | Tariff Name | Text | The display name for this tariff |
| description | Description | Text | Additional description or notes about this tariff |
| availability | Tariff Availability | Preset Value | Controls where and how this tariff can be used |
| retail | Retail Tariff | Preset Value | Determines if this is a retail or wholesale tariff |
| currency | Currency | Preset Value | The currency used for rates in this tariff |
| customerID | Customer | Text | The ID of the customer this tariff is restricted to |
| customerGroups | Customer Groups | Text | Customer groups that can access this tariff |
| forCarriers | For Carriers | Text | Carriers this tariff applies to |
| forNumberTypes | For Number Types | Text | Number types this tariff applies to |
| singleRate | Rate Structure | Text | Choose between time-based rates (day/evening/weekend) or a single rate for all times |
| tariffClass | Applies To | Preset Value | What class of calls (Inbound, Mobile etc.) this tariff applies to |
| parentTariff | Based Upon | Text | The ID of the parent tariff this tariff is based upon |
| baseDiscountPlan | Default Discount Plan | Preset Value | |
| baseType | Charge Type | Preset Value | How rates are calculated and applied in this tariff |
| locationLookupCarrier | Use Dial Strings For | Preset Value | Carrier to use for dial string lookups and location-based routing |
| baseCost | Default Cost | Number | Standard rate applied when no specific rate is defined |
| baseCostConnection | Default Connection Cost | Number | Connection charge applied to each call |
| baseCostMin | Default Minimum Cost | Number | Minimum charge for any call |
| baseCostMax | Default Maximum Cost | Number | Maximum charge for any single call |
| baseAccessCharge | Default Access Charge | Number | Additional access charge applied to calls |
| baseAccessChargeConnection | Default Access Charge (Connection) | Number | Access charge connection component |
| baseRoundingAccessCharge | Default Access Charge Rounding | Preset Value | How access charges are rounded |
| baseSurchargeMobileOrigination | Default Mobile Origination Surcharge | Number | Additional charge for mobile-originated calls |
| baseSurchargeMobileOriginationConnection | Default Mobile Origination Surcharge (Connection) | Number | Mobile origination surcharge connection component |
| baseSurchargeRoundingMobileOrigination | Default Mobile Origination Surcharge Rounding | Preset Value | How mobile origination surcharges are rounded |
| baseSurchargePayphoneOrigination | Default Payphone Origination Surcharge | Number | Additional charge for payphone-originated calls |
| baseSurchargePayphoneOriginationConnection | Default Payphone Origination Surcharge (Connection) | Number | Payphone origination surcharge connection component |
| baseSurchargeRoundingPayphoneOrigination | Default Payphone Origination Surcharge Rounding | Preset Value | How payphone origination surcharges are rounded |
| baseSurchargeCallRecording | Default Call Recording Surcharge | Number | Additional charge for call recording services |
| baseSurchargeCallRecordingConnection | Default Call Recording Surcharge (Connection) | Number | Call recording surcharge connection component |
| baseSurchargeRoundingCallRecording | Default Call Recording Surcharge Rounding | Preset Value | How call recording surcharges are rounded |
| baseInitialCost | Default Initial Cost | Text | Cost applied during the initial period of a call |
| baseInitialDuration | Default Initial Duration | Number | Duration of the initial charging period |
| baseCostSecondaryConnection | Default Connection Cost After Initial Duration | Number | Connection cost applied after the initial duration |
| baseDurationMin | Default Minimum Chargable Duration | Number | Shortest duration that will be charged for |
| baseRoundSeconds | Round Duration Up To Next | Number | Round call duration up to the nearest number of seconds |
| baseRoundBytes | Round Bytes Up To Next | Number | Round data usage up to the nearest number of bytes |
| baseRoundEvents | Round Events Up To Next | Number | Round event count up to the nearest number |
| baseRoundPence | Round Cost Up To Next | Number | Round call cost up to the nearest number of pence |
| baseRoundPenceAfterSurcharge | Round Cost After Surcharge Up To Next | Number | Round final cost after surcharges are applied |
| fallbackMarkupSuggested | Fallback Suggested Retail Markup | Number | Suggested markup for retail pricing when rates are not defined |
| fallbackMarkup | Fallback Markup | Number | Markup applied when specific rates are not available |
| id | Tariff ID | Text | The unique identifier for this tariff |