Create, update, delete billing plan
You can use this command for billing plan creation, updating, deleting:
svc=account/update_billing_plan¶ms={"callMode":<text>,
"plan":{
"name":<text>,
"rename":<text>,
"servicesModCounter":<uint>,
"historyPeriod":<int>,
"flags":<uint>,
"denyBalance":<double>,
"blockBalance":<double>,
"minDaysCounter":<int>,
"currencyFormat":<text>,
"descr":<text>,
"email":<text>,
"hwTypes":{
"<hw_id>":
{
"name": <uint>
},
...
},
"parent": <text>,
"personal":
{
"services": <object>
}
}}
Parameters
Name | Description | Values |
callMode | request type | create, update, delete |
Plan
Name | Description |
name | billing plan name (unique field) |
rename | new billing plan name |
servicesModCounter | counter shows how many times services list being modified |
historyPeriod | time to store unit messages, days |
flags | billing plan flags (see below) |
denyBalance | min balance below which block occurs |
blockBalance | min balance below which services block occurs |
minDaysCounter | min days count below whoch block occurs |
currencyFormat | currency format |
descr | billing plan description |
email | email box |
Restrictions for rename
:
1. top billing name editing is restricted;
2. setting already existed billing name to another plan is restricted (no dublicates allowed).
Billing plan flags
Flag | Description |
0x01 | block users, if the balance is less than block balance |
0x02 | forbid to login to the system and stop account functioning if the balance is less than deny balance |
0x08 | limit device types by assigned |
0x10 | limit device types by any except assigned |
0x20 | every day decrease the days counter value, and block account when remained days value reaches the minimum value |
HW Types
Name | Description |
<hw_name> | put correct hw name here |
id | hardware id |
Services
Name | Description |
cost | cost table |
descr | service description |
flags | define action: 0 - none, 1 - create/update, 2 - delete |
interval | 0 - none, 1 - hourly, 2 - daily,
3 - weekly, 4 - monthly |
maxUsage | amount of items available |
name | service name |
type | service type: 1 - on demand, 2 - periodic |
Please visit this page to get more info about services.
Response
{
"parent":<text>, /* parent billing plan name */
"name":<text>, /* billing plan name */
"servicesModCounter":<uint>, /* services modification counter */
"historyPeriod":<uint>, /* history period to store messages, in days (if 0 - unlimited) */
"flags":<uint>, /* billing plan flags */
"denyBalance":<int>, /* deny balance */
"blockBalance":<int>, /* block balance */
"minDaysCounter":<int>, /* minimum days counter */
"currencyFormat":<text>, /* currency format */
"descr":<text>, /* description */
"email":<text>, /* email */
"mapserverTags":<text>, /* map server tags */
"hwTypes":{ /* hardware object */
"<hw_id>": /* hardware id */
{
"name": <text> /* hardware name */
},
...
},
"personal":
{
"services": <object> /* services object (see below) */
},
"combined":
{
"services": <object> /* services object (see below) */
}
}
}
Services
"services":{ /* service object where keys are correct service names */
"<service_name>":{ /* put correct service name instead of <service_name> */
"type": <uint>, /* type: 1 - on demand; 2 - periodic */
"maxUsage": <int>, /* count of active resources of current service */
"cost": <text>, /* maximal resources count */
"interval": <uint>, /* cost table */
"descr": <text>, /* interval: 0 - none, 1 - hourly, 2 - daily, 3 - weekly, 4 - monthly*/
"flags": <uint>
},
...
}
Please go here to see services list.