Skip to content
DocumentationAPI Reference

Get Available Devices

client.Me.Player.GetDevices(ctx) (*MePlayerGetDevicesResponse, error)
GET/me/player/devices

Get information about a user’s available Spotify Connect devices. Some device models are not supported and will not be listed in the API response.

ReturnsExpand Collapse
type MePlayerGetDevicesResponse struct{…}
Devices []DeviceObject
ID stringoptional

The device ID. This ID is unique and persistent to some extent. However, this is not guaranteed and any cached device_id should periodically be cleared out and refetched as necessary.

IsActive booloptional

If this device is the currently active device.

IsPrivateSession booloptional

If this device is currently in a private session.

IsRestricted booloptional

Whether controlling this device is restricted. At present if this is "true" then no Web API commands will be accepted by this device.

Name stringoptional

A human-readable name for the device. Some devices have a name that the user can configure (e.g. "Loudest speaker") and some devices have a generic name associated with the manufacturer or device model.

Published booloptional

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

SupportsVolume booloptional

If this device can be used to set the volume.

Type stringoptional

Device type, such as "computer", "smartphone" or "speaker".

VolumePercent int64optional

The current volume in percent.

minimum0
maximum100

Get Available Devices

package main

import (
  "context"
  "fmt"

  "github.com/cjavdev/spotted-go"
  "github.com/cjavdev/spotted-go/option"
)

func main() {
  client := spotted.NewClient(
    option.WithAccessToken("My Access Token"),
  )
  response, err := client.Me.Player.GetDevices(context.TODO())
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Devices)
}
{
  "devices": [
    {
      "id": "id",
      "is_active": true,
      "is_private_session": true,
      "is_restricted": true,
      "name": "Kitchen speaker",
      "published": true,
      "supports_volume": true,
      "type": "computer",
      "volume_percent": 59
    }
  ]
}
Returns Examples
{
  "devices": [
    {
      "id": "id",
      "is_active": true,
      "is_private_session": true,
      "is_restricted": true,
      "name": "Kitchen speaker",
      "published": true,
      "supports_volume": true,
      "type": "computer",
      "volume_percent": 59
    }
  ]
}