Prisma · Arazzo Workflow

Prisma Postgres Backup and Restore

Version 1.0.0

Take a manual database backup, poll until it completes, then restore the database from it.

1 workflow 1 source API 1 provider
View Spec View on GitHub ArazzoWorkflows

Provider

prisma

Workflows

backup-and-restore-database
Create a manual backup, wait for completion, and restore the database from it.
Initiates a manual backup, polls the backup list until the backup status is completed, then restores the database to the captured state.
3 steps inputs: apiToken, backupLabel, databaseId outputs: backupId, restoreStatus
1
createBackup
Trigger a manual backup of the database. The backup runs asynchronously and is accepted with a 202 status.
2
pollBackup
List the backups for the database and confirm the most recent backup has reached the completed status before attempting a restore.
3
restoreBackup
Restore the database to the state captured in the completed backup. The restore runs asynchronously and is accepted with a 202 status.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Prisma Postgres Backup and Restore
  summary: Take a manual database backup, poll until it completes, then restore the database from it.
  description: >-
    A safe point-in-time recovery flow for a Prisma Postgres database. The
    workflow triggers a manual backup, polls the backup list until the new
    backup reaches a completed status, and then restores the database from that
    backup. Polling and branching handle the asynchronous backup lifecycle so
    the restore only runs against a finished backup. 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: databaseBackupsApi
  url: ../openapi/prisma-database-backups-api-openapi.yml
  type: openapi
workflows:
- workflowId: backup-and-restore-database
  summary: Create a manual backup, wait for completion, and restore the database from it.
  description: >-
    Initiates a manual backup, polls the backup list until the backup status is
    completed, then restores the database to the captured state.
  inputs:
    type: object
    required:
    - apiToken
    - databaseId
    properties:
      apiToken:
        type: string
        description: Service token or OAuth access token for the Management API, sent as a Bearer token.
      databaseId:
        type: string
        description: Identifier of the database to back up and restore.
      backupLabel:
        type: string
        description: Optional label for the manual backup.
  steps:
  - stepId: createBackup
    description: >-
      Trigger a manual backup of the database. The backup runs asynchronously
      and is accepted with a 202 status.
    operationId: createDatabaseBackup
    parameters:
    - name: databaseId
      in: path
      value: $inputs.databaseId
    - name: Authorization
      in: header
      value: Bearer $inputs.apiToken
    requestBody:
      contentType: application/json
      payload:
        label: $inputs.backupLabel
    successCriteria:
    - condition: $statusCode == 202
    outputs:
      backupId: $response.body#/id
      status: $response.body#/status
  - stepId: pollBackup
    description: >-
      List the backups for the database and confirm the most recent backup has
      reached the completed status before attempting a restore.
    operationId: listDatabaseBackups
    parameters:
    - name: databaseId
      in: path
      value: $inputs.databaseId
    - name: Authorization
      in: header
      value: Bearer $inputs.apiToken
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $.data[0].status == "completed"
      type: jsonpath
    outputs:
      latestStatus: $response.body#/data/0/status
    onSuccess:
    - name: backupReady
      type: goto
      stepId: restoreBackup
      criteria:
      - context: $response.body
        condition: $.data[0].status == "completed"
        type: jsonpath
  - stepId: restoreBackup
    description: >-
      Restore the database to the state captured in the completed backup. The
      restore runs asynchronously and is accepted with a 202 status.
    operationId: restoreDatabaseBackup
    parameters:
    - name: databaseId
      in: path
      value: $inputs.databaseId
    - name: backupId
      in: path
      value: $steps.createBackup.outputs.backupId
    - name: Authorization
      in: header
      value: Bearer $inputs.apiToken
    successCriteria:
    - condition: $statusCode == 202
    outputs:
      restoreStatus: $response.body#/status
      message: $response.body#/message
  outputs:
    backupId: $steps.createBackup.outputs.backupId
    restoreStatus: $steps.restoreBackup.outputs.restoreStatus

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/prisma-postgres-backup-and-restore-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.