Tracker plans¶
API calls on user's actions with tracker plans.
User of dealer can switch tracker from the plan t1 to plan t2 if:
- Tracker belongs to user and isn't a clone.
- Tracker's tariff last changed more than tariff.freeze.period (config option. default 30 days) ago.
- t1.tariff_id != t2.tariff_id, i.e. the new plan must be different from the current.
- t1.dealer_id = t2.dealer_id = dealer.effectiveDealerId, i.e. current and new plans must belong to user's effective dealer.
- t2.active = 1, i.e. new plan is active (plan's option "Allow users to switch to this plan independently" in panel is set on).
- t1.grouping = t2.grouping, i.e. user can change tariff only within one group of tariffs.
- t2.device = tracker, i.e. new plan must be for trackers.
- The new plan is available to user's legal type.
User's effective dealer is
- User's dealer if its dealer_id = defaultDealerId (config option) or dogovor_type = 'paas'.
- Parent of user's dealer otherwise.
API actions¶
API path: /tariff/tracker/
.
change
¶
Changes plan of tracker (with tracker_id
) to new plan (with tariff_id
).
required sub-user rights: admin
(available only to master users).
name | description | type |
---|---|---|
tracker_id | ID of a tracking device (aka "object_id"). The tracking device must belong to authorized user. | int |
tariff_id | If of the new plan. | int |
Examples¶
curl -X POST 'https://api.navixy.com/v2/tariff/tracker/change' \
-H 'Content-Type: application/json' \
-d '{"hash": "22eac1c27af4be7b9d04da2ce1af111b", "tracker_id": 345215, "tariff_id": 12}'
https://api.navixy.com/v2/tariff/tracker/change?hash=a6aa75587e5c59c32d347da438505fc3&tracker_id=345215&tariff_id=12
Response¶
{ "success": true }
Errors¶
- 201 – Not found in the database - if user doesn't have trackers with given
tracker_id
. - 219 – Not allowed for clones of the device.
- 237 – Invalid plan - if there are no plan with specified
tariff_id
and belongs to user's effective dealer. - 221 - Device limit exceeded – when new plan limit for devices is less than the current count of devices in the account.
- 238 - Changing plan is not allowed – user can't switch tracker to that plan.
- 239 – New plan doesn't exist.
- 240 - Not allowed changing plan too frequently – plan last changed less or equal to 30 days (tariff.freeze.period config option).
list
¶
List plans on which user can switch the passed tracker (even when tariff last changed less or equal than tariff.freeze.period time ago).
Parameters¶
name | description | type |
---|---|---|
tracker_id | ID of the tracker (aka "object_id"). Tracker must belong to authorized user. | int |
Examples¶
curl -X POST 'https://api.navixy.com/v2/tariff/tracker/list' \
-H 'Content-Type: application/json' \
-d '{"hash": "22eac1c27af4be7b9d04da2ce1af111b", "tracker_id": 345215}'
https://api.navixy.com/v2/tariff/tracker/list?hash=a6aa75587e5c59c32d347da438505fc3&tracker_id=345215
Response¶
{
"success": true,
"list": [{
"id": 10,
"name": "Business",
"group_id": 2,
"active": true,
"type": "monthly",
"price": 13.0,
"early_change_price": 23.0,
"device_limit": 1000,
"has_reports" : true,
"paas_free": false,
"store_period": "12m",
"features": [
"map_layers"
],
"map_filter": {
"exclusion": true,
"values": []
}
}],
"days_to_next_change": 11
}
list
- array of objects. List of plan objects.days_to_next_change
- int. Days to the next free change, or 0 if free change available.
Errors¶
- General types only.
Last update: August 4, 2024