openapi: 3.1.0 info: title: Palo Alto Networks AIOps for NGFW BPA 5G Deregistered Trend Tests API description: AIOps for NGFW Best Practice Assessment (BPA) API. Provides programmatic access to submit BPA requests for Palo Alto Networks next-generation firewalls, check request processing status, and retrieve completed assessment reports. BPA reports analyze firewall configurations against Palo Alto Networks best practices and security benchmarks, identifying gaps and providing remediation guidance to improve security posture. Part of the Strata Cloud Manager platform. version: '1.0' contact: name: Palo Alto Networks Developer Support url: https://pan.dev/ license: name: Proprietary url: https://www.paloaltonetworks.com/legal servers: - url: https://api.stratacloud.paloaltonetworks.com/aiops/bpa/v1 description: AIOps for NGFW BPA API production server. security: - oauth2Bearer: [] tags: - name: Tests description: Synthetic test results for proactive monitoring of application reachability and performance from user endpoints. paths: /mt/monitor/adem/v1/tests/{test_id}/results: get: operationId: getTestResults summary: Palo Alto Networks Get Synthetic Test Results description: Returns results for a specific synthetic test. Synthetic tests periodically probe application endpoints from ADEM agents to measure availability, latency, DNS resolution time, TCP connection time, and HTTP response time. tags: - Tests parameters: - name: test_id in: path required: true description: Unique synthetic test identifier. schema: type: string example: '251820' - name: start_time in: query description: Start of the time range in ISO 8601 format. schema: type: string format: date-time example: '2026-07-21T13:05:19Z' - name: end_time in: query description: End of the time range in ISO 8601 format. schema: type: string format: date-time example: '2026-01-05T17:18:17Z' - name: time_range in: query description: Relative time range shorthand. schema: type: string enum: - last_1_hour - last_4_hours - last_24_hours - last_7_days example: last_4_hours - name: user_id in: query description: Filter results by specific user. schema: type: string example: '307503' - name: offset in: query schema: type: integer default: 0 example: 0 - name: limit in: query schema: type: integer default: 100 example: 100 responses: '200': description: Test results returned successfully. content: application/json: schema: type: object properties: test_id: type: string data: type: array items: $ref: '#/components/schemas/TestResult' total: type: integer offset: type: integer limit: type: integer examples: GetTestResults200Example: summary: Default getTestResults 200 response x-microcks-default: true value: test_id: '558183' data: - timestamp: '2024-09-18T20:37:05Z' test_id: '283347' agent_id: '367432' user_id: '579891' status: failure latency_ms: 26.94 dns_time_ms: 34.6 tcp_connect_ms: 22.64 ttfb_ms: 99.24 http_status_code: 51 error_message: example-error_message total: 499 offset: 381 limit: 574 '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServerError' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: responses: Forbidden: description: Insufficient permissions for this operation. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' Unauthorized: description: Missing or invalid OAuth2 access token. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' BadRequest: description: Invalid request parameters or body. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' InternalServerError: description: Internal server error. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' schemas: ErrorResponse: type: object properties: _errors: type: array items: type: object properties: code: type: string example: example-code message: type: string example: Firewall incident blocked blocked firewall configured firewall. details: type: object example: {} example: - code: example-code message: Security detected monitoring activity firewall violation activity. details: {} _request_id: type: string example: '921009' TestResult: type: object properties: timestamp: type: string format: date-time description: Timestamp of the test execution. example: '2024-09-18T20:37:05Z' test_id: type: string description: Synthetic test identifier. example: '283347' agent_id: type: string description: Agent that ran the test. example: '367432' user_id: type: string description: User associated with the agent. example: '579891' status: type: string enum: - success - failure - timeout description: Test execution result status. example: failure latency_ms: type: number description: Total response latency in milliseconds. example: 26.94 dns_time_ms: type: number description: DNS resolution time in milliseconds. example: 34.6 tcp_connect_ms: type: number description: TCP connection establishment time in milliseconds. example: 22.64 ttfb_ms: type: number description: Time to first byte for HTTP tests in milliseconds. example: 99.24 http_status_code: type: integer description: HTTP response status code for HTTP type tests. example: 51 error_message: type: string description: Error message if the test failed. example: example-error_message securitySchemes: oauth2Bearer: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 Bearer token for SASE platform authentication. Obtain using the client_credentials grant with your SASE service account client ID and client secret.