Tutorial: Obtain Free Trial for RM Premium Using API

This tutorial introduces the request parameters and provides a request example to show you how to obtain free trial for RM Premium using API.

Before you begin: Understand the request parameters

Before requesting free trial for RM Premium 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 trial_service.

Product ID productId Specify the product that you want to request for a trial.

The Product ID for RM Premium is 21.

Partner ID partnerId Specify the user for whom you want to request for the trial.
Note: This parameter is required only when you request for a subordinate user. You will need to query the information as described in the following steps.
Service Type serviceType The service type.

In this scenario, the value is fixed at service.

Service ID serviceId Specify the specific service that you want to try.

You will need to query the Service ID as described in the following steps.

Purchase Type purchaseType The purchase type.

In this scenario, the value is fixed at trial.

Multi Cycle multiCycle The interval of recurring billing.

In this scenario, the value is fixed at 0.

(Optional) Step 1. Get subordinate user ID

  1. Make a request to the Query Subordinate User List API endpoint.
    GET {base_url}/user/openapi/user/v1/client/partner_list
  2. Note down the returned value of partnerId for the desired subordinate user.

Step 2. Get service ID

  1. Make a request to the Query Available Subscription / Trial Plans and Services for a Product API endpoint with the Product ID 21.
    GET {base_url}/pricing/openapi/purchase/v1/purchase_product_info?productId=21
  2. Note down the returned value of serviceId for the service.

Step 3. Request free trial for RM Premium

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

trial_service

Product ID productId 21
Service Type serviceType

service

Service ID serviceId

3375819276601303040

Purchase Type purchaseType trial
Multi Cycle multiCycle

0

The sample request to obtain free trial of RM Premium 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": "trial_service",
  "productId": 21,  
  "serviceList": [
    {
      "serviceType": "service",
      "serviceId": 3375819276601303040,
      "purchaseType": "trial",
      "multiCycle": 0
    }
  ]
}

Result

The sample response is shown below:

{
    "code": "success",
    "detailMessage": "",
    "requestId": "7f46df3d501eb20baca6420ac96c8565",
    "result": {
        "instanceId": "1946741",
        "orderId": null,
        "orderNo": "",
        "orderStatus": "succeed",
        "productNo": "3076913644890832896",
        "transactionNo": ""
    },
    "status": 200
}