Edge Impulse · Authentication Profile

Edge Impulse Authentication

Authentication

Authentication profile for the Edge Impulse API surface. Three key-based schemes are declared in the specs harvested into this repo; the currently published spec adds a fourth, an OAuth2 scheme with four flows. Which scheme you need is operation-dependent and stated in each operation description: project-scoped reads and writes take x-api-key, while user-scoped and organization-scoped operations say "only available through a JWT token".

Edge Impulse secures its APIs with apiKey across 4 declared security schemes, as derived from its OpenAPI definitions.

Artificial IntelligenceMachine LearningEmbedded Machine LearningEdge AIMLOpsComputer VisionInternet of ThingsModel DeploymentDeveloper Tools
Methods: apiKey Schemes: 4 OAuth flows: API key in: cookie, header

Security Schemes

ApiKeyAuthentication apiKey
· in: header (x-api-key)
JWTAuthentication apiKey
· in: cookie (jwt)
JWTHttpHeaderAuthentication apiKey
· in: header (x-jwt-token)
OAuth2 oauth2
· flows: , , ,

Source

Authentication Profile

Raw ↑
generated: '2026-09-06'
method: searched
source: openapi/edge-impulse-admin-api-openapi.yml, openapi/edge-impulse-auth-api-openapi.yml, openapi/edge-impulse-canary-api-openapi.yml,
  openapi/edge-impulse-cdn-api-openapi.yml, openapi/edge-impulse-classify-api-openapi.yml, openapi/edge-impulse-deployment-api-openapi.yml,
  openapi/edge-impulse-devices-api-openapi.yml, openapi/edge-impulse-dsp-api-openapi.yml, openapi/edge-impulse-emailverification-api-openapi.yml,
  openapi/edge-impulse-export-api-openapi.yml, openapi/edge-impulse-featureflags-api-openapi.yml, openapi/edge-impulse-health-api-openapi.yml
  ... + https://docs.edgeimpulse.com/apis/studio#api-authentication-types + https://studio.edgeimpulse.com/openapi.yml
summary:
  types:
  - apiKey
  api_key_in:
  - cookie
  - header
schemes:
- name: ApiKeyAuthentication
  type: apiKey
  in: header
  parameter: x-api-key
  sources:
  - openapi/edge-impulse-admin-api-openapi.yml
  - openapi/edge-impulse-auth-api-openapi.yml
  - openapi/edge-impulse-canary-api-openapi.yml
  - openapi/edge-impulse-cdn-api-openapi.yml
  - openapi/edge-impulse-classify-api-openapi.yml
  - openapi/edge-impulse-deployment-api-openapi.yml
  - openapi/edge-impulse-devices-api-openapi.yml
  - openapi/edge-impulse-dsp-api-openapi.yml
  - openapi/edge-impulse-emailverification-api-openapi.yml
  - openapi/edge-impulse-export-api-openapi.yml
  - openapi/edge-impulse-featureflags-api-openapi.yml
  - openapi/edge-impulse-health-api-openapi.yml
  - openapi/edge-impulse-impulse-api-openapi.yml
  - openapi/edge-impulse-jobs-api-openapi.yml
  - openapi/edge-impulse-learn-api-openapi.yml
  - openapi/edge-impulse-login-api-openapi.yml
  - openapi/edge-impulse-metrics-api-openapi.yml
  - openapi/edge-impulse-optimization-api-openapi.yml
  - openapi/edge-impulse-organizationblocks-api-openapi.yml
  - openapi/edge-impulse-organizationcreateproject-api-openapi.yml
  - openapi/edge-impulse-organizationdata-api-openapi.yml
  - openapi/edge-impulse-organizationdatacampaigns-api-openapi.yml
  - openapi/edge-impulse-organizationjobs-api-openapi.yml
  - openapi/edge-impulse-organizationpipelines-api-openapi.yml
  - openapi/edge-impulse-organizationportals-api-openapi.yml
  - openapi/edge-impulse-organizations-api-openapi.yml
  - openapi/edge-impulse-performancecalibration-api-openapi.yml
  - openapi/edge-impulse-projects-api-openapi.yml
  - openapi/edge-impulse-raw-data-api-openapi.yml
  - openapi/edge-impulse-themes-api-openapi.yml
  - openapi/edge-impulse-thirdpartyauth-api-openapi.yml
  - openapi/edge-impulse-uploadportal-api-openapi.yml
  - openapi/edge-impulse-user-api-openapi.yml
  - openapi/edge-impulse-whitelabels-api-openapi.yml
- name: JWTAuthentication
  type: apiKey
  in: cookie
  parameter: jwt
  sources:
  - openapi/edge-impulse-admin-api-openapi.yml
  - openapi/edge-impulse-auth-api-openapi.yml
  - openapi/edge-impulse-canary-api-openapi.yml
  - openapi/edge-impulse-cdn-api-openapi.yml
  - openapi/edge-impulse-classify-api-openapi.yml
  - openapi/edge-impulse-deployment-api-openapi.yml
  - openapi/edge-impulse-devices-api-openapi.yml
  - openapi/edge-impulse-dsp-api-openapi.yml
  - openapi/edge-impulse-emailverification-api-openapi.yml
  - openapi/edge-impulse-export-api-openapi.yml
  - openapi/edge-impulse-featureflags-api-openapi.yml
  - openapi/edge-impulse-health-api-openapi.yml
  - openapi/edge-impulse-impulse-api-openapi.yml
  - openapi/edge-impulse-jobs-api-openapi.yml
  - openapi/edge-impulse-learn-api-openapi.yml
  - openapi/edge-impulse-login-api-openapi.yml
  - openapi/edge-impulse-metrics-api-openapi.yml
  - openapi/edge-impulse-optimization-api-openapi.yml
  - openapi/edge-impulse-organizationblocks-api-openapi.yml
  - openapi/edge-impulse-organizationcreateproject-api-openapi.yml
  - openapi/edge-impulse-organizationdata-api-openapi.yml
  - openapi/edge-impulse-organizationdatacampaigns-api-openapi.yml
  - openapi/edge-impulse-organizationjobs-api-openapi.yml
  - openapi/edge-impulse-organizationpipelines-api-openapi.yml
  - openapi/edge-impulse-organizationportals-api-openapi.yml
  - openapi/edge-impulse-organizations-api-openapi.yml
  - openapi/edge-impulse-performancecalibration-api-openapi.yml
  - openapi/edge-impulse-projects-api-openapi.yml
  - openapi/edge-impulse-raw-data-api-openapi.yml
  - openapi/edge-impulse-themes-api-openapi.yml
  - openapi/edge-impulse-thirdpartyauth-api-openapi.yml
  - openapi/edge-impulse-uploadportal-api-openapi.yml
  - openapi/edge-impulse-user-api-openapi.yml
  - openapi/edge-impulse-whitelabels-api-openapi.yml
- name: JWTHttpHeaderAuthentication
  type: apiKey
  in: header
  parameter: x-jwt-token
  sources:
  - openapi/edge-impulse-admin-api-openapi.yml
  - openapi/edge-impulse-auth-api-openapi.yml
  - openapi/edge-impulse-canary-api-openapi.yml
  - openapi/edge-impulse-cdn-api-openapi.yml
  - openapi/edge-impulse-classify-api-openapi.yml
  - openapi/edge-impulse-deployment-api-openapi.yml
  - openapi/edge-impulse-devices-api-openapi.yml
  - openapi/edge-impulse-dsp-api-openapi.yml
  - openapi/edge-impulse-emailverification-api-openapi.yml
  - openapi/edge-impulse-export-api-openapi.yml
  - openapi/edge-impulse-featureflags-api-openapi.yml
  - openapi/edge-impulse-health-api-openapi.yml
  - openapi/edge-impulse-impulse-api-openapi.yml
  - openapi/edge-impulse-jobs-api-openapi.yml
  - openapi/edge-impulse-learn-api-openapi.yml
  - openapi/edge-impulse-login-api-openapi.yml
  - openapi/edge-impulse-metrics-api-openapi.yml
  - openapi/edge-impulse-optimization-api-openapi.yml
  - openapi/edge-impulse-organizationblocks-api-openapi.yml
  - openapi/edge-impulse-organizationcreateproject-api-openapi.yml
  - openapi/edge-impulse-organizationdata-api-openapi.yml
  - openapi/edge-impulse-organizationdatacampaigns-api-openapi.yml
  - openapi/edge-impulse-organizationjobs-api-openapi.yml
  - openapi/edge-impulse-organizationpipelines-api-openapi.yml
  - openapi/edge-impulse-organizationportals-api-openapi.yml
  - openapi/edge-impulse-organizations-api-openapi.yml
  - openapi/edge-impulse-performancecalibration-api-openapi.yml
  - openapi/edge-impulse-projects-api-openapi.yml
  - openapi/edge-impulse-raw-data-api-openapi.yml
  - openapi/edge-impulse-themes-api-openapi.yml
  - openapi/edge-impulse-thirdpartyauth-api-openapi.yml
  - openapi/edge-impulse-uploadportal-api-openapi.yml
  - openapi/edge-impulse-user-api-openapi.yml
  - openapi/edge-impulse-whitelabels-api-openapi.yml
- name: OAuth2
  type: oauth2
  flows:
    authorizationCode:
      authorizationUrl: /v1/oauth/authorize
      tokenUrl: /v1/oauth/token
      scopes:
      - openid
      - email
      - profile
    implicit:
      authorizationUrl: /v1/oauth/authorize
      scopes:
      - openid
      - email
      - profile
    password:
      tokenUrl: /v1/oauth/token
      scopes:
      - openid
      - email
      - profile
    clientCredentials:
      tokenUrl: /v1/oauth/token
      scopes:
      - openid
      - email
      - profile
  sources:
  - https://studio.edgeimpulse.com/openapi.yml
  note: Present in the live published spec but NOT in the openapi/ files harvested into this repo, which
    predate it. The scopes are OIDC identity scopes only — there is no resource-permission scope. See
    scopes/edge-impulse-scopes.yml.
docs: https://docs.edgeimpulse.com/apis/studio#api-authentication-types
description: 'Authentication profile for the Edge Impulse API surface. Three key-based schemes are declared
  in the specs harvested into this repo; the currently published spec adds a fourth, an OAuth2 scheme
  with four flows. Which scheme you need is operation-dependent and stated in each operation description:
  project-scoped reads and writes take x-api-key, while user-scoped and organization-scoped operations
  say "only available through a JWT token".'
api_key_format:
  prefix: ei_
  issued_from: Studio project Dashboard > Keys
  scope: one project
  docs: https://docs.edgeimpulse.com/apis/studio#api-key
  ingestion_only_keys: The live spec adds ingestion-only project API keys (POST /api/{projectId}/apikeys/ingestiononly),
    a narrower credential for data upload.
jwt:
  obtained_by: POST /api-login (operationId login) with username and password
  header: x-jwt-token
  cookie: jwt
  mfa: TOTP MFA endpoints exist (userGenerateNewTotpMfaKey, userSetTotpMfaKey, userDeleteTotpMfaKey).
  docs: https://docs.edgeimpulse.com/apis/studio#jwt-token
other_credentials:
- name: HMAC key
  note: Per-project HMAC keys sign ingestion payloads (addProjectHmacKey / revokeProjectHmacKey). The
    ingestion acquisition format carries a protected/signature block.
- name: Remote management API key
  note: Devices send their project apiKey inside the WebSocket Hello message rather than as an HTTP header.
- name: MCP server credentials
  note: '@edgeimpulse/mcp-server reads EI_API_KEY or EI_JWT_TOKEN from the environment. A JWT there grants
    the agent every project and organization the user can see; a project key does not.'
sso:
  enterprise_only: true
  note: 'SSO and role-based access control are Enterprise-plan features (source: https://www.edgeimpulse.com/pricing).
    The status page lists a Keycloak component and the live spec exposes /api-sso/{usernameOrEmail}.'
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com

Work with this as data

Every security artifact here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/edge-impulse-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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.