Plex Rate API

The rate feature within a media provider

Operations 1

PUT /:/rate Rate an item #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/plex-rate-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

plex-rate-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Plex Media Server Rate API
  version: '1.2.2

    '
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  description: '# API Info

    ## Content Types

    The API supports responses in both XML and JSON, and clients can request one or the other using the standard `Accept` HTTP header.'
servers:
- url: https://{IP-description}.{identifier}.plex.direct:{port}
  variables:
    IP-description:
      default: 1-2-3-4
      description: A `-` separated string of the IPv4 or IPv6 address components
    identifier:
      default: 0123456789abcdef0123456789abcdef
      description: The unique identifier of this particular PMS
    port:
      default: '32400'
security:
- user_token:
  - shared user
  - admin
tags:
- name: Rate
  description: The rate feature within a media provider
paths:
  /:/rate:
    put:
      tags:
      - Rate
      operationId: putRate
      summary: Rate an item
      description: 'Set the rating on an item.

        This API does respond to the GET verb but applications should use PUT'
      parameters:
      - in: query
        name: identifier
        required: true
        schema:
          type: string
        description: The identifier of the media provider containing the media to rate.  Typically `com.plexapp.plugins.library`
      - in: query
        name: key
        required: true
        schema:
          type: string
        description: The key of the item to rate.  This is the `ratingKey` found in metadata items
      - in: query
        name: rating
        required: true
        schema:
          type: number
          minimum: 0
          maximum: 10
        description: The rating to give the item.
      - in: query
        name: ratedAt
        required: false
        schema:
          type: integer
        description: The time when the rating occurred.  If not present, interpreted as now.
      responses:
        '200':
          $ref: '#/components/responses/200'
        '400':
          description: Bad Request.  Can occur when parameters are of the wrong type, missing, or if the `ratedAt` is in the future
          content:
            text/html:
              examples:
                badRequest:
                  summary: A parameter has a bad value or required parameter is missing
                  value: <html><head><title>Bad Request</title></head><body><h1>400 Bad Request</h1></body></html>
        '404':
          description: Indicates that no library with the provide identifier can be found or no item can be found with the rating key
          content:
            text/html:
              examples:
                notFound:
                  summary: Not Found
                  value: <html><head><title>Not Found</title></head><body><h1>404 Not Found</h1></body></html>
components:
  responses:
    '200':
      description: OK
      content:
        text/html:
          examples:
            ok:
              summary: OK
              value: ''
  securitySchemes:
    user_token:
      type: apiKey
      in: header
      name: X-Plex-Token
      description: The token which identifies the user accessing the PMS.  This is typically provided to the client by plex.tv. This can be either a traditional access token or a JWT token obtained through the JWT authentication flow.
x-tagGroups:
- name: General
  tags:
  - General
  - Library
  - Library Playlists
  - Library Collections
  - Status
  - Activities
  - Updater
  - Butler
  - Events
  - Log
  - Preferences
  - Download Queue
  - UltraBlur
  - Transcoder
- name: Media Provider
  tags:
  - Provider
  - Metadata Agents
  - Content
  - Hubs
  - Search
  - Rate
  - Playlist
  - Play Queue
  - Timeline
- name: DVR
  tags:
  - DVRs
  - Devices
  - EPG
  - Subscriptions
  - Live TV