Deepgram · Arazzo Workflow

Deepgram Rotate a Project API Key

Version 1.0.0

Mint a replacement API key in a project, verify it, then delete the old key to complete a rotation.

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

Provider

deepgram

Workflows

rotate-project-key
Create a replacement key, verify it, and delete the old key.
Creates a new scoped API key in the project, lists the keys to confirm the replacement is present, and then deletes the previous key to finish the rotation.
3 steps inputs: apiKey, comment, oldKeyId, projectId, scopes outputs: deletedKeyId, newKeyId, newKeySecret
1
createReplacementKey
Create the replacement scoped API key and capture its one-time secret value and new identifier.
2
verifyReplacement
List the project keys to confirm the replacement key is registered before removing the old credential.
3
deleteOldKey
Delete the outgoing API key now that the replacement has been verified, leaving only the new credential active.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Deepgram Rotate a Project API Key
  summary: Mint a replacement API key in a project, verify it, then delete the old key to complete a rotation.
  description: >-
    A secure key-rotation pattern for Deepgram projects. The workflow creates a
    fresh scoped API key inside the project, confirms the replacement key is
    registered in the key list, and then deletes the outgoing key so only the
    new credential remains active. 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
workflows:
- workflowId: rotate-project-key
  summary: Create a replacement key, verify it, and delete the old key.
  description: >-
    Creates a new scoped API key in the project, lists the keys to confirm the
    replacement is present, and then deletes the previous key to finish the
    rotation.
  inputs:
    type: object
    required:
    - apiKey
    - projectId
    - oldKeyId
    - comment
    - scopes
    properties:
      apiKey:
        type: string
        description: Deepgram API key with keys:write scope used to authenticate.
      projectId:
        type: string
        description: The project whose key is being rotated.
      oldKeyId:
        type: string
        description: The identifier of the outgoing key to delete after rotation.
      comment:
        type: string
        description: Description or name for the replacement API key.
      scopes:
        type: array
        description: Scopes to assign to the replacement API key.
        items:
          type: string
  steps:
  - stepId: createReplacementKey
    description: >-
      Create the replacement scoped API key and capture its one-time secret
      value and new identifier.
    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
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      newKeyId: $response.body#/api_key_id
      newKeySecret: $response.body#/key
  - stepId: verifyReplacement
    description: >-
      List the project keys to confirm the replacement key is registered before
      removing the old credential.
    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
  - stepId: deleteOldKey
    description: >-
      Delete the outgoing API key now that the replacement has been verified,
      leaving only the new credential active.
    operationId: deleteProjectKey
    parameters:
    - name: Authorization
      in: header
      value: Token $inputs.apiKey
    - name: project_id
      in: path
      value: $inputs.projectId
    - name: key_id
      in: path
      value: $inputs.oldKeyId
    successCriteria:
    - condition: $statusCode == 204
    outputs:
      deletedKeyId: $inputs.oldKeyId
  outputs:
    newKeyId: $steps.createReplacementKey.outputs.newKeyId
    newKeySecret: $steps.createReplacementKey.outputs.newKeySecret
    deletedKeyId: $steps.deleteOldKey.outputs.deletedKeyId

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