---
title: "chat.play_queue.write · OpenVibe.Services"
canonical: "https://openvibe.services/docs/capabilities/chat.play_queue.write"
updated: null
---

# chat.play\_queue.write · OpenVibe.Services

HTML: [chat.play\_queue.write · OpenVibe.Services](https://openvibe.services/docs/capabilities/chat.play_queue.write)

# `chat.play_queue.write`

Generated at 2026-11-13 06:25:48 UTC from [`openvibe-contracts v0.419.0`](https://github.com/OpenVibers/OpenVibe.Contracts/tree/v0.419.0) and [`openvibe-sdk v0.161.0`](https://github.com/OpenVibers/OpenVibe.SDK/tree/v0.161.0).

Not grantable to apps (active, first-party).

Write a chat plays queue on OpenVibe.Chat (the Agent Streams plan, S6): record how a request ran. POST /internal/chat/rooms/agent:play-queue/:request\_id takes chat.play-request@1 and moves the request from queued to running, and records its outcome (done, failed, timeout, budget or stopped) with the one line the overlay and the voice say and the scratch site the run left. The caller is Codes, the task's service, acting for the stream's owner (a node token on\_behalf\_of). Chat never lets this capability ask for money, add a person to the queue or change a vote: the queue's people and votes belong to the room.

- Owner: chat (token audience `openvibe.chat`)
- Version: 1.0
- Status: active
- Visibility: first-party
- Resource constraints: owner
- Quota class: internal-write
- Permissions: chat:write
- Input: [chat.play-request@1](/docs/contracts/chat.play-request)
- Output: chat.play-request@1
- Events: —
- Implemented by: - `POST /internal/chat/rooms/agent:play-queue/:request_id`

[These routes in the API explorer](/docs/api/chat#cap-chat.play_queue.write)
