---
title: "Import a user playlist"
method: POST
path: "/dcd/playlist/user/import"
tags: ["dcd-playlist"]
---

# Import a user playlist

`POST /dcd/playlist/user/import`

Imports a user playlist. This endpoint replaces the name with a generated unique user playlist name if the one passed already exists.

## Request body

- object
  - `image` string — Base 64 encode image data. This represents the album art. Image will be stored remotely, to be referrenced by HTTPS path.
  - `name` string, required — Playlist name.
  - `songs` PlaylistSong[], required — Array of playlist songs. For each song, do not need to provide the music data, just the reference.
    - `id` integer, required — The song ID
    - `reference` string, required — If integer, references Zumba music and music will be included, anything else reference some user specific content and will not have music data.
    - `music` Music
      - `id` integer, required
      - `name` string, required
      - `duration` integer, required — Time in seconds.
      - `keywords` string[]
      - `bpm` integer — Beats Per Minute.
      - `rhythm` Rhythm, required
        - `id` integer, required
        - `name` string, required
        - `version` integer — The version of the returned entity
      - `artist` Artist, required
        - `id` integer, required
        - `name` string, required
        - `version` integer — The version of the returned entity
      - `categories` MusicCategory[] — Music categories without the children categories.
        - `id` integer, required
        - `thumbnail_url` string, required
        - `image` string, required
        - `name` string, required
        - `slug` string, required
        - `description` string
        - `legal_description` string
        - `type` 'regular' | 'mega-mix' | 'zin-volume', required
        - `display_order` integer
        - `prefix` CategoryPrefix[]
          - `label` string, required — Can be null
          - `color` CategoryPrefixColor, required — Media category prefix color
            - `hex` string, required — Can be null
            - `r` integer, required — Can be null
            - `g` integer, required — Can be null
            - `b` integer, required — Can be null
        - `children_categories` MusicCategory[]
        - `num_music` integer
        - `version` integer — The version of the returned entity
      - `chapters` ChapterList[] — Music chapters.
        - Chapter[] — List of chapters.
          - `id` integer, required
          - `title` string, required
          - `position` integer, required
      - `can_stream` boolean, required
      - `can_download` boolean, required
      - `release_date` integer — Music release date as unix timestamp
      - `is_spicy` boolean
      - `is_favorite` boolean
      - `has_choreo_steps` boolean
      - `external_id` string — The external music id
      - `special_notes` string — Legal or special notes for music. This field is optional and might not be present in the output
      - `related_videos` Video[]
        - `id` integer
        - `name` string
        - `description` string
        - `duration` integer — Time in seconds.
        - `thumbnail_url` string
        - `keywords` string[]
        - `rhythm` Rhythm
          - `id` integer, required
          - `name` string, required
          - `version` integer — The version of the returned entity
        - `categories` VideoCategory[] — Video categories without the children categories.
          - `id` integer, required
          - `thumbnail_url` string, required
          - `image` string, required
          - `name` string, required
          - `description` string
          - `legal_description` string
          - `type` 'regular' | 'zin-volume', required
          - `display_order` integer
          - `generated_name` string — Name generated from the slug. Used on the search functionality.
          - `prefix` CategoryPrefix[]
            - `label` string, required — Can be null
            - `color` CategoryPrefixColor, required — Media category prefix color
              - …
          - `children_categories` MusicCategory[]
            - `id` integer, required
            - `thumbnail_url` string, required
            - `image` string, required
            - `name` string, required
            - `slug` string, required
            - `description` string
            - `legal_description` string
            - `type` 'regular' | 'mega-mix' | 'zin-volume', required
            - `display_order` integer
            - `prefix` CategoryPrefix[]
              - …
            - `children_categories` MusicCategory[]
            - `num_music` integer
            - `version` integer — The version of the returned entity
          - `num_videos` integer
          - `version` integer — The version of the returned entity
        - `can_stream` boolean
        - `can_download` boolean
        - `release_date` integer — Music release date as unix timestamp
        - `is_spicy` boolean
        - `is_favorite` boolean
        - `play_count` integer — How many times the video has been played
        - `related_music` Music — recursive
        - `external_assets` ExternalAsset[]
          - `url` string
          - `width` integer
          - `height` integer
          - `file_size` string
          - `content_type` string
          - `type` string
        - `choreo_notes` string
        - `m3u8` string
        - `version` integer — The version of the returned entity
      - `choreography_video` Video
        - `id` integer
        - `name` string
        - `description` string
        - `duration` integer — Time in seconds.
        - `thumbnail_url` string
        - `keywords` string[]
        - `rhythm` Rhythm
          - `id` integer, required
          - `name` string, required
          - `version` integer — The version of the returned entity
        - `categories` VideoCategory[] — Video categories without the children categories.
          - `id` integer, required
          - `thumbnail_url` string, required
          - `image` string, required
          - `name` string, required
          - `description` string
          - `legal_description` string
          - `type` 'regular' | 'zin-volume', required
          - `display_order` integer
          - `generated_name` string — Name generated from the slug. Used on the search functionality.
          - `prefix` CategoryPrefix[]
            - `label` string, required — Can be null
            - `color` CategoryPrefixColor, required — Media category prefix color
              - …
          - `children_categories` MusicCategory[]
            - `id` integer, required
            - `thumbnail_url` string, required
            - `image` string, required
            - `name` string, required
            - `slug` string, required
            - `description` string
            - `legal_description` string
            - `type` 'regular' | 'mega-mix' | 'zin-volume', required
            - `display_order` integer
            - `prefix` CategoryPrefix[]
              - …
            - `children_categories` MusicCategory[]
            - `num_music` integer
            - `version` integer — The version of the returned entity
          - `num_videos` integer
          - `version` integer — The version of the returned entity
        - `can_stream` boolean
        - `can_download` boolean
        - `release_date` integer — Music release date as unix timestamp
        - `is_spicy` boolean
        - `is_favorite` boolean
        - `play_count` integer — How many times the video has been played
        - `related_music` Music — recursive
        - `external_assets` ExternalAsset[]
          - `url` string
          - `width` integer
          - `height` integer
          - `file_size` string
          - `content_type` string
          - `type` string
        - `choreo_notes` string
        - `m3u8` string
        - `version` integer — The version of the returned entity
      - `version` integer — The version of the returned entity
    - `options` PlaylistSongOption[] — Options for playlist, like sound effects, etc
      - `option_type` 'Trim' | 'Effect' | 'Break', required
      - `start` integer, required — Start time in seconds from start of song
      - `value` string — Depends on type of song option. Effect will reference what sound effect, trim will reference end time.
      - `version` integer — The version of the returned entity
    - `order` integer, required — Order in the playlist, set automatically when creating / updating user playlist
    - `source` string, required — The source of the song, zumba songs source is zin-music
    - `accessible` boolean — Indicates if the user can access the song
    - `template_elements` TemplateElement[]
      - `id` integer, required — The template element ID
      - `name` string, required
      - `slug` string, required
      - `category` PlaylistTemplateElementCategory
        - `id` integer, required
        - `type` string, required
        - `prefix` CategoryPrefix — Media category prefix
          - `label` string, required — Can be null
          - `color` CategoryPrefixColor, required — Media category prefix color
            - `hex` string, required — Can be null
            - `r` integer, required — Can be null
            - `g` integer, required — Can be null
            - `b` integer, required — Can be null
    - `external_name` string — User specific content name
    - `external_artist` string — User specific content artist
    - `external_length` integer — User specific content length
    - `version` integer — The version of the returned entity

## Response `200`

User playlist imported successfully, new user playlist is returned back.

- PlaylistWithSongs — Music Playlist
  - `id` integer, required
  - `image` string — This represents the album art. Either base64 encoded string or the remote image path (HTTPS).
  - `name` string, required — Playlist name.
  - `modified` integer — Last modified date for Playlist as Unix timestamp
  - `duration` integer — This represents the sum of the duration of every song in the playlist
  - `trimmed_duration` integer — This represents the total playlist duration with all the songs effects applied in the playlist
  - `is_spicy` boolean — The playlist is spicy if at least a song is marked as spicy
  - `song_count` integer, required — The count of songs in the playlist
  - `crossfade` integer — Number of seconds for cross fade by default
  - `version` integer — The version of the returned entity
  - `songs` PlaylistSong[] — List of Playlist Songs
    - `id` integer, required — The song ID
    - `reference` string, required — If integer, references Zumba music and music will be included, anything else reference some user specific content and will not have music data.
    - `music` Music
      - `id` integer, required
      - `name` string, required
      - `duration` integer, required — Time in seconds.
      - `keywords` string[]
      - `bpm` integer — Beats Per Minute.
      - `rhythm` Rhythm, required
        - `id` integer, required
        - `name` string, required
        - `version` integer — The version of the returned entity
      - `artist` Artist, required
        - `id` integer, required
        - `name` string, required
        - `version` integer — The version of the returned entity
      - `categories` MusicCategory[] — Music categories without the children categories.
        - `id` integer, required
        - `thumbnail_url` string, required
        - `image` string, required
        - `name` string, required
        - `slug` string, required
        - `description` string
        - `legal_description` string
        - `type` 'regular' | 'mega-mix' | 'zin-volume', required
        - `display_order` integer
        - `prefix` CategoryPrefix[]
          - `label` string, required — Can be null
          - `color` CategoryPrefixColor, required — Media category prefix color
            - `hex` string, required — Can be null
            - `r` integer, required — Can be null
            - `g` integer, required — Can be null
            - `b` integer, required — Can be null
        - `children_categories` MusicCategory[]
        - `num_music` integer
        - `version` integer — The version of the returned entity
      - `chapters` ChapterList[] — Music chapters.
        - Chapter[] — List of chapters.
          - `id` integer, required
          - `title` string, required
          - `position` integer, required
      - `can_stream` boolean, required
      - `can_download` boolean, required
      - `release_date` integer — Music release date as unix timestamp
      - `is_spicy` boolean
      - `is_favorite` boolean
      - `has_choreo_steps` boolean
      - `external_id` string — The external music id
      - `special_notes` string — Legal or special notes for music. This field is optional and might not be present in the output
      - `related_videos` Video[]
        - `id` integer
        - `name` string
        - `description` string
        - `duration` integer — Time in seconds.
        - `thumbnail_url` string
        - `keywords` string[]
        - `rhythm` Rhythm
          - `id` integer, required
          - `name` string, required
          - `version` integer — The version of the returned entity
        - `categories` VideoCategory[] — Video categories without the children categories.
          - `id` integer, required
          - `thumbnail_url` string, required
          - `image` string, required
          - `name` string, required
          - `description` string
          - `legal_description` string
          - `type` 'regular' | 'zin-volume', required
          - `display_order` integer
          - `generated_name` string — Name generated from the slug. Used on the search functionality.
          - `prefix` CategoryPrefix[]
            - `label` string, required — Can be null
            - `color` CategoryPrefixColor, required — Media category prefix color
              - …
          - `children_categories` MusicCategory[]
            - `id` integer, required
            - `thumbnail_url` string, required
            - `image` string, required
            - `name` string, required
            - `slug` string, required
            - `description` string
            - `legal_description` string
            - `type` 'regular' | 'mega-mix' | 'zin-volume', required
            - `display_order` integer
            - `prefix` CategoryPrefix[]
              - …
            - `children_categories` MusicCategory[]
            - `num_music` integer
            - `version` integer — The version of the returned entity
          - `num_videos` integer
          - `version` integer — The version of the returned entity
        - `can_stream` boolean
        - `can_download` boolean
        - `release_date` integer — Music release date as unix timestamp
        - `is_spicy` boolean
        - `is_favorite` boolean
        - `play_count` integer — How many times the video has been played
        - `related_music` Music — recursive
        - `external_assets` ExternalAsset[]
          - `url` string
          - `width` integer
          - `height` integer
          - `file_size` string
          - `content_type` string
          - `type` string
        - `choreo_notes` string
        - `m3u8` string
        - `version` integer — The version of the returned entity
      - `choreography_video` Video
        - `id` integer
        - `name` string
        - `description` string
        - `duration` integer — Time in seconds.
        - `thumbnail_url` string
        - `keywords` string[]
        - `rhythm` Rhythm
          - `id` integer, required
          - `name` string, required
          - `version` integer — The version of the returned entity
        - `categories` VideoCategory[] — Video categories without the children categories.
          - `id` integer, required
          - `thumbnail_url` string, required
          - `image` string, required
          - `name` string, required
          - `description` string
          - `legal_description` string
          - `type` 'regular' | 'zin-volume', required
          - `display_order` integer
          - `generated_name` string — Name generated from the slug. Used on the search functionality.
          - `prefix` CategoryPrefix[]
            - `label` string, required — Can be null
            - `color` CategoryPrefixColor, required — Media category prefix color
              - …
          - `children_categories` MusicCategory[]
            - `id` integer, required
            - `thumbnail_url` string, required
            - `image` string, required
            - `name` string, required
            - `slug` string, required
            - `description` string
            - `legal_description` string
            - `type` 'regular' | 'mega-mix' | 'zin-volume', required
            - `display_order` integer
            - `prefix` CategoryPrefix[]
              - …
            - `children_categories` MusicCategory[]
            - `num_music` integer
            - `version` integer — The version of the returned entity
          - `num_videos` integer
          - `version` integer — The version of the returned entity
        - `can_stream` boolean
        - `can_download` boolean
        - `release_date` integer — Music release date as unix timestamp
        - `is_spicy` boolean
        - `is_favorite` boolean
        - `play_count` integer — How many times the video has been played
        - `related_music` Music — recursive
        - `external_assets` ExternalAsset[]
          - `url` string
          - `width` integer
          - `height` integer
          - `file_size` string
          - `content_type` string
          - `type` string
        - `choreo_notes` string
        - `m3u8` string
        - `version` integer — The version of the returned entity
      - `version` integer — The version of the returned entity
    - `options` PlaylistSongOption[] — Options for playlist, like sound effects, etc
      - `option_type` 'Trim' | 'Effect' | 'Break', required
      - `start` integer, required — Start time in seconds from start of song
      - `value` string — Depends on type of song option. Effect will reference what sound effect, trim will reference end time.
      - `version` integer — The version of the returned entity
    - `order` integer, required — Order in the playlist, set automatically when creating / updating user playlist
    - `source` string, required — The source of the song, zumba songs source is zin-music
    - `accessible` boolean — Indicates if the user can access the song
    - `template_elements` TemplateElement[]
      - `id` integer, required — The template element ID
      - `name` string, required
      - `slug` string, required
      - `category` PlaylistTemplateElementCategory
        - `id` integer, required
        - `type` string, required
        - `prefix` CategoryPrefix — Media category prefix
          - `label` string, required — Can be null
          - `color` CategoryPrefixColor, required — Media category prefix color
            - `hex` string, required — Can be null
            - `r` integer, required — Can be null
            - `g` integer, required — Can be null
            - `b` integer, required — Can be null
    - `external_name` string — User specific content name
    - `external_artist` string — User specific content artist
    - `external_length` integer — User specific content length
    - `version` integer — The version of the returned entity

## Other responses

- `400` — Error ocurred during import.

---

[API](https://skmtc.net/zumba/apis/zumba-s-api.md) · [All operations](https://skmtc.net/zumba/apis/zumba-s-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zumba/zumba-s-api/revisions/90e715bcdf3d/schema)
