Power BI · Arazzo Workflow

Power BI Export a Report for Archive

Version 1.0.0

Capture a report's metadata and page structure, then download the underlying PBIX file.

1 workflow 1 source API 1 provider
View Spec View on GitHub AnalyticsBusiness IntelligenceDashboardsData AnalysisReportingVisualizationArazzoWorkflows

Provider

power-bi

Workflows

report-export-archive
Archive a report as a PBIX file together with its metadata and pages.
Reads a report's metadata and dataset binding, lists its pages, and exports the PBIX binary so the report can be archived or committed to source control.
3 steps inputs: reportId outputs: datasetId, exportedFile, modifiedDateTime, pages, reportName
1
inspectReport
Read the report metadata, capturing the dataset binding and modification stamps that give the archived file its restore context.
2
listPages
Enumerate the report's pages and their display order, recording the structure that the exported binary would otherwise leave opaque.
3
exportPbix
Download the report as a PBIX file. The response body is the binary file itself rather than a JSON document.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Power BI Export a Report for Archive
  summary: Capture a report's metadata and page structure, then download the underlying PBIX file.
  description: >-
    The backup and source-control pattern for Power BI content. Exporting the
    PBIX on its own produces a binary with no context, so an archive that is
    actually restorable also needs the report's dataset binding and its page
    structure recorded alongside the file. This workflow reads the report
    metadata, enumerates its pages, and then downloads the PBIX. The export
    returns the file as a binary response body rather than JSON. 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
  x-realizes-capability-ids:
  - BC-610.50
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-610.50
      capability_name: Analytics & BI Management
      spec: power-bi-reports-api-openapi.yml
      confidence: 0.9
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: reportsApi
  url: ../openapi/power-bi-reports-api-openapi.yml
  type: openapi
workflows:
- workflowId: report-export-archive
  summary: Archive a report as a PBIX file together with its metadata and pages.
  description: >-
    Reads a report's metadata and dataset binding, lists its pages, and exports
    the PBIX binary so the report can be archived or committed to source control.
  inputs:
    type: object
    required:
    - reportId
    properties:
      reportId:
        type: string
        description: The identifier of the report to export.
  steps:
  - stepId: inspectReport
    description: >-
      Read the report metadata, capturing the dataset binding and modification
      stamps that give the archived file its restore context.
    operationId: getReport
    parameters:
    - name: reportId
      in: path
      value: $inputs.reportId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      reportName: $response.body#/name
      datasetId: $response.body#/datasetId
      reportType: $response.body#/reportType
      modifiedDateTime: $response.body#/modifiedDateTime
      modifiedBy: $response.body#/modifiedBy
  - stepId: listPages
    description: >-
      Enumerate the report's pages and their display order, recording the
      structure that the exported binary would otherwise leave opaque.
    operationId: getPages
    parameters:
    - name: reportId
      in: path
      value: $inputs.reportId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      pages: $response.body#/value
      firstPageName: $response.body#/value/0/name
  - stepId: exportPbix
    description: >-
      Download the report as a PBIX file. The response body is the binary file
      itself rather than a JSON document.
    operationId: exportReport
    parameters:
    - name: reportId
      in: path
      value: $inputs.reportId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      exportedFile: $response.body
  outputs:
    reportName: $steps.inspectReport.outputs.reportName
    datasetId: $steps.inspectReport.outputs.datasetId
    modifiedDateTime: $steps.inspectReport.outputs.modifiedDateTime
    pages: $steps.listPages.outputs.pages
    exportedFile: $steps.exportPbix.outputs.exportedFile

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/power-bi-report-export-archive-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.