1. Playlists
deciBel API
  • Authentication
    • Login with email and password
      POST
    • Refresh access token
      POST
    • Logout current session
      POST
    • Logout current user from all active sessions
      POST
    • Verify email
      POST
    • Start password recovery
      POST
    • Resend verification email
      POST
    • Register with email and password
      POST
    • Reset password using token
      POST
    • Trigger Google login
      GET
    • Google Callback (Internal)
      GET
    • exchange oauth token with Decibel
      POST
  • Account Security
    • Change current user email
      PATCH
    • Change logged-in user password
      PATCH
    • Add additional email
      POST
    • Set primary email
      POST
  • Users
    • Update User permalink
    • update user Role
    • Get public profile by username
    • start Email change
    • verify Email change
    • delete current user avatar
    • delete current user cover
    • Get all playlists liked by a user
    • Get all tracks liked by the current user
    • Get all tracks reposted by a user
    • Get all playlists created by current user
    • Get current user profile
    • Update current user profile
    • Update privacy settings
    • Update account tier
    • Update social links
    • Update profile or cover images
    • Get user listening history
    • Get suggested users to follow
    • Get public profile by user ID
    • Get all tracks uploaded by a user
    • Get all public playlists created by a user
  • Followers
    • Follow a user
    • Unfollow a user
    • Get followers
    • Get following
  • Block
    • Unblock a user
    • Block a user
    • Get list of blocked users
  • Tracks
    • STOMP websocket
    • Get all tracks of current user
    • Get all tracks of another user
    • Upload a new track
    • Get track status
    • Get Waveform URL
    • Generate New Secret Token
    • Get Secret Token
    • Update track metadata
    • Delete a track
    • Delete Track's Cover
    • Get track metadata user
    • Get genres
    • Get track metadata
    • Mock offline download for Pro users
    • publishTrack
    • retry processing
    • Increment play count
    • Mark a track as completely listened to
    • Get HTML iframe embed code for a tracks
    • Get track with token
    • Resolve Track Slug To ID
    • Upload a new track V2
  • Moderation
    • admin login
    • report a track
    • Report a comment
    • View a list of reports (Admin only)
    • View a specific report (Admin only)
    • get banned users
    • Update report status (Admin only)
    • ban a user
    • Get platform wide metrics (Admin only)
    • get all reports
    • admin delete track
  • Playlists
    • Get current user playlist with tracks
      GET
    • Delete Playlist's Cover
      DELETE
    • Create playlist
      POST
    • Get playlist with tracks
      GET
    • Update playlist metadata
      PATCH
    • Delete a playlist
      DELETE
    • Add track to playlist
      POST
    • Reorder tracks inside a playlist
      PATCH
    • Get playlist secret link
      GET
    • Get HTML iframe embed code for a playlist
      GET
    • Remove track from playlist
      DELETE
    • regenerate secret link
      POST
    • Get playlist with token
      GET
    • Resolve Playlist Slug To ID
      GET
    • Get playlist with tracks of a specific user
      GET
  • Engagement
    • Like a track
    • Remove like from a track
    • Get users who liked a track
    • Repost a track
    • Remove a repost
    • Get users who reposted a track
    • Add a comment to a track
    • Get comments for a track
    • Delete comment
    • Add a reply to a comment
    • Get Replies for a comment
    • Like a playlist
    • Remove like from a playlist
    • Get users who reposted a playlist
    • Get users who liked a playlist
    • Repost a playlist
    • Remove a repost playlist
    • Get all tracks reposted by user
    • Get user repost history
    • Get all tracks liked by a user
  • Discovery
    • Get followed users feed
    • Get popular tracks
    • Global search
    • Resolve a public permalink URL to an internal entity ID
    • Generate a radio station based on genre similarities
    • Generate a radio station based on artist similarities
    • Generate a radio station based on user's likes
  • Conversations
    • Get user's direct messages threads
    • Start a new DM thread
    • Get messages within a conversation thread
    • Send a message in a conversation
  • Notifications
    • get unread count
    • unregister device
    • Get user notifications
    • Mark all unread notifications as read
    • Get user notification preferences
    • Update notification preferences
    • Get quick badge unread count for UI
    • Register mobile device token for push notifications
  • Subscriptions
    • get subscription status
    • renew subscription
    • cancel subscription
    • Initiate a Stripe checkout session
    • Stripe webhook listener
  • deprecated
    • Login with Google
    • Register with Google
    • Get all tracks of another user
    • Check email or profile URL availability
  • Schemas
    • Status
    • Google oauth token
    • UserUpdateResponse
    • Untitled Schema
    • TrackWaveformUrlDTO
    • publishTrackResponse
    • LoginResponse Copy
    • PaginatedTracksResponse
    • UpdatePlaylistRequest
    • CreateReplyRequest
    • Reply to comment Response
    • PaginatedPlaylistResponse
    • PaginatedUserProfileResponse
    • Repost mix
    • PaginatedRepostMix
    • UserSummaryDTO
    • TrackSummaryDTO
    • PlaylistSummaryDTO
    • ResourceRefDTO
    • ResourceRef
    • PaginatedTracksSummeryResponse
    • adminUser
    • reports
    • PaginatedReports
    • ban user
    • PaginatedUserSummeryResponse
    • PaginatedUserProfileResponse Copy
    • resource
    • CreatePlaylistResponse
    • PlaylistSummaryResponse
    • FullPlaylistResponse
    • trackReport
    • commentReport
    • ErrorResponse
    • EmptyObject
    • MessageResponse
    • DeviceType
    • UserInfo
    • PublicTier
    • PlaylistType
    • CheckUserErrorField
    • DeviceInfo
    • RegisterLocalRequest
    • RegisterGoogleRequest
    • CheckUserRequest
    • CheckUserAvailableResponse
    • CheckUserUnavailableResponse
    • LoginLocalRequest
    • LoginGoogleRequest
    • AuthUser
    • LoginResponse
    • RefreshTokenRequest
    • RefreshTokenResponse
    • VerifyEmailRequest
    • ForgotPasswordRequest
    • ResetPasswordRequest
    • ResetLoggedInPasswordRequest
    • AddNewEmailRequest
    • UpdatePrimaryEmailRequest
    • PrivateProfile
    • PrivateSocialLinks
    • PrivacySettings
    • MyStats
    • MeResponse
    • UpdateMeRequest
    • UpdatePrivacyRequest
    • UpdateTierRequest
    • UpdateSocialLinksRequest
    • UpdateImagesJsonRequest
    • PublicProfileData
    • PublicProfileSocialLinks
    • PublicStats
    • PublicUserProfileResponse
    • FollowResponse
    • FollowerUser
    • PaginatedFollowersResponse
    • TrackArtist
    • TrackArtistWithAvatar
    • TrackResponse
    • TrackUploadResponse
    • CreatePlaylistRequest
    • PlaylistOwner
    • PlaylistTrack
    • PlaylistResponse
    • AddTrackToPlaylistRequest
    • ReorderTracksRequest
    • SecretLinkResponse
    • EmbedResponse
    • LikeResponse
    • RepostResponse
    • CreateCommentRequest
    • CommentUser
    • Comment
    • PaginatedCommentsResponse
    • TrendingTrack
    • SearchUser
    • SearchTrack
    • SearchPlaylist
    • SearchType
    • SearchResponse
    • FeedTrack
    • PaginatedFeedResponse
    • ResourceResolutionResponse
    • ConversationResponse
    • PaginatedConversationsResponse
    • MessageObject
    • CreateMessageRequest
    • PaginatedMessagesResponse
    • ConversationCreatedResponse
    • NotificationObject
    • PaginatedNotificationsResponse
    • NotificationSettings
    • UnreadCountResponse
    • DeviceTokenRequest
    • ReportRequest
    • UpdateReportRequest
    • ReportResponse
    • SuspendUserRequest
    • AnalyticsResponse
    • CheckoutRequest
    • CheckoutResponse
  1. Playlists

Create playlist

POST
/playlists

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢201
application/json
Playlist created
Bodyapplication/json

Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://decibel.foo/api/playlists' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "title": "string",
    "description": "string",
    "type": "PLAYLIST",
    "isPrivate": true,
    "CoverArt": "string",
    "genre": "string"
}'
Response Response Example
{
    "id": 0,
    "title": "string",
    "type": "PLAYLIST",
    "isLiked": true,
    "description": "string",
    "isPrivate": true,
    "coverArtUrl": "string",
    "playlistSlug": "string",
    "totalDurationSeconds": 0,
    "trackCount": 0,
    "secretToken": "string",
    "owner": {
        "id": 0,
        "username": "string",
        "displayName": "string",
        "avatarUrl": "string",
        "isFollowing": true,
        "followerCount": 0,
        "trackCount": 0
    },
    "genres": [
        "string"
    ],
    "createdAt": "string",
    "trackSummaryDto": [
        {
            "id": 0,
            "title": "string",
            "trackSlug": "string",
            "coverUrl": "string",
            "trackUrl": "string",
            "trackPreviewUrl": "string",
            "artist": {
                "id": 0,
                "username": "string",
                "displayName": "string",
                "avatarUrl": "string",
                "isFollowing": true,
                "followerCount": 0,
                "trackCount": 0
            },
            "playCount": 0,
            "likeCount": 0,
            "repostCount": 0,
            "commentCount": 0,
            "isLiked": true,
            "isReposted": true,
            "secretToken": "string",
            "access": "BLOCKED"
        }
    ],
    "firstTrackWaveformUrl": "string"
}
Modified at 2026-04-03 13:07:24
Previous
Delete Playlist's Cover
Next
Get playlist with tracks
Built with