Skip to main content
POST
/
livetv
/
dvrs
PlexGO
package main

import(
	"context"
	"github.com/LukeHagar/plexgo/models/components"
	"github.com/LukeHagar/plexgo"
	"github.com/LukeHagar/plexgo/models/operations"
	"log"
)

func main() {
    ctx := context.Background()

    s := plexgo.New(
        plexgo.WithAccepts(components.AcceptsApplicationXML),
        plexgo.WithClientIdentifier("abc123"),
        plexgo.WithProduct("Plex for Roku"),
        plexgo.WithVersion("2.4.1"),
        plexgo.WithPlatform("Roku"),
        plexgo.WithPlatformVersion("4.3 build 1057"),
        plexgo.WithDevice("Roku 3"),
        plexgo.WithModel("4200X"),
        plexgo.WithDeviceVendor("Roku"),
        plexgo.WithDeviceName("Living Room TV"),
        plexgo.WithMarketplace("googlePlay"),
        plexgo.WithSecurity("<YOUR_API_KEY_HERE>"),
    )

    res, err := s.DVRs.CreateDVR(ctx, operations.CreateDVRRequest{
        Lineup: plexgo.Pointer("lineup://tv.plex.providers.epg.onconnect/USA-HI51418-DEFAULT"),
        DeviceQueryParameter: []string{
            "d",
            "e",
            "v",
            "i",
            "c",
            "e",
            "[",
            "]",
            "=",
            "d",
            "e",
            "v",
            "i",
            "c",
            "e",
            ":",
            "/",
            "/",
            "t",
            "v",
            ".",
            "p",
            "l",
            "e",
            "x",
            ".",
            "g",
            "r",
            "a",
            "b",
            "b",
            "e",
            "r",
            "s",
            ".",
            "h",
            "d",
            "h",
            "o",
            "m",
            "e",
            "r",
            "u",
            "n",
            "/",
            "1",
            "0",
            "5",
            "3",
            "C",
            "0",
            "C",
            "A",
        },
        Language: plexgo.Pointer("eng"),
    })
    if err != nil {
        log.Fatal(err)
    }
    if res.DvrRequestHandlerSlashGetResponses200 != nil {
        // handle response
    }
}
{
  "MediaContainer": {
    "MediaContainer": {
      "identifier": "<string>",
      "offset": 123,
      "size": 123,
      "totalSize": 123,
      "status": 123
    },
    "DVR": [
      {
        "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>"
          }
        ],
        "key": "<string>",
        "language": "<string>",
        "lineup": "<string>",
        "uuid": "<string>"
      }
    ]
  }
}

Authorizations

X-Plex-Token
string
header
required

Headers

accepts
enum<string>
default:application/xml
Available options:
application/json,
application/xml
X-Plex-Client-Identifier
string
required
Example:
X-Plex-Product
string
Example:
X-Plex-Version
string
Example:
X-Plex-Platform
string
Example:
X-Plex-Platform-Version
string
Example:
X-Plex-Device
string
Example:
X-Plex-Model
string
Example:
X-Plex-Device-Vendor
string
Example:
X-Plex-Device-Name
string
Example:
X-Plex-Marketplace
string
Example:

Query Parameters

lineup
string
device
string[]
language
string

Response

200 - application/json
MediaContainer
object