Edge Impulse Whitelabels API
The Whitelabels API from Edge Impulse — 5 operation(s) for whitelabels.
The Whitelabels API from Edge Impulse — 5 operation(s) for whitelabels.
openapi: 3.0.0
info:
title: Edge Impulse Whitelabels API
version: 1.0.0
servers:
- url: https://studio.edgeimpulse.com/v1
security:
- ApiKeyAuthentication: []
- JWTAuthentication: []
- JWTHttpHeaderAuthentication: []
tags:
- name: Whitelabels
paths:
/api/whitelabels:
get:
summary: List the registered white labels
description: Retrieve the list of registered white labels.
x-internal-api: true
security:
- permissions:
- whitelabels:read
tags:
- Whitelabels
operationId: getAllWhitelabels
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetAllWhitelabelsResponse'
post:
summary: Create a new white label
description: Create a new white label
x-internal-api: true
security:
- permissions:
- whitelabels:write
tags:
- Whitelabels
operationId: createWhitelabel
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateWhitelabelRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateWhitelabelResponse'
/api/whitelabel/{whitelabelIdentifier}:
get:
summary: White label information
description: Retrieve all the information about this white label.
x-internal-api: true
security:
- permissions:
- whitelabels:read
tags:
- Whitelabels
operationId: getWhitelabel
parameters:
- $ref: '#/components/parameters/WhitelabelIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetWhitelabelResponse'
put:
summary: Update white label
description: Update the white label with the given id.
x-internal-api: true
security:
- permissions:
- whitelabels:write
tags:
- Whitelabels
operationId: updateWhitelabel
parameters:
- $ref: '#/components/parameters/WhitelabelIdParameter'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateWhitelabelInternalRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
delete:
summary: Deletes a white label
description: Deletes the white label with the given id.
x-internal-api: true
security:
- permissions:
- whitelabels:write
tags:
- Whitelabels
operationId: deleteWhitelabel
parameters:
- $ref: '#/components/parameters/WhitelabelIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/whitelabel/{whitelabelIdentifier}/domain:
get:
summary: Get white label domain
description: Get a white label domain given its unique identifier.
operationId: getWhitelabelDomain
security: []
tags:
- Whitelabels
parameters:
- $ref: '#/components/parameters/WhitelabelIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetWhitelabelDomainResponse'
/api/whitelabel/{whitelabelIdentifier}/deploymentTargets:
post:
summary: Update deployment targets
description: Update some or all of the deployment targets enabled for this white label.
operationId: updateDeploymentTargets
tags:
- Whitelabels
parameters:
- $ref: '#/components/parameters/WhitelabelIdParameter'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateWhitelabelDeploymentTargetsRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/whitelabel/{whitelabelIdentifier}/impulse/blocks:
get:
summary: Get impulse blocks
description: Lists all possible DSP and ML blocks available for this white label.
operationId: getAllImpulseBlocks
tags:
- Whitelabels
parameters:
- $ref: '#/components/parameters/WhitelabelIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetImpulseBlocksResponse'
components:
schemas:
BlockDisplayCategory:
description: Category to display this block in the UI.
type: string
enum:
- classical
- tao
BlockType:
type: string
enum:
- official
- personal
- enterprise
- pro-or-enterprise
- community
LearnBlock:
type: object
required:
- type
- title
- author
- description
- name
- recommend
- blockType
properties:
type:
type: string
example: spectral-analysis
title:
type: string
example: Spectral features
author:
type: string
example: Edge Impulse Inc.
description:
type: string
name:
type: string
example: Spectral analysis
recommended:
type: boolean
organizationModelId:
type: integer
publicProjectTierAvailability:
$ref: '#/components/schemas/PublicProjectTierAvailability'
isPublicEnterpriseOnly:
type: boolean
description: Whether this block is publicly available to only enterprise users
blockType:
$ref: '#/components/schemas/BlockType'
displayCategory:
$ref: '#/components/schemas/BlockDisplayCategory'
UpdateWhitelabelDeploymentTargetsRequest:
type: object
properties:
targets:
type: array
description: The names of the deployment targets that are enabled for this whitelabel.
items:
type: string
GetWhitelabelResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
properties:
whitelabel:
$ref: '#/components/schemas/Whitelabel'
CreateWhitelabelRequest:
type: object
required:
- name
- domain
- ownerOrganizationId
properties:
name:
type: string
example: Octopus's Garden
description: The name of the white label.
domain:
type: string
example: underthesea.com
description: The domain where the white label lives.
ownerOrganizationId:
type: integer
identityProviders:
type: array
items:
type: string
description: The list of allowed identity providers.
example: '[google, okta, github]'
allowPasswordAuth:
type: boolean
description: Whether this white label accepts password based authentication.
deploymentTargets:
type: array
items:
type: string
description: The list of deployment targets to show on the UI
example: '[''C++ library'', ''Arduino library'', ''Arduino Nano 33 BLE Sense'']'
documentationUrl:
type: string
example: https://docs.edgeimpulse.com/renesas/
description: Custom documentation URL
allowSignup:
type: boolean
description: Whether this white label allow sign ups or not.
allowFreeProjects:
type: boolean
description: Whether this white label allows the creation of free projects.
sandboxed:
type: boolean
description: Whether this white label should work in sandboxed mode or not.
exposePublicProjects:
type: boolean
description: Whether public projects created in this white label scope should be exposed through the Public Projects API or not.
learningBlocks:
type: array
items:
type: string
description: The list of learning block types to show on the UI
example: '[''keras'']'
organizationsLimit:
type: integer
nullable: true
description: The maximum number of organizations that can be created under this white label.
Theme:
type: object
required:
- id
- name
- favicon
- logos
- colors
properties:
id:
type: integer
ownerUserId:
type: integer
ownerOrganizationId:
type: integer
name:
type: string
favicon:
type: object
properties:
favicon32:
type: string
favicon57:
type: string
favicon76:
type: string
favicon96:
type: string
favicon120:
type: string
favicon128:
type: string
favicon144:
type: string
favicon152:
type: string
favicon180:
type: string
favicon228:
type: string
logos:
type: object
properties:
primary:
type: string
primaryPng:
type: string
primaryWhite:
type: string
loginLogo:
type: string
loginLogoWhite:
type: string
mark:
type: string
markWhite:
type: string
deviceLogo:
type: string
colors:
type: object
properties:
primaryColor:
type: string
primaryColorRgb:
type: array
items:
type: number
primaryColorGradientEnd:
type: string
GetWhitelabelDomainResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
required:
- domain
properties:
domain:
type: string
logo:
type: string
CreateWhitelabelResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
required:
- id
- themeId
properties:
id:
type: integer
description: Unique whitelabel identifier
themeId:
type: integer
description: Unique identifier for the theme associated with the white label
PublicProjectTierAvailability:
description: For public blocks, this indicates the project tiers for which this block is available.
type: string
enum:
- enterprise-only
- pro-or-enterprise
- all-projects
GetAllWhitelabelsResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
required:
- whitelabels
properties:
whitelabels:
type: array
items:
$ref: '#/components/schemas/Whitelabel'
GetImpulseBlocksResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
required:
- inputBlocks
- dspBlocks
- learnBlocks
properties:
inputBlocks:
type: array
items:
$ref: '#/components/schemas/InputBlock'
dspBlocks:
type: array
items:
$ref: '#/components/schemas/DSPBlock'
learnBlocks:
type: array
items:
$ref: '#/components/schemas/LearnBlock'
DSPBlock:
type: object
required:
- type
- title
- author
- description
- name
- recommend
- experimental
- latestImplementationVersion
- blockType
properties:
type:
type: string
example: spectral-analysis
title:
type: string
example: Spectral features
author:
type: string
example: Edge Impulse Inc.
description:
type: string
name:
type: string
example: Spectral analysis
recommended:
type: boolean
experimental:
type: boolean
latestImplementationVersion:
type: integer
organizationId:
type: integer
organizationDspId:
type: integer
blockType:
$ref: '#/components/schemas/BlockType'
namedAxes:
type: array
items:
$ref: '#/components/schemas/DSPNamedAxis'
ProjectType:
type: string
enum:
- kws
- audio
- object-detection
- image
- accelerometer
- other
UpdateWhitelabelInternalRequest:
type: object
properties:
organizationsLimit:
type: integer
nullable: true
description: The maximum number of organizations that can be created under this white label.
InputBlock:
type: object
required:
- type
- title
- author
- description
- name
- recommend
- blockType
properties:
type:
type: string
enum:
- time-series
- image
- features
title:
type: string
example: Time series
author:
type: string
example: Edge Impulse Inc.
description:
type: string
name:
type: string
example: Time series
recommended:
type: boolean
blockType:
$ref: '#/components/schemas/BlockType'
DevelopmentBoardResponse:
type: object
required:
- id
- name
- image
- docsUrl
properties:
id:
type: integer
name:
type: string
image:
type: string
docsUrl:
type: string
DeploymentOptionsOrder:
type: array
description: Optional attribute allowing a whitelabel to customize the order of deployment options in the deployment view, given as an in-order list of deployment options.
items:
type: string
description: Deployment option name
example: org-1
DSPNamedAxis:
type: object
required:
- name
- description
- required
properties:
name:
type: string
description:
type: string
required:
type: boolean
GenericApiResponse:
type: object
required:
- success
properties:
success:
type: boolean
description: Whether the operation succeeded
error:
type: string
description: Optional error description (set if 'success' was false)
Whitelabel:
type: object
required:
- id
- name
- domain
- themeId
- identityProviders
- allowPasswordAuth
- deploymentTargets
- allDeploymentTargets
- allowSignup
- allowFreeProjects
- supportedProjectTypes
- allowNewProjectUi
- learningBlocks
- allLearningBlocks
- developmentBoards
- allDevelopmentBoards
properties:
id:
type: integer
name:
type: string
domain:
type: string
ownerOrganizationId:
type: integer
themeId:
type: integer
theme:
$ref: '#/components/schemas/Theme'
identityProviders:
type: array
items:
type: string
allowPasswordAuth:
type: boolean
deploymentTargets:
description: List of deployment targets enabled for this white label
type: array
items:
type: string
allDeploymentTargets:
description: List of all supported deployment targets
type: array
items:
type: string
customDeploymentBlocks:
description: List of custom deployment blocks available to this white label
type: array
items:
type: object
required:
- name
- id
properties:
name:
type: string
description: The name of the custom deployment block
id:
type: number
description: The custom deployment block ID
deploymentOptionsOrder:
$ref: '#/components/schemas/DeploymentOptionsOrder'
allowSignup:
type: boolean
allowFreeProjects:
type: boolean
exposePublicProjects:
type: boolean
defaultDeploymentTarget:
type: string
description: The name of the default deployment target for this white label
nullable: true
example: C++ Library
supportedProjectTypes:
type: array
items:
$ref: '#/components/schemas/ProjectType'
allowNewProjectUi:
type: boolean
description: Whether the new project UI should be enabled for this white label or not.
learningBlocks:
description: List of learning blocks enabled for this white label
type: array
items:
type: string
allLearningBlocks:
description: List of all supported learning blocks
type: array
items:
type: object
required:
- title
- type
properties:
title:
type: string
description: The name of the learning block
type:
type: string
description: The learning block type
developmentBoards:
type: array
items:
$ref: '#/components/schemas/DevelopmentBoardResponse'
allDevelopmentBoards:
type: array
items:
$ref: '#/components/schemas/DevelopmentBoardResponse'
organizationsLimit:
type: integer
description: The maximum number of organizations that can be created under this white label.
parameters:
WhitelabelIdParameter:
name: whitelabelIdentifier
in: path
required: true
description: Whitelabel ID
schema:
type: integer
securitySchemes:
ApiKeyAuthentication:
type: apiKey
in: header
name: x-api-key
JWTAuthentication:
type: apiKey
in: cookie
name: jwt
JWTHttpHeaderAuthentication:
type: apiKey
in: header
name: x-jwt-token