Edge Impulse · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Edge Impulse Projects API

61 actions 61 updates phrasing extends openapi/edge-impulse-projects-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 61 · first 16 shown; the file carries all of them

$.info
$.paths['/api/projects'].get
$.paths['/api/projects/create'].post
$.paths['/api/{projectId}/devkeys'].get
$.paths['/api/{projectId}/downloads'].get
$.paths['/api/{projectId}/csv-wizard/download-config'].get
$.paths['/api/{projectId}/csv-wizard/uploaded-file'].get
$.paths['/api/{projectId}/csv-wizard/uploaded-file'].post
$.paths['/api/{projectId}/csv-wizard/uploaded-file/download'].get
$.paths['/api/{projectId}/collaborators/add'].post
$.paths['/api/{projectId}/collaborators/remove'].post
$.paths['/api/{projectId}/collaborators/transfer-ownership'].post
$.paths['/api/{projectId}/collaborators/transfer-ownership-org'].post
$.paths['/api/{projectId}/hmackeys'].get
$.paths['/api/{projectId}/hmackeys'].post
$.paths['/api/{projectId}/hmackeys/{hmacId}'].delete

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 Projects API
  version: 1.0.0
extends: openapi/edge-impulse-projects-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: 60
- target: $.paths['/api/projects'].get
  update:
    x-apievangelist-phrasing:
      intent: List the projects I can access
      effect: read
      questions:
      - Which Edge Impulse projects does my account have access to?
      - If I authenticate with a project API key, what does the active-projects list show?
      instructions:
      - text: List all my active Edge Impulse projects.
      - text: Show every active project my login can open.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/projects/create'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a new project
      effect: write
      questions:
      - How do I start a brand-new Edge Impulse project?
      - Can a new project be created as public instead of private?
      instructions:
      - text: Create a new project called {name}.
        slots:
          name: requestBody.projectName
      - text: Create a project named {name} with {visibility} visibility.
        slots:
          name: requestBody.projectName
          visibility: requestBody.projectVisibility
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/devkeys'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a project's development API and HMAC keys
      effect: read
      questions:
      - Where do I find the development API key and HMAC key together for a project?
      - Why would a project's development keys come back undefined?
      instructions:
      - text: Get both development keys (API and HMAC) for project {project}.
        slots:
          project: path.projectId
      - text: Fetch the dev API key and dev HMAC key pair of project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/downloads'].get
  update:
    x-apievangelist-phrasing:
      intent: List a project's downloadable files
      effect: read
      questions:
      - What files can I download from my project, like trained models or datasets?
      - Can I see the downloads for a specific impulse rather than the default one?
      instructions:
      - text: List the available downloads for project {project}.
        slots:
          project: path.projectId
      - text: Show downloads for impulse {impulse} in project {project}.
        slots:
          project: path.projectId
          impulse: query.impulseId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/csv-wizard/download-config'].get
  update:
    x-apievangelist-phrasing:
      intent: Download the CSV Wizard config
      effect: read
      questions:
      - Can I export the CSV Wizard configuration of a project as a JSON file?
      - What happens if I download the CSV Wizard config when none is set?
      instructions:
      - text: Download the CSV Wizard config JSON for project {project}.
        slots:
          project: path.projectId
      - text: Export project {project}'s CSV import wizard settings.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/csv-wizard/uploaded-file'].get
  update:
    x-apievangelist-phrasing:
      intent: Check if the CSV Wizard source file exists
      effect: read
      questions:
      - Is the sample file I used to set up the CSV Wizard still available?
      - Can I check whether a CSV Wizard source file was stored without downloading it?
      instructions:
      - text: Check whether the CSV Wizard source file is still stored for project {project}.
        slots:
          project: path.projectId
      - text: Tell me if project {project} has the file the CSV Wizard was configured from.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/csv-wizard/uploaded-file'].post
  update:
    x-apievangelist-phrasing:
      intent: Store the CSV Wizard source file
      effect: write
      questions:
      - Can I save the CSV file the wizard was based on alongside the project?
      - Where does the CSV Wizard keep the example file I configured it with?
      instructions:
      - text: Store {file} as the CSV Wizard source file for project {project}.
        slots:
          project: path.projectId
          file: requestBody.file
      - text: Upload the CSV Wizard's base file to project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/csv-wizard/uploaded-file/download'].get
  update:
    x-apievangelist-phrasing:
      intent: Download the CSV Wizard source file
      effect: read
      questions:
      - How can I get back the original CSV I used to configure the CSV Wizard?
      - Is it possible to download the file the CSV import wizard was built from?
      instructions:
      - text: Download the CSV Wizard source file from project {project}.
        slots:
          project: path.projectId
      - text: Retrieve the original CSV the wizard was configured with in project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/collaborators/add'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a collaborator to a project
      effect: write
      questions:
      - How do I invite a teammate to work on my Edge Impulse project?
      - Can I add a collaborator by email address instead of username?
      instructions:
      - text: Add {user} as a collaborator on project {project}.
        slots:
          project: path.projectId
          user: requestBody.usernameOrEmail
      - text: Give {user} collaborator access to project {project}.
        slots:
          project: path.projectId
          user: requestBody.usernameOrEmail
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/collaborators/remove'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove a collaborator from a project
      effect: destructive
      questions:
      - Can I remove someone's access to my project?
      - Why can't I remove the last remaining collaborator on a project?
      instructions:
      - text: Remove {user} as a collaborator from project {project}.
        slots:
          project: path.projectId
          user: requestBody.usernameOrEmail
      - text: Revoke {user}'s collaborator access to project {project}.
        slots:
          project: path.projectId
          user: requestBody.usernameOrEmail
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/collaborators/transfer-ownership'].post
  update:
    x-apievangelist-phrasing:
      intent: Transfer a project to another user
      effect: destructive
      questions:
      - Can I hand ownership of my project to another person?
      - What do I need to transfer a project to a different user account?
      instructions:
      - text: Transfer ownership of project {project} to user {user}.
        slots:
          project: path.projectId
          user: requestBody.usernameOrEmail
      - text: Make {user} the new owner of project {project}.
        slots:
          project: path.projectId
          user: requestBody.usernameOrEmail
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/collaborators/transfer-ownership-org'].post
  update:
    x-apievangelist-phrasing:
      intent: Transfer a project to an organization
      effect: destructive
      questions:
      - Can I move my personal project into an organization?
      - Which ID do I need to transfer project ownership to an organization?
      instructions:
      - text: Transfer project {project} to organization {org}.
        slots:
          project: path.projectId
          org: requestBody.organizationId
      - text: Hand ownership of project {project} over to organization {org}.
        slots:
          project: path.projectId
          org: requestBody.organizationId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/hmackeys'].get
  update:
    x-apievangelist-phrasing:
      intent: List a project's HMAC keys
      effect: read
      questions:
      - Which HMAC keys are configured on my project?
      - Can I see every HMAC signing key, not just the development one?
      instructions:
      - text: List all HMAC keys for project {project}.
        slots:
          project: path.projectId
      - text: Show every HMAC key registered on project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/hmackeys'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an HMAC key to a project
      effect: write
      questions:
      - How do I add a new HMAC key for signing device data?
      - If I mark a new HMAC key as development, what happens to the old development key?
      instructions:
      - text: Add HMAC key {key} named {name} to project {project}.
        slots:
          project: path.projectId
          key: requestBody.hmacKey
          name: requestBody.name
      - text: Add HMAC key {key} called {name} to project {project} with development flag {dev}.
        slots:
          project: path.projectId
          key: requestBody.hmacKey
          name: requestBody.name
          dev: requestBody.isDevelopmentKey
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/hmackeys/{hmacId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Revoke an HMAC key
      effect: destructive
      questions:
      - Can I delete an HMAC key I no longer use?
      - What breaks if I revoke the development HMAC key?
      instructions:
      - text: Revoke HMAC key {hmac} in project {project}.
        slots:
          project: path.projectId
          hmac: path.hmacId
      - text: Delete HMAC key {hmac} from project {project}.
        slots:
          project: path.projectId
          hmac: path.hmacId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/apikeys'].get
  update:
    x-apievangelist-phrasing:
      intent: List a project's API keys
      effect: read
      questions:
      - What API keys exist for my project?
      - Why does the API key list only show part of each key?
      instructions:
      - text: List all API keys for project {project}.
        slots:
          project: path.projectId
      - text: Show the API keys and their roles on project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/apikeys'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an API key to a project
      effect: write
      questions:
      - How do I create a new API key with a specific role for my project?
      - Can I supply my own API key value, and what prefix must it start with?
      instructions:
      - text: Add an API key named {name} with role {role} to project {project}.
        slots:
          project: path.projectId
          name: requestBody.name
          role: requestBody.role
      - text: Create API key {name} with role {role} on project {project} and set development flag {dev}.
        slots:
          project: path.projectId
          name: requestBody.name
          role: requestBody.role
          dev: requestBody.isDevelopmentKey
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/apikeys/{apiKeyId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Revoke a project API key
      effect: destructive
      questions:
      - Can I revoke a full-access project API key that leaked?
      - What stops working if the development API key is revoked?
      instructions:
      - text: Revoke API key {key} on project {project}.
        slots:
          project: path.projectId
          key: path.apiKeyId
      - text: Delete project {project}'s API key {key}.
        slots:
          project: path.projectId
          key: path.apiKeyId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/emails'].get
  update:
    x-apievangelist-phrasing:
      intent: List emails sent about a project
      effect: read
      questions:
      - Which emails has Edge Impulse sent regarding my project?
      - Can I review the notification emails sent for a project?
      instructions:
      - text: List every email sent about project {project}.
        slots:
          project: path.projectId
      - text: Show the email history for project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/socket-token'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a websocket auth token
      effect: read
      questions:
      - What token do I need to connect to the project websocket?
      - How can a client authenticate to the web socket interface?
      instructions:
      - text: Get a websocket token for project {project}.
        slots:
          project: path.projectId
      - text: Issue a socket authentication token for project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/data-axes'].get
  update:
    x-apievangelist-phrasing:
      intent: Summarize the axes in training data
      effect: read
      questions:
      - Which sensor axes appear in my project's training data?
      - Can I list data axes while ignoring disabled samples?
      instructions:
      - text: Get the data axes summary for project {project}.
        slots:
          project: path.projectId
      - text: 'List the training data axes of project {project}, include disabled samples: {disabled}.'
        slots:
          project: path.projectId
          disabled: query.includeDisabled
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/data-summary'].get
  update:
    x-apievangelist-phrasing:
      intent: Summarize a project's training data
      effect: read
      questions:
      - How many training items and labels does my project have, and how long is the data in total?
      - Can the training data summary leave out samples that are still processing?
      instructions:
      - text: Summarize the training set of project {project}.
        slots:
          project: path.projectId
      - text: 'Get the training data summary for project {project} with unprocessed samples included: {unprocessed}.'
        slots:
          project: path.projectId
          unprocessed: query.includeNotProcessed
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/data-interval'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the training data sample interval
      effect: read
      questions:
      - What sampling interval in milliseconds does my training data use?
      - If my data has mixed intervals, which one is reported?
      instructions:
      - text: Get the training data interval in ms for project {project}.
        slots:
          project: path.projectId
      - text: Tell me the sample interval of project {project}'s training data.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/compute-time-limit'].post
  update:
    x-apievangelist-phrasing:
      intent: Set the job compute time limit
      effect: write
      questions:
      - Can I raise the compute time limit for training jobs on a project?
      - Who is allowed to change a project's job compute time limit?
      instructions:
      - text: Set the job compute time limit of project {project} to {limit}.
        slots:
          project: path.projectId
          limit: requestBody.jobLimitM
      - text: Change project {project}'s compute limit for jobs to {limit}.
        slots:
          project: path.projectId
          limit: requestBody.jobLimitM
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/dsp-file-size-limit'].post
  update:
    x-apievangelist-phrasing:
      intent: Set the DSP file size limit
      effect: write
      questions:
      - Can I change the maximum DSP file size for a project?
      - What is the default DSP file size limit in megabytes?
      instructions:
      - text: Set the DSP file size limit of project {project} to {mb} MB.
        slots:
          project: path.projectId
          mb: requestBody.dspFileSizeMb
      - text: Raise project {project}'s DSP file limit to {mb} MB.
        slots:
          project: path.projectId
          mb: requestBody.dspFileSizeMb
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/versions'].get
  update:
    x-apievangelist-phrasing:
      intent: List all versions of a project
      effect: read
      questions:
      - What saved versions exist for my project, private ones included?
      - Can I see the full version history of a project?
      instructions:
      - text: List all versions of project {project}.
        slots:
          project: path.projectId
      - text: Show every saved version, public and private, of project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/versions/public'].get
  update:
    x-apievangelist-phrasing:
      intent: List a project's public versions
      effect: read
      questions:
      - Which versions of a project have been made public?
      - Can I list public versions without authenticating?
      instructions:
      - text: List only the public versions of project {project}.
        slots:
          project: path.projectId
      - text: Show the publicly shared versions of project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/versions/{versionId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Update a project version's description
      effect: write
      questions:
      - Can I edit the description of a saved project version?
      - Does updating a version change fields I leave out?
      instructions:
      - text: Update version {version} of project {project} with description {description}.
        slots:
          project: path.projectId
          version: path.versionId
          description: requestBody.description
      - text: Change the description of version {version} in project {project}.
        slots:
          project: path.projectId
          version: path.versionId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/versions/{versionId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a project version
      effect: destructive
      questions:
      - Can I delete an old version of my project?
      - Is a deleted version also removed from cold storage?
      instructions:
      - text: Delete version {version} of project {project}.
        slots:
          project: path.projectId
          version: path.versionId
      - text: Remove saved version {version} from project {project}.
        slots:
          project: path.projectId
          version: path.versionId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/versions/{versionId}/make-private'].post
  update:
    x-apievangelist-phrasing:
      intent: Make a public version private
      effect: write
      questions:
      - I published a project version by mistake; can I make it private again?
      - Is there a way to unpublish a public version without deleting it?
      instructions:
      - text: Make version {version} of project {project} private.
        slots:
          project: path.projectId
          version: path.versionId
      - text: Unpublish public version {version} in project {project}.
        slots:
          project: path.projectId
          version: path.versionId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/readme/upload-image'].post
  update:
    x-apievangelist-phrasing:
      intent: Upload an image for the project readme
      effect: write
      questions:
      - Can I add images to my project's readme?
      - Where are readme images hosted after upload?
      instructions:
      - text: Upload {image} as a readme image for project {project}.
        slots:
          project: path.projectId
          image: requestBody.image
      - text: Add an image to the readme of project {project} and give me its path.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/launch-getting-started'].post
  update:
    x-apievangelist-phrasing:
      intent: Reset a project via the getting started wizard
      effect: destructive
      questions:
      - What does launching the getting started wizard do to my existing data?
      - Is relaunching the getting started wizard reversible?
      instructions:
      - text: Launch the getting started wizard on project {project}, clearing all its data.
        slots:
          project: path.projectId
      - text: Wipe project {project} and restart the getting started wizard.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/last-modification'].get
  update:
    x-apievangelist-phrasing:
      intent: Get when a project was last modified
      effect: read
      questions:
      - When was my project's data or impulse last changed?
      - Does training an impulse update the project's last modification date?
      instructions:
      - text: Get the last modification date of project {project}.
        slots:
          project: path.projectId
      - text: Tell me when project {project} was last modified.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/development-boards'].get
  update:
    x-apievangelist-phrasing:
      intent: List development boards for a project
      effect: read
      questions:
      - Which development boards are available for my project?
      - What hardware boards can I pick from in a project?
      instructions:
      - text: List the development boards for project {project}.
        slots:
          project: path.projectId
      - text: Show supported dev boards in project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/target-constraints'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a project's target device constraints
      effect: read
      questions:
      - What target device constraints and application budget are set on my project?
      - Can I read the hardware attributes configured for my target device?
      instructions:
      - text: Get the target constraints for project {project}.
        slots:
          project: path.projectId
      - text: Show the target hardware and latency/memory budget of project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/target-constraints'].post
  update:
    x-apievangelist-phrasing:
      intent: Set target device constraints
      effect: write
      questions:
      - How do I tell the project which target devices and resource budgets I'm designing for?
      - Can I define multiple candidate target devices with their own application budgets?
      instructions:
      - text: Set target devices {devices} with budgets {budgets} on project {project}.
        slots:
          project: path.projectId
          devices: requestBody.targetDevices
          budgets: requestBody.applicationBudgets
      - text: Update project {project}'s target constraints to devices {devices} and application budgets {budgets}.
        slots:
          project: path.projectId
          devices: requestBody.targetDevices
          budgets: requestBody.applicationBudgets
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/model-variants'].get
  update:
    x-apievangelist-phrasing:
      intent: List model variants for a project
      effect: read
      questions:
      - Which model variants, like quantized or float, are available for my trained blocks?
      - Can I see model variants for a non-default impulse?
      instructions:
      - text: List the model variants available in project {project}.
        slots:
          project: path.projectId
      - text: Get model variants for impulse {impulse} of project {project}.
        slots:
          project: path.projectId
          impulse: query.impulseId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/dismiss-notification'].post
  update:
    x-apievangelist-phrasing:
      intent: Dismiss a project notification
      effect: write
      questions:
      - Can I dismiss a notification shown in my project?
      - Is there a way to hide a project notification for good?
      instructions:
      - text: Dismiss notification {notification} in project {project}.
        slots:
          project: path.projectId
          notification: requestBody.notification
      - text: Hide the {notification} notice on project {project}.
        slots:
          project: path.projectId
          notification: requestBody.notification
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/synthetic-data'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the last synthetic data config
      effect: read
      questions:
      - What synthetic data settings did I last use in my project?
      - Can I retrieve the previous synthetic data generation config?
      instructions:
      - text: Get the last used synthetic data config for project {project}.
        slots:
          project: path.projectId
      - text: Show project {project}'s synthetic data settings.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions'].get
  update:
    x-apievangelist-phrasing:
      intent: List a project's AI Actions
      effect: read
      questions:
      - What AI Actions are set up in my project?
      - Can I see all AI Actions configured for labeling or enriching data?
      instructions:
      - text: List all AI Actions in project {project}.
        slots:
          project: path.projectId
      - text: Show the AI Actions defined on project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions/order'].post
  update:
    x-apievangelist-phrasing:
      intent: Reorder a project's AI Actions
      effect: write
      questions:
      - Can I change the order AI Actions appear in?
      - Do I have to include every AI Action when reordering them?
      instructions:
      - text: Reorder the AI Actions in project {project} to {order}.
        slots:
          project: path.projectId
          order: requestBody.orderByActionId
      - text: Set the AI Action order of project {project} using action IDs {order}.
        slots:
          project: path.projectId
          order: requestBody.orderByActionId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions/create'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a new AI Action
      effect: write
      questions:
      - How do I add a new AI Action to my project?
      - Can I start a blank AI Action and configure it later?
      instructions:
      - text: Create a new AI Action in project {project}.
        slots:
          project: path.projectId
      - text: Add an empty AI Action to project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions/new'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the default config for a new AI Action
      effect: read
      questions:
      - What does the starting configuration of a new AI Action look like?
      - Can I preview the template config before creating an AI Action?
      instructions:
      - text: Get the template config for a new AI Action in project {project}.
        slots:
          project: path.projectId
      - text: Show the default settings a new AI Action would start with in project {project}.
        slots:
          project: path.projectId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions/{actionId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an AI Action's config
      effect: read
      questions:
      - Can I view the steps and data filter of an existing AI Action?
      - Which metadata does a particular AI Action set after it runs?
      instructions:
      - text: Get the config of AI Action {action} in project {project}.
        slots:
          project: path.projectId
          action: path.actionId
      - text: Show AI Action {action}'s steps and data selection in project {project}.
        slots:
          project: path.projectId
          action: path.actionId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions/{actionId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Save an AI Action's config
      effect: write
      questions:
      - How do I save changes to the steps of an AI Action?
      - Can an AI Action be limited to samples with a certain metadata key and value?
      instructions:
      - text: Save AI Action {action} in project {project} with steps {steps} on data category {category}.
        slots:
          project: path.projectId
          action: path.actionId
          steps: requestBody.steps
          category: requestBody.dataCategory
      - text: Rename AI Action {action} in project {project} to {name}, keeping steps {steps} and category {category}.
        slots:
          project: path.projectId
          action: path.actionId
          name: requestBody.name
          steps: requestBody.steps
          category: requestBody.dataCategory
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/{projectId}/ai-actions/{actionId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an AI Action
      effect: destructive
      questions:
      - Can I remove an AI Action I no longer need?
      - Is deleting an AI Action config permanent?
      instructions:
      - text: Delete AI Action {action} from project {project}.
        slots:
          project: path.projectId
          action: path.actionId
      - text: Remove the AI Action {action} config in project {project}.
        slots:
          project: path.projectId
          action: path.actionId
      method: generated
      generated: '2026-10-01'


# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/edge-impulse/refs/heads/main/overlays/edge-impulse-projects-api-phrasing-overlay.yaml

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-projects-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.