Palo Alto Networks Report API
Operations for generating and retrieving scan job reports for static and dynamic.
Operations for generating and retrieving scan job reports for static and dynamic.
openapi: 3.2.0
info:
title: Prisma AIRS Red Teaming Dataplane Report API
description: Red Teaming Data Plane API - Data processing and scanning services for AI/ML model security. © 2025 Palo Alto Networks, Inc
version: 0.7.75
termsOfService: https://www.paloaltonetworks.com/content/dam/pan/en_US/assets/pdf/legal/palo-alto-networks-end-user-license-agreement-eula.pdf
license:
name: MIT
url: https://opensource.org/license/mit
contact:
email: support@paloaltonetworks.com
name: Palo Alto Networks Technical Support
url: https://support.paloaltonetworks.com
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
security:
- bearerAuth: []
tags:
- name: Report
description: Operations for generating and retrieving scan job reports for static and dynamic.
paths:
/v1/report/static/{job_id}/list-attacks:
get:
tags:
- Report
summary: List attacks for a scan
description: List attacks with filtering and pagination.
operationId: list_attacks_v1_report_static__job_id__list_attacks_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Number of attacks to return (1-100)
default: 50
title: Limit
description: Number of attacks to return (1-100)
- name: skip
in: query
required: false
schema:
type: integer
minimum: 0
description: Number of attacks to skip for pagination
default: 0
title: Skip
description: Number of attacks to skip for pagination
- name: attack_status
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/AttackStatus'
- type: 'null'
description: Filter by attack processing status
title: Attack Status
description: Filter by attack processing status
- name: attack_type
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/AttackType'
- type: 'null'
description: Filter by attack type
title: Attack Type
description: Filter by attack type
- name: category
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/Category'
- type: 'null'
description: Filter by attack category
title: Category
description: Filter by attack category
- name: sub_category
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/SecuritySubCategory'
- $ref: '#/components/schemas/SafetySubCategory'
- $ref: '#/components/schemas/BrandSubCategory'
- type: 'null'
description: Filter by attack subcategory
title: Sub Category
description: Filter by attack subcategory
- name: compliance
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/ComplianceSubCategory'
- type: 'null'
description: Filter by compliance framework
title: Compliance
description: Filter by compliance framework
- name: threat
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: '[Deprecated: use status] Filter by threat status'
title: Threat
description: '[Deprecated: use status] Filter by threat status'
- name: severity
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/SeverityFilter'
- type: 'null'
description: Filter by severity level
title: Severity
description: Filter by severity level
- name: status
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/StatusQueryParam'
- type: 'null'
description: 'Filter by status: SUCCESSFUL, FAILED, ERROR'
title: Status
description: 'Filter by status: SUCCESSFUL, FAILED, ERROR'
- name: attack_modality
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/AttackModality'
- type: 'null'
description: 'Filter by attack modality: FILE (document attacks) or TEXT (text-only)'
title: Attack Modality
description: 'Filter by attack modality: FILE (document attacks) or TEXT (text-only)'
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AttackListResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/static/{job_id}/attack/{attack_id}:
get:
tags:
- Report
summary: Get attack details
description: Get detailed attack information including outputs and framework techniques.
operationId: get_attack_detail_v1_report_static__job_id__attack__attack_id__get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: attack_id
in: path
required: true
schema:
type: string
format: uuid
title: Attack Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AttackDetailResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/static/{job_id}/report:
get:
tags:
- Report
summary: Get attack library report
description: Get attack library report for a job. Raises ForbiddenError if report is partially complete and locked.
operationId: get_attack_report_v1_report_static__job_id__report_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/StaticJobReportSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/static/{job_id}/runtime-policy-config:
get:
tags:
- Report
summary: Get attack library runtime security profile
description: Get Runtime security profile for a static job.
operationId: get_static_runtime_security_policy_config_v1_report_static__job_id__runtime_policy_config_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RuntimeSecurityProfileResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/static/{job_id}/remediation:
get:
tags:
- Report
summary: Get attack library scan remediation
description: Get other remediation measures for a static job.
operationId: get_static_remediations_v1_report_static__job_id__remediation_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RemediationResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/dynamic/{job_id}/report:
get:
tags:
- Report
summary: Get agent scan report
description: Get dynamic job report for a job.
operationId: get_dynamic_job_report_v1_report_dynamic__job_id__report_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DynamicJobReportSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/dynamic/{job_id}/runtime-policy-config:
get:
tags:
- Report
summary: Get agent scan runtime security profile
description: Get Runtime security profile for a dynamic job.
operationId: get_dynamic_runtime_security_policy_config_v1_report_dynamic__job_id__runtime_policy_config_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RuntimeSecurityProfileResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/dynamic/{job_id}/remediation:
get:
tags:
- Report
summary: Get agent scan remediation
description: Get other remediation measures for a dynamic job.
operationId: get_dynamic_remediations_v1_report_dynamic__job_id__remediation_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RemediationResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/dynamic/{job_id}/list-goals:
get:
tags:
- Report
summary: List agent scan goals
description: Get the goals for a job.
operationId: list_dynamic_job_goals_v1_report_dynamic__job_id__list_goals_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: skip
in: query
required: false
schema:
type: integer
minimum: 0
description: Number of goals to skip for pagination
default: 0
title: Skip
description: Number of goals to skip for pagination
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Number of goals to return (1-100)
default: 20
title: Limit
description: Number of goals to return (1-100)
- name: count
in: query
required: false
schema:
type: boolean
description: Include total count of goals
default: true
title: Count
description: Include total count of goals
- name: status
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/StatusQueryParam'
- type: 'null'
description: Filter by status
title: Status
description: Filter by status
- name: goal_type
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/GoalTypeQueryParam'
- type: 'null'
description: Filter by goal type
title: Goal Type
description: Filter by goal type
- name: search
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search string to filter goals
title: Search
description: Search string to filter goals
- name: goal_category
in: query
required: false
schema:
anyOf:
- $ref: '#/components/schemas/GoalCategory'
- type: 'null'
description: Filter by goal category
title: Goal Category
description: Filter by goal category
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/GoalListResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/dynamic/{job_id}/goal/{goal_id}/list-streams:
get:
tags:
- Report
summary: List agent scan goal deatils
description: Get streams for a specific goal in a job.
operationId: list_dynamic_job_streams_v1_report_dynamic__job_id__goal__goal_id__list_streams_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: goal_id
in: path
required: true
schema:
type: string
format: uuid
title: Goal Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/StreamListResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/dynamic/stream/{stream_id}:
get:
tags:
- Report
summary: List agent scan stream details
operationId: get_stream_detail_v1_report_dynamic_stream__stream_id__get
parameters:
- name: stream_id
in: path
required: true
schema:
type: string
format: uuid
title: Stream Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/StreamDetailResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Get detailed stream information including iteration data for a specific stream.
/v1/report/{job_id}/download:
get:
tags:
- Report
summary: Download report
description: Download report files for a job.
operationId: download_report_v1_report__job_id__download_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: file_format
in: query
required: true
schema:
$ref: '#/components/schemas/FileFormat'
description: Format of the report file (CSV, JSON, or ALL)
description: Format of the report file (CSV, JSON, or ALL)
responses:
200:
description: Successful Response
content:
application/json:
schema: {}
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/{job_id}/generate-partial-report:
post:
tags:
- Report
summary: Generate partial scan report
description: 'Unlock a partial report by consuming a quota credit. This endpoint: - Validates the job is PARTIALLY_COMPLETE - Consumes 1 quota credit of the job type - Unlocks the report for viewing **Returns:** - Updated job information with unlocked report'
operationId: generate_partial_job_report_v1_report__job_id__generate_partial_report_post
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
200:
description: Successful Response
content:
application/json:
schema: {}
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/v1/report/static/{job_id}/attack-multi-turn/{attack_id}:
get:
tags:
- Report
summary: Get multi-turn attack details
description: Get detailed multi-turn attack information including outputs and framework techniques.
operationId: get_attack_multi_turn_detail_v1_report_static__job_id__attack_multi_turn__attack_id__get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: attack_id
in: path
required: true
schema:
type: string
format: uuid
title: Attack Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AttackMultiTurnDetailResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
TechniqueModel:
properties:
id:
type: string
title: Id
description: Technique unique identifier
display_name:
type: string
title: Display Name
description: Technique display name for frontend
compliance_id:
type: string
title: Compliance Id
description: Associated compliance framework ID
description:
type: string
title: Description
description: Technique description
link:
type: string
title: Link
description: Technique documentation link
version:
type: string
title: Version
description: Technique version
active:
type: boolean
title: Active
description: Whether technique is active
type: object
required:
- id
- display_name
- compliance_id
- description
- link
- version
- active
title: TechniqueModel
description: Pydantic model for technique data
StaticJobReportSchema:
properties:
asr:
anyOf:
- type: number
maximum: 100.0
minimum: 0.0
- type: 'null'
title: Asr
description: Attack Success Rate percentage (0-100)
score:
anyOf:
- type: number
maximum: 100.0
minimum: 0.0
- type: 'null'
title: Score
description: Overall job performance score (0-100)
security_report:
anyOf:
- $ref: '#/components/schemas/CategoryReportSchema'
- type: 'null'
description: Security risk overview widget
safety_report:
anyOf:
- $ref: '#/components/schemas/CategoryReportSchema'
- type: 'null'
description: Safety risk overview widget
brand_report:
anyOf:
- $ref: '#/components/schemas/CategoryReportSchema'
- type: 'null'
description: Brand reputation risk overview widget
compliance_report:
anyOf:
- items:
$ref: '#/components/schemas/ComplianceReportSchema'
type: array
- type: 'null'
title: Compliance Report
description: Compliance widget with all frameworks
severity_report:
$ref: '#/components/schemas/SeverityReportSchema'
description: Breakdown of all successful attacks by severity level for the entire job
report_summary:
anyOf:
- type: string
- type: 'null'
title: Report Summary
description: Report summary from the LLM for the statics job run
recommendations:
anyOf:
- $ref: '#/components/schemas/StaticJobRemediationRecommendationSchema'
- type: 'null'
description: Remediation recommendations with security profile and actionable fixes
type: object
required:
- severity_report
title: StaticJobReportSchema
description: Complete static job report data structure.
StaticJobRemediationRecommendationSchema:
properties:
runtime_security_policy_configuration:
anyOf:
- items:
$ref: '#/components/schemas/RuntimeSecurityPolicySchema'
type: array
- type: 'null'
title: Runtime Security Policy Configuration
description: Recommended runtime security policy configuration
other_measures:
items:
$ref: '#/components/schemas/StaticJobRemediationSchema'
type: array
title: Other Measures
description: List of applicable remediations for static job
type: object
title: StaticJobRemediationRecommendationSchema
description: Remediation recommendations with security profile and other remediations. To build and store in db
PaginationSchema:
properties:
total_items:
anyOf:
- type: integer
- type: 'null'
title: Total Items
type: object
title: PaginationSchema
AttackModality:
type: string
enum:
- TEXT
- FILE
title: AttackModality
description: 'Per-attack delivery modality for report display + filtering.
FILE = the attack carries a document (file_url set); TEXT = text-only. This is
a per-row value (distinct from the scan-level include_file_attacks toggle).
'
Category:
type: string
enum:
- SECURITY
- SAFETY
- COMPLIANCE
- BRAND
title: Category
PolicyType:
type: string
enum:
- PROMPT_INJECTION
- TOXIC_CONTENT
- CUSTOM_TOPIC_GUARDRAILS
- MALICIOUS_CODE_DETECTION
- MALICIOUS_URL_DETECTION
- SENSITIVE_DATA_PROTECTION
title: PolicyType
description: Policy types with metadata.
ComplianceWithTechniqueModel:
properties:
id:
type: string
title: Id
description: Compliance framework unique identifier
display_name:
type: string
title: Display Name
description: Compliance framework display name for frontend
description:
type: string
title: Description
description: Compliance framework description
active:
type: boolean
title: Active
description: Whether compliance framework is active
version:
type: string
title: Version
description: Compliance framework version
link:
type: string
title: Link
description: Compliance framework documentation link
techniques:
items:
$ref: '#/components/schemas/TechniqueModel'
type: array
title: Techniques
description: List of Techniques
type: object
required:
- id
- display_name
- description
- active
- version
- link
- techniques
title: ComplianceWithTechniqueModel
StreamDetailResponseSchema:
properties:
uuid:
type: string
format: uuid
title: Uuid
tsg_id:
type: string
title: Tsg Id
job_id:
type: string
format: uuid
title: Job Id
description: Job identifier
target_id:
type: string
format: uuid
title: Target Id
description: Target identifier
stream_idx:
type: integer
title: Stream Idx
description: Stream index
default: 0
iteration:
type: integer
title: Iteration
description: Iteration
default: 0
goal_id:
type: string
format: uuid
title: Goal Id
description: Goal identifier
goal:
anyOf:
- type: string
- type: 'null'
title: Goal
description: Goal to use in the backend
marked_safe:
type: boolean
title: Marked Safe
description: Marked safe
default: false
stream_type:
anyOf:
- $ref: '#/components/schemas/StreamType'
- type: 'null'
default: NORMAL
threat:
type: boolean
title: Threat
description: Indicates if it is a threat
default: false
first_threat_iteration:
anyOf:
- $ref: '#/components/schemas/StreamIterationDataSchema'
- type: 'null'
description: First threat iteration data (denormalized JSONB for performance)
created_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Created At
updated_at:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Updated At
extra_info:
additionalProperties: true
type: object
title: Extra Info
description: Extra information
version:
anyOf:
- type: integer
- type: 'null'
title: Version
description: Stream schema version
error:
anyOf:
- type: boolean
- type: 'null'
title: Error
description: Whether this stream encountered errors
error_message:
anyOf:
- type: string
- type: 'null'
title: Error Message
description: Error message details
iterations:
items:
$ref: '#/components/schemas/StreamIterationDataResponseSchema'
type: array
title: Iterations
description: List of iterations
goal_category:
anyOf:
- $ref: '#/components/schemas/GoalCategory'
- type: 'null'
description: Goal category for filtering and allocation
goal_metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Goal Metadata
description: Per-goal metadata (e.g. TOOL_CHAINING tool_sequence, trigger_text, data_flow_narrative, success_markers)
type: object
required:
- uuid
- tsg_id
- job_id
- target_id
- goal_id
title: StreamDetailResponseSchema
GoalCategory:
type: string
enum:
- GOAL_MANIPULATION
- PRIVILEGE_MISUSE
- TOOL_MISUSE
- TOOL_CHAINING
- TOXIC_CONTENT_GENERATION
- CUSTOM
title: GoalCategory
CategoryReportSchema:
properties:
id:
type: string
title: Id
description: Unique identifier
display_name:
type: string
title: Display Name
description: Frontend display name
description:
type: string
title: Description
description: Description
preselect:
type: boolean
title: Preselect
description: Whether this category should be preselected in UI
default: true
sub_categories:
items:
$ref: '#/components/schemas/SubCategoryStatsSchema'
type: array
title: Sub Categories
description: Statistics per subcategory (e.g., ADVERSARIAL_SUFFIX, BIAS)
asr:
type: number
maximum: 100.0
minimum: 0.0
title: Asr
description: Attack success rate percentage
total_prompts:
type: integer
title: Total Prompts
description: Total unique prompts used
total_attacks:
type: integer
title: Total Attacks
description: Total attacks executed
successful:
type: integer
title: Successful
description: Total successful attacks
failed:
type: integer
title: Failed
description: Total failed attacks
type: object
required:
- id
- display_name
- description
- sub_categories
- asr
- total_prompts
- total_attacks
- successful
- failed
title: CategoryReportSchema
description: Security or Safety risk overview widget data.
GoalTypeQueryParam:
type: string
enum:
- AGENT
- HUMAN_AUGMENTED
title: GoalTypeQueryParam
CustomTopicGuardrailsSchema:
properties:
action:
$ref: '#/components/schemas/GuardrailAction'
description: 'Action to take: ''allow'', ''block'''
default: BLOCK
blocked_topics:
items:
type: string
type: array
title: Blocked Topics
description: List of blocked topics
type: object
title: CustomTopicGuardrailsSchema
description: Custom topic guardrails with blocked topics.
RemediationDetailSchema:
properties:
remediation:
type: string
title: Remediation
description: Remediation recommendation title
description:
type: string
title: Description
description: Detailed description of the remediation
resource_links:
items:
type: string
type: array
title: Resource Links
description: URLs for additional resources and documentation
priority_level:
type: string
description: Priority level for this remediation
ease_of_implementation_level:
type: string
description: Ease of implementation level for this remediation
effectiveness_level:
type: string
description: Effectiveness rating for this remediation
type: object
required:
- remediation
- description
title: RemediationDetailSchema
PrerequisiteModel:
properties:
id:
type: string
title: Id
description: Prerequisite unique identifier
display_name:
type: string
title: Display Name
description: Prerequisite display name for frontend
description:
type: string
title: Description
descript
# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/openapi/palo-alto-networks-report-api-openapi.yml