Nest Changelog

1.0.4

9/15/2021

1.0.5

9/22/2021

37 changed endpoints

GET /users/{userId}/preferences

Get all User’s Preferences

Response Body
{
- data: record,

}

GET /users/{userId}/preferences

Get all User’s Preferences

Response Body
{

+ data: { + }, }

PUT /users/{userId}/preferences

Save / updates the user’s preferences for this user

Response Body
{
- data: record,

}

PUT /users/{userId}/preferences

Save / updates the user’s preferences for this user

Response Body
{

+ data: { + }, }

POST /auth

Sign in with email address and password

Response Body
{
- data: List<{
-   family?: List<{
-     id?: number,
-     image?: {
-       default?: string,
-       large?: string,
-       medium?: string,
-       small?: string,
-     },
-     nickname?: string,
-   }>,

guid?: string, jwt?: string, - plan?: {

features?: record, id?: number, name?: string, }, userId?: number, - }>,

}

POST /auth

Sign in with email address and password

Response Body
{

+ data: { + family?: List<string>, guid?: string, jwt?: string,

+ mongoId?: string, + plan: { features?: record, id?: number, name?: string, }, userId?: number,

+ }, }

GET /auth/{sessionGuid}

Refresh the token

Response Body
{
- data: List<{
-   family?: List<{
-     id?: number,
-     image?: {
-       default?: string,
-       large?: string,
-       medium?: string,
-       small?: string,
-     },
-     nickname?: string,
-   }>,

guid?: string, jwt?: string, - plan?: {

features?: record, id?: number, name?: string, }, userId?: number, - }>,

}

GET /auth/{sessionGuid}

Refresh the token

Response Body
{

+ data: { + family?: List<string>, guid?: string, jwt?: string,

+ mongoId?: string, + plan: { features?: record, id?: number, name?: string, }, userId?: number,

+ }, }

GET /users

Get all users

Response Body
{
  data: List<{
-   createdBy?: record,
-   dateActivated?: number,
-   dateBirth?: string,
-   dateCreated?: number,
-   dateUpdated?: number,
-   email?: string,
-   firstName?: string,
-   gender?: {
-     text?: string,
-     value?: string,

}, - height?: record, - id?: number, - image?: {

default?: string, large?: string, medium?: string, small?: string, }, - lastName?: string, - nickname?: string, - parentId?: number, - purchased?: record, - roles?: List<string>, - stripe?: record, - updatedBy?: {

id?: number, }, - weight?: record,

}>, }

GET /users

Get all users

Response Body
{
  data: List<{

+ createdBy: record, + dateActivated: number, + dateBirth: string, + dateCreated: number, + dateUpdated: number, + email: string, + firstName: string, + gender: { + text: string, + value?: 'm' | 'f', },

+ height: record, + id: number, + image: { default?: string, large?: string, medium?: string, small?: string, },

+ lastName: string, + mongoId?: string, + nickname: string, + parentId: number, + purchased: record, + roles: List<string>, + stripe: record, + updatedBy: { id?: number, },

+ weight: record, }>, }

GET /users/{userId}

Get a specific user by id

Response Body
{
- data: List<{
-   createdBy?: record,
-   dateActivated?: number,
-   dateBirth?: string,
-   dateCreated?: number,
-   dateUpdated?: number,
-   email?: string,
-   firstName?: string,
-   gender?: {
-     text?: string,
-     value?: string,

}, - height?: record, - id?: number, - image?: {

default?: string, large?: string, medium?: string, small?: string, }, - lastName?: string, - nickname?: string, - parentId?: number, - purchased?: record, - roles?: List<string>, - stripe?: record, - updatedBy?: {

id?: number, }, - weight?: record, - }>,

}

GET /users/{userId}

Get a specific user by id

Response Body
{

+ data: { + createdBy: record, + dateActivated: number, + dateBirth: string, + dateCreated: number, + dateUpdated: number, + email: string, + firstName: string, + gender: { + text: string, + value?: 'm' | 'f', },

+ height: record, + id: number, + image: { default?: string, large?: string, medium?: string, small?: string, },

+ lastName: string, + mongoId?: string, + nickname: string, + parentId: number, + purchased: record, + roles: List<string>, + stripe: record, + updatedBy: { id?: number, },

+ weight: record, + }, }

PATCH /users/{userId}

Edit this user

Request Body
{
  dateBirth: string,
  email: string,
  firstName: string,
  gender: {
-   text?: string,
-   value?: string,

}, height: { - units?: string,

value?: number, }, lastName: string, nickname: string, weight: { - units?: string,

value?: number, }, }
Response Body
{
- data: List<{
-   createdBy?: record,
-   dateActivated?: number,
-   dateBirth?: string,
-   dateCreated?: number,
-   dateUpdated?: number,
-   email?: string,
-   firstName?: string,
-   gender?: {
-     text?: string,
-     value?: string,

}, - height?: record, - id?: number, - image?: {

default?: string, large?: string, medium?: string, small?: string, }, - lastName?: string, - nickname?: string, - parentId?: number, - purchased?: record, - roles?: List<string>, - stripe?: record, - updatedBy?: {

id?: number, }, - weight?: record, - }>,

}

PATCH /users/{userId}

Edit this user

Request Body
{
  dateBirth: string,
  email: string,
  firstName: string,
  gender: {

+ text: string, + value?: 'm' | 'f', }, height: {

+ units?: 'in' | 'cm', value?: number, }, lastName: string, nickname: string, weight: {

+ units?: 'lb' | 'kg', value?: number, }, }
Response Body
{

+ data: { + createdBy: record, + dateActivated: number, + dateBirth: string, + dateCreated: number, + dateUpdated: number, + email: string, + firstName: string, + gender: { + text: string, + value?: 'm' | 'f', },

+ height: record, + id: number, + image: { default?: string, large?: string, medium?: string, small?: string, },

+ lastName: string, + mongoId?: string, + nickname: string, + parentId: number, + purchased: record, + roles: List<string>, + stripe: record, + updatedBy: { id?: number, },

+ weight: record, + }, }

GET /users/{userId}/family

Get child accounts of this user

Response Body
{
  data: List<{
-   createdBy?: record,
-   dateActivated?: number,
-   dateBirth?: string,
-   dateCreated?: number,
-   dateUpdated?: number,
-   email?: string,
-   firstName?: string,
-   gender?: {
-     text?: string,
-     value?: string,

}, - height?: record, - id?: number, - image?: {

default?: string, large?: string, medium?: string, small?: string, }, - lastName?: string, - nickname?: string, - parentId?: number, - purchased?: record, - roles?: List<string>, - stripe?: record, - updatedBy?: {

id?: number, }, - weight?: record,

}>, }

GET /users/{userId}/family

Get child accounts of this user

Response Body
{
  data: List<{

+ createdBy: record, + dateActivated: number, + dateBirth: string, + dateCreated: number, + dateUpdated: number, + email: string, + firstName: string, + gender: { + text: string, + value?: 'm' | 'f', },

+ height: record, + id: number, + image: { default?: string, large?: string, medium?: string, small?: string, },

+ lastName: string, + mongoId?: string, + nickname: string, + parentId: number, + purchased: record, + roles: List<string>, + stripe: record, + updatedBy: { id?: number, },

+ weight: record, }>, }

POST /users/{userId}/family

Request Body
{
  dateBirth?: string,
  email?: string,
  firstName?: string,
  gender: {
-   text?: string,
-   value?: string,

}, height: { - units?: string,

value?: number, }, lastName?: string, nickname: string, weight: { - units?: string,

value?: number, }, }
Response Body
{
- data: List<{
-   createdBy?: record,
-   dateActivated?: number,
-   dateBirth?: string,
-   dateCreated?: number,
-   dateUpdated?: number,
-   email?: string,
-   firstName?: string,
-   gender?: {
-     text?: string,
-     value?: string,

}, - height?: record, - id?: number, - image?: {

default?: string, large?: string, medium?: string, small?: string, }, - lastName?: string, - nickname?: string, - parentId?: number, - purchased?: record, - roles?: List<string>, - stripe?: record, - updatedBy?: {

id?: number, }, - weight?: record, - }>,

}

POST /users/{userId}/family

Request Body
{
  dateBirth?: string,
  email?: string,
  firstName?: string,
  gender: {

+ text: string, + value?: 'm' | 'f', }, height: {

+ units?: 'in' | 'cm', value?: number, }, lastName?: string, nickname: string, weight: {

+ units?: 'lb' | 'kg', value?: number, }, }
Response Body
{

+ data: { + createdBy: record, + dateActivated: number, + dateBirth: string, + dateCreated: number, + dateUpdated: number, + email: string, + firstName: string, + gender: { + text: string, + value?: 'm' | 'f', },

+ height: record, + id: number, + image: { default?: string, large?: string, medium?: string, small?: string, },

+ lastName: string, + mongoId?: string, + nickname: string, + parentId: number, + purchased: record, + roles: List<string>, + stripe: record, + updatedBy: { id?: number, },

+ weight: record, + }, }

GET /plans

Get all Plans

Response Body
{

}

GET /plans

Get all Plans

Response Body
{

+ data: List<{ + amazon: { + sku: string, + }, + id?: number, + image: { + url?: string, + }, + name: string, + price: { + currency: string, + units?: number, + }, + shopify: { + productId?: string, + shopId: string, + }, + sku: string, + sortOrder: number, + stripe: { + planId?: string, + productId?: string, + }, + termFrequency: number, + trialDays: number, + }>, }

POST /plans

Create Plan

Request Body
{
  amazon: {
-   sku?: string,

}, image: { url?: string, }, name?: string,

shopify: { productId?: string, - shopId?: string,

}, sku: string, sortOrder: number, stripe: { planId?: string, productId?: string, }, termFrequency?: number, trialDays: number, }
Response Body
{

}

POST /plans

Create Plan

Request Body
{
  amazon: {

+ sku: string, }, image: { url?: string, }, name?: string, + price: { + currency: string, + units?: number, + }, shopify: { productId?: string,

+ shopId: string, }, sku: string, sortOrder: number, stripe: { planId?: string, productId?: string, }, termFrequency?: number, trialDays: number, }
Response Body
{

+ data: { + amazon: { + sku: string, + }, + id?: number, + image: { + url?: string, + }, + name: string, + price: { + currency: string, + units?: number, + }, + shopify: { + productId?: string, + shopId: string, + }, + sku: string, + sortOrder: number, + stripe: { + planId?: string, + productId?: string, + }, + termFrequency: number, + trialDays: number, + }, }

GET /plans/{id}

Get Plan by id

Response Body
{

}

GET /plans/{id}

Get Plan by id

Response Body
{

+ data: { + amazon: { + sku: string, + }, + id?: number, + image: { + url?: string, + }, + name: string, + price: { + currency: string, + units?: number, + }, + shopify: { + productId?: string, + shopId: string, + }, + sku: string, + sortOrder: number, + stripe: { + planId?: string, + productId?: string, + }, + termFrequency: number, + trialDays: number, + }, }

PATCH /plans/{id}

Update Plan

Request Body
{
  amazon: {
-   sku?: string,

}, image: { url?: string, }, name: string, price: { - currency?: string,

units?: number, }, shopify: { productId?: string, - shopId?: string,

}, sku: string, sortOrder: number, stripe: { planId?: string, productId?: string, }, termFrequency: number, trialDays: number, }
Response Body
{

}

PATCH /plans/{id}

Update Plan

Request Body
{
  amazon: {

+ sku: string, }, image: { url?: string, }, name: string, price: {

+ currency: string, units?: number, }, shopify: { productId?: string,

+ shopId: string, }, sku: string, sortOrder: number, stripe: { planId?: string, productId?: string, }, termFrequency: number, trialDays: number, }
Response Body
{

+ data: { + amazon: { + sku: string, + }, + id?: number, + image: { + url?: string, + }, + name: string, + price: { + currency: string, + units?: number, + }, + shopify: { + productId?: string, + shopId: string, + }, + sku: string, + sortOrder: number, + stripe: { + planId?: string, + productId?: string, + }, + termFrequency: number, + trialDays: number, + }, }

GET /plans/{id}/features

Get all Plan’s Features

Response Body
{

}

GET /plans/{id}/features

Get all Plan’s Features

Response Body
{
+ data: {

+ },
}

PATCH /plans/{id}/features

Updates the Plan’s features by plan id

Response Body
{

}

PATCH /plans/{id}/features

Updates the Plan’s features by plan id

Response Body
{
+ data: {

+ },
}

GET /instructors

Get a list of instructors

Response Body
{

}

GET /instructors

Get a list of instructors

Response Body
{

+ data: List<{ + bio?: string, + flags?: List<'connect' | 'reflect' | 'fitnation' | 'celebrity'>, + id?: number, + image: { + default?: string, + large?: string, + medium?: string, + small?: string, + }, + name?: string, + user: { + id?: number, + }, + }>, }

POST /instructors

Create a new instructor

Request Body
{
  bio: string,
- flags: List<string>,

image: { data?: string, filename?: string, }, name?: string, user: { id?: number, }, }
Response Body
{

}

POST /instructors

Create a new instructor

Request Body
{
  bio: string,

+ flags: List<'connect' | 'reflect' | 'fitnation' | 'celebrity'>, image: { data?: string, filename?: string, }, name?: string, user: { id?: number, }, }
Response Body
{

+ data: { + bio?: string, + flags?: List<'connect' | 'reflect' | 'fitnation' | 'celebrity'>, + id?: number, + image: { + default?: string, + large?: string, + medium?: string, + small?: string, + }, + name?: string, + user: { + id?: number, + }, + }, }

GET /instructors/{id}

Get a specific instructor

Response Body
{

}

GET /instructors/{id}

Get a specific instructor

Response Body
{

+ data: { + bio?: string, + flags?: List<'connect' | 'reflect' | 'fitnation' | 'celebrity'>, + id?: number, + image: { + default?: string, + large?: string, + medium?: string, + small?: string, + }, + name?: string, + user: { + id?: number, + }, + }, }

PATCH /instructors/{id}

Update an existing instructor

Request Body
{
  bio: string,
- flags: List<string>,

image: { data?: string, filename?: string, }, name: string, user: { id?: number, }, }
Response Body
{

}

PATCH /instructors/{id}

Update an existing instructor

Request Body
{
  bio: string,

+ flags: List<'connect' | 'reflect' | 'fitnation' | 'celebrity'>, image: { data?: string, filename?: string, }, name: string, user: { id?: number, }, }
Response Body
{

+ data: { + bio?: string, + flags?: List<'connect' | 'reflect' | 'fitnation' | 'celebrity'>, + id?: number, + image: { + default?: string, + large?: string, + medium?: string, + small?: string, + }, + name?: string, + user: { + id?: number, + }, + }, }

GET /studios

Get a list of all studios

Response Body
{

}

GET /studios

Get a list of all studios

Response Body
{

+ data: List<{ + code?: string, + country: { + code?: string, + id?: number, + }, + id?: number, + name?: string, + }>, }

GET /studios/{id}

Get this specific studio

Response Body
{

}

GET /studios/{id}

Get this specific studio

Response Body
{

+ data: { + code?: string, + country: { + code?: string, + id?: number, + }, + id?: number, + name?: string, + }, }

GET /features

Get a list of all available features

Response Body
{

}

GET /features

Get a list of all available features

Response Body
{

+ data: List<{ + code: string, + defaultValue: record, + description: string, + id?: number, + inputType: 'string' | 'number' | 'boolean' | 'enum', + name: string, + sortOrder: number, + usedBy: List<'client' | 'server'>, + validation: { + isNullable: bool, + maxChoices: number, + maxLength: number, + maxValue: number, + minChoices: number, + minLength: number, + minValue: number, + options: List<string>, + precision: number, + regexPattern: string, + }, + }>, }

POST /features

Create a new feature

Request Body
{
- code: string,

defaultValue: record, description: string, - inputType: string, - name: string,

sortOrder: number, - usedBy: List<string>,

validation: { isNullable: bool, maxChoices: number, maxLength: number, maxValue: number, minChoices: number, minLength: number, minValue: number, options: List<string>, precision: number, regexPattern: string, }, }
Response Body
{

}

POST /features

Create a new feature

Request Body
{

+ code?: string, defaultValue: record, description: string,

+ inputType: 'string' | 'number' | 'boolean' | 'enum', + name?: string, sortOrder: number,

+ usedBy: List<'client' | 'server'>, validation: { isNullable: bool, maxChoices: number, maxLength: number, maxValue: number, minChoices: number, minLength: number, minValue: number, options: List<string>, precision: number, regexPattern: string, }, }
Response Body
{

+ data: { + code: string, + defaultValue: record, + description: string, + id?: number, + inputType: 'string' | 'number' | 'boolean' | 'enum', + name: string, + sortOrder: number, + usedBy: List<'client' | 'server'>, + validation: { + isNullable: bool, + maxChoices: number, + maxLength: number, + maxValue: number, + minChoices: number, + minLength: number, + minValue: number, + options: List<string>, + precision: number, + regexPattern: string, + }, + }, }

GET /features/{id}

Get a specific feature

Response Body
{

}

GET /features/{id}

Get a specific feature

Response Body
{

+ data: { + code: string, + defaultValue: record, + description: string, + id?: number, + inputType: 'string' | 'number' | 'boolean' | 'enum', + name: string, + sortOrder: number, + usedBy: List<'client' | 'server'>, + validation: { + isNullable: bool, + maxChoices: number, + maxLength: number, + maxValue: number, + minChoices: number, + minLength: number, + minValue: number, + options: List<string>, + precision: number, + regexPattern: string, + }, + }, }

PUT /features/{id}

Update an existing feature

Request Body
{
  code: string,
  defaultValue: record,
  description: string,
- inputType: string,

name: string, sortOrder: number, - usedBy: List<string>,

validation: { isNullable: bool, maxChoices: number, maxLength: number, maxValue: number, minChoices: number, minLength: number, minValue: number, options: List<string>, precision: number, regexPattern: string, }, }
Response Body
{

}

PUT /features/{id}

Update an existing feature

Request Body
{
  code: string,
  defaultValue: record,
  description: string,

+ inputType: 'string' | 'number' | 'boolean' | 'enum', name: string, sortOrder: number,

+ usedBy: List<'client' | 'server'>, validation: { isNullable: bool, maxChoices: number, maxLength: number, maxValue: number, minChoices: number, minLength: number, minValue: number, options: List<string>, precision: number, regexPattern: string, }, }
Response Body
{

+ data: { + code: string, + defaultValue: record, + description: string, + id?: number, + inputType: 'string' | 'number' | 'boolean' | 'enum', + name: string, + sortOrder: number, + usedBy: List<'client' | 'server'>, + validation: { + isNullable: bool, + maxChoices: number, + maxLength: number, + maxValue: number, + minChoices: number, + minLength: number, + minValue: number, + options: List<string>, + precision: number, + regexPattern: string, + }, + }, }

GET /songs

Get a list of songs

Response Body
{

}

GET /songs

Get a list of songs

Response Body
{

+ data: List<{ + album: { + id?: number, + name?: string, + }, + artist: List<List<undefined>>, + coverArtUrl?: string, + duration: { + seconds: number, + text: string, + }, + genres: List<List<undefined>>, + id?: number, + isExplicit?: bool, + isrc?: string, + label: { + id?: number, + name?: string, + }, + labelOwner: { + id?: number, + name?: string, + }, + licenseDetails: { + label: record, + publisher: record, + }, + licensedIn?: List<string>, + name?: string, + yearPublished?: number, + }>, }

GET /songs/{id}

Get a specific song

Response Body
{

}

GET /songs/{id}

Get a specific song

Response Body
{

+ data: { + album: { + id?: number, + name?: string, + }, + artist: List<List<undefined>>, + coverArtUrl?: string, + duration: { + seconds: number, + text: string, + }, + genres: List<List<undefined>>, + id?: number, + isExplicit?: bool, + isrc?: string, + label: { + id?: number, + name?: string, + }, + labelOwner: { + id?: number, + name?: string, + }, + licenseDetails: { + label: record, + publisher: record, + }, + licensedIn?: List<string>, + name?: string, + yearPublished?: number, + }, }

GET /songs/{id}/playlists

Get all playlists that contain this song

Response Body
{

}

GET /songs/{id}/playlists

Get all playlists that contain this song

Response Body
{

+ data: List<{ + createdBy: { + id?: number, + }, + dateCreated?: number, + dateModified?: number, + id?: number, + name?: string, + tracks: List<List<undefined>>, + }>, }

GET /playlists

Get a list of playlists

Response Body
{

}

GET /playlists

Get a list of playlists

Response Body
{

+ data: List<{ + createdBy: { + id?: number, + }, + dateCreated?: number, + dateModified?: number, + id?: number, + name?: string, + tracks: List<List<undefined>>, + }>, }

POST /playlists

Create a new playlist

Response Body
{

}

POST /playlists

Create a new playlist

Response Body
{

+ data: { + createdBy: { + id?: number, + }, + dateCreated?: number, + dateModified?: number, + id?: number, + name?: string, + tracks: List<List<undefined>>, + }, }

GET /playlists/{id}

Get a specific playlist

Response Body
{

}

GET /playlists/{id}

Get a specific playlist

Response Body
{

+ data: { + createdBy: { + id?: number, + }, + dateCreated?: number, + dateModified?: number, + id?: number, + name?: string, + tracks: List<List<undefined>>, + }, }

PUT /playlists/{playlistId}/tracks/{songId}

Edit the specific song on this playlist

Response Body
{

}

PUT /playlists/{playlistId}/tracks/{songId}

Edit the specific song on this playlist

Response Body
{

+ data: List<{ + addedBy?: number, + dateAdded?: number, + playlistId?: number, + songId?: number, + trackOrder: number, + }>, }

GET /firmware

Get a list of Firmware Updates

Response Body
{

}

GET /firmware

Get a list of the available firmware updates

Response Body
{

+ data: List<{ + appVersions: { + android: { + maxVersion?: string, + minVersion?: string, + }, + ios: { + maxVersion?: string, + minVersion?: string, + }, + screen: { + maxVersion?: string, + minVersion?: string, + }, + }, + dateReleased?: number, + dateRequired?: number, + id?: number, + name?: string, + releaseNotes?: string, + status?: 'draft' | 'published' | 'trash', + supportedModels?: List<string>, + type?: 'hardware' | 'tablet' | 'reflect', + updateFile: { + data?: string, + filename?: string, + }, + url?: string, + version?: string, + }>, }

POST /firmware

Create Firmware Update

Request Body
{
- appVersions?: {
-   android?: {

maxVersion?: string, minVersion?: string, }, - ios?: {

maxVersion?: string, minVersion?: string, }, - screen?: {

maxVersion?: string, minVersion?: string, }, }, dateReleased?: number, dateRequired?: number, name?: string, releaseNotes?: string, - status?: string,

supportedModels?: List<string>, - type?: string, - updateFile?: {

data?: string, filename?: string, }, version?: string, }
Response Body
{

}

POST /firmware

Create Firmware Update

Request Body
{

+ appVersions: { + android: { maxVersion?: string, minVersion?: string, },

+ ios: { maxVersion?: string, minVersion?: string, },

+ screen: { maxVersion?: string, minVersion?: string, }, }, dateReleased?: number, dateRequired?: number, name?: string, releaseNotes?: string,

+ status?: 'draft' | 'published' | 'trash', supportedModels?: List<string>,

+ type?: 'hardware' | 'tablet' | 'reflect', + updateFile: { data?: string, filename?: string, }, version?: string, }
Response Body
{

+ data: { + appVersions: { + android: { + maxVersion?: string, + minVersion?: string, + }, + ios: { + maxVersion?: string, + minVersion?: string, + }, + screen: { + maxVersion?: string, + minVersion?: string, + }, + }, + dateReleased?: number, + dateRequired?: number, + id?: number, + name?: string, + releaseNotes?: string, + status?: 'draft' | 'published' | 'trash', + supportedModels?: List<string>, + type?: 'hardware' | 'tablet' | 'reflect', + updateFile: { + data?: string, + filename?: string, + }, + url?: string, + version?: string, + }, }

GET /firmware/{id}

Get Firmware Update by id

Response Body
{

}

GET /firmware/{id}

Get Firmware Update by ID

Response Body
{

+ data: { + appVersions: { + android: { + maxVersion?: string, + minVersion?: string, + }, + ios: { + maxVersion?: string, + minVersion?: string, + }, + screen: { + maxVersion?: string, + minVersion?: string, + }, + }, + dateReleased?: number, + dateRequired?: number, + id?: number, + name?: string, + releaseNotes?: string, + status?: 'draft' | 'published' | 'trash', + supportedModels?: List<string>, + type?: 'hardware' | 'tablet' | 'reflect', + updateFile: { + data?: string, + filename?: string, + }, + url?: string, + version?: string, + }, }

PUT /firmware/{id}

Update Firmware Update

Request Body
{
- appVersions?: {
-   android?: {

maxVersion?: string, minVersion?: string, }, - ios?: {

maxVersion?: string, minVersion?: string, }, - screen?: {

maxVersion?: string, minVersion?: string, }, }, dateReleased?: number, dateRequired?: number, name?: string, releaseNotes?: string, - status?: string,

supportedModels?: List<string>, - type?: string, - updateFile?: {

data?: string, filename?: string, }, version?: string, }
Response Body
{

}

PUT /firmware/{id}

Update Firmware Update

Request Body
{

+ appVersions: { + android: { maxVersion?: string, minVersion?: string, },

+ ios: { maxVersion?: string, minVersion?: string, },

+ screen: { maxVersion?: string, minVersion?: string, }, }, dateReleased?: number, dateRequired?: number, name?: string, releaseNotes?: string,

+ status?: 'draft' | 'published' | 'trash', supportedModels?: List<string>,

+ type?: 'hardware' | 'tablet' | 'reflect', + updateFile: { data?: string, filename?: string, }, version?: string, }
Response Body
{

+ data: { + appVersions: { + android: { + maxVersion?: string, + minVersion?: string, + }, + ios: { + maxVersion?: string, + minVersion?: string, + }, + screen: { + maxVersion?: string, + minVersion?: string, + }, + }, + dateReleased?: number, + dateRequired?: number, + id?: number, + name?: string, + releaseNotes?: string, + status?: 'draft' | 'published' | 'trash', + supportedModels?: List<string>, + type?: 'hardware' | 'tablet' | 'reflect', + updateFile: { + data?: string, + filename?: string, + }, + url?: string, + version?: string, + }, }

GET /brightback/{userId}

Get url for user cancel flow

Response Body
{

}

GET /brightback/{userId}

Get URL for user cancel/save workflow.

Response Body
{

+ data: string, }
WORK IN PROGRESS