The Edge Impulse API exposes programmatic access to most functionality in the studio. You can use the API to edit the labels of many samples at once, train models, or create new impulses. In addition, you can subscribe to events, such as when a new file was processed by the ingestion service. You authenticate with the API using an API Key or with a username/password, see API Authentication Types. The API is available at:
https://studio.edgeimpulse.com/v1
The API is described in OpenAPI format, which can be used to generate clients in many languages. The OpenAPI definition file is located here.
Jobs started through the API are subject to the same usage limits (such as compute time used) as through the studio UI.

API authentication types

Security SchemeTypeInputName
ApiKeyAuthenticationapiKeyheaderx-api-key
JWTAuthenticationapiKeycookiejwt
JWTHttpHeaderAuthenticationapiKeyheaderx-jwt-token

API key

An Edge Impulse API key can be obtained through your Edge Impulse Studio project’s dashboard. At the top of the page, click on the Keys button to see your project’s available API keys, and to generate new keys.

Edge Impulse project API keys

JWT token

A JWT token can be acquired via the Edge Impulse API Get JWT token request with your Edge Impulse username and password. Example
curl --request POST \
--url https://studio.edgeimpulse.com/v1/api-login \
--header 'content-type: application/json' \
--data-raw '{"username": "edge-user-01", "password": "reprehenderit ea"}'

Test the API requests from the API Documentation

If you want to test your API requests directly from this documentation, you can use the provided widget:

Test API request

And set your x-api-key or x-jwt-token header or your jwt cookie:

Set authorization header