Tutorial: Expand Capacity or Subscribe Services for P-Series Turnkey Package Using API
This tutorial introduces the request parameters and provides a request example to show you how to expand capacity or subscribe to services for P-Series Turnkey Package using API.
Before you begin: Understand the request parameters
Before expanding capacity or subscribing services for P-Series Turnkey Package 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 capacity or
subscribe to services. The Product ID for P-Series Turnkey
Package is |
| Partner ID | partnerId |
Specify the user for whom you want to expand capacity or
subscribe to services. Note: This parameter
is required only when you purchase for a subordinate user.
You will need to query the information as described in the following
steps. |
| Billing Contact ID | billingId |
Specify the contact who can receive the invoice after you
expand capacity or subscribe to service. 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 the Service ID as described in the following steps. |
| Quantity | quantity |
Specify the number of extensions, Ultimate Plan extensions, call recording minutes, or transcription minutes that you want to purchase. |
| 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 Cycle | billingCycle |
The billing cycle. In this scenario, the value is fixed at
|
| Multi Cycle | multiCycle |
The interval of recurring billing. In this scenario, the
value is fixed at |
(Optional) Step 1. Get subordinate user ID
- Make a request to the Query Subordinate User List API endpoint.
GET {base_url}/user/openapi/user/v1/client/partner_list - Note down the returned value of
partnerIdfor the desired subordinate user.
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
14.GET {base_url}/pricing/openapi/purchase/v1/purchase_product_info?productId=14 - 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 capacity or subscribe to services for P-Series Turnkey Package
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 |
14 |
| Billing Contact ID | billingId |
3197218168379846218 |
| Connection Plan ID | connectionPlanId |
3048941892189077504 |
| Service Type | serviceType |
service |
| Service ID | serviceId |
3049032137219817472 (ID for Ultimate Plan service) |
| Quantity | quantity |
50 |
| Purchase Type | purchaseType |
purchase |
| Billing Model | billingModel |
recurring |
| Billing Cycle | billingCycle |
annually |
| Multi Cycle | multiCycle |
0 |
The sample request to purchase 50 Ultimate Plan extensions for P-Series Turnkey Package 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": 14,
"billingId": 3197218168379846218,
"serviceList": [
{
"connectionPlanId":3048941892189077504,
"serviceType": "service",
"serviceId": 3049032137219817472,
"quantity": 50,
"purchaseType": "purchase",
"billingModel": "recurring",
"billingCycle": "annually",
"multiCycle": 0
}
]
}
Result
The sample response is shown below:
{
"code": "success",
"detailMessage": "",
"requestId": "a5142be44da31ea6035bd9ee0a4b9335",
"result": {
"instanceId": "1948832",
"orderId": "1782070",
"orderNo": "GQ3401181709772259328",
"orderStatus": "succeed",
"productNo": "3076913644890832896",
"transactionNo": "AP3401181710707589121"
},
"status": 200
}