Edge Impulse · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Edge Impulse Learn API

27 actions 27 updates phrasing extends openapi/edge-impulse-learn-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.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 27 · first 16 shown; the file carries all of them

$.info
$.paths['/api/{projectId}/training/{learnId}/x'].get
$.paths['/api/{projectId}/training/{learnId}/y'].get
$.paths['/api/{projectId}/training/anomaly/{learnId}'].get
$.paths['/api/{projectId}/training/anomaly/{learnId}'].post
$.paths['/api/{projectId}/training/anomaly/{learnId}/metadata'].get
$.paths['/api/{projectId}/training/anomaly/{learnId}/gmm/metadata'].get
$.paths['/api/{projectId}/training/keras/{learnId}'].get
$.paths['/api/{projectId}/training/keras/{learnId}'].post
$.paths['/api/{projectId}/training/keras/{learnId}/metadata'].get
$.paths['/api/{projectId}/training/keras/{learnId}/data-explorer/features'].get
$.paths['/api/{projectId}/training/keras/{learnId}/files'].post
$.paths['/api/{projectId}/training/keras/{learnId}/addFiles'].post
$.paths['/api/{projectId}/training/keras/{learnId}/download-export'].get
$.paths['/api/{projectId}/training/keras/{learnId}/download-data'].get
$.paths['/api/{projectId}/learn-data/{learnId}/model/{modelDownloadId}'].get

OpenAPI Overlay

Raw ↑
# 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 Learn API
  version: 1.0.0
extends: openapi/edge-impulse-learn-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: 26
- target: $.paths['/api/{projectId}/training/{learnId}/x'].get
  update:
    x-apievangelist-phrasing:
      intent: Download processed features for a learning block
      effect: read
      questions:
      - How do I download the processed feature data a learning block trains on?
      - Can I get the DSP output used as training input for a learn block?
      instructions:
      - text: Download the processed X data for learn block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Export the training features of learning block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/{learnId}/y'].get
  update:
    x-apievangelist-phrasing:
      intent: Download labels for a learning block
      effect: read
      questions:
      - Where can I download the training labels for a learning block?
      - Do all learn blocks support exporting their Y labels?
      instructions:
      - text: Download the labels (Y data) for learn block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Get the label array for learning block {learnId} of project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an anomaly block's configuration
      effect: read
      questions:
      - What does my anomaly detection block depend on and how is it configured?
      - How can I inspect the settings of an anomaly block in my impulse?
      instructions:
      - text: Show the anomaly block {learnId} information for project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Get dependencies and settings of anomaly block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Set an anomaly block's minimum confidence
      effect: write
      questions:
      - How do I change the anomaly threshold on my anomaly detection block?
      - Can I set a minimum confidence score for anomaly detection?
      instructions:
      - text: Set the minimum confidence of anomaly block {learnId} in project {projectId} to {minimumConfidenceRating}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          minimumConfidenceRating: requestBody.minimumConfidenceRating
      - text: Update anomaly block {learnId} settings in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}/metadata'].get
  update:
    x-apievangelist-phrasing:
      intent: Get metadata for a trained anomaly block
      effect: read
      questions:
      - What metadata is available after my anomaly block has been trained?
      - Where can I see the trained results of an anomaly detection block?
      instructions:
      - text: Get metadata for trained anomaly block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Show the training metadata of anomaly block {learnId} for project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}/gmm/metadata'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the GMM model metadata of an anomaly block
      effect: read
      questions:
      - Can I get the raw Gaussian mixture model parameters from my anomaly block?
      - Where are the GMM component details for a trained anomaly detector?
      instructions:
      - text: Get the Gaussian mixture model metadata for anomaly block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Show raw GMM metadata for anomaly block {learnId} of project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a Keras block's configuration
      effect: read
      questions:
      - How is my Keras neural network block currently configured?
      - What does a Keras learning block depend on in my impulse?
      instructions:
      - text: Show the Keras block {learnId} information for project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Get the settings and dependencies of Keras block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Configure Keras training settings
      effect: write
      questions:
      - How do I change the number of training cycles and learning rate for my neural network?
      - Can I set batch size and train/test split on a Keras block?
      - Can I turn on data augmentation for image training?
      instructions:
      - text: Set Keras block {learnId} in project {projectId} to {trainingCycles} training cycles at learning rate {learningRate}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          trainingCycles: requestBody.trainingCycles
          learningRate: requestBody.learningRate
      - text: Change the batch size of Keras block {learnId} in project {projectId} to {batchSize}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          batchSize: requestBody.batchSize
      - text: Switch Keras block {learnId} in project {projectId} to {mode} mode.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          mode: requestBody.mode
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/metadata'].get
  update:
    x-apievangelist-phrasing:
      intent: Get metadata for a trained Keras model
      effect: read
      questions:
      - What accuracy and model details did my trained Keras block produce?
      - Can I fetch trained neural network metadata without the label list?
      instructions:
      - text: Get metadata for trained Keras block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Show the trained Keras block {learnId} metadata for project {projectId} excluding labels.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/data-explorer/features'].get
  update:
    x-apievangelist-phrasing:
      intent: Get data explorer embeddings from a Keras block
      effect: read
      questions:
      - How can I visualize my dataset using embeddings from my trained neural network?
      - Where do I get the t-SNE layout for the data explorer?
      instructions:
      - text: Get the data explorer features for Keras block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Compute the t-SNE view of my raw dataset using embeddings from Keras block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/files'].post
  update:
    x-apievangelist-phrasing:
      intent: Replace a Keras block's files from a zip
      effect: destructive
      questions:
      - Can I overwrite all of a Keras block's files with a zip archive?
      - What happens to existing Keras block files when I upload a replacement zip?
      instructions:
      - text: Replace the files of Keras block {learnId} in project {projectId} with zip {zip}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          zip: requestBody.zip
      - text: Overwrite Keras block {learnId} in project {projectId} using the contents of {zip}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          zip: requestBody.zip
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/addFiles'].post
  update:
    x-apievangelist-phrasing:
      intent: Add files to a Keras block from a zip
      effect: write
      questions:
      - How do I add extra files to a Keras block without replacing what is there?
      - Can I append the contents of a zip to my Keras block's files?
      instructions:
      - text: Add the files in zip {zip} to Keras block {learnId} in project {projectId}.
        slots:
          zip: requestBody.zip
          learnId: path.learnId
          projectId: path.projectId
      - text: Merge {zip} into the existing files of Keras block {learnId} for project {projectId}.
        slots:
          zip: requestBody.zip
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/download-export'].get
  update:
    x-apievangelist-phrasing:
      intent: Download an exported Keras block
      effect: read
      questions:
      - Where do I download a Keras block after exporting it?
      - Can I fetch the exported Keras block code once the export finishes?
      instructions:
      - text: Download the exported Keras block {learnId} from project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Get the Keras block export archive for block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/download-data'].get
  update:
    x-apievangelist-phrasing:
      intent: Download the exported data of a Keras block
      effect: read
      questions:
      - How do I download the training data that was exported with a Keras block?
      - Where is the dataset export for a Keras block once it is ready?
      instructions:
      - text: Download the exported data for Keras block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Fetch the Keras block {learnId} data export from project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/learn-data/{learnId}/model/{modelDownloadId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a trained model file
      effect: read
      questions:
      - How do I download the trained TensorFlow model from a learning block?
      - Can I get the cluster centroids from a trained block?
      instructions:
      - text: Download model {modelDownloadId} for learn block {learnId} in project {projectId}.
        slots:
          modelDownloadId: path.modelDownloadId
          learnId: path.learnId
          projectId: path.projectId
      - text: Get the trained model file {modelDownloadId} from learning block {learnId} of project {projectId}.
        slots:
          modelDownloadId: path.modelDownloadId
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}/features/get-graph'].get
  update:
    x-apievangelist-phrasing:
      intent: Plot a sample of anomaly-trained features
      effect: read
      questions:
      - Can I graph the features my anomaly block was trained on along two axes?
      - Which feature axes can I choose when charting trained anomaly features?
      instructions:
      - text: Get trained anomaly features for block {learnId} in project {projectId} plotted on axes {featureAx1} and {featureAx2}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          featureAx1: query.featureAx1
          featureAx2: query.featureAx2
      - text: Graph anomaly block {learnId} training features in project {projectId} using feature {featureAx1} vs {featureAx2}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
          featureAx1: query.featureAx1
          featureAx2: query.featureAx2
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}/features/get-graph/classification/{sampleId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Score one sample against an anomaly block
      effect: read
      questions:
      - How do I see the anomaly features and score for a single sample?
      - Can I run the DSP and anomaly classifier on just one sample?
      instructions:
      - text: Get trained anomaly features for sample {sampleId} using block {learnId} in project {projectId}.
        slots:
          sampleId: path.sampleId
          learnId: path.learnId
          projectId: path.projectId
      - text: Classify sample {sampleId} with anomaly block {learnId} in project {projectId}.
        slots:
          sampleId: path.sampleId
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model'].get
  update:
    x-apievangelist-phrasing:
      intent: Get info on an uploaded pretrained model
      effect: read
      questions:
      - What input and output tensors does my uploaded pretrained model have?
      - Can I check the pretrained model I uploaded earlier?
      instructions:
      - text: Show the uploaded pretrained model info for project {projectId}.
        slots:
          projectId: path.projectId
      - text: Get the input/output tensor details of the pretrained model in impulse {impulseId} of project {projectId}.
        slots:
          impulseId: query.impulseId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model/upload'].post
  update:
    x-apievangelist-phrasing:
      intent: Upload a pretrained model
      effect: write
      questions:
      - How do I bring my own TFLite or ONNX model into Edge Impulse?
      - Can I include representative features when uploading a pretrained model?
      instructions:
      - text: Upload pretrained model {modelFileName} of type {modelFileType} to project {projectId}.
        slots:
          modelFileName: requestBody.modelFileName
          modelFileType: requestBody.modelFileType
          projectId: path.projectId
      - text: Upload {modelFile} as {modelFileName} ({modelFileType}) to project {projectId} and profile it on device {device}.
        slots:
          modelFile: requestBody.modelFile
          modelFileName: requestBody.modelFileName
          modelFileType: requestBody.modelFileType
          projectId: path.projectId
          device: requestBody.device
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model/save'].post
  update:
    x-apievangelist-phrasing:
      intent: Save input and model settings for a pretrained model
      effect: write
      questions:
      - How do I tell Edge Impulse what input format and output type my uploaded model uses?
      - Will saving pretrained model parameters overwrite my current impulse?
      instructions:
      - text: Save pretrained model input {input} and model config {model} for project {projectId}.
        slots:
          input: requestBody.input
          model: requestBody.model
          projectId: path.projectId
      - text: Configure the uploaded model in project {projectId} with input settings {input} and output settings {model}.
        slots:
          projectId: path.projectId
          input: requestBody.input
          model: requestBody.model
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model/test'].post
  update:
    x-apievangelist-phrasing:
      intent: Test a pretrained model with raw features
      effect: read
      questions:
      - Can I try my uploaded model on a set of raw feature values?
      - How do I check a pretrained model's prediction from a feature array?
      instructions:
      - text: Run the pretrained model in project {projectId} on features {features}.
        slots:
          projectId: path.projectId
          features: requestBody.features
      - text: Test pretrained model {modelInfo} in project {projectId} with raw features {features}.
        slots:
          modelInfo: requestBody.modelInfo
          projectId: path.projectId
          features: requestBody.features
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model/profile'].post
  update:
    x-apievangelist-phrasing:
      intent: Profile latency and memory of a pretrained model
      effect: read
      questions:
      - How much RAM, ROM and latency will my uploaded model use on the target device?
      - Does profiling a pretrained model use the project's selected latency device?
      instructions:
      - text: Profile the pretrained model in project {projectId}.
        slots:
          projectId: path.projectId
      - text: Estimate latency, RAM and ROM for the pretrained model in impulse {impulseId} of project {projectId}.
        slots:
          impulseId: query.impulseId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model/download/{pretrainedModelDownloadType}'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a pretrained model file
      effect: read
      questions:
      - Can I download the pretrained model file I uploaded back out of my project?
      - Which file types can I download for an uploaded pretrained model?
      instructions:
      - text: Download the {pretrainedModelDownloadType} file of the pretrained model in project {projectId}.
        slots:
          pretrainedModelDownloadType: path.pretrainedModelDownloadType
          projectId: path.projectId
      - text: Get pretrained model download {pretrainedModelDownloadType} for impulse {impulseId} in project {projectId}.
        slots:
          pretrainedModelDownloadType: path.pretrainedModelDownloadType
          impulseId: query.impulseId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/keras/{learnId}/profile'].post
  update:
    x-apievangelist-phrasing:
      intent: Start profiling a Keras block
      effect: write
      questions:
      - How do I get on-device latency and memory estimates for my trained neural network?
      - When does a Keras profiling job actually run for the selected device?
      instructions:
      - text: Start a profiling job for Keras block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Profile neural network block {learnId} of project {projectId} on the selected latency device.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/training/anomaly/{learnId}/profile'].post
  update:
    x-apievangelist-phrasing:
      intent: Start profiling an anomaly block
      effect: write
      questions:
      - How do I estimate on-device performance of my anomaly detection block?
      - Can I kick off profiling for an anomaly block that has no device data yet?
      instructions:
      - text: Start a profiling job for anomaly block {learnId} in project {projectId}.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      - text: Profile anomaly detection block {learnId} of project {projectId} on the selected latency device.
        slots:
          learnId: path.learnId
          projectId: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/pretrained-model/test-image'].post
  update:
    x-apievangelist-phrasing:
      intent: Test a pretrained model with an image
      effect: read
      questions:
      - Can I test my uploaded image model by sending a picture?
      - What format does the image need to be in to test a pretrained model?
      instructions:
      - text: Test the pretrained model in project {projectId} on base64 image {imageFileBase64}.
        slots:
          projectId: path.projectId
          imageFileBase64: requestBody.imageFileBase64
      - text: Run image {imageFileBase64} through pretrained model {model} with input settings {input} in project {projectId}.
        slots:
          imageFileBase64: requestBody.imageFileBase64
          model: requestBody.model
          input: requestBody.input
          projectId: path.projectId
      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.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/edge-impulse-learn-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.