Palo Alto Networks Custom Attack API
Operations for custom attack configurations and prompts.
Operations for custom attack configurations and prompts.
openapi: 3.2.0
info:
title: Palo Alto Networks Custom Attack API
contact:
email: support@paloaltonetworks.com
name: Palo Alto Networks Technical Support
url: https://support.paloaltonetworks.com
license:
name: MIT
url: https://opensource.org/license/mit
termsOfService: https://www.paloaltonetworks.com/content/dam/pan/en_US/assets/pdf/legal/palo-alto-networks-end-user-license-agreement-eula.pdf
version: '1.0'
description: 'Operations tagged CustomAttack across 2 of this provider''s published API definitions: palo-alto-prisma-airs-redteam-data-plane-dp-openapi-openapi.yaml, palo-alto-prisma-airs-redteam-management-mp-openapi-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
security:
- bearerAuth: []
tags:
- name: CustomAttack
description: Operations for custom attack configurations and prompts.
paths:
/v1/custom-attacks/report/{job_id}:
get:
tags:
- CustomAttack
summary: Get custom attack Report
description: Get comprehensive custom attack report.
operationId: get_custom_attack_report_v1_custom_attacks_report__job_id__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/CustomAttackReportResponse'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attacks/report/{job_id}/prompt-sets:
get:
tags:
- CustomAttack
summary: Get prompt sets
description: Get prompt sets with filtering and pagination.
operationId: get_prompt_sets_v1_custom_attacks_report__job_id__prompt_sets_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: property_filters
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: JSON string of property filters
title: Property Filters
description: JSON string of property filters
- name: is_threat
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: Filter by threat status
title: Is Threat
description: Filter by threat status
- name: skip
in: query
required: false
schema:
type: integer
minimum: 0
description: Number of records to skip
default: 0
title: Skip
description: Number of records to skip
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Maximum number of records to return
default: 20
title: Limit
description: Maximum number of records to return
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PromptSetsReportResponse'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attacks/report/{job_id}/prompt-set/{prompt_set_id}/prompts:
get:
tags:
- CustomAttack
summary: Get prompts by set
description: Get prompts for a specific prompt set with pagination.
operationId: get_prompts_by_set_v1_custom_attacks_report__job_id__prompt_set__prompt_set_id__prompts_get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: prompt_set_id
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Id
- name: is_threat
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: Filter by threat status
title: Is Threat
description: Filter by threat status
- name: skip
in: query
required: false
schema:
type: integer
minimum: 0
description: Number of records to skip
default: 0
title: Skip
description: Number of records to skip
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Maximum number of records to return
default: 20
title: Limit
description: Maximum number of records to return
responses:
200:
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PromptDetailResponse'
title: Response Get Prompts By Set V1 Custom Attacks Report Job Id Prompt Set Prompt Set Id Prompts Get
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attacks/report/{job_id}/prompt/{prompt_id}:
get:
tags:
- CustomAttack
summary: Get prompt detail
description: Get detailed information for a specific prompt.
operationId: get_prompt_detail_v1_custom_attacks_report__job_id__prompt__prompt_id__get
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: prompt_id
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Id
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PromptDetailResponse'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attacks/job/{job_id}/list-custom-attacks:
get:
tags:
- CustomAttack
summary: List custom attacks
description: List custom attacks with V2 features.
operationId: list_custom_attacks_v1_custom_attacks_job__job_id__list_custom_attacks_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 records to skip
default: 0
title: Skip
description: Number of records to skip
- name: limit
in: query
required: false
schema:
type: integer
maximum: 1000
minimum: 1
description: Maximum number of records to return
default: 100
title: Limit
description: Maximum number of records to return
- 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: prompt_set_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by prompt set ID
title: Prompt Set Id
description: Filter by prompt set ID
- name: property_value
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: JSON string of property filters
title: Property Value
description: JSON string of property filters
- 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'
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomAttacksListResponse'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attacks/job/{job_id}/attack/{attack_id}/list-outputs:
get:
tags:
- CustomAttack
summary: Get attack outputs
description: Get outputs for a specific attack.
operationId: get_attack_outputs_v1_custom_attacks_job__job_id__attack__attack_id__list_outputs_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:
type: array
items:
$ref: '#/components/schemas/CustomAttackOutputResponseSchema'
title: Response Get Attack Outputs V1 Custom Attacks Job Job Id Attack Attack Id List Outputs Get
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attacks/job/{job_id}/property-stats:
get:
tags:
- CustomAttack
summary: Get property stats
description: Get property-based statistics for custom attacks.
operationId: get_property_stats_v1_custom_attacks_job__job_id__property_stats_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:
type: array
items:
type: object
additionalProperties: true
title: Response Get Property Stats V1 Custom Attacks Job Job Id Property Stats Get
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
/v1/custom-attack/custom-prompt-set:
post:
tags:
- CustomAttack
summary: Create a new custom prompt set
description: Create a new custom prompt set.
operationId: create_prompt_set_v1_custom_attack_custom_prompt_set_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetCreateRequestSchema'
required: true
responses:
201:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/list-custom-prompt-sets:
get:
tags:
- CustomAttack
summary: List custom prompt sets
description: List all custom prompt sets with pagination and filtering support.
operationId: list_prompt_sets_v1_custom_attack_list_custom_prompt_sets_get
parameters:
- name: skip
in: query
required: false
schema:
type: integer
minimum: 0
description: Number of records to skip
default: 0
title: Skip
description: Number of records to skip
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Maximum records to return
default: 10
title: Limit
description: Maximum records to return
- name: status
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by status
title: Status
description: Filter by status
- name: active
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: Filter by active status
title: Active
description: Filter by active status
- name: archive
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: Filter by archive status (None=non-archived only, True=archived only, False=non-archived only)
title: Archive
description: Filter by archive status (None=non-archived only, True=archived only, False=non-archived only)
- name: search
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search in name and description
title: Search
description: Search in name and description
- name: language
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by language code (ISO 639-1)
title: Language
description: Filter by language code (ISO 639-1)
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetListSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/custom-prompt-set/{prompt_set_uuid}:
get:
tags:
- CustomAttack
summary: Get prompt set details
description: Retrieve a specific prompt set by UUID with complete details including properties.
operationId: get_prompt_set_v1_custom_attack_custom_prompt_set__prompt_set_uuid__get
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
put:
tags:
- CustomAttack
summary: Update prompt set
description: Update prompt set details including name, description, and properties.
operationId: update_prompt_set_v1_custom_attack_custom_prompt_set__prompt_set_uuid__put
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetUpdateRequestSchema'
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/custom-prompt-set/{prompt_set_uuid}/archive:
put:
tags:
- CustomAttack
summary: Archive or unarchive a prompt set
description: Archive or unarchive a prompt set to manage its lifecycle.
operationId: archive_prompt_set_v1_custom_attack_custom_prompt_set__prompt_set_uuid__archive_put
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetArchiveRequestSchema'
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptSetResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/custom-prompt-set/custom-prompt:
post:
tags:
- CustomAttack
summary: Create prompt in a prompt set
description: Create a new prompt in a prompt set.
operationId: create_prompt_v1_custom_attack_custom_prompt_set_custom_prompt_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptCreateRequestSchema'
required: true
responses:
201:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/custom-prompt-set/{prompt_set_uuid}/list-custom-prompts:
get:
tags:
- CustomAttack
summary: List prompts in a prompt set
description: List all prompts within a specific prompt set with pagination and filtering.
operationId: list_prompts_in_set_v1_custom_attack_custom_prompt_set__prompt_set_uuid__list_custom_prompts_get
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
- name: skip
in: query
required: false
schema:
type: integer
minimum: 0
description: Number of records to skip
default: 0
title: Skip
description: Number of records to skip
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Maximum records to return
default: 10
title: Limit
description: Maximum records to return
- name: status
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by status
title: Status
description: Filter by status
- name: active
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: Filter by active status
title: Active
description: Filter by active status
- name: search
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search in prompt text
title: Search
description: Search in prompt text
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptListSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/custom-prompt-set/{prompt_set_uuid}/custom-prompt/{prompt_uuid}:
get:
tags:
- CustomAttack
summary: Get prompt details
description: Get a specific prompt by UUID.
operationId: get_prompt_v1_custom_attack_custom_prompt_set__prompt_set_uuid__custom_prompt__prompt_uuid__get
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
- name: prompt_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Uuid
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
put:
tags:
- CustomAttack
summary: Update prompt
description: Update an existing prompt.
operationId: update_prompt_v1_custom_attack_custom_prompt_set__prompt_set_uuid__custom_prompt__prompt_uuid__put
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
- name: prompt_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptUpdateRequestSchema'
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomPromptResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- CustomAttack
summary: Delete prompt
description: Delete a prompt.
operationId: delete_prompt_v1_custom_attack_custom_prompt_set__prompt_set_uuid__custom_prompt__prompt_uuid__delete
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
- name: prompt_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Uuid
responses:
204:
description: Successful Response
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/property-names:
get:
tags:
- CustomAttack
summary: Get property names
description: Get all available property names for use in prompt sets.
operationId: get_property_names_v1_custom_attack_property_names_get
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PropertyNamesListResponseSchema'
401:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- CustomAttack
summary: Create property name
description: Create a new property name that can be used in prompt sets.
operationId: create_property_name_v1_custom_attack_property_names_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PropertyNameCreateRequestSchema'
required: true
responses:
201:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PropertyNamesListResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/property-values/{property_name}:
get:
tags:
- CustomAttack
summary: Get property name
description: Get all available values for a specific property name.
operationId: get_property_values_v1_custom_attack_property_values__property_name__get
parameters:
- name: property_name
in: path
required: true
schema:
type: string
title: Property Name
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PropertyValuesResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/property-values:
post:
tags:
- CustomAttack
summary: Create property value
description: Create a new value for an existing property name.
operationId: create_property_value_v1_custom_attack_property_values_post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PropertyValueCreateRequestSchema'
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- CustomAttack
summary: Get values for multiple property names
description: Get values for multiple property names in a single request.
operationId: get_property_values_multiple_v1_custom_attack_property_values_get
parameters:
- name: property_names
in: query
required: true
schema:
type: string
description: Comma-separated list of property names
title: Property Names
description: Comma-separated list of property names
responses:
200:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PropertyValuesMultipleResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/upload-custom-prompts-csv:
post:
tags:
- CustomAttack
summary: Upload custom prompts
description: Upload a CSV file containing custom prompts with properties for a specific prompt set.
operationId: upload_prompts_csv_v1_custom_attack_upload_custom_prompts_csv_post
parameters:
- name: prompt_set_uuid
in: query
required: true
schema:
type: string
format: uuid
description: UUID of the prompt set
title: Prompt Set Uuid
description: UUID of the prompt set
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Body_upload_prompts_csv_v1_custom_attack_upload_custom_prompts_csv_post'
responses:
201:
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/BaseResponseSchema'
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/download-template/{prompt_set_uuid}:
get:
tags:
- CustomAttack
summary: Download template for a prompt set
description: Download a CSV template with columns for the prompt set's properties.
operationId: download_template_v1_custom_attack_download_template__prompt_set_uuid__get
parameters:
- name: prompt_set_uuid
in: path
required: true
schema:
type: string
format: uuid
title: Prompt Set Uuid
responses:
200:
description: Successful Response
content:
application/json:
schema: {}
422:
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
servers:
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/mgmt-plane
/v1/custom-attack/active-custom-prompt-sets:
get:
tags:
- CustomAttack
summary: List active custom prompt sets
description: List all active custom prompt sets available for use by data pl
# --- truncated at 32 KB (68 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/openapi/palo-alto-networks-customattack-api-openapi.yml