Palo Alto Networks · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Prisma AIRS Red Teaming Management Target API
14 actions
14 updates
phrasing
extends
openapi/palo-alto-networks-target-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Palo Alto Networks's API. It is a proposal applied on top of the contract, not a document Palo Alto Networks publishes.
What the actions change
x-apievangelist-phrasing
Targets 14
$.info
$.paths['/v1/target'].get
$.paths['/v1/target'].post
$.paths['/v1/target/{target_uuid}'].get
$.paths['/v1/target/{target_uuid}'].put
$.paths['/v1/target/{target_uuid}'].delete
$.paths['/v1/target/{target_uuid}/profile'].get
$.paths['/v1/target/{target_uuid}/profile'].put
$.paths['/v1/target/{target_uuid}/profile'].post
$.paths['/v1/target/probe'].post
$.paths['/v1/target/validate-auth'].post
$.paths['/v1/target/ms-copilot-studio/auth-url'].post
$.paths['/v1/target/ms-copilot-studio/token'].post
$.paths['/v1/target/ms-copilot-studio/token/{token_json_uuid}'].delete
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Prisma AIRS Red Teaming Management Target API
version: 1.0.0
extends: openapi/palo-alto-networks-target-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 13
- target: $.paths['/v1/target'].get
update:
x-apievangelist-phrasing:
intent: List scan targets
effect: read
questions:
- Which AI red-teaming scan targets have I configured?
- Can I filter my scan targets by type or status?
instructions:
- text: List my scan targets.
- text: Show scan targets of type {target_type} with status {status}.
slots:
target_type: query.target_type
status: query.status
- text: Find scan targets whose name matches {search}.
slots:
search: query.search
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target'].post
update:
x-apievangelist-phrasing:
intent: Create a scan target
effect: write
questions:
- How do I register a new target to scan?
- Can I skip connection validation when creating a target?
instructions:
- text: Create a scan target named {name}.
slots:
name: requestBody.name
- text: Add target {name} of type {target_type} with description {description}.
slots:
name: requestBody.name
target_type: requestBody.target_type
description: requestBody.description
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/{target_uuid}'].get
update:
x-apievangelist-phrasing:
intent: Get a scan target's details
effect: read
questions:
- What configuration is stored for a particular scan target?
- Can I see a target's connection parameters with secrets masked?
instructions:
- text: Show details for target {target_uuid}.
slots:
target_uuid: path.target_uuid
- text: Get the full configuration of scan target {target_uuid}.
slots:
target_uuid: path.target_uuid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/{target_uuid}'].put
update:
x-apievangelist-phrasing:
intent: Update a scan target
effect: write
questions:
- Can I change a target's connection settings after creating it?
- Is validation optional when I update an existing target?
instructions:
- text: Update target {target_uuid} and rename it to {name}.
slots:
target_uuid: path.target_uuid
name: requestBody.name
- text: Change the auth type of target {target_uuid} named {name} to {auth_type}.
slots:
target_uuid: path.target_uuid
name: requestBody.name
auth_type: requestBody.auth_type
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/{target_uuid}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a scan target
effect: destructive
questions:
- Can I permanently remove a scan target I no longer need?
- Does deleting a target also wipe its encrypted configuration?
instructions:
- text: Delete scan target {target_uuid}.
slots:
target_uuid: path.target_uuid
- text: Permanently remove target {target_uuid} and its stored config.
slots:
target_uuid: path.target_uuid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/{target_uuid}/profile'].get
update:
x-apievangelist-phrasing:
intent: Get a target's profiling results
effect: read
questions:
- What did profiling learn about my target?
- Can I see the merged user and profiler data for a target?
instructions:
- text: Show profiling results for target {target_uuid}.
slots:
target_uuid: path.target_uuid
- text: Get the profile data collected on target {target_uuid}.
slots:
target_uuid: path.target_uuid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/{target_uuid}/profile'].put
update:
x-apievangelist-phrasing:
intent: Edit a target's background context
effect: write
questions:
- Can I edit a target's background and extra context without revalidating the connection?
- Where do I add more context to a target's profile by hand?
instructions:
- text: Set the background of target {target_uuid} to {target_background}.
slots:
target_uuid: path.target_uuid
target_background: requestBody.target_background
- text: Add context {additional_context} to target {target_uuid}'s profile.
slots:
additional_context: requestBody.additional_context
target_uuid: path.target_uuid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/{target_uuid}/profile'].post
update:
x-apievangelist-phrasing:
intent: Start profiling a target
effect: write
questions:
- Can I manually kick off profiling for a target?
- What must a target have before profiling will start?
instructions:
- text: Start profiling target {target_uuid}.
slots:
target_uuid: path.target_uuid
- text: Re-run the profiler on target {target_uuid} now.
slots:
target_uuid: path.target_uuid
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/probe'].post
update:
x-apievangelist-phrasing:
intent: Probe a target with profiling questions
effect: write
questions:
- Can I send profiling questions to a target before saving it?
- Is there a way to fill in a target's background automatically from probe answers?
instructions:
- text: Run profiling probes against target {name}.
slots:
name: requestBody.name
- text: Probe {name} with fields {probe_fields} and return the background it reports.
slots:
name: requestBody.name
probe_fields: requestBody.probe_fields
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/validate-auth'].post
update:
x-apievangelist-phrasing:
intent: Validate target auth credentials
effect: read
questions:
- Can I check that OAuth2 credentials for a target actually work before saving?
- Does auth validation test headers and basic auth, or only check fields are present?
instructions:
- text: Validate {auth_type} credentials {auth_config}.
slots:
auth_type: requestBody.auth_type
auth_config: requestBody.auth_config
- text: Test the OAuth2 config {auth_config} by fetching a token, auth type {auth_type}.
slots:
auth_config: requestBody.auth_config
auth_type: requestBody.auth_type
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/ms-copilot-studio/auth-url'].post
update:
x-apievangelist-phrasing:
intent: Generate a Copilot Studio sign-in URL
effect: write
questions:
- How do I get the OAuth authorization URL for a Microsoft Copilot Studio target?
- What client and tenant details does the Copilot Studio auth URL need?
instructions:
- text: Generate a Copilot Studio auth URL for client {client_id} in tenant {tenant_id} with secret {client_secret}.
slots:
client_id: requestBody.client_id
tenant_id: requestBody.tenant_id
client_secret: requestBody.client_secret
- text: Create the Microsoft Copilot Studio login link for target {target_uuid}, tenant {tenant_id}, client {client_id}, secret {client_secret}.
slots:
target_uuid: requestBody.target_uuid
tenant_id: requestBody.tenant_id
client_id: requestBody.client_id
client_secret: requestBody.client_secret
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/ms-copilot-studio/token'].post
update:
x-apievangelist-phrasing:
intent: Exchange a Copilot Studio auth code
effect: write
questions:
- After signing in to Copilot Studio, how do I turn the auth response into stored tokens?
- Where are exchanged Copilot Studio tokens kept?
instructions:
- text: Exchange Copilot Studio auth response {auth_response} into token record {token_json_uuid} for client {client_id}, tenant {tenant_id}, secret {client_secret}.
slots:
auth_response: requestBody.auth_response
token_json_uuid: requestBody.token_json_uuid
client_id: requestBody.client_id
tenant_id: requestBody.tenant_id
client_secret: requestBody.client_secret
- text: 'Finish Copilot Studio login: store tokens under {token_json_uuid} from {auth_response} (client {client_id}, tenant {tenant_id}, secret {client_secret}).'
slots:
token_json_uuid: requestBody.token_json_uuid
auth_response: requestBody.auth_response
client_id: requestBody.client_id
tenant_id: requestBody.tenant_id
client_secret: requestBody.client_secret
method: generated
generated: '2026-09-26'
- target: $.paths['/v1/target/ms-copilot-studio/token/{token_json_uuid}'].delete
update:
x-apievangelist-phrasing:
intent: Delete Copilot Studio token records
effect: destructive
questions:
- If I cancel a Copilot Studio setup, how do I clean up the stored tokens?
- Can I remove both the auth flow and token cache records for Copilot Studio?
instructions:
- text: Delete Copilot Studio token records {token_json_uuid}.
slots:
token_json_uuid: path.token_json_uuid
- text: Clean up the cancelled Copilot Studio sign-in {token_json_uuid}.
slots:
token_json_uuid: path.token_json_uuid
method: generated
generated: '2026-09-26'