Nest Changelog
1.1.35
5/9/2022
1.1.36
5/11/2022
7 changed endpoints Collapse changed endpoints
POST /users
Request Body
{ billingAddress: { city: string, country: { code?: string, }, postalCode: string, region: { code?: string, }, streetLine1: string, streetLine2: string, }, birthdate: string, email?: string, firstName: string, forcePasswordChange: bool, gender: { value?: 'm' | 'f' | 'o', }, height: { units?: 'in' | 'cm', value?: number, }, image: { colors?: { background?: { hex?: string, }, foreground?: { hex?: string, }, }, default: string, initials?: string, isPlaceholder?: bool, large: string, medium: string, small: string, url?: string, }, lastName: string, mongoId: string, nickname: string, parent: { id?: number, mongoId?: string, }, password?: string, phoneNumber: string, purchaseHistory: List<{ datePurchased?: number, name?: string, retailer?: { id?: number,- name?: string,}, serialNumber?: string, }>, roles: List<string>, tagline: string, weight: { units?: 'lb' | 'kg', value?: number, }, }
POST /users
Request Body
{ billingAddress: { city: string, country: { code?: string, }, postalCode: string, region: { code?: string, }, streetLine1: string, streetLine2: string, }, birthdate: string, email?: string, firstName: string, forcePasswordChange: bool, gender: { value?: 'm' | 'f' | 'o', }, height: { units?: 'in' | 'cm', value?: number, }, image: { colors?: { background?: { hex?: string, }, foreground?: { hex?: string, }, }, default: string, initials?: string, isPlaceholder?: bool, large: string, medium: string, small: string, url?: string, }, lastName: string, mongoId: string, nickname: string, parent: { id?: number, mongoId?: string, }, password?: string, phoneNumber: string, purchaseHistory: List<{ datePurchased?: number, name?: string, retailer?: { id?: number,}, serialNumber?: string, }>, roles: List<string>, tagline: string, weight: { units?: 'lb' | 'kg', value?: number, }, }
PATCH /users/{userId}
Edit this user
Request Body
{ billingAddress: { city: string, country: { code?: string, }, postalCode: string, region: { code?: string, }, streetLine1: string, streetLine2: string, }, birthdate: string, email: string, firstName: string, forcePasswordChange: bool, gender: { value?: 'm' | 'f' | 'o', }, height: { units?: 'in' | 'cm', value?: number, }, image: { colors?: { background?: { hex?: string, }, foreground?: { hex?: string, }, }, default: string, initials?: string, isPlaceholder?: bool, large: string, medium: string, small: string, url?: string, }, lastName: string, mongoId: string, nickname: string, parent: { id?: number, mongoId?: string, }, phoneNumber: string, purchaseHistory: List<{ datePurchased?: number, name?: string, retailer?: { id?: number,- name?: string,}, serialNumber?: string, }>, roles: List<string>, tagline: string, weight: { units?: 'lb' | 'kg', value?: number, }, }
PATCH /users/{userId}
Edit this user
Request Body
{ billingAddress: { city: string, country: { code?: string, }, postalCode: string, region: { code?: string, }, streetLine1: string, streetLine2: string, }, birthdate: string, email: string, firstName: string, forcePasswordChange: bool, gender: { value?: 'm' | 'f' | 'o', }, height: { units?: 'in' | 'cm', value?: number, }, image: { colors?: { background?: { hex?: string, }, foreground?: { hex?: string, }, }, default: string, initials?: string, isPlaceholder?: bool, large: string, medium: string, small: string, url?: string, }, lastName: string, mongoId: string, nickname: string, parent: { id?: number, mongoId?: string, }, phoneNumber: string, purchaseHistory: List<{ datePurchased?: number, name?: string, retailer?: { id?: number,}, serialNumber?: string, }>, roles: List<string>, tagline: string, weight: { units?: 'lb' | 'kg', value?: number, }, }
POST /users/{userId}/family
Request Body
{ billingAddress: { city: string, country: { code?: string, }, postalCode: string, region: { code?: string, }, streetLine1: string, streetLine2: string, }, birthdate: string, email?: string, firstName: string, forcePasswordChange: bool, gender: { value?: 'm' | 'f' | 'o', }, height: { units?: 'in' | 'cm', value?: number, }, image: { colors?: { background?: { hex?: string, }, foreground?: { hex?: string, }, }, default: string, initials?: string, isPlaceholder?: bool, large: string, medium: string, small: string, url?: string, }, lastName: string, mongoId: string, nickname: string, parent: { id?: number, mongoId?: string, }, password?: string, phoneNumber: string, purchaseHistory: List<{ datePurchased?: number, name?: string, retailer?: { id?: number,- name?: string,}, serialNumber?: string, }>, roles: List<string>, tagline: string, weight: { units?: 'lb' | 'kg', value?: number, }, }
POST /users/{userId}/family
Request Body
{ billingAddress: { city: string, country: { code?: string, }, postalCode: string, region: { code?: string, }, streetLine1: string, streetLine2: string, }, birthdate: string, email?: string, firstName: string, forcePasswordChange: bool, gender: { value?: 'm' | 'f' | 'o', }, height: { units?: 'in' | 'cm', value?: number, }, image: { colors?: { background?: { hex?: string, }, foreground?: { hex?: string, }, }, default: string, initials?: string, isPlaceholder?: bool, large: string, medium: string, small: string, url?: string, }, lastName: string, mongoId: string, nickname: string, parent: { id?: number, mongoId?: string, }, password?: string, phoneNumber: string, purchaseHistory: List<{ datePurchased?: number, name?: string, retailer?: { id?: number,}, serialNumber?: string, }>, roles: List<string>, tagline: string, weight: { units?: 'lb' | 'kg', value?: number, }, }
GET /songs
Get a list of songs
Response Body
{ data: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>,coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, },
name?: string, publisherRights?: List<string>, releaseDate?: number,
}, }
GET /songs
Get a list of songs
Response Body
{ data: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>, + copyright: record, coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, }, + labelRights: record, name?: string, publisherRights?: List<string>, releaseDate?: number, + searchFlags: record, }, }
GET /songs/{id}
Get a specific song
Response Body
{ data: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>,coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, },
name?: string, publisherRights?: List<string>, releaseDate?: number,
}, }
GET /songs/{id}
Get a specific song
Response Body
{ data: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>, + copyright: record, coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, }, + labelRights: record, name?: string, publisherRights?: List<string>, releaseDate?: number, + searchFlags: record, }, }
GET /playlists/{playlist}
Get a single playlist by ID
Response Body
{ data: { countries?: List<{ code?: string, }>, createdBy?: { id?: number, }, dateCreated?: number, dateUpdated?: number, id?: number, instructors?: List<{ id?: number, name?: string, }>, isFlagged?: bool, name?: string, schedule?: List<{ available?: { end?: number, live?: number, start?: number, }, contentGuid?: string, duration: number, guid?: string, legacy: { hlsUrl?: string, id?: number, liveStreamId?: number, type?: 'reflect' | 'connect', }, type?: 'live' | 'vod' | 'encore', }>, studios?: List<{ id?: number, name?: string, }>, tracks?: List<{ dateCreated?: number, flag?: string, song?: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>,coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, },
name?: string, publisherRights?: List<string>, releaseDate?: number,
}, trackOrder?: number, }>, videoLength?: { id?: number, name?: string, }, }, }
GET /playlists/{playlist}
Get a single playlist by ID
Response Body
{ data: { countries?: List<{ code?: string, }>, createdBy?: { id?: number, }, dateCreated?: number, dateUpdated?: number, id?: number, instructors?: List<{ id?: number, name?: string, }>, isFlagged?: bool, name?: string, schedule?: List<{ available?: { end?: number, live?: number, start?: number, }, contentGuid?: string, duration: number, guid?: string, legacy: { hlsUrl?: string, id?: number, liveStreamId?: number, type?: 'reflect' | 'connect', }, type?: 'live' | 'vod' | 'encore', }>, studios?: List<{ id?: number, name?: string, }>, tracks?: List<{ dateCreated?: number, flag?: string, song?: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>, + copyright: record, coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, }, + labelRights: record, name?: string, publisherRights?: List<string>, releaseDate?: number, + searchFlags: record, }, trackOrder?: number, }>, videoLength?: { id?: number, name?: string, }, }, }
POST /playlists/{playlist}/import
Import all songs from a playlist to another playlist
Response Body
{ data: { countries?: List<{ code?: string, }>, createdBy?: { id?: number, }, dateCreated?: number, dateUpdated?: number, id?: number, instructors?: List<{ id?: number, name?: string, }>, isFlagged?: bool, name?: string, schedule?: List<{ available?: { end?: number, live?: number, start?: number, }, contentGuid?: string, duration: number, guid?: string, legacy: { hlsUrl?: string, id?: number, liveStreamId?: number, type?: 'reflect' | 'connect', }, type?: 'live' | 'vod' | 'encore', }>, studios?: List<{ id?: number, name?: string, }>, tracks?: List<{ dateCreated?: number, flag?: string, song?: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>,coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, },
name?: string, publisherRights?: List<string>, releaseDate?: number,
}, trackOrder?: number, }>, videoLength?: { id?: number, name?: string, }, }, }
POST /playlists/{playlist}/import
Import all songs from a playlist to another playlist
Response Body
{ data: { countries?: List<{ code?: string, }>, createdBy?: { id?: number, }, dateCreated?: number, dateUpdated?: number, id?: number, instructors?: List<{ id?: number, name?: string, }>, isFlagged?: bool, name?: string, schedule?: List<{ available?: { end?: number, live?: number, start?: number, }, contentGuid?: string, duration: number, guid?: string, legacy: { hlsUrl?: string, id?: number, liveStreamId?: number, type?: 'reflect' | 'connect', }, type?: 'live' | 'vod' | 'encore', }>, studios?: List<{ id?: number, name?: string, }>, tracks?: List<{ dateCreated?: number, flag?: string, song?: { album?: { id?: number, name?: string, }, artists?: List<{ id?: number, name?: string, }>, + copyright: record, coverArtUrl?: string, duration?: { seconds: number, text: string, }, genres?: List<string>, id?: number, isExplicit?: bool, isrc?: string, label?: { id?: number, name?: string, }, labelOwner?: { id?: number, name?: string, }, + labelRights: record, name?: string, publisherRights?: List<string>, releaseDate?: number, + searchFlags: record, }, trackOrder?: number, }>, videoLength?: { id?: number, name?: string, }, }, }