Deepgram · Arazzo Workflow

Deepgram Provision a Project API Key

Version 1.0.0

Create a new project, mint a scoped API key for it, and verify the key appears in the project key list.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub Artificial IntelligenceSpeech-to-TextText-to-SpeechTranscriptionVoice AIArazzoWorkflows

Provider

deepgram

Workflows

provision-project-key
Create a project, create a scoped API key in it, and verify the key list.
Lists existing projects to anchor the account, creates a scoped API key in the supplied project, and confirms the new key appears in the project key list.
3 steps inputs: apiKey, comment, projectId, scopes, timeToLiveInSeconds outputs: apiKeys, newKeyId, newKeySecret
1
confirmProject
Fetch the target project to confirm it exists and is reachable before minting a new key inside it.
2
createKey
Create a new scoped API key in the project and capture the full secret value, which is only returned at creation time.
3
verifyKey
List the project's API keys to confirm the newly created key is present in the registry.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Deepgram Provision a Project API Key
  summary: Create a new project, mint a scoped API key for it, and verify the key appears in the project key list.
  description: >-
    A bootstrapping flow for standing up a fresh Deepgram workspace. The
    workflow creates a new project, mints a scoped API key inside that project,
    captures the one-time secret returned at creation, and then lists the
    project's keys to confirm the new key is registered. Every step spells out
    its request inline so the flow can be read and executed without opening the
    underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: keysApi
  url: ../openapi/deepgram-keys-api-openapi.yml
  type: openapi
- name: projectsApi
  url: ../openapi/deepgram-projects-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-project-key
  summary: Create a project, create a scoped API key in it, and verify the key list.
  description: >-
    Lists existing projects to anchor the account, creates a scoped API key in
    the supplied project, and confirms the new key appears in the project key
    list.
  inputs:
    type: object
    required:
    - apiKey
    - projectId
    - comment
    - scopes
    properties:
      apiKey:
        type: string
        description: Deepgram API key with keys:write scope used to authenticate.
      projectId:
        type: string
        description: The project to mint the new API key in.
      comment:
        type: string
        description: Description or name for the new API key.
      scopes:
        type: array
        description: Scopes to assign to the new API key (e.g. ["member"]).
        items:
          type: string
      timeToLiveInSeconds:
        type: integer
        description: Optional time-to-live in seconds for the new key.
  steps:
  - stepId: confirmProject
    description: >-
      Fetch the target project to confirm it exists and is reachable before
      minting a new key inside it.
    operationId: getProject
    parameters:
    - name: Authorization
      in: header
      value: Token $inputs.apiKey
    - name: project_id
      in: path
      value: $inputs.projectId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      projectId: $response.body#/project_id
      projectName: $response.body#/name
  - stepId: createKey
    description: >-
      Create a new scoped API key in the project and capture the full secret
      value, which is only returned at creation time.
    operationId: createProjectKey
    parameters:
    - name: Authorization
      in: header
      value: Token $inputs.apiKey
    - name: project_id
      in: path
      value: $inputs.projectId
    requestBody:
      contentType: application/json
      payload:
        comment: $inputs.comment
        scopes: $inputs.scopes
        time_to_live_in_seconds: $inputs.timeToLiveInSeconds
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      newKeyId: $response.body#/api_key_id
      newKeySecret: $response.body#/key
      newKeyScopes: $response.body#/scopes
  - stepId: verifyKey
    description: >-
      List the project's API keys to confirm the newly created key is present
      in the registry.
    operationId: listProjectKeys
    parameters:
    - name: Authorization
      in: header
      value: Token $inputs.apiKey
    - name: project_id
      in: path
      value: $inputs.projectId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      apiKeys: $response.body#/api_keys
  outputs:
    newKeyId: $steps.createKey.outputs.newKeyId
    newKeySecret: $steps.createKey.outputs.newKeySecret
    apiKeys: $steps.verifyKey.outputs.apiKeys

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow 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 workflow
curl "https://apis.io/api/v1/arazzo/deepgram-provision-project-key-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?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.