Palo Alto Networks Custom Attack API
Operations for custom attack configurations and prompts.
Operations for custom attack configurations and prompts.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/palo-alto-networks-customattack-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 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