Prisma Database Backups API

Operations for managing database backup and restore operations

Business capability
Disaster Recovery & Resilience BC-4220.60

Operations 4

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /v1/databases/{databaseId}/backups List a database's backups (v1) · Get list of backups #
Ask an LLM
“Can I cap how many backups the v1 API returns for a database?”
“Which backups exist for my database according to the v1 API?”
Tell an agent
Get the v1 backup list for database {databaseId}.
Show the latest {limit} backups of {databaseId}.
GET /databases/{databaseId}/backups List automatic and manual backups · Prisma List database backups #
Ask an LLM
“How do I see all automatic and manual backups for a database with their size?”
“What status are my database backups in?”
Tell an agent
List automatic and manual backups for database {databaseId}.
Show backup status and size for {databaseId}.
POST /databases/{databaseId}/backups Take a manual database backup · Prisma Create a manual database backup #
Ask an LLM
“Can I trigger a manual backup of a database before a risky migration?”
“Is a manual backup created synchronously or in the background?”
Tell an agent
Back up database {databaseId} now.
Create a manual backup of {databaseId} labeled {label}.
POST /databases/{databaseId}/backups/{backupId}/restore Restore a database from a backup · Prisma Restore a database from backup #
Ask an LLM
“What happens to current data when I restore a database from a backup?”
“How do I roll my database back to a specific backup?”
Tell an agent destructive · confirm first
Restore database {databaseId} from backup {backupId}.
Roll {databaseId} back to the state in backup {backupId}.

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/prisma:prisma-database-backups-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

prisma-database-backups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Prisma Database Backups API
  version: '1.0'
  description: 'Operations tagged Database Backups across 2 of this provider''s published API definitions: prisma-postgres-management-api-openapi.json, prisma-postgres-management-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.prisma.io
- url: https://api.prisma.io/v1
  description: Prisma Management API production server
tags:
- name: Database Backups
paths:
  /v1/databases/{databaseId}/backups:
    get:
      responses:
        '200':
          description: Returned backups for the given database.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        backupType:
                          type: string
                          enum:
                          - full
                          - incremental
                          - differential
                        createdAt:
                          type: string
                        size:
                          type: number
                        status:
                          type: string
                          enum:
                          - running
                          - completed
                          - failed
                          - unknown
                        type:
                          type: string
                          const: backup
                      required:
                      - id
                      - backupType
                      - createdAt
                      - status
                  meta:
                    type: object
                    properties:
                      backupRetentionDays:
                        type: number
                    required:
                    - backupRetentionDays
                  pagination:
                    type: object
                    properties:
                      hasMore:
                        type: boolean
                      limit:
                        anyOf:
                        - type: integer
                          minimum: 1
                          maximum: 100
                        - type: 'null'
                    required:
                    - hasMore
                    - limit
                required:
                - data
                - meta
                - pagination
        '401':
          description: Missing or invalid authorization token.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      hint:
                        type: string
                    required:
                    - code
                    - message
                required:
                - error
        '404':
          description: Database with the given ID was not found.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      hint:
                        type: string
                    required:
                    - code
                    - message
                required:
                - error
        '422':
          description: Remote database backups are not supported
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      hint:
                        type: string
                    required:
                    - code
                    - message
                required:
                - error
      operationId: getV1DatabasesByDatabaseIdBackups
      tags:
      - Database Backups
      parameters:
      - in: path
        name: databaseId
        schema:
          type: string
          pattern: ^(db_)?([cC][^\s-]{8,}|[a-z0-9]+)$
        required: true
      - in: query
        name: limit
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 25
      summary: Get list of backups
      description: Returns backups for the specified database.
      security:
      - OAuth2:
        - workspace:admin
        - offline_access
      - Bearer: []
    servers:
    - url: https://api.prisma.io
  /databases/{databaseId}/backups:
    get:
      operationId: listDatabaseBackups
      summary: Prisma List database backups
      description: Retrieves a list of all backups for a specific database, including automatic and manual backups with their status and size.
      tags:
      - Database Backups
      parameters:
      - $ref: '#/components/parameters/DatabaseId'
      responses:
        '200':
          description: Successfully retrieved list of backups
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/DatabaseBackup'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - bearerAuth: []
    post:
      operationId: createDatabaseBackup
      summary: Prisma Create a manual database backup
      description: Initiates a manual backup of the specified database. The backup process runs asynchronously. Use the backup ID to check status.
      tags:
      - Database Backups
      parameters:
      - $ref: '#/components/parameters/DatabaseId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BackupCreate'
      responses:
        '202':
          description: Backup creation initiated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DatabaseBackup'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - bearerAuth: []
    servers:
    - url: https://api.prisma.io/v1
      description: Prisma Management API production server
  /databases/{databaseId}/backups/{backupId}/restore:
    post:
      operationId: restoreDatabaseBackup
      summary: Prisma Restore a database from backup
      description: Restores a database to the state captured in a specific backup. This operation replaces the current database content with the backup data.
      tags:
      - Database Backups
      parameters:
      - $ref: '#/components/parameters/DatabaseId'
      - name: backupId
        in: path
        required: true
        description: Unique identifier of the backup to restore
        schema:
          type: string
      responses:
        '202':
          description: Database restore initiated
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    description: Status of the restore operation
                    enum:
                    - restoring
                  message:
                    type: string
                    description: Description of the restore operation
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - bearerAuth: []
    servers:
    - url: https://api.prisma.io/v1
      description: Prisma Management API production server
components:
  schemas:
    BackupCreate:
      type: object
      description: Request body for creating a manual backup
      properties:
        label:
          type: string
          description: Optional label for the backup
    DatabaseBackup:
      type: object
      description: A backup of a Prisma Postgres database
      properties:
        id:
          type: string
          description: Unique identifier for the backup
        databaseId:
          type: string
          description: Identifier of the source database
        type:
          type: string
          description: Type of backup
          enum:
          - automatic
          - manual
        status:
          type: string
          description: Current status of the backup
          enum:
          - pending
          - in_progress
          - completed
          - failed
        sizeBytes:
          type: integer
          format: int64
          description: Size of the backup in bytes
        createdAt:
          type: string
          format: date-time
          description: Timestamp when the backup was created
        completedAt:
          type: string
          format: date-time
          description: Timestamp when the backup completed
      required:
      - id
      - databaseId
      - type
      - status
      - createdAt
    Error:
      type: object
      description: Standard error response
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Machine-readable error code
            message:
              type: string
              description: Human-readable error message
            details:
              type: object
              description: Additional error context
              additionalProperties: true
          required:
          - code
          - message
  responses:
    RateLimited:
      description: Too many requests - rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource was not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication is required or the provided credentials are invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    InternalServerError:
      description: An unexpected error occurred on the server
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  parameters:
    DatabaseId:
      name: databaseId
      in: path
      required: true
      description: Unique identifier of the database
      schema:
        type: string
  securitySchemes:
    OAuth2:
      type: oauth2
      description: OAuth2 authentication
      flows:
        authorizationCode:
          authorizationUrl: https://auth.prisma.io/authorize
          tokenUrl: https://auth.prisma.io/token
          refreshUrl: https://auth.prisma.io/token
          scopes:
            workspace:admin: Full access to workspace resources
            offline_access: Offline access
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth2 token for API authentication
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Authentication via service token or OAuth 2.0 access token. Service tokens are created in the Prisma Console under Settings > Service Tokens. OAuth 2.0 tokens are obtained via the authorization endpoint at https://auth.prisma.io/authorize with token exchange at https://auth.prisma.io/token. PKCE is supported with S256 code challenge method.
externalDocs:
  description: Prisma Postgres Management API Documentation
  url: https://www.prisma.io/docs/postgres/introduction/management-api
x-refined-from:
- prisma-postgres-management-api-openapi.json
- prisma-postgres-management-openapi.yml