FIREANIME API
Browse API97 operations
POST

SyncEpisodeProgressBatch

SyncEpisodeProgressBatch merges local device progress into the signed-in account.

/api.v1.watch.WatchService/SyncEpisodeProgressBatch Bearer required
01

Request

SyncEpisodeProgressBatchRequest

SyncEpisodeProgressBatchRequestapi.v1.watch.SyncEpisodeProgressBatchRequest1 fields

SyncEpisodeProgressBatchRequest contains local progress rows to merge into the account.

itemsarray

Local progress items.

Request JSON
{
  "items": [
    {
      "slug": "frieren",
      "season": "1",
      "episode": "1",
      "positionPercent": 1.5,
      "positionSeconds": 1,
      "positionMax": 1,
      "animeGroupId": 1,
      "clientUpdatedAt": "1"
    }
  ]
}
02

Response

SyncEpisodeProgressBatchResponse

SyncEpisodeProgressBatchResponseapi.v1.watch.SyncEpisodeProgressBatchResponse3 fields

SyncEpisodeProgressBatchResponse summarizes a local progress merge.

imported
int32

Number of rows imported or updated.

skipped
int32

Number of rows skipped because server progress was better or input was stale.

errorsarray
string[]

Per-row import errors.

Example response
{
  "imported": 1,
  "skipped": 1,
  "errors": [
    "string value"
  ]
}
03

Referenced models

1 nested message types

UpdateEpisodeLastSeenRequestapi.v1.watch.UpdateEpisodeLastSeenRequest8 fields

UpdateEpisodeLastSeenRequest contains new playback progress data.

slug
string

URL-friendly identifier for the anime.

season
string

Season identifier.

episode
string

Episode identifier.

positionPercent
float

Completion percentage (0.0 to 1.0).

positionSeconds
int32

Current playback position in seconds.

positionMax
int32

Total duration of the episode in seconds.

animeGroupIdoptional
uint32

Optional anime group context used when watching through a group route.

clientUpdatedAt
int64

Client-side Unix timestamp (seconds) used for local progress merge conflict resolution.

04

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.