package main
import(
"context"
"github.com/LukeHagar/plexgo"
"log"
)
func main() {
ctx := context.Background()
s := plexgo.New(
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
)
res, err := s.Devices.DiscoverDevices(ctx)
if err != nil {
log.Fatal(err)
}
if res.MediaContainerWithDevice != nil {
// handle response
}
}{
"MediaContainer": {
"identifier": "<string>",
"offset": 123,
"size": 123,
"totalSize": 123,
"Device": [
{
"ChannelMapping": [
{
"channelKey": "<string>",
"deviceIdentifier": "<string>",
"enabled": "<string>",
"lineupIdentifier": "<string>"
}
],
"key": "<string>",
"lastSeenAt": 123,
"make": "<string>",
"model": "<string>",
"modelNumber": "<string>",
"protocol": "<string>",
"sources": "<string>",
"state": "<string>",
"status": "<string>",
"tuners": "<string>",
"uri": "<string>",
"uuid": "<string>"
}
]
}
}Tell grabbers to discover devices
package main
import(
"context"
"github.com/LukeHagar/plexgo"
"log"
)
func main() {
ctx := context.Background()
s := plexgo.New(
plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
)
res, err := s.Devices.DiscoverDevices(ctx)
if err != nil {
log.Fatal(err)
}
if res.MediaContainerWithDevice != nil {
// handle response
}
}{
"MediaContainer": {
"identifier": "<string>",
"offset": 123,
"size": 123,
"totalSize": 123,
"Device": [
{
"ChannelMapping": [
{
"channelKey": "<string>",
"deviceIdentifier": "<string>",
"enabled": "<string>",
"lineupIdentifier": "<string>"
}
],
"key": "<string>",
"lastSeenAt": 123,
"make": "<string>",
"model": "<string>",
"modelNumber": "<string>",
"protocol": "<string>",
"sources": "<string>",
"state": "<string>",
"status": "<string>",
"tuners": "<string>",
"uri": "<string>",
"uuid": "<string>"
}
]
}
}The token which identifies the user accessing the PMS. This can be either:
JWT tokens provide better security with:
OK
MediaContainer is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable.
Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination)
The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the parentTitle attribute may appear on the MediaContainer rather than being repeated on each track.
Show child attributes
Was this page helpful?