Palo Alto Networks BPA Report API API

The BPA Report API API from Palo Alto Networks — 3 operation(s) for bpa report api.

Operations 3

GET /bpa/v1/jobs/{id} Get Job Status #
GET /bpa/v1/reports/{id} Get BPA Reports #
POST /bpa/v1/requests Generate BPA Report #

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/palo-alto-networks-bpa-report-api-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

palo-alto-networks-bpa-report-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact: {}
  description: 'Programmatically request Best Practice Assessment Data for both free and premium instances of AIOps.

    '
  license:
    name: MIT
  termsOfService: https://www.paloaltonetworks.com/content/dam/pan/en_US/assets/pdf/legal/palo-alto-networks-end-user-license-agreement-eula.pdf
  title: Best Practice Assessment Report BPA Report API
  version: '1.0'
servers:
- url: https://bpa.paloaltonetworks.com
tags:
- name: BPA Report API
paths:
  /bpa/v1/jobs/{id}:
    get:
      description: Downloads the BPA assessment job status.
      operationId: get-bpa-v1-jobs-id
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/job-id'
                - properties:
                    status:
                      description: The status of the report generation job.
                      enum:
                      - UPLOAD_INITIATED
                      - CONFIG_PARSED
                      - COMPLETED_WITH_SUCCESS
                      - COMPLETED_WITH_ERROR
                  type: object
          description: OK
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      security:
      - Bearer: []
      servers:
      - url: https://api.stratacloud.paloaltonetworks.com/aiops
      summary: Get Job Status
      tags:
      - BPA Report API
  /bpa/v1/reports/{id}:
    get:
      description: "Retrieves the url for the completed BPA report. The `download-url` field contains a [signed \nURL](https://cloud.google.com/storage/docs/access-control/signed-urls) where you can download the report.\n\n> Note that this API endpoint should only be called when the report generation status is `COMPLETED_WITH_SUCCESS`.\n"
      operationId: get-bpa-v1-reports-id
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/job-id'
                - properties:
                    download-url:
                      description: The signed URL that will be used to download the Best Practices Assessment (BPA) report.
                      example: https://storage.googleapis.com/taskId/config.xml?X-Goog-Algorithm=GOOG4-RSA-SHA256&X-Goog-Credential=key%40project.iam.gserviceaccount.com%2F20230803%2Fauto%2Fstorage%2Fgoog4_request&X-Goog-Date=20230803T172537Z&X-Goog-Expires=3600&X-Goog-SignedHeaders=host&X-Goog-Signature=046d2e0e5f7c8f5100f50e8f057bcc222fcab2658bdc5cf4b4078dc93ef9dac5b815ed368afb09f2580cbc91818e49f0b9fe32857c13734f7b1bc131b6cd4ff370f5e5ffa839b6d9a4557ce3221324baa9e6cf6469088672b6688ba12c0765945f0a609e26c5878a3f16bd6f51108db2f2e71d3b532583d7713d6497cf1e942b0b295fcc4bf7d2c6ce5e479ac1ca5ed0f79bc5c1f36b234b678183ecfe0b27ee0c911fe529bfbe6cf9b3896230b9ab0a4a651dcd9babdbc1921fb0a513cf640f4e024c2523c9c3f3582ec19b3dac5b83cf44492305f69bb0545d1a0681e0c9cf7f5477bbdbf73f3f4352b8613d74a8f2d974e9a2b49187b6bd8e5df6a96e0f69
                      format: uri
                      type: string
                  type: object
          description: OK
        '400':
          description: Bad Request
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      security:
      - Bearer: []
      servers:
      - url: https://api.stratacloud.paloaltonetworks.com/aiops
      summary: Get BPA Reports
      tags:
      - BPA Report API
  /bpa/v1/requests:
    post:
      description: "Initiates the BPA report generation process using the configurable options.\n\nWhen you use a POST request to initiate a report generation, the response contains an `upload-url` field. This field contains a [signed URL](https://cloud.google.com/storage/docs/access-control/signed-urls). Use the signed URL to upload a PAN-OS [configuration file](https://docs.paloaltonetworks.com/pan-os/11-0/pan-os-admin/firewall-administration/manage-configuration-backups/save-and-export-firewall-configurations) to generate the report. \n\nThe `id` field contains the report generation job ID that you can use to track the report generation completion status. The generation time can vary depending on the size of the configuration file. For configuartion files under 100 megabytes, you can expect a report in about 10 seconds. You can [request the status of a generated BPA report](/aiops-ngfw-bpa/api/get-bpa-v-1-jobs-id/) to get the current completion status.\n\nBelow is an example curl request you can use to upload your XML configuration file to the generated signed-URL you receive in the response: \n```\ncurl -X PUT --upload-file ${path/to/file} '${signed-upload-url}'\n```"
      operationId: post-bpa-v1-requests
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/report-request'
          application/xml:
            schema:
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/job-id'
                - $ref: '#/components/schemas/report-request'
                - properties:
                    upload-url:
                      description: The signed URL that will be used to upload the PAN-OS configuration file.
                      example: https://storage.googleapis.com/taskId/config.xml?X-Goog-Algorithm=GOOG4-RSA-SHA256&X-Goog-Credential=key%40project.iam.gserviceaccount.com%2F20230803%2Fauto%2Fstorage%2Fgoog4_request&X-Goog-Date=20230803T172537Z&X-Goog-Expires=3600&X-Goog-SignedHeaders=host&X-Goog-Signature=046d2e0e5f7c8f5100f50e8f057bcc222fcab2658bdc5cf4b4078dc93ef9dac5b815ed368afb09f2580cbc91818e49f0b9fe32857c13734f7b1bc131b6cd4ff370f5e5ffa839b6d9a4557ce3221324baa9e6cf6469088672b6688ba12c0765945f0a609e26c5878a3f16bd6f51108db2f2e71d3b532583d7713d6497cf1e942b0b295fcc4bf7d2c6ce5e479ac1ca5ed0f79bc5c1f36b234b678183ecfe0b27ee0c911fe529bfbe6cf9b3896230b9ab0a4a651dcd9babdbc1921fb0a513cf640f4e024c2523c9c3f3582ec19b3dac5b83cf44492305f69bb0545d1a0681e0c9cf7f5477bbdbf73f3f4352b8613d74a8f2d974e9a2b49187b6bd8e5df6a96e0f69
                      format: uri
                      type: string
                  type: object
          description: Generated the BPA Report
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      security:
      - Bearer: []
      servers:
      - url: https://api.stratacloud.paloaltonetworks.com/aiops
      summary: Generate BPA Report
      tags:
      - BPA Report API
components:
  schemas:
    report-request:
      properties:
        family:
          description: The platform family of the device.
          enum:
          - 7000f
          - 5400f
          - 5200f
          - 5000f
          - 3400f
          - 3200f
          - 3000f
          - 1400f
          - 800f
          - 400f
          - 220f
          - vm
          - m
        model:
          description: The model of the device.
          enum:
          - PA-7080
          - PA-7050
          - PA-5450
          - PA-5440
          - PA-5430
          - PA-5420
          - PA-5410
          - PA-5280
          - PA-5260
          - PA-5240
          - PA-5220
          - PA-5060
          - PA-5050
          - PA-5020
          - PA-3440
          - PA-3430
          - PA-3420
          - PA-3410
          - PA-3260
          - PA-3250
          - PA-3220
          - PA-3050
          - PA-3020
          - PA-1420
          - PA-1410
          - PA-850
          - PA-820
          - PA-460
          - PA-450
          - PA-445
          - PA-440
          - PA-415
          - PA-410
          - PA-220
          - PA-220R
          - Panorama
        requester-email:
          description: The email address of the person requesting the BPA report.
          example: joe@alvisofincorp.com
          format: email
          type: string
        requester-name:
          description: The name of the person requesting the BPA report.
          example: Joe User
          type: string
        serial:
          description: The serial number of the device.
          example: '023101010101'
          type: string
        version:
          description: The PAN-OS version of the device. The API supports versions such as 11.0 or 11.0.1.
          example: 10.2.4
          type: string
      required:
      - requester-name
      - requester-email
      - serial
      - model
      - family
      - version
      title: report-request
      type: object
    job-id:
      properties:
        id:
          description: The generated report ID.
          example: 123e4567-e89b-12d3-a456-426655440000
          format: uuid
          type: string
      title: id
      type: object
  parameters:
    id:
      description: The unique identifier for the request.
      in: path
      name: id
      required: true
      schema:
        example: 123e4567-e89b-12d3-a456-426655440000
        format: uuid
        type: string
  securitySchemes:
    Bearer:
      scheme: bearer
      type: http