Tutorial: Expand Extensions or Call Recording Minutes for P-Series Cloud PBX (PCE Instance) Using API
This tutorial introduces the request parameters and provides a request example to show you how to expand extensions or call recording minutes for P-Series Cloud PBX (PCE Instance) using API.
Before you begin: Understand the request parameters
Before expanding the number of extensions or call recording minutes for a P-Series Cloud PBX (PCE Instance) using API, we recommend that you read the table below to understand the request parameters and collect the corresponding values.
| Item | Parameter | Description |
|---|---|---|
| Operation Type | operationType |
The operation type. In this scenario, the value is fixed at
|
| Product ID | productId |
Specify the product for which you want to expand extensions
or call recording minutes. The Product ID for P-Series Cloud
PBX (PCE Instance) is |
| PBX Serial Number (SN) | productNo |
Specify the device for which you want to expand extensions or
call recording minutes. You will need to query the PBX SN as described in the following steps. |
| Billing Contact ID | billingId |
Specify the contact who can receive the invoice after you
expand extensions or call recording minutes. You will need to query the Billing Contact ID as described in the following steps. |
| Connection Plan ID | connectionPlanId |
Specify the current subscription plan. You will need to query the Connection Plan ID as described in the following steps. |
| Service Type | serviceType |
The service type. In this scenario, the value is fixed at
|
| Service ID | serviceId |
Specify the specific service to which you want to
subscribe. You will need to query Service ID as described in the following steps. |
| Quantity | quantity |
Specify the number of extensions or call recording minutes
that you want to expand. Note: A maximum
number of 500 extensions is supported on a Cloud
PBX. |
| Purchase Type | purchaseType |
The purchase type. In this scenario, the value is fixed at
|
| Billing Model | billingModel |
The billing model. In this scenario, the value is fixed at
|
| Billing Model | billingModel |
The billing model. In this scenario, the value is fixed at
|
| Billing Cycle | billingCycle |
The billing cycle. In this scenario, the value is fixed at
Important: For service
expansion, you can NOT change the billing cycle.
For
example, if a PBX has been subscribed to service on
a monthly basis and is to expand the service,
the value of Billing Cycle can only be
|
| Multi Cycle | multiCycle |
The interval of recurring billing. In this scenario, the
value is fixed at |
Step 1. Get Serial Number (SN)
- Make a request to the Query Product List API endpoint
with the Product ID
13.GET {base_url}/product/openapi/instance_product/v1/client/instance_product_list?productId=13 - Note down the returned value of
productNofor the desired P-Series Cloud PBX (PCE Instance).
Step 2. Get connection plan ID and service ID
- Make a request to the Query Available Subscription / Trial Plans and Services for a Product API endpoint with the Product ID
13.GET {base_url}/pricing/openapi/purchase/v1/purchase_product_info?productId=13 - Note down the returned value of
planIdandserviceIdfor the desired plan and service.
Step 3. Get billing contact ID
- Make a request to the Query Billing Contact List API endpoint.
GET {base_url}/user/openapi/user/v1/client/billing_contact_list - Note down the returned value of
billingContactIdfor the desired billing contact.
Step 4. Expand extensions or call recording minutes for P-Series Cloud PBX (PCE Instance)
Make a request to the Create an Order API endpoint with the collected values.
POST {base_url}/order/openapi/order/v1/save
In this tutorial, the values we collect are shown below:
| Item | Parameter | Value |
|---|---|---|
| Operation Type | operationType |
purchase_service |
| Product ID | productId |
13 |
| PBX Serial Number (SN) | productNo |
3658B431119665QJ |
| Billing Contact ID | billingId |
3197218168379846218 |
| Connection Plan ID | connectionPlanId |
3048571730026938368 (ID for Enterprise Plan) |
| Service Type | serviceType |
service |
| Service ID | serviceId |
3048573759449317376 (ID for Recording Minutes service) |
| Quantity | quantity |
1000 |
| Purchase Type | purchaseType |
purchase |
| Billing Model | billingModel |
recurring |
| Billing Cycle | billingCycle |
annually |
| Multi Cycle | multiCycle |
0 |
The sample request to expand 1000 call recording minutes for a P-Series Cloud PBX (PCE Instance) is shown below:
POST /order/openapi/order/v1/save HTTP/1.1
Host: openapi.partner.yeastar.com
Content-Type: application/json
User-Agent: OpenAPI
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsicmVzMSJdLCJYLU1TLVVTRVIiOiJ7XCJleHByXCI6XCIwXCIsXCJ0eXBlXCI6XCJwYXJ0bmVyXCIsXCJ1Y0lkXCI6XCIzMDc2OTE1NDU0NDY4NzY3NzQ0XCIsXCJ1c2VyQ29kZVwiOlwiUGFydG5lclwiLFwidXNlcklkXCI6XCIzMDc2OTE1NDU0NDg5NzM5MjY0XCIsXCJ1c2VybmFtZVwiOlwicGFydG5lcmV4YW1wbGVAb3V0bG9vay5jb21cIn0iLCJ1c2VyX25hbWUiOiJwYXJ0bmVyZXhhbXBsZUBvdXRsb29rLmNvbSIsInNjb3BlIjpbImFsbCJdLCJleHAiOjE3Mzk3MTc5MjYsInRva2VuX3R5cGUiOiJvcGVuYXBpIiwianRpIjoidmlzMkh0QkxaUStNQmxPbS9UdThWR1pyNFljPSIsImF1dGhvcml0aWVzIjpbIjc5Il0sImNsaWVudF9pZCI6IjE0NDI5NjM2ODBiMjM0YjA0YmRjZDVjMTZmODcyOWQ2In0.RPRoTJRkXCB4krDSwGRpUFyCfUVv2LHjIiBICA1pCiY
{
"operationType": "purchase_service",
"productId": 13,
"productNo": "3658B431119665QJ",
"billingId": 3197218168379846218,
"serviceList": [
{
"connectionPlanId":3048571730026938368,
"serviceType": "service",
"serviceId": 3048573759449317376,
"quantity": 1000,
"purchaseType": "purchase",
"billingModel": "recurring",
"billingCycle": "annually",
"multiCycle": 0
}
]
}
Result
The sample response is shown below:
{
"code": "success",
"detailMessage": "",
"requestId": "8406e859b03831528275667afc5646ba",
"result": {
"instanceId": "1282352",
"orderNo": "EK3206246063826526208",
"orderStatus": "succeed",
"productNo": "3658B431119665QJ",
"transactionNo": "ER3206246064703135745"
},
"status": 200
}