openapi: 3.2.0 info: title: Palo Alto Networks Bandwidth Allocations API version: '1.0' description: 'Operations tagged Bandwidth Allocations across 2 of this provider''s published API definitions: palo-alto-sase-config-orch-paloaltonetworks-remote-networks-openapi.yaml, palo-alto-scm-config-sase-deployment-deployment-services-june-openapi.yaml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.sase.paloaltonetworks.com - url: https://api.strata.paloaltonetworks.com/config/deployment/v1 description: Current - url: https://api.sase.paloaltonetworks.com/sse/config/v1 description: Legacy tags: - name: Bandwidth Allocations paths: /v1/bandwidth-allocations: delete: description: 'Allows you to delete an aggregated bandwidth region. ' operationId: delete-v1-bandwidth-allocations parameters: - $ref: '#/components/parameters/SubTenantName' - $ref: '#/components/parameters/Region' - $ref: '#/components/parameters/SpnName' responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: Successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: Delete bandwidth region tags: - Bandwidth Allocations get: description: 'Get the status of aggregated bandwidth regions and allocations, which includes a list of regions and allocations. ' operationId: get-v1-bandwidth-allocations parameters: - $ref: '#/components/parameters/uuid' responses: '200': content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSet' description: Aggregated bandwidth regions or allocations set. security: - Bearer: [] summary: Status of aggregated bandwidth regions and allocations tags: - Bandwidth Allocations post: description: 'Allocate aggregated bandwidth for the regions based on location data. ' operationId: post-v1-bandwidth-allocations parameters: - $ref: '#/components/parameters/SubTenantName' requestBody: content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSet' description: The aggregated bandwidth region/allocations to be created required: true responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: Allocate aggregated bandwidth tags: - Bandwidth Allocations put: description: 'Modify an aggregated bandwidth regions. ' operationId: put-v1-bandwidth-allocations parameters: - $ref: '#/components/parameters/SubTenantName' requestBody: content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSet' description: Modify the aggregated bandwidth region or allocations. required: true responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: Successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: Edit aggregated bandwidth regions tags: - Bandwidth Allocations servers: - url: https://api.sase.paloaltonetworks.com /v1/bandwidth-allocations-read: get: description: 'Retrieve the bandwidth allocation configurations for a specified set of regions. ' operationId: get-v1-bandwidth-allocations-read parameters: - $ref: '#/components/parameters/uuid' responses: '200': content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSet' description: List of bandwidth allocation configurations. security: - Bearer: [] summary: 'Bandwidth allocation configurations list ' tags: - Bandwidth Allocations post: description: 'Create a request to read bandwidth allocation configuration. ' operationId: post-v1-bandwidth-allocations-read parameters: - $ref: '#/components/parameters/SubTenantName' requestBody: content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationRegionNamesSet' description: Request to read the list of bandwidth allocation regions. responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: Successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: 'Read bandwidth allocation configuration ' tags: - Bandwidth Allocations servers: - url: https://api.sase.paloaltonetworks.com /v2/bandwidth-allocations: delete: description: 'Delete an aggregated bandwidth region. ' operationId: delete-v2-bandwidth-allocations parameters: - $ref: '#/components/parameters/SubTenantName' - $ref: '#/components/parameters/Region' - $ref: '#/components/parameters/SpnName' responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: Successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: Delete an aggregated bandwidth region tags: - Bandwidth Allocations get: description: 'Get an aggregated bandwidth regions based on the location data. ' operationId: get-v2-bandwidth-allocations parameters: - $ref: '#/components/parameters/uuid' responses: '200': content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSetV2' description: Status for the given IS security: - Bearer: [] summary: Get an aggregated bandwidth regions tags: - Bandwidth Allocations post: description: 'Status for the given request ID. ' operationId: post-v2-bandwidth-allocations parameters: - $ref: '#/components/parameters/SubTenantName' requestBody: content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSetV2' description: The aggregated bandwidth region you want to create. required: true responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: Successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: Request ID status tags: - Bandwidth Allocations put: description: 'Modify aggregated bandwidth regions. ' operationId: put-v2-bandwidth-allocations parameters: - $ref: '#/components/parameters/SubTenantName' requestBody: content: application/json: schema: $ref: '#/components/schemas/BandwidthAllocationSetV2' description: The aggregated bandwidth region you want to create. required: true responses: '202': content: application/json: schema: $ref: '#/components/schemas/UuidResponse' description: Successful operation '400': $ref: '#/components/responses/bad_request_errors_basic_with_body' default: $ref: '#/components/responses/default_errors' security: - Bearer: [] summary: Edit aggregated bandwidth regions tags: - Bandwidth Allocations servers: - url: https://api.sase.paloaltonetworks.com /bandwidth-allocations: get: tags: - Bandwidth Allocations summary: List bandwidth regions description: 'Retrieve a list of bandwidth regions. ' operationId: ListBandwidthAllocations parameters: - $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/bandwidth-allocations' 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_2' security: - scmToken: [] post: tags: - Bandwidth Allocations summary: Create a bandwidth allocation description: 'Create a new bandwidth allocation. ' operationId: CreateBandwidthAllocations requestBody: description: The `bandwidth-allocations` resource definition. content: application/json: schema: $ref: '#/components/schemas/bandwidth-allocations' responses: '201': description: OK content: application/json: schema: $ref: '#/components/schemas/bandwidth-allocations' '400': $ref: '#/components/responses/bad_request_errors_basic_with_body_2' '401': $ref: '#/components/responses/auth_errors' '403': $ref: '#/components/responses/access_errors' '409': $ref: '#/components/responses/conflict_errors' default: $ref: '#/components/responses/default_errors_2' security: - scmToken: [] put: tags: - Bandwidth Allocations summary: Update a bandwidth allocation description: 'Update an existing bandwidth allocation. ' operationId: UpdateBandwidthAllocations requestBody: description: OK content: application/json: schema: $ref: '#/components/schemas/bandwidth-allocations' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/bandwidth-allocations' '400': $ref: '#/components/responses/bad_request_errors_basic_with_body_2' '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_2' security: - scmToken: [] delete: tags: - Bandwidth Allocations summary: Delete a bandwidth allocation description: 'Delete a bandwidth allocation. ' operationId: DeleteBandwidthAllocations parameters: - $ref: '#/components/parameters/aggregated-bandwidth-region-name-required' - $ref: '#/components/parameters/aggregated-bandwidth-spn-name-list-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_2' security: - scmToken: [] servers: - url: https://api.strata.paloaltonetworks.com/config/deployment/v1 description: Current - url: https://api.sase.paloaltonetworks.com/sse/config/v1 description: Legacy components: schemas: BandwidthAllocation: properties: bandwidth: description: bandwidth to allocate in Mbps type: string compute_location: description: aggregate compute region type: string edge_location: description: edge location for given lat/long/ip type: string ipsec_node_list: description: ipsec node list items: type: string type: array location: $ref: '#/components/schemas/Location' required: - location - bandwidth type: object generic_error: properties: _errors: $ref: '#/components/schemas/error_detail_cause_infos' _request_id: type: string type: object PublicIp: description: Public IP to detect region properties: PublicIp: description: Public IP to detect region format: ipv4 type: string type: object error_detail_cause_info: properties: code: type: string details: type: object help: type: string message: type: string title: Cause Info type: object error_detail_cause_infos: items: $ref: '#/components/schemas/error_detail_cause_info' type: array BandwidthAllocationSetV2: properties: bandwidth_allocations: description: bandwidth allocations items: $ref: '#/components/schemas/BandwidthAllocationV2' type: array uuid: $ref: '#/components/schemas/UuidResponse' type: object RegionCordinates: description: approximate longitude latitude of the region properties: latitude: description: Approximate Latitude for the site location type: string longitude: description: Approximate Longitude for the site location type: string type: object BandwidthAllocationV2: properties: bandwidth: description: bandwidth to allocate in Mbps type: string compute_location: description: aggregate compute region type: string edge_location: description: edge location for given lat/long/ip type: string ipsec_node_list: description: ipsec node list items: type: string type: array ipsec_termination_service: description: ipsec termination service list items: properties: capacity: type: integer name: type: string type: object type: array location: $ref: '#/components/schemas/Location' required: - location - bandwidth type: object Location: description: Site Public IP or approximate gps coordinates properties: public-ip: $ref: '#/components/schemas/PublicIp' region-cordinates: $ref: '#/components/schemas/RegionCordinates' type: object BandwidthAllocationRegionNamesSet: properties: bandwidth_allocation_region_names: items: type: string maxItems: 100 minItems: 0 type: array uniqueItems: true type: object UuidResponse: properties: uuid: format: uuid type: string readOnly: true type: object BandwidthAllocationSet: properties: bandwidth_allocations: description: bandwidth allocations items: $ref: '#/components/schemas/BandwidthAllocation' type: array uuid: $ref: '#/components/schemas/UuidResponse' type: object generic_error_2: type: object properties: _errors: $ref: '#/components/schemas/error_detail_cause_infos_2' _request_id: type: string x-examples: {} error_detail_cause_info_2: type: object title: Cause Info properties: code: type: string message: type: string details: oneOf: - type: string - type: object help: type: string error_detail_cause_infos_2: type: array items: $ref: '#/components/schemas/error_detail_cause_info_2' x-examples: {} bandwidth-allocations: type: object properties: name: type: string description: name of the aggregated bandwidth region allocated_bandwidth: type: integer description: bandwidth to allocate in Mbps spn_name_list: type: array items: type: string default: [] qos: type: object properties: enabled: type: boolean default: false customized: type: boolean default: false profile: type: string default: '' guaranteed_ratio: type: number default: 0 required: - name - allocated_bandwidth parameters: uuid: description: 'UUID for the request. ' in: query name: id required: true schema: format: uuid type: string SubTenantName: description: 'Sub-tenant name in a panorama multi-tenancy setup. ' in: query name: SubTenantName schema: type: string Region: description: 'The aggregate bandwidth region. ' in: query name: region required: true schema: type: string SpnName: description: "The IPSec termination node. \n" in: query name: SpnName required: true schema: type: string limit: name: limit in: query description: The maximum number of results per page required: false schema: type: integer default: 200 aggregated-bandwidth-region-name-required: name: name in: query description: The name of the aggregated bandwidth region required: true schema: type: string offset: name: offset in: query description: The offset into the list of results returned required: false schema: type: integer default: 0 aggregated-bandwidth-spn-name-list-required: name: spn_name_list in: query description: Comma separated of the spn_name_list name per region required: true schema: type: string responses: default_errors: content: application/json: schema: $ref: '#/components/schemas/generic_error' description: General Errors bad_request_errors_basic_with_body: content: application/json: schema: $ref: '#/components/schemas/generic_error' description: Bad Request http_ok: description: OK not_found: description: Not Found content: application/json: schema: $ref: '#/components/schemas/generic_error_2' examples: object_not_present: $ref: '#/components/examples/json_404_panui_mgmt_object_not_present' default_errors_2: description: General Errors content: application/json: schema: $ref: '#/components/schemas/generic_error_2' 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' bad_request_errors_basic_with_body_2: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/generic_error_2' 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_2' 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' auth_errors: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/generic_error_2' 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_2' 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_2' examples: auth_unauthorized: $ref: '#/components/examples/json_403_panui_auth_unauthorized' examples: 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_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_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_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_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_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_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_400_panui_restapi_missing_body: summary: Missing Body value: _errors: - code: E003 message: Missing Body 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_400_panui_mgmt_invalid_command: summary: Invalid Command value: _errors: - code: E003 message: Invalid Command 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_401_panui_auth_not_authenticated: summary: Not Authenticated value: _errors: - code: E016 message: Not Authenticated 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_401_panui_auth_invalid_credential: summary: Invalid Credential value: _errors: - code: E016 message: Invalid Credential 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_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_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_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_mgmt_malformed_command: summary: Malformed Command value: _errors: - code: E003 message: Malformed Command 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_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_mgmt_bad_xpath: summary: Bad XPath value: _errors: - code: E013 message: Bad XPath details: {} _request_id: 123e4567-e89b-12d3-a456-426655440000 securitySchemes: Bearer: scheme: bearer type: http 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: {} 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 x-refined-from: - palo-alto-sase-config-orch-paloaltonetworks-remote-networks-openapi.yaml - palo-alto-scm-config-sase-deployment-deployment-services-june-openapi.yaml