> For the complete documentation index, see [llms.txt](https://wiki.crosswatch.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.crosswatch.app/crosswatch/settings/connections/others/tracearr.md).

# Tracearr

Import watch history from Tracearr.

{% tabs %}
{% tab title="End users" %}
{% hint style="warning" %}
Tracearr is **read-only** in CrossWatch. It imports existing watch history and never writes back to Tracearr.
{% endhint %}

<figure><img src="https://565675962-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3rh5THg1PdhVsBt3GALo%2Fuploads%2FtTEYvXgw3banaP0xhPJQ%2Fimage.png?alt=media&amp;token=bba1aa0e-a3de-4941-aed7-eb1fd3bc49e2" alt=""><figcaption></figcaption></figure>

Tracearr can monitor Plex, Jellyfin, and Emby. One connection can import history from all three.

{% hint style="info" %}
Tracearr **2.0 or later** is required. Earlier versions do not provide the public API v2 used by CrossWatch.
{% endhint %}

### Connect Tracearr

1. Enter your **Server URL**, such as `http://192.168.1.10:3000`.
2. Enter your **API Key**.
   * In Tracearr, open **Settings → API**.
   * Public API keys start with `trr_pub_`.
3. Click **Connect Tracearr** and wait for confirmation.
4. Optionally choose a **User** to import one user's history.
   * Leave **All users** selected to import everyone.
5. Click **Save changes**.

CrossWatch loads the user list after a successful connection. You do not need user IDs.

### How it works

* **History only.** Tracearr does not provide watchlists, ratings, progress, or playlists.
* **Source only.** Use Tracearr as a source in a sync pair. It cannot be a target.
* **Watched plays only.** CrossWatch imports plays Tracearr marks as watched. Tracearr uses its own thresholds under **Settings → API → Public API**. The default is 85% for movies and episodes.
* **Rewatches.** Each play stays separate. Compatible targets can receive rewatches.
* **Episodes.** CrossWatch matches the show's TMDb, IMDb, or TVDB ID, plus season and episode numbers.

### Troubleshooting

* **Could not connect:** Ensure the CrossWatch container can reach the **Server URL**.
* **Invalid API key:** Create or copy the key again under **Settings → API**.
* **Tracearr 2.0 or later is required:** Update Tracearr. Older releases only support API v1.
* **Empty or small import:** Check the selected **User**, or choose **All users**.
* **Some plays are missing:** Tracearr only returns IDs for titles linked to your library. CrossWatch skips older plays without IDs. The sync log reports skipped plays.
* **Slow first sync:** Tracearr allows about 240 requests per minute. Large, multi-user histories can take several minutes.
  {% endtab %}

{% tab title="Power users" %}

### Config keys

* `tracearr.server_url`
* `tracearr.api_key`
* `tracearr.verify_ssl`
* `tracearr.history.user_id` — optional Tracearr user ID
* `tracearr.history.server_id` — optional Tracearr server ID
* `tracearr.history.watched_only` — defaults to `true`
* `tracearr.history.min_percent_movie` — defaults to `85` when a play lacks a watched flag
* `tracearr.history.min_percent_episode` — defaults to `85` when a play lacks a watched flag
  {% endtab %}
  {% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://wiki.crosswatch.app/crosswatch/settings/connections/others/tracearr.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
