Skip to main content
GET
/
v1
/
devices
/
{id}
/
settings
Get Device Settings
curl --request GET \
  --url https://api.example.com/v1/devices/{id}/settings \
  --header 'Authorization: Bearer <token>'
{
  "device_id": "dev_abc123xyz",
  "settings": {
    "upload": {
      "mode": "auto",
      "streaming_enabled": true,
      "upload_delay_minutes": 0,
      "daily_data_limit_mb": 500,
      "allow_roaming": false,
      "pause_on_low_battery": true,
      "off_peak_hours": {
        "enabled": false,
        "start": "02:00",
        "end": "06:00",
        "timezone": "America/Los_Angeles"
      }
    },
    "audio": {
      "codec": "opus",
      "sample_rate_khz": 16,
      "bitrate_kbps": 32
    },
    "power": {
      "auto_sleep_minutes": 30,
      "low_battery_threshold_percent": 20
    }
  },
  "current_status": {
    "network_type": "wifi",
    "signal_strength_dbm": -45,
    "is_roaming": false,
    "data_used_today_mb": 112,
    "battery_percent": 65,
    "storage_used_mb": 450,
    "storage_total_mb": 2048
  },
  "updated_at": "2025-01-13T10:30:00Z"
}

Overview

Returns the complete settings configuration for a device. Settings are organized into namespaces:
  • upload: Upload method, streaming, data limits, roaming
  • audio: Codec, sample rate, bitrate
  • power: Sleep mode, battery thresholds
  • display: Brightness, timeout (Bota Note only)
  • network: WiFi credentials, APN config

Authentication

Requires a valid API key with devices:read scope.
curl https://api.bota.dev/v1/devices/dev_abc123xyz/settings \
  -H "Authorization: Bearer sk_live_..."

Path Parameters

id
string
required
Device ID (e.g., dev_abc123xyz)

Response

device_id
string
The device ID
settings
object
Complete device settings organized by namespace
current_status
object
Real-time device status (optional, if device is online)
updated_at
string
ISO 8601 timestamp of last settings update
{
  "device_id": "dev_abc123xyz",
  "settings": {
    "upload": {
      "mode": "auto",
      "streaming_enabled": true,
      "upload_delay_minutes": 0,
      "daily_data_limit_mb": 500,
      "allow_roaming": false,
      "pause_on_low_battery": true,
      "off_peak_hours": {
        "enabled": false,
        "start": "02:00",
        "end": "06:00",
        "timezone": "America/Los_Angeles"
      }
    },
    "audio": {
      "codec": "opus",
      "sample_rate_khz": 16,
      "bitrate_kbps": 32
    },
    "power": {
      "auto_sleep_minutes": 30,
      "low_battery_threshold_percent": 20
    }
  },
  "current_status": {
    "network_type": "wifi",
    "signal_strength_dbm": -45,
    "is_roaming": false,
    "data_used_today_mb": 112,
    "battery_percent": 65,
    "storage_used_mb": 450,
    "storage_total_mb": 2048
  },
  "updated_at": "2025-01-13T10:30:00Z"
}

Use Cases

  • Mobile App Settings UI: Fetch current settings to populate settings screen
  • Fleet Management: Audit device configurations across organization
  • Troubleshooting: Check device upload mode when debugging upload failures
  • Multi-Device Sync: Retrieve settings from one device to apply to others