Apidog · Arazzo Workflow

Apidog Backup And Restore Project

Version 1.0.0

Export a project as a backup document, then branch to restore it into a recovery project only when the export succeeds.

1 workflow 1 source API 1 provider
View Spec View on GitHub AI CodingAPI DesignAPI LifecycleAPI TestingCollaborationDesign-FirstDocumentationMCPMockingPlatformArazzoWorkflows

Provider

apidog

Workflows

backup-and-restore-project
Export a project as a backup and conditionally restore it into a recovery project.
Exports the source project as an OpenAPI document, branches on the export success flag, and imports the backup into the recovery project when the backup succeeded.
2 steps inputs: accessToken, apiVersion, recoveryProjectId, sourceProjectId outputs: backupSuccess, restoreSuccess
1
backupExport
Export the source project as a full OpenAPI 3.1 JSON document to serve as the backup payload.
2
restoreImport
Import the backup document into the recovery project, overwriting existing endpoints so the recovery project matches the backup exactly.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Apidog Backup And Restore Project
  summary: Export a project as a backup document, then branch to restore it into a recovery project only when the export succeeds.
  description: >-
    Captures a point-in-time backup of an Apidog project by exporting its API
    specification, then conditionally restores that backup into a recovery
    project. The workflow branches on the export result: when the export
    reports success it imports the captured document into the recovery project,
    and when it does not it ends without writing anything. Each step spells out
    its request inline — including the required Apidog API version header and
    bearer authentication — so the flow can be read and executed without opening
    the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: importAndExportApi
  url: ../openapi/apidog-import-and-export-api-openapi.yml
  type: openapi
workflows:
- workflowId: backup-and-restore-project
  summary: Export a project as a backup and conditionally restore it into a recovery project.
  description: >-
    Exports the source project as an OpenAPI document, branches on the export
    success flag, and imports the backup into the recovery project when the
    backup succeeded.
  inputs:
    type: object
    required:
    - accessToken
    - apiVersion
    - sourceProjectId
    - recoveryProjectId
    properties:
      accessToken:
        type: string
        description: Apidog personal API access token used as the Bearer Token.
      apiVersion:
        type: string
        description: The Apidog API version header value (e.g. 2024-03-28).
      sourceProjectId:
        type: integer
        description: The project ID to back up.
      recoveryProjectId:
        type: integer
        description: The project ID to restore the backup into.
  steps:
  - stepId: backupExport
    description: >-
      Export the source project as a full OpenAPI 3.1 JSON document to serve as
      the backup payload.
    operationId: exportOpenApiData
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: X-Apidog-Api-Version
      in: header
      value: $inputs.apiVersion
    - name: projectId
      in: path
      value: $inputs.sourceProjectId
    requestBody:
      contentType: application/json
      payload:
        scope: ALL
        oasVersion: '3.1'
        exportFormat: JSON
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      backupSuccess: $response.body#/success
      backupDocument: $response.body#/data
    onSuccess:
    - name: backupOk
      type: goto
      stepId: restoreImport
      criteria:
      - context: $response.body
        condition: $.success == true
        type: jsonpath
    - name: backupFailed
      type: end
      criteria:
      - context: $response.body
        condition: $.success == false
        type: jsonpath
  - stepId: restoreImport
    description: >-
      Import the backup document into the recovery project, overwriting existing
      endpoints so the recovery project matches the backup exactly.
    operationId: importOpenApiData
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: X-Apidog-Api-Version
      in: header
      value: $inputs.apiVersion
    - name: projectId
      in: path
      value: $inputs.recoveryProjectId
    requestBody:
      contentType: application/json
      payload:
        input: $steps.backupExport.outputs.backupDocument
        options:
          endpointOverwriteBehavior: OVERWRITE_EXISTING
          schemaOverwriteBehavior: OVERWRITE_EXISTING
          deleteUnmatchedResources: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      restoreSuccess: $response.body#/success
      endpointsCreated: $response.body#/data/endpoint/created
      endpointsUpdated: $response.body#/data/endpoint/updated
  outputs:
    backupSuccess: $steps.backupExport.outputs.backupSuccess
    restoreSuccess: $steps.restoreImport.outputs.restoreSuccess

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/apidog-backup-and-restore-project-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.