Files
plexpy/docs/sdks/plex/README.md

20 KiB
Raw Blame History

Plex

(plex)

Overview

API Calls that perform operations directly against https://Plex.tv

Available Operations

get_companions_data

Get Companions Data

Example Usage

from plex_api_client import PlexAPI


with PlexAPI(
    access_token="<YOUR_API_KEY_HERE>",
) as plex_api:

    res = plex_api.plex.get_companions_data()

    assert res.response_bodies is not None

    # Handle response
    print(res.response_bodies)

Parameters

Parameter Type Required Description
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.
server_url Optional[str] An optional server URL to use.

Response

operations.GetCompanionsDataResponse

Errors

Error Type Status Code Content Type
errors.GetCompanionsDataBadRequest 400 application/json
errors.GetCompanionsDataUnauthorized 401 application/json
errors.SDKError 4XX, 5XX */*

get_user_friends

Get friends of provided auth token.

Example Usage

from plex_api_client import PlexAPI


with PlexAPI(
    access_token="<YOUR_API_KEY_HERE>",
) as plex_api:

    res = plex_api.plex.get_user_friends()

    assert res.friends is not None

    # Handle response
    print(res.friends)

Parameters

Parameter Type Required Description
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.
server_url Optional[str] An optional server URL to use.

Response

operations.GetUserFriendsResponse

Errors

Error Type Status Code Content Type
errors.GetUserFriendsBadRequest 400 application/json
errors.GetUserFriendsUnauthorized 401 application/json
errors.SDKError 4XX, 5XX */*

get_geo_data

Returns the geolocation and locale data of the caller

Example Usage

from plex_api_client import PlexAPI


with PlexAPI() as plex_api:

    res = plex_api.plex.get_geo_data()

    assert res.geo_data is not None

    # Handle response
    print(res.geo_data)

Parameters

Parameter Type Required Description
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.
server_url Optional[str] An optional server URL to use.

Response

operations.GetGeoDataResponse

Errors

Error Type Status Code Content Type
errors.GetGeoDataBadRequest 400 application/json
errors.GetGeoDataUnauthorized 401 application/json
errors.SDKError 4XX, 5XX */*

get_home_data

Retrieves the home data for the authenticated user, including details like home ID, name, guest access information, and subscription status.

Example Usage

from plex_api_client import PlexAPI


with PlexAPI(
    access_token="<YOUR_API_KEY_HERE>",
) as plex_api:

    res = plex_api.plex.get_home_data()

    assert res.object is not None

    # Handle response
    print(res.object)

Parameters

Parameter Type Required Description
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.

Response

operations.GetHomeDataResponse

Errors

Error Type Status Code Content Type
errors.GetHomeDataBadRequest 400 application/json
errors.GetHomeDataUnauthorized 401 application/json
errors.SDKError 4XX, 5XX */*

get_server_resources

Get Plex server access tokens and server connections

Example Usage

from plex_api_client import PlexAPI


with PlexAPI(
    access_token="<YOUR_API_KEY_HERE>",
) as plex_api:

    res = plex_api.plex.get_server_resources(client_id="3381b62b-9ab7-4e37-827b-203e9809eb58")

    assert res.plex_devices is not None

    # Handle response
    print(res.plex_devices)

Parameters

Parameter Type Required Description Example
client_id str ✔️ An opaque identifier unique to the client (UUID, serial number, or other unique device ID) 3381b62b-9ab7-4e37-827b-203e9809eb58
include_https Optional[operations.IncludeHTTPS] Include Https entries in the results 1
include_relay Optional[operations.IncludeRelay] Include Relay addresses in the results
E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400
1
include_i_pv6 Optional[operations.IncludeIPv6] Include IPv6 entries in the results 1
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.
server_url Optional[str] An optional server URL to use. http://localhost:8080

Response

operations.GetServerResourcesResponse

Errors

Error Type Status Code Content Type
errors.GetServerResourcesBadRequest 400 application/json
errors.GetServerResourcesUnauthorized 401 application/json
errors.SDKError 4XX, 5XX */*

get_pin

Retrieve a Pin ID from Plex.tv to use for authentication flows

Example Usage

from plex_api_client import PlexAPI


with PlexAPI() as plex_api:

    res = plex_api.plex.get_pin(request={
        "client_id": "3381b62b-9ab7-4e37-827b-203e9809eb58",
        "client_name": "Plex for Roku",
        "device_nickname": "Roku 3",
        "client_version": "2.4.1",
        "platform": "Roku",
    })

    assert res.auth_pin_container is not None

    # Handle response
    print(res.auth_pin_container)

Parameters

Parameter Type Required Description
request operations.GetPinRequest ✔️ The request object to use for the request.
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.
server_url Optional[str] An optional server URL to use.

Response

operations.GetPinResponse

Errors

Error Type Status Code Content Type
errors.GetPinBadRequest 400 application/json
errors.SDKError 4XX, 5XX */*

get_token_by_pin_id

Retrieve an Access Token from Plex.tv after the Pin has been authenticated

Example Usage

from plex_api_client import PlexAPI


with PlexAPI() as plex_api:

    res = plex_api.plex.get_token_by_pin_id(request={
        "pin_id": 408895,
        "client_id": "3381b62b-9ab7-4e37-827b-203e9809eb58",
        "client_name": "Plex for Roku",
        "device_nickname": "Roku 3",
        "client_version": "2.4.1",
        "platform": "Roku",
    })

    assert res.auth_pin_container is not None

    # Handle response
    print(res.auth_pin_container)

Parameters

Parameter Type Required Description
request operations.GetTokenByPinIDRequest ✔️ The request object to use for the request.
retries Optional[utils.RetryConfig] Configuration to override the default retry behavior of the client.
server_url Optional[str] An optional server URL to use.

Response

operations.GetTokenByPinIDResponse

Errors

Error Type Status Code Content Type
errors.GetTokenByPinIDBadRequest 400 application/json
errors.GetTokenByPinIDResponseBody 404 application/json
errors.SDKError 4XX, 5XX */*