tautulli 3.2.0
tautulli: ^3.2.0 copied to clipboard
A Dart client for the Tautulli API. Provides typed access to activity, history, libraries, users, and more for Plex media server monitoring.
Changelog #
3.2.0 #
Requires Tautulli v2.18.0 or newer. Verified end-to-end against a live v2.18.1 server; the test fixtures are full sanitized captures from that release.
Breaking #
- Requires Tautulli v2.18.0+; the workarounds for v2.17.2 and earlier are gone
- Removed parameters the server no longer accepts:
includeCloudfromgetServerList,agentIdfromsetNotifierConfigandsetNewsletterConfig,syncIdfromgetMetadata, and thedoNotify/doNotifyCreatededit parameters - Removed
getSyncedItemsanddeleteSyncedItem— Plex retired the Sync feature and Tautulli removed the commands - Removed the
doNotify/doNotifyCreatedmodel fields andRegisterDeviceResult.pmsIsCloud, all dropped from the API getSettingsreturns the raw sectioned JSON map (likegetDateFormats); theTautulliSettingsmodel is gone — usegetDateFormatsfor the format strings
Fixed #
getServerList(allServers: false)was silently ignored on every server version: Tautulli testsnot (all_servers == 'false'), so the usual1/0encoding always read as true. It is now sent as a literal stringeditUserandeditLibraryare partial updates with optional parameters, matching the servergetPlexLogaccepts bothget_plex_logresponse shapes — the bare list that shipped in v2.18.0, and the object nesting rows underdata.dataused before and after it
Added #
- Opt-in
X-Api-Keyheader auth:apiKeyLocation: ApiKeyLocation.headerkeeps the key out of URLs and access logs. The query parameter remains the default TautulliRedirectException(a subtype ofTautulliConnectionException) for redirect-limit and redirect-loop failures — typically a reverse proxy or access gateway answering an unauthenticated request with a login redirect. Previously indistinguishable from an offline socket errorTautulliRequestExceptionfor a request that cannot be built, most often a custom header whose name or value is not valid HTTP. Previously mislabeled as a connection failurepushTokenonregisterDevice, for the Tautulli Remote relay push transportaudioAtmosandstreamAudioAtmosonActivitySession
Behavior notes #
getMetadatathrowsTautulliServerExceptionfor an unknownrating_key, andgetPlexLogthrows when the log cannot be read — both now return error envelopes server-sidesetNotifierConfigandsetNewsletterConfigare partial updates. Never write back a config map read fromgetNotifierConfig/getNewsletterConfig: the server masks passwords as four spaces, and storing that mask replaces the real password
3.1.0 #
Every API command was verified end-to-end against a live Tautulli v2.17.2 server. This release repairs calls, corrects method signatures, and rebuilds the test suite on full captured server responses.
- Fixed commands that previously failed or silently did nothing, including
notify,deleteHistory,logoutUserSession,getPlexLog,getHomeStats,getStreamData,docsMd,deleteLibrary, image fallback URLs, and single-sessiongetActivity - Fixed
editUser/editLibrarycorrupting boolean settings; their fields are now required because the server overwrites every field on edit - Fixed models reading keys the server never sends (22 always-null fields); all
DateTimevalues are now UTC — call.toLocal()for display - Fixed downloads crashing the app when Tautulli serves a file that is actively being written
- Breaking: signatures corrected across services (phantom parameters removed, missing ones added —
notably
exportMetadata,registerDevice,notify,deleteHistory);Castis no longer exported; unexpected response shapes now throwTautulliBadResponseExceptioninstead of returning empty models - Added web and WASM support (the package no longer requires
dart:io) - Added
TautulliConnectionequality andcopyWith, per-call timeouts, a separatedownloadTimeout, chapter markers, typed notifier parameters, and many missing optional command parameters close()no longer closes an injectedhttp.Client
3.0.1 #
- Fix unresolved dartdoc reference in
Cast - Apply
dart formatto all source files - Expand
pubspec.yamldescription to meet pub.dev guidelines
3.0.0 #
- Ownership of this package was transferred to the Tautulli team and v3.0.0 is a complete rewrite
- Full coverage of Tautulli API as documented at: https://github.com/Tautulli/Tautulli/wiki/Tautulli-API-Reference