MarkEpisodeWatched
MarkEpisodeWatched marks one episode as complete and returns the next target when known.
/api.v1.watch.WatchService/MarkEpisodeWatched Bearer requiredRequest
MarkEpisodeWatchedRequest
MarkEpisodeWatchedRequestapi.v1.watch.MarkEpisodeWatchedRequest5 fields
MarkEpisodeWatchedRequest identifies an episode to mark complete.
slugstringURL-friendly identifier for the anime.
seasonstringSeason identifier.
episodestringEpisode identifier.
animeGroupIdoptionaluint32Optional anime group context used when watching through a group route.
positionMaxint32Total duration of the episode in seconds, when known.
{
"slug": "frieren",
"season": "1",
"episode": "1",
"animeGroupId": 1,
"positionMax": 1
}Response
MarkEpisodeWatchedResponse
MarkEpisodeWatchedResponseapi.v1.watch.MarkEpisodeWatchedResponse2 fields
MarkEpisodeWatchedResponse confirms completion and provides the next target.
messagestringA descriptive message indicating the result.
{
"message": "success",
"nextEpisode": {
"slug": "frieren",
"season": "1",
"episode": "1",
"animeGroupId": 1,
"groupTitle": "Frieren: Beyond Journey’s End"
}
}Referenced models
1 nested message types
EpisodeTargetapi.v1.watch.EpisodeTarget5 fields
EpisodeTarget identifies an episode route that can be opened by clients.
slugstringURL-friendly identifier for the anime.
seasonstringSeason identifier.
episodestringEpisode identifier.
animeGroupIdoptionaluint32Optional anime group context for group watch routes.
groupTitlestringHuman-readable anime group title for display.
Error handling
Common failure codes
unauthenticatedThe Bearer token is missing or invalid.
invalid_argumentThe request payload failed validation.
internalThe service could not complete the operation.