Skip to content
墨 AniLink

Mutations ​

Every aniLink.anilist.mutation.* method requires authentication. Without a token, a mutation throws AniLinkAuthError. The default retry policy never retries mutations unless you enable retries.

Lists ​

OperationPurpose
saveMediaListEntryCreate or update a list entry
updateMediaListEntriesUpdate many entries at once
deleteMediaListEntryDelete an entry
deleteCustomListDelete a custom list

Users ​

OperationPurpose
updateUserUpdate viewer preferences and profile

Activity ​

OperationPurpose
saveTextActivityCreate or update a text activity
saveMessageActivityCreate or update a message activity
saveListActivityUpdate a list activity (mod only)
deleteActivityDelete an activity
toggleActivityPinPin or unpin an activity
toggleActivitySubscriptionSubscribe or unsubscribe
saveActivityReplyCreate or update a reply
deleteActivityReplyDelete a reply
toggleLikeToggle a like
toggleLikeV2Toggle a like (v2 likeable types)

Community ​

OperationPurpose
saveThreadCreate or update a thread
deleteThreadDelete a thread
toggleThreadSubscriptionSubscribe or unsubscribe
saveThreadCommentCreate or update a comment
deleteThreadCommentDelete a comment

Reviews & recommendations ​

OperationPurpose
saveReviewCreate or update a review
deleteReviewDelete a review
rateReviewRate a review
saveRecommendationSave a recommendation rating

Social & favourites ​

OperationPurpose
toggleFollowFollow or unfollow a user
toggleFavouriteToggle a favourite
updateFavouriteOrderReorder favourites

AniChart ​

OperationPurpose
updateAniChartSettingsUpdate AniChart settings
updateAniChartHighlightsUpdate AniChart highlights

Example ​

typescript
const aniLink = new AniLink("anilist-token");

const entry = await aniLink.anilist.mutation.saveMediaListEntry({
    mediaId: 143271,
    status: "CURRENT",
    score: 8.5,
    progress: 3,
});

Errors ​

Mutations throw AniLinkAuthError when you omit a token. They also throw AniLinkGraphQLError for validation failures inside an HTTP 200 response, AniLinkApiError for HTTP-level failures, and AniLinkNetworkError for transport errors. Error handling covers every error type.

Next steps ​

AniLink, typed AniList & MyAnimeList client for TypeScript.