Skip to content

Elevate Products API (2.13)

Product Management

Provides read & write access to usage and rental product entities

Definitions

  • Rental Product - a product or service that is billed on a fixed charge; for example, a broadband service, connection or site visit
  • Usage Product - a product that is billed based on it's usage, such as calls or data; these typically fall into one of the following categories within Elevate; outbound such as CPS/IDA, Mobile or VoIP; and Inbound
Languages
Servers
https://rest.elevatebilling.com/v2

usage-products

Usage products represent products that are billed based on usage

Operations

rental-products

Rental products represent a product or service that is billed on a fixed charge

Operations

Get a list of available rental products

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
fieldsstring(FieldsParam)

Comma-delimited list of the field(s) to return if only a subset is required

Example: fields=id,name
productTypestring(StringFilterParam)

Filter by product type

Example: productType=xyz | in:x,y | like:xyz
namestring(StringFilterParam)

Filter by product name

Example: name=xyz | in:x,y | like:xyz
availableFromstring(DateFilterParam)

Filter by available from date

Example: availableFrom=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
availableTostring(DateFilterParam)

Filter by available to date

Example: availableTo=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
nominalCodestring(StringFilterParam)

Filter by nominal code

Example: nominalCode=xyz | in:x,y | like:xyz
supplierIdstring(IdFilterParam)

Filter by supplier identifier

Example: supplierId=0
curl -i -X GET \
  'https://rest.elevatebilling.com/v2/rental-products?page=1&pageSize=100&sort=id%2Cname+%7C+name%3Adesc&fields=id%2Cname&productType=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&name=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&availableFrom=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&availableTo=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&nominalCode=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&supplierId=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/jsonArray [
idinteger(int64)read-only

Rental product identifier

Example: 1
rentalProductCategoryIdinteger(int64)required

Rental product category identifier

Example: 1
productTypestring(RentalProductType)required

Rental product type

Enum"PRODUCT""FEATURE""EVENT"
namestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Product name

invoicePresentationNamestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Invoice Presentation name

parentRentalProductIdinteger(int64)

Parent rental product identifier

Example: 1
supplierIdinteger(int64)required

Supplier identifier

supplierProductNamesArray of strings

Mapping name(s) used by the supplier in their invoice file

taxBandIdinteger(int64)required

Supplier account identifier

Example: 1
availableFromstring(date)required

Product is available from this date

nominalCodestring[ 1 .. 100 ] characters^[\w\p{L}\s%£@&#=':;,`’|!_—–()/\-+.?*$\[\]€^{...

Nominal code

Example: "SALES-01QTR2"
availableTostring(date)

Product is available to this date

doNotProRateboolean

Do not pro rate

Default false
alignedToStartboolean

Default value for alignedToStart when creating rental product inventories

Default false
alignedToBillPeriodboolean

Default value for alignedToBillPeriod when creating rental product inventories

Default false
billInitialChargesImmediatelyboolean

Default value for billInitialChargesImmediately when creating rental product inventories

Default false
forceBillPeriodsinteger(int32)[ 0 .. 731 ]

Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false

Default 0
Example: 1
additionalProductReferenceRequiredboolean

Additional product reference is required on rental product inventories

Default false
additionalProductReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the additional product reference on rental product inventories

Example: "[a-zA-Z0-9]{4,15}"
linkedUsageProductIdinteger(int64)

Linked usage product identifier

Example: 1
productReferenceRequiredboolean

Product reference is required on rental product

Default false
productReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the product reference on rental product inventories

Example: ".*"
productReferenceMayBeDDIRangeboolean

Product reference may be a DDI range on rental product

Default false
generateWhenParentCreatedboolean

Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past

Default false
customFieldsArray of objects(CustomField)
]
Response
application/json
[ { "id": 1, "rentalProductCategoryId": 1, "productType": "PRODUCT", "name": "string", "invoicePresentationName": "string", "parentRentalProductId": 1, "supplierId": 0, "supplierProductNames": [], "taxBandId": 1, "availableFrom": "2019-08-24", "nominalCode": "SALES-01QTR2", "availableTo": "2019-08-24", "doNotProRate": false, "alignedToStart": false, "alignedToBillPeriod": false, "billInitialChargesImmediately": false, "forceBillPeriods": 1, "additionalProductReferenceRequired": false, "additionalProductReferenceFormat": "[a-zA-Z0-9]{4,15}", "linkedUsageProductId": 1, "productReferenceRequired": false, "productReferenceFormat": ".*", "productReferenceMayBeDDIRange": false, "generateWhenParentCreated": false, "customFields": [] } ]

Create a new rental product

Request

Security
bearerAuth
Bodyapplication/jsonrequired

New rental product

rentalProductCategoryIdinteger(int64)required

Rental product category identifier

Example: 1
productTypestring(RentalProductType)required

Rental product type

Enum"PRODUCT""FEATURE""EVENT"
namestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Product name

invoicePresentationNamestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Invoice Presentation name

parentRentalProductIdinteger(int64)

Parent rental product identifier

Example: 1
supplierIdinteger(int64)required

Supplier identifier

supplierProductNamesArray of strings

Mapping name(s) used by the supplier in their invoice file

taxBandIdinteger(int64)required

Supplier account identifier

Example: 1
availableFromstring(date)required

Product is available from this date

nominalCodestring[ 1 .. 100 ] characters^[\w\p{L}\s%£@&#=':;,`’|!_—–()/\-+.?*$\[\]€^{...

Nominal code

Example: "SALES-01QTR2"
availableTostring(date)

Product is available to this date

doNotProRateboolean

Do not pro rate

Default false
alignedToStartboolean

Default value for alignedToStart when creating rental product inventories

Default false
alignedToBillPeriodboolean

Default value for alignedToBillPeriod when creating rental product inventories

Default false
billInitialChargesImmediatelyboolean

Default value for billInitialChargesImmediately when creating rental product inventories

Default false
forceBillPeriodsinteger(int32)[ 0 .. 731 ]

Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false

Default 0
Example: 1
additionalProductReferenceRequiredboolean

Additional product reference is required on rental product inventories

Default false
additionalProductReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the additional product reference on rental product inventories

Example: "[a-zA-Z0-9]{4,15}"
linkedUsageProductIdinteger(int64)

Linked usage product identifier

Example: 1
productReferenceRequiredboolean

Product reference is required on rental product

Default false
productReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the product reference on rental product inventories

Example: ".*"
productReferenceMayBeDDIRangeboolean

Product reference may be a DDI range on rental product

Default false
generateWhenParentCreatedboolean

Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past

Default false
customFieldsArray of objects(CustomField)
curl -i -X POST \
  https://rest.elevatebilling.com/v2/rental-products \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "rentalProductCategoryId": 1,
    "productType": "PRODUCT",
    "name": "string",
    "invoicePresentationName": "string",
    "parentRentalProductId": 1,
    "supplierId": 0,
    "supplierProductNames": [
      "string"
    ],
    "taxBandId": 1,
    "availableFrom": "2019-08-24",
    "nominalCode": "SALES-01QTR2",
    "availableTo": "2019-08-24",
    "doNotProRate": false,
    "alignedToStart": false,
    "alignedToBillPeriod": false,
    "billInitialChargesImmediately": false,
    "forceBillPeriods": 1,
    "additionalProductReferenceRequired": false,
    "additionalProductReferenceFormat": "[a-zA-Z0-9]{4,15}",
    "linkedUsageProductId": 1,
    "productReferenceRequired": false,
    "productReferenceFormat": ".*",
    "productReferenceMayBeDDIRange": false,
    "generateWhenParentCreated": false,
    "customFields": [
      {
        "label": "string",
        "value": "string"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
idinteger(int64)read-only

Rental product identifier

Example: 1
rentalProductCategoryIdinteger(int64)required

Rental product category identifier

Example: 1
productTypestring(RentalProductType)required

Rental product type

Enum"PRODUCT""FEATURE""EVENT"
namestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Product name

invoicePresentationNamestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Invoice Presentation name

parentRentalProductIdinteger(int64)

Parent rental product identifier

Example: 1
supplierIdinteger(int64)required

Supplier identifier

supplierProductNamesArray of strings

Mapping name(s) used by the supplier in their invoice file

taxBandIdinteger(int64)required

Supplier account identifier

Example: 1
availableFromstring(date)required

Product is available from this date

nominalCodestring[ 1 .. 100 ] characters^[\w\p{L}\s%£@&#=':;,`’|!_—–()/\-+.?*$\[\]€^{...

Nominal code

Example: "SALES-01QTR2"
availableTostring(date)

Product is available to this date

doNotProRateboolean

Do not pro rate

Default false
alignedToStartboolean

Default value for alignedToStart when creating rental product inventories

Default false
alignedToBillPeriodboolean

Default value for alignedToBillPeriod when creating rental product inventories

Default false
billInitialChargesImmediatelyboolean

Default value for billInitialChargesImmediately when creating rental product inventories

Default false
forceBillPeriodsinteger(int32)[ 0 .. 731 ]

Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false

Default 0
Example: 1
additionalProductReferenceRequiredboolean

Additional product reference is required on rental product inventories

Default false
additionalProductReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the additional product reference on rental product inventories

Example: "[a-zA-Z0-9]{4,15}"
linkedUsageProductIdinteger(int64)

Linked usage product identifier

Example: 1
productReferenceRequiredboolean

Product reference is required on rental product

Default false
productReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the product reference on rental product inventories

Example: ".*"
productReferenceMayBeDDIRangeboolean

Product reference may be a DDI range on rental product

Default false
generateWhenParentCreatedboolean

Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past

Default false
customFieldsArray of objects(CustomField)
Response
application/json
{ "id": 1, "rentalProductCategoryId": 1, "productType": "PRODUCT", "name": "string", "invoicePresentationName": "string", "parentRentalProductId": 1, "supplierId": 0, "supplierProductNames": [ "string" ], "taxBandId": 1, "availableFrom": "2019-08-24", "nominalCode": "SALES-01QTR2", "availableTo": "2019-08-24", "doNotProRate": false, "alignedToStart": false, "alignedToBillPeriod": false, "billInitialChargesImmediately": false, "forceBillPeriods": 1, "additionalProductReferenceRequired": false, "additionalProductReferenceFormat": "[a-zA-Z0-9]{4,15}", "linkedUsageProductId": 1, "productReferenceRequired": false, "productReferenceFormat": ".*", "productReferenceMayBeDDIRange": false, "generateWhenParentCreated": false, "customFields": [ {} ] }

Check if rental product exists

Request

Security
bearerAuth
Query
productTypestring(StringFilterParam)

Filter by product type

Example: productType=xyz | in:x,y | like:xyz
namestring(StringFilterParam)

Filter by product name

Example: name=xyz | in:x,y | like:xyz
availableFromstring(DateFilterParam)

Filter by available from date

Example: availableFrom=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
availableTostring(DateFilterParam)

Filter by available to date

Example: availableTo=yyyy-MM-dd | lt:yyyy-MM-dd | gt:yyyy-MM-dd | gtn:yyyy-MM-dd
nominalCodestring(StringFilterParam)

Filter by nominal code

Example: nominalCode=xyz | in:x,y | like:xyz
supplierIdstring(IdFilterParam)

Filter by supplier identifier

Example: supplierId=0
curl -i -X HEAD \
  'https://rest.elevatebilling.com/v2/rental-products?productType=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&name=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&availableFrom=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&availableTo=yyyy-MM-dd+%2C+lt%3Ayyyy-MM-dd+%2C+gt%3Ayyyy-MM-dd+%2C+gtn%3Ayyyy-MM-dd&nominalCode=xyz+%7C+in%3Ax%2Cy+%7C+like%3Axyz&supplierId=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Exists

Body

Get a specific rental product

Request

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

Rental product identifier

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

Responses

Rental product found

Bodyapplication/json
idinteger(int64)read-only

Rental product identifier

Example: 1
rentalProductCategoryIdinteger(int64)required

Rental product category identifier

Example: 1
productTypestring(RentalProductType)required

Rental product type

Enum"PRODUCT""FEATURE""EVENT"
namestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Product name

invoicePresentationNamestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Invoice Presentation name

parentRentalProductIdinteger(int64)

Parent rental product identifier

Example: 1
supplierIdinteger(int64)required

Supplier identifier

supplierProductNamesArray of strings

Mapping name(s) used by the supplier in their invoice file

taxBandIdinteger(int64)required

Supplier account identifier

Example: 1
availableFromstring(date)required

Product is available from this date

nominalCodestring[ 1 .. 100 ] characters^[\w\p{L}\s%£@&#=':;,`’|!_—–()/\-+.?*$\[\]€^{...

Nominal code

Example: "SALES-01QTR2"
availableTostring(date)

Product is available to this date

doNotProRateboolean

Do not pro rate

Default false
alignedToStartboolean

Default value for alignedToStart when creating rental product inventories

Default false
alignedToBillPeriodboolean

Default value for alignedToBillPeriod when creating rental product inventories

Default false
billInitialChargesImmediatelyboolean

Default value for billInitialChargesImmediately when creating rental product inventories

Default false
forceBillPeriodsinteger(int32)[ 0 .. 731 ]

Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false

Default 0
Example: 1
additionalProductReferenceRequiredboolean

Additional product reference is required on rental product inventories

Default false
additionalProductReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the additional product reference on rental product inventories

Example: "[a-zA-Z0-9]{4,15}"
linkedUsageProductIdinteger(int64)

Linked usage product identifier

Example: 1
productReferenceRequiredboolean

Product reference is required on rental product

Default false
productReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the product reference on rental product inventories

Example: ".*"
productReferenceMayBeDDIRangeboolean

Product reference may be a DDI range on rental product

Default false
generateWhenParentCreatedboolean

Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past

Default false
customFieldsArray of objects(CustomField)
Response
application/json
{ "id": 1, "rentalProductCategoryId": 1, "productType": "PRODUCT", "name": "string", "invoicePresentationName": "string", "parentRentalProductId": 1, "supplierId": 0, "supplierProductNames": [ "string" ], "taxBandId": 1, "availableFrom": "2019-08-24", "nominalCode": "SALES-01QTR2", "availableTo": "2019-08-24", "doNotProRate": false, "alignedToStart": false, "alignedToBillPeriod": false, "billInitialChargesImmediately": false, "forceBillPeriods": 1, "additionalProductReferenceRequired": false, "additionalProductReferenceFormat": "[a-zA-Z0-9]{4,15}", "linkedUsageProductId": 1, "productReferenceRequired": false, "productReferenceFormat": ".*", "productReferenceMayBeDDIRange": false, "generateWhenParentCreated": false, "customFields": [ {} ] }

Update a rental product

Request

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

Rental product identifier

Example: 1
Bodyapplication/json-patch+jsonrequired

A set of JSONPatch operations to be performed

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-products/1 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json-patch+json' \
  -d '[
    {
      "op": "replace",
      "path": "/name",
      "value": "My RPI"
    }
  ]'

Responses

Success

Bodyapplication/json
idinteger(int64)read-only

Rental product identifier

Example: 1
rentalProductCategoryIdinteger(int64)required

Rental product category identifier

Example: 1
productTypestring(RentalProductType)required

Rental product type

Enum"PRODUCT""FEATURE""EVENT"
namestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Product name

invoicePresentationNamestring[ 1 .. 255 ] characters[\w\p{L}\s%£@&#=':;`’,|!_—–\(\)\\/\-\+\.\?\*\...required

Invoice Presentation name

parentRentalProductIdinteger(int64)

Parent rental product identifier

Example: 1
supplierIdinteger(int64)required

Supplier identifier

supplierProductNamesArray of strings

Mapping name(s) used by the supplier in their invoice file

taxBandIdinteger(int64)required

Supplier account identifier

Example: 1
availableFromstring(date)required

Product is available from this date

nominalCodestring[ 1 .. 100 ] characters^[\w\p{L}\s%£@&#=':;,`’|!_—–()/\-+.?*$\[\]€^{...

Nominal code

Example: "SALES-01QTR2"
availableTostring(date)

Product is available to this date

doNotProRateboolean

Do not pro rate

Default false
alignedToStartboolean

Default value for alignedToStart when creating rental product inventories

Default false
alignedToBillPeriodboolean

Default value for alignedToBillPeriod when creating rental product inventories

Default false
billInitialChargesImmediatelyboolean

Default value for billInitialChargesImmediately when creating rental product inventories

Default false
forceBillPeriodsinteger(int32)[ 0 .. 731 ]

Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false

Default 0
Example: 1
additionalProductReferenceRequiredboolean

Additional product reference is required on rental product inventories

Default false
additionalProductReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the additional product reference on rental product inventories

Example: "[a-zA-Z0-9]{4,15}"
linkedUsageProductIdinteger(int64)

Linked usage product identifier

Example: 1
productReferenceRequiredboolean

Product reference is required on rental product

Default false
productReferenceFormatstring[ 0 .. 50 ] characters

Regular expression (regex) used to validate the product reference on rental product inventories

Example: ".*"
productReferenceMayBeDDIRangeboolean

Product reference may be a DDI range on rental product

Default false
generateWhenParentCreatedboolean

Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past

Default false
customFieldsArray of objects(CustomField)
Response
application/json
{ "id": 1, "rentalProductCategoryId": 1, "productType": "PRODUCT", "name": "string", "invoicePresentationName": "string", "parentRentalProductId": 1, "supplierId": 0, "supplierProductNames": [ "string" ], "taxBandId": 1, "availableFrom": "2019-08-24", "nominalCode": "SALES-01QTR2", "availableTo": "2019-08-24", "doNotProRate": false, "alignedToStart": false, "alignedToBillPeriod": false, "billInitialChargesImmediately": false, "forceBillPeriods": 1, "additionalProductReferenceRequired": false, "additionalProductReferenceFormat": "[a-zA-Z0-9]{4,15}", "linkedUsageProductId": 1, "productReferenceRequired": false, "productReferenceFormat": ".*", "productReferenceMayBeDDIRange": false, "generateWhenParentCreated": false, "customFields": [ {} ] }

custom-fields

Custom fields can be added to usage or rental products or to rental product inventory lines

Operations

rental-product-category

Rental product categories are used to group rental products together

Operations