Edge Impulse · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Edge Impulse API
19 actions
19 updates
phrasing
extends
openapi/edge-impulse-impulse-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Edge Impulse's API. It is a proposal applied on top of the contract, not a document Edge Impulse publishes.
What the actions change
x-apievangelist-phrasing
Targets 19 · first 16 shown; the file carries all of them
$.info
$.paths['/api/{projectId}/impulse'].get
$.paths['/api/{projectId}/impulse'].post
$.paths['/api/{projectId}/impulse'].delete
$.paths['/api/{projectId}/impulse/new'].post
$.paths['/api/{projectId}/impulse/update'].post
$.paths['/api/{projectId}/impulse/all'].get
$.paths['/api/{projectId}/impulse/get-new-block-id'].post
$.paths['/api/{projectId}/impulse/blocks'].get
$.paths['/api/{projectId}/verify-dsp-block/url'].post
$.paths['/api/{projectId}/impulses'].get
$.paths['/api/{projectId}/impulses-detailed'].get
$.paths['/api/{projectId}/download-impulses-detailed'].get
$.paths['/api/{projectId}/impulse/legacy-set-impulse'].post
$.paths['/api/{projectId}/impulse/{impulseId}/clone/structure'].post
$.paths['/api/{projectId}/impulse/{impulseId}/clone/complete'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Edge Impulse API
version: 1.0.0
extends: openapi/edge-impulse-impulse-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 18
- target: $.paths['/api/{projectId}/impulse'].get
update:
x-apievangelist-phrasing:
intent: Get a project's impulse design
effect: read
questions:
- What input, processing and learning blocks make up my project's default impulse?
- Can I fetch one specific impulse instead of the default one?
instructions:
- text: Show the default impulse for project {projectId}.
slots:
projectId: path.projectId
- text: Get impulse {impulseId} in project {projectId}, enabled blocks only.
slots:
impulseId: query.impulseId
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse'].post
update:
x-apievangelist-phrasing:
intent: Set an impulse's input, DSP and learn blocks
effect: write
questions:
- How do I define the full pipeline of input, signal processing and learning blocks for an Edge Impulse project?
- Can I replace the blocks of an existing impulse in one call?
instructions:
- text: Set the impulse in project {projectId} to input blocks {inputBlocks}, DSP blocks {dspBlocks} and learn blocks {learnBlocks}.
slots:
projectId: path.projectId
inputBlocks: requestBody.inputBlocks
dspBlocks: requestBody.dspBlocks
learnBlocks: requestBody.learnBlocks
- text: Configure impulse {impulseId} with blocks {inputBlocks}, {dspBlocks} and {learnBlocks}.
slots:
impulseId: query.impulseId
inputBlocks: requestBody.inputBlocks
dspBlocks: requestBody.dspBlocks
learnBlocks: requestBody.learnBlocks
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse'].delete
update:
x-apievangelist-phrasing:
intent: Clear an impulse and all its blocks
effect: destructive
questions:
- How do I wipe the impulse design of a project and start over?
- Does clearing an impulse also remove its processing and learning blocks?
instructions:
- text: Clear the default impulse in project {projectId}.
slots:
projectId: path.projectId
- text: Delete impulse {impulseId} and all its blocks from project {projectId}.
slots:
impulseId: query.impulseId
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/new'].post
update:
x-apievangelist-phrasing:
intent: Create a new empty impulse
effect: write
questions:
- Can I add another blank impulse to a project to try a different experiment?
- How do I get the ID of a fresh, empty impulse?
instructions:
- text: Create a new empty impulse in project {projectId} and give me its ID.
slots:
projectId: path.projectId
- text: Add a blank impulse experiment to project {projectId}.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/update'].post
update:
x-apievangelist-phrasing:
intent: Rename or tag an impulse
effect: write
questions:
- How do I rename one of my impulse experiments?
- Can I add tags to an impulse to keep experiments organized?
instructions:
- text: Rename impulse {impulseId} in project {projectId} to {name}.
slots:
impulseId: query.impulseId
projectId: path.projectId
name: requestBody.name
- text: Tag the default impulse of project {projectId} with {tags}.
slots:
projectId: path.projectId
tags: requestBody.tags
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/all'].get
update:
x-apievangelist-phrasing:
intent: Get an impulse including disabled blocks
effect: read
questions:
- Can I see the blocks I disabled in my impulse, not just the active ones?
- Which view of an impulse shows every block regardless of whether it is turned on?
instructions:
- text: Show the impulse for project {projectId} including disabled blocks.
slots:
projectId: path.projectId
- text: Get impulse {impulseId} with its disabled blocks included.
slots:
impulseId: query.impulseId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/get-new-block-id'].post
update:
x-apievangelist-phrasing:
intent: Get an unused block ID for an impulse
effect: read
questions:
- How do I avoid reusing a block ID when building an impulse by hand?
- What ID should a new block in my impulse get?
instructions:
- text: Give me an unused block ID for project {projectId}.
slots:
projectId: path.projectId
- text: Reserve a fresh block number I can use when adding a block to project {projectId}.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/blocks'].get
update:
x-apievangelist-phrasing:
intent: List blocks available for building an impulse
effect: read
questions:
- Which processing and learning blocks can I choose from when designing an impulse?
- What block types does Edge Impulse offer for my project?
instructions:
- text: List all blocks I can add to an impulse in project {projectId}.
slots:
projectId: path.projectId
- text: Show the catalog of available impulse blocks for project {projectId}.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/verify-dsp-block/url'].post
update:
x-apievangelist-phrasing:
intent: Verify a custom DSP block URL
effect: read
questions:
- How can I check that my self-hosted custom DSP block is reachable and valid?
- Will my custom processing block at a given URL work before I add it to the impulse?
instructions:
- text: Verify the custom DSP block at {url} for project {projectId}.
slots:
url: requestBody.url
projectId: path.projectId
- text: Check whether {url} is a valid custom DSP block.
slots:
url: requestBody.url
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulses'].get
update:
x-apievangelist-phrasing:
intent: List all impulses in a project
effect: read
questions:
- How many impulse experiments does my project have?
- Can I get a plain list of every impulse without accuracy figures?
instructions:
- text: List all impulses in project {projectId}.
slots:
projectId: path.projectId
- text: Show me every impulse experiment defined in project {projectId}.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulses-detailed'].get
update:
x-apievangelist-phrasing:
intent: Compare impulses with accuracy and performance
effect: read
questions:
- Which of my impulse experiments has the best accuracy?
- Can I see latency and memory metrics for every impulse side by side?
instructions:
- text: List the impulses in project {projectId} with their accuracy and performance metrics.
slots:
projectId: path.projectId
- text: Compare all impulse experiments in project {projectId} by accuracy.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/download-impulses-detailed'].get
update:
x-apievangelist-phrasing:
intent: Download impulse metrics as JSON or CSV
effect: read
questions:
- Can I export my impulse experiment results to a CSV for a spreadsheet?
- What file formats are available for downloading impulse metrics?
instructions:
- text: Download all impulses with metrics for project {projectId} as {format}.
slots:
projectId: path.projectId
format: query.format
- text: Export the impulse comparison table of project {projectId} to a file.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/legacy-set-impulse'].post
update:
x-apievangelist-phrasing:
intent: Overwrite impulse state in the legacy format
effect: destructive
questions:
- Is there an internal way to write a project's impulse in the old pre-experiments format?
- Which internal call clears all of a project's files and restores a legacy impulse from a zip?
instructions:
- text: Set the legacy impulse state of project {projectId} from zip {zip}, impulse {impulse} and config {config}.
slots:
projectId: path.projectId
zip: requestBody.zip
impulse: requestBody.impulse
config: requestBody.config
- text: Write impulse {impulse} to project {projectId} in the old single-impulse format with config {config} and zip {zip}.
slots:
impulse: requestBody.impulse
projectId: path.projectId
config: requestBody.config
zip: requestBody.zip
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/{impulseId}/clone/structure'].post
update:
x-apievangelist-phrasing:
intent: Clone an impulse's structure without data
effect: write
questions:
- Can I copy an impulse's blocks and config to a new experiment without copying the generated features?
- How do I duplicate just the design of an impulse?
instructions:
- text: Clone the structure of impulse {impulseId} in project {projectId} as {name}.
slots:
impulseId: path.impulseId
projectId: path.projectId
name: requestBody.name
- text: Copy only the blocks and config of impulse {impulseId} into a new impulse called {name}.
slots:
impulseId: path.impulseId
name: requestBody.name
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/{impulseId}/clone/complete'].post
update:
x-apievangelist-phrasing:
intent: Clone an impulse including config and data
effect: write
questions:
- How do I make a full copy of an impulse, data and all?
- Can I duplicate a trained impulse so I can tweak it without losing the original?
instructions:
- text: Fully clone impulse {impulseId} in project {projectId}, data included, as {name}.
slots:
impulseId: path.impulseId
projectId: path.projectId
name: requestBody.name
- text: Make a complete copy of impulse {impulseId} with its data and name it {name}.
slots:
impulseId: path.impulseId
name: requestBody.name
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/transfer-learning-models'].get
update:
x-apievangelist-phrasing:
intent: List available transfer learning models
effect: read
questions:
- Which pretrained transfer learning models can I start from?
- What transfer learning base models are offered across categories like image and audio?
instructions:
- text: List all transfer learning models available to project {projectId}.
slots:
projectId: path.projectId
- text: Show the pretrained base models I can use for transfer learning in project {projectId}.
slots:
projectId: path.projectId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/{impulseId}/set-thresholds'].post
update:
x-apievangelist-phrasing:
intent: Set confidence and anomaly thresholds
effect: write
questions:
- How do I change the minimum confidence rating my model needs before it reports a class?
- Can I raise the anomaly score threshold for an impulse and have model testing rerun automatically?
instructions:
- text: 'Set thresholds {thresholds} on impulse {impulseId} in project {projectId}, allowing regenerate jobs: {allowCreatingRegenerateModelTestingJobs}.'
slots:
thresholds: requestBody.thresholds
impulseId: path.impulseId
projectId: path.projectId
allowCreatingRegenerateModelTestingJobs: requestBody.allowCreatingRegenerateModelTestingJobs
- text: Update the min confidence and anomaly thresholds of impulse {impulseId} to {thresholds}.
slots:
impulseId: path.impulseId
thresholds: requestBody.thresholds
method: generated
generated: '2026-10-01'
- target: $.paths['/api/{projectId}/impulse/{impulseId}/regenerate-model-testing-summary'].post
update:
x-apievangelist-phrasing:
intent: Regenerate model testing results
effect: write
questions:
- I changed thresholds but no testing job started — how do I refresh the model testing results?
- Can I recompute model testing without regenerating features?
instructions:
- text: Regenerate the model testing summary for impulse {impulseId} in project {projectId}.
slots:
impulseId: path.impulseId
projectId: path.projectId
- text: Refresh test results of impulse {impulseId} after my threshold change.
slots:
impulseId: path.impulseId
method: generated
generated: '2026-10-01'
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay 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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/edge-impulse-impulse-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.