What’s new in the Device Location API

12/16/20 - Version 3.0

New and Updated Resources

Precise location is now available to customers using Precise Location Certified IoT Devices. Customers now have the option of getting a device’s location “Coarse Only”, “Precise Only” and “Coarse or Precise”. Location information is still consent based by device, so the Customer can also restrict location information completely or refuse consent by device.

  •   New endpoints to request the location of IoT devices, with results returned as a callback asynchronously:
    • POST /devicelocations/action/consents Updating/Verifying consent for individual devices, the entire account or a list of devices
    • POST /devicelocations Request the current or cached location of a device (updated for precise location)
    • POST /devicelocations/action/periodic Setting a regular interval for devices in an account to share where they are (Precise location only)
    • DELETE /devicelocations/action/periodic Removes the routine for periodic notifications of a device’s location (Precise location only)

10/03/18 - Version 2.9

New and Updated Resources

  • New endpoint to request the location of IoT or consumer devices, with results returned asynchronously. When the location of a consumer device is requested, such as the location of a phone, a text message will be sent to the device asking the owner to consent to the location request. Only after the consumer has given consent will the device location be returned to the requester. Device locations are returned via the new DeviceLocation callback service.
    • POST /devicelocations Request the location of IoT or consumer devices (asynchronous)
    • DELETE /devicelocations/{txid}?accountname={accountname} Cancel an asynchronous device location request

9/04/18 - Version 2.7

New and Updated Resources

  • New endpoints to create and manage triggers based on subscription usage
    • POST subsc/v1/usage/triggers Create a usage trigger
    • POST subsc/v1/usage/triggers/{triggerId} Modify a usage trigger
    • GET subsc/v1/usage/accounts/{accountName}/triggers Retrieve all usage triggers in an account
    • GET subsc/v1/usage/accounts/{accountName}/triggers/{triggerId} Get a single usage trigger
    • DELETE subsc/v1/usage/accounts/{accountName}/triggers/{triggerId} Delete a usage trigger

6/28/18 - Version 2.4.1

New and Updated Resources

  • These three requests now return {"success": true} for successful completion:
    • POST /consents
    • DELETE /consents
    • DELETE /callbacks/{account}/name/{service}

5/15/18 - Version 2.3

New and Updated Resources

  • POST /consents A new type parameter lets you append devices to the existing exclusion list or replace the entire list.
  • DELETE /consents Removes devices from the exclusion list so that they can be found by the Device Location service.
  • GET /consents/{account}/index/{startIndex} Responses now return a maximum of 2,000 devices, and the new index parameter lets you request a specific page of results.
  • GET /subscriptions A new maxAllowance parameter in the response gives the number of billable location requests allowed per billing cycle.

4/18/18 - Version 2.2

New and Updated Resources

  • POST /usage Returns the number of device location requests used by an account during a specified time period. Primary accounts can also see usage totals for their managed accounts.


Initial release of the Device Location API

The first release of the Device Location API allows you to find the current or cached location of IoT devices. You can get a synchronous response with the locations of up to 20 devices, or request an asynchronous location report for larger numbers of devices.

Current limitations

The current release of the Device Location API has the following restrictions:

  • Only coarse (approximate) location
  • Only MRC based billing
  • Automatic tracking is not supported