---
id: plex-api
sidebar_label: Introduction
sidebar_position: 0
hide_title: true
---

import ApiLogo from "@theme/ApiLogo";
import SchemaTabs from "@theme/SchemaTabs";
import TabItem from "@theme/TabItem";
import Export from "@theme/ApiDemoPanel/Export";

<span className={"theme-doc-version-badge badge badge--secondary"}>Version: 0.0.3</span>

<Export url={"https://raw.githubusercontent.com/LukeHagar/plex-api-spec/main/plex-api-spec-dereferenced.yaml"} proxy={undefined}></Export>

<h1 className={"openapi__heading"}>Plex-API</h1>



An Open API Spec for interacting with Plex.tv and Plex Servers

<div style={{"marginBottom":"2rem"}}><h2 id={"authentication"} style={{"marginBottom":"1rem"}}>Authentication</h2><SchemaTabs className={"openapi-tabs__security-schemes"}><TabItem label={"API Key: Token"} value={"Token"}>

Plex Authentication Token

<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Token</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: ClientIdentifier"} value={"ClientIdentifier"}>

Plex Authentication Token

<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Client-Identifier</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: DeviceName"} value={"DeviceName"}>

Primary name for the device eg. `Plex Web (Chrome)`

<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Device-Name</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: Device"} value={"Device"}>

The type of device your application is running on
Device name and or model number, eg `iPhone3,2`, `Motorola XOOM™`, `LG5200TV`


<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Device</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: PlatformVersion"} value={"PlatformVersion"}>

Operating system version
eg `4.3.1`, `10.6.7`, `3.2`


<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Platform-Version</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: Platform"} value={"Platform"}>

Platform name 
eg: `Web`, `iOS`, `MacOSX`, `Android`, `LG`


<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Platform</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: Product"} value={"Product"}>

Plex application name 
eg: `Laika`, `Plex Media Server`, `Media Link`


<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Product</td></tr></tbody></table></div></TabItem><TabItem label={"API Key: Version"} value={"Version"}>

Plex application version number

<div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-Plex-Version</td></tr></tbody></table></div></TabItem></SchemaTabs></div><div style={{"display":"flex","flexDirection":"column","marginBottom":"var(--ifm-paragraph-margin-bottom)"}}><h3 style={{"marginBottom":"0.25rem"}}>Contact</h3><span>Luke Hagar: <a href={"mailto:Lukeslakemail@gmail.com"}>Lukeslakemail@gmail.com</a></span><span>URL: <a href={"https://www.LukeHagar.com"}>https://www.LukeHagar.com</a></span></div><div style={{"marginBottom":"var(--ifm-paragraph-margin-bottom)"}}><h3 style={{"marginBottom":"0.25rem"}}>License</h3><a href={"https://opensource.org/licenses/MIT"}>MIT</a></div>