For the complete documentation index, see llms.txt. This page is also available as Markdown.

AniList

Sync anime watchlists and ratings with AniList.

AniList sync is built for anime watchlists and ratings. It syncs AniList’s Planning list, supports AniList ratings, and tries to keep IDs usable elsewhere.

What it supports

  • Features: Watchlist and Ratings

  • List used: AniList “Planning” (ANIME only, no manga)

  • Watchlist writes: add and remove

  • Ratings writes: add / update and remove (clear)

  • Sync model: present-state snapshot for watchlists

Prerequisite: connect AniList

Set up AniList in Settings → Authentication first. Use this guide: AniList (Authentication provider).

How matching works (bridging)

Most providers prefer IMDb/TMDb IDs. AniList prefers AniList/MAL IDs.

CrossWatch tries these steps when it needs an AniList ID:

  1. Use an existing anilist ID.

  2. Else use Anime ID Mapping to bridge supported IDs.

  3. Else use a mal ID and resolve it to AniList.

  4. Else do a title search and require a strong match.

Best results come from Anime ID Mapping.

Enable it in Settings → Connections → Metadata / ID Mapping.

Guide: Anime ID Mapping.

For pair-level Watchlist and Ratings controls, see AniList pair options.

Limitations you should expect

  • TMDb anime coverage is incomplete.

  • Some titles will map wrong or not at all.

  • Unmappable items can cause duplicates across providers.

Snapshot model (why it behaves “all-or-nothing”)

AniList watchlist is treated as a full snapshot:

  • No watermarks.

  • No date_from.

  • Each run re-reads the full Planning list.

Shadow state (stability across runs)

CrossWatch keeps a local mapping file to avoid re-guessing every run:

/config/.cw_state/anilist_watchlist_shadow.json

It is used to:

  • reuse stable mappings

  • avoid retrying known no-match titles

  • keep multi-provider sync paths stable

What gets stored in the shadow file
  • AniList IDs, optional MAL IDs

  • AniList list entry IDs

  • source IDs from the originating provider

  • ignored markers and ignore reasons (for “not anime / no match”)

Rate limits and token lifecycle

  • Run daily for normal usage.

  • Avoid rapid re-runs while debugging.

  • AniList tokens are valid for 1 year.

  • AniList has no refresh token flow in CrossWatch.

  • Reconnect yearly in Authentication to get a new token.

Best practices

  • Enable Anime ID Mapping for AniList pairs.

  • Use separate pairs for anime vs movies/shows.

  • Whitelist libraries to keep non-anime out of the pair.

  • Start one-way. Validate matches. Then go bidirectional.

Last updated

Was this helpful?