Skip to content

Elevate Pricing API (2.23)

Usage and Rental Pricing Management

Provides read & write access to usage and rental rate cards and inclusive usage plans

Definitions

  • Usage Rate Card - a representation of the pricing structure for usage that can be sold to Customers, for example 5 pence per minute for UK National calls
  • Rental Rate Card - a representation of the pricing structure for rental product that can be sold to Customers, for example £10 per month for line rental
  • Inclusive Usage Plan - a representation of an inclusive bundle that can be sold to a Customer, for example you can allocate 500 free minutes to UK National or Local calls
Languages
Servers
https://rest.elevatebilling.com/v2

usage-rate-cards

Usage rate cards represent the pricing structure for usage products that can be sold to Customers

Operations

usage-rates

Usage rates represent the pricing rates for a usage product

Operations

rental-rate-cards

Rental rates card represent the pricing structure for rental products that can be sold to Customers

Operations

rental-rates

Rental rates represent the pricing rates for a rental product

Operations

Get a list of rental rates for a rate card

Request

Security
bearerAuth
Query
pageinteger(int32)(PageParam)>= 1required

Page of results to show

Example: page=1
pageSizeinteger(int32)(ResultsPerPageParam)[ 1 .. 1000 ]required

Results to return per page

Example: pageSize=100
sortstring(SortParam)

Comma-delimited list of the fields to sort by - defaults to ascending order, suffix :desc to change

Example: sort=id,name | name:desc
rentalRateCardIdstring(IdFilterParam)required

Filter by rental rate card - mandatory

Example: rentalRateCardId=0
rentalProductNamestring(StringFilterParam)

Filter by rental product name

Example: rentalProductName=xyz | in:x,y | like:xyz
pricestring(NumericFilterParam)

Filter by price

Example: price=1 | in:1,2 | gt:1 | lt:1 | ge:1 | le:1
rentalRatePriceTypestring(StringFilterParam)

Filter by rental rate price type

Example: rentalRatePriceType=xyz | in:x,y | like:xyz
rentalRateTypestring(StringFilterParam)

Filter by rental rate type

Example: rentalRateType=xyz | in:x,y | like:xyz
periodsInAdvancestring(StringFilterParam)

Filter by periods in advance

Example: periodsInAdvance=xyz | in:x,y | like:xyz
showOnInvoicestring(BooleanFilterParam)

Filter by show on invoice flag

Example: showOnInvoice=true | false
rentalRateFrequencystring(StringFilterParam)

Filter by rental rate frequency

Example: rentalRateFrequency=xyz | in:x,y | like:xyz
startDatestring(DateFilterParam)

Filter by start date

Example: startDate=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
endDatestring(DateFilterParam)

Filter by end date

Example: endDate=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
curl -i -X GET \
  'https://rest.elevatebilling.com/v2/rental-rates?page=1&pageSize=100&sort=id%2Cname+%7C+name%3Adesc&rentalRateCardId=0&rentalProductName=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&price=1+%7C+in%3A1%2C2+%7C+gt%3A1+%7C+lt%3A1+%7C+ge%3A1+%7C+le%3A1&rentalRatePriceType=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&rentalRateType=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&periodsInAdvance=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&showOnInvoice=true+%2C+false&rentalRateFrequency=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&startDate=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&endDate=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/jsonArray [
idinteger(int64)read-only

Rental rate identifier

Example: 1
rentalRateCardIdinteger(int64)

Rental rate card identifier - required when creating a new rental rate

Example: 1
rentalProductNamestring<= 255 charactersread-only

Display name of the rental product

rentalProductIdinteger(int64)required

Rental product identifier

Example: 1
pricenumberrequired

Price

rentalRateTypestring(RentalRateType)

Rental rate type. Required when rentalRatePriceType is RENTAL

Enum"ADVANCE""ARREARS"
rentalRatePriceTypestring(RentalRatePriceType)required

Rental price type - recurring rental or one off?

Enum"RENTAL""ONEOFF"
periodsInAdvancestring(PeriodsInAdvance)

Number of periods in advance (i.e. Months) for rentals. Required when rentalRateType is ADVANCE

Enum"STANDARD""ADVANCEDPLUSONEMONTH"
rentalRateFrequencystring(RentalRateFrequency)required

Frequency of rental. Required when rentalRatePriceType is RENTAL

Enum"DAILY""WEEKLY""MONTHLY""YEARLY""QUARTERLY""SIXMONTHS""TWENTYFOURMONTHS"
startDatestring(date)required

Start date

endDatestring(date)

End date

showOnInvoiceboolean

Show on invoice?

Default true
]
Response
application/json
[ { "id": 1, "rentalRateCardId": 1, "rentalProductName": "string", "rentalProductId": 1, "price": 0, "rentalRateType": "ADVANCE", "rentalRatePriceType": "RENTAL", "periodsInAdvance": "STANDARD", "rentalRateFrequency": "DAILY", "startDate": "2019-08-24", "endDate": "2019-08-24", "showOnInvoice": true } ]

Get the total count of rental rates for a rate card

Request

Security
bearerAuth
Query
rentalRateCardIdstring(IdFilterParam)required

Filter by rental rate card - mandatory

Example: rentalRateCardId=0
curl -i -X HEAD \
  'https://rest.elevatebilling.com/v2/rental-rates?rentalRateCardId=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Exists

Headers
X-Total-Countinteger

Total number of rental rates for the specified rate card

Body

Create a new rental rate

Request

Security
bearerAuth
Bodyapplication/jsonrequired

New rental rate

rentalRateCardIdinteger(int64)

Rental rate card identifier - required when creating a new rental rate

Example: 1
rentalProductIdinteger(int64)required

Rental product identifier

Example: 1
pricenumberrequired

Price

rentalRateTypestring(RentalRateType)

Rental rate type. Required when rentalRatePriceType is RENTAL

Enum"ADVANCE""ARREARS"
rentalRatePriceTypestring(RentalRatePriceType)required

Rental price type - recurring rental or one off?

Enum"RENTAL""ONEOFF"
periodsInAdvancestring(PeriodsInAdvance)

Number of periods in advance (i.e. Months) for rentals. Required when rentalRateType is ADVANCE

Enum"STANDARD""ADVANCEDPLUSONEMONTH"
rentalRateFrequencystring(RentalRateFrequency)required

Frequency of rental. Required when rentalRatePriceType is RENTAL

Enum"DAILY""WEEKLY""MONTHLY""YEARLY""QUARTERLY""SIXMONTHS""TWENTYFOURMONTHS"
startDatestring(date)required

Start date

endDatestring(date)

End date

showOnInvoiceboolean

Show on invoice?

Default true
curl -i -X POST \
  https://rest.elevatebilling.com/v2/rental-rates \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "rentalRateCardId": 1,
    "rentalProductId": 1,
    "price": 0,
    "rentalRateType": "ADVANCE",
    "rentalRatePriceType": "RENTAL",
    "periodsInAdvance": "STANDARD",
    "rentalRateFrequency": "DAILY",
    "startDate": "2019-08-24",
    "endDate": "2019-08-24",
    "showOnInvoice": true
  }'

Responses

OK

Bodyapplication/json
idinteger(int64)read-only

Rental rate identifier

Example: 1
rentalRateCardIdinteger(int64)

Rental rate card identifier - required when creating a new rental rate

Example: 1
rentalProductNamestring<= 255 charactersread-only

Display name of the rental product

rentalProductIdinteger(int64)required

Rental product identifier

Example: 1
pricenumberrequired

Price

rentalRateTypestring(RentalRateType)

Rental rate type. Required when rentalRatePriceType is RENTAL

Enum"ADVANCE""ARREARS"
rentalRatePriceTypestring(RentalRatePriceType)required

Rental price type - recurring rental or one off?

Enum"RENTAL""ONEOFF"
periodsInAdvancestring(PeriodsInAdvance)

Number of periods in advance (i.e. Months) for rentals. Required when rentalRateType is ADVANCE

Enum"STANDARD""ADVANCEDPLUSONEMONTH"
rentalRateFrequencystring(RentalRateFrequency)required

Frequency of rental. Required when rentalRatePriceType is RENTAL

Enum"DAILY""WEEKLY""MONTHLY""YEARLY""QUARTERLY""SIXMONTHS""TWENTYFOURMONTHS"
startDatestring(date)required

Start date

endDatestring(date)

End date

showOnInvoiceboolean

Show on invoice?

Default true
Response
application/json
{ "id": 1, "rentalRateCardId": 1, "rentalProductName": "string", "rentalProductId": 1, "price": 0, "rentalRateType": "ADVANCE", "rentalRatePriceType": "RENTAL", "periodsInAdvance": "STANDARD", "rentalRateFrequency": "DAILY", "startDate": "2019-08-24", "endDate": "2019-08-24", "showOnInvoice": true }

Get a specific rental rate

Request

Security
bearerAuth
Path
rental_rate_idinteger(int64)(IdParam)>= 1required

Rental rate identifier

Example: 1
curl -i -X GET \
  https://rest.elevatebilling.com/v2/rental-rates/1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
idinteger(int64)read-only

Rental rate identifier

Example: 1
rentalRateCardIdinteger(int64)

Rental rate card identifier - required when creating a new rental rate

Example: 1
rentalProductNamestring<= 255 charactersread-only

Display name of the rental product

rentalProductIdinteger(int64)required

Rental product identifier

Example: 1
pricenumberrequired

Price

rentalRateTypestring(RentalRateType)

Rental rate type. Required when rentalRatePriceType is RENTAL

Enum"ADVANCE""ARREARS"
rentalRatePriceTypestring(RentalRatePriceType)required

Rental price type - recurring rental or one off?

Enum"RENTAL""ONEOFF"
periodsInAdvancestring(PeriodsInAdvance)

Number of periods in advance (i.e. Months) for rentals. Required when rentalRateType is ADVANCE

Enum"STANDARD""ADVANCEDPLUSONEMONTH"
rentalRateFrequencystring(RentalRateFrequency)required

Frequency of rental. Required when rentalRatePriceType is RENTAL

Enum"DAILY""WEEKLY""MONTHLY""YEARLY""QUARTERLY""SIXMONTHS""TWENTYFOURMONTHS"
startDatestring(date)required

Start date

endDatestring(date)

End date

showOnInvoiceboolean

Show on invoice?

Default true
Response
application/json
{ "id": 1, "rentalRateCardId": 1, "rentalProductName": "string", "rentalProductId": 1, "price": 0, "rentalRateType": "ADVANCE", "rentalRatePriceType": "RENTAL", "periodsInAdvance": "STANDARD", "rentalRateFrequency": "DAILY", "startDate": "2019-08-24", "endDate": "2019-08-24", "showOnInvoice": true }

Update a rental rate within a rental rate card

Request

Security
bearerAuth
Path
rental_rate_idinteger(int64)(IdParam)>= 1required

Rental rate identifier

Example: 1
Bodyapplication/json-patch+jsonrequired

A set of JSONPatch operations to be performed. Note that rental rates can only be updated here. To add a new rate, use /rental-rate-cards/ PATCH method

Array [
opstringrequired

The JSON Patch operation to be performed

Enum"add""remove""replace""move""copy""test"
pathstringrequired

A JSON-Pointer

valueobject

The value to be used within the operations

fromstring

A string containing a JSON Pointer value

]
curl -i -X PATCH \
  https://rest.elevatebilling.com/v2/rental-rates/1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json-patch+json' \
  -d '[
    {
      "op": "replace",
      "path": "/price",
      "value": 1.03
    }
  ]'

Responses

OK

Bodyapplication/json
idinteger(int64)read-only

Rental rate identifier

Example: 1
rentalRateCardIdinteger(int64)

Rental rate card identifier - required when creating a new rental rate

Example: 1
rentalProductNamestring<= 255 charactersread-only

Display name of the rental product

rentalProductIdinteger(int64)required

Rental product identifier

Example: 1
pricenumberrequired

Price

rentalRateTypestring(RentalRateType)

Rental rate type. Required when rentalRatePriceType is RENTAL

Enum"ADVANCE""ARREARS"
rentalRatePriceTypestring(RentalRatePriceType)required

Rental price type - recurring rental or one off?

Enum"RENTAL""ONEOFF"
periodsInAdvancestring(PeriodsInAdvance)

Number of periods in advance (i.e. Months) for rentals. Required when rentalRateType is ADVANCE

Enum"STANDARD""ADVANCEDPLUSONEMONTH"
rentalRateFrequencystring(RentalRateFrequency)required

Frequency of rental. Required when rentalRatePriceType is RENTAL

Enum"DAILY""WEEKLY""MONTHLY""YEARLY""QUARTERLY""SIXMONTHS""TWENTYFOURMONTHS"
startDatestring(date)required

Start date

endDatestring(date)

End date

showOnInvoiceboolean

Show on invoice?

Default true
Response
application/json
{ "id": 1, "rentalRateCardId": 1, "rentalProductName": "string", "rentalProductId": 1, "price": 0, "rentalRateType": "ADVANCE", "rentalRatePriceType": "RENTAL", "periodsInAdvance": "STANDARD", "rentalRateFrequency": "DAILY", "startDate": "2019-08-24", "endDate": "2019-08-24", "showOnInvoice": true }

Delete rental rate

Request

Security
bearerAuth
Path
rental_rate_idinteger(int64)(IdParam)>= 1required

Rental rate identifier

Example: 1
curl -i -X DELETE \
  https://rest.elevatebilling.com/v2/rental-rates/1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Body

inclusive-usage-plans

Inclusive usage plans represent an inclusive bundle that can be sold to Customers

Operations

inclusive-usage-balances

Inclusive usage balances represent the current balance of an inclusive usage plan for a Customer, Site or Inventory

Operations

rental-discount-plans

Rental discount plans provide percentage-based discounts on rental products for Customers

Operations

rental-discount-plan-rules

Rental discount plan rules define the discount percentage for specific rental product categories

Operations