as

Settings
Sign out
Notifications
Alexa
Amazon Appstore
Ring
AWS
Documentation
Support
Contact Us
My Cases
Ring

Device Locations

Device location information provides coarse, non-specific geographic data about where Ring devices are installed. This information may be required for determining local legal compliance or regional feature availability.

Accessing Location Data

Location information can be retrieved in two ways:

  1. During device discovery using the include parameter:
    GET https://api.amazonvision.com/v1/devices?include=location
    Authorization: Bearer <access_token>
    
  2. Individual device location:
    GET https://api.amazonvision.com/v1/devices/{device_id}/location
    Authorization: Bearer <access_token>
    

Response Structure

{
  "meta": {
    "time": "2025-07-07T10:30:00Z"
  },
  "data": {
    "type": "locations",
    "id": "zzzzzz",
    "attributes": {
      "country": "US",
      "state": "GA"
    }
  }
}

Location Attributes

Country

  • country: ISO country code (e.g., "US", "CA", "GB")
  • Always provided when location data is available
  • Primary identifier for regional compliance

State/Province

  • state: State or province code (e.g., "GA", "CA", "ON")
  • Provided for devices in the United States when available
  • Should be treated as optional and non-guaranteed
  • May not be available for all countries

Privacy and Granularity

Ring provides intentionally coarse location information to protect user privacy:

  • No precise coordinates: Exact addresses or GPS coordinates are never provided
  • Country-level minimum: At minimum, country information is provided
  • State-level maximum: For supported regions, state/province may be included
  • No city-level data: Specific cities or postal codes are not provided

Use Cases

def check_regional_compliance(device_location):
    country = device_location.get('attributes', {}).get('country')
    state = device_location.get('attributes', {}).get('state')
    
    if country == 'US':
        if state in ['CA', 'IL']:  # States with specific privacy laws
            return apply_enhanced_privacy_controls()
    elif country in ['GB', 'DE', 'FR']:
        return apply_gdpr_controls()
    
    return apply_default_controls()

Important Considerations

  1. Optional data: Location information may not be available for all devices
  2. Privacy first: Location data is intentionally limited to protect user privacy
  3. Compliance focus: Primary use case is legal and regulatory compliance
  4. No tracking: This data should not be used for user tracking or analytics
  5. Static nature: Device locations typically don't change frequently