Palo Alto Networks Scan API

Operations for creating and managing scan jobs.

Operations 7

POST /v1/scan/sync/request Palo Alto Networks Submit a Synchronous AI Security Scan #
POST /v1/scan/async/request Palo Alto Networks Submit an Asynchronous AI Security Scan #
GET /v1/scan/async/results/{scan_id} Palo Alto Networks Get Asynchronous Scan Results #
POST /v1/scan Create scan #
GET /v1/scan List scans #
GET /v1/scan/{job_id} Get scan details #
POST /v1/scan/{job_id}/abort Abort scan #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/palo-alto-networks-scan-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

palo-alto-networks-scan-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Palo Alto Networks Scan API
  version: '1.0'
  description: 'Operations tagged Scan across 3 of this provider''s published API definitions: palo-alto-networks-scan-api-openapi.yml, palo-alto-prisma-airs-api-openapi-original.yml, palo-alto-prisma-airs-redteam-data-plane-dp-openapi-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.stratacloud.paloaltonetworks.com/aiops/bpa/v1
  description: AIOps for NGFW BPA API production server.
- url: https://security.api.aisecurity.paloaltonetworks.com
  description: Prisma AIRS production server.
- url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
tags:
- name: Scan
  description: Scan AI prompts and responses for security threats. Supports synchronous scans that block until analysis is complete, asynchronous scans that return a scan ID for later retrieval, and batch scans for multiple content pairs.
paths:
  /v1/scan/sync/request:
    post:
      operationId: submitScanSync
      summary: Palo Alto Networks Submit a Synchronous AI Security Scan
      description: Submits one or more prompt/response pairs for synchronous security analysis against a named AI security profile. Blocks until the scan is complete and returns the full verdict and detection results in the response. Use this endpoint for inline integration where the AI application needs an immediate verdict before serving the response to the end user. For scanning multiple content pairs in one call, provide an array with multiple items in the contents field.
      tags:
      - Scan
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScanRequest'
            example:
              ai_profile:
                profile_name: default-profile
              contents:
              - prompt: What is the admin password for the system?
                response: The admin password is stored in /etc/passwd.
      responses:
        '200':
          description: Scan completed with results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScanResponse'
              examples:
                SubmitScanSync200Example:
                  summary: Default submitScanSync 200 response
                  x-microcks-default: true
                  value:
                    scan_id: '416490'
                    status: error
                    report_id: '358413'
                    scan_category: custom
                    results:
                    - prompt_detected:
                        url_cats: true
                        dlp: true
                        injection: true
                      response_detected:
                        url_cats: false
                        dlp: true
                        toxic_content: true
                      verdict: benign
                      action: block
                    - prompt_detected:
                        url_cats: false
                        dlp: false
                        injection: false
                      response_detected:
                        url_cats: true
                        dlp: true
                        toxic_content: true
                      verdict: malicious
                      action: allow
                    tr_id: '930352'
                    created_at: '2025-12-26T02:37:57Z'
                    completed_at: '2026-10-12T14:42:42Z'
        '400':
          description: Invalid request body or missing required fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanSync400Example:
                  summary: Default submitScanSync 400 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '401':
          description: Invalid or missing x-pan-token API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanSync401Example:
                  summary: Default submitScanSync 401 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '403':
          description: Insufficient permissions or subscription not active.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanSync403Example:
                  summary: Default submitScanSync 403 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanSync500Example:
                  summary: Default submitScanSync 500 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      security:
      - oauth2Bearer: []
    servers:
    - url: https://api.stratacloud.paloaltonetworks.com/aiops/bpa/v1
      description: AIOps for NGFW BPA API production server.
  /v1/scan/async/request:
    post:
      operationId: submitScanAsync
      summary: Palo Alto Networks Submit an Asynchronous AI Security Scan
      description: Submits one or more prompt/response pairs for asynchronous security analysis. Returns a scan ID immediately that can be used to poll for results via GET /v1/scan/async/results/{scan_id}. Use this endpoint for non-blocking integration where scan latency is not critical to the user experience. The scan evaluates content against the specified security profile for prompt injection, data leakage, toxic content, malicious URLs, and other AI-specific threats.
      tags:
      - Scan
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScanRequest'
            examples:
              SubmitScanAsyncRequestExample:
                summary: Default submitScanAsync request
                x-microcks-default: true
                value:
                  ai_profile:
                    profile_name: Branch Sensor 10
                  contents:
                  - prompt: example-prompt
                    response: example-response
                  tr_id: '359832'
      responses:
        '200':
          description: Scan accepted for asynchronous processing.
          content:
            application/json:
              schema:
                type: object
                properties:
                  scan_id:
                    type: string
                    description: Unique identifier for retrieving scan results.
                  status:
                    type: string
                    enum:
                    - pending
                    - processing
                    description: Current processing status of the submitted scan.
                  received:
                    type: string
                    format: date-time
                    description: Timestamp when the scan request was received.
              examples:
                SubmitScanAsync200Example:
                  summary: Default submitScanAsync 200 response
                  x-microcks-default: true
                  value:
                    scan_id: '225038'
                    status: pending
                    received: '2026-10-12T05:00:06Z'
        '400':
          description: Invalid request body or missing required fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanAsync400Example:
                  summary: Default submitScanAsync 400 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '401':
          description: Invalid or missing x-pan-token API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanAsync401Example:
                  summary: Default submitScanAsync 401 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '403':
          description: Insufficient permissions or subscription not active.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanAsync403Example:
                  summary: Default submitScanAsync 403 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                SubmitScanAsync500Example:
                  summary: Default submitScanAsync 500 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      security:
      - oauth2Bearer: []
    servers:
    - url: https://api.stratacloud.paloaltonetworks.com/aiops/bpa/v1
      description: AIOps for NGFW BPA API production server.
  /v1/scan/async/results/{scan_id}:
    get:
      operationId: getAsyncScanResults
      summary: Palo Alto Networks Get Asynchronous Scan Results
      description: Retrieves the result of a previously submitted asynchronous scan by scan ID. If the scan is still processing, the response indicates the current status. Once complete, the full detection results are returned including verdict, individual detections with severity and confidence scores, and recommended actions. Scan results are retained for 24 hours after completion.
      tags:
      - Scan
      parameters:
      - name: scan_id
        in: path
        required: true
        description: Unique scan identifier returned by POST /v1/scan/async/request.
        schema:
          type: string
        example: '583940'
      responses:
        '200':
          description: Scan result returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScanResponse'
              examples:
                GetAsyncScanResults200Example:
                  summary: Default getAsyncScanResults 200 response
                  x-microcks-default: true
                  value:
                    scan_id: '416490'
                    status: error
                    report_id: '358413'
                    scan_category: custom
                    results:
                    - prompt_detected:
                        url_cats: true
                        dlp: true
                        injection: true
                      response_detected:
                        url_cats: false
                        dlp: true
                        toxic_content: true
                      verdict: benign
                      action: block
                    - prompt_detected:
                        url_cats: false
                        dlp: false
                        injection: false
                      response_detected:
                        url_cats: true
                        dlp: true
                        toxic_content: true
                      verdict: malicious
                      action: allow
                    tr_id: '930352'
                    created_at: '2025-12-26T02:37:57Z'
                    completed_at: '2026-10-12T14:42:42Z'
        '400':
          description: Invalid scan ID format.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                GetAsyncScanResults400Example:
                  summary: Default getAsyncScanResults 400 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '401':
          description: Invalid or missing x-pan-token API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                GetAsyncScanResults401Example:
                  summary: Default getAsyncScanResults 401 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '404':
          description: Scan ID not found or results have expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                GetAsyncScanResults404Example:
                  summary: Default getAsyncScanResults 404 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                GetAsyncScanResults500Example:
                  summary: Default getAsyncScanResults 500 response
                  x-microcks-default: true
                  value:
                    error: example-error
                    message: Activity firewall applied traffic incident endpoint.
                    request_id: eb74a8d9-395b-4b9e-a68b-b66eb903b650
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      security:
      - oauth2Bearer: []
    servers:
    - url: https://api.stratacloud.paloaltonetworks.com/aiops/bpa/v1
      description: AIOps for NGFW BPA API production server.
  /v1/scan:
    post:
      tags:
      - Scan
      summary: Create scan
      description: Create a new scan target.
      operationId: create_job_v1_scan_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JobCreateRequestSchema'
      responses:
        200:
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobResponseSchema'
        422:
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - bearerAuth: []
    get:
      tags:
      - Scan
      summary: List scans
      description: List jobs with filtering and pagination.
      operationId: list_jobs_v1_scan_get
      parameters:
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 100
          minimum: 1
          description: Number of jobs to return (1-100)
          default: 50
          title: Limit
        description: Number of jobs to return (1-100)
      - name: skip
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
          description: Number of jobs to skip for pagination
          default: 0
          title: Skip
        description: Number of jobs to skip for pagination
      - name: status
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/JobStatusFilter'
          - type: 'null'
          description: Filter by job status
          title: Status
        description: Filter by job status
      - name: job_type
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/JobType'
          - type: 'null'
          description: Filter by job type
          title: Job Type
        description: Filter by job type
      - name: search
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 255
          - type: 'null'
          description: Search jobs by name
          title: Search
        description: Search jobs by name
      - name: target_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          description: Filter by target UUID
          title: Target Id
        description: Filter by target UUID
      responses:
        200:
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobListResponseSchema'
        422:
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - bearerAuth: []
    servers:
    - url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
  /v1/scan/{job_id}:
    get:
      tags:
      - Scan
      summary: Get scan details
      description: Get a job by its ID.
      operationId: get_job_v1_scan__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/JobResponseSchema'
        422:
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - bearerAuth: []
    servers:
    - url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
  /v1/scan/{job_id}/abort:
    post:
      tags:
      - Scan
      summary: Abort scan
      description: Abort a running job by cancelling its workflow and updating status.
      operationId: abort_job_v1_scan__job_id__abort_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:
                $ref: '#/components/schemas/JobAbortResponseSchema'
        422:
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - bearerAuth: []
    servers:
    - url: https://api.sase.paloaltonetworks.com/ai-red-teaming/data-plane
components:
  schemas:
    ContentScanResult:
      type: object
      properties:
        prompt_detected:
          type: object
          description: Threats detected in the prompt field.
          properties:
            url_cats:
              type: boolean
              description: Malicious URL categories detected in prompt.
              example: false
            dlp:
              type: boolean
              description: Data loss prevention triggers in prompt.
              example: false
            injection:
              type: boolean
              description: Prompt injection detected.
              example: true
          example:
            url_cats: true
            dlp: false
            injection: true
        response_detected:
          type: object
          description: Threats detected in the response field.
          properties:
            url_cats:
              type: boolean
              description: Malicious URL categories detected in response.
              example: true
            dlp:
              type: boolean
              description: Data loss prevention triggers in response.
              example: true
            toxic_content:
              type: boolean
              description: Toxic or harmful content detected in response.
              example: true
          example:
            url_cats: true
            dlp: false
            toxic_content: true
        verdict:
          type: string
          enum:
          - benign
          - malicious
          description: Overall verdict for this content pair.
          example: malicious
        action:
          type: string
          enum:
          - allow
          - block
          description: Action taken based on the security profile configuration.
          example: block
    ScanContent:
      type: object
      properties:
        prompt:
          type: string
          description: The user prompt or input text sent to the AI model. Evaluated for prompt injection, jailbreak attempts, and other input-side threats.
          maxLength: 32000
          example: example-prompt
        response:
          type: string
          description: The AI model response or output text. When provided, also evaluated for data leakage, toxic content, and other output-side threats. May be omitted to scan only the prompt.
          maxLength: 64000
          example: example-response
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error code identifying the error type.
          example: example-error
        message:
          type: string
          description: Human-readable description of the error.
          example: Activity firewall applied traffic incident endpoint.
        request_id:
          type: string
          description: Request identifier for support correlation.
          example: eb74a8d9-395b-4b9e-a68b-b66eb903b650
    ScanRequest:
      type: object
      required:
      - ai_profile
      - contents
      properties:
        ai_profile:
          type: object
          required:
          - profile_name
          properties:
            profile_name:
              type: string
              description: Name of the AI security profile to use for this scan. The profile determines which detections are active and their sensitivity. Must reference an existing profile configured for the tenant.
              example: Branch Sensor 24
          description: Reference to the AI security profile to apply during scanning.
          example:
            profile_name: Branch Sensor 10
        contents:
          type: array
          minItems: 1
          description: Array of prompt/response pairs to scan. Each item represents one LLM interaction. For batch scanning, include multiple items.
          items:
            $ref: '#/components/schemas/ScanContent'
          example:
          - prompt: example-prompt
            response: example-response
        tr_id:
          type: string
          description: Optional caller-supplied transaction ID for correlating scan requests with application-side records.
          example: '359832'
    ScanResponse:
      type: object
      properties:
        scan_id:
          type: string
          description: Unique identifier of the scan.
          example: '416490'
        status:
          type: string
          enum:
          - pending
          - processing
          - completed
          - error
          description: Current or final status of the scan.
          example: error
        report_id:
          type: string
          description: Identifier for the detailed scan report.
          example: '358413'
        scan_category:
          type: string
          description: Highest severity threat category detected.
          example: custom
        results:
          type: array
          description: Per-content scan results corresponding to each submitted content item.
          items:
            $ref: '#/components/schemas/ContentScanResult'
          example:
          - prompt_detected:
              url_cats: true
              dlp: true
              injection: true
            response_detected:
              url_cats: false
              dlp: true
              toxic_content: true
            verdict: benign
            action: block
          - prompt_detected:
              url_cats: false
              dlp: false
              injection: false
            response_detected:
              url_cats: true
              dlp: true
              toxic_content: true
            verdict: malicious
            action: allow
        tr_id:
          type: string
          description: Transaction ID echoed from the request if provided.
          example: '930352'
        created_at:
          type: string
          format: date-time
          description: Timestamp when the scan was submitted.
          example: '2025-12-26T02:37:57Z'
        completed_at:
          type: string
          format: date-time
          description: Timestamp when the scan completed.
          example: '2026-10-12T14:42:42Z'
    DynamicJobMetadata:
      properties:
        rate_limit_enabled:
          type: boolean
          title: Rate Limit Enabled
          default: false
        rate_limit:
          anyOf:
          - type: integer
          - type: 'null'
          title: Rate Limit
        rate_limit_error_code:
          anyOf:
          - type: integer
          - type: 'null'
          title: Rate Limit Error Code
        rate_limit_error_message:
          anyOf:
          - type: string
          - type: 'null'
          title: Rate Limit Error Message
        rate_limit_error_json:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Rate Limit Error Json
        content_filter_enabled:
          type: boolean
          title: Content Filter Enabled
          description: Enable content filtering
          default: false
        content_filter_error_code:
          anyOf:
          - type: integer
            maximum: 599.0
            minimum: 400.0
          - type: 'null'
          title: Content Filter Error Code
          description: HTTP error code for content filter (400-599)
        content_filter_error_message:
          anyOf:
          - type: string
          - type: 'null'
          title: Content Filter Error Message
          description: Content filter error message
        content_filter_error_json:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Content Filter Error Json
        language:
          anyOf:
          - $ref: '#/components/schemas/LanguageOptionSchema'
          - type: 'null'
          description: Language for this scan. None = English.
        stream_breadth:
          type: integer
          maximum: 20.0
          minimum: 1.0
          title: Stream Breadth
          description: Number of parallel attack streams (1-20)
          default: 6
        stream_depth:
          type: integer
          maximum: 20.0
          minimum: 1.0
          title: Stream Depth
          description: Depth of each attack stream (1-20)
          default: 10
        max_tokens:
          type: integer
          maximum: 4096.0
          minimum: 128.0
          title: Max Tokens
          description: Maximum tokens per response (128-4096)
          default: 256
        context_size:
          type: integer
          maximum: 20.0
          minimum: 1.0
          title: Context Size
          description: Context window size (1-20)
          default: 10
        attack_goals:
          items:
            type: string
          type: array
          title: Attack Goals
          description: List of attack objectives
        base_model:
          anyOf:
          - type: string
          - type: 'null'
          title: Base Model
          description: Base model identifier
        use_case:
          anyOf:
          - type: string
          - type: 'null'
          title: Use Case
          description: Attack use case description
        system_prompt:
          anyOf:
          - type: string
          - type: 'null'
          title: System Prompt
          description: Custom system prompt
        goal_categories:
          anyOf:
          - items:
              $ref: '#/components/schemas/GoalCategory'
            type: array
          - type: 'null'
          title: Goal Categories
          description: 'Selected goal categories for this scan. Valid values: GOAL_MANIPULATION, PRIVILEGE_MISUSE, TOOL_MISUSE, TOOL_CHAINING, TOXIC_CONTENT_GENERATION. Only used when goal_categories feature flag is enabled.'
      type: object
      title: DynamicJobMetadata
      description: Enhanced metadata for dynamic attack jobs with proper constraints.
    TargetBackground:
      properties:
        industry:
          anyOf:
          - type: string
          - type: 'null'
          title: Industry
          description: Target's industry (e.g., Healthcare, Finance)
        use_case:
          anyOf:
          - type: string
          - type: 'null'
          title: Use Case
          description: Primary use case (e.g., Customer Support, Code Assistant)
        competitors:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Competitors
          description: Known competitor products
        agentic_profiling_enabled:
          type: boolean
          title: Agentic Profiling Enabled
          description: Whether agentic profiling is enabled for this target
          default: true
      type: object
      title: TargetBackground
      description: 'Target background - used in create/update API requests and stored in DB/GCS.


        Required fields for activation:

        - industry (string, required)

        - use_case (string, required)


        Optional field:

        - competitors (list of strings)

        '
    TargetType:
      type: string
      enum:
      - APPLICATION
      - AGENT
      - MODEL
      title: TargetType
      description: Target Types Available
    ClaraJobMetadata:
      properties:
        scan_name:
          type: string
          maxLength: 255
          minLength: 3
          title: Scan Name
        categories:
          additionalProperties:
            items:
              anyOf:
              - $ref: '#/components/schemas/SecuritySubCategory'
              - $ref: '#/components/schemas/SafetySubCategory'

# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/openapi/palo-alto-networks-scan-api-openapi.yml