Skip to main content
POST
/
scrobble
/
stop
curl --request POST \ --url 'https://api.simkl.com/scrobble/stop?client_id=' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'User-Agent: <user-agent>' \ --data ' { "movie": { "ids": { "simkl": 752138 } } } '
{ "id": 10916890, "action": "pause", "progress": 30, "movie": { "title": "The Matrix", "year": 1999, "ids": { "simkl": 53992, "slug": "the-matrix", "imdb": "tt0133093", "letterslug": "the-matrix", "traktmslug": "the-matrix-1999", "tmdb": "603", "tvdbslug": "the-matrix", "tvdb": "169" } } }

Documentation Index

Fetch the complete documentation index at: https://api.simkl.org/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

client_id
string
query
default:YOUR_CLIENT_ID
required

Preferred form: your client_id as a URL query parameter on every request. Self-describing in logs and curl commands. See Headers and required parameters.

Authorization
string
header
default:YOUR_ACCESS_TOKEN
required

OAuth 2.0 or PIN-flow access_token. Required for endpoints that read or modify the user's library, scrobble session, ratings, settings, or playbacks. See Authentication.

Headers

User-Agent
string
required

Descriptive identifier for your app, ideally name/version. Examples: PlexMediaServer/1.43.1.10540, kodi-simkl/0.9.2, MyApp/2.4.1 (https://myapp.com).

Query Parameters

client_id
string
required

Your client_id from your Simkl developer settings. Required on every request.

app-name
string
required

Short, lowercase identifier for your app (e.g. plex-scrobbler, kodi-bridge). Helps Simkl identify which apps are using the API.

app-version
string
required

Your app's current version (e.g. 1.0, 2.4.1). Helps Simkl debug issues you report.

Body

application/json

Request body for the four scrobble endpoints. Send exactly one of movie, show+episode, or anime+episode — all keys are singular objects (one item per request). For batch sync writes the keys are plural arrays: see /sync/history etc. progress is required for /scrobble/start, /scrobble/pause, and /scrobble/stop; on /scrobble/checkin it is optional and ignored server-side.

Anime under show? Yes — if you don't know whether a title is anime (e.g. you only have TMDB/TVDB data), send it under show and Simkl resolves it to the correct catalog automatically. The anime key is only needed when you want to pass anidb / mal / anilist IDs that don't exist at the TV-show level.

movie
object
required

Movie reference. Use ids (any one external ID) and optionally title / year. Movies have no episode block.

progress
number<float>

Playback percentage 0-100. Up to 2 decimals. Required for /scrobble/start, /scrobble/pause, /scrobble/stop. Optional (and ignored) for /scrobble/checkin.

Required range: 0 <= x <= 100
show
object

TV show reference (must be paired with episode).

anime
object

Anime reference. Pair with episode for series; an anime alone (no episode) is treated as an anime movie / OVA.

episode
By season + number · object

Episode identifier. Use season + number, OR ids with a tvdb / anidb episode ID. If both are sent, episode.ids takes precedence (matches Plex-style integrations that have an episode ID but no season/number mapping).

Response

Created

Response for /scrobble/start, /scrobble/pause, and /scrobble/stop.

action
enum<string>

start for /start, pause for /pause and for /stop with progress<80, scrobble for /stop with progress≥80 (item marked watched).

Available options:
start,
pause,
scrobble
progress
number

Echo of the request progress, normalized.

sid
string

Internal session ID.

movie
object

Standard movie object. See the Standard Media Objects guide.

show
object

Standard show object. May include nested seasons/episodes for partial sync.

anime
object

Standard anime object. Like Show, but may include anime_type. Episode numbering follows AniDB.

episode
object

Episode reference. Use season + number, or ids.

tvdb_season
integer

For anime: original TVDB season number when AniDB mapping differs.

tvdb_number
integer

For anime: original TVDB episode number when AniDB mapping differs.