---
title: "Copy a playlist to another device"
method: POST
path: "/api/devices/{device_id}/playlist_copies"
tags: ["Playlists"]
---

# Copy a playlist to another device

`POST /api/devices/{device_id}/playlist_copies`

## Request

- Base URL: `https://trmnl.com`
- URL: `https://trmnl.com/api/devices/{device_id}/playlist_copies`
- Auth: HTTP bearer

Appends items in source order without removing existing target items. Preserves appearance, priority, and schedules. Plugin instances are shared; mashups are copied. Existing setup placeholders for the same plugin are skipped. Both devices must belong to your account. Repeating this request adds the configured items again. Refreshes are queued after copying.

## Path parameters

- `device_id` integer, required

## Request body

- object
  - `target_device_id` integer, required: Destination device id

## Response `200`

Playlist copied and refreshes queued

- object
  - `data` object, required
    - `success` boolean, required

## Other responses

- `400`: Destination device id is missing or is not a scalar
- `401`: Unauthorized
- `404`: Source or destination device not found in your account
- `422`: Source and destination are the same, or an item is invalid

---

[API](https://skmtc.dev/trmnl/apis/trmnl-api.md) · [All operations](https://skmtc.dev/trmnl/apis/trmnl-api/llms.txt) · [OpenAPI document](https://skmtc.dev/trmnl/apis/trmnl-api/revisions/66179e6d663b?raw)
