---
title: "Pair the TV I'm looking at"
method: POST
path: "/v1/pairings"
tags: ["Devices and streams"]
---

# Pair the TV I'm looking at

`POST /v1/pairings`

## Request

- Base URL: `https://infoslides.app`
- URL: `https://infoslides.app/v1/pairings`
- Auth: none declared

Pairs a screen. Send exactly one of `qr` (the scanned pairing URL or bare session id), `nickname`, or `deviceId` alone. `qr`/`nickname` with `slideshowId` creates a new device playing it; with `deviceId` instead, binds the TV to that existing device (rotating its stream token and evicting any previously paired TV). `deviceId` alone generates a fresh code to type on that device's TV. `qr`/`nickname` with neither returns `NeedsClarification` listing candidate slideshows and screens. Requires device-manager rights or above — a content-manager session cannot pair a screen.

## Query parameters

- `dryRun` boolean

## Headers

- `Idempotency-Key` string

## Request body

- V1CreatePairingRequest
  - `qr` string, nullable
  - `nickname` string, nullable
  - `deviceId` string, uuid, nullable
  - `slideshowId` string, uuid, nullable
  - `deviceName` string, nullable

## Response `200`

OK

---

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