Edge Impulse User API
The User API from Edge Impulse — 43 operation(s) for user.
The User API from Edge Impulse — 43 operation(s) for user.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/edge-impulse-user-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Edge Impulse User API
version: 1.0.0
servers:
- url: https://studio.edgeimpulse.com/v1
security:
- ApiKeyAuthentication: []
- JWTAuthentication: []
- JWTHttpHeaderAuthentication: []
tags:
- name: User
paths:
/api-user-create:
post:
summary: Create user
security: []
description: Create a new user and project
tags:
- User
operationId: createUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateUserResponse'
/api-user-create-evaluate:
post:
summary: Create evaluation user
security: []
description: Creates an evaluation user and a new project, and redirects the user to the new project.
tags:
- User
operationId: createEvaluationUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEvaluationUserResponse'
/api-create-pro-user:
post:
summary: Create Professional Tier user
security: []
description: Create a new user for the Professional Plan and a new project. Note that the Professional plan will not be enabled until the payment is successful.
tags:
- User
operationId: createProTierUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateProTierUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateUserResponse'
/api-user-create-enterprise-trial:
post:
summary: Create enterprise trial user
security: []
description: Creates an enterprise trial user and a new trial organization, and redirects the user to the new organization.
tags:
- User
operationId: createEnterpriseTrialUser
requestBody:
description: Trial request
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEnterpriseTrialUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEnterpriseTrialResponse'
/api-user-need-to-set-password/{usernameOrEmail}:
get:
summary: Get user registration state
security: []
description: Tells whether a user is registered and whether it needs to set its password.
tags:
- User
operationId: getUserNeedToSetPassword
parameters:
- $ref: '#/components/parameters/UsernameOrEmailParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetUserNeedToSetPasswordResponse'
/api/user:
get:
summary: Get current user
description: Get information about the current user. This function is only available through a JWT token.
tags:
- User
operationId: getCurrentUser
parameters:
- $ref: '#/components/parameters/UserExcludeProjectsParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetUserResponse'
post:
summary: Update current user
description: Update user properties such as name. This function is only available through a JWT token.
tags:
- User
operationId: updateCurrentUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
delete:
summary: Delete current user
description: Delete a user. This function is only available through a JWT token, and can only remove the current user.
tags:
- User
operationId: deleteCurrentUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/projects:
get:
summary: Get current user projects
description: Get projects for the current user. This returns all projects regardless of whitelabel. This function is only available through a JWT token.
tags:
- User
operationId: getCurrentUserProjects
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetUserProjectsResponse'
/api/user/convert:
post:
summary: Convert current evaluation user
description: Convert current evaluation user account to regular account.
tags:
- User
operationId: convertCurrentUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ConvertUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/activate:
post:
summary: Activate current user
description: Activate the current user account (requires an activation code). This function is only available through a JWT token.
tags:
- User
operationId: activateCurrentUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ActivateUserOrVerifyEmailRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/request-activation:
post:
summary: Request activation code
description: Request a new activation code for the current user. This function is only available through a JWT token.
tags:
- User
operationId: requestActivationCodeCurrentUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/create-developer-profile:
post:
summary: Create developer profile
description: Create a developer profile for the current active user.
tags:
- User
operationId: createDeveloperProfile
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateDeveloperProfileResponse'
/api/user/trial:
post:
summary: Start enterprise trial
description: Create an enterprise trial for the current user. Users can only go through a trial once.
tags:
- User
operationId: startEnterpriseTrial
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/StartEnterpriseTrialRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEnterpriseTrialResponse'
/api/user/emails:
get:
summary: List emails
description: Get a list of all emails sent by Edge Impulse to the current user. This function is only available through a JWT token, and is not available for all users.
security:
- permissions:
- users:emails:read
tags:
- User
operationId: listEmailsCurrentUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListEmailResponse'
/api/user/photo:
post:
summary: Upload photo
description: Upload a photo for the current user. This function is only available through a JWT token.
tags:
- User
operationId: uploadPhotoCurrentUser
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/UploadUserPhotoRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UploadUserPhotoResponse'
delete:
summary: Delete photo
description: Delete user profile photo. This function is only available through a JWT token.
tags:
- User
operationId: deletePhotoCurrentUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/change-password:
post:
summary: Change password current user
description: Change the password for the current user account. This function is only available through a JWT token.
tags:
- User
operationId: changePasswordCurrentUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ChangePasswordRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/organizations:
get:
summary: Get organizations
description: List all organizations that the current user is a member of. This function is only available through a JWT token.
tags:
- User
operationId: listOrganizationsCurrentUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListOrganizationsResponse'
/api/users/buckets:
get:
summary: Get buckets current user
description: List all organizational storage buckets that the current user has access to. This function is only available through a JWT token.
tags:
- User
operationId: listOrganizationBucketsCurrentUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListOrganizationBucketsUserResponse'
/api/user/by-third-party-activation-code:
post:
summary: Get user by third party activation code
description: Get information about a user through an activation code. This function is only available through a JWT token.
tags:
- User
operationId: getUserByThirdPartyActivationCode
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserByThirdPartyActivationRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetUserResponse'
/api/user/activate-by-third-party-activation-code:
post:
summary: Activate user by third party activation code
description: Activate a user that was created by a third party. This function is only available through a JWT token.
tags:
- User
operationId: activateUserByThirdPartyActivationCode
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ActivateUserByThirdPartyActivationCodeRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetJWTResponse'
/api/user/accept-tos:
post:
summary: Accept Terms of Service
description: Accept Terms of Service.
tags:
- User
operationId: acceptTermsOfService
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/dismiss-notification:
post:
summary: Dismiss a notification
description: Dismiss a notification
tags:
- User
operationId: userDismissNotification
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserDismissNotificationRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/mfa/totp/create-key:
post:
summary: Generate a new TOTP MFA key
description: Creates a new MFA key, only allowed if the user has no MFA configured. TOTP tokens use SHA-1 algorithm.
tags:
- User
operationId: userGenerateNewTotpMfaKey
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UserGenerateNewMfaKeyResponse'
/api/user/mfa/totp/set-key:
post:
summary: Set TOTP MFA key
description: Enable MFA on this account using an TOTP token. First create a new key via `userGenerateNewTotpMfaKey`.
tags:
- User
operationId: userSetTotpMfaKey
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserSetTotpMfaKeyRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UserSetTotpMfaKeyResponse'
/api/user/mfa/totp/clear:
post:
summary: Remove TOTP MFA key
description: Disable MFA on this account using an TOTP token.
tags:
- User
operationId: userDeleteTotpMfaKey
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UserDeleteTotpMfaKeyRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/subscription/upgrade:
post:
summary: Upgrade subscription
description: Upgrade the current subscription.
tags:
- User
operationId: userUpgradeSubscription
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpgradeSubscriptionRequest'
responses:
'302':
description: A redirect to the payment portal
/api/user/subscription/cancel:
post:
summary: Cancel subscription
description: Cancel the current subscription.
tags:
- User
operationId: userCancelSubscription
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DowngradeSubscriptionRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/subscription/undo-cancel:
post:
summary: Undo subscription cancellation
description: 'Stop a pending cancellation. If you schedule a subscription to be canceled, and
the subscription hasn''t yet reached the end of the billing period, you can stop
the cancellation. After a subscription has been canceled, you can''t reactivate it.
'
tags:
- User
operationId: userUndoCancelSubscription
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/user/subscription/metrics:
get:
summary: Get user billable compute metrics
description: Get billable compute metrics for a user. This function is only available to users with an active subscription.
tags:
- User
operationId: userGetSubscriptionMetrics
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UserSubscriptionMetricsResponse'
/api/users/{userId}:
get:
summary: Get user
description: Get information about a user. This function is only available through a JWT token.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: getUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GetUserResponse'
post:
summary: Update user
description: Update user properties such as name. This function is only available through a JWT token.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: updateUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
delete:
summary: Delete user
description: Delete a user. This function is only available through a JWT token, and can only remove the current user.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: deleteUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteUserRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/activate:
post:
summary: Activate user
description: Activate a user account (requires an activation code). This function is only available through a JWT token.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: activateUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ActivateUserOrVerifyEmailRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/request-activation:
post:
summary: Request activation code
description: Request a new activation code. This function is only available through a JWT token.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: requestActivationCodeUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/emails:
get:
summary: List emails
description: Get a list of all emails sent by Edge Impulse to a user. This function is only available through a JWT token, and is not available for all users.
security:
- permissions:
- users:emails:read
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: listEmailsUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListEmailResponse'
/api/users/{userId}/photo:
post:
summary: Upload photo
description: Upload a photo for a user. This function is only available through a JWT token, and is not available for all users.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: uploadPhotoUser
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/UploadUserPhotoRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UploadUserPhotoResponse'
/api/users/{userId}/change-password:
post:
summary: Change password
description: Change the password for a user account. This function is only available through a JWT token.
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: changePasswordUser
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ChangePasswordRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/set-password:
post:
summary: Set password for SSO user
description: Set the password for a new SSO user. This function is only available through an SSO access token.
security: []
tags:
- User
parameters:
- $ref: '#/components/parameters/UserIdParameter'
operationId: setUserPassword
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SetUserPasswordRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/organizations:
get:
summary: Get organizations
description: List all organizations for a user. This function is only available through a JWT token.
tags:
- User
operationId: listOrganizationsUser
parameters:
- $ref: '#/components/parameters/UserIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListOrganizationsResponse'
/api/users/{userId}/buckets:
get:
summary: Get buckets
description: List all organizational storage buckets that a user has access to. This function is only available through a JWT token.
tags:
- User
operationId: listOrganizationBucketsUser
parameters:
- $ref: '#/components/parameters/UserIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListOrganizationBucketsUserResponse'
/api/users/{userId}/feedback:
post:
summary: Send feedback
description: Send feedback to Edge Impulse or get in touch with sales.
tags:
- User
operationId: sendUserFeedback
parameters:
- $ref: '#/components/parameters/UserIdParameter'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SendUserFeedbackRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/upgrade:
post:
summary: Send upgrade request
description: Send an upgrade to Enterprise request to Edge Impulse.
tags:
- User
operationId: sendUserUpgradeRequest
parameters:
- $ref: '#/components/parameters/UserIdParameter'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EnterpriseUpgradeOrTrialExtensionRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api/users/{userId}/trials:
get:
summary: Get enterprise trials
description: Get a list of all enterprise trials for a user. This function is only available through a JWT token.
tags:
- User
operationId: listEnterpriseTrialsUser
parameters:
- $ref: '#/components/parameters/UserIdParameter'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ListEnterpriseTrialsResponse'
/api-user-request-reset-password:
post:
summary: Request reset password
security: []
description: Request a password reset link for a user.
tags:
- User
operationId: requestResetPassword
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RequestResetPasswordRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api-user-reset-password:
post:
summary: Reset password
security: []
description: Reset the password for a user.
tags:
- User
operationId: resetPassword
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ResetPasswordRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
/api-user-verify-reset-password-code:
post:
summary: Verify reset password code
security: []
description: Verify whether the reset password code for the user is valid.
tags:
- User
operationId: verifyResetPassword
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/VerifyResetPasswordRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GenericApiResponse'
components:
schemas:
UserSubscriptionMetricsResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
properties:
metrics:
type: object
required:
- computeMinutesCpu
- computeMinutesGpu
- computeMinutesTotal
- computeMinutesLimit
properties:
computeMinutesCpu:
type: number
description: Total compute of all user jobs, running on CPU, in the current billing period.
computeMinutesGpu:
type: number
description: Total compute of all user jobs, running on GPU, in the current billing period.
computeMinutesTotal:
type: number
description: Total compute of all user jobs in the current billing period, calculated as CPU + 3*GPU compute.
computeMinutesLimit:
type: number
description: Overall compute limit for the current billing period.
computeResetDate:
type: string
format: date-time
description: The date at which the current compute billing period will reset.
User:
type: object
required:
- id
- username
- name
- email
- created
- staffInfo
- pending
- activated
- mfaConfigured
properties:
id:
type: integer
example: 1
username:
type: string
example: janjongboom
name:
type: string
example: Jan Jongboom
email:
type: string
example: quijote@edgeimpulse.com
photo:
type: string
example: https://usercdn.edgeimpulse.com/photos/1.jpg
created:
type: string
format: date-time
example: '2019-08-31T17:32:28Z'
lastSeen:
type: string
format: date-time
example: '2019-08-31T17:32:28Z'
staffInfo:
$ref: '#/components/schemas/StaffInfo'
pending:
type: boolean
lastTosAcceptanceDate:
type: string
format: date-time
example: '2019-08-31T17:32:28Z'
jobTitle:
type: string
example: Software Engineer
permissions:
description: List of permissions the user has
type: array
items:
$ref: '#/components/schemas/Permission'
companyName:
type: string
example: Edge Impulse Inc.
activated:
type: boolean
description: Whether the user has activated their account or not.
mfaConfigured:
type: boolean
description: Whether the user has configured multi-factor authentication
stripeCustomerId:
type: string
description: Stripe customer ID, if any.
hasPendingPayments:
type: boolean
description: Whether the user has pending payments.
tier:
$ref: '#/components/schemas/UserTierEnum'
ActivateUserOrVerifyEmailRequest:
type: object
required:
- code
properties:
code:
type: string
description: Activation or verification code (sent via email)
UserDeleteTotpMfaKeyRequest:
type: object
required:
- totpToken
properties:
totpToken:
type: string
description: Valid TOTP token
CreateUserResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
properties:
redirectUrl:
type: string
description: URL to redirect user to.
id:
type: integer
description: User unique identifier
ListOrganizationBucketsUserResponse:
allOf:
- $ref: '#/components/schemas/GenericApiResponse'
- type: object
required:
- buckets
properties:
buckets:
type: array
items:
type: object
required:
- id
- organizationId
- organizationName
- bucket
- region
- whitelabelId
properties:
id:
type: integer
organizationId:
type: integer
organizationName:
type: string
bucket:
type: string
description: S3 bucket
region:
type:
# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/edge-impulse/refs/heads/main/openapi/edge-impulse-user-api-openapi.yml