---
title: "List trending commercial music"
method: GET
path: "/v1/accounts/{accountId}/tiktok/commercial-music"
tags: ["Accounts"]
---

# List trending commercial music

`GET /v1/accounts/{accountId}/tiktok/commercial-music`

## Request

- Base URL: `https://zernio.com/api`
- URL: `https://zernio.com/api/v1/accounts/{accountId}/tiktok/commercial-music`
- Auth: HTTP bearer

Returns the 100 currently trending tracks of TikTok's Commercial Music Library for a TikTok account connected through the TikTok for Business app.

The list is not paged; countryCode selects the country chart.

### Using a track in a post

Send a track's clip.id as tiktokSettings.musicSoundInfo.musicSoundId when creating a post. Fall back to id only when the track has no clip.

Both publish, but with the full-track id TikTok has shown viewers "This song is not available in your country" on the sound page (observed from Germany, 2026-10-06). The clip id gave a working sound page for the same track.

## Path parameters

- `accountId` string, required

## Query parameters

- `countryCode` string

## Response `200`

The trending tracks, rank 1 first

- object
  - `tracks` object[]
    - `id` string: The full track's song clip id. Accepted as musicSoundId, but prefer clip.id: posts published with this id have shown viewers a sound page saying the song is not available in their country (observed from Germany). TikTok rejects the commercial music id itself at publish time.
    - `commercialMusicId` string: TikTok's commercial_music_id, for reference only
    - `name` string
    - `artist` string
    - `durationSec` integer
    - `genres` string[]
    - `previewUrl` string: Preview audio of the full track
    - `thumbnailUrl` string
    - `rank` integer: Position in the trending chart, 1 first
    - `clip` object: The trending excerpt of the track, when TikTok provides one. Send clip.id as musicSoundId: it publishes and its sound page opens for viewers, unlike the full-track id (observed from Germany, 2026-10-06).
      - `id` string
      - `durationSec` integer
      - `previewUrl` string

## Other responses

- `400`: Invalid request
- `404`: Account not found

## Changes

- **2026-11-10** `d568bb00ed73`: 5 info
  - added the optional property `docsUrl` to the response with the `400` status
  - added the optional property `provider` to the response with the `400` status
  - added the optional property `providerError` to the response with the `400` status
  - added the optional property `requestId` to the response with the `400` status
  - …1 more
- **2026-10-06** `f8c8f34fb41a`: 1 warning
  - added the new `account` enum value to the `details/budgetScope` response property for the response status `400`
- **2026-10-02** `d556591af3f6`: 1 info
  - added the optional property `docUrl` to the response with the `400` status
- **2026-09-30** `16a7b9d5373e`: 1 info
  - removed the `platform` enum value from the `details/budgetScope` response property for the response status `400`
- **2026-09-25** `2c04683ce694`: 4 info
  - added the optional property `details/adAccountId` to the response with the `400` status
  - added the optional property `details/createdObjects` to the response with the `400` status
  - added the optional property `details/stage` to the response with the `400` status
  - added the optional property `details/unconfirmedWrite` to the response with the `400` status

[Operation history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/accounts/:accountId/tiktok/commercial-music/get.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) - [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) - [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/5119302bbd34?raw)
