openapi: 3.0.0
info:
  description: API providing tracker commands on top of the ThingPark Location solution.
  version: 3.3.0
  title: ThingPark X Location Engine Tracker Command API
externalDocs:
  description: For more information, please check the online examples in this documentation.
  url: '/location-trackercommand/latest/doc/index.html'
tags:
  - name: TrackerCommand
    description: Tracker command operations are used to send downlink commands to supported Abeeway trackers. The parameters should not be changed arbitrarily without reading the firmware reference document.
paths:
  /trackerCommands:
    post:
      tags:
        - TrackerCommand
      summary: Tracker command sending
      description: Sends a downlink command to a supported Abeeway tracker.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TrackerCommand'
            examples:
              TrackerCommand to change mode:
                $ref: '#/components/examples/TrackerCommandToChangeMode'
              TrackerCommand to send raw data:
                $ref: '#/components/examples/TrackerCommandToSendRawData'
              TrackerCommand to change param:
                $ref: '#/components/examples/TrackerCommandToChangeParam'
              TrackerCommand to send request:
                $ref: '#/components/examples/TrackerCommandToSendRequest'
              TrackerCommand to set configFlags:
                $ref: '#/components/examples/TrackerCommandToSetConfigFlags'
              TrackerCommand to get param:
                $ref: '#/components/examples/TrackerCommandToGetParam'
              TrackerCommand to change params:
                $ref: '#/components/examples/TrackerCommandToChangeParams'
              TrackerCommand to change profile:
                $ref: '#/components/examples/TrackerCommandToChangeProfile'
              TrackerCommand to set customTransmitStrat:
                $ref: '#/components/examples/TrackerCommandToSetCustomTransmitStrat'
              TrackerCommand to send Abeeway Downlink Payload:
                $ref: '#/components/examples/TrackerCommandToSendAbeewayDownlinkPayload'
              TrackerCommand to change mode with notification:
                $ref: '#/components/examples/TrackerCommandToChangeModeWithNotification'
              TrackerCommand POD with alert notification:
                $ref: '#/components/examples/TrackerCommandPODWithAlert'
          application/xml:
            schema:
              $ref: '#/components/schemas/TrackerCommand'
        description: Contents of the tracker command.
        required: true
      responses:
        '201':
          description: Tracker command sent successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackerCommand'
              examples:
                response:
                  value:
                    - x-regga-type: sniplet
                      id: tracker-command-sending
                      title: Tracker command sending example
                      requestSniplet:
                        headers:
                          Authorization: Bearer <subscriber_token>
                        data: '{ "trackerCommandType" : "TrackerCommandToChangeMode", "deviceEUI" : "20635F0102001734", "deviceProfileId": "ABEEWAY/MICRO", "newMode" : "ACTIVITY" }'
            application/xml:
              schema:
                $ref: '#/components/schemas/TrackerCommand'
        '400':
          description: Bad Request - invalid request
        '401':
          description: Unauthorized - invalid api key
        '403':
          description: Validation Error - device association check failure
        '404':
          description: Tracker command could not be sent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
      security:
        - bearerAuth: []
          Dx-Admin: []
          keycloak: []
      x-since-version: 1.0.0
servers:
  - url: '/location-trackercommand/latest/api'
components:
  securitySchemes:
    bearerAuth:
      description: 'Enter your access token here without prefix "bearer " '
      type: http
      scheme: bearer
      bearerFormat: JWT
    keycloak:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: '/auth/realms//protocol/openid-connect/auth'
          scopes: {}
    Dx-Admin:
      type: oauth2
      description: |
        **This authorization is deprecated. Service account authentication should be used.**

        Enter your ThingPark credentials with dx-profile-id as prefix. 

        Example: dev1-api/test@abeeway.com
      flows:
        clientCredentials:
          tokenUrl: '/admin/latest/api/oauth/token'
          scopes: {}
  schemas:
    TrackerCommand:
      discriminator:
        propertyName: trackerCommandType
      required:
        - trackerCommandType
        - deviceEUI
      properties:
        deviceEUI:
          type: string
          description: Tracker device EUI affected by the command.
        deviceProfileId:
          type: string
          description: Id of the profile associated with the device, used for decoding properly the payload.
        trackerCommandType:
          type: string
          description: Type of command for the list of trackers. Depending on the type, other attributes can be set for the command resource.
          enum:
            - TrackerCommandToChangeMode
            - TrackerCommandToSendRawData
            - TrackerCommandToChangeParam
            - TrackerCommandToSendRequest
            - TrackerCommandToSetConfigFlags
            - TrackerCommandToGetParam
            - TrackerCommandToChangeParams
            - TrackerCommandToChangeProfile
            - TrackerCommandToSetCustomTransmitStrat
            - TrackerCommandToSendAbeewayDownlinkPayload
        notificationType:
          $ref: '#/components/schemas/TrackerCommandNotificationType'
        alertOnFirstChange:
          $ref: '#/components/schemas/AlertOnFirstChange'
        status:
          type: string
          description: Status of the tracker command request.
          enum:
            - QUEUED
            - ALERT_SET
            - ERROR
        timeSent:
          type: string
          format: date-time
          description: the time that the solver sends the downlink to operator
      description: Resource representing a generic command to be sent through a downlink to an Abeeway tracker.
      example:
        trackerCommandType: TrackerCommandToChangeMode
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        newMode: 'OFF'
    TrackerCommandToChangeMode:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - newMode
          properties:
            newMode:
              type: string
              description: 'New operating mode to apply to the trackers. Possible values are:<br>- ''OFF'': Everything is turned OFF to achieve the lowest possible power consumption. <br>- ''STAND_BY'': The tracker is in idle state. It can use periodic reporting if it is activated, and answers to On-Demand position requests. <br>- ''STANDBY'':  deprecated. See ''STAND_BY''<br>- ''MOTION_TRACKING'': Tracking state only when moving. <br>- ''MOTION'':  deprecated. See ''MOTION_TRACKING''.  <br>- ''PERMANENT_TRACKING'': Always in tracking state. <br>- ''PERMANENT'':  deprecated. See ''PERMANENT_TRACKING''.<br>- ''MOTION_START_END_TRACKING'': Motion start and end events. <br>- ''START_END'':  deprecated. See ''MOTION_START_END_TRACKING''. <br>- ''ACTIVITY_TRACKING'': The tracker focuses on detecting movements. Every motion detection increases a counter. <br>- ''ACTIVITY'':  deprecated. See ''ACTIVITY_TRACKING''.'
              enum:
                - 'OFF'
                - STANDBY
                - MOTION
                - PERMANENT
                - START_END
                - ACTIVITY
                - STAND_BY
                - MOTION_TRACKING
                - PERMANENT_TRACKING
                - MOTION_START_END_TRACKING
                - ACTIVITY_TRACKING
      description: Resource representing a command used to change the operating mode of trackers.
    TrackerCommandToChangeParam:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - paramName
            - paramValue
          properties:
            paramName:
              $ref: '#/components/schemas/paramName'
            paramValue:
              type: string
              description: Value of the parameter to update. Should always be passed as a string, regardless of the parameter unit type.
      description: Resource representing a command used to change a tracker parameter.
    TrackerCommandToSetConfigFlags:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - framePendingMechanism
            - buttonPressToTurnDeviceOff
            - doubleClickIsSosModeOrAlert
            - downlinkSetParameterConfirmation
            - wifiPayloadWithNoCypher
            - bleAdvertisingAtStart
            - selectWifiScanOrGeolocStartMessage
            - ledBlinkWithGpsFix
            - startMotionEventUplink
            - endMotionEventUplink
            - otaJoinWhenLeavingModeOff
            - rejectAsymmetricBlePairing
          properties:
            framePendingMechanism:
              type: boolean
              description: '\- false: Frame pending mechanism is disabled. <br>- true: Frame pending mechanism is enabled. Factory default value.<br>(Supported from Asset Tracker 1.7.0)'
            buttonPressToTurnDeviceOff:
              type: boolean
              description: '\- false: Cannot turn OFF device with a button press.<br>- true: Can turn OFF device with a button press. Factory default value.<br> (Supported from Asset Tracker 1.7.0)'
            doubleClickIsSosModeOrAlert:
              type: boolean
              description: '\- false: Double button click triggers an Alert.<br>- true: Double button click starts SOS mode, another double click stops it. Factory default value.<br> (Supported from Asset Tracker 1.7.0)'
            downlinkSetParameterConfirmation:
              type: boolean
              description: '\- false: Confirmation uplink mechanism is disabled.<br>- true: Confirmation uplink mechanism is enabled. Factory default value.<br> (Supported from Asset Tracker 1.7.0)'
            wifiPayloadWithNoCypher:
              type: boolean
              description: '\- false: Wifi payload is cyphered. <br>- true: Wifi payload is not cyphered. Factory default value.<br>(Supported from Asset Tracker 1.7.0)'
            bleAdvertisingAtStart:
              type: boolean
              description: '\- false: BLE advertising is disabled. Factory default value. <br>- true: BLE advertising is enabled.<br> (Supported from Asset Tracker 1.7.0)'
            selectWifiScanOrGeolocStartMessage:
              type: boolean
              description: '\- false: Enable geoloc start event message when starting a geoloc sequence.<br>- true: Enable Wifi scan when starting a geoloc sequence. Factory default value.<br> (Supported from Asset Tracker 1.7.3)'
            ledBlinkWithGpsFix:
              type: boolean
              description: '\- false: No blink when a GPS fix is received. Factory default value.<br>- true: LED Blink when a GPS fix is received.<br>(Supported from Asset Tracker 1.7.3)'
            startMotionEventUplink:
              type: boolean
              description: '\- false: Start Motion event payload is disabled. Factory default value.<br>- true: Start Motion event payload is enabled.<br>(Supported from Asset Tracker 1.8.0)'
            endMotionEventUplink:
              type: boolean
              description: '\- false: End Motion event payload is disabled. Factory default value.<br>- true: End Motion event payload is enabled.<br>(Supported from Asset Tracker 1.8.0)'
            otaJoinWhenLeavingModeOff:
              type: boolean
              description: '\- false: Disable OTA join when leaving mode OFF. Factory default value.<br>- true: Enable OTA join when leaving mode OFF.<br>(Supported from Asset Tracker 1.8.0)'
            rejectAsymmetricBlePairing:
              type: boolean
              description: '\- false: Accept asymmetric BLE pairing. Factory default value. <br>- true: Reject asymmetric BLE pairing.<br>(Supported from Asset Tracker 1.8.0)'
            enableLongWifiPayload:
              type: boolean
              description: '\- false: Long wifi payload is disabled. Factory default value.<br>- true: Long wifi payload is enabled.<br>(Supported from Asset Tracker 1.9.0)'
            collectionLongReport:
              type: boolean
              description: '\- false: The usual payload size is used (36 bytes).<br>- true: The number of entries carried in the uplink is larger and use a payload size of 91 bytes.<br>(Supported from Asset Tracker 2.0)'
            autoStart:
              type: boolean
              description: '\- false: Once LoRa join succeeds, the user needs to make another long press to actually start in the configured operating mode.<br>- true: Once LoRa join succeeds, the device automatically starts without requiring a long press.<br>(Supported from Asset Tracker 2.0)'
      description: Resource representing a command used to set the configuration flags of trackers.
    TrackerCommandToSendRequest:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - requestType
          properties:
            requestType:
              type: string
              description: 'Type of the request to be sent to the trackers. Possible values are: <br>-''POS_ON_DEMAND'': Request tracker position (Supported from Asset Tracker 1.7.0).<br>-''RESET'':  Reset tracker (Supported from Asset Tracker 1.7.0).<br>-''START_SOS'': Turn on SOS mode of the tracker (Supported from Asset Tracker 1.7.0).<br>-''STOP_SOS'': Turn off SOS mode of the tracker (Supported from Asset Tracker 1.7.0).<br>-''RESET_SOS'': deprecated. See ''STOP_SOS'' <br>-''RESET_BATTERY'': For primary batteries, when replacing it (Supported from Asset Tracker 1.7.0).<br>-''RESET_BLE_PAIRING'': Reset tracker BLE bond (Supported from Asset Tracker 1.7.0).<br>-''GET_DEVICE_CONFIG'': Retrieve the complete configuration of the tracker (Supported from Asset Tracker 1.7.0). <br>-''GET_CONFIG_FLAGS'': Retrieve the configuration flags parameter (Supported from Asset Tracker 1.7.0).<br>-''GET_BLE_FIRMWARE_VERSION'': Get the BLE firmware version (Supported from Asset Tracker 1.7.0). <br>-''GET_MCU_FIRMWARE_VERSION'': Get the MCU firmware version (Supported from Asset Tracker 1.7.0). <br>-''GET_X_AXIS_ACCELEROMETER'': Get the X axis accelerometer value in mg (Supported from Asset Tracker 1.8.0).<br>-''GET_Y_AXIS_ACCELEROMETER'': Get the Y axis accelerometer value in mg (Supported from Asset Tracker 1.8.0).<br>-''GET_Z_AXIS_ACCELEROMETER'': Get the Z axis accelerometer value in mg (Supported from Asset Tracker 1.8.0).<br>-''REQUEST_TEMPERATURE_STATUS'': Request temperature status. The tracker answers this request with a temperature event message.(Supported from Asset Tracker 1.9.0)'
              enum:
                - POS_ON_DEMAND
                - RESET
                - START_SOS
                - RESET_SOS
                - STOP_SOS
                - RESET_BATTERY
                - RESET_BLE_PAIRING
                - GET_DEVICE_CONFIG
                - GET_CONFIG_FLAGS
                - GET_BLE_FIRMWARE_VERSION
                - GET_MCU_FIRMWARE_VERSION
                - GET_X_AXIS_ACCELEROMTER
                - GET_Y_AXIS_ACCELEROMTER
                - GET_Z_AXIS_ACCELEROMTER
                - GET_X_AXIS_ACCELEROMETER
                - GET_Y_AXIS_ACCELEROMETER
                - GET_Z_AXIS_ACCELEROMETER
                - REQUEST_TEMPERATURE_STATUS
      description: Resource representing a command used to send a request to the trackers.
    TrackerCommandToGetParam:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - paramName
          properties:
            paramName:
              $ref: '#/components/schemas/paramName'
      description: Resource representing a command used to get the configuration parameter (s) of the trackers.
    TrackerCommandToSendRawData:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - rawPayload
          properties:
            rawPayload:
              type: string
              description: Raw Payload to be sent to the tracker
      description: Send raw payload to the tracker.
    TrackerCommandToChangeParams:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - parameters
          properties:
            parameters:
              type: array
              minItems: 1
              maxItems: 5
              items:
                $ref: '#/components/schemas/ConfigurationParameter'
      description: Resource representing a command used to change parameter(s) of trackers.
    TrackerCommandToChangeProfile:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          required:
            - profileNamespace
            - profileName
          properties:
            profileNamespace:
              type: string
              description: Configuration profile namespace to set
            profileName:
              type: string
              description: Configuration profile name to set
      description: Resource representing a command used to change the current tracker configuration profile.
    TrackerCommandToSendAbeewayDownlinkPayload:
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - type: object
          properties:
            abeewayDownlinkPayload:
              type: object
              description: Abeeway downlink payload as described in Abeeway IoT Flow driver (abeewayDownlinkPayload.ackToken is not required, it will be replaced by a generated value)
            thing:
              $ref: '#/components/schemas/thingSpec'
      description: Resource representing a command used to change the current tracker configuration profile.
    thingSpec:
      type: object
      properties:
        model:
          $ref: '#/components/schemas/moduleSpec'
        application:
          $ref: '#/components/schemas/moduleSpec'
    moduleSpec:
      type: object
      required:
        - producerId
        - moduleId
        - version
      properties:
        producerId:
          type: string
        moduleId:
          type: string
        version:
          type: string
    ConfigurationParameter:
      type: object
      required:
        - paramName
        - paramValue
      properties:
        paramName:
          $ref: '#/components/schemas/paramName'
        paramValue:
          type: string
          description: Value of the parameter to update. Should always be passed as a string, regardless of the parameter unit type.
      description: Resource representing a tracker configuration parameter.
    paramName:
      type: string
      description: 'Possible parameter names are: <br> <br>- ''TRACKING_UL_PERIOD'': Period in seconds of position messages while in tracking state (Supported from Asset Tracker 1.7.0, called ''ul_period'' in configuration file). <br> <br>- ''LORALIVE_PERIOD'': Period in seconds of heartbeat messages in idle state (Supported from Asset Tracker 1.7.0, called ''lora_period'' in configuration file).<br> <br>- ''ENERGY_STATUS_PERIOD'': Period in seconds of energy status messages (Supported from Asset Tracker 1.7.0, called ''pw_stat_period'' in configuration file).<br> <br>- ''PERIODIC_POSITION_INTERVAL'': Period in seconds of the periodic position report (Supported from Asset Tracker 1.7.0, called ''periodic_pos_period'' in configuration file).<br> <br>- ''PERIODIC_POSITION_PERIOD'': deprecated. See ''PERIODIC_POSITION_INTERVAL'' <br> <br>- ''GPS_SCAN_MODE'': Reserved.<br> <br>- ''GPS_SCAN_PROFILE'': deprecated. See ''GPS_SCAN_MODE''.<br>  <br>- ''GEOLOC_SENSOR_PROFILE'': (Called ''geoloc_sensor'' in configuration file) The geolocation technology to be used for geolocation scans in operating mode. The possible technolgy values are: <br>0: WIFI_ONLY: Only the WIFI technology is used (Supported from Asset Tracker 1.7.0).<br> 1: GPS_ONLY: Only the GPS technology is used (Supported from Asset Tracker 1.7.0). <br> 2: XGPS_ONLY : Only the Low Power GPS and GPS technologies are used (Supported from Asset Tracker 1.7.0).<br>3: WIFI_FALLBACK_XGPS: Swap on failure, alternate WIFI and xGPS (Supported from Asset Tracker 1.7.0).<br>4: SELF_GOVERNING_HISTORY: Self governing with history (Supported from Asset Tracker 1.7.0).<br>5: SELF_GOVERNING_TIMEOUT: Self governing with timeout (Supported from Asset Tracker 1.7.0).<br>6: WGPS_ONLY: The WIFI technology is used fisrt. If the result is not considered OK, swap to GPS technology (Supported from Asset Tracker 1.7.0).<br>7: WXGPS_ONLY: The WIFI technology is used fisrt. If the result is not considered OK, swap to XGPS technology (Supported from Asset Tracker 1.7.0). <br>8: WGPS_WXGPS_FAILURE: WGPS/WXGPS, change on failure (Supported from Asset Tracker 1.7.0).<br>9: WGPS_WXGPS_TIMEOUT: WGPS/WXGPS, change on timeout (Supported from Asset Tracker 1.7.0).<br>10: BLE: BLE beacon scan only (Supported from Asset Tracker 1.7.0). <br>11: BGPS_ONLY (Supported from Asset Tracker 1.8.0).<br><br>- ''ONESHOT_GEOLOC_METHOD'': (Called ''geoloc_method'' in configuration file) The geolocation technology to used for geolocation scans only for the periodic and on-demand positions. The possible technolgy values are: <br>0: WIFI (Supported from Asset Tracker 1.7.0).<br> 1: GPS (Supported from Asset Tracker 1.7.0). <br> 2: XGPS (Supported from Asset Tracker 1.7.0).<br>3: WGPS (Supported from Asset Tracker 1.7.0).<br>4: WXGPS (Supported from Asset Tracker 1.7.0).<br>5: BLE (Supported from Asset Tracker 1.7.0). <br>6: BGPS (Supported from Asset Tracker 1.8.0)<br> <br>- ''EXT_ANTENNA_PROFILE'': (Called ''antenna'' in configuration file) <br>* From Asset Tracker 1.7.0 to Asset Tracker 1.9.0:<br> This parameter is used only for an industrial tracker. The possible values are: .<br> 0: use only PCB antenna for GPS scans. <br> 1: use only ceramic antenna for GPS scans.<br> 2: automatic selection, use ceramic antenna only when facing the sky.<br>* From Asset Tracker 2.0: Only the value 0 is supported.<br><br>- ''MOTION_START_END_NB_TX'': Number of position messages to send after motion events in Start/End tracking mode (Supported from Asset Tracker 1.7.0, called ''motion_nb_pos'' in configuration file).<br><br>- ''GPS_TIMEOUT'': Time in seconds for GPS geoloc timeout (Supported from Asset Tracker 1.7.0, called ''gps_timeout'' in configuration file).<br> <br>- ''XGPS_TIMEOUT'': time in seconds for XGPS geoloc timeout(Supported from Asset Tracker 1.7.0, called ''agps_timeout'' in configuration file).<br><br>- ''GPS_EHPE'': Horizontal error in meters to decide if a GPS fix in GPS geoloc is acceptable (Supported from Asset Tracker 1.7.0, called ''gps_ehpe'' in configuration file).<br> <br>- ''GPS_CONVERGENCE'': Time in seconds before deciding a GPS fix in GPS geoloc has converged for enough time (Supported from Asset Tracker 1.7.0, called ''gps_convergence'' in configuration file). <br> <br>- ''TRANSMIT_STRAT'': Different transmission strategies, applied when the device is in motion (Supported from Asset Tracker 1.7.0, called ''transmit_strat'' in configuration file):<br> 0: Single fixed: always transmit using the predefined datarate (from provisioning). <br> 1: Single Random Datarate: single transmission, applied to (SF7-12) using Central Limit Theorem.<br> 2: Double Random Datarate: double transmission of the same frame using a fast (SF7-8) then a slow datarate (SF9-12), using  Central Limit Theorem. <br> 3:  Double Fixed: first transmission at SF7 or SF8, then at predefined datarate (from provisioning). <br> 4: Network ADR: Adaptive DataRate, selected by the network. In static, Network ADR is applied <br>  <br>5: Custom strategy:  Activate the strategy defined with transmitStratCustom parameter. (Supported from Asset Tracker 1.9.0)<br> <br>- ''BLE_BEACON_COUNT'':  This parameter is used only for a micro tracker. It represents the maximum number of BLE beacons to be reported in the position message (Supported from Asset Tracker 1.7.0, called ''ble_beacon_cnt'' in configuration file). <br><br>- ''BLE_BEACON_TIMEOUT'': This parameter is used only for a micro tracker. Time in seconds for BLE Beacon geoloc timeout (Supported from Asset Tracker 1.7.0, called ''ble_beacon_timeout'' in configuration file).<br><br>- ''GPS_STANDBY_TIMEOUT'': Time in seconds for the GPS to stay in standby mode after being turned ON. At the timeout, the GPS is turned OFF.When 0, the GPS always stays in standby mode  (Supported from Asset Tracker 1.7.0, called ''gps_standby_timeout'' in configuration file). <br> <br>- ''CONFIRMED_UL_BITMAP'': Confirmed uplink bitmap for specific Messages type.<br> For example, to configure confirmed uplinks for message type 0x00 and 0x03:20 + 23 = 9. You need to set 9 (Supported from Asset Tracker 1.7.0, called ''confirmed_ul_bitmap'' in configuration file).<br><br>- ''CONFIRMED_UL_RETRY'': The number of retries for each confirmed uplink, when confirmation is not received (Supported from Asset Tracker 1.7.0, called ''confirmed_ul_retry'' in configuration file).<br><br>- ''MOTION_SENSITIVITY'': Set a specific accelerometer configuration. 0 is default configuration. 1-100 configures the accelerometer in low sensitivity from 1 to 100%. 101-200 configures the accelerometer in high sensitivity from 1 to 100%  (Supported from Asset Tracker 1.8.0, called ''motion_sensitivity'' in configuration file).<br><br>- ''SHOCK_DETECTION'': This parameter provides the configuration of the sensitivity of the shock detection from 1 to 100%. A value of 0 disables the shock detection.<br>(Supported from Asset Tracker 1.8.0, called ''shock_detection'' in configuration file).<br><br>- ''PERIODIC_ACTIVITY_PERIOD'': Time in seconds to report periodic activity. As the activity is reported on 6 windows, this value has to be a multiple of 6. When 0, the reporting is disabled (Supported from Asset Tracker 1.8.0, called ''periodic_activity_period'' in configuration file).<br> <br>- ''MOTION_DURATION'': Time in seconds for motion duration, minimum time between a start and an end motion event (Supported from Asset Tracker 1.8.0, called ''motion_duration'' in configuration file).<br><br>- ''BLE_RSSI_FILTER'': RSSI value to filter BLE beacons with BLE-GPS geolocation mode (Supported from Asset Tracker 1.8.0, called ''ble_rssi_filter'' in configuration file).<br><br>- ''TEMPERATURE_HIGH'' :Configure the high threshold temperature.<br> 255 = disabled.<br>(Supported from Asset Tracker 1.9.0, called ''temperature_high'' in configuration file)<br><br>- ''TEMPERATURE_LOW'': Configure the low threshold temperature.<br> 255 = disabled <br>(Supported from Asset Tracker 1.9.0, called ''temperature_low'' in configuration file)<br><br>- ''TEMPERATURE_ACTION'': Configure the action to be done when entering critical state: (Supported from Asset Tracker 1.9.0, called ''temperature_action'' in configuration file): <br>0: No action. <br>1: Geolocation disabled if temperature_high is reached.<br>2: Geolocation disabled if temperature_low is reached.<br>3: Geolocation disabled if temperature_low or temperature_high is reached.<br><br>- ''MODE'': Tracking mode of the trackers (Supported from Asset Tracker 1.9.0, called ''mode'' in configuration file). The possible mode values are: <br>0: STAND_BY: The tracker is in idle state. It can use periodic reporting if it is activated, and answers to On-Demand position requests. <br>1: ''MOTION_TRACKING'': Tracking state only when moving. <br>2: ''PERMANENT_TRACKING'': Always in tracking state. <br>3: ''MOTION_START_END_TRACKING'': Motion start and end events. <br>4: ''ACTIVITY_TRACKING'': The tracker focuses on detecting movements. Every motion detection increases a counter.<br>5: ''OFF'': Everything is turned OFF. <br><br>- ''BLE_BOND'': BLE bond status of the trackers (Supported from Asset Tracker 1.9.0).<br>0: No BLE bond  present (sending this value will clear the BLE bond)<br>1: BLE bond  present (read-only value)<br>2: BLE bond status unknown (read-only value).<br><br>- ''BATTERY_CAPACITY'': The battery capacity in mAh (Supported from Asset Tracker 2.0).<br><br>- ''REED_SWITCH_CONFIGURATION'': The reed switch configuration (Supported from Asset Tracker 2.0, called ''reed_switch_configuration'' in configuration file):<br>0: disable.<br>1: normal reed switch behaviour.<br>2: button<br>3: other.<br><br>- ''COLLECTION_SCAN_TYPE'': The collection scan type provides the type of the collection to be done.(Supported from Asset Tracker 2.0): <br>0: No collection scan.<br>1: BLE beacons. <br>2: WIFI BSSID.<br><br>- ''COLLECTION_BLE_FILTER_TYPE'': BLE filter type used for BLE collection only (Supported from Asset Tracker 2.0): <br>0: No filter. <br>1: Eddystone UID.<br>2: Eddystone URL. <br>3: All Eddystone.<br>4: iBeacon only.<br>5: Altbeacon only.<br><br>- ''COLLECTION_BLE_FILTER_MAIN_1'': BLE main filter part 1 used for BLE collection only (Supported from Asset Tracker 2.0).<br><br>- ''COLLECTION_BLE_FILTER_MAIN_2'': BLE main filter part 2 used for BLE collection only (Supported from Asset Tracker 2.0). <br><br>- ''COLLECTION_BLE_FILTER_SEC_VALUE'': Value used for the BLE secondary filter (BLE collection only) (Supported from Asset Tracker 2.0).<br><br>- ''COLLECTION_BLE_FILTER_SEC_MASK'': Mask used for the BLE secondary filter (BLE collection only) (Supported from Asset Tracker 2.0).<br><br>- ''COLLECTION_NB_ENTRY'': Provide the number of entries in the collection (Supported from Asset Tracker 2.0). <br><br>- ''NETWORK_TIMEOUT_CHECK'': LoRa network monitoring. A timer using this duration is restarted after each last downlink received. Once elapsed, the tracker includes a link check request in all of this uplink. Once the answer is received, the timer restarts. A null value disables this monitoring. Duration expressed in seconds.(Supported from Asset Tracker 2.0). <br><br>- ''NETWORK_TIMEOUT_RESET'': LoRa network monitoring. A timer using this duration is restarted after each last downlink received. Once elapsed, the tracker resets. Duration expressed in seconds.(Supported from Asset Tracker 2.0). <br><br> - ''GNSS_CONSTELLATION'' : Select the GNSS constellation set to be used for making fixes. Possible values are : <br>0: GPS_ONLY <br>1: GLONASS_ONLY <br>2: GPS_GLONASS<br>3: GPS_GALILEO <br>4: GPS_GLONASS_GALILEO<br>5: BEIDOU_ONLY  <br>6: GPS_BEIDOU (Supported from Asset Tracker 2.0)'
      enum:
        - TRACKING_UL_PERIOD
        - LORALIVE_PERIOD
        - ENERGY_STATUS_PERIOD
        - PERIODIC_POSITION_PERIOD
        - PERIODIC_POSITION_INTERVAL
        - GPS_SCAN_PROFILE
        - GPS_SCAN_MODE
        - GEOLOC_SENSOR_PROFILE
        - ONESHOT_GEOLOC_METHOD
        - EXT_ANTENNA_PROFILE
        - MOTION_START_END_NB_TX
        - GPS_TIMEOUT
        - XGPS_TIMEOUT
        - GPS_EHPE
        - GPS_CONVERGENCE
        - TRANSMIT_STRAT
        - BLE_BEACON_COUNT
        - BLE_BEACON_TIMEOUT
        - GPS_STANDBY_TIMEOUT
        - CONFIRMED_UL_BITMAP
        - CONFIRMED_UL_RETRY
        - MOTION_SENSITIVITY
        - SHOCK_DETECTION
        - PERIODIC_ACTIVITY_PERIOD
        - MOTION_DURATION
        - BLE_RSSI_FILTER
        - TEMPERATURE_HIGH
        - TEMPERATURE_LOW
        - TEMPERATURE_ACTION
        - MODE
        - BLE_BOND
        - BATTERY_CAPACITY
        - REED_SWITCH_CONFIGURATION
        - COLLECTION_SCAN_TYPE
        - COLLECTION_BLE_FILTER_TYPE
        - COLLECTION_BLE_FILTER_MAIN_1
        - COLLECTION_BLE_FILTER_MAIN_2
        - COLLECTION_BLE_FILTER_SEC_VALUE
        - COLLECTION_BLE_FILTER_SEC_MASK
        - COLLECTION_NB_ENTRY
        - NETWORK_TIMEOUT_CHECK
        - NETWORK_TIMEOUT_RESET
        - GNSS_CONSTELLATION
    TrackerCommandNotificationType:
      description: settings for notification when the trackerCommand is received by the tracker
      type: object
      properties:
        notifyByEmail:
          description: Indicates to notify user about tracker command by email. Default is false.
          type: boolean
        notifyOnInterface:
          description: Indicates to notify users about about tracker command on the GUI. Default is false.
          type: boolean
        asyncResponseUplinkPeriods:
          type: integer
          minimum: 1
          maximum: 5
          default: 1
          description: Number of uplink periods to wait before notification timeout
        asyncResponseSlack:
          type: integer
          minimum: 0
          maximum: 180
          default: 10
          description: Delay on top of asyncResponseUplinkPeriods * uplink period duration to wait before timeout (seconds)
        emailAddress:
          type: string
          format: email
          description: Email address to notify B2B users.
    AlertOnFirstChange:
      description: settings for notification when the tracker sends the first value for the requested information after the trackerCommand is received
      type: object
      properties:
        notifyByEmail:
          description: Indicates to notify user about the requested information by email. Default is false.
          type: boolean
        notifyOnInterface:
          description: Indicates to notify users about the requested information on the GUI. Default is false.
          type: boolean
        timeout:
          description: timeout for the alert from the moment the alert is created. in seconds
          type: integer
    ErrorInfo:
      type: object
      properties:
        code:
          type: string
          description: A code identifying the error
        message:
          type: string
          description: Provides a message describing the error
    TrackerCommandToSetCustomTransmitStrat:
      description: Resource representing a command used to set the configuration flags of trackers.
      allOf:
        - $ref: '#/components/schemas/TrackerCommand'
        - required:
            - ADREnabled
            - transmissionType
            - firstTransmissionDatarateDistribution
            - secondTransmissionDatarateDistribution
            - firstTransmissionDatarate
            - secondTransmissionDatarate
          properties:
            ADREnabled:
              type: boolean
              description: 'ADR activation in static (Supported from Asset Tracker 1.9.0)<br>-false: ADR is enabled.Factory default value. <br>-true: ADR is disabled.'
            transmissionType:
              type: string
              description: 'Transmission type (Supported from Asset Tracker 1.9.0)<br>-''SINGLE'': single transmission Factory default value.<br> -''DOUBLE'': double transmission.<br>'
              enum:
                - SINGLE
                - DOUBLE
            firstTransmissionDatarateDistribution:
              type: string
              description: 'First transmission data rate distribution (Supported from Asset Tracker 1.9.0). Possible values are: <br> -''UNKNOWN'': Not supported value.<br> -''RANDOM'': Factory default value.<br> -''BELL''<br>-''RING'''
              enum:
                - UNKNOWN
                - RANDOM
                - BELL
                - RING
            secondTransmissionDatarateDistribution:
              type: string
              description: 'Second transmission data rate distribution (Supported from Asset Tracker 1.9.0). Possible values are: <br> -''UNKNOWN'': Not supported value.<br> -''RANDOM'': Factory default value.<br> -''BELL''<br>-''RING'''
              enum:
                - UNKNOWN
                - RANDOM
                - BELL
                - RING
            firstTransmissionDatarate:
              $ref: '#/components/schemas/EnableDatarate'
            secondTransmissionDatarate:
              $ref: '#/components/schemas/EnableDatarate'
    EnableDatarate:
      description: A bitmap representing each DR to select for the transmission. You Can configure DR from DR0 to DR7. If no DR is selected, default DR will be minimum available DR for the current band. (Supported from Asset Tracker 1.9.0).
      type: object
      properties:
        dr0:
          type: boolean
          description: '\- false: dr0 is disabled.<br>- true: dr0 is enabled.'
        dr1:
          type: boolean
          description: '\- false: dr1 is disabled.<br>- true: dr1 is enabled.'
        dr2:
          type: boolean
          description: '\- false: dr2 is disabled.<br>- true: dr2 is enabled.'
        dr3:
          type: boolean
          description: '\- false: dr3 is disabled.<br>- true: dr3 is enabled.'
        dr4:
          type: boolean
          description: '\- false: dr4 is disabled.<br>- true: dr4 is enabled.'
        dr5:
          type: boolean
          description: '\- false: dr5 is disabled.<br>- true: dr5 is enabled.'
        dr6:
          type: boolean
          description: '\- false: dr6 is disabled.<br>- true: dr6 is enabled.'
        dr7:
          type: boolean
          description: '\- false: dr7 is disabled.<br>- true: dr7 is enabled.'
  examples:
    TrackerCommandToChangeMode:
      description: Refer to TrackerCommandToChangeMode
      value:
        trackerCommandType: TrackerCommandToChangeMode
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        newMode: ACTIVITY
    TrackerCommandToChangeModeWithNotification:
      description: Refer to TrackerCommandToChangeMode. Notification set
      value:
        trackerCommandType: TrackerCommandToChangeMode
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        newMode: 'OFF'
        notificationType:
          notifyByEmail: true
          notifyOnInterface: true
          asyncResponseUplinkPeriods: 1
          asyncResponseSlack: 10
    TrackerCommandToSendRawData:
      description: Refer to TrackerCommandToSendRawData
      value:
        trackerCommandType: TrackerCommandToSendRawData
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        rawPayload: '0101'
    TrackerCommandToChangeParam:
      description: Refer to TrackerCommandToChangeParam
      value:
        trackerCommandType: TrackerCommandToChangeParam
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        paramName: LORALIVE_PERIOD
        paramValue: '600'
    TrackerCommandToSendRequest:
      description: Refer to TrackerCommandToSendRequest
      value:
        trackerCommandType: TrackerCommandToSendRequest
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        requestType: POS_ON_DEMAND
    TrackerCommandToSetConfigFlags:
      description: Refer to TrackerCommandToSetConfigFlags
      value:
        trackerCommandType: TrackerCommandToSetConfigFlags
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        framePendingMechanism: true
        buttonPressToTurnDeviceOff: true
        doubleClickIsSosModeOrAlert: true
        downlinkSetParameterConfirmation: true
        wifiPayloadWithNoCypher: true
        bleAdvertisingAtStart: false
        selectWifiScanOrGeolocStartMessage: true
        ledBlinkWithGpsFix: false
        startMotionEventUplink: true
        endMotionEventUplink: false
        otaJoinWhenLeavingModeOff: false
        rejectAsymmetricBlePairing: false
        enableLongWifiPayload: true
        collectionLongReport: true
        autoStart: true
    TrackerCommandToGetParam:
      description: Refer to TrackerCommandToGetParam
      value:
        trackerCommandType: TrackerCommandToGetParam
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        paramName: BLE_BOND
    TrackerCommandToChangeParams:
      description: Refer to TrackerCommandToChangeParams
      value:
        trackerCommandType: TrackerCommandToChangeParams
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        parameters:
          - paramName: LORALIVE_PERIOD
            paramValue: '600'
          - paramName: TRACKING_UL_PERIOD
            paramValue: '900'
    TrackerCommandToChangeProfile:
      description: Refer to TrackerCommandToChangeProfile
      value:
        trackerCommandType: TrackerCommandToChangeProfile
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        profileNamespace: TPL_B2Capp
        profileName: INTENSIVE
    TrackerCommandToSetCustomTransmitStrat:
      description: Refer to TrackerCommandToSetCustomTransmitStrat
      value:
        trackerCommandType: TrackerCommandToSetCustomTransmitStrat
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        ADREnabled: false
        transmissionType: SINGLE
        firstTransmissionDatarateDistribution: RANDOM
        secondTransmissionDatarateDistribution: BELL
        firstTransmissionDatarate:
          dr0: true
          dr1: false
          dr2: false
          dr3: false
          dr4: true
          dr5: false
          dr6: false
          dr7: false
        secondTransmissionDatarate:
          dr0: false
          dr1: true
          dr2: false
          dr3: false
          dr4: false
          dr5: true
          dr6: false
          dr7: false
    TrackerCommandToSendAbeewayDownlinkPayload:
      description: Refer to TrackerCommandToSendAbeewayDownlinkPayload
      value:
        trackerCommandType: TrackerCommandToSendAbeewayDownlinkPayload
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        abeewayDownlinkPayload:
          downMessageType: PROXIMITY
          ackToken: 3
          proximityMessage:
            type: CLEAR_DAILY_INFORMATION
            dayIdentifier: 0
        thing:
          application:
            producerId: abeeway
            moduleId: asset-tracker
            version: '2'
    TrackerCommandPODWithAlert:
      description: POD request with alert notification
      value:
        trackerCommandType: TrackerCommandToSendRequest
        deviceEUI: 20635F0102001734
        deviceProfileId: ABEEWAY/MICRO
        requestType: POS_ON_DEMAND
        alertOnFirstChange: 
          notifyByEmail: true
          notifyOnInterface: true
          timeout: 300