Method: musicTracks.list
Stay organized with collections
Save and categorize content based on your preferences.
Retrieves a list of music tracks.
HTTP request
GET https://youtubepartner.googleapis.com/youtube/partner/v1/music/{parent=releases/*}/tracks
The URL uses gRPC Transcoding
syntax.
Path parameters
Parameters |
parent
|
string
Required. The parent release, which contains this list of tracks. Format: releases/{release}
|
Query parameters
Parameters |
pageSize
|
integer
The maximum number of tracks to return. The service may return fewer than this value. If unspecified, at most 30 tracks will be returned. The maximum value is 50; values above 50 will be coerced to 50.
|
pageToken
|
string
A page token, received from a previous musicTracks.list
call. Provide this to retrieve the subsequent page.
When paginating, all other parameters provided to musicTracks.list
must match the call that provided the page token.
|
onBehalfOfContentOwner
|
string
Identifies the content owner that the user is acting on behalf of. This parameter supports users whose accounts are associated with multiple content owners.
|
filter
|
object ( TrackFilter
)
Filtering based on various parameters in musicTracks.list.
|
Request body
The request body must be empty.
Response body
A response to list music tracks.
If successful, the response body contains data with the following structure:
Fields |
tracks[]
|
object ( MusicTrack
)
The requested music tracks.
|
nextPageToken
|
string
A token, which can be sent as pageToken
to retrieve the next page. If this field is omitted, there are no subsequent pages.
|
Authorization scopes
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/youtubepartner
For more information, see the OAuth 2.0 Overview
.
TrackFilter
Representation of an expression for filtering in musicTracks.list. We always take the conjunction (logical AND) of the filters, so a track must meet all criteria to be returned.
All rights reserved. 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 endpoint retrieves a list of music tracks associated with a specific release using a \u003ccode\u003eGET\u003c/code\u003e request to the provided URL, which follows gRPC Transcoding syntax.\u003c/p\u003e\n"],["\u003cp\u003eThe request requires a \u003ccode\u003eparent\u003c/code\u003e path parameter, which specifies the release containing the tracks, and supports several query parameters, such as \u003ccode\u003epageSize\u003c/code\u003e, \u003ccode\u003epageToken\u003c/code\u003e, \u003ccode\u003eonBehalfOfContentOwner\u003c/code\u003e, and \u003ccode\u003efilter\u003c/code\u003e for customizing the results.\u003c/p\u003e\n"],["\u003cp\u003eThe request body must be empty, and the successful response body will include an array of \u003ccode\u003etracks\u003c/code\u003e and an optional \u003ccode\u003enextPageToken\u003c/code\u003e for pagination.\u003c/p\u003e\n"],["\u003cp\u003eFiltering of the results can be done through the use of the \u003ccode\u003efilter\u003c/code\u003e query parameter, utilizing properties such as \u003ccode\u003eisrcs\u003c/code\u003e, \u003ccode\u003eupcs\u003c/code\u003e, \u003ccode\u003etitleMatches\u003c/code\u003e, \u003ccode\u003eartistNameMatches\u003c/code\u003e, \u003ccode\u003eexternalVideoIds\u003c/code\u003e, and whether there are open or closed change requests.\u003c/p\u003e\n"],["\u003cp\u003eAuthorization for this request requires the \u003ccode\u003ehttps://www.googleapis.com/auth/youtubepartner\u003c/code\u003e OAuth scope.\u003c/p\u003e\n"]]],["This resource details retrieving a list of music tracks via a `GET` request to a specific URL using gRPC Transcoding syntax. Key actions include setting the `parent` path parameter, specifying `pageSize`, `pageToken`, `onBehalfOfContentOwner`, and `filter` query parameters. The request body is empty. The response includes a JSON array of `tracks` and a `nextPageToken` for pagination. Filtering options, utilizing `TrackFilter`, enable searches by ISRCs, UPCs, title, artist, video IDs, and change request status. Requires the `youtubepartner` OAuth scope.\n"],null,["# Method: musicTracks.list\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n - [JSON representation](#body.ListMusicTracksResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [TrackFilter](#TrackFilter)\n - [JSON representation](#TrackFilter.SCHEMA_REPRESENTATION)\n- [Try it!](#try-it)\n\nRetrieves a list of music tracks.\n\n### HTTP request\n\n`GET https://youtubepartner.googleapis.com/youtube/partner/v1/music/{parent=releases/*}/tracks`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|----------|-------------------------------------------------------------------------------------------------------|\n| `parent` | `string` Required. The parent release, which contains this list of tracks. Format: releases/{release} |\n\n### Query parameters\n\n| Parameters ||\n|--------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `pageSize` | `integer` The maximum number of tracks to return. The service may return fewer than this value. If unspecified, at most 30 tracks will be returned. The maximum value is 50; values above 50 will be coerced to 50. |\n| `pageToken` | `string` A page token, received from a previous `musicTracks.list` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `musicTracks.list` must match the call that provided the page token. |\n| `onBehalfOfContentOwner` | `string` Identifies the content owner that the user is acting on behalf of. This parameter supports users whose accounts are associated with multiple content owners. |\n| `filter` | `object (`[TrackFilter](/youtube/partner/reference/rest/v1/musicTracks/list#TrackFilter)`)` Filtering based on various parameters in musicTracks.list. |\n\n### Request body\n\nThe request body must be empty.\n\n### Response body\n\nA response to list music tracks.\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|---------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"tracks\": [ { object (/youtube/partner/reference/rest/v1/musicTracks#MusicTrack) } ], \"nextPageToken\": string } ``` |\n\n| Fields ||\n|-----------------|----------------------------------------------------------------------------------------------------------------------------------------|\n| `tracks[]` | `object (`[MusicTrack](/youtube/partner/reference/rest/v1/musicTracks#MusicTrack)`)` The requested music tracks. |\n| `nextPageToken` | `string` A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted, there are no subsequent pages. |\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/youtubepartner`\n\nFor more information, see the [OAuth 2.0 Overview](/identity/protocols/OAuth2).\n\nTrackFilter\n-----------\n\nRepresentation of an expression for filtering in musicTracks.list. We always take the conjunction (logical AND) of the filters, so a track must meet all criteria to be returned.\n\n| JSON representation |\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"isrcs\": [ string ], \"upcs\": [ string ], \"titleMatches\": string, \"artistNameMatches\": string, \"externalVideoIds\": [ string ], \"hasOpenChangeRequest\": boolean, \"hasClosedChangeRequest\": boolean } ``` |\n\n| Fields ||\n|--------------------------|--------------------------------------------------------------------------------------|\n| `isrcs[]` | `string` A list of case insensitive ISRCs of the tracks to be retrieved. |\n| `upcs[]` | `string` A list of case insensitive UPCs of the tracks to be retrieved. |\n| `titleMatches` | `string` Tokenized search (case insensitive). |\n| `artistNameMatches` | `string` Tokenized search (case insensitive). |\n| `externalVideoIds[]` | `string` A list of case insensitive external videoIds of the tracks to be retrieved. |\n| `hasOpenChangeRequest` | `boolean` At least one ChangeRequest in open status. |\n| `hasClosedChangeRequest` | `boolean` At least one ChangeRequest in closed status. |"]]