Introduction ============ .. Last update: 26/05/2022 Data is exchanged in JSON format (thus serialized as UTF-8 string without BOM), and for simpler operations that require few parameters, they may be passed as part of the URL path. JSON exchanges have a content type of ``application/json``. Entity ID are to be expected and handled as strings otherwise noted; time references are expected to be referred to the UTC zone, and be in the ISO-8601 format ``yyyy-MM-dd'T'HH:mm:ss'Z'`` when presented as strings. Most of the API is protected by :doc:`JWT-based authentication `, and is usually exposed on the same HTTP domain to help with HTTPS certificate issuance. All of the APIs are available from the standard Movens domain, under a path like this:: /api/[submodule]/v[version]/[action] for example:: /api/mobile/v1/user/mobile-logon where submodule It is the name of the submodule that handles the function. It is specified at the top of each API documentation page. version As of now, always "1". Will allow introducing new API versions while avoiding name collision. action The actual endpoint. In the documentation pages in this section, URLs are shortened and the ``/api/submodule`` part is defined only once, at the top of each page. Positive Response Format ------------------------ The typical positive response from the API is enclosed in a JSON object like this:: { Result: "OK", Data: { Value: 1 } } The ``Data`` field may be omitted if the specific request does not produce any output value. If present, the Data value may be an object with further details about the output value. Specific format will be described in the appropriate documentation section. Negative Response Format ------------------------ A typical negative response is in an object like this:: { Result: "ERR", Message: "err_InvalidParameter" } The ``Message`` field may be omitted if there are no specific indications of the error that has happened. If present, the value is a string slug to be localized by the UI for the user to understand. The API designed for the mobile APP adds a third field to the error response:: { Result: "ERR", Message: "err_InvalidParameter", LocalizedMessage: "Some provided parameters are invalid" } The ``LocalizedMessage`` field is always provided, even when ``Message`` is omitted. .. _paged-list-api: Paged List APIs ------------------- Some APIs are meant to retrieve list of elements to be shown in tabular view. These APIs are set so that they can retrieve and return data in a paged way, to show in the UI only a portion of the data at a time. All these APIs are set in the same way, ad only the specific returned data type differs. The call to the API expects the following data in the query parameters part of the URL. Below the list of query parameters, with the default values used in the Movens webgui: * draw=0 //An incremented identifier for the call to the same API * length=10 //Lenght of the list chunk returned from the call * start=0 //Page number to be shown, begins at 0 * order[0][column]=0 //Index for the order by property * order[0][dir]=asc //Order by direction (asc or desc) * columns[0][name]=ID //Order by property name * search[value]=XXX //Set if a search on the data is needed Multi-order by is not yet implemented. The response object from the paged list APIs is like this:: { Data:[{...}] //Array of the retrieved data RecordsTotal:130 //Total number of records in DB RecordsFiltered:45 //Number of records retrieved, differs from RecordsTotal only if search is set Draw:0 //Identifier for the call, same value as draw query param SelectedData:[{3,6,14}] //List of data ID, selected via a function defined server-side Error:"..." //Error from the function, unused ExtraData:[{...}] //Added data extracted via a function defined server-side } General Operation Flow ---------------------- The User Agent is expected to work on behalf of the end user, but can also operate autonomously to a certain extent (i.e. automatically perform registration steps). Once the user has been granted access, the User Agent can query the system by submitting a Transportation Request and listening for Movement Authority proposals. Because of the decoupled architecture of the MOVENS platform, the proposals are not time-bound but are reasonably expected to arrive within 10 seconds of the Transportation Request being submitted. Every Transportation Request is stored and processed for analytics purposes; because of this the User Agent should never attempt to submit Transportation Requests on its own but only after the end user has expressed a need for a transportation, even if only for testing the system. If no Movement Authority is received after the 15 seconds timeout the User Agent should inform the user that the search parameters did not produce a response, and that he/she should try again. If an error occurs while fetching the Movement Authority stream, the User Agent can just try again. After a Movement Authority has been chosen by the user and has been successfully confirmed, the User Agent should update its list of reservations from the appropriate API endpoint. If the reservation is scheduled to start far in the future, the platform does not immediately assign a vehicle. As soon as the reservation start time approaches (by default, one hour earlier than the start time), the platform assigns a vehicle to the reservation and adds a series of ``Detail`` elements with vehicle data, and (if applicable) data to identify and communicate with onboard devices. The User Agent is expected to periodically update the reservation list to receive such additional data; ideally the User Agent should update the reservation at least 30 minutes before the scheduled start time, to check if - for any reason - the reservation has been revoked or a vehicle has been assigned. The User Agent can autonomously initiate a trip, after communicating with external devices by means of data available in the Movement Authority's details if needed, by deciding (or agreeing with the external device) a trip UUID and generating and storing a trip begin event. Such data will be synchronized with the platform, and any resulting data should be updated and stored locally by the User Agent. Once the User Agent initiates a trip, it should decrement the Movement Authority's ``RemainingTripCount`` value, to hide a reservation from the list if the value reaches zero. After a successful trip synchronization with the platform, if the User Agent asks for the list of Movement Authorities the one that started the trip will have the ``RemainingTripCount`` decremented. .. _ma-filters: Reservation Filters ------------------- Filters are used while creating a new reservation, to select a vehicle that better complies to the user's needs. They are defined in the code itself, so it isn't possible to dynamically create new filters. The filter object structure has four specific property that explains how the filter have to be used (code-wise) while creating a new reservation: ``ValueType`` is the type of the filter accepted data. It can assume the values explained in :ref:`enum-additionalvaluetypes`, and the accepted values for the filter are: * a number for type ``Number`` * a true/false value for type ``Boolean`` * a plain text for type ``String`` * a single value from a specified set for type ``Enumeration`` * multiple values from a specified set for type ``Multi-enumeration`` ``IsRequired`` specifies if the value for the filter must be set to be allowed to create a reservation. ``ValidValues`` can be set only for certain value types, and its value format changes depending on the value type: * for ``Number`` value type it is a string array containing three integer values: min accepted value, max accepted value and 0/1 to determine if it is an integer (0) or decimal (1) number * for ``String`` value type it is a string array containing two integer values: min accepted length and max accepted length * for ``Enumeration`` and ``Multi-enumeration`` value type it is a string array containing the list of the accepted value keys for that enumeration ``ValidValueLabels`` is used only for ``Enumeration`` and ``Multi-enumeration`` value types. It contains a stringified JSON specifying the localized translations for each possible accepted value. It is in the form: {"value-key":{"language code":"language description", ...}, { ... }} The ``ValidValues`` and ``ValidValueLabels`` fields are automathically calculated by the server, if needed, and it's not possible to edit their value. Additional Data Keys -------------------- Some entities (i.e. movement authorities) might have additional data. Usually this data has a "key" value that describes its meaning. .. _details-alarmsetting: Alarm Settings ^^^^^^^^^^^^^^ ===================== ======== Key Meaning ===================== ======== Localization Localized strings for the setting Threshold Threshold value to trigger the threshold ThresholdTriggerDelay Delays in seconds after which, if the value is still under threshold, the alarm will be triggered ===================== ======== .. _details-movementauthority: Movement Authorities ^^^^^^^^^^^^^^^^^^^^ ============================= ======== Key Meaning ============================= ======== ma-bl-filter-promotions List divided by comma of the numeric IDs for the promotions that can be applied to the movement authority ma-bl-filter-tariffs List divided by comma of the numeric IDs for the tariffs that can be applied to the movement authority ma-vehicle-distance-metres Total distance for the movement authority ma-vehicle-license-plate License plate of the vehicle assigned to the movement authority ma-vehicle-sticker Sticker of the vehicle assigned to the movement authority ma-vehicle-vin VIN of the vehicle assigned to the movement authority ma-vehicle-category-guid Category guid of the vehicle assigned to the movement authority ma-vehicle-category-labels Localized category string of the vehicle assigned to the movement authority ma-vehicle-device-address Hardware address of the device installed on the vehicle assigned to the movement authority ma-vehicle-device-driver Driver guid of the device installed on the vehicle assigned to the movement authority ma-vehicle-device-secret Bluethooth secret for the device installed on the vehicle assigned to the movement authority ma-vehicle-device-serial Serial number of the device installed on the vehicle assigned to the movement authority ma-vehicle-filter-categories Category ID used to filter a vehicle to assign to the movement authority (there may be multiple) ma-vehicle-filter-groups Vehicle group IDs used to filter a vehicle to assign to the movement authority (there may be multiple) ma-vehicle-manufacturer Manufacturer of the vehicle assigned to the movement authority ma-vehicle-model Model of the vehicle assigned to the movement authority ma-user-guid Guid of the user for which the movement authority is made ============================= ======== Since a vehicle might have more than one device installed, the device data have a zero-based index suffix(i.e. ma-vehicle-device-serial-0) .. _details-ma-filters: Movement Authority Filters ^^^^^^^^^^^^^^^^^^^^^^^^^^ ============================= ======== Key Meaning ============================= ======== vg-category Stringified array of category IDs vg-start-max-delay Max delay in minutes to start the trip after the authority's nominal start (if less than the default one) vg-end-max-advance Max advance in minutes to close the trip after the authority's nominal end ============================= ======== .. _details-vs-groupconstraints: Vehicle Group Constraints ^^^^^^^^^^^^^^^^^^^^^^^^^ ============================= ======== Key Meaning ============================= ======== ============================= ======== .. _details-trips: Trip Details ^^^^^^^^^^^^ ============================= ======== Key Meaning ============================= ======== bl-coupon Code of the coupon applied to the trip bl-promotion Numeric ID of the promotion applied to the trip bl-tariff Numeric ID of the tariff applied to the trip wk-category Category guid of the vehicle assigned to the trip wk-res-groups List of guids of the vehicle groups of the vehicle assigned to the trip, divided by comma wk-vehicle-community List of guids of the communities to which both the user and the vehicle assigned to the trip belongs, divided by comma wk-user-groups List of guids of the user groups of the user, divided by comma vs-mileage Total running distance of the trip vs-last-fuel-level Fuel level for the vehicle assigned to the trip vs-average-speed Average speed of the vehicle during the trip vs-actual-running-time Total running time of the trip vs-actual-parking-time Total parking time of the trip vs-vehicle-license-plate License plate of the vehicle assigned to the trip vs-vehicle-manufacturer Manufacturer of the vehicle assigned to the trip vs-vehicle-model Model of the vehicle assigned to the trip vs-vehicle-sticker Sticker of the vehicle assigned to the trip ============================= ======== .. _cost-details-trips: Trip Details ^^^^^^^^^^^^ ============================= ======== Key Meaning ============================= ======== bl-cost Total costing of the trip bl-cost-details Details of the cost (i.e. applied tariff base cost) ============================= ======== Value Enumerations ------------------ .. _enum-additionalcosttypes: AdditionalCostTypes ^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Fine 1 Cleanup Fee 2 Damage Costs 3 Other ====== ======== .. _enum-additionalvaluetypes: AdditionalValueTypes ^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Number 1 Boolean 2 String 3 Enumeration 4 Multi-enumeration 5 Date-time 6 Attachment ====== ======== .. _enum-addresstypes: AddressType ^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Primary Residence Address 1 Living Address 2 Workplace Address ====== ======== .. _enum-attachmenttypes: AttachmentType ^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 License Document Photo 1 Bulletin Board Document File 2 Additional User Data 3 User Agreements ====== ======== .. _enum-documenttype: DocumentType ^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Terms and Conditions 1 FAQ ====== ======== .. _enum-licensedocumenttypes: LicenseDocumentType ^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Road Vehicle Document ====== ======== .. _enum-logactiontypes: LogActionType ^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Add 1 Update 2 Delete 100 End User Logon 101 End User Logoff 102 End User Registration 103 Confirm Registration 104 End User Set Password 105 End User Recover Password 106 End User Reset Password 107 End User Set Email 108 End User Confirm Email Change 150 End User Set as Disabled 151 End User Set as Enabled 152 Requested Forced Password Change For End User 200 Authenticated Session Expiration 201 Authenticated Session Revoked By Operator 300 License Document Validated By Operator (both valid and not valid) 400 Transportation Request Created By Operator 420 Movement Authority Revoked By Operator 421 Movement Authority Extended By Operator 440 Trip Opened By Operator 441 Trip Closed By Operator 2000 Vehicle Plate Changed 2001 Vehicle Set as Operative 2002 Vehicle Set as Not Operative 2003 Vehicle Position Manually Changed 2004 Vehicle Operativity Overridden by Admin 2005 Vehicle Engine Type Changed 2006 Vehicle Additional Data Updated 2100 Operator Executed a Command on OnBoard Device 2101 OnBoard Devices Bound to Vehicle 2102 OnBoard Device Unbound from Vehicle 2200 Zone Boundaries Changed 3000 Changed Alarm Priority 3001 Alarm Acknowledged 3002 Alarm Reassigned to Other Operator 3003 Alarm Marked as Handled 3500 Changed Alarm Setting Value 4000 Trip Payment Execution 4001 Article Purchase 4002 Payment Status Changed 4003 Added Additional Cost to a Trip 4004 Updated Trip Additional Cost, 4005 Changed Payment Amount 4006 Manually Executed a Payment 4007 Transferred Amount from a Wallet to Another 4008 Full Wallet Amount Transferred to Another 4100 Updated Coupon Availability Dates 4101 Updated Coupon or Promotion Effect Dates 4102 Updated Coupon Availability Filters 4103 Changed Tariff Costs 4104 Changed Coupon or Promotion Total Discount 4105 Revoked a Coupon from a User 4106 Reactivated a Coupon for a User ====== ======== .. _enum-logentitytypes: LogEntityType ^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 End User 1 Operator 2 Authenticated Session 3 License Document 4 Transportation Request 5 Movement Authority 6 Trip 7 Service Rule 8 User Address 9 User Agreements 100 Vehicle 101 Vehicle Movement Rule 102 Vehicle Availability Rule 103 Zone 104 Vehicle Scheduled Operation 105 OnBoard Device 200 AlarmSettings 201 Alarm ====== ======== .. _enum-messageformats: MessageFormat ^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Combined Email 1 Simple Email 2 SMS 3 Push Notification ====== ======== .. _enum-messagetypes: MessageType ^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Registration Confirm 1 Welcome Message 2 Password Reset 3 Mobile Number Change Confirm 4 E-Mail Address Change Confirm 100 License Document Validation in Progress 101 License Document Marked Valid 102 License Document Marked Not Valid 500 License Document Expiration Approaching 501 License Document Expired 520 Reservation Expired 521 Trip Start Approaching 522 Trip Exceeding Expected Duration 523 Reservation Revoked by Operator 524 Trip Closed by Operator 550 No Vehicle Available for Reservation 551 Vehicle Assigned to Upcoming Reservation Failure 552 Vehicle Assigned to Reservation Changed 553 Vehicle Assignment to Reservation Now Successful 554 Low Vehicle Fuel Level 555 Low Vehicle Battery Level 600 Transaction Failure 601 Transaction Successful 610 Credit Card Expiration Approaching ====== ======== .. _enum-notificationtypes: NotificationType ^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 102 License Document Marked Not Valid 500 License Document Expiration Approaching 501 License Document Expired 520 Reservation Expired 521 Trip Start Approaching 522 Trip Exceeding Expected Duration 523 Reservation Revoked by Operator 524 Trip Closed by Operator 550 No Vehicle Available for Reservation 551 Vehicle Assigned to Upcoming Reservation Failure 552 Vehicle Assigned to Reservation Changed 553 Vehicle Assignment to Reservation Now Successful 554 Low Vehicle Fuel Level 555 Low Vehicle Battery Level 600 Transaction Failure 601 Transaction Successful 610 Credit Card Expiration Approaching ====== ======== .. _enum-systemmessagetypes: SystemMessageType ^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Registration Confirm 1 Welcome Message 2 Password Reset 3 Mobile Number Change Confirm 4 E-Mail Address Change Confirm 100 License Document Validation in Progress 101 License Document Marked Valid ====== ======== .. _enum-tripeventsource: TripEventSource ^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 On-Board Device 1 User Device (User Agent) 2 Administration ====== ======== .. _enum-tripeventtype: TripEventType ^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Pre-Begin (reserved for future uses) 1 Begin 2 Pre-End (reserved for future uses) 3 End 4 Abandon 5 Park Enter 6 Park Exit 7 Switch Usage Mode (reserved for future uses) 8 Vehicle Operation (reserved for future uses) 9 User Feedback 10 Vehicle Feedback 11 Reservation Extension ====== ======== .. _enum-tripstatus: TripStatus ^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Pre-Begin (reserved for future uses) 1 Running 2 Parked 3 Pre-End (reserved for future uses) 4 Terminated 5 Extended ====== ======== .. _enum-vehicle-alarmtypes: AlarmTypes (Vehicle) ^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 500 Vehicle Fuel/Traction Battery Level Low 502 Vehicle Service Battery Level Low 503 Vehicle Device Connection Lost 550 Vehicle Set Inoperative by Admin 551 Vehicle Set Inoperative by System 552 Vehicle System Operativity Forced by Admin 575 Vehicle Unused for too long 576 Vehicle Moving Without Trip ====== ======== .. _enum-vehicle-attachmenttypes: AttachmentTypes (Vehicle) ^^^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Category Image for Damage Report ====== ======== .. _enum-billabletripeventtype: BillableTripEventType ^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Pre-Begin (reserved for future uses) 1 Begin 2 Pre-End (reserved for future uses) 3 End 4 Abandon 5 Park Enter 6 Park Exit 7 Switch Usage Mode (reserved for future uses) 8 Vehicle Operation (reserved for future uses) 9 User Feedback 10 Vehicle Feedback 11 Reservation Extension ====== ======== .. _enum-billabletripstatus: BillableTripStatus ^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Pre-Begin (reserved for future uses) 1 Running 2 Parked 3 Pre-End (reserved for future uses) 4 Terminated 5 Extended ====== ======== .. _enum-damageseverity: DamageSeverity ^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Minor 1 Moderate 2 Severe ====== ======== .. _enum-movementschedulabletype: MovementSchedulableType ^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Can be Scheduled 1 Group and Category Reserved 2 Vehicle Reserved ====== ======== .. _enum-vehicle-notificationtypes: VehicleNotificationType ^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 550 No Vehicle Available 551 Vehicle Failure 552 Vehicle Changed ====== ======== .. _enum-pointofinteresttypes: PointOfInterestType ^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Refuel Point 1 Maintenance Point 2 Public Service ====== ======== .. _enum-ruletypes: RuleType ^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Allow 1 Deny 2 Vehicle Availability ====== ======== .. _enum-deviceresettype: ResetType ^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Reset Device 1 Reset GPS Module ====== ======== .. _enum-devicetesttype: TestType ^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Door Unlock 1 Door Lock 2 Enable Engine 3 Disable Engine 4 Test Reading 5 Enable Device 6 Disable Device ====== ======== .. _enum-vehiclecleaningstatuses: VehicleCleaningStatus ^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 1 Very Dirty 2 Dirty 3 Medium Clean 4 Clean 5 Very Clean ====== ======== .. _enum-vehicleenginetypes: VehicleEngineTypes ^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Internal Combustion Engine 1 Electric 2 Hybrid ====== ======== .. _enum-vehiclescheduletype: VehicleScheduleType ^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Maintenance 1 Cleaning ====== ======== .. _enum-vehicletriptype: VehicleTripType ^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Normal 1 Maintenance ====== ======== .. _enum-zonetype: ZoneType ^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Parking 1 OperationArea 2 MaintenancePartition ====== ======== .. _enum-alarm-additionalvaluetypes: AdditionalValueTypes (Alarm) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Number 1 Boolean 2 String ====== ======== .. _enum-alarmpriorities: AlarmPriority ^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Low 1 Medium 2 High 3 Critical ====== ======== .. _enum-alarm-alarmtypes: AlarmTypes (Alarm) ^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 500 Vehicle Fuel/Traction Battery Level Low 502 Vehicle Service Battery Level Low 503 Vehicle Device Connection Lost 550 Vehicle Set Inoperative by Admin 551 Vehicle Set Inoperative by System 552 Vehicle System Operativity Forced by Admin 575 Vehicle Unused for too long 576 Vehicle Moving Without Trip ====== ======== .. _enum-alarm-logactiontypes: LogActionType (Alarm) ^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 1 Update 3000 Changed Alarm Priority 3001 Alarm Acknowledged 3002 Alarm Reassigned to Other Operator 3003 Alarm Marked as Handled ====== ======== .. _enum-alarm-thresholdunits: ThresholdMeasurementUnits ^^^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Percentage 10 Seconds 11 Minutes 12 Hours 100 Volts ====== ======== .. _enum-business-attachmenttypes: AttachmentType (Business) ^^^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 License Document Photo ====== ======== .. _enum-balanceunit: BalanceUnit ^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Tokens 1 Minutes 2 Distance 3 Currency ====== ======== .. _enum-business-notificationtypes: BusinessNotificationType ^^^^^^^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 600 Transaction Failure 601 Transaction Successful 610 Credit Card Expiration Approaching ====== ======== .. _enum-movementtype: MovementType ^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Wallet Unit Top-Up 1 Wallet Unit Consume 2 Consume for Trip Payment 3 Top-Up via Article Purchase 4 Unit Transfert from Other Wallet 5 Unit Transfert to Other Wallet ====== ======== .. _enum-pricelistentrytype: PriceListEntryType ^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Article 1 Tariff ====== ======== .. _enum-paymentmethodtype: PaymentMethodTypes ^^^^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Cash 1 Wire Transfer 2 Credit Card 3 PayPal 4 AliPay 5 Stripe 6 ComNPay 7 WorldPay ====== ======== .. _enum-paymentstatus: PaymentStatuses ^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 To Be Payed 1 Not To Be Payed 2 Pending 3 Failed 4 On Hold By System 5 On Hold By Operator 6 Expired 7 Payed ====== ======== .. _enum-paymenttype: PaymentTypes ^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Subscription Fee 1 Article Purchase 2 Trip Payment 3 Fine Payment 4 Trip Additional Cost ====== ======== .. _enum-transactiontype: TransactionType ^^^^^^^^^^^^^^^ ====== ======== Value Meaning ====== ======== 0 Prepaid Top-Up 1 Receipt Payment 2 Vending ====== ======== .. _device-status-data: Device Retrieved Data --------------------- +------------------------+-------------+--------------------------------------------------------+ | Label | Type | Possible Values | +========================+=============+========================================================+ | centrallock | Enumeration | lock, unlock | +------------------------+-------------+--------------------------------------------------------+ | centrallockimmobilizer | Enumeration | lock, unlock | +------------------------+-------------+--------------------------------------------------------+ | devbatvoltage | Number | | +------------------------+-------------+--------------------------------------------------------+ | doorlockstatus | Enumeration | lock, unlock | +------------------------+-------------+--------------------------------------------------------+ | doorstatus | Enumeration | closedlocked, closedunlocked, openlocked, openunlocked | +------------------------+-------------+--------------------------------------------------------+ | gpsmodulestatus | Enumeration | ok, notok, sleeping | +------------------------+-------------+--------------------------------------------------------+ | hazardslightstatus | Enumeration | on, off | +------------------------+-------------+--------------------------------------------------------+ | immobilizer | Enumeration | lock, unlock | +------------------------+-------------+--------------------------------------------------------+ | rpm | Number | | +------------------------+-------------+--------------------------------------------------------+ | seatbeltstatus | Enumeration | connected, disconnected | +------------------------+-------------+--------------------------------------------------------+ | trunklockstatus | Enumeration | closedlocked, closedunlocked, openlocked, openunlocked | +------------------------+-------------+--------------------------------------------------------+ | trunkstatus | Enumeration | lock, unlock | +------------------------+-------------+--------------------------------------------------------+ | windowstatus | Enumeration | open, closed | +------------------------+-------------+--------------------------------------------------------+ .. _message-placeholders: Message Placeholders -------------------- Placeholder ^^^^^^^^^^^ =========================== =========================== Value Meaning =========================== =========================== %website_base Base URL of the web application %registration_confirm_path Full URL for the registration confirm API (value created by platform) %password_reset_url Full URL for the password reset form (needs userguid and token query params, if not already specified in the configuration variable) %email_update_confirm_url Full URL for the email change confirm API (needs token, if not already specified in the configuration variable) %mobile_update_confirm_url Full URL for the mobile change confirm API (needs token, if not already specified in the configuration variable) %username Recipient username %fullname Recipient full name %userguid Recipient identifier %token Action token needed for the confirmation APIs %expiration_date License document expiration date %license_number License document number %ma_start_date Reservation expected start date %ma_min_start_date Min allowed trip start date %ma_max_start_date Max allowed trip start date %ma_start_location_name Reservation expected start location %ma_end_date Reservation expected end date %ma_end_location_name Reservation expected end location %payment_amount Paid amount in a payment %payment_currency Currency used for the payment (ISO 4217 format code) %payment_date Last payment execution date %payment_type Payment type (see :ref:`enum-paymenttype` ) %removed_vehicle_plate Vehicle license plate previously assigned to a reservation %assigned_vehicle_plate Vehicle license plate currently assigned to a reservation %trip_start_date Trip actual start date %trip_start_location_name Trip actual start location %trip_end_date Trip actual end date %trip_end_location_name Trip actual end location =========================== =========================== Accepted Placeholders ^^^^^^^^^^^^^^^^^^^^^ ======================================== ======================================== Message type Accepted placeholders ======================================== ======================================== Registration Confirm %website_base, %registration_confirm_path Welcome Message %website_base Password Reset %website_base, %password_reset_url, %userguid, %token Mobile Number Change Confirm %website_base, %fullname, %username, %mobile_update_confirm_url, %userguid, %token E-Mail Address Change Confirm %website_base, %fullname, %username, %email_update_confirm_url, %userguid, %token License Document Validation in Progress %website_base, %%license_number, %expiration_date License Document Marked Valid %website_base, %%license_number, %expiration_date License Document Marked Not Valid %website_base, %%license_number, %expiration_date License Document Expiration Approaching %website_base, %%license_number, %expiration_date License Document Expired %website_base, %%license_number, %expiration_date Reservation Expired %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name Trip Start Approaching %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name, %assigned_vehicle_plate Trip Exceeding Expected Duration %website_base, %trip_start_date, %trip_start_location_name, %trip_end_date, %trip_end_location_name Reservation Revoked by Operator %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name Trip Closed by Operator %website_base, %trip_start_date, %trip_start_location_name, %trip_end_date, %trip_end_location_name No Vehicle Available %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name Vehicle Failure %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name, %removed_vehicle_plate Vehicle Changed %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name, %assigned_vehicle_plate, %removed_vehicle_plate Vehicle Assignment Now Successful %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name, %assigned_vehicle_plate Low Vehicle Fuel Level %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name, %assigned_vehicle_plate Low Vehicle Battery Level %website_base, %ma_start_date, %ma_min_start_date, %ma_max_start_date, %ma_start_location_name, %ma_end_date, %ma_end_location_name, %assigned_vehicle_plate Transaction Failure %website_base, %payment_amount, %payment_date, %payment_type, %payment_currency Transaction Successful %website_base, %payment_amount, %payment_date, %payment_type, %payment_currency Credit Card Expiration Approaching %website_base ======================================== ========================================