Palo Alto Networks QoS Profiles API

QoS Profiles

Operations 10

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /qos-profiles List QoS profiles · List QoS profiles #
Ask an LLM
“Which QoS profiles are configured in a folder?”
“Can I find a QoS profile by name in a snippet?”
Tell an agent
List QoS profiles in folder {folder}.
Find QoS profile {name} in snippet {snippet}.
POST /qos-profiles Create a QoS profile · Create a QoS profile #
Ask an LLM
“How do I create a QoS profile that caps aggregate bandwidth?”
“Can a new QoS profile set bandwidth per traffic class?”
Tell an agent
Create QoS profile {name}.
Create QoS profile {name} with aggregate bandwidth {aggregate_bandwidth}.
GET /qos-profiles/{id} Get a QoS profile · Get a QoS profile #
Ask an LLM
“What bandwidth limits are in a particular QoS profile?”
“Can I read one QoS profile by UUID?”
Tell an agent
Get QoS profile {id}.
Show the bandwidth settings of QoS profile {id}.
PUT /qos-profiles/{id} Update a QoS profile · Update a QoS profile #
Ask an LLM
“How do I change the class bandwidth on an existing QoS profile?”
“Can I raise the aggregate bandwidth of a QoS profile I already have?”
Tell an agent
Update QoS profile {id} with class bandwidth {class_bandwidth_type}.
Set aggregate bandwidth {aggregate_bandwidth} on existing QoS profile {id}.
DELETE /qos-profiles/{id} Delete a QoS profile · Delete a QoS profile #
Ask an LLM
“Is there a way to remove a QoS profile?”
“Can I delete an unused QoS profile by its UUID?”
Tell an agent destructive · confirm first
Delete QoS profile {id}.
Remove the QoS profile {id}.
GET /sse/config/v1/qos-profiles List QoS profiles · List QoS profiles #
Ask an LLM
“Which quality of service profiles exist in a Prisma Access folder?”
“Can I search QoS profiles by name?”
Tell an agent
List QoS profiles in folder {folder} through the SSE config v1 path.
Find the QoS profile named {name} in folder {folder}.
POST /sse/config/v1/qos-profiles Create a QoS profile · Create a QoS profile #
Ask an LLM
“How do I create a QoS profile with an aggregate bandwidth limit?”
“Can I choose the class bandwidth type on a new QoS profile?”
Tell an agent
Create QoS profile {name} in folder {folder}.
In folder {folder}, add QoS profile {name} capped at aggregate bandwidth {aggregate_bandwidth}.
DELETE /sse/config/v1/qos-profiles/{id} Delete a QoS profile · Delete a QoS profile #
Ask an LLM
“Which call removes a QoS profile?”
“Is deleting a QoS profile permanent?”
Tell an agent destructive · confirm first
Delete QoS profile {id} using the SSE config v1 endpoint.
Remove the QoS profile with id {id}.
GET /sse/config/v1/qos-profiles/{id} Get a QoS profile · Get a QoS profile #
Ask an LLM
“What bandwidth settings does a specific QoS profile have?”
“Can I fetch one QoS profile by id?”
Tell an agent
Get QoS profile {id} in folder {folder}.
Show bandwidth settings of QoS profile {id} from folder {folder}.
PUT /sse/config/v1/qos-profiles/{id} Edit a QoS profile · Edit a QoS profile #
Ask an LLM
“How do I change the aggregate bandwidth on an existing QoS profile?”
“Can I switch the class bandwidth type of a QoS profile?”
Tell an agent
Edit QoS profile {id} and name it {name}.
Set aggregate bandwidth {aggregate_bandwidth} on QoS profile {id} named {name}.

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:palo-alto-networks-qos-profiles-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-qos-profiles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.0.0
  title: Network Services QoS Profiles API
  description: These APIs are used for defining and managing network services configuration within Strata Cloud Manager.
  termsOfService: https://www.paloaltonetworks.com/content/dam/pan/en_US/assets/pdf/legal/palo-alto-networks-end-user-license-agreement-eula.pdf
  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
servers:
- url: https://api.strata.paloaltonetworks.com/config/network/v1
  description: Current
- url: https://api.sase.paloaltonetworks.com/sse/config/v1
  description: Legacy
security:
- scmToken: []
tags:
- name: QoS Profiles
  description: QoS Profiles
paths:
  /qos-profiles:
    get:
      tags:
      - QoS Profiles
      summary: List QoS profiles
      description: Retrieve a list of QoS profiles.
      operationId: ListQoSProfiles
      parameters:
      - $ref: '#/components/parameters/name'
      - $ref: '#/components/parameters/folder'
      - $ref: '#/components/parameters/snippet'
      - $ref: '#/components/parameters/device'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    allOf:
                    - type: array
                      items:
                        $ref: '#/components/schemas/qos-profiles'
                  limit:
                    type: integer
                    default: 200
                  offset:
                    type: integer
                    default: 0
                  total:
                    type: integer
        '400':
          $ref: '#/components/responses/bad_request_errors_basic'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        default:
          $ref: '#/components/responses/default_errors'
    post:
      tags:
      - QoS Profiles
      summary: Create a QoS profile
      description: Create a new QoS profile.
      operationId: CreateQoSProfiles
      requestBody:
        description: Created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/qos-profiles'
      responses:
        '201':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/qos-profiles'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic_with_body'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '409':
          $ref: '#/components/responses/conflict_errors'
        default:
          $ref: '#/components/responses/default_errors'
  /qos-profiles/{id}:
    get:
      tags:
      - QoS Profiles
      summary: Get a QoS profile
      description: Get an existing QoS profile.
      operationId: GetQoSProfilesByID
      parameters:
      - $ref: '#/components/parameters/uuid'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/qos-profiles'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        default:
          $ref: '#/components/responses/default_errors'
    put:
      tags:
      - QoS Profiles
      summary: Update a QoS profile
      description: Update an existing QoS profile.
      operationId: UpdateQoSProfilesByID
      parameters:
      - $ref: '#/components/parameters/uuid'
      requestBody:
        description: OK
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/qos-profiles'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/qos-profiles'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic_with_body'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict_errors'
        default:
          $ref: '#/components/responses/default_errors'
    delete:
      tags:
      - QoS Profiles
      summary: Delete a QoS profile
      description: Delete a QoS profile.
      operationId: DeleteQoSProfilesByID
      parameters:
      - $ref: '#/components/parameters/uuid'
      responses:
        '200':
          $ref: '#/components/responses/http_ok'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict_errors'
        default:
          $ref: '#/components/responses/default_errors'
  /sse/config/v1/qos-profiles:
    get:
      description: Retrieve QoS profiles.
      operationId: get-sse-config-v1-qos-profiles
      parameters:
      - $ref: '#/components/parameters/limit-optional'
      - $ref: '#/components/parameters/offset-optional'
      - $ref: '#/components/parameters/name-optional'
      - $ref: '#/components/parameters/folder'
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    allOf:
                    - items:
                        $ref: '#/components/schemas/qos-profiles'
                      type: array
                  limit:
                    default: 200
                    type: number
                  offset:
                    default: 0
                    type: number
                  total:
                    type: number
                type: object
          description: List of qos profiles
        '400':
          $ref: '#/components/responses/bad_request_errors_basic'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        default:
          $ref: '#/components/responses/default_errors'
      security:
      - Bearer: []
      summary: List QoS profiles
      tags:
      - QoS Profiles
    post:
      description: Create a QoS profile.
      operationId: post-sse-config-v1-qos-profiles
      parameters:
      - $ref: '#/components/parameters/folder'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/qos-profiles'
        description: The qos profile you want to create
      responses:
        '201':
          $ref: '#/components/responses/http_created'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic_with_body'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '409':
          $ref: '#/components/responses/conflict_errors'
        default:
          $ref: '#/components/responses/default_errors'
      security:
      - Bearer: []
      summary: Create a QoS profile
      tags:
      - QoS Profiles
  /sse/config/v1/qos-profiles/{id}:
    delete:
      description: Delete a QoS profile.
      operationId: delete-sse-config-v1-qos-profiles-id
      parameters:
      - $ref: '#/components/parameters/uuid-required'
      responses:
        '200':
          $ref: '#/components/responses/http_ok'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict_errors'
        default:
          $ref: '#/components/responses/default_errors'
      security:
      - Bearer: []
      summary: Delete a QoS profile
      tags:
      - QoS Profiles
    get:
      description: Get a QoS profile.
      operationId: get-sse-config-v1-qos-profiles-id
      parameters:
      - $ref: '#/components/parameters/folder'
      - $ref: '#/components/parameters/uuid-required'
      responses:
        '200':
          content:
            application/json:
              schema:
                allOf:
                - items:
                    $ref: '#/components/schemas/qos-profiles'
                  type: array
          description: Get the qos profile by id.
        '400':
          $ref: '#/components/responses/bad_request_errors_basic'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        default:
          $ref: '#/components/responses/default_errors'
      security:
      - Bearer: []
      summary: Get a QoS profile
      tags:
      - QoS Profiles
    put:
      description: Edit a QoS profile.
      operationId: put-sse-config-v1-qos-profiles-id
      parameters:
      - $ref: '#/components/parameters/uuid-required'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/qos-profiles'
        description: The qos profile you want to edit
      responses:
        '200':
          $ref: '#/components/responses/http_ok'
        '400':
          $ref: '#/components/responses/bad_request_errors_basic_with_body'
        '401':
          $ref: '#/components/responses/auth_errors'
        '403':
          $ref: '#/components/responses/access_errors'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict_errors'
        default:
          $ref: '#/components/responses/default_errors'
      security:
      - Bearer: []
      summary: Edit a QoS profile
      tags:
      - QoS Profiles
components:
  examples:
    json_409_panui_mgmt_name_not_unique:
      summary: Name Not Unique
      value:
        _errors:
        - code: E006
          message: Name Not Unique
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_401_panui_auth_not_authenticated:
      summary: Not Authenticated
      value:
        _errors:
        - code: E016
          message: Not Authenticated
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_501_panui_restapi_version_not_supported:
      summary: Version Not Supported
      value:
        _errors:
        - code: E012
          message: Version Not Supported
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_403_panui_auth_unauthorized:
      summary: Unauthorized
      value:
        _errors:
        - code: E007
          message: Unauthorized
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_mgmt_malformed_command:
      summary: Malformed Command
      value:
        _errors:
        - code: E003
          message: Malformed Command
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_restapi_missing_query_parameter:
      summary: Missing Query Parameter
      value:
        _errors:
        - code: E003
          message: 'Missing Query Parameter: name'
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_401_panui_auth_invalid_credential:
      summary: Invalid Credential
      value:
        _errors:
        - code: E016
          message: Invalid Credential
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_404_panui_mgmt_object_not_present:
      summary: Object Not Present
      value:
        _errors:
        - code: E005
          message: Object Not Present
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_409_panui_mgmt_reference_not_zero:
      summary: Reference Not Zero
      value:
        _errors:
        - code: E009
          message: Reference Not Zero
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_401_panui_auth_key_expired:
      summary: Key Expired
      value:
        _errors:
        - code: E016
          message: Key Expired
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_restapi_invalid_query_parameter:
      summary: Invalid Query Parameter
      value:
        _errors:
        - code: E003
          message: 'Invalid Query Parameter: location=invalid'
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_401_panui_auth_need_password_change:
      summary: Need Password Change
      value:
        _errors:
        - code: E016
          message: The password needs to be changed.
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_restapi_input_format_mismatch:
      summary: Input Format Mismatch
      value:
        _errors:
        - code: E003
          message: 'Input Format Mismatch: input-format=json'
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_mgmt_invalid_command:
      summary: Invalid Command
      value:
        _errors:
        - code: E003
          message: Invalid Command
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_401_panui_auth_key_too_long:
      summary: Key Too Long
      value:
        _errors:
        - code: E016
          message: Key Too Long
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_mgmt_invalid_object:
      summary: Invalid Object
      value:
        _errors:
        - code: E003
          message: Invalid Object
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_restapi_output_format_mismatch:
      summary: Output Format Mismatch
      value:
        _errors:
        - code: E003
          message: 'Output Format Mismatch: output-format=json Accept=xml'
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_409_panui_mgmt_object_not_unique:
      summary: Object Not Unique
      value:
        _errors:
        - code: E016
          message: Object Not Unique
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_504_panui_mgmt_session_timeout:
      summary: Session Timeout
      value:
        _errors:
        - code: '4'
          message: Session Timeout
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_mgmt_bad_xpath:
      summary: Bad XPath
      value:
        _errors:
        - code: E013
          message: Bad XPath
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_405_panui_restapi_action_not_supported:
      summary: Action Not Supported
      value:
        _errors:
        - code: E012
          message: 'Action Not Supported: move'
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_501_panui_restapi_method_not_supported:
      summary: Method Not Supported
      value:
        _errors:
        - code: E012
          message: Method Not Supported
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
    json_400_panui_restapi_missing_body:
      summary: Missing Body
      value:
        _errors:
        - code: E003
          message: Missing Body
          details: {}
        _request_id: 123e4567-e89b-12d3-a456-426655440000
  parameters:
    snippet:
      name: snippet
      in: query
      description: 'The snippet in which the resource is defined

        '
      required: false
      schema:
        type: string
    name:
      name: name
      in: query
      description: The name of the configuration resource
      required: false
      schema:
        type: string
    limit:
      name: limit
      in: query
      description: The maximum number of results per page
      required: false
      schema:
        type: integer
        default: 200
    offset:
      name: offset
      in: query
      description: The offset into the list of results returned
      required: false
      schema:
        type: integer
        default: 0
    device:
      name: device
      in: query
      description: 'The device in which the resource is defined

        '
      required: false
      schema:
        type: string
    folder:
      name: folder
      in: query
      description: 'The folder in which the resource is defined

        '
      required: false
      schema:
        type: string
    uuid:
      name: id
      in: path
      description: The UUID of the configuration resource
      required: true
      schema:
        type: string
        format: uuid
        example: 123e4567-e89b-12d3-a456-426655440000
    uuid-required:
      description: 'The resource''s unique identifier.

        '
      in: path
      name: id
      required: true
      schema:
        type: string
    name-optional:
      description: 'The name of the entry.

        '
      in: query
      name: name
      required: false
      schema:
        type: string
    offset-optional:
      description: 'The offset of the result entry.

        '
      in: query
      name: offset
      required: false
      schema:
        type: number
    limit-optional:
      description: 'The maximum number of result objects to return per page.

        '
      in: query
      name: limit
      required: false
      schema:
        type: number
  responses:
    default_errors:
      description: General Errors
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            version_not_supported:
              $ref: '#/components/examples/json_501_panui_restapi_version_not_supported'
            method_not_allowed:
              $ref: '#/components/examples/json_501_panui_restapi_method_not_supported'
            action_not_supported:
              $ref: '#/components/examples/json_405_panui_restapi_action_not_supported'
            bad_xpath:
              $ref: '#/components/examples/json_400_panui_mgmt_bad_xpath'
            invalid_command:
              $ref: '#/components/examples/json_400_panui_mgmt_invalid_command'
            malformed_command:
              $ref: '#/components/examples/json_400_panui_mgmt_malformed_command'
            session_timeout:
              $ref: '#/components/examples/json_504_panui_mgmt_session_timeout'
    http_ok:
      description: OK
    not_found:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            object_not_present:
              $ref: '#/components/examples/json_404_panui_mgmt_object_not_present'
    auth_errors:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            auth_not_authenticated:
              $ref: '#/components/examples/json_401_panui_auth_not_authenticated'
            invalid_credential:
              $ref: '#/components/examples/json_401_panui_auth_invalid_credential'
            key_too_long:
              $ref: '#/components/examples/json_401_panui_auth_key_too_long'
            key_expired:
              $ref: '#/components/examples/json_401_panui_auth_key_expired'
            need_password_change:
              $ref: '#/components/examples/json_401_panui_auth_need_password_change'
    conflict_errors:
      description: Conflict
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            object_not_unique:
              $ref: '#/components/examples/json_409_panui_mgmt_object_not_unique'
            name_not_unique:
              $ref: '#/components/examples/json_409_panui_mgmt_name_not_unique'
            reference_not_zero:
              $ref: '#/components/examples/json_409_panui_mgmt_reference_not_zero'
    access_errors:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            auth_unauthorized:
              $ref: '#/components/examples/json_403_panui_auth_unauthorized'
    bad_request_errors_basic_with_body:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            input_format_mismatch:
              $ref: '#/components/examples/json_400_panui_restapi_input_format_mismatch'
            output_format_mismatch:
              $ref: '#/components/examples/json_400_panui_restapi_output_format_mismatch'
            missing_query_parameter:
              $ref: '#/components/examples/json_400_panui_restapi_missing_query_parameter'
            invalid_query_parameter:
              $ref: '#/components/examples/json_400_panui_restapi_invalid_query_parameter'
            missing_body:
              $ref: '#/components/examples/json_400_panui_restapi_missing_body'
            invalid_object:
              $ref: '#/components/examples/json_400_panui_mgmt_invalid_object'
    bad_request_errors_basic:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/generic_error'
          examples:
            input_format_mismatch:
              $ref: '#/components/examples/json_400_panui_restapi_input_format_mismatch'
            output_format_mismatch:
              $ref: '#/components/examples/json_400_panui_restapi_output_format_mismatch'
            missing_query_parameter:
              $ref: '#/components/examples/json_400_panui_restapi_missing_query_parameter'
            invalid_query_parameter:
              $ref: '#/components/examples/json_400_panui_restapi_invalid_query_parameter'
    http_created:
      description: Created
  schemas:
    error_detail_cause_info:
      type: object
      title: Cause Info
      properties:
        code:
          type: string
        message:
          type: string
        details:
          oneOf:
          - type: string
          - type: object
        help:
          type: string
    generic_error:
      type: object
      properties:
        _errors:
          $ref: '#/components/schemas/error_detail_cause_infos'
        _request_id:
          type: string
      x-examples: {}
    qos-profiles:
      type: object
      properties:
        id:
          type: string
          description: UUID of the resource
          readOnly: true
          example: 123e4567-e89b-12d3-a456-426655440000
        name:
          type: string
          description: 'Alphanumeric string begin with letter: [0-9a-zA-Z._-]'
          maxLength: 31
        aggregate_bandwidth:
          type: object
          properties:
            egress_max:
              type: integer
              description: max sending bandwidth in mbps
              minimum: 0
              maximum: 60000
            egress_guaranteed:
              type: integer
              description: guaranteed sending bandwidth in mbps
              minimum: 0
              maximum: 16000
        class_bandwidth_type:
          type: object
          oneOf:
          - type: object
            title: mbps
            properties:
              mbps:
                type: object
                properties:
                  class:
                    type: array
                    description: QoS setting for traffic classes
                    items:
                      type: object
                      properties:
                        name:
                          enum:
                          - class1
                          - class2
                          - class3
                          - class4
                          - class5
                          - class6
                          - class7
                          - class8
                          description: Traffic class
                        priority:
                          enum:
                          - real-time
                          - high
                          - medium
                          - low
                          description: traffic class priority
                          default: medium
                        class_bandwidth:
                          type: object
                          properties:
                            egress_max:
                              type: integer
                              description: max sending bandwidth in mbps
                              minimum: 0
                              maximum: 60000
                              default: 0
                            egress_guaranteed:
                              type: integer
                              description: guaranteed sending bandwidth in mbps
                              minimum: 0
                              maximum: 60000
                              default: 0
          - type: object
            title: percentage
            properties:
              percentage:
                type: object
                properties:
                  class:
                    type: array
                    description: QoS setting for traffic classes
                    items:
                      type: object
                      properties:
                        name:
                          enum:
                          - class1
                          - class2
                          - class3
                          - class4
                          - class5
                          - class6
                          - class7
                          - class8
                          description: Traffic class
                        priority:
                          enum:
                          - real-time
                          - high
                          - medium
                          - low
                          description: traffic class priority
                          default: medium
                        class_bandwidth:
                          type: object
                          properties:
                            egress_max:
                              type: integer
                              description: max sending bandwidth in percentage
                              minimum: 0
                              maximum: 100
                              default: 0
                            egress_guaranteed:
                              type: integer
                              description: guaranteed sending bandwidth in percentage
                              minimum: 0
                              maximum: 100
                              default: 0
      required:
      - name
      oneOf:
      - type: object
        title: folder
        properties:
          folder:
            type: string
            pattern: ^[a-zA-Z\d\-_\. ]+$
            maxLength: 64
            description: The folder in which the resource is defined
            example: My Folder
        required:
        - folder
      - type: object
        title: snippet
        properties:
          snippet:
            type: string
            pattern: ^[a-zA-Z\d\-_\. ]+$
            maxLength: 64
            description: The snippet in which the resource is defined
            example: My Snippet
        required:
        - snippet
      - type: object
        title: device
        properties:
          device:
            type: string
            pattern: ^[a-zA-Z\d\-_\. ]+$
            maxLength: 64
            description: The device in which the resource is defined
            example: My Device
        required:
        - device
    error_detail_cause_infos:
      type: array
      items:
        $ref: '#/components/schemas/error_detail_cause_info'
      x-examples: {}
  securitySchemes:
    scmOAuth:
      type: oauth2
      description: "Strata Cloud Manager APIs authenticate client requests using the \nOAuth 2.0 Client Credentials flow.  Please use the `client_id`, \n`client_secret` values associated with an IAM service account along \nwith a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the \nTenant Service Group (TSG) ID.  The resulting JWT access token should \nbe attached to all API calls as a `Bearer` token in the `Authorization` \nheader (ex. `Authorization: Bearer tokenstring`).\n"
      flows:
        clientCredentials:
          tokenUrl: https://auth.apps.paloaltonetworks.com/oauth2/access_token
          scopes:
            tsg_id: Your tenant service group in the form `tsg_id:XXXXXXXXXX`
    scmToken:
      type: http
      description: "Strata Cloud Manager APIs authenticate client requests using the \nOAuth 2.0 Client Credentials flow.  Please use the `client_id`, \n`client_secret` values associated with an IAM service account along \nwith a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the \nTenant Service Group (TSG) ID.  The resulting JWT access token should \nbe attached to all API calls as a `Bearer` token in the `Authorization` \nheader (ex. `Authorization: Bearer tokenstring`).\n"
      scheme: bearer
      bearerFormat: JWT
    Bearer:
      scheme: bearer
      type: http
x-internal: false