LiveChatMessages: transition
Stay organized with collections
Save and categorize content based on your preferences.
Transitions the status of a YouTube live chat message and initiates any processes associated with the new status. For example, when you transition a live poll's status to closed
, YouTube ends that message's poll. Before calling this method, you should confirm that the value of the status
property for the live poll message is active
.
Request
HTTP request
POST https://www.googleapis.com/youtube/v3/liveChat/messages/transition
Parameters
The following table lists the parameters that this query supports. All of the parameters listed are query parameters.
Parameters |
Required parameters |
id |
string
The id parameter specifies the unique ID of the message that is transitioning to another status. |
status |
enum
The status parameter identifies the state to which the message is changing. To transition a message to the closed state, the status must be active for the poll that the message is bound to.
You can only transition to closed , meaning that the poll is closed.
|
Optional parameters |
part |
string
The part parameter specifies the liveChatMessage resource parts that the API response will include. Supported values are id , snippet , and authorDetails .
Set the parameter value to snippet to get the final poll result in the response body.
|
Request body
Do not provide a request body when calling this method.
Errors
The following table identifies error messages that the API could return in response to a call to this method. Please see the error message documentation for more detail.
Error type |
Error detail |
Description |
forbidden (403) |
forbidden |
You don't have the permissions required to transition the status of the specified message. |
required (400) |
idRequired |
The required id parameter must identify the message whose status you want to transition. |
required (400) |
statusRequired |
The API request must specify a value for the status parameter. |
notFound (404) |
liveChatMessagesNotFound |
The message specified by the id parameter does not exist. |
forbidden (403) |
modificationNotAllowed |
The status of the specified liveChatMessage resource cannot be transitioned. The id parameter might identify a message whose status cannot be transitioned. |
Try it!
Use the APIs Explorer to call this API and see the API request and response.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-20 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-20 UTC."],[[["\u003cp\u003eThis API endpoint transitions the status of a YouTube live chat message, such as closing an active poll.\u003c/p\u003e\n"],["\u003cp\u003eThe request requires authorization and must include the message's unique \u003ccode\u003eid\u003c/code\u003e and the new \u003ccode\u003estatus\u003c/code\u003e (\u003ccode\u003eclosed\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003epart\u003c/code\u003e parameter, which is optional, specifies which parts of the \u003ccode\u003eliveChatMessage\u003c/code\u003e resource to include in the API response (e.g. \u003ccode\u003esnippet\u003c/code\u003e, \u003ccode\u003eid\u003c/code\u003e, \u003ccode\u003eauthorDetails\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eSuccessful calls to this API will return a \u003ccode\u003eliveChatMessages\u003c/code\u003e resource in the response body, detailing the message's new status.\u003c/p\u003e\n"],["\u003cp\u003eCommon errors include \u003ccode\u003eforbidden\u003c/code\u003e for permission issues, \u003ccode\u003erequired\u003c/code\u003e for missing parameters, \u003ccode\u003enotFound\u003c/code\u003e if the message ID doesn't exist, and \u003ccode\u003emodificationNotAllowed\u003c/code\u003e if the specified message's status can't be changed.\u003c/p\u003e\n"]]],["This API endpoint, `liveChatMessages/transition`, changes a YouTube live chat message's status and triggers related actions. It requires the message's `id` and the target `status`, which can only be `closed`. The `status` of the poll must be `active` to proceed with the transition. The request is a `POST` method without a request body. Authorization scopes `youtube` or `youtube.force-ssl` are needed. Upon success, a `liveChatMessages` resource is returned, and errors include `forbidden`, `required`, and `notFound`.\n"],null,["Transitions the status of a YouTube live chat message and initiates any processes associated with the new status. For example, when you transition a live poll's status to `closed`, YouTube ends that message's poll. Before calling this method, you should confirm that the value of the [status](/youtube/v3/live/docs/liveChatMessages#snippet.pollDetails.metadata.status) property for the live poll message is `active`.\n\nRequest\n\nHTTP request \n\n```\nPOST https://www.googleapis.com/youtube/v3/liveChatMessages/transition\n```\n\nAuthorization\n\nThis request requires authorization with at least one of the following scopes ([read more about authentication and authorization](/youtube/v3/live/authentication)).\n\n| Scope |\n|-----------------------------------------------------|\n| `https://www.googleapis.com/auth/youtube` |\n| `https://www.googleapis.com/auth/youtube.force-ssl` |\n\nParameters\n\nThe following table lists the parameters that this query supports. All of the parameters listed are query parameters.\n\n| Parameters ||\n|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|\n| **Required parameters** |||\n| `id` | `string` The **id** parameter specifies the unique ID of the message that is transitioning to another status. |\n| `status` | `enum` The **status** parameter identifies the state to which the message is changing. To transition a message to the `closed` state, the [status](/youtube/v3/live/docs/liveChatMessages#snippet.pollDetails.metadata.status) must be `active` for the poll that the message is bound to. \u003cbr /\u003e You can only transition to **closed**, meaning that the poll is closed. |\n| **Optional parameters** |||\n| `part` | `string` The **part** parameter specifies the `liveChatMessage` resource parts that the API response will include. Supported values are `id`, `snippet`, and `authorDetails`. \u003cbr /\u003e Set the parameter value to `snippet` to get the final poll result in the response body. |\n\nRequest body\n\nDo not provide a request body when calling this method.\n\nResponse\n\nIf successful, this method returns a [liveChatMessages resource](/youtube/v3/live/docs/liveChatMessages#resource) in the response body.\n\nErrors\n\nThe following table identifies error messages that the API could return in response to a call to this method. Please see the [error message](/youtube/v3/live/docs/errors) documentation for more detail.\n\n| Error type | Error detail | Description |\n|-------------------|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `forbidden (403)` | `forbidden` | You don't have the permissions required to transition the status of the specified message. |\n| `required (400)` | `idRequired` | The required `id` parameter must identify the message whose status you want to transition. |\n| `required (400)` | `statusRequired` | The API request must specify a value for the `status` parameter. |\n| `notFound (404)` | `liveChatMessagesNotFound` | The message specified by the `id` parameter does not exist. |\n| `forbidden (403)` | `modificationNotAllowed` | The status of the specified `liveChatMessage` resource cannot be transitioned. The `id` parameter might identify a message whose status cannot be transitioned. |\n\nTry it!\n\nUse the APIs Explorer to call this API and see the API request and response."]]