diff --git a/docusaurus.config.ts b/docusaurus.config.ts index ec86602d3..acaa8c479 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -812,6 +812,11 @@ const config = { outputDir: "products/scm/api/config/sase/security", sidebarOptions: { groupPathsBy: "tag" }, }, + "config-sase-network configurations": { + specPath: "openapi-specs/scm/config/sase/network configurations", + outputDir: "products/scm/api/config/sase/network configurations", + sidebarOptions: { groupPathsBy: "tag" }, + }, "config-ngfw-operations": { specPath: "openapi-specs/scm/config/ngfw/operations", outputDir: "products/scm/api/config/ngfw/operations", diff --git a/openapi-specs/scm/config/ngfw/network/network-services-recent.yaml b/openapi-specs/scm/config/ngfw/network/network-services-recent.yaml new file mode 100644 index 000000000..34d9adbb7 --- /dev/null +++ b/openapi-specs/scm/config/ngfw/network/network-services-recent.yaml @@ -0,0 +1,19513 @@ +openapi: 3.1.0 +info: + version: 2.0.0 + title: Network Services + 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 +tags: + - name: Aggregate Interfaces + description: Aggregate Interfaces + - name: Auto VPN Clusters + description: Auto VPN Clusters + - name: Auto VPN Config Push + description: Auto VPN Config Push + - name: Auto VPN Monitor + description: Auto VPN Monitor + - name: Auto VPN Settings + description: Auto VPN Settings + - name: BGP Address Family Profiles + description: BGP Address Family Profiles + - name: BGP Authentication Profiles + description: BGP Authentication Profiles + - name: BGP Filtering Profiles + description: BGP Filtering Profiles + - name: BGP Redistribution Profiles + description: BGP Redistribution Profiles + - name: BGP Route Map Redistributions + description: BGP Route Map Redistributions + - name: BGP Route Maps + description: BGP Route Maps + - name: DHCP Interfaces + description: DHCP Interfaces + - name: DNS Proxies + description: DNS Proxies + - name: Ethernet Interfaces + description: Ethernet Interfaces + - name: IKE Crypto Profiles + description: IKE Crypto Profiles + - name: IKE Gateways + description: IKE Gateways + - name: Interface Management Profiles + description: Interface Management Profiles + - name: IPsec Crypto Profiles + description: IPsec Crypto Profiles + - name: IPsec Tunnels + description: IPsec Tunnels + - name: Layer 2 Subinterfaces + description: Layer 3 Subinterfaces + - name: Layer 3 Subinterfaces + description: Layer 3 Subinterfaces + - name: Link Tags + description: Link Tags + - name: Logical Routers + description: Logical Routers + - name: Loopback Interfaces + description: Loopback Interfaces + - name: NAT Rules + description: NAT Rules + - name: OSPF Authentication Profiles + description: OSPF Authentication Profiles + - name: PBF Rules + description: PBF Rules + - name: QoS Profiles + description: QoS Profiles + - name: QoS Rules + description: QoS Rules + - name: Route Access Lists + description: Route Access Lists + - name: Route Community Lists + description: Route Community Lists + - name: Route Path Access Lists + description: Route Path Access Lists + - name: Route Prefix Lists + description: Route Prefix Lists + - name: SD-WAN Error Correction Profiles + description: SD-WAN Error Correction Profiles + - name: SD-WAN Path Quality Profiles + description: SD-WAN Path Quality Profiles + - name: SD-WAN Rules + description: SD-WAN Rules + - name: SD-WAN SaaS Quality Profiles + description: SD-WAN SaaS Quality Profiles + - name: SD-WAN Traffic Distribution Profiles + description: SD-WAN Traffic Distribution Profiles + - name: Security Zones + description: Security Zones + - name: Tunnel Interfaces + description: Tunnel Interfaces + - name: VLAN Interfaces + description: VLAN Interfaces + - name: Zone Protection Profiles + description: Zone Protection Profiles + - name: Ssl Decryption Settings + description: Ssl Decrypt + - name: Remote Networks License + description: Remote Networks License Info + - name: ConfigMatchList + description: ConfigMatchList + - name: GlobalprotectMatchList + description: GlobalprotectMatchList + - name: HipmatchMatchList + description: HipmatchMatchList + - name: IptagMatchList + description: IptagMatchList + - name: SystemMatchList + description: SystemMatchList + - name: UseridMatchList + description: UseridMatchList +paths: + /config-match-list: + post: + tags: + - ConfigMatchList + summary: POST ConfigMatchList + description: POST ConfigMatchList + operationId: postConfigMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + put: + tags: + - ConfigMatchList + summary: PUT ConfigMatchList + description: PUT ConfigMatchList + operationId: putConfigMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + get: + tags: + - ConfigMatchList + summary: GET ConfigMatchList + description: GET ConfigMatchList + operationId: getConfigMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + /config-match-list/{id}: + get: + tags: + - ConfigMatchList + summary: GET ConfigMatchList by ID + description: GET ConfigMatchList by ID + operationId: getConfigMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + put: + tags: + - ConfigMatchList + summary: PUT ConfigMatchList by ID + description: PUT ConfigMatchList by ID + operationId: putConfigMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + delete: + tags: + - ConfigMatchList + summary: DELETE ConfigMatchList by ID + description: DELETE ConfigMatchList by ID + operationId: deleteConfigMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + /globalprotect-match-list: + put: + tags: + - GlobalprotectMatchList + summary: PUT GlobalprotectMatchList + description: PUT GlobalprotectMatchList + operationId: putGlobalprotectMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + get: + tags: + - GlobalprotectMatchList + summary: GET GlobalprotectMatchList + description: GET GlobalprotectMatchList + operationId: getGlobalprotectMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + post: + tags: + - GlobalprotectMatchList + summary: POST GlobalprotectMatchList + description: POST GlobalprotectMatchList + operationId: postGlobalprotectMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + /globalprotect-match-list/{id}: + get: + tags: + - GlobalprotectMatchList + summary: GET GlobalprotectMatchList by ID + description: GET GlobalprotectMatchList by ID + operationId: getGlobalprotectMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + put: + tags: + - GlobalprotectMatchList + summary: PUT GlobalprotectMatchList by ID + description: PUT GlobalprotectMatchList by ID + operationId: putGlobalprotectMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + delete: + tags: + - GlobalprotectMatchList + summary: DELETE GlobalprotectMatchList by ID + description: DELETE GlobalprotectMatchList by ID + operationId: deleteGlobalprotectMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + /hipmatch-match-list: + put: + tags: + - HipmatchMatchList + summary: PUT HipmatchMatchList + description: PUT HipmatchMatchList + operationId: putHipmatchMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + get: + tags: + - HipmatchMatchList + summary: GET HipmatchMatchList + description: GET HipmatchMatchList + operationId: getHipmatchMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + post: + tags: + - HipmatchMatchList + summary: POST HipmatchMatchList + description: POST HipmatchMatchList + operationId: postHipmatchMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + /hipmatch-match-list/{id}: + get: + tags: + - HipmatchMatchList + summary: GET HipmatchMatchList by ID + description: GET HipmatchMatchList by ID + operationId: getHipmatchMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + put: + tags: + - HipmatchMatchList + summary: PUT HipmatchMatchList by ID + description: PUT HipmatchMatchList by ID + operationId: putHipmatchMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + delete: + tags: + - HipmatchMatchList + summary: DELETE HipmatchMatchList by ID + description: DELETE HipmatchMatchList by ID + operationId: deleteHipmatchMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + /iptag-match-list: + get: + tags: + - IptagMatchList + summary: GET IptagMatchList + description: GET IptagMatchList + operationId: getIptagMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + post: + tags: + - IptagMatchList + summary: POST IptagMatchList + description: POST IptagMatchList + operationId: postIptagMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + put: + tags: + - IptagMatchList + summary: PUT IptagMatchList + description: PUT IptagMatchList + operationId: putIptagMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + /iptag-match-list/{id}: + get: + tags: + - IptagMatchList + summary: GET IptagMatchList by ID + description: GET IptagMatchList by ID + operationId: getIptagMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + put: + tags: + - IptagMatchList + summary: PUT IptagMatchList by ID + description: PUT IptagMatchList by ID + operationId: putIptagMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + delete: + tags: + - IptagMatchList + summary: DELETE IptagMatchList by ID + description: DELETE IptagMatchList by ID + operationId: deleteIptagMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + /system-match-list: + get: + tags: + - SystemMatchList + summary: GET SystemMatchList + description: GET SystemMatchList + operationId: getSystemMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + post: + tags: + - SystemMatchList + summary: POST SystemMatchList + description: POST SystemMatchList + operationId: postSystemMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + put: + tags: + - SystemMatchList + summary: PUT SystemMatchList + description: PUT SystemMatchList + operationId: putSystemMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + /system-match-list/{id}: + get: + tags: + - SystemMatchList + summary: GET SystemMatchList by ID + description: GET SystemMatchList by ID + operationId: getSystemMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + put: + tags: + - SystemMatchList + summary: PUT SystemMatchList by ID + description: PUT SystemMatchList by ID + operationId: putSystemMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + delete: + tags: + - SystemMatchList + summary: DELETE SystemMatchList by ID + description: DELETE SystemMatchList by ID + operationId: deleteSystemMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + /userid-match-list: + post: + tags: + - UseridMatchList + summary: POST UseridMatchList + description: POST UseridMatchList + operationId: postUseridMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + put: + tags: + - UseridMatchList + summary: PUT UseridMatchList + description: PUT UseridMatchList + operationId: putUseridMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + get: + tags: + - UseridMatchList + summary: GET UseridMatchList + description: GET UseridMatchList + operationId: getUseridMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + /userid-match-list/{id}: + get: + tags: + - UseridMatchList + summary: GET UseridMatchList by ID + description: GET UseridMatchList by ID + operationId: getUseridMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + put: + tags: + - UseridMatchList + summary: PUT UseridMatchList by ID + description: PUT UseridMatchList by ID + operationId: putUseridMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + delete: + tags: + - UseridMatchList + summary: DELETE UseridMatchList by ID + description: DELETE UseridMatchList by ID + operationId: deleteUseridMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + /ike-crypto-profiles: + get: + tags: + - IKE Crypto Profiles + summary: List IKE crypto profiles + description: | + Retrieve a list of IKE crypto profiles. + operationId: ListIKECryptoProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ike-crypto-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: + - IKE Crypto Profiles + summary: Create an IKE crypto profile + description: | + Create a new IKE crypto profile. + operationId: CreateIKECryptoProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-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' + '/ike-crypto-profiles/{id}': + get: + tags: + - IKE Crypto Profiles + summary: Get an IKE crypto profile + description: | + Get an existing IKE crypto profile. + operationId: GetIKECryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-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: + - IKE Crypto Profiles + summary: Update an IKE crypto profile + description: | + Update an existing IKE crypto profile. + operationId: UpdateIKECryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-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: + - IKE Crypto Profiles + summary: Delete an IKE crypto profile + description: | + Delete an IKE crypto profile. + operationId: DeleteIKECryptoProfilesByID + 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' + /ike-gateways: + get: + tags: + - IKE Gateways + summary: List IKE gateways + description: | + Retrieve a list of IKE gateways. + operationId: ListIKEGateways + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ike-gateways' + 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: + - IKE Gateways + summary: Create an IKE gateway + description: | + Create a new IKE gateway. + operationId: CreateIKEGateways + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + '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' + '/ike-gateways/{id}': + get: + tags: + - IKE Gateways + summary: Get an IKE gateway + description: | + Get an existing IKE gateway. + operationId: GetIKEGatewaysByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + '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: + - IKE Gateways + summary: Update an IKE gateway + description: | + Update an IKE gateway. + operationId: UpdateIKEGatewaysByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + '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: + - IKE Gateways + summary: Delete an IKE gateway + description: | + Delete an IKE gateway. + operationId: DeleteIKEGatewaysByID + 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' + /ipsec-crypto-profiles: + get: + tags: + - IPsec Crypto Profiles + summary: List IPsec crypto profiles + description: | + Retrieve a list of IPsec crypto profiles. + operationId: ListIPsecCryptoProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ipsec-crypto-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: + - IPsec Crypto Profiles + summary: Create an IPsec crypto profile + description: | + Create a new IPsec crypto profile. + operationId: CreateIPsecCryptoProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-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' + '/ipsec-crypto-profiles/{id}': + get: + tags: + - IPsec Crypto Profiles + summary: Get an IPsec crypto profile + description: | + Get an existing IPsec crypto profile. + operationId: GetIPsecCryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-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: + - IPsec Crypto Profiles + summary: Update an IPsec crypto profile + description: | + Update an IPsec crypto profile. + operationId: UpdateIPsecCryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-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: + - IPsec Crypto Profiles + summary: Delete an IPsec crypto profile + description: | + Delete an IPsec crypto profile. + operationId: DeleteIPsecCryptoProfilesByID + 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' + /ipsec-tunnels: + get: + tags: + - IPsec Tunnels + summary: List IPsec tunnels + description: | + Retrieve a list of IPsec tunnels. + operationId: ListIPsecTunnels + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ipsec-tunnels' + 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: + - IPsec Tunnels + summary: Create an IPsec tunnel + description: | + Create a new IPsec tunnel. + operationId: CreateIPsecTunnels + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + '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' + '/ipsec-tunnels/{id}': + get: + tags: + - IPsec Tunnels + summary: Get an IPsec tunnel + description: | + Get an existing IPsec tunnel. + operationId: GetIPsecTunnelsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + '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: + - IPsec Tunnels + summary: Update an IPsec tunnel + description: | + Update an existing IPsec tunnel. + operationId: UpdateIPsecTunnelsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + '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: + - IPsec Tunnels + summary: Delete an IPsec tunnel + description: | + Delete an IPsec tunnel. + operationId: DeleteIPsecTunnelsByID + 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' + /qos-policy-rules: + get: + tags: + - QoS Rules + summary: List QoS policy rules + description: | + Retrieve a list of QoS policy rules. + operationId: ListQoSPolicyRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/qos-policy-rules' + 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 Rules + summary: Create a QoS policy rule + description: | + Create a new QoS policy rule. + operationId: CreateQoSPolicyRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + '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-policy-rules/{id}': + get: + tags: + - QoS Rules + summary: Get a QoS policy rule + description: | + Get an existing QoS policy rule. + operationId: GetQoSPolicyRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + '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 Rules + summary: Update a QoS policy rule + description: | + Update an existing QoS policy rule. + operationId: UpdateQoSPolicyRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + '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 Rules + summary: Delete a QoS policy rule + description: | + Delete a Qos policy rule. + operationId: DeleteQoSPolicyRulesByID + 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' + '/qos-policy-rules/{id}:move': + post: + tags: + - QoS Rules + summary: Move a QoS policy rule + description: | + Move a QoS policy rule. + operationId: MoveQoSPolicyRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/rule-based-move' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + /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' + /zones: + get: + tags: + - Security Zones + summary: List security zones + description: | + Retrieve a list of security zones. + operationId: ListZones + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/zones' + 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: + - Security Zones + summary: Create a security zone + description: | + Create a new security zone. + operationId: CreateZones + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + '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' + '/zones/{id}': + get: + tags: + - Security Zones + summary: Get a security zone + description: | + Get an existing security zone. + operationId: GetZonesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + '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: + - Security Zones + summary: Update a security zone + description: | + Update an existing security zone. + operationId: UpdateZonesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + '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: + - Security Zones + summary: Delete a security zone + description: | + Delete a security zone. + operationId: DeleteZonesByID + 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' + /zone-protection-profiles: + get: + tags: + - Zone Protection Profiles + summary: List zone protection profiles + description: | + Retrieve a list of zone protection profiles. + operationId: ListZoneProtectionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/zone-protection-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: + - Zone Protection Profiles + summary: Create a zone protection profile + description: | + Create a new zone protection profile. + operationId: CreateZoneProtectionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-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' + '/zone-protection-profiles/{id}': + get: + tags: + - Zone Protection Profiles + summary: Get a zone protection profile + description: | + Get an existing zone protection profile. + operationId: GetZoneProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-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: + - Zone Protection Profiles + summary: Update a zone protection profile + description: | + Update an existing zone protection profile. + operationId: UpdateZoneProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-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: + - Zone Protection Profiles + summary: Delete a zone protection profile + description: | + Delete a zone protection profile. + operationId: DeleteZoneProtectionProfilesByID + 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' + /nat-rules: + get: + tags: + - NAT Rules + summary: List NAT rules + description: | + Retrieve a list of NAT rules. + operationId: ListNatRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/position' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/nat-rules' + 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: + - NAT Rules + summary: Create a NAT rule + description: | + Create a new NAT rule. + operationId: CreateNatRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + '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' + '/nat-rules/{id}': + get: + tags: + - NAT Rules + summary: Get a NAT rule + description: | + Get an existing NAT rule. + operationId: GetNatRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + '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: + - NAT Rules + summary: Update a NAT rule + description: | + Update an existing NAT rule. + operationId: UpdateNatRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + - $ref: '#/components/parameters/position' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + '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: + - NAT Rules + summary: Delete a NAT rule + description: | + Delete a NAT rule. + operationId: DeleteNatRulesByID + 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' + /aggregate-interfaces: + get: + tags: + - Aggregate Interfaces + summary: List Aggregate Interfaces + description: | + Retrieve a list of Aggregate Interfaces. + operationId: ListAggregateInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/aggregate-interfaces' + 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: + - Aggregate Interfaces + summary: Create an Aggregate Interface + description: | + Create a new Aggregate Interface. + operationId: CreateAggregateInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + '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' + '/aggregate-interfaces/{id}': + get: + tags: + - Aggregate Interfaces + summary: Get an Aggregate Interface + description: | + Get an existing Aggregate Interface. + operationId: GetAggregateInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + '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: + - Aggregate Interfaces + summary: Update an Aggregate Interface + description: | + Update an existing Aggregate Interface. + operationId: UpdateAggregateInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + '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: + - Aggregate Interfaces + summary: Delete an Aggregate Interface + description: | + Delete an Aggregate Interface. + operationId: DeleteAggregateInterfacesByID + 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' + /ethernet-interfaces: + get: + tags: + - Ethernet Interfaces + summary: List ethernet interfaces + description: | + Retrieve a list of ethernet interfaces. + operationId: ListEthernetInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ethernet-interfaces' + 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: + - Ethernet Interfaces + summary: Create an ethernet interface + description: | + Create a new ethernet interface. + operationId: CreateEthernetInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + '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' + '/ethernet-interfaces/{id}': + get: + tags: + - Ethernet Interfaces + summary: Get an ethernet interface + description: | + Get an existing ethernet interface. + operationId: GetEthernetInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + '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: + - Ethernet Interfaces + summary: Update an ethernet interface + description: | + Update an existing ethernet interface. + operationId: UpdateEthernetInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + '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: + - Ethernet Interfaces + summary: Delete an ethernet interface + description: | + Delete an ethernet interface. + operationId: DeleteEthernetInterfacesByID + 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' + /layer2-subinterfaces: + get: + tags: + - Layer 2 Subinterfaces + summary: List layer 2 subinterfaces + description: | + Retrieve a list of layer 2 subinterfaces. + operationId: ListLayer2Subinterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/layer2-subinterfaces' + 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: + - Layer 2 Subinterfaces + summary: Create a layer 2 subinterface + description: | + Create a new layer 2 subinterface. + operationId: CreateLayer2Subinterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + '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' + '/layer2-subinterfaces/{id}': + get: + tags: + - Layer 2 Subinterfaces + summary: Get a layer 2 subinterface + description: | + Get an existing layer 2 subinterface. + operationId: GetLayer2SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + '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: + - Layer 2 Subinterfaces + summary: Update a layer 2 subinterface + description: | + Update an existing layer 2 subinterface. + operationId: UpdateLayer2SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + '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: + - Layer 2 Subinterfaces + summary: Delete a layer 2 subinterface + description: | + Delete a layer 2 subinterface. + operationId: DeleteLayer2SubinterfacesByID + 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' + /layer3-subinterfaces: + get: + tags: + - Layer 3 Subinterfaces + summary: List layer 3 subinterfaces + description: | + Retrieve a list of layer 3 subinterfaces. + operationId: ListLayer3Subinterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/layer3-subinterfaces' + 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: + - Layer 3 Subinterfaces + summary: Create a layer 3 subinterface + description: | + Create a new layer 3 subinterface. + operationId: CreateLayer3Subinterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + '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' + '/layer3-subinterfaces/{id}': + get: + tags: + - Layer 3 Subinterfaces + summary: Get a layer 3 subinterface + description: | + Get an existing layer 3 subinterface. + operationId: GetLayer3SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + '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: + - Layer 3 Subinterfaces + summary: Update a layer 3 subinterface + description: | + Update an existing layer 3 subinterface. + operationId: UpdateLayer3SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + '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: + - Layer 3 Subinterfaces + summary: Delete a layer 3 subinterface + description: | + Delete a layer 3 subinterface. + operationId: DeleteLayer3SubinterfacesByID + 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' + /loopback-interfaces: + get: + tags: + - Loopback Interfaces + summary: List loopback interfaces + description: | + Retrieve a list of loopback interfaces. + operationId: ListLoopbackInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/loopback-interfaces' + 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: + - Loopback Interfaces + summary: Create a loopback interface + description: | + Create a new loopback interface. + operationId: CreateLoopbackInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + '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' + '/loopback-interfaces/{id}': + get: + tags: + - Loopback Interfaces + summary: Get a loopback interface + description: | + Get an existing loopback interface. + operationId: GetLoopbackInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + '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: + - Loopback Interfaces + summary: Update a loopback interface + description: | + Update an existing loopback interface. + operationId: UpdateLoopbackInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + '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: + - Loopback Interfaces + summary: Delete a loopback interface + description: | + Delete a loopback interface. + operationId: DeleteLoopbackInterfacesByID + 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' + /interface-management-profiles: + get: + tags: + - Interface Management Profiles + summary: List interface management profiles + description: | + Retrieve a list of interface management profiles. + operationId: ListInterfaceManagementProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/interface-management-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: + - Interface Management Profiles + summary: Create a interface management profiles + description: | + Create a new interface management profile. + operationId: CreateInterfaceManagementProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-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' + '/interface-management-profiles/{id}': + get: + tags: + - Interface Management Profiles + summary: Get an interface management profile + description: | + Get an existing interface management profile. + operationId: GetInterfaceManagementProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-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: + - Interface Management Profiles + summary: Update an interface management profile + description: | + Update an existing interface management profile. + operationId: UpdateInterfaceManagementProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-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: + - Interface Management Profiles + summary: Delete an interface management profile + description: | + Delete an interface management profile. + operationId: DeleteInterfaceManagementProfilesByID + 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' + /tunnel-interfaces: + get: + tags: + - Tunnel Interfaces + summary: List tunnel interfaces + description: | + Retrieve a list of tunnel interfaces. + operationId: ListTunnelInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/tunnel-interfaces' + 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: + - Tunnel Interfaces + summary: Create a tunnel interface + description: | + Create a new tunnel interface. + operationId: CreateTunnelInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + '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' + '/tunnel-interfaces/{id}': + get: + tags: + - Tunnel Interfaces + summary: Get a tunnel interface + description: | + Get an existing tunnel interface. + operationId: GetTunnelInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + '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: + - Tunnel Interfaces + summary: Update a tunnel interface + description: | + Update an existing tunnel interface. + operationId: UpdateTunnelInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + '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: + - Tunnel Interfaces + summary: Delete a tunnel interface + description: | + Delete a tunnel interface. + operationId: DeleteTunnelInterfacesByID + 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' + /vlan-interfaces: + get: + tags: + - VLAN Interfaces + summary: List VLAN interfaces + description: | + Retrieve a list of VLAN interfaces. + operationId: ListVLANInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/vlan-interfaces' + 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: + - VLAN Interfaces + summary: Create a VLAN interface + description: | + Create a new VLAN interface. + operationId: CreateVLANInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + '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' + '/vlan-interfaces/{id}': + get: + tags: + - VLAN Interfaces + summary: Get a VLAN interface + description: | + Get an existing VLAN interface. + operationId: GetVLANInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + '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: + - VLAN Interfaces + summary: Update a VLAN interface + description: | + Update an existing VLAN interface. + operationId: UpdateVLANlInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + '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: + - VLAN Interfaces + summary: Delete a VLAN interface + description: | + Delete a VLAN interface. + operationId: DeleteVLANInterfacesByID + 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' + /bgp-address-family-profiles: + get: + tags: + - BGP Address Family Profiles + summary: List BGP address family profiles + description: | + Retrieve a list of BGP address family profiles. + operationId: ListBGPAddressFamilyProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-address-family-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: + - BGP Address Family Profiles + summary: Create a BGP address family profile + description: | + Create a new BGP address family profile. + operationId: CreateBGPAddressFamilyProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-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' + '/bgp-address-family-profiles/{id}': + get: + tags: + - BGP Address Family Profiles + summary: Get a BGP address family profile + description: | + Get an existing BGP address family profile. + operationId: GetBGPAddressFamilyProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-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: + - BGP Address Family Profiles + summary: Update a BGP address family profile + description: | + Update an existing BGP address family profile. + operationId: UpdateBGPAddressFamilyProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-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: + - BGP Address Family Profiles + summary: Delete a BGP address family profile + description: | + Delete a BGP address family profile. + operationId: DeleteBGPAddressFamilyProfilesByID + 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' + /bgp-auth-profiles: + get: + tags: + - BGP Authentication Profiles + summary: List BGP authentication profiles + description: | + Retrieve a list of BGP authentication profiles. + operationId: ListBGPAuthenticationProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-auth-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: + - BGP Authentication Profiles + summary: Create a BGP authentication profile + description: | + Create a new BGP authentication profile. + operationId: CreateBGPAuthenticationProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-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' + '/bgp-auth-profiles/{id}': + get: + tags: + - BGP Authentication Profiles + summary: Get a BGP authentication profile + description: | + Get an existing BGP authentication profile. + operationId: GetBGPAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-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: + - BGP Authentication Profiles + summary: Update a BGP authentication profile + description: | + Update an existing BGP authentication profile. + operationId: UpdateBGPAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-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: + - BGP Authentication Profiles + summary: Delete a BGP authentication profile + description: | + Delete a BGP authentication profile. + operationId: DeleteBGPAuthenticationProfilesByID + 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' + /bgp-filtering-profiles: + get: + tags: + - BGP Filtering Profiles + summary: List BGP filtering profiles + description: | + Retrieve a list of BGP filtering profiles. + operationId: ListBGPFilteringProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-filtering-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: + - BGP Filtering Profiles + summary: Create a BGP filtering profile + description: | + Create a new BGP filtering profile. + operationId: CreateBGPFilteringProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-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' + '/bgp-filtering-profiles/{id}': + get: + tags: + - BGP Filtering Profiles + summary: Get a BGP filtering profile + description: | + Get an existing BGP filtering profile. + operationId: GetBGPFilteringProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-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: + - BGP Filtering Profiles + summary: Update a BGP filtering profile + description: | + Update an existing BGP filtering profile. + operationId: UpdateBGPFilteringProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-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: + - BGP Filtering Profiles + summary: Delete a BGP filtering profile + description: | + Delete a BGP filtering profile. + operationId: DeleteBGPFilteringProfilesByID + 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' + /bgp-redistribution-profiles: + get: + tags: + - BGP Redistribution Profiles + summary: List BGP redistribution profiles + description: | + Retrieve a list of BGP redistribution profiles. + operationId: ListBGPRedistributionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-redistribution-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: + - BGP Redistribution Profiles + summary: Create a BGP redistribution profile + description: | + Create a new BGP redistribution profile. + operationId: CreateBGPRedistributionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-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' + '/bgp-redistribution-profiles/{id}': + get: + tags: + - BGP Redistribution Profiles + summary: Get a BGP redistribution profile + description: | + Get an existing BGP redistribution profile. + operationId: GetBGPRedistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-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: + - BGP Redistribution Profiles + summary: Update a BGP redistribution profile + description: | + Update an existing BGP redistribution profile. + operationId: UpdateBGPRedistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-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: + - BGP Redistribution Profiles + summary: Delete a BGP redistribution profile + description: | + Delete a BGP redistribution profile. + operationId: DeleteBGPRedistributionProfilesByID + 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' + /bgp-route-map-redistributions: + get: + tags: + - BGP Route Map Redistributions + summary: List BGP route map redistributions + description: | + Retrieve a list of BGP route map redistributions. + operationId: ListBGPRouteMapRedistributions + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-route-map-redistributions' + 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: + - BGP Route Map Redistributions + summary: Create a BGP route map redistribution + description: | + Create a new BGP route map redistribution. + operationId: CreateBGPRouteMapRedistributions + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + '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' + '/bgp-route-map-redistributions/{id}': + get: + tags: + - BGP Route Map Redistributions + summary: Get a BGP route map redistribution + description: | + Get an existing BGP route map redistribution. + operationId: GetBGPRouteMapRedistributionsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + '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: + - BGP Route Map Redistributions + summary: Update a BGP route map redistribution + description: | + Update an existing BGP route map redistribution. + operationId: UpdateBGPRouteMapRedistributionsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + '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: + - BGP Route Map Redistributions + summary: Delete a BGP route map redistribution + description: | + Delete a BGP route map redistribution. + operationId: DeleteBGPRouteMapRedistributionsByID + 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' + /bgp-route-maps: + get: + tags: + - BGP Route Maps + summary: List BGP route maps + description: | + Retrieve a list of BGP route maps. + operationId: ListBGPRouteMaps + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-route-maps' + 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: + - BGP Route Maps + summary: Create a BGP route map + description: | + Create a new BGP route map. + operationId: CreateBGPRouteMaps + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + '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' + '/bgp-route-maps/{id}': + get: + tags: + - BGP Route Maps + summary: Get a BGP route map + description: | + Get an existing BGP route map. + operationId: GetBGPRouteMapsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + '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: + - BGP Route Maps + summary: Update a BGP route map + description: | + Update an existing BGP route map. + operationId: UpdateBGPRouteMapsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + '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: + - BGP Route Maps + summary: Delete a BGP route map + description: | + Delete a BGP route map. + operationId: DeleteBGPRouteMapsByID + 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' + /link-tags: + get: + tags: + - Link Tags + summary: List link tags + description: | + Retrieve a list of link tags. + operationId: ListLinkTags + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/link-tags' + 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: + - Link Tags + summary: Create a link tag + description: | + Create a new link tag. + operationId: CreateLinkTags + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + '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' + '/link-tags/{id}': + get: + tags: + - Link Tags + summary: Get a link tag + description: | + Get an existing link tag. + operationId: GetLinkTagsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + '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: + - Link Tags + summary: Update a link tag + description: | + Update an existing link tag. + operationId: UpdateLinkTagsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + '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: + - Link Tags + summary: Delete a link tag + description: | + Delete a link tag. + operationId: DeleteLinkTagsByID + 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' + /logical-routers: + get: + tags: + - Logical Routers + summary: List logical routers + description: | + Retrieve a list of logical routers. + operationId: ListLogicalRouters + parameters: + - $ref: '#/components/parameters/pagination-optional' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/logical-routers' + 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: + - Logical Routers + summary: Create a logical router + description: | + Create a new logical router. + operationId: CreateLogicalRouters + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + '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' + '/logical-routers/{id}': + get: + tags: + - Logical Routers + summary: Get a logical router + description: | + Get an existing logical router. + operationId: GetLogicalRoutersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + '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: + - Logical Routers + summary: Update a logical router + description: | + Update an existing logical router. + operationId: UpdateLogicalRoutersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + '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: + - Logical Routers + summary: Delete a logical router + description: | + Delete a logical router. + operationId: DeleteLogicalRoutersByID + 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' + /ospf-auth-profiles: + get: + tags: + - OSPF Authentication Profiles + summary: List OSPF authentication profiles + description: | + Retrieve a list of OSPF authentication profiles. + operationId: ListOSPFAuthenticationProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ospf-auth-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: + - OSPF Authentication Profiles + summary: Create an OSPF authentication profile + description: | + Create a new OSPF authentication profile. + operationId: CreateOSPFAuthenticationProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-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' + '/ospf-auth-profiles/{id}': + get: + tags: + - OSPF Authentication Profiles + summary: Get an OSPF authentication profile + description: | + Get an existing OSPF authentication profile. + operationId: GetOSPFAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-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: + - OSPF Authentication Profiles + summary: Update an OSPF authentication profile + description: | + Update an existing OSPF authentication profile. + operationId: UpdateOSPFAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-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: + - OSPF Authentication Profiles + summary: Delete an OSPF authentication profile + description: | + Delete an OSPF authentication profile. + operationId: DeleteOSPFAuthenticationProfilesByID + 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' + /pbf-rules: + get: + tags: + - PBF Rules + summary: List PBF rules + description: | + Retrieve a list of PBF rules. + operationId: ListPBFRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/pbf-rules' + 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: + - PBF Rules + summary: Create a PBF rule + description: | + Create a new PBF rule. + operationId: CreatePBFRules + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + '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' + '/pbf-rules/{id}': + get: + tags: + - PBF Rules + summary: Get a PBF rule + description: | + Get an existing PBF rule. + operationId: GetPBFRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + '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: + - PBF Rules + summary: Update a PBF rule + description: | + Update an existing PBF rule. + operationId: UpdatePBFRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + '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: + - PBF Rules + summary: Delete a PBF rule + description: | + Delete a PBF rule. + operationId: DeletePBFRulesByID + 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' + /route-access-lists: + get: + tags: + - Route Access Lists + summary: List route access lists + description: | + Retrieve a list of route access lists. + operationId: ListRouteAccessLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-access-lists' + 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: + - Route Access Lists + summary: Create a route access list + description: | + Create a new PBF rule. + operationId: CreateRouteAccessLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + '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' + '/route-access-lists/{id}': + get: + tags: + - Route Access Lists + summary: Get a route access list + description: | + Get an existing route access list. + operationId: GetRouteAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + '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: + - Route Access Lists + summary: Update a route access list + description: | + Update an existing route access list. + operationId: UpdateRouteAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + '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: + - Route Access Lists + summary: Delete a route access list + description: | + Delete a route access list. + operationId: DeleteRouteAccessListsByID + 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' + /route-community-lists: + get: + tags: + - Route Community Lists + summary: List route community lists + description: | + Retrieve a list of route community lists. + operationId: ListRouteCommunityLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-community-lists' + 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: + - Route Community Lists + summary: Create a route community list + description: | + Create a new route community list. + operationId: CreateRouteCommunityLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + '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' + '/route-community-lists/{id}': + get: + tags: + - Route Community Lists + summary: Get a route community list + description: | + Get an existing route community list. + operationId: GetRouteCommunityListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + '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: + - Route Community Lists + summary: Update a route community list + description: | + Update an existing route community list. + operationId: UpdateRouteCommunityListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + '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: + - Route Community Lists + summary: Delete a route community list + description: | + Delete a route community list. + operationId: DeleteRouteCommunityListsByID + 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' + /route-path-access-lists: + get: + tags: + - Route Path Access Lists + summary: List route path access lists + description: | + Retrieve a list of route path access lists. + operationId: ListRoutePathAccessLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-path-access-lists' + 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: + - Route Path Access Lists + summary: Create a route path access list + description: | + Create a new route path access list. + operationId: CreateRoutePathAccessLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + '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' + '/route-path-access-lists/{id}': + get: + tags: + - Route Path Access Lists + summary: Get a route path access list + description: | + Get an existing route path access list. + operationId: GetRoutePathAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + '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: + - Route Path Access Lists + summary: Update a route path access list + description: | + Update an existing route path access list. + operationId: UpdateRoutePathAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + '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: + - Route Path Access Lists + summary: Delete a route path access list + description: | + Delete a route path access list. + operationId: DeleteRoutePathAccessListsByID + 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' + /route-prefix-lists: + get: + tags: + - Route Prefix Lists + summary: List route prefix lists + description: | + Retrieve a list of route prefix lists. + operationId: ListRoutePrefixLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-prefix-lists' + 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: + - Route Prefix Lists + summary: Create a route prefix list + description: | + Create a new route prefix list. + operationId: CreateRoutePrefixLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + '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' + '/route-prefix-lists/{id}': + get: + tags: + - Route Prefix Lists + summary: Get a route prefix list + description: | + Get an existing route prefix list. + operationId: GetRoutePrefixListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + '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: + - Route Prefix Lists + summary: Update a route prefix list + description: | + Update an existing route prefix list. + operationId: UpdateRoutePrefixListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + '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: + - Route Prefix Lists + summary: Delete a route prefix list + description: | + Delete a route prefix list. + operationId: DeleteRoutePrefixListsByID + 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' + /auto-vpn-clusters: + get: + tags: + - Auto VPN Clusters + summary: List Auto VPN clusters + description: | + Retrieve a list of Auto VPN clusters. + operationId: ListAutoVPNClusters + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/auto-vpn-clusters' + 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: + - Auto VPN Clusters + summary: Create an Auto VPN cluster + description: | + Create a new Auto VPN cluster. + operationId: CreateAutoVPNClusters + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + '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' + '/auto-vpn-clusters/{id}': + get: + tags: + - Auto VPN Clusters + summary: Get an Auto VPN cluster + description: | + Get an existing Auto VPN clusters. + operationId: GetAutoVPNClustersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + '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: + - Auto VPN Clusters + summary: Update an Auto VPN cluster + description: | + Update an existing Auto VPN cluster. + operationId: UpdateAutoVPNClustersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + '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: + - Auto VPN Clusters + summary: Delete an Auto VPN cluster + description: | + Delete an Auto VPN cluster. + operationId: DeleteAutoVPNClustersByID + 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' + /auto-vpn-monitor: + get: + tags: + - Auto VPN Monitor + summary: Get Auto VPN status + description: | + Get the status of the Auto VPN clusters. + operationId: GetAutoVPNMonitor + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/auto-vpn-monitor' + '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' + /auto-vpn-push: + post: + tags: + - Auto VPN Config Push + summary: Push Auto VPN configs + description: | + Push Auto VPN configs. + operationId: CreateAutoVPNPushConfigs + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-push-config' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-push-response' + '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' + /auto-vpn-settings: + get: + tags: + - Auto VPN Settings + summary: Get Auto VPN settings + description: | + Retrieve the Auto VPN settings. + operationId: GetAutoVPNSettings + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-settings' + '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: + - Auto VPN Settings + summary: Update Auto VPN settings + description: | + Update Auto VPN settings. + operationId: UpdateAutoVPNSettings + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-settings' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-settings' + '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' + + /sdwan-error-correction-profiles: + get: + tags: + - SD-WAN Error Correction Profiles + summary: List SD-WAN error correction profiles + description: | + Retrieve a list of SD-WAN error correction profiles. + operationId: ListSDWANErrorCorrectionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-error-correction-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: + - SD-WAN Error Correction Profiles + summary: Create an SD-WAN error correction profile + description: | + Create a new SD-WAN error correction profile. + operationId: CreateSDWANErrorCorrectionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-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' + '/sdwan-error-correction-profiles/{id}': + get: + tags: + - SD-WAN Error Correction Profiles + summary: Get an SD-WAN error correction profile + description: | + Get an existing SD-WAN error correction profile. + operationId: GetSDWANErrorCorrectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-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: + - SD-WAN Error Correction Profiles + summary: Update an SD-WAN error correction profile + description: | + Update an existing SD-WAN error correction profile. + operationId: UpdateSDWANErrorCorrectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-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: + - SD-WAN Error Correction Profiles + summary: Delete an SD-WAN error correction profile + description: | + Delete an SD-WAN error correction profile. + operationId: DeleteSDWANErrorCorrectionProfilesByID + 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' + /sdwan-path-quality-profiles: + get: + tags: + - SD-WAN Path Quality Profiles + summary: List SD-WAN path quality profiles + description: | + Retrieve a list of SD-WAN path quality profiles. + operationId: ListSDWANPathQualityProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-path-quality-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: + - SD-WAN Path Quality Profiles + summary: Create an SD-WAN path quality profile + description: | + Create a new SD-WAN path quality profile. + operationId: CreateSDWANPathQualityProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-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' + '/sdwan-path-quality-profiles/{id}': + get: + tags: + - SD-WAN Path Quality Profiles + summary: Get an SD-WAN path quality profile + description: | + Get an existing SD-WAN path quality profile. + operationId: GetSDWANPathQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-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: + - SD-WAN Path Quality Profiles + summary: Update an SD-WAN path quality profile + description: | + Update an existing SD-WAN path quality profile. + operationId: UpdateSDWANPathQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-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: + - SD-WAN Path Quality Profiles + summary: Delete an SD-WAN path quality profile + description: | + Delete an SD-WAN path quality profile. + operationId: DeleteSDWANPathQualityProfilesByID + 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' + /sdwan-rules: + get: + tags: + - SD-WAN Rules + summary: List SD-WAN rules + description: | + Retrieve a list of SD-WAN rules. + operationId: ListSDWANRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-rules' + 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: + - SD-WAN Rules + summary: Create an SD-WAN rule + description: | + Create a new SD-WAN rule. + operationId: CreateSDWANRules + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + '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' + '/sdwan-rules/{id}': + get: + tags: + - SD-WAN Rules + summary: Get an SD-WAN rule + description: | + Get an existing SD-WAN rule. + operationId: GetSDWANRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + '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: + - SD-WAN Rules + summary: Update an SD-WAN rule + description: | + Update an existing SD-WAN rule. + operationId: UpdateSDWANRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + '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: + - SD-WAN Rules + summary: Delete an SD-WAN rule + description: | + Delete an SD-WAN rule. + operationId: DeleteSDWANRulesByID + 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' + /sdwan-saas-quality-profiles: + get: + tags: + - SD-WAN SaaS Quality Profiles + summary: List SD-WAN SaaS quality profiles + description: | + Retrieve a list of SD-WAN SaaS quality profiles. + operationId: ListSDWANSaaSQualityProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-saas-quality-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: + - SD-WAN SaaS Quality Profiles + summary: Create an SD-WAN SaaS quality profile + description: | + Create a new SD-WAN SaaS quality profile. + operationId: CreateSDWANSaaSQualityProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-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' + '/sdwan-saas-quality-profiles/{id}': + get: + tags: + - SD-WAN SaaS Quality Profiles + summary: Get an SD-WAN SaaS quality profile + description: | + Get an existing SD-WAN SaaS quality profile. + operationId: GetSDWANSaaSQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-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: + - SD-WAN SaaS Quality Profiles + summary: Update an SD-WAN SaaS quality profile + description: | + Update an existing SD-WAN SaaS quality profile. + operationId: UpdateSDWANSaaSQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-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: + - SD-WAN SaaS Quality Profiles + summary: Delete an SD-WAN SaaS quality profile + description: | + Delete an SD-WAN SaaS quality profile. + operationId: DeleteSDWANSaaSQualityProfilesByID + 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' + /sdwan-traffic-distribution-profiles: + get: + tags: + - SD-WAN Traffic Distribution Profiles + summary: List SD-WAN traffic distribution profiles + description: | + Retrieve a list of SD-WAN traffic distribution profiles. + operationId: ListSDWANTrafficDistributionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-traffic-distribution-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: + - SD-WAN Traffic Distribution Profiles + summary: Create an SD-WAN traffic distribution profile + description: | + Create a new SD-WAN traffic distribution profile. + operationId: CreateSDWANTrafficDistributionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-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' + '/sdwan-traffic-distribution-profiles/{id}': + get: + tags: + - SD-WAN Traffic Distribution Profiles + summary: Get an SD-WAN traffic distribution profile + description: | + Get an existing SD-WAN traffic distribution profile. + operationId: GetSDWANTrafficDistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-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: + - SD-WAN Traffic Distribution Profiles + summary: Update an SD-WAN traffic distribution profile + description: | + Update an existing SD-WAN traffic distribution profile. + operationId: UpdateSDWANTrafficDistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-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: + - SD-WAN Traffic Distribution Profiles + summary: Delete an SD-WAN traffic distribution profile + description: | + Delete an SD-WAN traffic distribution profile. + operationId: DeleteSDWANTrafficDistributionProfilesByID + 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' + /dhcp-interfaces: + get: + tags: + - DHCP Interfaces + summary: List DHCP interfaces + description: | + Retrieve a list of DHCP interfaces. + operationId: ListDHCPInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dhcp-interfaces' + 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: + - DHCP Interfaces + summary: Create a DHCP interface + description: | + Create a new DHCP interface. + operationId: CreateDHCPInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + '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' + '/dhcp-interfaces/{id}': + get: + tags: + - DHCP Interfaces + summary: Get a DHCP interface + description: | + Get an existing DHCP interface. + operationId: GetDHCPInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + '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: + - DHCP Interfaces + summary: Update a DHCP interface + description: | + Update an existing DHCP interface. + operationId: UpdateDHCPInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + '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: + - DHCP Interfaces + summary: Delete a DHCP interface + description: | + Delete a DHCP interface. + operationId: DeleteDHCPInterfacesByID + 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' + /dns-proxies: + get: + tags: + - DNS Proxies + summary: List DNS proxies + description: | + Retrieve a list of DNS proxies. + operationId: ListDNSProxies + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dns-proxies' + 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: + - DNS Proxies + summary: Create a DNS proxy + description: | + Create a new DNS proxy. + operationId: CreateDNSProxies + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + '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' + '/dns-proxies/{id}': + get: + tags: + - DNS Proxies + summary: Get a DNS proxy + description: | + Get an existing DNS proxy. + operationId: GetDNSProxiesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + '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: + - DNS Proxies + summary: Update a DNS proxy + description: | + Update an existing DNS proxy. + operationId: UpdateDNSProxiesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + '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: + - DNS Proxies + summary: Delete a DNS proxy + description: | + Delete a DNS proxy. + operationId: DeleteDNSProxiesByID + 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' + /ssl-decryption-settings: + get: + tags: + - Ssl Decryption Settings + summary: GET Ssl Decryption Settings + description: GET Ssl Decryption Settings + operationId: getSslDecryptionSettings + parameters: + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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: + - Ssl Decryption Settings + summary: POST Ssl Decryption Settings + description: POST Ssl Decryption Settings + operationId: postSslDecryptionSettings + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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' + put: + tags: + - Ssl Decryption Settings + summary: PUT Ssl Decryption Settings + description: PUT Ssl Decryption Settings + operationId: putSslDecryptionSettings + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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: + - Ssl Decryption Settings + summary: DELETE Ssl Decryption Settings + description: DELETE Ssl Decryption Settings + operationId: deleteSslDecryptionSettings + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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' + /remote-networks-license-info: + get: + summary: Get Remote Networks License Info + description: Returns operational license model and site license counts. + operationId: getRemoteNetworksLicenseInfo + tags: + - Remote Networks License + responses: + '200': + description: License information retrieved successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/LicenseResult' + '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' + '500': + description: Failed to fetch license information. + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: Failed to retrieve license data +components: + parameters: + name: + name: name + in: query + description: The name of the configuration resource + required: false + schema: + type: string + pagination-optional: + name: pagination + in: query + required: false + schema: + type: boolean + description: The parameter to mention if the response should be paginated. By default, its set to false + 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 + folder: + name: folder + in: query + description: | + The folder in which the resource is defined + required: false + schema: + type: string + snippet: + name: snippet + in: query + description: | + The snippet in which the resource is defined + required: false + schema: + type: string + device: + name: device + in: query + description: | + The device in which the resource is defined + required: false + schema: + type: string + position: + name: position + in: query + description: The relative position of the rule + required: true + schema: + enum: + - pre + - post + default: pre + 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 + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + ConfigMatchList: + type: object + properties: + send_to_panorama: + type: boolean + description: + type: string + filter: + type: string + name: + type: string + send_email: + type: array + items: + type: object + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + GlobalprotectMatchList: + type: object + properties: + send_email: + type: array + items: + type: object + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + registration: + type: object + properties: + localhost: + type: object + properties: + panorama: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + action: + type: string + name: + type: string + quarantine: + type: boolean + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + description: + type: string + filter: + type: string + HipmatchMatchList: + type: object + properties: + send_email: + type: array + items: + type: object + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + registration: + type: object + properties: + localhost: + type: object + properties: + panorama: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + action: + type: string + name: + type: string + quarantine: + type: boolean + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + description: + type: string + filter: + type: string + IptagMatchList: + type: object + properties: + description: + type: string + filter: + type: string + send_email: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + actions: + type: array + items: + type: object + properties: + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + action: + type: string + registration: + type: object + properties: + localhost: + type: object + properties: + panorama: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + name: + type: string + name: + type: string + quarantine: + type: boolean + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + SystemMatchList: + type: object + properties: + description: + type: string + filter: + type: string + name: + type: string + send_email: + type: array + items: + type: object + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + UseridMatchList: + type: object + properties: + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + description: + type: string + filter: + type: string + name: + type: string + quarantine: + type: boolean + send_to_panorama: + type: boolean + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + action: + type: string + registration: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + localhost: + type: object + properties: + panorama: + type: object + properties: + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + send_email: + type: array + items: + type: object + LicenseInfo: + type: object + properties: + license_type: + type: string + example: FWAAS-SITE-1000Mbps + count: + type: integer + example: 1 + LicenseResult: + type: object + properties: + license_model: + type: array + items: + type: string + example: [ "agg-bandwidth", "site" ] + purchased_licenses: + type: array + items: + $ref: '#/components/schemas/LicenseInfo' + configured_licenses: + type: array + items: + $ref: '#/components/schemas/LicenseInfo' + operational_license: + type: string + description: > + Indicates the currently active license model. + Can be "agg-bandwidth", "site", or "none". + example: site + ssl-decryption-settings: + type: object + properties: + disabled_ssl_exclude_cert_from_predefined: + type: array + items: + type: object + forward_trust_certificate: + type: object + properties: + ecdsa: + type: string + rsa: + type: string + forward_untrust_certificate: + type: object + properties: + rsa: + type: string + ecdsa: + type: string + root_ca_exclude_list: + type: array + items: + type: object + ssl_exclude_cert: + type: array + items: + type: object + properties: + description: + type: string + exclude: + type: boolean + name: + type: string + trusted_root_CA: + type: array + items: + type: object + ike-crypto-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 + hash: + type: array + items: + type: string + enum: + - md5 + - sha1 + - sha256 + - sha384 + - sha512 + - non-auth + description: Hashing algorithm + default: sha1 + encryption: + type: array + description: Encryption algorithm + items: + type: string + enum: + - des + - 3des + - aes-128-cbc + - aes-192-cbc + - aes-256-cbc + - aes-128-gcm + - aes-256-gcm + default: aes-128-cbc + dh_group: + type: array + items: + type: string + enum: + - group1 + - group2 + - group5 + - group14 + - group19 + - group20 + description: Phase-1 DH group + default: group2 + lifetime: + type: object + description: Ike crypto profile lifetime + oneOf: + - type: object + title: seconds + properties: + seconds: + type: integer + description: specify lifetime in seconds + minimum: 180 + maximum: 65535 + - type: object + title: minutes + properties: + minutes: + type: integer + description: specify lifetime in minutes + minimum: 3 + maximum: 65535 + - type: object + title: hours + properties: + hours: + type: integer + description: specify lifetime in hours + minimum: 1 + maximum: 65535 + - type: object + title: days + properties: + days: + type: integer + description: specify lifetime in days + minimum: 1 + maximum: 365 + authentication_multiple: + type: integer + description: IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled + maximum: 50 + default: 0 + required: + - name + - hash + - encryption + - dh_group + 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 + ike-gateways: + 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: 63 + local_address: + type: object + properties: + interface: + type: string + description: Interface variable or hardcoded vlan/loopback. vlan will be passed as default value + default: vlan + authentication: + type: object + oneOf: + - type: object + title: pre_shared_key + properties: + pre_shared_key: + type: object + properties: + key: + type: string + format: password + - type: object + title: certificate + properties: + certificate: + type: object + properties: + allow_id_payload_mismatch: + type: boolean + certificate_profile: + type: string + local_certificate: + type: object + properties: + local_certificate_name: + type: string + strict_validation_revocation: + type: boolean + use_management_as_source: + type: boolean + peer_id: + type: object + properties: + type: + enum: + - ipaddr + - keyid + - fqdn + - ufqdn + id: + type: string + description: Peer ID string + pattern: '^(.+\@[\*a-zA-Z0-9.-]+)$|^([\*$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\,|[^,])+)$' + minLength: 1 + maxLength: 1024 + local_id: + type: object + properties: + type: + type: string + id: + type: string + description: Local ID string + pattern: '^(.+\@[a-zA-Z0-9.-]+)$|^([$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\,|[^,])+)$' + minLength: 1 + maxLength: 1024 + protocol: + type: object + properties: + ikev1: + type: object + properties: + ike_crypto_profile: + type: string + dpd: + type: object + properties: + enable: + type: boolean + ikev2: + type: object + properties: + ike_crypto_profile: + type: string + dpd: + type: object + properties: + enable: + type: boolean + version: + enum: + - ikev2-preferred + - ikev1 + - ikev2 + default: ikev2-preferred + protocol_common: + type: object + properties: + nat_traversal: + type: object + description: Enables NAT traversal for the IKE gateway. + properties: + enable: + type: boolean + default: true + passive_mode: + type: boolean + default: false + fragmentation: + type: object + properties: + enable: + enum: + - false + default: false + peer_address: + type: object + oneOf: + - type: object + title: ip + properties: + ip: + type: string + description: peer gateway has static IP address + - type: object + title: fqdn + properties: + fqdn: + type: string + description: peer gateway FQDN name + maxLength: 255 + - type: object + title: dynamic + properties: + dynamic: + type: object + default: {} + required: + - name + - authentication + - protocol + - peer_address + 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 + ipsec-crypto-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 + dh_group: + enum: + - no-pfs + - group1 + - group2 + - group5 + - group14 + - group19 + - group20 + description: phase-2 DH group (PFS DH group) + default: group2 + lifetime: + type: object + description: Ipsec crypto profile lifetime + oneOf: + - type: object + title: seconds + properties: + seconds: + type: integer + description: specify lifetime in seconds + minimum: 180 + maximum: 65535 + - type: object + title: minutes + properties: + minutes: + type: integer + description: specify lifetime in minutes + minimum: 3 + maximum: 65535 + - type: object + title: hours + properties: + hours: + type: integer + description: specify lifetime in hours + minimum: 1 + maximum: 65535 + - type: object + title: days + properties: + days: + type: integer + description: specify lifetime in days + minimum: 1 + maximum: 365 + lifesize: + type: object + oneOf: + - type: object + title: kb + properties: + kb: + type: integer + description: specify lifesize in kilobytes(KB) + minimum: 1 + maximum: 65535 + - type: object + title: mb + properties: + mb: + type: integer + description: specify lifesize in megabytes(MB) + minimum: 1 + maximum: 65535 + - type: object + title: gb + properties: + gb: + type: integer + description: specify lifesize in gigabytes(GB) + minimum: 1 + maximum: 65535 + - type: object + title: tb + properties: + tb: + type: integer + description: specify lifesize in terabytes(TB) + minimum: 1 + maximum: 65535 + required: + - name + - lifetime + anyOf: + - oneOf: + - type: object + title: esp + properties: + esp: + type: object + properties: + encryption: + type: array + description: Encryption algorithm + items: + type: string + enum: + - des + - 3des + - aes-128-cbc + - aes-192-cbc + - aes-256-cbc + - aes-128-gcm + - aes-256-gcm + - 'null' + default: aes-128-cbc + authentication: + type: array + description: Authentication algorithm + items: + type: string + default: sha1 + required: + - encryption + - authentication + required: + - esp + - type: object + title: ah + properties: + ah: + type: object + properties: + authentication: + type: array + items: + type: string + enum: + - md5 + - sha1 + - sha256 + - sha384 + - sha512 + required: + - authentication + required: + - ah + - 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 + ipsec-tunnels: + 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: 63 + tunnel_interface: + type: string + description: Tunnel interface variable or hardcoded tunnel. Default will be tunnels. + default: tunnel + auto_key: + type: object + properties: + ike_gateway: + type: array + items: + type: object + properties: + name: + type: string + ipsec_crypto_profile: + type: string + proxy_id: + type: array + description: IPv4 type of proxy_id values + items: + type: object + description: IPv4 type of proxy_id values for TCP protocol + properties: + name: + type: string + local: + type: string + remote: + type: string + protocol: + type: object + description: IPv4 type of proxy_id protocol values for TCP protocol + oneOf: + - type: object + title: number + properties: + number: + type: integer + description: IP protocol number + minimum: 1 + maximum: 254 + - type: object + title: tcp + properties: + tcp: + type: object + description: IPv4 type of proxy_id protocol values for TCP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + - type: object + title: udp + properties: + udp: + type: object + description: IPv6 type of proxy_id protocol values for UDP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + required: + - name + proxy_id_v6: + type: array + description: IPv6 type of proxy_id values + items: + type: object + description: IPv6 type of proxy_id values for TCP protocol + properties: + name: + type: string + local: + type: string + remote: + type: string + protocol: + type: object + description: IPv6 type of proxy_id protocol values for protocol + oneOf: + - type: object + title: number + properties: + number: + type: integer + description: IP protocol number + minimum: 1 + maximum: 254 + - type: object + title: tcp + properties: + tcp: + type: object + description: IPv6 type of proxy_id protocol values for TCP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + - type: object + title: udp + properties: + udp: + type: object + description: IPv6 type of proxy_id protocol values for UDP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + required: + - name + required: + - ike_gateway + - ipsec_crypto_profile + anti_replay: + type: boolean + description: Enable Anti-Replay check on this tunnel + copy_tos: + type: boolean + description: Copy IP TOS bits from inner packet to IPSec packet (not recommended) + default: false + enable_gre_encapsulation: + type: boolean + description: allow GRE over IPSec + default: false + tunnel_monitor: + type: object + properties: + enable: + type: boolean + description: Enable tunnel monitoring on this tunnel + default: true + destination_ip: + type: string + description: Destination IP to send ICMP probe + proxy_id: + type: string + description: Which proxy-id (or proxy-id-v6) the monitoring traffic will use + required: + - destination_ip + required: + - name + - auto_key + 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 + qos-policy-rules: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + action: + type: object + properties: + class: + type: string + description: + type: string + schedule: + type: string + dscp_tos: + type: object + properties: + codepoints: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + oneOf: + - type: object + title: ef + properties: + ef: + type: object + - type: object + title: af + properties: + af: + type: object + properties: + codepoint: + type: string + - type: object + title: cs + properties: + cs: + type: object + properties: + codepoint: + type: string + - type: object + title: tos + properties: + tos: + type: object + properties: + codepoint: + type: string + - type: object + title: custom + properties: + custom: + type: object + properties: + codepoint: + type: object + properties: + binary_value: + type: string + codepoint_name: + type: string + required: + - name + - action + 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 + rule-based-move: + type: object + title: rule-based-move + properties: + destination: + enum: + - top + - bottom + - before + - after + description: 'A destination of the rule. Valid destination values are top, bottom, before and after.' + rulebase: + enum: + - pre + - post + description: A base of a rule. Valid rulebase values are pre and post. + destination_rule: + type: string + description: A destination_rule attribute is required only if the destination value is before or after. Valid destination_rule values are existing rule UUIDs within the same container. + required: + - destination + - rulebase + 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: + type: string + description: Traffic class + maxLength: 31 + 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 + egress_guaranteed: + type: integer + description: guaranteed sending bandwidth in mbps + minimum: 0 + maximum: 60000 + - type: object + title: percentage + properties: + percentage: + type: object + properties: + class: + type: array + description: QoS setting for traffic classes + items: + type: object + properties: + name: + type: string + description: Traffic class + maxLength: 31 + 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 + egress_guaranteed: + type: integer + description: guaranteed sending bandwidth in percentage + minimum: 0 + maximum: 100 + 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 + zones: + 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: 63 + folder: + type: string + readOnly: true + enable_user_identification: + type: boolean + enable_device_identification: + type: boolean + dos_profile: + type: string + dos_log_setting: + type: string + network: + type: object + properties: + zone_protection_profile: + type: string + enable_packet_buffer_protection: + type: boolean + log_setting: + type: string + oneOf: + - title: tap + type: array + items: + type: string + - title: virtual_wire + type: array + items: + type: string + - title: layer2 + type: array + items: + type: string + - title: layer3 + type: array + items: + type: string + - title: tunnel + type: object + - title: external + type: array + items: + type: string + user_acl: + type: object + properties: + include_list: + type: array + items: + type: string + exclude_list: + type: array + items: + type: string + device_acl: + type: object + properties: + include_list: + type: array + items: + type: string + exclude_list: + type: array + items: + type: string + 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 + zone-protection-profiles: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: The profile name + type: string + maxLength: 31 + description: + description: The description of the profile + type: string + maxLength: 255 + flood: + type: object + properties: + tcp_syn: + type: object + properties: + enable: + description: Enable protection against SYN floods? + type: boolean + oneOf: + - title: red + type: object + properties: + alarm_rate: + description: When the flow exceeds the `alert_rate`` threshold, an alarm is generated. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: When the flow exceeds the `activate_rate`` threshold, the firewall drops individual SYN packets randomly to restrict the flow. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: When the flow exceeds the `maximal_rate` threshold, 100% of incoming SYN packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + - title: syn_cookies + type: object + properties: + alarm_rate: + description: When the flow exceeds the `alert_rate`` threshold, an alarm is generated. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: When the flow exceeds the `activate_rate`` threshold, the firewall drops individual SYN packets randomly to restrict the flow. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 0 + maximal_rate: + description: When the flow exceeds the `maximal_rate` threshold, 100% of incoming SYN packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 1000000 + required: + - alarm_rate + - activate_rate + - maximal_rate + udp: + type: object + properties: + enable: + description: Enable protection against UDP floods? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of UDP packets (not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of UDP packets (not matching an existing session) that the zone receives per second that triggers random dropping of UDP packets. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of UDP packets (not matching an existing session) the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + sctp_init: + type: object + properties: + enable: + description: Enable protection against floods of Stream Control Transmission Protocol (SCTP) packets that contain an Initiation (INIT) chunk? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of SCTP INIT packets (not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of SCTP INIT packets (not matching an existing session) that the zone receives per second before subsequent SCTP INIT packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of SCTP INIT packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + required: + - alarm_rate + - activate_rate + - maximal_rate + icmp: + type: object + properties: + enable: + description: Enable protection against ICMP floods? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of ICMP echo requests (pings not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of ICMP packets (not matching an existing session) that the zone receives per second before subsequent ICMP packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of ICMP packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + icmpv6: + type: object + properties: + enable: + description: Enable protection against ICMPv6 floods? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of ICMPv6 echo requests (pings not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of ICMPv6 packets (not matching an existing session) that the zone receives per second before subsequent ICMPv6 packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of ICMPv6 packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + other_ip: + type: object + properties: + enable: + description: Enable protection against other IP (non-TCP, non-ICMP, non-ICMPv6, non-SCTP, and non-UDP) floods? + type: boolean + red: + type: object + properties: + alarm_rate: + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + scan: + type: array + items: + type: object + properties: + name: + description: | + The threat ID number. These can be found in [Palo Alto Networks ThreatVault](https://threatvault.paloaltonetworks.com). + * "8001" - TCP Port Scan + * "8002" - Host Sweep + * "8003" - UDP Port Scan + * "8006" - Port Scan + type: string + enum: + - "8001" + - "8002" + - "8003" + - "8006" + action: + type: object + oneOf: + - title: allow + type: object + - title: alert + type: object + - title: block + type: object + - title: block_ip + type: object + properties: + track_by: + type: string + enum: + - source-and-destination + - source + duration: + type: integer + format: int32 + minimum: 1 + maximum: 3600 + required: + - track_by + - duration + interval: + type: integer + format: int32 + minimum: 2 + maximum: 65535 + example: 2 + threshold: + type: integer + format: int32 + minimum: 2 + maximum: 65535 + example: 100 + required: + - name + scan_white_list: + type: array + items: + type: object + properties: + name: + description: A descriptive name for the address to exclude. + type: string + oneOf: + - title: ipv4 + type: string + format: ipv4 + - title: ipv6 + type: string + format: ipv6 + required: + - name + spoofed_ip_discard: + description: | + Check that the source IP address of the ingress packet is routable and the routing interface is in the same zone as the ingress interface. If either condition is not true, discard the packet. + type: boolean + strict_ip_check: + description: | + Check that both conditions are true: + * The source IP address is not the subnet broadcast IP address of the ingress interface. + * The source IP address is routable over the exact ingress interface. + If either condition is not true, discard the packet. + type: boolean + fragmented_traffic_discard: + description: | + Discard fragmented IP packets. + type: boolean + strict_source_routing_discard: + description: | + Discard packets with the Strict Source Routing IP option set. Strict Source Routing is an option whereby a source of a datagram provides routing information through which a gateway or host must send the datagram. + type: boolean + loose_source_routing_discard: + description: | + Discard packets with the Loose Source Routing IP option set. Loose Source Routing is an option whereby a source of a datagram provides routing information and a gateway or host is allowed to choose any route of a number of intermediate gateways to get the datagram to the next address in the route. + type: boolean + timestamp_discard: + description: | + Discard packets with the Timestamp IP option set. + type: boolean + record_route_discard: + description: | + Discard packets with the Record Route IP option set. When a datagram has this option, each router that routes the datagram adds its own IP address to the header, thus providing the path to the recipient. + type: boolean + security_discard: + description: | + Discard packets if the security option is defined. + type: boolean + stream_id_discard: + description: | + Discard packets if the Stream ID option is defined. + type: boolean + unknown_option_discard: + description: | + Discard packets if the class and number are unknown. + type: boolean + malformed_option_discard: + description: | + Discard packets if they have incorrect combinations of class, number, and length based on RFCs 791, 1108, 1393, and 2113. + type: boolean + mismatched_overlapping_tcp_segment_discard: + description: | + Drop packets with mismatched overlapping TCP segments. + type: boolean + tcp_handshake_discard: + description: | + Drop packets with split handshakes. + type: boolean + tcp_syn_with_data_discard: + description: | + Prevent a TCP session from being established if the TCP SYN packet contains data during a three-way handshake. + type: boolean + default: true + tcp_synack_with_data_discard: + description: | + Prevent a TCP session from being established if the TCP SYN-ACK packet contains data during a three-way handshake. + type: boolean + default: true + reject_non_syn_tcp: + description: | + Determine whether to reject the packet if the first packet for the TCP session setup is not a SYN packet: + * `global` — Use system-wide setting that is assigned through the CLI. + * `yes` — Reject non-SYN TCP. + * `no` — Accept non-SYN TCP. + type: string + enum: + - global + - yes + - no + asymmetric_path: + description: | + Determine whether to drop or bypass packets that contain out-of-sync ACKs or out-of-window sequence numbers: + * `global` — Use system-wide setting that is assigned through TCP Settings or the CLI. + * `drop` — Drop packets that contain an asymmetric path. + * `bypass` — Bypass scanning on packets that contain an asymmetric path. + type: string + enum: + - global + - drop + - bypass + tcp_timestamp_strip: + description: | + Determine whether the packet has a TCP timestamp in the header and, if it does, strip the timestamp from the header. + type: boolean + tcp_fast_open_and_data_strip: + description: | + Strip the TCP Fast Open option (and data payload, if any) from the TCP SYN or SYN-ACK packet during a TCP three-way handshake. + type: boolean + mptcp_option_strip: + description: | + MPTCP is an extension of TCP that allows a client to maintain a connection by simultaneously using multiple paths to connect to the destination host. By default, MPTCP support is disabled, based on the global MPTCP setting. Review or adjust the MPTCP settings for the security zones associated with this profile: + * `no` — Enable MPTCP support (do not strip the MPTCP option). + * `yes` — Disable MPTCP support (strip the MPTCP option). With this configured, MPTCP connections are converted to standard TCP connections, as MPTCP is backwards compatible with TCP. + * `global` — Support MPTCP based on the global MPTCP setting. By default, the global MPTCP setting is set to yes so that MPTCP is disabled (the MPTCP option is stripped from the packet). + type: string + enum: + - no + - yes + - global + default: global + icmp_ping_zero_id_discard: + description: | + Discard packets if the ICMP ping packet has an identifier value of 0. + type: boolean + icmp_frag_discard: + description: Discard packets that consist of ICMP fragments. + type: boolean + icmp_large_packet_discard: + description: Discard ICMP packets that are larger than 1024 bytes. + type: boolean + discard_icmp_embedded_error: + description: Discard ICMP packets that are embedded with an error message. + type: boolean + suppress_icmp_timeexceeded: + description: Stop sending ICMP TTL expired messages. + type: boolean + suppress_icmp_needfrag: + description: | + Stop sending ICMP fragmentation needed messages in response to packets that exceed the interface MTU and have the do not fragment (DF) bit set. This setting will interfere with the PMTUD process performed by hosts behind the firewall. + type: boolean + ipv6: + type: object + properties: + routing_header_0: + description: Drop packets with type 0 routing header. + type: boolean + routing_header_1: + description: Drop packets with type 1 routing header. + type: boolean + routing_header_3: + description: Drop packets with type 3 routing header. + type: boolean + routing_header_4_252: + description: Drop packets with type 4 to type 252 routing header. + type: boolean + routing_header_253: + description: Drop packets with type 253 routing header. + type: boolean + routing_header_254: + description: Drop packets with type 254 routing header. + type: boolean + routing_header_255: + description: Drop packets with type 255 routing header. + type: boolean + ipv4_compatible_address: + description: Discard IPv6 packets that are defined as an RFC 4291 IPv4-Compatible IPv6 address. + type: boolean + filter_ext_hdr: + type: object + properties: + hop_by_hop_hdr: + description: Discard IPv6 packets that contain the Hop-by-Hop Options extension header. + type: boolean + routing_hdr: + description: Discard IPv6 packets that contain the Routing extension header, which directs packets to one or more intermediate nodes on its way to its destination. + type: boolean + dest_option_hdr: + description: Discard IPv6 packets that contain the Destination Options extension, which contains options intended only for the destination of the packet. + type: boolean + options_invalid_ipv6_discard: + description: Discard IPv6 packets that contain invalid IPv6 options in an extension header. + type: boolean + reserved_field_set_discard: + description: Discard IPv6 packets that have a header with a reserved field not set to zero. + type: boolean + anycast_source: + description: Discard IPv6 packets that contain an anycast source address. + type: boolean + needless_fragment_hdr: + description: Discard IPv6 packets with the last fragment flag (M=0) and offset of zero. + type: boolean + icmpv6_too_big_small_mtu_discard: + description: Discard IPv6 packets that contain a Packet Too Big ICMPv6 message when the maximum transmission unit (MTU) is less than 1,280 bytes. + type: boolean + ignore_inv_pkt: + type: object + properties: + dest_unreach: + description: Require an explicit Security policy match for Destination Unreachable ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + pkt_too_big: + description: Require an explicit Security policy match for Packet Too Big ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + time_exceeded: + description: Require an explicit Security policy match for Time Exceeded ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + param_problem: + description: Require an explicit Security policy match for Parameter Problem ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + redirect: + description: Require an explicit Security policy match for Redirect Message ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + non_ip_protocol: + type: object + properties: + list_type: + description: | + Specify the type of list you are creating for protocol protection: + * Include List—Only the protocols on the list are allowed—in addition to IPv4 (0x0800), IPv6 (0x86DD), ARP (0x0806), and VLAN tagged frames (0x8100). All other protocols are implicitly denied (blocked). + * Exclude List—Only the protocols on the list are denied; all other protocols are implicitly allowed. You cannot exclude IPv4 (0x0800), IPv6 (0x86DD), ARP (0x0806), or VLAN tagged frames (0x8100). + type: string + enum: + - exclude + - include + protocol: + type: array + items: + type: object + properties: + name: + description: | + Enter the protocol name that corresponds to the Ethertype code you are adding to the list. The firewall does not verify that the protocol name matches the Ethertype code but the Ethertype code does determine the protocol filter. + type: string + ether_type: + description: | + Enter an Ethertype code (protocol) preceded by 0x to indicate hexadecimal (range is 0x0000 to 0xFFFF). A list can have a maximum of 64 Ethertypes. Some sources of Ethertype codes are: + * [IEEE hexadecimal Ethertype](https://www.iana.org/assignments/ieee-802-numbers/ieee-802-numbers.xhtml) + * [standards.ieee.org/develop/regauth/ethertype/eth.txt](https://standards-oui.ieee.org/ethertype/eth.txt) + * [www.cavebear.com/archive/cavebear/Ethernet/type.html](https://www.cavebear.com/archive/cavebear/Ethernet/type.html) + type: string + enable: + description: Enable the Ethertype code on the list. + type: boolean + required: + - name + - ether_type + l2_sec_group_tag_protection: + type: object + properties: + tags: + type: array + items: + type: object + properties: + name: + description: Name for the list of Security Group Tags (SGTs). + type: string + tag: + description: The Layer 2 SGTs in headers of packets that you want to exclude (drop) when the SGT matches this list in the Zone Protection profile applied to a zone (range is 0 to 65,535). + type: string + enable: + description: Enable this exclude list for Ethernet SGT protection. + type: boolean + required: + - name + - tag + 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 + nat-rules: + type: object + required: + - id + - name + - from + - to + - source + - destination + - service + properties: + name: + description: NAT rule name + type: string + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + description: + description: NAT rule description + type: string + tag: + description: NAT rule tags + type: array + items: + type: string + disabled: + description: Disable NAT rule? + type: boolean + default: false + nat_type: + description: NAT type + type: string + enum: + - ipv4 + - nat64 + - nptv6 + default: ipv4 + from: + description: Source zone(s) of the original packet + type: array + items: + type: string + example: + - any + source: + description: Source address(es) of the original packet + type: array + items: + type: string + example: + - any + to: + description: Destination zone of the original packet + type: array + items: + type: string + example: + - any + to_interface: + description: Destination interface of the original packet + type: string + example: any + destination: + description: Destination address(es) of the original packet + type: array + items: + type: string + example: + - any + service: + description: The service of the original packet + type: string + example: any + source_translation: + type: object + oneOf: + - title: dynamic_ip_and_port + description: Dynamic IP and port + type: object + oneOf: + - title: translated_address + description: Translated source IP addresses + type: array + items: + description: IP address + type: string + - title: interface_address + description: Translated source interface + type: object + properties: + interface: + description: Interface name + type: string + oneOf: + - title: ip + description: Translated source IP address + type: string + - title: floating_ip + description: Floating IP address + type: string + - title: dynamic_ip + description: Dynamic IP + type: object + properties: + translated_address: + description: Translated IP addresses + type: array + items: + description: IP address + type: string + fallback: + type: object + oneOf: + - title: translated_address + description: Fallback IP addresses + type: array + items: + type: string + - title: interface_address + description: Fallback interface + type: object + properties: + interface: + description: Interface name + type: string + oneOf: + - title: ip + description: IP address + type: string + - title: floating_ip + description: Floating IP address + type: string + - title: static_ip + description: Static IP + type: object + properties: + translated_address: + description: Translated IP address + type: string + bi_directional: + type: string + active_active_device_binding: + type: string + enum: + - primary + - both + - "0" + - "1" + anyOf: + - oneOf: + - title: destination_translation + description: Destination translation + type: object + properties: + translated_address: + description: Translated destination IP address + type: string + translated_port: + description: Translated destination port + type: integer + minimum: 1 + maximum: 65535 + dns_rewrite: + description: DNS rewrite + type: object + properties: + direction: + type: string + enum: + - reverse + - forward + - title: dynamic_destination_translation + description: Dynamic destination translation + type: object + properties: + translated_address: + description: Translated destination IP address + type: string + translated_port: + description: Translated destination port + type: integer + minimum: 1 + maximum: 65535 + distribution: + description: Distribution method + type: string + enum: + - round-robin + - source-ip-hash + - ip-modulo + - ip-hash + - least-sessions + 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 + aggregate-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Aggregate interface name + type: string + default_value: + description: Default interface assignment + type: string + comment: + description: Aggregate interface description + type: string + minLength: 0 + maxLength: 1023 + anyOf: + - oneOf: + - title: layer2 + required: + - layer2 + properties: + layer2: + type: object + properties: + vlan_tag: + description: VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + example: '123' + lacp: + $ref: '#/components/schemas/lacp' + - title: layer3 + required: + - layer3 + properties: + layer3: + type: object + description: Aggregate Interface Layer 3 configuration + oneOf: + - title: static + type: object + properties: + ip: + description: Aggregate Interface IP addresses + type: array + items: + type: object + required: + - name + properties: + name: + description: Aggregate Interface IP addresses name + type: string + - title: dhcp + $ref: '#/components/schemas/agg-ethernet-dhcp-client' + properties: + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + default: 1500 + arp: + $ref: '#/components/schemas/agg-ethernet-arp' + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Aggregate Interface. + allOf: + - $ref: '#/components/schemas/ddns-config' + interface_management_profile: + description: Interface management profile + type: string + maxLength: 31 + lacp: + $ref: '#/components/schemas/lacp' + - 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 + lacp: + type: object + properties: + enable: + description: Enable LACP? + type: boolean + default: false + fast_failover: + description: Fast failover + type: boolean + default: false + mode: + description: Mode + type: string + enum: + - passive + - active + default: passive + transmission_rate: + description: Transmission mode + type: string + enum: + - fast + - slow + default: slow + system_priority: + description: LACP system priority in system ID + type: integer + minimum: 1 + maximum: 65535 + default: 32768 + max_ports: + description: Maximum number of physical ports bundled in the LAG + type: integer + minimum: 1 + maximum: 8 + default: 8 + agg-ethernet-dhcp-client: + type: object + description: Aggregate Ethernet DHCP Client + properties: + dhcp_client: + type: object + description: Aggregate Ethernet DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Aggregate Ethernet DHCP Client Send hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + ethernet-interfaces-dhcp-client: + type: object + description: Ethernet Interfaces DHCP Client + properties: + dhcp_client: + type: object + description: Ethernet Interfaces DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Ethernet Interfaces DHCP ClientSend hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + layer3-sub-interfaces-dhcp-client: + type: object + description: Layer3 sub interfaces DHCP Client + properties: + dhcp_client: + type: object + description: Layer3 sub interfaces DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Layer3 sub interfaces DHCP Client Send hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + vlan-interfaces-dhcp-client: + type: object + description: Vlan interfaces DHCP Client + properties: + dhcp_client: + type: object + description: Vlan interfaces DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Send hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + ddns-config: + type: object + required: + - ddns_hostname + - ddns_cert_profile + - ddns_vendor + - ddns_vendor_config + properties: + ddns_enabled: + description: Enable DDNS? + type: boolean + default: false + ddns_vendor: + description: DDNS vendor + type: string + maxLength: 127 + ddns_update_interval: + description: Update interval (days) + type: integer + minimum: 1 + maximum: 30 + default: 1 + ddns_cert_profile: + description: Certificate profile + type: string + ddns_hostname: + type: string + pattern: '^[a-zA-Z0-9_\.\-]+$' + maxLength: 255 + ddns_ip: + description: IP to register (static only) + type: string + format: ip-address + ddns_vendor_config: + description: DDNS vendor + type: string + maxLength: 255 + ethernet-interfaces: + type: object + required: + - id + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Interface name + type: string + default_value: + description: Default interface assignment + type: string + comment: + description: Interface description + type: string + minLength: 0 + maxLength: 1023 + link_speed: + description: Link speed + type: string + enum: + - auto + - '10' + - '100' + - '1000' + - '10000' + - '40000' + - '100000' + default: auto + link_duplex: + description: Link duplex + type: string + enum: + - auto + - half + - full + default: auto + link_state: + description: Link state + type: string + enum: + - auto + - up + - down + default: auto + poe: + $ref: '#/components/schemas/poe' + anyOf: + - oneOf: + - title: tap + properties: + tap: + type: object + default: {} + - title: layer2 + required: + - layer2 + properties: + layer2: + type: object + properties: + vlan_tag: + description: Assign interface to VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + lldp: + description: LLDP Settings + type: object + required: + - enable + properties: + enable: + description: Enable LLDP on Interface + type: boolean + default: false + - title: layer3 + required: + - layer3 + properties: + layer3: + type: object + description: Ethernet Interface Layer 3 configuration + oneOf: + - title: static + type: object + properties: + ip: + description: Ethernet Interface IP addresses + type: array + items: + type: object + required: + - name + properties: + name: + type: string + description: Ethernet Interface IP addresses name + - title: dhcp + type: object + $ref: "#/components/schemas/ethernet-interfaces-dhcp-client" + - title: pppoe + type: object + properties: + pppoe: + type: object + required: + - username + - password + properties: + enable: + type: boolean + default: true + username: + description: Username + type: string + minLength: 1 + maxLength: 255 + password: + description: Password + type: string + format: password + maxLength: 255 + authentication: + description: Authentication protocol + type: string + enum: + - CHAP + - PAP + - auto + static_address: + type: object + required: + - ip + properties: + ip: + description: Static IP address + type: string + maxLength: 63 + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + access_concentrator: + description: Access concentrator + type: string + minLength: 1 + maxLength: 255 + service: + description: Service + type: string + minLength: 1 + maxLength: 255 + passive: + type: object + required: + - enable + properties: + enable: + description: Passive Mode enabled + type: boolean + default: false + + properties: + interface_management_profile: + description: Interface management profile + type: string + maxLength: 31 + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + default: 1500 + arp: + $ref: '#/components/schemas/ethernet-interfaces-arp' + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Ethernet Interfaces. + allOf: + - $ref: '#/components/schemas/ddns-config' + - 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 + poe: + type: object + properties: + poe_enabled: + description: Enabled PoE? + type: boolean + default: false + poe_rsvd_pwr: + description: PoE reserved power + type: integer + minimum: 0 + maximum: 90 + default: 0 + agg-ethernet-arp: + description: Aggregate Ethernet ARP configuration + type: array + items: + type: object + description: Aggregate Ethernet ARP configuration object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + default: {} + ethernet-interfaces-arp: + description: Ethernet Interfaces ARP configuration + type: array + items: + type: object + description: Ethernet Interfaces ARP configuration object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + default: {} + layer3-subinterfaces-arp: + description: Layer 3 sub Interfaces ARP configuration + type: array + items: + type: object + description: Layer 3 sub Interfaces ARP configuration object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + default: {} + layer2-subinterfaces: + type: object + required: + - name + - vlan_tag + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L2 sub-interface name + type: string + example: parent-interface.vlan-tag + comment: + description: Description + type: string + vlan_tag: + description: VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + parent_interface: + description: Parent interface + type: string + 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 + layer3-subinterfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L3 sub-interface name + type: string + tag: + description: VLAN tag + type: integer + minimum: 1 + maximum: 4096 + parent_interface: + description: Parent interface + type: string + comment: + description: Description + type: string + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Layer 3 sub Interfaces. + allOf: + - $ref: '#/components/schemas/ddns-config' + arp: + $ref: "#/components/schemas/layer3-subinterfaces-arp" + interface_management_profile: + description: Interface management profile + type: string + example: string + anyOf: + - oneOf: + - title: static + type: object + properties: + ip: + description: L3 sub-interface IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: L3 sub-interface IP address(es) + required: + - name + - title: dhcp + $ref: '#/components/schemas/layer3-sub-interfaces-dhcp-client' + - 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 + loopback-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Loopback Interface name + pattern: '^\$[a-zA-Z\d\-_\. ]+$' + type: string + default_value: + description: Default interface assignment + pattern: '^loopback\.([1-9][0-9]{0,3})$' + type: string + example: 'loopback.123' + comment: + description: Description + type: string + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + interface_management_profile: + description: Interface management profile + type: string + example: string + ip: + description: Loopback IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: Loopback IP address(es) + required: + - name + ipv6: + description: Loopback IPv6 Configuration + type: object + properties: + address: + description: IPv6 Address Parent + type: array + items: + type: object + properties: + enable_on_interface: + type: boolean + description: Enable Address on Interface + default: true + name: + type: string + description: IPv6 Address + example: '2001:DB8::1/128' + interface_id: + type: string + description: Interface ID + default: "EUI-64" + enabled: + description: Enable IPv6 + type: boolean + default: false + + 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 + tunnel-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L3 sub-interface name + type: string + default_value: + description: Default interface assignment + pattern: '^tunnel\.([1-9][0-9]{0,3})$' + type: string + example: 'tunnel.123' + comment: + description: Description + type: string + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + interface_management_profile: + description: Interface management profile + type: string + example: string + ip: + description: Tunnel Interface IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: Tunnel Interface IP address(es) + 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 + vlan-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L3 sub-interface name + type: string + default_value: + description: Default interface assignment + pattern: '^vlan\.([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + type: string + example: 'vlan.123' + comment: + description: Description + type: string + vlan_tag: + description: VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + example: '123' + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Vlan Interfaces. + allOf: + - $ref: '#/components/schemas/ddns-config' + arp: + description: ARP configuration + type: array + items: + type: object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + interface: + description: ARP interface + type: string + interface_management_profile: + description: Interface management profile + type: string + example: string + anyOf: + - oneOf: + - title: static + type: object + properties: + ip: + description: VLAN Interface IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: VLAN Interface IP address(es) + required: + - name + - title: dhcp + $ref: '#/components/schemas/vlan-interfaces-dhcp-client' + - 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 + interface-management-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + http: + description: Allow HTTP? + type: boolean + https: + description: Allow HTTPS? + type: boolean + telnet: + description: Allow telnet? Seriously, why would you do this?!? + type: boolean + ssh: + description: Allow SSH? + type: boolean + ping: + description: Allow ping? + type: boolean + http_ocsp: + description: Allow HTTP OCSP? + type: boolean + response_pages: + description: Allow response pages? + type: boolean + userid_service: + description: Allow User-ID? + type: boolean + userid_syslog_listener_ssl: + description: Allow User-ID syslog listener (SSL)? + type: boolean + userid_syslog_listener_udp: + description: Allow User-ID syslog listener (UDP)? + type: boolean + permitted_ip: + description: Allowed IP address(es) + type: array + items: + type: object + properties: + name: + type: string + description: The allowed IP address or CIDR block. + 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 + bgp-address-family-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + ipv4: + required: + - ipv4 + properties: + ipv4: + type: object + properties: + unicast: + $ref: '#/components/schemas/bgp-address-family' + multicast: + $ref: '#/components/schemas/bgp-address-family' + 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 + bgp-address-family: + type: object + properties: + enable: + description: Enable? + type: boolean + soft_reconfig_with_stored_info: + description: Soft reconfiguration of peer with stored routes? + type: boolean + add_path: + type: object + properties: + tx_all_paths: + description: Advertise all paths to peer? + type: boolean + tx_bestpath_per_AS: + description: Advertise the bestpath per each neighboring AS? + type: boolean + as_override: + description: Override ASNs in outbound updates if AS-Path equals Remote-AS? + type: boolean + route_reflector_client: + description: Route reflector client? + type: boolean + default_originate: + description: Originate default route? + type: boolean + default_originate_map: + description: Default originate route map + type: string + allowas_in: + type: object + oneOf: + - title: origin + required: + - origin + properties: + origin: + type: object + - title: occurrence + required: + - occurrence + properties: + occurrence: + description: Number of times the firewalls own AS can be in an AS_PATH + type: integer + minimum: 1 + maximum: 10 + default: 1 + maximum_prefix: + type: object + properties: + num_prefixes: + description: Maximum number of prefixes + type: integer + minimum: 1 + maximum: 4294967295 + threshold: + description: Threshold percentage of the maximum number of prefixes + type: integer + minimum: 1 + maximum: 100 + action: + type: object + oneOf: + - title: warning_only + required: + - warning_only + properties: + warning_only: + type: object + - title: restart + required: + - restart + properties: + restart: + type: object + properties: + interval: + description: Restart interval + type: integer + minimum: 1 + maximum: 65535 + next_hop: + type: object + oneOf: + - title: self + required: + - self + properties: + self: + type: object + - title: self_force + required: + - self_force + properties: + self_force: + type: object + remove_private_AS: + type: object + oneOf: + - title: all + required: + - all + properties: + all: + type: object + - title: replace_AS + required: + - replace_AS + properties: + replace_AS: + type: object + send_community: + type: object + oneOf: + - title: all + required: + - all + properties: + all: + type: object + - title: both + required: + - both + properties: + both: + type: object + - title: extended + required: + - extended + properties: + extended: + type: object + - title: large + required: + - large + properties: + large: + type: object + - title: standard + required: + - standard + properties: + standard: + type: object + orf: + type: object + properties: + orf_prefix_list: + description: ORF prefix list + type: string + enum: + - none + - both + - receive + - send + bgp-auth-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + secret: + description: BGP authentication key + type: string + format: password + 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 + bgp-filtering-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: + type: string + ipv4: + required: + - ipv4 + properties: + ipv4: + type: object + properties: + unicast: + $ref: '#/components/schemas/bgp-filter' + multicast: + oneOf: + - type: object + properties: + inherit: + description: Inherit from unicast + type: boolean + - $ref: '#/components/schemas/bgp-filter' + 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 + bgp-filter: + type: object + properties: + filter_list: + type: object + properties: + inbound: + type: string + outbound: + type: string + inbound_network_filters: + type: object + properties: + distribute_list: + type: string + prefix_list: + type: string + outbound_network_filters: + type: object + properties: + distribute_list: + type: string + prefix_list: + type: string + route_maps: + type: object + properties: + inbound: + type: string + outbound: + type: string + conditional_advertisement: + type: object + properties: + exist: + type: object + properties: + advertise_map: + type: string + exist_map: + type: string + non_exist: + type: object + properties: + advertise_map: + type: string + non_exist_map: + type: string + unsuppress_map: + type: string + bgp-redistribution-profiles: + type: object + required: + - name + - ipv4 + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + ipv4: + type: object + properties: + unicast: + type: object + properties: + static: + type: object + properties: + enable: + description: Enable static route redistribution? + type: boolean + metric: + description: Route metric + type: integer + minimum: 1 + maximum: 65535 + route_map: + description: Route map + type: string + ospf: + type: object + properties: + enable: + description: Enable OSPF route redistribution? + type: boolean + metric: + description: Route metric + type: integer + minimum: 1 + maximum: 65535 + route_map: + description: Route map + type: string + connected: + type: object + properties: + enable: + description: Enable connected route redistribution? + type: boolean + metric: + description: Route metric + type: integer + minimum: 1 + maximum: 65535 + route_map: + description: Route map + type: string + 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 + bgp-route-map-redistributions: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + description: + description: Description + type: string + anyOf: + - oneOf: + - title: bgp + required: + - bgp + properties: + bgp: + type: object + oneOf: + - title: ospf + required: + - ospf + properties: + ospf: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + as_path_access_list: + description: AS path access list + type: string + regular_community: + description: Regular community + type: string + large_community: + description: Large community + type: string + extended_community: + description: Extended community + type: string + interface: + description: Interface + type: string + origin: + description: Origin + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + local_preference: + description: Local preference + type: integer + minimum: 1 + maximum: 4294967295 + peer: + description: Peer + type: string + enum: + - local + - none + ipv4: + type: object + description: bgp-route-map-redistributions ipv4 object + properties: + address: + type: object + description: bgp-route-map-redistributions ipv4 object address + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + description: bgp-route-map-redistributions ipv4 object next_hop + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + route_source: + type: object + description: bgp-route-map-redistributions ipv4 object route_source + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + metric: + type: object + properties: + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + action: + description: Metric action + type: string + enum: + - set + - add + - subtract + metric_type: + description: Metric type + type: string + enum: + - type-1 + - type-2 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + - title: rib + required: + - rib + properties: + rib: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + as_path_access_list: + description: AS path access list + type: string + regular_community: + description: Regular community + type: string + large_community: + description: Large community + type: string + extended_community: + description: Extended community + type: string + interface: + description: Interface + type: string + origin: + description: Origin + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + local_preference: + description: Local preference + type: integer + minimum: 1 + maximum: 4294967295 + peer: + description: Peer + type: string + enum: + - local + - none + ipv4: + type: object + properties: + address: + type: object + description: bgp-route-map-redistributions ipv4 rib object address + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + description: bgp-route-map-redistributions ipv4 rib object next_hop + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + route_source: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + source_address: + description: Source address + type: string + - title: ospf + required: + - ospf + properties: + ospf: + type: object + oneOf: + - title: bgp + required: + - bgp + properties: + bgp: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + address: + type: object + description: bgp-route-map-redistributions ospf address + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + description: bgp-route-map-redistributions ospf next_hop + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + atomic_aggregate: + description: Enable BGP atomic aggregate? + type: boolean + local_preference: + description: Local preference + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + weight: + description: Weight + type: integer + minimum: 0 + maximum: 4294967295 + origin: + description: Origin + type: string + enum: + - none + - egp + - igp + - incomplete + originator_id: + description: Originator ID + type: string + aggregator: + type: object + description: bgp-route-map-redistributions set aggregator + properties: + as: + description: Aggregator AS + type: integer + minimum: 1 + maximum: 4294967295 + router_id: + description: Router ID + type: string + ipv4: + type: object + properties: + source_address: + description: Source address + type: string + next_hop: + description: Next hop + type: string + aspath_prepend: + description: AS numbers + type: array + items: + description: AS number + type: integer + minimum: 1 + maximum: 65535 + regular_community: + description: Regular communities + type: array + items: + description: Regular community + type: string + large_community: + description: Large communities + type: array + items: + description: Large community + type: string + - title: rib + required: + - rib + properties: + rib: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + type: integer + minimum: 1 + maximum: 4294967295 + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + source_address: + description: Source address + type: string + - title: connected_static + required: + - connected_static + properties: + connected_static: + type: object + oneOf: + - title: bgp + required: + - bgp + properties: + bgp: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + ipv4: + type: object + description: bgp-route-map-redistributions connected-static ipv4 + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + atomic_aggregate: + description: Enable BGP atomic aggregate? + type: boolean + local_preference: + description: Local preference + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + weight: + description: Weight + type: integer + minimum: 0 + maximum: 4294967295 + origin: + description: Origin + type: string + enum: + - none + - egp + - igp + - incomplete + originator_id: + description: Originator ID + type: string + aggregator: + type: object + description: bgp-route-map-redistributions connected_static aggregator + properties: + as: + description: Aggregator AS + type: integer + minimum: 1 + maximum: 4294967295 + router_id: + description: Router ID + type: string + ipv4: + type: object + properties: + source_address: + description: Source address + type: string + next_hop: + description: Next hop + type: string + aspath_prepend: + description: AS numbers + type: array + items: + description: AS number + type: integer + minimum: 1 + maximum: 65535 + regular_community: + description: Regular communities + type: array + items: + description: Regular community + type: string + large_community: + description: Large communities + type: array + items: + description: Large community + type: string + - title: ospf + required: + - ospf + properties: + ospf: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + ipv4: + type: object + description: bgp-route-map-redistributions connected-static match ipv4 + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + metric_type: + description: Metric type + type: string + enum: + - type-1 + - type-2 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + - title: rib + required: + - rib + properties: + rib: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + ipv4: + type: object + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + source_address: + description: Source address + type: string + - 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 + bgp-route-maps: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: + type: string + route_map: + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + description: + description: Description + type: string + action: + description: Action + type: string + enum: + - permit + - deny + match: + type: object + properties: + as_path_access_list: + description: AS path access list + type: string + interface: + description: Interface + type: string + regular_community: + description: Regular community + type: string + origin: + description: Origin + type: string + large_community: + description: Large community + type: string + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + extended_community: + description: Extended community + type: string + local_preference: + type: integer + minimum: 0 + maximum: 4294967295 + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + peer: + description: Peer + type: string + enum: + - local + - none + ipv4: + type: object + description: bgp-route-maps ipv4 object + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + route_source: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + atomic_aggregate: + description: Enable BGP atomic aggregate? + type: boolean + local_preference: + description: Local preference + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 0 + maximum: 4294967295 + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + weight: + description: Weight + type: integer + minimum: 0 + maximum: 4294967295 + origin: + description: Origin + type: string + enum: + - none + - egp + - igp + - incomplete + remove_regular_community: + description: Remove regular community name + type: string + remove_large_community: + description: Remove large community name + type: string + originator_id: + description: Originator ID + type: string + aggregator: + type: object + description: bgp-route-maps aggregator + properties: + as: + description: Aggregator AS + type: integer + minimum: 1 + maximum: 4294967295 + router_id: + description: Router ID + type: string + ipv4: + type: object + properties: + source_address: + description: Source address + type: string + next_hop: + description: Next hop + type: string + aspath_exclude: + type: array + items: + description: AS number + type: integer + aspath_prepend: + type: array + items: + description: AS number + type: integer + regular_community: + type: array + items: + description: Regular community + type: string + enum: + - none + - blackhole + - no-peer + - graceful-shutdown + - accept-own + - local-as + - route-filter-v4 + - route-filter-v6 + - no-advertise + - no-export + - internet + overwrite_regular_community: + description: Overwrite regular community? + type: boolean + large_community: + type: array + items: + description: Large community + type: string + overwrite_large_community: + description: Overwrite large community? + type: boolean + 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 + link-tags: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the link tag + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: The name of the link tag + type: string + maxLength: 63 + color: + description: The color of the link tag + type: string + enum: + - Red + - Green + - Blue + - Yellow + - Copper + - Orange + - Purple + - Gray + - Light Green + - Cyan + - Light Gray + - Blue Gray + - Lime + - Black + - Gold + - Brown + - Olive + - Maroon + - Red-Orange + - Yellow-Orange + - Forest Green + - Turquoise Blue + - Azure Blue + - Cerulean Blue + - Midnight Blue + - Medium Blue + - Cobalt Blue + - Violet Blue + - Blue Violet + - Medium Violet + - Medium Rose + - Lavender + - Orchid + - Thistle + - Peach + - Salmon + - Magenta + - Red Violet + - Mahogany + - Burnt Sienna + - Chestnut + comments: + description: Description of the link tag + type: string + maxLength: 0 + 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 + logical-routers: + type: object + required: + - 'name' + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + routing_stack: + type: string + enum: + - legacy + - advanced + vrf: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + interface: + type: array + items: + type: string + global_vrid: + type: integer + zone_name: + type: string + admin_dists: + type: object + properties: + static: + type: integer + static_ipv6: + type: integer + ospf_inter: + type: integer + ospf_intra: + type: integer + ospf_ext: + type: integer + ospfv3_inter: + type: integer + ospfv3_intra: + type: integer + ospfv3_ext: + type: integer + bgp_internal: + type: integer + bgp_external: + type: integer + bgp_local: + type: integer + rip: + type: integer + vr_admin_dists: + type: object + properties: + static: + type: integer + static_ipv6: + type: integer + ospf_int: + type: integer + ospf_ext: + type: integer + ospfv3_int: + type: integer + ospfv3_ext: + type: integer + ibgp: + type: integer + ebgp: + type: integer + rip: + type: integer + sdwan_type: + type: string + rib_filter: + type: object + properties: + ipv4: + type: object + properties: + static: + type: object + properties: + route_map: + type: string + bgp: + type: object + properties: + route_map: + type: string + ospf: + type: object + properties: + route_map: + type: string + rip: + type: object + properties: + route_map: + type: string + ipv6: + type: object + properties: + static: + type: object + properties: + route_map: + type: string + bgp: + type: object + properties: + route_map: + type: string + ospfv3: + type: object + properties: + route_map: + type: string + routing_table: + type: object + properties: + ip: + type: object + properties: + static_route: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + destination: + type: string + interface: + type: string + nexthop: + type: object + oneOf: + - title: receive + required: + - receive + properties: + receive: + type: object + properties: {} + - title: discard + required: + - discard + properties: + discard: + type: object + properties: {} + - title: ipv6_address + required: + - ipv6_address + properties: + ipv6_address: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + - title: next_lr + required: + - next_lr + properties: + next_lr: + type: string + - title: next_vr + required: + - next_vr + properties: + next_vr: + type: string + - title: tunnel + required: + - tunnel + properties: + tunnel: + type: string + route_table: + type: object + oneOf: + - title: unicast + required: + - unicast + properties: + unicast: + type: object + properties: {} + - title: multicast + required: + - multicast + properties: + multicast: + type: object + properties: {} + - title: both + required: + - both + properties: + both: + type: object + properties: {} + - title: no_install + required: + - no_install + properties: + no_install: + type: object + properties: {} + admin_dist: + type: integer + metric: + type: integer + bfd: + type: object + properties: + profile: + type: string + path_monitor: + type: object + properties: + enable: + type: boolean + failure_condition: + type: string + enum: + - 'any' + - 'all' + hold_time: + type: integer + monitor_destinations: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + source: + type: string + destination: + type: string + destination_fqdn: + type: string + interval: + type: integer + count: + type: integer + ipv6: + type: object + properties: + static_route: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + destination: + type: string + interface: + type: string + nexthop: + type: object + oneOf: + - title: receive + required: + - receive + properties: + receive: + type: object + properties: {} + - title: discard + required: + - discard + properties: + discard: + type: object + properties: {} + - title: ipv6_address + required: + - ipv6_address + properties: + ipv6_address: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + - title: next_lr + required: + - next_lr + properties: + next_lr: + type: string + - title: next_vr + required: + - next_vr + properties: + next_vr: + type: string + - title: tunnel + required: + - tunnel + properties: + tunnel: + type: string + admin_dist: + type: integer + metric: + type: integer + option: + type: object + properties: + passive: + type: object + properties: {} + route_table: + type: object + properties: + unicast: + type: object + properties: {} + multicast: + type: object + properties: {} + both: + type: object + properties: {} + no_install: + type: object + properties: {} + bfd: + type: object + properties: + profile: + type: string + path_monitor: + type: object + properties: + enable: + type: boolean + failure_condition: + type: string + enum: + - 'any' + - 'all' + hold_time: + type: integer + monitor_destinations: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + source: + type: string + destination: + type: string + destination_fqdn: + type: string + interval: + type: integer + count: + type: integer + ospf: + type: object + properties: + router_id: + type: string + global_bfd: + type: object + properties: + profile: + type: string + enable: + type: boolean + rfc1583: + type: boolean + reject_default_route: + type: boolean + allow_redist_default_route: + type: boolean + flood_prevention: + type: object + properties: + hello: + type: object + properties: + enable: + type: boolean + max_packet: + type: integer + lsa: + type: object + properties: + enable: + type: boolean + max_packet: + type: integer + spf_timer: + type: string + global_if_timer: + type: string + vr_timers: + type: object + properties: + spf_calculation_delay: + type: integer + lsa_interval: + type: integer + auth_profile: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: password + required: + - password + properties: + password: + type: string + - title: md5 + required: + - md5 + properties: + md5: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: number + key: + type: string + preferred: + type: boolean + redistribution_profile: + type: string + area: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + authentication: + type: string + type: + type: object + oneOf: + - title: normal + required: + - normal + properties: + normal: + type: object + properties: + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: stub + required: + - stub + properties: + stub: + type: object + properties: + no_summary: + type: boolean + accept_summary: + type: boolean + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + default_route_metric: + type: integer + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: nssa + required: + - nssa + properties: + nssa: + type: object + properties: + no_summary: + type: boolean + accept_summary: + type: boolean + default_information_originate: + type: object + properties: + metric: + type: integer + metric_type: + type: string + enum: + - 'type-1' + - 'type-2' + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + type: + type: string + enum: + - 'ext-1' + - 'ext-2' + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + route_tag: + type: integer + advertise: + type: boolean + range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + substitute: + type: string + advertise: + type: boolean + vr_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + mtu_ignore: + type: boolean + passive: + type: boolean + priority: + type: integer + link_type: + type: object + oneOf: + - title: broadcast + required: + - broadcast + properties: + broadcast: + type: object + properties: {} + - title: p2p + required: + - p2p + properties: + p2p: + type: object + properties: {} + - title: p2mp + required: + - p2mp + properties: + p2mp: + type: object + properties: + neighbor: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + priority: + type: integer + metric: + type: integer + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + timing: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + gr_delay: + type: integer + virtual_link: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + neighbor_id: + type: string + transit_area_id: + type: string + enable: + type: boolean + interface_id: + type: integer + instance_id: + type: integer + timing: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + passive: + type: boolean + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + export_rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + new_path_type: + type: string + enum: + - 'ext-1' + - 'ext-2' + new_tag: + type: string + metric: + type: integer + graceful_restart: + type: object + properties: + enable: + type: boolean + grace_period: + type: integer + helper_enable: + type: boolean + strict_LSA_checking: + type: boolean + max_neighbor_restart_time: + type: integer + ospfv3: + type: object + properties: + enable: + type: boolean + reject_default_route: + type: boolean + allow_redist_default_route: + type: boolean + router_id: + type: string + global_bfd: + type: object + properties: + profile: + type: string + disable_transit_traffic: + type: boolean + vr_timers: + type: object + properties: + spf_calculation_delay: + type: integer + lsa_interval: + type: integer + auth_profile: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + spi: + type: string + oneOf: + - title: esp + required: + - esp + properties: + esp: + type: object + properties: + authentication: + type: object + oneOf: + - title: sha1 + required: + - sha1 + properties: + sha1: + type: object + properties: + key: + type: string + - title: sha256 + required: + - sha256 + properties: + sha256: + type: object + properties: + key: + type: string + - title: sha384 + required: + - sha384 + properties: + sha384: + type: object + properties: + key: + type: string + - title: sha512 + required: + - sha512 + properties: + sha512: + type: object + properties: + key: + type: string + - title: md5 + required: + - md5 + properties: + md5: + type: object + properties: + key: + type: string + - title: none + required: + - none + properties: + none: + type: object + properties: {} + encryption: + type: object + properties: + algorithm: + type: string + enum: + - '3des' + - 'aes-128-cbc' + - 'aes-192-cbc' + - 'aes-256-cbc' + - 'null' + key: + type: string + - title: ah + required: + - ah + properties: + ah: + type: object + oneOf: + - title: sha1 + required: + - sha1 + properties: + sha1: + type: object + properties: + key: + type: string + - title: sha256 + required: + - sha256 + properties: + sha256: + type: object + properties: + key: + type: string + - title: sha384 + required: + - sha384 + properties: + sha384: + type: object + properties: + key: + type: string + - title: sha512 + required: + - sha512 + properties: + sha512: + type: object + properties: + key: + type: string + - title: md5 + required: + - md5 + properties: + md5: + type: object + properties: + key: + type: string + spf_timer: + type: string + global_if_timer: + type: string + redistribution_profile: + type: string + area: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + authentication: + type: string + type: + type: object + oneOf: + - title: normal + required: + - normal + properties: + normal: + type: object + properties: + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: stub + required: + - stub + properties: + stub: + type: object + properties: + accept_summary: + type: boolean + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + no_summary: + type: boolean + default_route_metric: + type: integer + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: nssa + required: + - nssa + properties: + nssa: + type: object + properties: + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + route_tag: + type: integer + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + no_summary: + type: boolean + default_information_originate: + type: object + properties: + metric: + type: integer + metric_type: + type: string + enum: + - 'type-1' + - 'type-2' + accept_summary: + type: boolean + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + type: + type: string + enum: + - 'ext-1' + - 'ext-2' + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + route_tag: + type: integer + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + advertise: + type: boolean + vr_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + mtu_ignore: + type: boolean + passive: + type: boolean + priority: + type: integer + link_type: + type: object + oneOf: + - title: broadcast + required: + - broadcast + properties: + broadcast: + type: object + properties: {} + - title: p2p + required: + - p2p + properties: + p2p: + type: object + properties: {} + - title: p2mp + required: + - p2mp + properties: + p2mp: + type: object + properties: + neighbor: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + priority: + type: integer + neighbor: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + gr_delay: + type: integer + metric: + type: integer + instance_id: + type: integer + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + timing: + type: string + virtual_link: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + neighbor_id: + type: string + transit_area_id: + type: string + enable: + type: boolean + interface_id: + type: integer + instance_id: + type: integer + timing: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + passive: + type: boolean + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + export_rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + new_path_type: + type: string + enum: + - 'ext-1' + - 'ext-2' + new_tag: + type: string + metric: + type: integer + graceful_restart: + type: object + properties: + enable: + type: boolean + grace_period: + type: integer + helper_enable: + type: boolean + strict_LSA_checking: + type: boolean + max_neighbor_restart_time: + type: integer + ecmp: + type: object + properties: + enable: + type: boolean + algorithm: + type: object + oneOf: + - title: ip_modulo + required: + - ip_modulo + properties: + ip_modulo: + type: object + properties: {} + - title: ip_hash + required: + - ip_hash + properties: + ip_hash: + type: object + properties: + src_only: + type: boolean + use_port: + type: boolean + hash_seed: + type: integer + - title: weighted_round_robin + required: + - weighted_round_robin + properties: + weighted_round_robin: + type: object + properties: + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + weight: + type: integer + - title: balanced_round_robin + required: + - balanced_round_robin + properties: + balanced_round_robin: + type: object + properties: {} + max_path: + type: integer + symmetric_return: + type: boolean + strict_source_path: + type: boolean + multicast: + type: object + properties: + enable: + type: boolean + enable_v6: + type: boolean + static_route: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + destination: + type: string + interface: + type: string + nexthop: + type: object + properties: + ip_address: + type: string + preference: + type: integer + pim: + type: object + properties: + enable: + type: boolean + rpf_lookup_mode: + type: string + enum: + - 'mrib-then-urib' + - 'mrib-only' + - 'urib-only' + route_ageout_time: + type: integer + if_timer_global: + type: string + group_permission: + type: string + ssm_address_space: + type: object + properties: + group_list: + type: string + spt_threshold: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + threshold: + type: string + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + description: + type: string + dr_priority: + type: integer + send_bsm: + type: boolean + if_timer: + type: string + neighbor_filter: + type: string + rp: + type: object + properties: + local_rp: + type: object + oneOf: + - title: static_rp + required: + - static_rp + properties: + static_rp: + type: object + properties: + interface: + type: string + address: + type: string + override: + type: boolean + group_list: + type: string + - title: candidate_rp + required: + - candidate_rp + properties: + candidate_rp: + type: object + properties: + interface: + type: string + address: + type: string + priority: + type: integer + advertisement_interval: + type: integer + group_list: + type: string + external_rp: + type: array + items: + type: object + properties: + name: + type: string + group_list: + type: string + override: + type: boolean + igmp: + type: object + properties: + enable: + type: boolean + dynamic: + type: object + properties: + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + version: + type: string + enum: + - '2' + - '3' + robustness: + type: string + enum: + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + group_filter: + type: string + max_groups: + type: string + max_sources: + type: string + query_profile: + type: string + router_alert_policing: + type: boolean + static: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + interface: + type: string + group_address: + type: string + source_address: + type: string + msdp: + type: object + properties: + enable: + type: boolean + global_timer: + type: string + global_authentication: + type: string + originator_id: + type: object + properties: + interface: + type: string + ip: + type: string + peer: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + local_address: + type: object + properties: + interface: + type: string + ip: + type: string + peer_as: + type: string + peer_address: + type: object + oneOf: + - title: ip + required: + - ip + properties: + ip: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + authentication: + type: string + max_sa: + type: integer + inbound_sa_filter: + type: string + outbound_sa_filter: + type: string + mode: + type: string + enum: + - PIM-SM + - IGMP-Proxy + route_ageout_time: + type: integer + interface_group: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + description: + type: string + interface: + type: array + items: + type: string + group_permission: + type: object + properties: + any_source_multicast: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_address: + type: string + included: + type: boolean + source_specific_multicast: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_address: + type: string + source_address: + type: string + included: + type: boolean + igmp: + type: object + properties: + enable: + type: boolean + version: + type: string + enum: + - '1' + - '2' + - '3' + mode: + type: string + enum: + - 'router' + - 'host' + max_query_response_time: + type: integer + query_interval: + type: integer + last_member_query_interval: + type: integer + immediate_leave: + type: boolean + robustness: + type: string + enum: + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + max_groups: + type: string + max_sources: + type: string + router_alert_policing: + type: boolean + pim: + type: object + properties: + enable: + type: boolean + assert_interval: + type: integer + hello_interval: + type: integer + join_prune_interval: + type: integer + dr_priority: + type: integer + bsr_border: + type: boolean + allowed_neighbors: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + ssm_address_space: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_address: + type: string + included: + type: boolean + spt_threshold: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + threshold: + type: string + rp: + type: object + properties: + local_rp: + type: object + oneOf: + - title: static_rp + required: + - static_rp + properties: + static_rp: + type: object + properties: + interface: + type: string + address: + type: string + override: + type: boolean + group_addresses: + type: array + items: + type: string + - title: candidate_rp + required: + - candidate_rp + properties: + candidate_rp: + type: object + properties: + interface: + type: string + address: + type: string + priority: + type: integer + advertisement_interval: + type: integer + group_addresses: + type: array + items: + type: string + external_rp: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_addresses: + type: array + items: + type: string + override: + type: boolean + rip: + type: object + properties: + enable: + type: boolean + default_information_originate: + type: boolean + global_timer: + type: string + auth_profile: + type: string + redistribution_profile: + type: string + global_bfd: + type: object + properties: + profile: + type: string + global_inbound_distribute_list: + type: object + properties: + access_list: + type: string + global_outbound_distribute_list: + type: object + properties: + access_list: + type: string + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + mode: + type: string + enum: + - active + - passive + - send-only + split_horizon: + type: string + enum: + - split-horizon + - no-split-horizon + - no-split-horizon-with-poison-reverse + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + interface_inbound_distribute_list: + type: object + properties: + access_list: + type: string + metric: + type: integer + interface_outbound_distribute_list: + type: object + properties: + access_list: + type: string + metric: + type: integer + bgp: + type: object + properties: + enable: + type: boolean + router_id: + type: string + local_as: + type: string + confederation_member_as: + type: string + install_route: + type: boolean + enforce_first_as: + type: boolean + fast_external_failover: + type: boolean + ecmp_multi_as: + type: boolean + default_local_preference: + type: integer + graceful_shutdown: + type: boolean + always_advertise_network_route: + type: boolean + reject_default_route: + type: boolean + allow_redist_default_route: + type: boolean + as_format: + type: string + med: + type: object + properties: + always_compare_med: + type: boolean + deterministic_med_comparison: + type: boolean + aggregate: + type: object + properties: + aggregate_med: + type: boolean + graceful_restart: + type: object + properties: + enable: + type: boolean + stale_route_time: + type: integer + max_peer_restart_time: + type: integer + local_restart_time: + type: integer + global_bfd: + type: object + properties: + profile: + type: string + peer_group: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + aggregated_confed_as_path: + type: boolean + soft_reset_with_stored_info: + type: boolean + type: + type: object + oneOf: + - title: ibgp + required: + - ibgp + properties: + ibgp: + type: object + properties: + export_nexthop: + type: string + - title: ebgp_confed + required: + - ebgp_confed + properties: + ebgp_confed: + type: object + properties: + export_nexthop: + type: string + - title: ibgp_confed + required: + - ibgp_confed + properties: + ibgp_confed: + type: object + properties: + export_nexthop: + type: string + - title: ebgp + required: + - ebgp + properties: + ebgp: + type: object + properties: + import_nexthop: + type: string + export_nexthop: + type: string + remove_private_as: + type: boolean + address_family: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + filtering_profile: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + connection_options: + type: object + properties: + timers: + type: string + multihop: + type: integer + authentication: + type: string + dampening: + type: string + peer: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + passive: + type: boolean + peer_as: + type: string + peering_type: + type: string + reflector_client: + type: string + subsequent_address_family_identifier: + type: object + properties: + unicast: + type: boolean + multicast: + type: boolean + enable_sender_side_loop_detection: + type: boolean + enable_mp_bgp: + type: boolean + inherit: + type: object + oneOf: + - title: ipv4 + required: + - ipv4 + properties: + yes: + type: object + properties: {} + - title: 'no' + required: + - 'no' + properties: + no: + type: object + properties: + address_family: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + filtering_profile: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + local_address: + type: object + properties: + interface: + type: string + ip: + type: string + peer_address: + type: object + oneOf: + - title: ip + required: + - ip + properties: + ip: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + connection_options: + type: object + properties: + keep_alive_interval: + type: string + hold_time: + type: string + idle_hold_time: + type: integer + min_route_adv_interval: + type: integer + multihop: + type: string + open_delay_time: + type: integer + incoming_bgp_connection: + type: object + properties: + remote_port: + type: integer + allow: + type: boolean + outgoing_bgp_connection: + type: object + properties: + local_port: + type: integer + allow: + type: boolean + timers: + type: string + authentication: + type: string + dampening: + type: string + bfd: + type: object + properties: + profile: + type: string + multihop: + type: object + properties: + min_received_ttl: + type: number + max_prefixes: + type: string + aggregate_routes: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + description: + type: string + enable: + type: boolean + summary_only: + type: boolean + as_set: + type: boolean + same_med: + type: boolean + type: + type: object + oneOf: + - title: ipv4 + required: + - ipv4 + properties: + ipv4: + type: object + properties: + summary_prefix: + type: string + suppress_map: + type: string + attribute_map: + type: string + - title: ipv6 + required: + - ipv6 + properties: + ipv6: + type: object + properties: + summary_prefix: + type: string + suppress_map: + type: string + attribute_map: + type: string + redistribution_profile: + type: object + properties: + ipv4: + type: object + properties: + unicast: + type: string + ipv6: + type: object + properties: + unicast: + type: string + advertise_network: + type: object + properties: + ipv4: + type: object + properties: + network: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + unicast: + type: boolean + multicast: + type: boolean + backdoor: + type: boolean + ipv6: + type: object + properties: + network: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + unicast: + type: boolean + policy: + type: object + properties: + import: + type: object + properties: + rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + used_by: + type: array + items: + type: string + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + action: + type: object + oneOf: + - title: deny + required: + - deny + properties: + deny: + type: object + properties: {} + - title: allow + required: + - allow + properties: + allow: + type: object + properties: + dampening: + type: string + update: + type: object + properties: + local_preference: + type: integer + med: + type: integer + weight: + type: integer + nexthop: + type: string + origin: + type: string + enum: + - igp + - egp + - incomplete + as_path_limit: + type: integer + as_path: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove + required: + - remove + properties: + remove: + type: object + properties: {} + - title: prepend + required: + - prepend + properties: + prepend: + type: integer + - title: remove_and_prepend + required: + - remove_and_prepend + properties: + remove_and_prepend: + type: integer + community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + extended_community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + export: + type: object + properties: + rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + used_by: + type: array + items: + type: string + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + action: + type: object + oneOf: + - title: deny + required: + - deny + properties: + deny: + type: object + properties: {} + - title: allow + required: + - allow + properties: + allow: + type: object + properties: + update: + type: object + properties: + local_preference: + type: integer + med: + type: integer + nexthop: + type: string + origin: + type: string + enum: + - igp + - egp + - multicast + as_path_limit: + type: integer + as_path: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove + required: + - remove + properties: + remove: + type: object + properties: {} + - title: prepend + required: + - prepend + properties: + prepend: + type: integer + - title: remove_and_prepend + required: + - remove_and_prepend + properties: + remove_and_prepend: + type: integer + community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + extended_community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + conditional_advertisement: + type: object + properties: + policy: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + used_by: + type: array + items: + type: string + non_exist_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + advertise_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + aggregation: + type: object + properties: + address: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + prefix: + type: string + enable: + type: boolean + summary: + type: boolean + as_set: + type: boolean + aggregate_route_attributes: + type: object + properties: + local_preference: + type: integer + med: + type: integer + weight: + type: integer + nexthop: + type: string + origin: + type: string + enum: + - igp + - egp + - incomplete + as_path_limit: + type: integer + as_path: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove + required: + - remove + properties: + remove: + type: object + properties: {} + - title: prepend + required: + - prepend + properties: + prepend: + type: integer + - title: remove_and_prepend + required: + - remove_and_prepend + properties: + remove_and_prepend: + type: integer + community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + extended_community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + suppress_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + advertise_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + redist_rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + address_family_identifier: + type: string + enum: + - ipv4 + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + enable: + type: boolean + set_origin: + type: string + enum: + - igp + - egp + - incomplete + set_med: + type: integer + set_local_preference: + type: integer + set_as_path_limit: + type: integer + set_community: + type: array + items: + type: string + set_extended_community: + type: array + items: + type: string + metric: + type: integer + 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 + ospf-auth-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + anyOf: + - oneOf: + - title: password + type: object + required: + - password + properties: + password: + description: Password + type: string + format: password + - title: md5 + type: object + required: + - md5 + properties: + md5: + description: MD5s + type: array + items: + type: object + properties: + name: + description: Key ID + type: integer + minimum: 1 + maximum: 255 + key: + description: MD5 hash + type: string + maxLength: 16 + format: password + preferred: + description: Preferred? + type: boolean + - 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 + pbf-rules: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: PBF rule name + type: string + description: + description: Description + type: string + tag: + description: Tags + type: array + items: + type: string + schedule: + description: Schedule + type: string + from: + type: object + oneOf: + - title: zone + type: object + properties: + zone: + description: Source zones + type: array + items: + description: Source zone name + type: string + - title: interface + type: object + properties: + interface: + description: Source interfaces + type: array + items: + description: Source interface name + type: string + source: + description: Source addresses + type: array + items: + type: string + source_user: + description: Source users + type: array + items: + description: Source username + type: string + destination: + description: Destination addresses + type: array + items: + type: string + service: + description: Services + type: array + items: + description: Service name + type: string + application: + description: Applications + type: array + items: + description: Application name + type: string + action: + type: object + oneOf: + - title: forward + type: object + properties: + forward: + type: object + properties: + egress_interface: + description: Egress interface + type: string + nexthop: + type: object + oneOf: + - title: ip-address + properties: + ip_address: + description: Next hop IP address + type: string + - title: fqdn + properties: + fqdn: + description: Next hop FQDN + type: string + monitor: + type: object + properties: + profile: + description: Monitoring profile + type: string + disable_if_unreachable: + description: Disable this rule if nexthop/monitor ip is unreachable? + type: boolean + ip_address: + description: Monitor IP address + type: string + - title: discard + type: object + properties: + discard: + type: object + default: {} + - title: no_pbf + type: object + properties: + no_pbf: + type: object + default: {} + enforce_symmetric_return: + type: object + properties: + enabled: + description: Enforce symmetric return? + type: boolean + nexthop_address_list: + description: Next hop IP addresses + type: array + items: + type: object + properties: + name: + description: Next hop IP address + type: string + 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 + route-access-lists: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Route access list name + type: string + description: + description: Description + type: string + type: + type: object + properties: + ipv4: + type: object + properties: + ipv4_entry: + description: IPv4 access lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + source_address: + type: object + oneOf: + - title: address + required: + - address + properties: + address: + description: Source IP address + type: string + - title: entry + required: + - entry + properties: + address: + description: Source IP address + type: string + wildcard: + description: Source IP wildcard + type: string + destination_address: + type: object + oneOf: + - title: address + required: + - address + properties: + address: + description: Destination IP address + type: string + - title: entry + required: + - entry + properties: + address: + description: Destination IP address + type: string + wildcard: + description: Destination IP wildcard + type: string + 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 + route-community-lists: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Route community list name + type: string + description: + description: Description + type: string + type: + type: object + oneOf: + - title: regular + required: + - regular + properties: + regular: + type: object + properties: + regular_entry: + description: Regular community lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + community: + description: Communities + type: array + items: + description: Community + type: string + enum: + - blackhole + - no-peer + - graceful-shutdown + - accept-own + - local-as + - route-filter-v4 + - route-filter-v6 + - no-advertise + - no-export + - internet + - title: large + required: + - large + properties: + large: + type: object + properties: + large_entry: + description: Large community lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + lc_regex: + description: Large community regular expression + type: array + items: + type: string + maxItems: 8 + - title: extended + required: + - extended + properties: + extended: + type: object + properties: + extended_entry: + description: Extended community lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + lc_regex: + description: Extended community regular expression + type: array + items: + type: string + maxItems: 8 + 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 + route-path-access-lists: + type: object + required: + - 'name' + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: AS path access list name + type: string + description: + description: Description + type: string + aspath_entry: + description: AS paths + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + aspath_regex: + description: AS path regular expression + type: string + 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 + route-prefix-lists: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Filter prefix list name + type: string + description: + description: Description + type: string + ipv4: + type: object + properties: + ipv4_entry: + description: IPv4 prefix lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + prefix: + type: object + oneOf: + - title: network + required: + - network + properties: + network: + description: Network + type: string + enum: + - any + - title: entry + required: + - "entry" + properties: + entry: + type: object + properties: + network: + description: Network + type: string + greater_than_or_equal: + description: Greater than or equal to + type: integer + minimum: 0 + maximum: 32 + less_than_or_equal: + description: Less than or equal to + type: integer + minimum: 0 + maximum: 32 + 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 + auto-vpn-clusters: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: VPN cluster name + type: string + enable_sdwan: + description: Enable SD-WAN? + type: boolean + enable_mesh_between_hubs: + description: Enable mesh between hubs? + type: boolean + enable_mesh_interconnect: + description: Enable mesh interconnect? + type: boolean + type: + description: VPN cluster type + type: string + enum: + - hub-spoke + - mesh + default: hub-spoke + branches: + description: Branches + type: array + items: + type: object + properties: + name: + description: Branch firewall serial number + type: string + site: + description: Site name + type: string + logical_router: + description: Router + type: string + bgp_redistribution_profile: + description: BGP redistribution profile + type: string + interfaces: + description: Interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + dhcp_ip: + description: DHCP IP + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + default: false + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + maxItems: 4 + private_interfaces: + description: Private interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + default: false + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + maxItems: 4 + gateways: + description: Hubs + type: array + items: + type: object + properties: + name: + description: Hub firewall serial number + type: string + site: + description: Site name + type: string + priority: + description: Priority + enum: + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + - '8' + logical_router: + description: Router + type: string + bgp_redistribution_profile: + description: BGP redistribution file + type: string + allow_dia_vpn_failover: + description: Allow DIA to VPN failover on branch device for the hub? + type: boolean + interfaces: + description: Interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + dhcp_ip: + description: DHCP IP + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + private_interfaces: + description: Private interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + auto-vpn-monitor: + type: object + properties: + vpn_cluster: + description: VPN cluster + type: string + connection_type: + description: Connection type + type: string + source_device: + description: Hub firewall serial number + type: string + local_intf: + description: Hub firewall interface + type: string + destination_device: + description: Branch firewall serial number + type: string + peer_intf: + description: Branch firewall interface + type: string + ike_gateway_name: + description: IKE gateway name + type: string + tunnel_name: + description: Tunnel name + type: string + tunnel_ip: + description: Hub tunnel IP address + type: string + ike_sa_status: + description: IKE security association status + type: string + ike_sa_result: + description: IKE security association result + type: string + ipsec_sa_status: + description: IPSec security association status + type: string + ipsec_sa_result: + description: IPSec security association result + type: string + tunnel_status: + description: Tunnel status + type: string + tunnel_result: + description: Tunnel result + type: string + ts: + description: Timestamp + type: string + # auto-vpn-objects: + # type: object + # properties: + # name: + # type: string + # example: string + # interface: + # type: array + # items: + # type: object + # example: [] + # bgp: + # type: object + # properties: + # enable: + # type: boolean + # router_id: + # type: string + # example: string + # local_as: + # type: string + # example: string + # install_route: + # type: boolean + # enforce_first_as: + # type: boolean + # fast_external_failover: + # type: boolean + # ecmp_multi_as: + # type: boolean + # default_local_preference: + # type: integer + # example: 1 + # graceful_shutdown: + # type: boolean + # always_advertise_network_route: + # type: boolean + # med: + # type: object + # properties: + # always_compare_med: + # type: boolean + # deterministic_med_comparison: + # type: boolean + # graceful_restart: + # type: object + # properties: + # enable: + # type: boolean + # stale_route_time: + # type: integer + # example: 1 + # max_peer_restart_time: + # type: integer + # example: 1 + # local_restart_time: + # type: integer + # example: 1 + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # peer_group: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # uuid: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # enable: + # type: boolean + # type: + # type: object + # properties: + # ibgp: + # type: object + # ebgp: + # type: object + # address_family: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # filtering_profile: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # connection_options: + # type: object + # properties: + # timers: + # type: string + # example: string + # multihop: + # type: string + # example: string + # authentication: + # type: string + # example: string + # dampening: + # type: string + # example: string + # peer: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # passive: + # type: boolean + # peer_as: + # type: string + # example: string + # enable_sender_side_loop_detection: + # type: boolean + # inherit: + # type: object + # properties: + # yes: + # type: object + # no: + # type: object + # properties: + # address_family: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # filtering_profile: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # local_address: + # type: object + # properties: + # interface: + # type: string + # example: string + # ip: + # type: string + # example: string + # peer_address: + # type: object + # properties: + # ip: + # type: string + # example: string + # fqdn: + # type: string + # example: string + # connection_options: + # type: object + # properties: + # timers: + # type: string + # example: string + # multihop: + # type: string + # example: string + # authentication: + # type: string + # example: string + # dampening: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # multihop: + # type: object + # properties: + # min_received_ttl: + # type: integer + # example: 1 + # aggregate_routes: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # description: + # type: string + # example: string + # enable: + # type: boolean + # summary_only: + # type: boolean + # as_set: + # type: boolean + # same_med: + # type: boolean + # type: + # type: object + # properties: + # ipv4: + # type: object + # properties: + # summary_prefix: + # type: string + # example: string + # suppress_map: + # type: string + # example: string + # attribute_map: + # type: string + # example: string + # ipv6: + # type: object + # properties: + # summary_prefix: + # type: string + # example: string + # suppress_map: + # type: string + # example: string + # attribute_map: + # type: string + # example: string + # redistribution_profile: + # type: object + # properties: + # ipv4: + # type: object + # properties: + # unicast: + # type: string + # example: string + # ipv6: + # type: object + # properties: + # unicast: + # type: string + # example: string + # advertise_network: + # type: object + # properties: + # ipv4: + # type: object + # properties: + # network: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # unicast: + # type: boolean + # multicast: + # type: boolean + # backdoor: + # type: boolean + # ipv6: + # type: object + # properties: + # network: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # unicast: + # type: boolean + # routing_table: + # type: object + # properties: + # ip: + # type: object + # properties: + # static_route: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # uuid: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # destination: + # type: string + # example: string + # interface: + # type: string + # example: string + # nexthop: + # type: object + # properties: + # discard: + # type: object + # ip_address: + # type: string + # example: string + # next_lr: + # type: string + # example: string + # fqdn: + # type: string + # example: string + # admin_dist: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # path_monitor: + # type: object + # properties: + # enable: + # type: boolean + # failure_condition: + # type: string + # example: string + # hold_time: + # type: integer + # example: 1 + # monitor_destinations: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # source: + # type: string + # example: string + # destination: + # type: string + # example: string + # interval: + # type: integer + # example: 1 + # count: + # type: integer + # example: 1 + # ipv6: + # type: object + # properties: + # static_route: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # destination: + # type: string + # example: string + # interface: + # type: string + # example: string + # nexthop: + # type: object + # properties: + # discard: + # type: object + # ipv6_address: + # type: string + # example: string + # fqdn: + # type: string + # example: string + # next_lr: + # type: string + # example: string + # admin_dist: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # path_monitor: + # type: object + # properties: + # enable: + # type: boolean + # failure_condition: + # type: string + # example: string + # hold_time: + # type: integer + # example: 1 + # monitor_destinations: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # source: + # type: string + # example: string + # destination: + # type: string + # example: string + # interval: + # type: integer + # example: 1 + # count: + # type: integer + # example: 1 + # ospf: + # type: object + # properties: + # router_id: + # type: string + # example: string + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # enable: + # type: boolean + # rfc1583: + # type: boolean + # spf_timer: + # type: string + # example: string + # global_if_timer: + # type: string + # example: string + # redistribution_profile: + # type: string + # example: string + # area: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # authentication: + # type: string + # example: string + # type: + # type: object + # properties: + # normal: + # type: object + # properties: + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # stub: + # type: object + # properties: + # no_summary: + # type: boolean + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa: + # type: object + # properties: + # no_summary: + # type: boolean + # default_information_originate: + # type: object + # properties: + # metric: + # type: integer + # example: 1 + # metric_type: + # type: string + # example: string + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa_ext_range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # route_tag: + # type: integer + # example: 1 + # advertise: + # type: boolean + # range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # substitute: + # type: string + # example: string + # advertise: + # type: boolean + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # enable: + # type: boolean + # mtu_ignore: + # type: boolean + # passive: + # type: boolean + # priority: + # type: integer + # example: 1 + # link_type: + # type: object + # properties: + # broadcast: + # type: object + # p2p: + # type: object + # p2mp: + # type: object + # properties: + # neighbor: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # priority: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # timing: + # type: string + # example: string + # virtual_link: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # neighbor_id: + # type: string + # example: string + # transit_area_id: + # type: string + # example: string + # enable: + # type: boolean + # interface_id: + # type: integer + # example: 1 + # instance_id: + # type: integer + # example: 1 + # timing: + # type: string + # example: string + # passive: + # type: boolean + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # graceful_restart: + # type: object + # properties: + # enable: + # type: boolean + # grace_period: + # type: integer + # example: 1 + # helper_enable: + # type: boolean + # strict_LSA_checking: + # type: boolean + # max_neighbor_restart_time: + # type: integer + # example: 1 + # ospfv3: + # type: object + # properties: + # enable: + # type: boolean + # router_id: + # type: string + # example: string + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # disable_transit_traffic: + # type: boolean + # spf_timer: + # type: string + # example: string + # global_if_timer: + # type: string + # example: string + # redistribution_profile: + # type: string + # example: string + # area: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # authentication: + # type: string + # example: string + # type: + # type: object + # properties: + # normal: + # type: object + # properties: + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # stub: + # type: object + # properties: + # no_summary: + # type: boolean + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa: + # type: object + # properties: + # no_summary: + # type: boolean + # default_information_originate: + # type: object + # properties: + # metric: + # type: integer + # example: 1 + # metric_type: + # type: string + # example: string + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa_ext_range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # route_tag: + # type: integer + # example: 1 + # advertise: + # type: boolean + # range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # advertise: + # type: boolean + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # mtu_ignore: + # type: boolean + # passive: + # type: boolean + # priority: + # type: integer + # example: 1 + # link_type: + # type: object + # properties: + # broadcast: + # type: object + # p2p: + # type: object + # p2mp: + # type: object + # properties: + # neighbor: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # priority: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # instance_id: + # type: integer + # example: 1 + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # timing: + # type: string + # example: string + # virtual_link: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # neighbor_id: + # type: string + # example: string + # transit_area_id: + # type: string + # example: string + # enable: + # type: boolean + # interface_id: + # type: integer + # example: 1 + # instance_id: + # type: integer + # example: 1 + # timing: + # type: string + # example: string + # passive: + # type: boolean + # authentication: + # type: string + # example: string + # graceful_restart: + # type: object + # properties: + # enable: + # type: boolean + # grace_period: + # type: integer + # example: 1 + # helper_enable: + # type: boolean + # strict_LSA_checking: + # type: boolean + # max_neighbor_restart_time: + # type: integer + # example: 1 + # ecmp: + # type: object + # properties: + # enable: + # type: boolean + # autogenerated: + # type: string + # example: string + # algorithm: + # type: object + # properties: + # ip_modulo: + # type: object + # ip_hash: + # type: object + # properties: + # src_only: + # type: boolean + # use_port: + # type: boolean + # hash_seed: + # type: integer + # example: 1 + # weighted_round_robin: + # type: object + # properties: + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # weight: + # type: integer + # example: 1 + # balanced_round_robin: + # type: object + # max_path: + # type: integer + # example: 1 + # symmetric_return: + # type: boolean + # strict_source_path: + # type: boolean + # multicast: + # type: object + # properties: + # enable: + # type: boolean + # static_route: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # destination: + # type: string + # example: string + # interface: + # type: string + # example: string + # nexthop: + # type: object + # properties: + # ip_address: + # type: string + # example: string + # preference: + # type: integer + # example: 1 + # pim: + # type: object + # properties: + # enable: + # type: boolean + # rpf_lookup_mode: + # type: string + # example: string + # route_ageout_time: + # type: integer + # example: 1 + # if_timer_global: + # type: string + # example: string + # group_permission: + # type: string + # example: string + # ssm_address_space: + # type: object + # properties: + # group_list: + # type: string + # example: string + # spt_threshold: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # threshold: + # type: string + # example: string + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # description: + # type: string + # example: string + # dr_priority: + # type: integer + # example: 1 + # send_bsm: + # type: boolean + # if_timer: + # type: string + # example: string + # neighbor_filter: + # type: string + # example: string + # rp: + # type: object + # properties: + # local_rp: + # type: object + # properties: + # static_rp: + # type: object + # properties: + # interface: + # type: string + # example: string + # address: + # type: string + # example: string + # override: + # type: boolean + # group_list: + # type: string + # example: string + # candidate_rp: + # type: object + # properties: + # interface: + # type: string + # example: string + # address: + # type: string + # example: string + # priority: + # type: integer + # example: 1 + # advertisement_interval: + # type: integer + # example: 1 + # group_list: + # type: string + # example: string + # external_rp: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # group_list: + # type: string + # example: string + # override: + # type: boolean + # igmp: + # type: object + # properties: + # enable: + # type: boolean + # dynamic: + # type: object + # properties: + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # version: + # type: string + # example: string + # robustness: + # type: string + # example: string + # group_filter: + # type: string + # example: string + # max_groups: + # type: string + # example: string + # max_sources: + # type: string + # example: string + # query_profile: + # type: string + # example: string + # router_alert_policing: + # type: boolean + # static: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # interface: + # type: string + # example: string + # group_address: + # type: string + # example: string + # source_address: + # type: string + # example: string + # rip: + # type: object + # properties: + # enable: + # type: boolean + # default_information_originate: + # type: boolean + # global_timer: + # type: string + # example: string + # auth_profile: + # type: string + # example: string + # redistribution_profile: + # type: string + # example: string + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # global_inbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # global_outbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # mode: + # type: string + # example: string + # split_horizon: + # type: string + # example: string + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # interface_inbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # metric: + # type: integer + # example: 1 + # interface_outbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # metric: + # type: integer + # example: 1 + auto-vpn-push-config: + type: object + properties: + auto_vpn_devices: + description: VPN clusters + type: array + items: + type: object + properties: + name: + description: VPN cluster to push to + type: string + refresh_psk: + type: boolean + default: true + auto-vpn-push-response: + type: object + properties: + success: + description: Push successful? + type: boolean + job: + description: Job ID + type: string + message: + description: Job message + type: string + auto-vpn-settings: + required: + - vpn_address_pool + - as_range + type: object + properties: + vpn_address_pool: + description: VPN address pool + type: array + items: + type: string + as_range: + type: object + properties: + start: + type: integer + minimum: 1 + maximum: 65535 + end: + type: integer + minimum: 1 + maximum: 65535 + enable_mesh_between_hubs: + description: Enable mesh connection between hubs? + type: boolean + sdwan-error-correction-profiles: + type: object + required: + - name + - activation_threshold + - mode + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + activation_threshold: + type: integer + example: 1 + mode: + type: object + oneOf: + - title: forward_error_correction + type: object + required: + - forward_error_correction + properties: + forward_error_correction: + type: object + required: + - ratio + - recovery_duration + properties: + ratio: + type: string + recovery_duration: + type: integer + - title: packet_duplication + type: object + required: + - packet_duplication + properties: + packet_duplication: + type: object + required: + - recovery_duration_pd + properties: + recovery_duration_pd: + type: integer + 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 + sdwan-path-quality-profiles: + type: object + required: + - name + - metric + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + maxLength: 31 + metric: + type: object + required: + - latency + - pkt-loss + - jitter + properties: + latency: + type: object + required: + - threshold + - sensitivity + properties: + threshold: + description: Latency threshold (ms) + default: 100 + type: integer + minimum: 10 + maximum: 3000 + sensitivity: + description: Latency sensitivity + default: medium + type: string + enum: + - low + - medium + - high + pkt_loss: + type: object + required: + - threshold + - sensitivity + properties: + threshold: + description: Packet loss threshold (percentage) + default: 1 + type: integer + minimum: 1 + maximum: 100 + sensitivity: + description: Packet loss sensitivity + default: medium + type: string + enum: + - low + - medium + - high + jitter: + type: object + required: + - threshold + - sensitivity + properties: + threshold: + description: Jitter threshold (ms) + default: 100 + type: integer + minimum: 10 + maximum: 2000 + sensitivity: + description: Jitter sensitivity + default: medium + type: string + enum: + - low + - medium + - high + 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 + sdwan-rules: + type: object + required: + - name + - from + - position + - to + - source + - source_user + - destination + - application + - service + - action + - path_quality_profile + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Rule name + type: string + description: + description: Rule description + type: string + position: + description: Rule postion relative to device rules + type: string + enum: + - pre + - post + disabled: + description: Disable rule? + type: boolean + default: false + tag: + description: List of tags + type: array + items: + type: string + from: + description: List of source zones + type: array + items: + type: string + example: any + to: + description: List of destination zones + type: array + items: + type: string + example: any + source: + description: List of source addresses + type: array + items: + type: string + example: any + negate_source: + description: Negate source address(es)? + type: boolean + default: false + source_user: + description: List of source users + type: array + items: + type: string + example: any + destination: + description: List of destination addresses + type: array + items: + type: string + example: any + negate_destination: + description: Negate destination address(es)? + type: boolean + default: false + application: + description: List of applications + type: array + items: + type: string + example: any + service: + description: List of services + type: array + items: + type: string + example: any + path_quality_profile: + description: Path quality profile + type: string + saas_quality_profile: + description: SaaS quality profile + type: string + error_correction_profile: + description: Error correction profile + type: string + action: + type: object + required: + - traffic_distribution_profile + properties: + traffic_distribution_profile: + description: Traffic dstribution profile + type: string + 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 + sdwan-saas-quality-profiles: + type: object + required: + - name + - monitor_mode + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + monitor_mode: + type: object + oneOf: + - title: adaptive + type: object + required: + - adaptive + properties: + adaptive: + type: object + default: {} + - title: static_ip + type: object + required: + - static_ip + properties: + static_ip: + type: object + oneOf: + - title: ip_address + required: + - ip_address + properties: + ip_address: + description: List of IP addresses + type: array + items: + type: object + required: + - name + - probe_interval + properties: + name: + description: IP address + type: string + format: ip-address + probe_interval: + description: Probe interval (seconds) + type: integer + minimum: 1 + maximum: 60 + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: object + required: + - fqdn_name + - probe_interval + properties: + fqdn_name: + description: FQDN + type: string + probe_interval: + description: Probe interval (seconds) + type: integer + minimum: 1 + maximum: 60 + - title: http_https + type: object + required: + - http_https + properties: + http_https: + type: object + required: + - monitored_url + - probe_interval + properties: + monitored_url: + description: Monitored URL + type: string + format: url + probe_interval: + description: Probe interval (seconds) + type: integer + minimum: 1 + maximum: 60 + 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 + sdwan-traffic-distribution-profiles: + type: object + required: + - name + - traffic-distribution + - link-tags + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + maxLength: 31 + traffic_distribution: + description: Traffic distribution + type: string + enum: + - Best Available Path + - Top Down Priority + - Weighted Session Distribution + default: Best Available Path + link_tags: + type: array + description: Link-Tags for interfaces identified by defined tags + items: + type: object + required: + - name + properties: + name: + type: string + maxLength: 255 + description: Link-Tag used for identifying a set of interfaces + weight: + description: Weight (percentage) (only used when `traffic-distribution` is `Weighted Session Distribution`) + type: integer + minimum: 0 + maximum: 100 + 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 + dhcp-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Interface name + type: string + anyOf: + - oneOf: + - title: server + required: + - server + properties: + server: + type: object + properties: + probe_ip: + description: Ping IP before allocating? + type: boolean + mode: + description: DHCP server mode + type: string + enum: + - auto + - enabled + - disabled + option: + type: object + properties: + lease: + type: object + oneOf: + - title: unlimited + properties: + unlimited: + type: object + default: {} + - title: timeout + properties: + timeout: + description: DHCP lease timeout (minutes) + type: integer + minimum: 0 + maximum: 1000000 + inheritance: + type: object + properties: + source: + description: Interface from which to inherit lease options + type: string + gateway: + description: Default gateway + type: string + subnet_mask: + description: Subnet mask + type: string + dns: + type: object + properties: + primary: + description: Primary DNS server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary DNS server + type: string + format: ip-address + example: inherited + wins: + type: object + properties: + primary: + description: Primary WINS server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary WINS server + type: string + format: ip-address + example: inherited + nis: + type: object + properties: + primary: + description: Primary NIS server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary NIS server + type: string + format: ip-address + example: inherited + ntp: + type: object + properties: + primary: + description: Primary NTP server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary NTP server + type: string + format: ip-address + example: inherited + pop3_server: + description: POP3 server + type: string + example: inherited + smtp_server: + description: SMTP server + type: string + example: inherited + dns_suffix: + description: DNS suffix + type: string + example: inherited + user_defined: + description: Custom DHCP options + type: array + items: + type: object + required: + - name + - inherited + properties: + name: + description: Option name + type: string + code: + description: Option code + type: integer + minimum: 1 + maximum: 254 + inherited: + description: Inherited from DHCP server inheritance source? + type: boolean + oneOf: + - title: ip + required: + - ip + properties: + ip: + type: array + items: + description: List of IP addresses + type: string + - title: ascii + required: + - ascii + properties: + ascii: + type: array + items: + description: List of ASCII values + type: string + - title: hex + required: + - hex + properties: + hex: + type: array + items: + description: List of hexadecimal values + type: string + ip_pool: + description: List of IP address pools + type: array + items: + description: IP address pool + type: string + reserved: + description: List of IP reservations + type: array + required: + - name + - mac + items: + type: object + properties: + name: + description: Reserved IP address + type: string + format: ip-address + mac: + description: Reserved MAC address + type: string + format: mac-address + description: + description: Reservation description + type: string + - title: relay + properties: + relay: + type: object + required: + - ip + properties: + ip: + type: object + required: + - enabled + - server + properties: + enabled: + description: Enabled? + type: boolean + default: true + server: + type: array + items: + description: List of DHCP server IP addresses + type: string + format: ip-address + - 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 + dns-proxies: + type: object + required: + - name + - default + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: DNS proxy name + type: string + maxLength: 31 + enabled: + description: Enable DNS proxy? + type: boolean + default: + type: object + required: + - primary + properties: + inheritance: + type: object + properties: + source: + description: Dynamic interface + type: string + primary: + description: Primary DNS Name server IP address + type: string + example: inherited + secondary: + description: Secondary DNS Name server IP address + type: string + example: inherited + interface: + description: Interfaces on which to enable DNS proxy service + type: array + items: + description: Interface name + type: string + domain_servers: + type: array + description: DNS proxy rules + items: + type: object + required: + - name + - domain-name + - primary + properties: + name: + description: Proxy rule name + type: string + cacheable: + description: Enable caching for this DNS proxy rule? + type: boolean + domain_name: + type: array + description: Domain names(s) that will be matched + items: + description: Domain name + type: string + format: fqdn + maxLength: 128 + primary: + description: Primary DNS server IP address + type: string + format: ip-address + secondary: + description: Secondary DNS server IP address + type: string + format: ip-address + static_entries: + type: array + items: + description: Static domain name mappings + type: object + required: + - name + - domain + - address + properties: + name: + description: Static entry name + type: string + maxLength: 31 + domain: + description: Fully qualified domain name + type: string + maxLength: 255 + address: + type: array + items: + description: Resolved IP address + type: string + format: ip-address + maxLength: 63 + tcp_queries: + type: object + required: + - enabled + properties: + enabled: + description: Turn on forwarding of TCP DNS queries? + type: boolean + default: false + max_pending_requests: + description: Upper limit on number of concurrent TCP DNS requests + type: integer + minimum: 64 + maximum: 256 + default: 64 + udp_queries: + type: object + properties: + retries: + properties: + interval: + description: Time in seconds for another request to be sent + default: 2 + type: integer + minimum: 1 + maximum: 30 + attempts: + description: Maximum number of retries before trying next name server + default: 5 + type: integer + minimum: 1 + maximum: 30 + cache: + type: object + required: + - enabled + properties: + enabled: + description: Turn on caching for this DNS object + type: boolean + default: true + cache_edns: + description: Cache EDNS UDP response + type: boolean + default: true + max_ttl: + type: object + required: + - enabled + properties: + enabled: + description: Enable max ttl for this DNS object + default: false + type: boolean + time_to_live: + description: Time in seconds after which entry is cleared + type: integer + minimum: 60 + maximum: 86400 + 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 + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 +security: + - scmToken: [] +x-internal: false \ No newline at end of file diff --git a/openapi-specs/scm/config/sase/deployment/deployment-services-recent.yaml b/openapi-specs/scm/config/sase/deployment/deployment-services-recent.yaml new file mode 100644 index 000000000..ed0b136f8 --- /dev/null +++ b/openapi-specs/scm/config/sase/deployment/deployment-services-recent.yaml @@ -0,0 +1,2310 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: Network Deployment + description: These APIs are used for defining and managing Prisma Access Remote Network and Service Connection configurations 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/deployment/v1' + description: Current + - url: 'https://api.sase.paloaltonetworks.com/sse/config/v1' + description: Legacy +tags: + - name: Application Defaults + description: Prisma Access tenant initialization + - name: Bandwidth Allocations + description: Bandwidth allocations for Remote Networks + - name: BGP Routing + description: BGP routing for Service Connections + - name: Internal DNS Servers + description: Internal DNS servers + - name: Network Locations + description: Prisma Access locations + - name: Remote Networks + description: Remote Networks + - name: Service Connection Groups + description: Service Connection groups + - name: Service Connections + description: Service Connections + - name: Shared Infrastructure Settings + description: Shared infrastructure settings + - name: Sites + description: Sites + - name: Traffic Steering Rules + description: Traffic steering rules for Service Connections +paths: + /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' + 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' + '401': + $ref: '#/components/responses/auth_errors' + '403': + $ref: '#/components/responses/access_errors' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + 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' + '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: + - 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' + /bgp-routing: + get: + tags: + - BGP Routing + summary: Get BGP routing settings + description: | + Get Service Connection BGP routing settings. + operationId: GetBGPRouting + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-routing' + '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: + - BGP Routing + summary: Update BGP routing settings + description: | + Update Service Connection BGP routing settings. + operationId: UpdateBGPRouting + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-routing' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-routing' + '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' + /enable: + post: + tags: + - Application Defaults + summary: Create application defaults + description: | + Create Prisma Access application defaults. + + *These application defaults are normally created in the UI. This endpoint is necessary for customers that do not use the UI to create these application defaults such as certificates and configuration nodes. This endpoint will be deprecated once the UI dependencies have been eliminated.* + operationId: CreateApplicationDefaults + 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' + /internal-dns-servers: + get: + tags: + - Internal DNS Servers + summary: List internal DNS servers + description: | + Retrieve a list of internal DNS servers. + operationId: ListInternalDNSServers + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/internal-dns-servers' + 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: + - Internal DNS Servers + summary: Create a internal DNS server + description: | + Create a new internal DNS server. + operationId: CreateInternalDNSServers + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/internal-dns-servers' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/internal-dns-servers' + '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' + '/internal-dns-servers/{id}': + get: + tags: + - Internal DNS Servers + summary: Get an internal DNS server + description: | + Get an existing internal DNS server. + operationId: GetInternalDNSServersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/internal-dns-servers' + '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: + - Internal DNS Servers + summary: Update an internal DNS server + description: | + Update an existing internal dns server. + operationId: UpdateInternalDNSServersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/internal-dns-servers' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/internal-dns-servers' + '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: + - Internal DNS Servers + summary: Delete an internal DNS server + description: | + Delete an internal DNS server. + operationId: DeleteInternalDNSServersByID + 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' + /locations: + get: + tags: + - Network Locations + summary: List locations + description: | + Retrieve a list of Prisma Access locations. + operationId: ListLocations + responses: + '200': + description: OK + content: + application/json: + schema: + allOf: + - type: array + items: + $ref: '#/components/schemas/locations' + '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' + /remote-networks: + get: + tags: + - Remote Networks + summary: List remote networks + description: | + Retrieve a list of remote networks. + operationId: ListRemoteNetworks + parameters: + - $ref: '#/components/parameters/folder-remotenetworks' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/remote-networks' + 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: + - Remote Networks + summary: Create a remote network + description: | + Create a new remote network. + operationId: CreateRemoteNetworks + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/remote-networks' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/remote-networks' + '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' + '/remote-networks/{id}': + get: + tags: + - Remote Networks + summary: Get a remote network + description: | + Get an existing remote network. + operationId: GetRemoteNetworksByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/remote-networks' + '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: + - Remote Networks + summary: Update a remote network + description: | + Update an existing remote network. + operationId: UpdateRemoteNetworksByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/remote-networks' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/remote-networks' + '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: + - Remote Networks + summary: Delete a remote network + description: | + Delete a remote network. + operationId: DeleteRemoteNetworksByID + 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' + /service-connections: + get: + tags: + - Service Connections + summary: List service connections + description: | + Retrieve a list of service connections. + operationId: ListServiceConnections + parameters: + - $ref: '#/components/parameters/folder-serviceconnections' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/service-connections' + 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: + - Service Connections + summary: Create a service connection + description: | + Create a new service connection. + operationId: CreateServiceConnections + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/service-connections' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connections' + '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' + '/service-connections/{id}': + get: + tags: + - Service Connections + summary: Get a service connection + description: | + Get an existing service connection. + operationId: GetServiceConnectionsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connections' + '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: + - Service Connections + summary: Update a service connection + description: | + Update an existing service connection. + operationId: UpdateServiceConnectionsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connections' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connections' + '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: + - Service Connections + summary: Delete a service connection + description: | + Delete a service connection. + operationId: DeleteServiceConnectionsByID + 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' + /service-connection-groups: + get: + tags: + - Service Connection Groups + summary: List service connection groups + description: | + Retrieve a list of service connection groups. + operationId: ListServiceConnectionGroups + parameters: + - $ref: '#/components/parameters/folder-serviceconnections' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/service-connection-groups' + 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: + - Service Connection Groups + summary: Create a service connection group + description: | + Create a new service connection group. + operationId: CreateServiceConnectionGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/service-connection-groups' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connection-groups' + '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' + '/service-connection-groups/{id}': + get: + tags: + - Service Connection Groups + summary: Get a service connection group + description: | + Get an existing service connection group. + operationId: GetServiceConnectionGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connection-groups' + '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: + - Service Connection Groups + summary: Update a service connection group + description: | + Update an existing service connection group. + operationId: UpdateServiceConnectionGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connection-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-connection-groups' + '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: + - Service Connection Groups + summary: Delete a service connection group + description: | + Delete a service connection group. + operationId: DeleteServiceConnectionGroupsByID + 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' + /shared-infrastructure-settings: + get: + tags: + - Shared Infrastructure Settings + summary: Get shared infrastructure settings + description: | + Get the Prisma Access shared infrastructure settings. + operationId: GetSharedInfrastructureSettings + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/shared-infrastructure-settings' + '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: + - Shared Infrastructure Settings + summary: Update infrastructure settings + description: | + Update the Prisma Access shared infrastructure settings. + operationId: UpdateSharedInfrastructureSettings + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/edit-shared-infrastructure-settings' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/shared-infrastructure-settings' + '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' + /traffic-steering-rules: + get: + tags: + - Traffic Steering Rules + summary: List traffic steering rules + description: | + Retrieve a list of Service Connection traffic steering rules. + operationId: ListTrafficSteeringRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder-serviceconnections' + - $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/traffic-steering-rules' + 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: + - Traffic Steering Rules + summary: Create a traffic steering rule + description: | + Create a new Service Connection traffic steering rule. + operationId: CreateTrafficSteeringRules + parameters: + - $ref: '#/components/parameters/folder-serviceconnections' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/traffic-steering-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/traffic-steering-rules' + '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' + '/traffic-steering-rules/{id}': + get: + tags: + - Traffic Steering Rules + summary: Get a traffic steering rule + description: | + Get an existing Service Connection traffic steering rule. + operationId: GetTrafficSteeringRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/traffic-steering-rules' + '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: + - Traffic Steering Rules + summary: Update a traffic steering rule + description: | + Update an existing Service Connection traffic steering rule. + operationId: UpdateTrafficSteeringRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/traffic-steering-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/traffic-steering-rules' + '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: + - Traffic Steering Rules + summary: Delete a traffic steering rule + description: | + Delete a Service Connection traffic steering rule. + operationId: DeleteTrafficSteeringRulesByID + 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' + /sites: + get: + tags: + - Sites + summary: List sites + description: Retrieve a list of sites. + operationId: ListSites + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder-remotenetworks' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sites' + 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: + - Sites + summary: Create a site + description: Create a new sites. + operationId: CreateSites + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/sites' + description: The site you want to create + responses: + '201': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/sites' + '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' + /sites/{id}: + get: + tags: + - Sites + summary: Get a site + description: | + Get an existing site. + operationId: GetSitesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/sites' + description: Get a site's details by sdwan-site-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' + put: + tags: + - Sites + summary: Update a site + description: | + Update an existing site. + operationId: UpdateSitesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/sites' + description: The site you want to edit + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/sites' + '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: + - Sites + summary: Delete a site + description: | + Delete a site. + operationId: DeleteSitesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/sites' + '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' +components: + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + parameters: + 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 + folder-remotenetworks: + name: folder + in: query + description: | + The folder in which the resource is defined + required: true + schema: + enum: + - Remote Networks + default: Remote Networks + folder-serviceconnections: + name: folder + in: query + description: | + The folder in which the resource is defined + required: true + schema: + enum: + - Service Connections + default: Service Connections + aggregated-bandwidth-region-name-required: + name: name + in: query + description: The name of the aggregated bandwidth region + required: true + schema: + type: string + 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 + uuid: + name: id + in: path + description: The UUID of the configuration resource + required: true + schema: + type: string + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + bandwidth-allocations: + type: object + properties: + name: + type: string + description: name of the aggregated bandwidth region + allocated_bandwidth: + type: number + description: bandwidth to allocate in Mbps + spn_name_list: + type: array + items: + type: string + qos: + type: object + properties: + enabled: + type: boolean + customized: + type: boolean + profile: + type: string + guaranteed_ratio: + type: number + required: + - name + - allocated_bandwidth + bgp-routing: + type: object + properties: + routing_preference: + type: object + oneOf: + - type: object + title: default + properties: + default: + type: object + - type: object + title: hot_potato_routing + properties: + hot_potato_routing: + type: object + backbone_routing: + enum: + - no-asymmetric-routing + - asymmetric-routing-only + - asymmetric-routing-with-load-share + accept_route_over_SC: + type: boolean + outbound_routes_for_services: + type: array + items: + type: string + add_host_route_to_ike_peer: + type: boolean + withdraw_static_route: + type: boolean + internal-dns-servers: + type: object + properties: + id: + type: string + description: The UUID of the internet DNS server resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the internet DNS server resource + domain_name: + type: array + items: + type: string + description: The DNS domain name(s) + primary: + type: string + format: ipv4 + description: The IP address of the primary DNS server + secondary: + type: string + format: ipv4 + description: The IP address of the secondary DNS server + required: + - id + - name + - domain_name + - primary + locations: + type: object + properties: + value: + type: string + example: us-west-1 + display: + type: string + example: US West + description: The location as displayed in the Strata Cloud Manager portal + continent: + type: string + example: North America + description: The continent in which the location exists + latitude: + type: number + format: float + minimum: -90 + maximum: 90 + example: 37.38314 + description: The latitudinal position of the location + longitude: + type: number + format: float + minimum: -180 + maximum: 180 + example: -121.98306 + description: The longitudinal position of the location + region: + type: string + example: us-west-1 + aggregate_region: + type: string + example: us-southwest + remote-networks: + type: object + properties: + id: + type: string + format: uuid + description: The UUID of the remote network + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the remote network + maxLength: 63 + folder: + type: string + description: The folder that contains the remote network + default: Remote Networks + ipsec_tunnel: + type: string + description: ipsec_tunnel is required when ecmp_load_balancing is disable + secondary_ipsec_tunnel: + type: string + description: specify secondary ipsec_tunnel if needed + license_type: + type: string + description: New customer will only be on aggregate bandwidth licensing + minLength: 1 + default: FWAAS-AGGREGATE + region: + type: string + minLength: 1 + subnets: + type: array + items: + type: string + protocol: + type: object + description: setup the protocol when ecmp_load_balancing is disable + properties: + bgp: + $ref: '#/components/schemas/remote-networks-protocol-bgp' + bgp_peer: + type: object + description: secondary bgp routing as bgp_peer + properties: + peer_ip_address: + description: Remote peer IP address (secondary WAN) + type: string + local_ip_address: + description: Local peer IP address (secondary WAN) + type: string + secret: + description: BGP peering secret (secondary WAN) + type: string + format: password + spn_name: + type: string + description: spn-name is needed when license_type is FWAAS-AGGREGATE + ecmp_load_balancing: + type: string + enum: + - enable + - disable + default: disable + ecmp_tunnels: + type: array + description: ecmp_tunnels is required when ecmp_load_balancing is enable + items: + maxItems: 4 + type: object + properties: + name: + type: string + ipsec_tunnel: + type: string + protocol: + type: object + properties: + bgp: + $ref: '#/components/schemas/remote-networks-protocol-bgp' + required: + - name + - ipsec_tunnel + - protocol + required: + - id + - name + - folder + - license_type + - region + remote-networks-protocol-bgp: + type: object + properties: + enable: + description: Enable BGP peering? + type: boolean + summarize_mobile_user_routes: + description: Summarize mobile user routes? + type: boolean + originate_default_route: + description: Originate default route? + type: boolean + do_not_export_routes: + description: Do not export routes? + type: boolean + peer_ip_address: + description: Remote peer IP address + type: string + peer_as: + description: BGP peer ASN + type: string + local_ip_address: + description: Local peer IP address + type: string + secret: + description: BGP peering secret + type: string + format: password + peering_type: + description: Route exchange types + type: string + enum: + - exchange-v4-over-v4 + - exchange-v4-v6-over-v4 + - exchange-v4-over-v4-v6-over-v6 + - exchange-v6-over-v6 + service-connections: + type: object + properties: + id: + type: string + format: uuid + description: The UUID of the service connection + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the service connection + ipsec_tunnel: + type: string + onboarding_type: + enum: + - classic + default: classic + region: + type: string + backup_SC: + type: string + bgp_peer: + type: object + properties: + local_ip_address: + type: string + local_ipv6_address: + type: string + peer_ip_address: + type: string + peer_ipv6_address: + type: string + secret: + type: string + format: password + nat_pool: + type: string + no_export_community: + enum: + - Disabled + - Enabled-In + - Enabled-Out + - Enabled-Both + protocol: + type: object + properties: + bgp: + type: object + properties: + do_not_export_routes: + type: boolean + enable: + type: boolean + fast_failover: + type: boolean + local_ip_address: + type: string + originate_default_route: + type: boolean + peer_as: + type: string + peer_ip_address: + type: string + secret: + type: string + format: password + summarize_mobile_user_routes: + type: boolean + qos: + type: object + properties: + enable: + type: boolean + qos_profile: + type: string + secondary_ipsec_tunnel: + type: string + source_nat: + type: boolean + subnets: + type: array + items: + type: string + required: + - id + - name + - ipsec_tunnel + - region + service-connection-groups: + type: object + properties: + id: + type: string + format: uuid + description: The UUID of the service connection group + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + disable_snat: + type: boolean + pbf_only: + type: boolean + target: + type: array + items: + type: string + required: + - id + - name + - target + shared-infrastructure-settings: + type: object + properties: + folder: + type: string + description: The folder containing the shared infrastructure settings + default: Shared + readOnly: true + infra_bgp_as: + type: string + infrastructure_subnet: + type: string + ipv6: + type: boolean + infrastructure_subnet_ipv6: + type: string + tunnel_monitor_ip_address: + type: string + captive_portal_redirect_ip_address: + type: string + loopback_ips: + type: array + items: + type: string + egress_ip_notification_url: + type: string + api_key: + type: string + connector-connector-blocks: + type: object + properties: + member: + type: array + items: + type: string + pattern: '^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:[0-9]|[1-2][0-9]|3[0-2])$' + maxItems: 100 + description: Array of CIDR blocks for connector-to-connector communication + connector-application-blocks: + type: object + properties: + member: + type: array + items: + type: string + pattern: '^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:[0-9]|[1-2][0-9]|3[0-2])$' + maxItems: 100 + description: Array of CIDR blocks for connector-to-application communication + edit-shared-infrastructure-settings: + type: object + properties: + infrastructure_subnet: + type: string + infrastructure_subnet_ipv6: + type: string + infra_bgp_as: + type: string + egress_ip_notification_url: + type: string + connector-connector-blocks: + type: object + properties: + member: + type: array + items: + type: string + pattern: '^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:[0-9]|[1-2][0-9]|3[0-2])$' + maxItems: 100 + description: Array of CIDR blocks for connector-to-connector communication + connector-application-blocks: + type: object + properties: + member: + type: array + items: + type: string + pattern: '^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:[0-9]|[1-2][0-9]|3[0-2])$' + maxItems: 100 + description: Array of CIDR blocks for connector-to-application communication + traffic-steering-rules: + type: object + properties: + id: + type: string + format: uuid + description: The UUID of the traffic steering rule + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + folder: + type: string + description: The folder containing the traffic steering rule + default: Service Connections + action: + type: object + oneOf: + - type: object + title: forward + properties: + forward: + type: object + properties: + target: + type: string + no-pbf: + type: object + category: + type: array + items: + type: string + destination: + type: array + default: + - any + items: + type: string + service: + type: array + default: + - any + items: + type: string + source: + type: array + default: + - any + items: + type: string + source_user: + type: array + default: + - any + items: + type: string + required: + - id + - name + - folder + - service + - source + sites: + type: object + required: + - id + - name + - type + properties: + id: + type: string + description: The UUID of the site + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the site + maxLength: 63 + example: Bengaluru + type: + type: string + description: The site type + enum: + - prisma-sdwan + - third-party-branch + - third-party-discovered + members: + type: array + items: + type: object + required: + - name + - mode + properties: + name: + type: string + description: The member name + example: Connection A + remote_network: + type: string + description: The remote network name + example: Connection A + mode: + type: string + description: The mode of the remote network + enum: + - active + - backup + id: + type: string + description: UUID of the remote network + example: e51fa715-3da5-4f98-bb78-eb56757e7719 + country: + type: string + example: India + description: The country in which the site exists + city: + type: string + example: Bengaluru + description: The city in which the site exists + state: + type: string + example: Karnataka + description: The state in which the site exists + address_line_1: + type: string + description: The address in which the site exists + example: 2nd Floor, Quay Building, Bagmane Tech Park + address_line_2: + type: string + description: The address in which the site exists (continued) + example: C V Raman Nagar + latitude: + type: number + example: 12.978150 + description: The latitude coordinate for the site + longitude: + type: number + example: 77.665340 + description: The longitude coordinate for the site + zip_code: + type: string + example: '560093' + description: The postal code in which the site exists + qos: + type: object + properties: + profile: + type: string + description: The name of the site QoS profile + example: VoIP + cir: + type: number + example: 10 + description: The CIR in Mbps. This is distributed equally for all tunnels in the site. + backup_cir: + type: number + example: 10 + description: The backup CIR in Mbps. This is distributed equally for all tunnels in the site. + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 +security: + - scmToken: [] +x-internal: false diff --git a/openapi-specs/scm/config/sase/identity/identity-services-recent.yaml b/openapi-specs/scm/config/sase/identity/identity-services-recent.yaml new file mode 100644 index 000000000..9fb73973b --- /dev/null +++ b/openapi-specs/scm/config/sase/identity/identity-services-recent.yaml @@ -0,0 +1,5622 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: Identity Services + description: These APIs are used for defining and managing identity services configurations 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/identity/v1' + description: Current + - url: 'https://api.sase.paloaltonetworks.com/sse/config/v1' + description: Legacy +tags: + - name: Authentication Portals + description: Authentication Portals + - name: Authentication Profiles + description: Authentication Profiles + - name: Authentication Rules + description: Authentication Rules + - name: Authentication Sequences + description: Authentication Sequences + - name: Certificate Profiles + description: Certificate Profiles + - name: Certificates + description: Certificate management + - name: Kerberos Server Profiles + description: Kerberos Server Profiles + - name: LDAP Server Profiles + description: LDAP Server Profiles + - name: Local User Groups + description: Local User Groups + - name: Local Users + description: Local Users + - name: MFA Servers + description: MFA Servers + - name: OCSP Responders + description: OCSP Responders + - name: RADIUS Server Profiles + description: RADIUS Server Profiles + - name: Redistribution Profile + description: Redistribution Profile + - name: SAML Server Profiles + description: SAML Server Profiles + - name: SCEP Profiles + description: SCEP Profiles + - name: TACACS Server Profiles + description: TACACS Server Profiles + - name: TLS Service Profiles + description: TLS Service Profiles + - name: Trusted Certificate Authorities + description: Trusted Certificate Authorities +paths: + /authentication-rules: + get: + tags: + - Authentication Rules + summary: List authentication rules + description: | + Retrieve a list of authentication rules. + operationId: ListAuthenticationRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $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/authentication-rules' + 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: + - Authentication Rules + summary: Create an authentication rule + description: | + Create a new authentication rule. + operationId: CreateAuthenticationRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-rules' + '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' + '/authentication-rules/{id}': + get: + tags: + - Authentication Rules + summary: Get an authentication rule + description: | + Get an existing authentication rule. + operationId: GetAuthenticationRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-rules' + '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: + - Authentication Rules + summary: Update an authentication rule + description: | + Update an existing authentication rule. + operationId: UpdateAuthenticationRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-rules' + '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: + - Authentication Rules + summary: Delete an authentication rule + description: | + Delete an authentication rule. + operationId: DeleteAuthenticationRulesByID + 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' + '/authentication-rules/{id}:move': + post: + tags: + - Authentication Rules + summary: Move an authentication rule + description: | + Move an existing authentication rule. + operationId: MoveAuthenticationRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/rule-based-move' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + /authentication-portals: + get: + tags: + - Authentication Portals + summary: List authentication portals + description: | + Retreive a list of authentication portals. + operationId: ListAuthenticationPortals + 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/authentication-portals' + 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: + - Authentication Portals + summary: Create an authentication portal + description: | + Create a new authentication portal. + operationId: CreateAuthenticationPortals + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-portals' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-portals' + '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' + '/authentication-portals/{id}': + get: + tags: + - Authentication Portals + summary: Get an authentication portal + description: | + Get an existing authentication portal. + operationId: GetAuthenticationPortalsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-portals' + '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: + - Authentication Portals + summary: Update an authentication portal + description: | + Update an existing authentication portal. + operationId: UpdateAuthenticationPortalsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-portals' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-portals' + '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: + - Authentication Portals + summary: Delete an authentication portal + description: | + Delete an authentication portal. + operationId: DeleteAuthenticationPortalsByID + 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' + /authentication-profiles: + get: + tags: + - Authentication Profiles + summary: List authentication profiles + description: | + Retrieve a list of authentication profiles. + operationId: ListAuthenticationProfiles + 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/authentication-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: + - Authentication Profiles + summary: Create an authentication profile + description: | + Create an authentication profile. + operationId: CreateAuthenticationProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-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' + '/authentication-profiles/{id}': + get: + tags: + - Authentication Profiles + summary: Get an authentication profile + description: | + Get an existing authentication profile. + operationId: GetAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-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: + - Authentication Profiles + summary: Update an authentication profile + description: | + Update an existing authentication profile. + operationId: UpdateAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-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: + - Authentication Profiles + summary: Delete an authentication profile + description: | + Delete an authentication profile. + operationId: DeleteAuthenticationProfilesByID + 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' + /local-users: + get: + tags: + - Local Users + summary: List local users + description: | + Retrieve a list of local users. + operationId: ListLocalUsers + 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/local-users' + 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: + - Local Users + summary: Create a local user + description: | + Create a new local user. + operationId: CreateLocalUsers + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/local-users' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-users' + '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' + '/local-users/{id}': + get: + tags: + - Local Users + summary: Get a local user + description: | + Get an existing local user. + operationId: GetLocalUsersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-users' + '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: + - Local Users + summary: Update a local user + description: | + Update an existing local user. + operationId: UpdateLocalUsersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-users' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-users' + '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: + - Local Users + summary: Delete a local user + description: | + Delete a local user. + operationId: DeleteLocalUsersByID + 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' + /local-user-groups: + get: + tags: + - Local User Groups + summary: List local user groups + description: | + Retrieve a list of local user groups. + operationId: ListLocalUserGroups + 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/local-user-groups' + 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: + - Local User Groups + summary: Create a local user group + description: | + Create a new local user group. + operationId: CreateLocalUserGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/local-user-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-user-groups' + '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' + '/local-user-groups/{id}': + get: + tags: + - Local User Groups + summary: Get a local user group + description: | + Get an existing local user group. + operationId: GetLocalUserGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-user-groups' + '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: + - Local User Groups + summary: Update a local user group + description: | + Update an existing local user group. + operationId: UpdateLocalUserGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-user-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/local-user-groups' + '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: + - Local User Groups + summary: Delete a local user group + description: | + Delete a local user group. + operationId: DeleteLocalUserGroupsByID + 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' + /saml-server-profiles: + get: + tags: + - SAML Server Profiles + summary: List SAML server profiles + description: | + Retrieve a list of SAML server profiles. + operationId: ListSAMLServerProfiles + 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/saml-server-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: + - SAML Server Profiles + summary: Create a SAML server profile + description: | + Create a new SAML server profile. + operationId: CreateSAMLServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/saml-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/saml-server-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' + '/saml-server-profiles/{id}': + get: + tags: + - SAML Server Profiles + summary: Get a SAML server profile + description: | + Get an existing SAML server profile. + operationId: GetSAMLServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/saml-server-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: + - SAML Server Profiles + summary: Update a SAML server profile + description: | + Update an existing SAML server profile. + operationId: UpdateSAMLServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/saml-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/saml-server-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: + - SAML Server Profiles + summary: Delete a SAML server profile + description: | + Delete a SAML server profile. + operationId: DeleteSAMLServerProfilesByID + 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' + /ldap-server-profiles: + get: + tags: + - LDAP Server Profiles + summary: List LDAP server profiles + description: | + Retrieve a list of LDAP server profiles. + operationId: ListLDAPServerProfiles + 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/ldap-server-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: + - LDAP Server Profiles + summary: Create an LDAP server profile + description: | + Create a new LDAP server profile. + operationId: CreateLDAPServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ldap-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ldap-server-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' + '/ldap-server-profiles/{id}': + get: + tags: + - LDAP Server Profiles + summary: Get an LDAP server profile + description: | + Get an existing LDAP server profile. + operationId: GetLDAPServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ldap-server-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: + - LDAP Server Profiles + summary: Update an LDAP server profile + description: | + Update an existing LDAP server profile. + operationId: UpdateLDAPServerProfiles + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ldap-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ldap-server-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: + - LDAP Server Profiles + summary: Delete an LDAP server profile + description: | + Delete a LDAP server profile. + operationId: DeleteLDAPServerProfilesByID + 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' + /radius-server-profiles: + get: + tags: + - RADIUS Server Profiles + summary: List RADIUS server profiles + description: | + Retreive a list of RADIUS server profiles. + operationId: ListRADIUSServerProfiles + 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/radius-server-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: + - RADIUS Server Profiles + summary: Create a RADIUS server profile + description: | + Create a new RADIUS server profile. + operationId: CreateRADIUSServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/radius-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/radius-server-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' + '/radius-server-profiles/{id}': + get: + tags: + - RADIUS Server Profiles + summary: Get a RADIUS server profile + description: | + Get an existing RADIUS server profile. + operationId: GetRADIUSServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/radius-server-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: + - RADIUS Server Profiles + summary: Update a RADIUS server profile + description: | + Update an existing RADIUS server profile. + operationId: UpdateRADIUSServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/radius-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/radius-server-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: + - RADIUS Server Profiles + summary: Delete a RADIUS server profile + description: | + Delete a RADIUS server profile. + operationId: DeleteRADIUSServerProfilesByID + 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' + /redistribution-profile: + get: + tags: + - Redistribution Profile + summary: List redistribution profiles + description: | + Retrieve a list of redistribution profiles. Redistribution profiles define + data flow between identity workflows (like CIE Onboarding) and security systems, + enabling automated sharing of identity data, user mappings, and security tags. + operationId: ListRedistributionProfiles + 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/redistribution-profile' + 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: + - Redistribution Profile + summary: Create a redistribution profile + description: | + Create a new redistribution profile. Configure data flow between source workflows + (like CIE Onboarding or Identity Redistribution) and destination systems by + specifying contributor and receiver data types. + operationId: CreateRedistributionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/redistribution-profile' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/redistribution-profile' + '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' + + /redistribution-profiles/{id}: + get: + tags: + - Redistribution Profile + summary: Get a redistribution profile + description: | + Get an existing redistribution profile by ID. Returns the complete configuration + including source workflow, contributor/receiver data types, and segment details. + operationId: GetRedistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/redistribution-profile' + '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: + - Redistribution Profile + summary: Update a redistribution profile + description: | + Update an existing redistribution profile. Modify source workflows, data types, + or segment configuration for identity data redistribution. + operationId: UpdateRedistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/redistribution-profile' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/redistribution-profile' + '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: + - Redistribution Profile + summary: Delete a redistribution profile + description: | + Delete a redistribution profile. This will stop all data flow configured + through this profile between source and destination systems. + operationId: DeleteRedistributionProfilesByID + 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' + /tacacs-server-profiles: + get: + tags: + - TACACS Server Profiles + summary: List TACACS server profiles + description: | + Retrieve a list of TACACS server profiles. + operationId: ListTACACSServerProfiles + 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/tacacs-server-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: + - TACACS Server Profiles + summary: Create a TACACS server profile + description: | + Create a new TACACS server profile. + operationId: CreateTACACSServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/tacacs-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tacacs-server-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' + '/tacacs-server-profiles/{id}': + get: + tags: + - TACACS Server Profiles + summary: Get a TACACS server profile + description: | + Get an existing TACACS server profile. + operationId: GetTACACSServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tacacs-server-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: + - TACACS Server Profiles + summary: Update a TACACS server profile + description: | + Update an existing TACACS server profile. + operationId: UpdateTACACSServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tacacs-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tacacs-server-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: + - TACACS Server Profiles + summary: Delete a TACACS server profile + description: | + Delete a TACACS server profile. + operationId: DeleteTACACSServerProfilesByID + 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' + /kerberos-server-profiles: + get: + tags: + - Kerberos Server Profiles + summary: List Kerberos server profiles + description: | + Retrieve a list of Kerberos server profiles. + operationId: ListKerberosServerProfiles + 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/kerberos-server-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: + - Kerberos Server Profiles + summary: Create a Kerberos server profile + description: | + Create a new Kerberos server profile. + operationId: CreateKerberosServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/kerberos-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/kerberos-server-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' + '/kerberos-server-profiles/{id}': + get: + tags: + - Kerberos Server Profiles + summary: Get a Kerberos server profile + description: | + Get an existing Kerberos server profile. + operationId: GetKerberosServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/kerberos-server-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: + - Kerberos Server Profiles + summary: Update a Kerberos server profile + description: | + Update an existing Kerberos server profile. + operationId: UpdateKerberosServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/kerberos-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/kerberos-server-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: + - Kerberos Server Profiles + summary: Delete a Kerberos server profile + description: | + Delete a Kerberos server profile. + operationId: DeleteKerberosServerProfilesByID + 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' + /authentication-sequences: + get: + tags: + - Authentication Sequences + summary: List authentication sequences + description: | + Retrieve a list of authentication sequences. + operationId: ListAuthenticationSequences + 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/authentication-sequences' + 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: + - Authentication Sequences + summary: Create an authentication sequence + description: | + Create a new authentication sequence. + operationId: CreateAuthenticationSequences + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-sequences' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-sequences' + '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' + '/authentication-sequences/{id}': + get: + tags: + - Authentication Sequences + summary: Get an authentication sequence + description: | + Get an existing authentication sequence. + operationId: GetAuthenticationSequencesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-sequences' + '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: + - Authentication Sequences + summary: Update an authentication sequence + description: | + Update an existing authentication sequence. + operationId: UpdateAuthenticationSequencesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-sequences' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-sequences' + '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: + - Authentication Sequences + summary: Delete an authentication sequence + description: | + Delete an authentication sequence. + operationId: DeleteAuthenticationSequencesByID + 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' + /mfa-servers: + get: + tags: + - MFA Servers + summary: List MFA servers + description: | + Retrieve a list of MFA servers. + operationId: ListMFAServers + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $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: + allOf: + - type: array + items: + $ref: '#/components/schemas/mfa-servers' + '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: + - MFA Servers + summary: Create an MFA server + description: | + Create a new MFA server. + operationId: CreateMFAServers + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/mfa-servers' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mfa-servers' + '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' + '/mfa-servers/{id}': + get: + tags: + - MFA Servers + summary: Get an MFA server + description: | + Get an existing MFA server. + operationId: GetMFAServersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mfa-servers' + '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: + - MFA Servers + summary: Update an MFA server + description: | + Update an existing MFA server. + operationId: UpdateMFAServersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mfa-servers' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mfa-servers' + '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: + - MFA Servers + summary: Delete an MFA server + description: | + Delete an MFA server. + operationId: DeleteMFAServersByID + 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' + /certificates: + get: + tags: + - Certificates + summary: List certificates + description: | + Retrieve a list of certificates. + operationId: ListCertificates + 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/certificates-get' + 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: + - Certificates + summary: Generate a certificate + description: | + Generate a new certificate. + operationId: CreateCertificates + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/certificates-post' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificates-get' + '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' + '/certificates:import': + post: + tags: + - Certificates + summary: Import a certificate + description: | + Import a certificate. + operationId: ImportCertificates + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/certificates-import' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificates-import' + '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' + '/certificates/{id}': + get: + tags: + - Certificates + summary: Get a certificate + description: | + Get an existing certificate. + operationId: GetCertificatesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificates-get' + '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' + delete: + tags: + - Certificates + summary: Delete a certificate + description: | + Delete a certificate. + operationId: DeleteCertificatesByID + 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' + /certificates/{id}:export: + post: + tags: + - Certificates + summary: Export a certificate + description: | + Export a certificate. + operationId: ExportCertificateByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: Export a Certificate + content: + application/json: + schema: + $ref: '#/components/schemas/export-certificate-payload' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/export-certificate-response' + '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' + /certificate-profiles: + get: + tags: + - Certificate Profiles + summary: List certificate profiles + description: | + Retrieve a list of certificate profiles. + operationId: ListCertificateProfiles + 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/certificate-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: + - Certificate Profiles + summary: Create a certificate profile + description: | + Create a certificate profile. + operationId: CreateCertificateProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/certificate-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificate-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' + '/certificate-profiles/{id}': + get: + tags: + - Certificate Profiles + summary: Get a certificate profile + description: | + Get an existing certificate profile. + operationId: GetCertificateProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificate-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: + - Certificate Profiles + summary: Update a certificate profile + description: | + Update an existing certificate profile. + operationId: UpdateCertificateProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificate-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/certificate-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: + - Certificate Profiles + summary: Delete a certificate profile + description: | + Delete a certificate profile. + operationId: DeleteCertificateProfilesByID + 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' + /scep-profiles: + get: + tags: + - SCEP Profiles + summary: List SCEP profiles + description: | + Retrieve a list of SCEP profiles. + operationId: ListSCEPProfiles + 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/scep-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: + - SCEP Profiles + summary: Create a SCEP profile + description: | + Create a new SCEP profile. + operationId: CreateSCEPProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/scep-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/scep-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' + '/scep-profiles/{id}': + get: + tags: + - SCEP Profiles + summary: Get a SCEP profile + description: | + Get an existing SCEP profile. + operationId: GetSCEPProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/scep-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: + - SCEP Profiles + summary: Update a SCEP profile + description: | + Update an existing SCEP profile. + operationId: UpdateSCEPProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/scep-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/scep-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: + - SCEP Profiles + summary: Delete a SCEP profile + description: | + Delete a SCEP profile. + operationId: DeleteSCEPProfilesByID + 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' + /trusted-certificate-authorities: + get: + tags: + - Trusted Certificate Authorities + summary: List trusted certificate authorities + description: | + Retrieve a list of trusted certificate authorities. + operationId: ListTrustedCertificateAuthorities + 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/trusted-certificate-authorities' + 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' + /tls-service-profiles: + get: + tags: + - TLS Service Profiles + summary: List TLS service profiles + description: | + Retrieve a list of TLS service profiles. + operationId: ListTLSServiceProfiles + 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/tls-service-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: + - TLS Service Profiles + summary: Create a TLS service profile + description: | + Create a new TLS service profile. + operationId: CreateTLSServiceProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/tls-service-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tls-service-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' + '/tls-service-profiles/{id}': + get: + tags: + - TLS Service Profiles + summary: Get a TLS service profile + description: | + Get an existing TLS service profile. + operationId: GetTLSServiceProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tls-service-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: + - TLS Service Profiles + summary: Update a TLS service profile + description: | + Update an existing TLS service profile. + operationId: UpdateTLSServiceProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tls-service-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tls-service-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: + - TLS Service Profiles + summary: Delete a TLS service profile + description: | + Delete a TLS service profile. + operationId: DeleteTLSServiceProfilesByID + 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' + /ocsp-responders: + get: + tags: + - OCSP Responders + summary: List OCSP responders + description: | + Retrieve a list of OCSP responders. + operationId: ListOCSPResponders + 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/ocsp-responders' + 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: + - OCSP Responders + summary: Create an OCSP responder + description: | + Create a new OCSP responder. + operationId: CreateOCSPResponders + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ocsp-responders' + 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' + '/ocsp-responders/{id}': + get: + tags: + - OCSP Responders + summary: Get an OCSP responder + description: | + Get an existing OCSP responder + operationId: GetOCSPRespondersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ocsp-responders' + '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: + - OCSP Responders + summary: Update an OCSP responder + description: | + Update an existing OCSP responder. + operationId: UpdateOCSPRespondersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ocsp-responders' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ocsp-responders' + '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: + - OCSP Responders + summary: Delete an OCSP responder + description: Delete an OCSP responder. + operationId: DeleteOCSPRespondersByID + 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' +components: + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + parameters: + 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 + folder: + name: folder + in: query + description: | + The folder in which the resource is defined + required: false + schema: + type: string + snippet: + name: snippet + in: query + description: | + The snippet in which the resource is defined + schema: + type: string + device: + name: device + in: query + description: | + The device in which the resource is defined + schema: + type: string + position: + name: position + in: query + description: | + The relative position of the rule + required: true + schema: + enum: + - pre + - post + default: pre + 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 + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + export-certificate-response: + description: Exported Certificate + content: + application/json: + schema: + $ref: '#/components/schemas/export-certificate-response' + 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: + 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' + 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' + + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + authentication-rules: + type: object + required: + - name + - from + - to + - source + - destination + - service + properties: + id: + type: string + description: The UUID of the authentication rule + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the authentication rule + authentication_enforcement: + type: string + description: The authentication profile name + category: + type: array + items: + type: string + description: The destination URL categories + description: + type: string + description: The description of the authentication rule + destination: + type: array + items: + type: string + description: The destination addresses + destination_hip: + type: array + items: + type: string + description: The destination Host Integrity Profile (HIP) + disabled: + type: boolean + default: false + description: Is the authentication rule disabled? + from: + type: array + items: + type: string + description: The source security zones + group_tag: + type: string + hip_profiles: + type: array + items: + type: string + description: The source Host Integrity Profile (HIP) + log_authentication_timeout: + type: boolean + default: false + description: Log authentication timeouts? + log_setting: + type: string + description: The log forwarding profile name + negate_destination: + type: boolean + default: false + description: Are the destination addresses negated? + negate_source: + type: boolean + default: false + description: Are the source addresses negated? + service: + type: array + items: + type: string + description: The destination ports + source: + type: array + items: + type: string + description: The source addresses + source_hip: + type: array + items: + type: string + description: The source Host Integrity Profile (HIP) + source_user: + type: array + items: + type: string + description: The source users + tag: + type: array + items: + type: string + description: The authentication rule tags + timeout: + type: integer + minimum: 1 + maximum: 1440 + description: The authentication session timeout (seconds) + to: + type: array + items: + type: string + description: The destination security zones + oneOf: + - title: folder + properties: + folder: + type: string + - title: snippet + properties: + snippet: + type: string + - title: device + properties: + device: + type: string + rule-based-move: + type: object + #title: rule-based-move + properties: + destination: + enum: + - top + - bottom + - before + - after + description: The position of the rule relative to other rules in this rulebase. + rulebase: + enum: + - pre + - post + description: The position of the rule relative to the local rulebase + destination_rule: + type: string + format: uuid + description: A destination target rule UUID. This is only used if the `destination` value is `before` or `after`. + required: + - destination + - rulebase + authentication-portals: + type: object + required: + - id + - redirect_host + properties: + id: + type: string + description: The UUID of the authentication portal + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + authentication_profile: + type: string + description: The authentication profile + certificate_profile: + type: string + description: The certificate profile + gp_udp_port: + type: integer + minimum: 1 + maximum: 65535 + description: The UDP port for inbound authentication prompts + idle_timer: + type: integer + minimum: 1 + maximum: 1440 + description: The idle timeout value (minutes) + redirect_host: + type: string + description: The authentication portal IP address or hostname + tls_service_profile: + type: string + description: The SSL/TLS service profile + timer: + type: integer + minimum: 1 + maximum: 1440 + 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 + authentication-profiles: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the authentication profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the authentication profile + allow_list: + type: array + items: + type: string + default: + - all + lockout: + type: object + properties: + failed_attempts: + type: integer + minimum: 0 + maximum: 10 + lockout_time: + type: integer + minimum: 0 + maximum: 60 + method: + type: object + oneOf: + - type: object + title: local_database + properties: + local_database: + type: object + - type: object + title: saml_idp + properties: + saml_idp: + type: object + properties: + attribute_name_usergroup: + type: string + minLength: 1 + maxLength: 63 + attribute_name_username: + type: string + minLength: 1 + maxLength: 63 + certificate_profile: + type: string + maxLength: 31 + enable_single_logout: + type: boolean + request_signing_certificate: + type: string + maxLength: 64 + server_profile: + type: string + maxLength: 63 + - type: object + title: ldap + properties: + ldap: + type: object + properties: + login_attribute: + type: string + passwd_exp_days: + type: integer + server_profile: + type: string + - type: object + title: radius + properties: + radius: + type: object + properties: + checkgroup: + type: boolean + server_profile: + type: string + - type: object + title: tacplus + properties: + tacplus: + type: object + properties: + checkgroup: + type: boolean + server_profile: + type: string + - type: object + title: kerberos + properties: + kerberos: + type: object + properties: + realm: + type: string + server_profile: + type: string + - type: object + title: cloud + description: CIE is valid only when cas feature flag is enabled + properties: + cloud: + type: object + properties: + profile_name: + type: string + description: The tenant profile name + multi_factor_auth: + type: object + properties: + factors: + type: array + items: + type: string + mfa_enable: + type: boolean + single_sign_on: + type: object + properties: + kerberos_keytab: + type: string + maxLength: 8192 + realm: + type: string + maxLength: 127 + user_domain: + type: string + maxLength: 63 + username_modifier: + enum: + - '%USERINPUT%' + - '%USERINPUT%@%USERDOMAIN%' + - '%USERDOMAIN%\\%USERINPUT%' + 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 + local-users: + type: object + required: + - id + - name + - password + properties: + id: + type: string + description: The UUID of the local user + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + maxLength: 31 + description: The name of the local user + password: + type: string + format: password + maxLength: 63 + description: The password of the local user + disabled: + type: boolean + default: false + description: Is the local user disabled? + 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 + local-user-groups: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the local user group + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: '^[a-zA-Z0-9._-]+$' + maxLength: 31 + description: The name of the local user group + user: + type: array + items: + type: string + description: The local user group users + 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 + saml-server-profiles: + type: object + required: + - id + - name + - entity_id + - certificate + - sso_bindings + - sso_url + properties: + id: + type: string + description: The UUID of the SAML server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the SAML server profile + certificate: + type: string + maxLength: 63 + description: The identity provider certificate + entity_id: + type: string + minLength: 1 + maxLength: 1024 + description: The identity provider ID + max_clock_skew: + type: integer + minimum: 1 + maximum: 900 + description: Maxiumum clock skew + slo_bindings: + enum: + - post + - redirect + description: SAML HTTP binding for SLO requests to the identity provider + sso_bindings: + enum: + - post + - redirect + description: SAML HTTP binding for SSO requests to the identity provider + sso_url: + type: string + minLength: 1 + maxLength: 255 + description: Identity provider SSO URL + validate_idp_certificate: + type: boolean + description: Validate the identity provider certificate? + want_auth_requests_signed: + type: boolean + description: Sign SAML message to the identity provider? + 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 + ldap-server-profiles: + type: object + required: + - id + - name + - server + properties: + id: + type: string + description: The UUID of the LDAP server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the LDAP server profile + base: + type: string + maxLength: 255 + description: The base DN + bind_dn: + type: string + maxLength: 255 + description: The bind DN + bind_password: + type: string + format: password + maxLength: 121 + description: The bind password + bind_timelimit: + type: string + description: The bind timeout (seconds) + ldap_type: + enum: + - active-directory + - e-directory + - sun + - other + description: The LDAP server time + retry_interval: + type: integer + description: The search retry interval (seconds) + server: + type: array + items: + type: object + properties: + port: + type: integer + minimum: 1 + maximum: 65535 + description: The LDAP server port + name: + type: string + description: The LDAP server name + address: + type: string + description: The LDAP server IP address + description: The LDAP server configuration + ssl: + type: boolean + description: Require SSL/TLS secured connection? + verify_server_certificate: + type: boolean + description: Verify server certificate for SSL sessions? + timelimit: + type: integer + description: The search timeout (seconds) + 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 + radius-server-profiles: + type: object + required: + - id + - name + - server + - protocol + properties: + id: + type: string + description: The UUID of the RADIUS server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the RADIUS server profile + protocol: + type: object + oneOf: + - type: object + title: CHAP + properties: + CHAP: + type: object + - type: object + title: EAP_TTLS_with_PAP + properties: + EAP_TTLS_with_PAP: + type: object + properties: + anon_outer_id: + type: boolean + radius_cert_profile: + type: string + - type: object + title: PAP + properties: + PAP: + type: object + - type: object + title: PEAP_MSCHAPv2 + properties: + PEAP_MSCHAPv2: + type: object + properties: + anon_outer_id: + type: boolean + radius_cert_profile: + type: string + allow_pwd_change: + type: boolean + - type: object + title: PEAP_with_GTC + properties: + PEAP_with_GTC: + type: object + properties: + anon_outer_id: + type: boolean + radius_cert_profile: + type: string + description: The RADIUS authentication protocol + server: + type: array + items: + type: object + properties: + name: + type: string + description: The name of the RADIUS server + ip_address: + type: string + description: The IP address of the RADIUS server + port: + type: integer + minimum: 1 + maximum: 65535 + description: The RADIUS server port + secret: + type: string + format: password + maxLength: 64 + description: The RADIUS secret + description: The RADIUS server configuration + retries: + type: integer + minimum: 1 + maximum: 5 + description: The number of RADIUS server retries + timeout: + type: integer + minimum: 1 + maximum: 120 + description: The RADIUS server authentication timeout (seconds) + 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 + redistribution-profile: + type: object + required: + - id + - name + - segment_id + - source + properties: + id: + type: string + description: The UUID of the redistribution profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + maxLength: 127 + description: The name of the redistribution profile + example: string + segment_id: + type: string + maxLength: 127 + description: The segment ID/UUID for the redistribution profile + example: "123" + description: + type: string + maxLength: 1023 + description: Human-readable description of the redistribution profile + example: test desc + source: + type: string + maxLength: 128 + description: The source workflow (e.g. 'CIE Onboarding', 'Identity Redistribution', or custom string) + example: string + contributor: + type: array + items: + type: string + enum: + - HIP Report + - IP Port User + - IP Tag + - IP User + - Quarantine List + - User Tag + maxLength: 31 + description: Data type that can be contributed by this profile + description: Data types that this redistribution profile can contribute/send + example: + - HIP Report + - IP Port User + - IP Tag + - IP User + - Quarantine List + - User Tag + receiver: + type: array + items: + type: string + enum: + - HIP Report + - IP Port User + - IP Tag + - IP User + - Quarantine List + - User Tag + maxLength: 31 + description: Data type that can be received by this profile + description: Data types that this redistribution profile can receive + example: + - HIP Report + - IP Port User + - IP Tag + - IP User + - Quarantine List + - User Tag + 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 + tacacs-server-profiles: + type: object + required: + - id + - name + - server + - protocol + properties: + id: + type: string + description: The UUID of the TACACS+ server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the TACACS+ server profile + protocol: + enum: + - CHAP + - PAP + description: The TACACS+ authentication protocol + server: + type: array + items: + type: object + properties: + name: + type: string + description: The name of the TACACS+ server + address: + type: string + description: The IP address of the TACACS+ server + port: + type: integer + minimum: 1 + maximum: 65535 + description: The TACACS+ server port + secret: + type: string + format: password + maxLength: 64 + description: The TACACS+ secret + description: The TACACS+ server configuration + timeout: + type: integer + minimum: 1 + maximum: 30 + description: The TACACS+ timeout (seconds) + use_single_connection: + type: boolean + description: Use a single TACACS+ connection? + 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 + kerberos-server-profiles: + type: object + required: + - id + - name + - server + properties: + id: + type: string + description: The UUID of the Kerberos server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the Kerberos server profile + server: + type: array + items: + type: object + properties: + name: + type: string + description: The Kerberos server name + host: + type: string + description: The Kerberos server IP address + port: + type: integer + minimum: 1 + maximum: 65535 + description: The Kerberos server port + description: The Kerberos server configuration + 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 + authentication-sequences: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the authentication sequence + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the authentication sequence + authentication_profiles: + type: array + items: + type: string + description: An ordered list of authentication profiles + use_domain_find_profile: + type: boolean + default: true + description: Use domain to determine authentication profile? + 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 + mfa-servers: + type: object + required: + - id + - name + - mfa_cert_profile + properties: + id: + type: string + description: The UUID of the MFA server + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the MFA server profile + mfa_cert_profile: + type: string + description: The MFA server certificate profile + mfa_vendor_type: + type: object + oneOf: + - type: object + title: okta_adaptive_v1 + properties: + okta_adaptive_v1: + type: object + required: + - okta_api_host + - okta_baseuri + - okta_token + - okta_org + - okta_timeout + properties: + okta_api_host: + type: string + format: hostname + minLength: 10 + description: Okta API hostname + okta_token: + type: string + format: password + minLength: 8 + description: Okta API token + okta_org: + type: string + description: Okta organization + okta_timeout: + type: integer + minimum: 5 + maximum: 600 + default: 30 + description: Okta timeout (seconds) + okta_baseuri: + type: string + minLength: 2 + default: /api/v1 + description: Integration with [Okta Adaptive MFA](https://www.okta.com/products/adaptive-multi-factor-authentication) + - type: object + title: ping_identity_v1 + properties: + ping_identity_v1: + type: object + required: + - ping_baseuri + - ping_api_host + - ping_use_base64_key + - ping_token + - ping_org + - ping_timeout + properties: + ping_baseuri: + type: string + minLength: 2 + default: /pingid/rest/4 + description: Ping Identity API base URI + ping_api_host: + type: string + format: hostname + minLength: 16 + default: idpxny3lm.pingidentity.com + description: Ping Identity API hostname + ping_use_base64_key: + type: string + format: password + minLength: 8 + description: Ping Identity Base64 key + ping_token: + type: string + minLength: 8 + description: Ping Identity API token + ping_org_alias: + type: string + minLength: 8 + description: Ping Identity client organization ID + ping_timeout: + type: integer + minimum: 5 + maximum: 600 + default: 30 + description: Ping Identity timeout (seconds) + description: Integation with [Ping Identity](https://www.pingidentity.com/en/platform.html) + - type: object + title: rsa_securid_access_v1 + properties: + rsa_securid_access_v1: + type: object + properties: + rsa_api_host: + type: string + format: hostname + minLength: 10 + description: RSA SecurID hostname + rsa_baseuri: + type: string + minLength: 2 + default: /mfa/v1_1 + description: RSA SecurID API base URI + rsa_accesskey: + type: string + format: password + minLength: 8 + description: RSA SecurID access key + rsa_accessid: + type: string + minLength: 8 + description: RSA SecurID access ID + rsa_assurancepolicyid: + type: string + minLength: 3 + description: RSA SecurID assurance level + rsa_timeout: + type: integer + minimum: 5 + maximum: 600 + default: 30 + description: RSA SecurID timeout (seconds) + description: Integration with [RSA SecurID](https://www.rsa.com/products/securid/) + - type: object + title: duo_security_v2 + properties: + duo_security_v2: + type: object + required: + - duo_api_host + - duo_integration_key + - duo_secret_key + - duo_timeout + - duo_baseuri + properties: + duo_api_host: + type: string + format: hostname + minLength: 16 + description: Duo Security API hostname + duo_baseuri: + type: string + default: /auth/v2 + minLength: 2 + description: Duo Security API base URI + duo_timeout: + type: integer + minimum: 5 + maximum: 600 + default: 30 + description: Duo Security timeout (seconds) + duo_integration_key: + type: string + minLength: 16 + description: Duo Security integration key + duo_secret_key: + type: string + format: password + minLength: 16 + description: Duo Security secret key + description: | + Integration with [Duo Security](https://duo.com/product) + description: The MFA vendor type + 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 + certificates-get: + type: object + properties: + id: + type: string + format: uuid + description: The UUID of the certificate + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the certificate + algorithm: + type: string + description: Algorithm + ca: + type: boolean + description: CA certificate? + common_name: + type: string + description: Common name + common_name_int: + type: string + expiry_epoch: + type: string + issuer: + type: string + description: Issuer + issuer_hash: + type: string + description: Issue hash + not_valid_after: + type: string + format: date + description: Not valid after this date + not_valid_before: + type: string + format: date + description: Not valid before this date + public_key: + type: string + description: Public key + subject: + type: string + description: Subject + subject_hash: + type: string + description: Subject hash + subject_int: + type: string + 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 + certificates-post: + type: object + required: + - id + - name + - common_name + - signed_by + - algorithm + - certificate_name + - digest + properties: + algorithm: + type: object + oneOf: + - type: object + title: rsa_number_of_bits + properties: + rsa_number_of_bits: + enum: + - 512 + - 1024 + - 2048 + - 3072 + - 4096 + required: + - rsa_number_of_bits + - type: object + title: ecdsa_number_of_bits + properties: + ecdsa_number_of_bits: + enum: + - 245 + - 384 + - 2048 + - 3072 + - 4096 + required: + - ecdsa_number_of_bits + description: Encryption algorithm + alternate_email: + type: array + items: + type: string + description: Alternate email + certificate_name: + type: string + minLength: 1 + description: Certificate name + common_name: + type: string + minLength: 1 + description: Common name + country_code: + type: string + description: Country code + day_till_expiration: + type: integer + description: Expiration (days) + department: + type: array + items: + type: string + description: Department + digest: + enum: + - sha1 + - sha256 + - sha384 + - sha512 + - md5 + description: Hash algorithm + email: + type: string + format: email + maxLength: 255 + description: Email + hostname: + type: array + items: + type: string + format: hostname + minLength: 1 + maxLength: 64 + description: Hostname + ip: + type: array + items: + type: string + minLength: 1 + maxLength: 64 + description: IP address + is_block_privateKey: + type: boolean + description: Block private key export? + is_certificate_authority: + type: boolean + description: Certificate authority certificate? + locality: + type: string + maxLength: 64 + description: Locality + ocsp_responder_url: + type: string + maxLength: 64 + description: OCSP responder URL + signed_by: + type: string + maxLength: 64 + description: Signed by + state: + type: string + maxLength: 32 + description: State + 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 + certificates-import: + type: object + required: + - name + - certificate_file + - format + properties: + name: + type: string + description: The name of the certificate + minLength: 1 + certificate_file: + type: string + description: The Base64 encoded content of the certificate public key + format: + enum: + - pem + - pkcs12 + - der + default: pem + description: Certificate format + key_file: + type: string + description: The Base64 encoded content of the certificate private key + passphrase: + type: string + format: password + description: Passphrase to protect the certificate private key + 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 + certificate-profiles: + type: object + required: + - name + - ca_certificates + properties: + id: + type: string + description: The UUID of the certificate profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the certificate profile + maxLength: 63 + username_field: + type: object + properties: + subject: + enum: + - common-name + description: Common name + subject_alt: + enum: + - email + description: Email address + description: Certificate username field + domain: + type: string + description: User domain + ca_certificates: + type: array + items: + type: object + required: + - name + properties: + name: + type: string + description: CA certificate name + default_ocsp_url: + type: string + description: Default OCSP URL + ocsp_verify_cert: + type: string + description: OCSP verify certificate + template_name: + type: string + description: Template name/OID + description: CA certificate + description: An ordered list of CA certificates + crl_receive_timeout: + type: string + description: CRL receive timeout (seconds) + ocsp_receive_timeout: + type: string + description: OCSP receive timeout (seconds) + cert_status_timeout: + type: string + description: Certificate status timeout + use_crl: + type: boolean + description: Use CRL? + use_ocsp: + type: boolean + description: Use OCSP? + block_unknown_cert: + type: boolean + description: Block session if certificate status is unknown? + block_timeout_cert: + type: boolean + description: Block session if certificate status cannot be retrieved within timeout? + block_unauthenticated_cert: + type: boolean + description: Block session if the certificate was not issued to the authenticating device? + block_expired_cert: + type: boolean + description: Block sessions with expired certificates? + 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 + scep-profiles: + type: object + required: + - id + - name + - scep_challenge + - scep_url + - ca_identity_name + - subject + - algorithm + - digest + properties: + id: + type: string + description: The UUID of the SCEP profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + maxLength: 31 + description: The name of the SCEP profile + scep_challenge: + type: object + description: One Time Password challenge + oneOf: + - type: object + title: none + properties: + none: + enum: + - '' + description: No OTP + - type: object + title: fixed + properties: + fixed: + type: string + description: Challenge to use for SCEP server on mobile clients + maxLength: 1024 + - type: object + title: dynamic + properties: + dynamic: + type: object + properties: + username: + type: string + maxLength: 255 + description: OTP username + password: + type: string + format: password + maxLength: 255 + description: OTP password + otp_server_url: + type: string + format: uri + maxLength: 255 + description: OTP server URL + scep_ca_cert: + type: string + description: SCEP server CA certificate + scep_client_cert: + type: string + description: SCEP client ceertificate + ca_identity_name: + type: string + description: Certificate Authority identity + subject: + type: string + default: CN=$USERNAME + description: Subject + algorithm: + type: object + properties: + rsa: + type: object + properties: + rsa_nbits: + type: integer + enum: + - 1024 + - 2048 + - 3072 + description: Key length (bits) + digest: + type: string + enum: + - 'sha1' + - 'sha256' + - 'sha348' + - 'sha512' + description: Digest for CSR + fingerprint: + type: string + description: CA certificate fingerprint + certificate_attributes: + type: object + oneOf: + - type: object + title: rfc822name + properties: + rfc822name: + type: string + format: email + description: Email address + - type: object + title: dnsname + properties: + dnsname: + type: string + format: fqdn + description: Fully qualified hostname + - type: object + title: uniform_resource_identifier + properties: + uniform_resource_identifier: + type: string + format: uri + description: Uniform resource identifier + description: Subject Alternative name type + use_as_digital_signature: + type: boolean + description: Use as digital signature? + use_for_key_encipherment: + type: boolean + description: Use for key encipherment? + scep_url: + type: string + format: uri + description: SCEP server URL + 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 + trusted-certificate-authorities: + type: object + properties: + id: + type: string + description: The UUID of the trusted certificate authority + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + maxLength: 63 + description: The trusted certificate authority name + common_name: + type: string + maxLength: 255 + description: The trusted certificate authority common name + expiry_epoch: + type: string + filename: + type: string + description: Certificate filename + issuer: + type: string + description: Issuer + not_valid_after: + type: string + description: Not valid after this date + not_valid_before: + type: string + description: Not valid before this date + serial_number: + type: string + description: Serial number + subject: + type: string + description: Subject + tls-service-profiles: + type: object + required: + - id + - name + - certificate + - protocol_settings + properties: + id: + type: string + description: The UUID of the TLS service profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: TLS service profile name. The value is `muCustomDomainSSLProfile` when it is used on mobile-agent infra settings. + pattern: '^[a-zA-Z0-9._-]+$' + maxLength: 127 + certificate: + type: string + maxLength: 255 + description: Certificate name + protocol_settings: + type: object + properties: + min_version: + enum: + - tls1-0 + - tls1-1 + - tls1-2 + default: tls1-2 + description: Minimum TLS version + max_version: + enum: + - tls1-0 + - tls1-1 + - tls1-2 + - tls1-3 + default: tls1-3 + description: Maximum TLS version + keyxchg_algo_rsa: + type: boolean + description: Allow RSA algorithm? + keyxchg_algo_dhe: + type: boolean + description: Allow DHE algorithm? + keyxchg_algo_ecdhe: + type: boolean + description: Allow ECDHE algorithm? + enc_algo_3des: + type: boolean + description: Allow 3DES algorithm? + enc_algo_rc4: + type: boolean + description: Allow RC4 algorithm? + enc_algo_aes_128_cbc: + type: boolean + description: Allow AES-128-CBC algorithm? + enc_algo_aes_256_cbc: + type: boolean + description: Allow AES-256-CBC algorithm? + enc_algo_aes_128_gcm: + type: boolean + description: Allow AES-128-GCM algorithm? + enc_algo_aes_256_gcm: + type: boolean + description: Allow algorithm AES-256-GCM + auth_algo_sha1: + type: boolean + description: Allow SHA1 authentication? + auth_algo_sha256: + type: boolean + description: Allow SHA256 authentication? + auth_algo_sha384: + type: boolean + description: Allow SHA384 authentication? + description: Protocol settings + 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 + ocsp-responders: + type: object + required: + - id + - name + - host_name + properties: + id: + type: string + description: The UUID of the OCSP responder profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the OCSP responder profile + pattern: '^[a-zA-Z0-9._-]+$' + maxLength: 63 + host_name: + type: string + minLength: 1 + maxLength: 255 + description: The hostname or IP address of the OCSP server + 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 + export-certificate-payload: + type: object + properties: + format: + type: string + passphrase: + type: string + enum: + - pkcs12 + - pem + - der + - pkcs10 + required: + - format + export-certificate-response: + type: object + properties: + certificate: + type: string + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 +security: + - scmToken: [] +x-internal: false diff --git a/openapi-specs/scm/config/sase/mobileagent/mobile-agent-recent.yaml b/openapi-specs/scm/config/sase/mobileagent/mobile-agent-recent.yaml new file mode 100644 index 000000000..51b205d3f --- /dev/null +++ b/openapi-specs/scm/config/sase/mobileagent/mobile-agent-recent.yaml @@ -0,0 +1,1988 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: GlobalProtect + description: These APIs are used for defining and managing Prisma Access GlobalProtect services 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/mobile-agent/v1' + description: Current + - url: 'https://api.sase.paloaltonetworks.com/sse/config/v1/mobile-agent' + description: Legacy +tags: + - name: Agent Authentication Settings + description: Agent Authentication Settings + - name: Agent Versions + description: Agent Versions + - name: Application Settings + description: Application Settings + - name: Global Settings + description: Global Settings + - name: GlobalProtect Enablement + description: GlobalProtect Enablement + - name: Infrastructure Settings + description: Infrastructure Settings + - name: Mobile User Locations + description: Mobile User Locations + - name: Tunnel Settings + description: Tunnel Settings +paths: + /agent-profiles: + get: + tags: + - Application Settings + summary: List GlobalProtect agent profiles + description: | + Retrieve a list of GlobalProtect agent profiles + operationId: ListGlobalProtectAgentProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/folder-mobileusers-required' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/agent-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: + - Application Settings + summary: Create a GlobalProtect agent profile + description: | + Create a new GlobalProtect agent profile + operationId: CreateGlobalProtectAgentProfiles + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/agent-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/agent-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' + put: + tags: + - Application Settings + summary: Update a GlobalProtect agent profile + description: | + Update an existing GlobalProtect agent profile + operationId: UpdateGlobalProtectAgentProfiles + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/agent-profiles' + 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' + delete: + tags: + - Application Settings + summary: Delete a GlobalProtect agent profile + description: | + Delete a GlobalProtect agent profile + operationId: DeleteGlobalProtectAgentProfiles + parameters: + - $ref: '#/components/parameters/name-required' + - $ref: '#/components/parameters/folder-mobileusers-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' + /agent-versions: + get: + tags: + - Agent Versions + summary: List GlobalProtect agent versions + description: Retrieve a list of GlobalProtect agent versions + operationId: ListGlobalProtectVersions + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/agent-versions' + '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' + /authentication-settings: + get: + tags: + - Agent Authentication Settings + summary: List GlobalProtect authentication settings + description: | + Retrieve a list of GlobalProtect authentication settings + operationId: GetGlobalProtectAuthenticationSettings + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/folder-mobileusers-required' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/authentication-settings' + 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: + - Agent Authentication Settings + summary: Create a GlobalProtect authentication setting + description: | + Create a new GlobalProtect authentication setting + operationId: CreateGlobalProtectAuthenticationSettings + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-settings' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-settings' + '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' + put: + tags: + - Agent Authentication Settings + summary: Update a GlobalProtect authentication setting + description: | + Update an existing GlobalProtect authentication setting + operationId: UpdateGlobalProtectAuthenticationSettings + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/authentication-settings' + 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' + delete: + tags: + - Agent Authentication Settings + summary: Delete a GlobalProtect authentication setting + description: | + Delete a GlobalProtect authentication setting + operationId: DeleteGlobalProtectAuthenticationSettings + parameters: + - $ref: '#/components/parameters/name-required' + - $ref: '#/components/parameters/folder-mobileusers-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' + '/authentication-settings/{name}:move': + post: + tags: + - Agent Authentication Settings + summary: Move a GlobalProtect authentication setting + description: | + Move a GlobalProtect authentication setting + operationId: MoveGlobalProtectAuthenticationSettings + parameters: + - $ref: '#/components/parameters/name-in-path' + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/move-auth-settings' + 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' + /enable: + get: + tags: + - GlobalProtect Enablement + summary: Get GlobalProtect enablement status + description: | + Get the Prisma Access GlobalProtect enablement status. + + *This is normally done in the UI. This endpoint is necessary for customers that do not use the UI to enable GlobalProtect in Prisma Access. This endpoint will be deprecated once the UI dependencies have been eliminated.* + operationId: GetGlobalProtectEnablement + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + enabled: + type: boolean + description: Has GlobalProtect been enabled? + required: + - enabled + '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: + - GlobalProtect Enablement + summary: Enable GlobalProtect + description: |- + Enable the Prisma Access GlobalProtect feature. + + *This is normally done in the UI. This endpoint is necessary for customers that do not use the UI to enable GlobalProtect in Prisma Access. This endpoint will be deprecated once the UI dependencies have been eliminated.* + operationId: CreateGlobalProtectEnablement + 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' + /global-settings: + get: + tags: + - Global Settings + summary: List GlobalProtect global settings + description: | + Retrieve a list of GlobalProtect global settings + operationId: GetGlobalProtectSettings + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mobile-agent-global-settings' + '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: + - Global Settings + summary: Update GlobalProtect global settings + description: | + Update the GlobalProtect global settings + operationId: UpdateMobileAgentSettings + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mobile-agent-global-settings' + 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' + /infrastructure-settings: + get: + tags: + - Infrastructure Settings + summary: List GlobalProtect infrastructure settings + description: | + Retrieve a list of GlobalProtect infrastructure settings + operationId: GetGlobalProtectInfrastructureSettings + parameters: + - $ref: '#/components/parameters/name-required' + - $ref: '#/components/parameters/folder-mobileusers-required' + responses: + '200': + description: OK + content: + application/json: + schema: + type: array + items: + type: array + items: + $ref: '#/components/schemas/mobile-agent-infrastructure-settings' + '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: + - Infrastructure Settings + summary: Create a GlobalProtect infrastructure setting + description: | + Create a new GlobalProtect infrastructure setting + operationId: CreateGlobalProtectInfrastructureSettings + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/mobile-agent-infrastructure-settings' + 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' + put: + tags: + - Infrastructure Settings + summary: Update a GlobalProtect infrastructure setting + description: | + Update an existing GlobalProtect infrastructure setting + operationId: UpdateGlobalProtectInfrastructureSettings + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mobile-agent-infrastructure-settings' + 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' + delete: + tags: + - Infrastructure Settings + summary: Delete a GlobalProtect infrastructure setting + description: | + Delete a GlobalProtect infrastructure setting + operationId: DeleteGlobalProtectInfrastructureSettings + parameters: + - $ref: '#/components/parameters/name-required' + - $ref: '#/components/parameters/folder-mobileusers-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' + /locations: + get: + tags: + - Mobile User Locations + summary: List GlobalProtect locations + description: | + Retrieve a list of GlobalProtect locations + operationId: ListGlobalProtectLocations + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/mobile-agent-locations' + 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' + put: + tags: + - Mobile User Locations + summary: Select a GlobalProtect location + description: | + Select a GlobalProtect location + operationId: UpdateGlobalProtectLocations + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/mobile-agent-locations' + 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' + /tunnel-profiles: + get: + tags: + - Tunnel Settings + summary: List GlobalProtect tunnel settings + description: | + Retrieve a list of GlobalProtect tunnel settings + operationId: ListGlobalProtectTunnelSettings + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder-mobileusers-required' + - $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/tunnel-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: + - Tunnel Settings + summary: Create a GlobalProtect tunnel setting + description: | + Create a GlobalProtect tunnel setting + operationId: CreateGlobalProtectTunnelSettings + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-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' + put: + tags: + - Tunnel Settings + summary: Update a GlobalProtect tunnel setting + description: | + Update an existing GlobalProtect tunnel setting + operationId: UpdateGlobalProtectTunnelSettings + parameters: + - $ref: '#/components/parameters/folder-mobileusers-required' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-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: + - Tunnel Settings + summary: Delete a GlobalProtect tunnel setting + description: | + Delete a GlobalProtect tunnel setting + operationId: DeleteGlobalProtectTunnelSettings + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder-mobileusers-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' +components: + parameters: + name: + name: name + in: query + description: The name of the configuration resource + required: false + schema: + type: string + name-required: + name: name + in: query + description: The name of the configuration resource + required: true + schema: + type: string + name-in-path: + name: name + in: path + description: The name of the configuration resource + 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 + offset: + name: offset + in: query + description: The offset into the list of results returned + required: false + schema: + type: integer + default: 0 + folder-mobileusers-required: + name: folder + in: query + description: | + The folder in which the resource is defined + schema: + enum: + - Mobile Users + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + agent-profiles: + type: object + properties: + name: + type: string + folder: + type: string + default: Mobile Users + agent_ui: + type: object + description: Agent UI configuration settings + properties: + agent_user_override_timeout: + type: integer + description: Agent disabled duration (minutes). A value of `0` means the agent will remain disabled until manually enabled. + minimum: 0 + maximum: 65535 + default: 0 + max_agent_user_overrides: + type: integer + description: The maximum number of times the agent can be disabled. A value of `0` means there are no limits to the number of times the agent can be disabled. + minimum: 0 + maximum: 25 + default: 0 + passcode: + type: string + format: password + description: The passcode used to disable the agent + minLength: 6 + maxLength: 64 + uninstall_password: + type: string + format: password + description: The password used to uninstall the agent + minLength: 6 + maxLength: 32 + welcome_page: + type: object + description: The welcome page displayed upon login + properties: + page: + type: string + authentication_override: + type: object + properties: + accept_cookie: + type: object + properties: + cookie_lifetime: + type: object + properties: + lifetime_in_days: + type: number + minimum: 1 + maximum: 365 + lifetime_in_hours: + type: number + minimum: 1 + maximum: 72 + lifetime_in_minutes: + type: number + minimum: 1 + maximum: 59 + cookie_encrypt_decrypt_cert: + type: string + generate_cookie: + type: boolean + certificate: + type: object + properties: + criteria: + type: object + properties: + certificate_profile: + type: string + client_certificate: + type: object + properties: + local: + type: string + scep: + type: string + maxLength: 255 + custom_checks: + type: object + properties: + criteria: + type: object + properties: + plist: + type: array + items: + type: object + properties: + name: + type: string + key: + type: array + items: + type: object + properties: + name: + type: string + negate: + type: boolean + value: + type: string + pattern: .* + maxLength: 1024 + negate: + type: boolean + registry_key: + type: array + items: + type: object + properties: + name: + type: string + maxLength: 1023 + default_value_data: + type: string + maxLength: 1024 + negate: + type: boolean + registry_value: + type: array + items: + type: object + properties: + name: + type: string + negate: + type: boolean + value_data: + type: string + gateways: + type: object + properties: + external: + type: object + properties: + list: + type: array + items: + type: object + properties: + name: + type: string + choice: + type: object + oneOf: + - type: object + title: fqdn + properties: + fqdn: + type: string + - type: object + title: ip + properties: + ip: + type: object + properties: + ipv4: + type: string + pattern: '^([:0-9.])+$' + maxLength: 100 + ipv6: + type: string + maxLength: 100 + manual: + type: boolean + description: If this GlobalProtect gateway can be manually selected + default: false + priority_rule: + type: array + items: + type: object + properties: + name: + type: string + priority: + enum: + - '0' + - '1' + - '2' + - '3' + - '4' + - '5' + internal: + type: object + properties: + list: + type: array + items: + type: object + properties: + name: + type: string + choice: + type: object + oneOf: + - type: object + title: fqdn + properties: + fqdn: + type: string + - type: object + title: ip + properties: + ip: + type: object + properties: + ipv4: + type: string + pattern: '^([:0-9.])+$' + maxLength: 100 + ipv6: + type: string + maxLength: 100 + source_ip: + type: array + items: + type: string + gp_app_config: + type: object + properties: + config: + type: array + description: Currently we only support connect-method and tunnel-mtu as app-config + items: + type: object + anyOf: + - $ref: '#/components/schemas/connect-method' + - $ref: '#/components/schemas/tunnel-mtu' + hip_collection: + type: object + properties: + certificate_profile: + type: string + collect_hip_data: + type: boolean + custom_checks: + type: object + properties: + linux: + type: object + properties: + process_list: + type: array + items: + type: string + mac_os: + type: object + properties: + plist: + type: array + items: + type: object + properties: + name: + type: string + description: Preference list + maxLength: 1023 + key: + type: array + items: + type: string + required: + - name + process_list: + type: array + items: + type: string + windows: + type: object + properties: + process_list: + type: array + items: + type: string + registry_key: + type: array + items: + type: object + properties: + name: + type: string + description: Registry key + maxLength: 1023 + registry_value: + type: array + items: + type: string + required: + - name + exclusion: + type: object + properties: + category: + type: array + items: + type: object + properties: + name: + type: string + vendor: + type: array + items: + type: object + properties: + name: + type: string + product: + type: array + items: + type: string + max_wait_time: + type: number + minimum: 10 + maximum: 60 + internal_host_detection: + type: object + properties: + hostname: + type: string + description: Host name of the IPv4 in DNS record + pattern: '^[a-zA-Z0-9._-]+$' + maxLength: 256 + ip_address: + type: string + description: Internal IPv4 address of a host + internal_host_detection_v6: + type: object + properties: + hostname: + type: string + description: Host name of the IPv4 in DNS record + pattern: '^[a-zA-Z0-9._-]+$' + maxLength: 256 + ip_address: + type: string + description: Internal IPv6 address of a host + machine_account_exists_with_serialno: + type: object + properties: + 'yes': + type: object + 'no': + type: object + os: + type: array + items: + enum: + - Android + - Chrome + - IoT + - Linux + - Mac + - Windows + - WindowsUWP + - iOS + save_user_credentials: + enum: + - '0' + - '1' + - '2' + - '3' + source_user: + type: array + items: + type: string + third_party_vpn_clients: + type: array + items: + enum: + - PAN Virtual Ethernet Adapter + - Juniper Network Virtual Adapter + - Cisco Systems VPN Adapter + required: + - name + connect-method: + type: object + properties: + name: + enum: + - connect-method + default: connect-method + value: + type: array + minItems: 1 + maxItems: 1 + items: + enum: + - user-logon + - pre-logon + - on-demand + - pre-logon-then-on-demand + tunnel-mtu: + type: object + properties: + name: + enum: + - tunnel-mtu + default: tunnel-mtu + value: + type: array + description: GlobalProtect Connection MTU (bytes) + minItems: 1 + maxItems: 1 + items: + type: number + minimum: 1000 + maximum: 1420 + default: 1400 + agent-versions: + type: object + title: agent-versions + properties: + agent_versions: + type: array + description: The available versions of the GlobalProtect agent + items: + type: string + required: + - agent_versions + authentication-settings: + type: object + properties: + authentication_profile: + type: string + os: + enum: + - Any + - Android + - Browser + - Chrome + - IoT + - Linux + - Mac + - Satellite + - Windows + - WindowsUWP + - iOS + default: Any + user_credential_or_client_cert_required: + type: boolean + required: + - authentication_profile + - os + - user_credential_or_client_cert_required + move-auth-settings: + type: object + properties: + name: + type: string + where: + enum: + - before + - after + - top + - bottom + destination: + type: string + folder: + type: string + mobile-agent-global-settings: + type: object + properties: + agent_version: + type: string + manual_gateway: + type: object + description: Use the locations from GET /infrastrustre-settings deployment field to setup manual gateways. + properties: + region: + type: array + items: + type: object + properties: + name: + type: string + locations: + type: array + items: + type: string + mobile-agent-infrastructure-settings: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + dns_servers: + type: array + items: + type: object + properties: + name: + type: string + dns_suffix: + type: array + items: + type: string + internal_dns_match: + type: array + items: + type: object + properties: + name: + type: string + domain_list: + type: array + items: + type: string + primary: + type: object + properties: + dns_server: + type: object + use_cloud_default: + type: object + secondary: + type: object + properties: + dns_server: + type: object + use_cloud_default: + type: object + primary_public_dns: + type: object + properties: + dns_server: + type: string + secondary_public_dns: + type: object + properties: + dns_server: + type: string + enable_wins: + type: object + properties: + 'no': + type: object + 'yes': + type: object + properties: + wins_servers: + type: array + items: + type: object + properties: + name: + type: string + primary: + type: string + secondary: + type: string + ip_pools: + type: array + items: + type: object + properties: + name: + type: string + ip_pool: + type: array + items: + type: string + ipv6: + type: boolean + portal_hostname: + type: object + properties: + custom_domain: + type: object + properties: + cname: + type: string + hostname: + type: string + ssl_tls_service_profile: + type: string + description: 'value is muCustomDomainSSLProfile, it will reference to the corresponding certificate under ssl-tls-service-profile automatically' + default: muCustomDomainSSLProfile + default_domain: + type: object + properties: + hostname: + type: string + udp_queries: + type: object + properties: + retries: + type: object + properties: + attempts: + type: number + description: Maximum number of retries before trying next name server + minimum: 1 + maximum: 30 + interval: + type: number + description: Time in seconds for another request to be sent + minimum: 1 + maximum: 30 + + static_ip_pools: + type: array + items: + $ref: '#/components/schemas/static-ip-pool' + required: + - id + - name + - dns_servers + - ip_pools + - portal_hostname + mobile-agent-locations: + type: object + properties: + region: + type: array + items: + type: object + properties: + name: + type: string + locations: + type: array + items: + type: string + tunnel-profiles: + type: object + properties: + name: + type: string + minLength: 1 + maxLength: 31 + authentication_override: + type: object + properties: + accept_cookie: + type: object + properties: + cookie_lifetime: + type: object + properties: + lifetime_in_days: + type: number + minimum: 1 + maximum: 365 + lifetime_in_hours: + type: number + minimum: 1 + maximum: 72 + lifetime_in_minutes: + type: number + minimum: 1 + maximum: 59 + cookie_encrypt_decrypt_cert: + type: string + generate_cookie: + type: boolean + no_direct_access_to_local_network: + type: boolean + os: + type: array + items: + enum: + - Android + - Chrome + - IoT + - Linux + - Mac + - Windows + - WindowsUWP + - iOS + retrieve_framed_ip_address: + type: boolean + source_address: + type: object + properties: + ip_address: + type: array + items: + type: string + region: + type: array + items: + type: string + source_user: + type: array + items: + type: string + split_tunneling: + type: object + properties: + access_route: + type: array + items: + type: string + exclude_access_route: + type: array + items: + type: string + exclude_applications: + type: array + items: + type: string + exclude_domains: + type: object + properties: + list: + type: array + items: + type: object + properties: + name: + type: string + ports: + type: array + items: + type: number + minimum: 1 + maximum: 65535 + include_applications: + type: array + items: + type: string + include_domains: + type: object + properties: + list: + type: array + items: + type: object + properties: + name: + type: string + ports: + type: array + items: + type: number + minimum: 1 + maximum: 65535 + required: + - name + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 + static-ip-pool: + type: object + properties: + name: + type: string + maxLength: 128 + description: "Name of the static-ip-pool entry. Alphanumeric string [0-9a-zA-Z._-]" + pool_type: + type: string + enum: [ "Static-IP" ] + ip_pool: + type: array + items: + type: string + format: cidr + description: "IP subnets" + theatres: + type: array + items: + type: string + description: "IP pools on theatres" + users: + type: array + items: + type: string + description: "IP pools on users" + user_groups: + type: array + items: + type: object + properties: + name: + type: string + maxLength: 320 + description: "Distinguished Name of the group" + directory: + type: string + description: "IP pools on user groups" + location_groups: + type: array + items: + type: string + description: "IP pools on location groups" + devices: + type: string + enum: [ "Any" ] + description: "IP pools on device groups" + lease_period: + type: integer + minimum: 0 + maximum: 7776000 + description: "Lease period in seconds" + grace_period: + type: integer + minimum: 0 + maximum: 7776000 + description: "Grace period in seconds" + required: + - name + - ip_pool +security: + - scmToken: [] +x-internal: false diff --git a/openapi-specs/scm/config/sase/network configurations/network-services-recent.yaml b/openapi-specs/scm/config/sase/network configurations/network-services-recent.yaml new file mode 100644 index 000000000..34d9adbb7 --- /dev/null +++ b/openapi-specs/scm/config/sase/network configurations/network-services-recent.yaml @@ -0,0 +1,19513 @@ +openapi: 3.1.0 +info: + version: 2.0.0 + title: Network Services + 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 +tags: + - name: Aggregate Interfaces + description: Aggregate Interfaces + - name: Auto VPN Clusters + description: Auto VPN Clusters + - name: Auto VPN Config Push + description: Auto VPN Config Push + - name: Auto VPN Monitor + description: Auto VPN Monitor + - name: Auto VPN Settings + description: Auto VPN Settings + - name: BGP Address Family Profiles + description: BGP Address Family Profiles + - name: BGP Authentication Profiles + description: BGP Authentication Profiles + - name: BGP Filtering Profiles + description: BGP Filtering Profiles + - name: BGP Redistribution Profiles + description: BGP Redistribution Profiles + - name: BGP Route Map Redistributions + description: BGP Route Map Redistributions + - name: BGP Route Maps + description: BGP Route Maps + - name: DHCP Interfaces + description: DHCP Interfaces + - name: DNS Proxies + description: DNS Proxies + - name: Ethernet Interfaces + description: Ethernet Interfaces + - name: IKE Crypto Profiles + description: IKE Crypto Profiles + - name: IKE Gateways + description: IKE Gateways + - name: Interface Management Profiles + description: Interface Management Profiles + - name: IPsec Crypto Profiles + description: IPsec Crypto Profiles + - name: IPsec Tunnels + description: IPsec Tunnels + - name: Layer 2 Subinterfaces + description: Layer 3 Subinterfaces + - name: Layer 3 Subinterfaces + description: Layer 3 Subinterfaces + - name: Link Tags + description: Link Tags + - name: Logical Routers + description: Logical Routers + - name: Loopback Interfaces + description: Loopback Interfaces + - name: NAT Rules + description: NAT Rules + - name: OSPF Authentication Profiles + description: OSPF Authentication Profiles + - name: PBF Rules + description: PBF Rules + - name: QoS Profiles + description: QoS Profiles + - name: QoS Rules + description: QoS Rules + - name: Route Access Lists + description: Route Access Lists + - name: Route Community Lists + description: Route Community Lists + - name: Route Path Access Lists + description: Route Path Access Lists + - name: Route Prefix Lists + description: Route Prefix Lists + - name: SD-WAN Error Correction Profiles + description: SD-WAN Error Correction Profiles + - name: SD-WAN Path Quality Profiles + description: SD-WAN Path Quality Profiles + - name: SD-WAN Rules + description: SD-WAN Rules + - name: SD-WAN SaaS Quality Profiles + description: SD-WAN SaaS Quality Profiles + - name: SD-WAN Traffic Distribution Profiles + description: SD-WAN Traffic Distribution Profiles + - name: Security Zones + description: Security Zones + - name: Tunnel Interfaces + description: Tunnel Interfaces + - name: VLAN Interfaces + description: VLAN Interfaces + - name: Zone Protection Profiles + description: Zone Protection Profiles + - name: Ssl Decryption Settings + description: Ssl Decrypt + - name: Remote Networks License + description: Remote Networks License Info + - name: ConfigMatchList + description: ConfigMatchList + - name: GlobalprotectMatchList + description: GlobalprotectMatchList + - name: HipmatchMatchList + description: HipmatchMatchList + - name: IptagMatchList + description: IptagMatchList + - name: SystemMatchList + description: SystemMatchList + - name: UseridMatchList + description: UseridMatchList +paths: + /config-match-list: + post: + tags: + - ConfigMatchList + summary: POST ConfigMatchList + description: POST ConfigMatchList + operationId: postConfigMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + put: + tags: + - ConfigMatchList + summary: PUT ConfigMatchList + description: PUT ConfigMatchList + operationId: putConfigMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + get: + tags: + - ConfigMatchList + summary: GET ConfigMatchList + description: GET ConfigMatchList + operationId: getConfigMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + /config-match-list/{id}: + get: + tags: + - ConfigMatchList + summary: GET ConfigMatchList by ID + description: GET ConfigMatchList by ID + operationId: getConfigMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + put: + tags: + - ConfigMatchList + summary: PUT ConfigMatchList by ID + description: PUT ConfigMatchList by ID + operationId: putConfigMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + delete: + tags: + - ConfigMatchList + summary: DELETE ConfigMatchList by ID + description: DELETE ConfigMatchList by ID + operationId: deleteConfigMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ConfigMatchList' + /globalprotect-match-list: + put: + tags: + - GlobalprotectMatchList + summary: PUT GlobalprotectMatchList + description: PUT GlobalprotectMatchList + operationId: putGlobalprotectMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + get: + tags: + - GlobalprotectMatchList + summary: GET GlobalprotectMatchList + description: GET GlobalprotectMatchList + operationId: getGlobalprotectMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + post: + tags: + - GlobalprotectMatchList + summary: POST GlobalprotectMatchList + description: POST GlobalprotectMatchList + operationId: postGlobalprotectMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + /globalprotect-match-list/{id}: + get: + tags: + - GlobalprotectMatchList + summary: GET GlobalprotectMatchList by ID + description: GET GlobalprotectMatchList by ID + operationId: getGlobalprotectMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + put: + tags: + - GlobalprotectMatchList + summary: PUT GlobalprotectMatchList by ID + description: PUT GlobalprotectMatchList by ID + operationId: putGlobalprotectMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + delete: + tags: + - GlobalprotectMatchList + summary: DELETE GlobalprotectMatchList by ID + description: DELETE GlobalprotectMatchList by ID + operationId: deleteGlobalprotectMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/GlobalprotectMatchList' + /hipmatch-match-list: + put: + tags: + - HipmatchMatchList + summary: PUT HipmatchMatchList + description: PUT HipmatchMatchList + operationId: putHipmatchMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + get: + tags: + - HipmatchMatchList + summary: GET HipmatchMatchList + description: GET HipmatchMatchList + operationId: getHipmatchMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + post: + tags: + - HipmatchMatchList + summary: POST HipmatchMatchList + description: POST HipmatchMatchList + operationId: postHipmatchMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + /hipmatch-match-list/{id}: + get: + tags: + - HipmatchMatchList + summary: GET HipmatchMatchList by ID + description: GET HipmatchMatchList by ID + operationId: getHipmatchMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + put: + tags: + - HipmatchMatchList + summary: PUT HipmatchMatchList by ID + description: PUT HipmatchMatchList by ID + operationId: putHipmatchMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + delete: + tags: + - HipmatchMatchList + summary: DELETE HipmatchMatchList by ID + description: DELETE HipmatchMatchList by ID + operationId: deleteHipmatchMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/HipmatchMatchList' + /iptag-match-list: + get: + tags: + - IptagMatchList + summary: GET IptagMatchList + description: GET IptagMatchList + operationId: getIptagMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + post: + tags: + - IptagMatchList + summary: POST IptagMatchList + description: POST IptagMatchList + operationId: postIptagMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + put: + tags: + - IptagMatchList + summary: PUT IptagMatchList + description: PUT IptagMatchList + operationId: putIptagMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + /iptag-match-list/{id}: + get: + tags: + - IptagMatchList + summary: GET IptagMatchList by ID + description: GET IptagMatchList by ID + operationId: getIptagMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + put: + tags: + - IptagMatchList + summary: PUT IptagMatchList by ID + description: PUT IptagMatchList by ID + operationId: putIptagMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + delete: + tags: + - IptagMatchList + summary: DELETE IptagMatchList by ID + description: DELETE IptagMatchList by ID + operationId: deleteIptagMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/IptagMatchList' + /system-match-list: + get: + tags: + - SystemMatchList + summary: GET SystemMatchList + description: GET SystemMatchList + operationId: getSystemMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + post: + tags: + - SystemMatchList + summary: POST SystemMatchList + description: POST SystemMatchList + operationId: postSystemMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + put: + tags: + - SystemMatchList + summary: PUT SystemMatchList + description: PUT SystemMatchList + operationId: putSystemMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + /system-match-list/{id}: + get: + tags: + - SystemMatchList + summary: GET SystemMatchList by ID + description: GET SystemMatchList by ID + operationId: getSystemMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + put: + tags: + - SystemMatchList + summary: PUT SystemMatchList by ID + description: PUT SystemMatchList by ID + operationId: putSystemMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + delete: + tags: + - SystemMatchList + summary: DELETE SystemMatchList by ID + description: DELETE SystemMatchList by ID + operationId: deleteSystemMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/SystemMatchList' + /userid-match-list: + post: + tags: + - UseridMatchList + summary: POST UseridMatchList + description: POST UseridMatchList + operationId: postUseridMatchList + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + put: + tags: + - UseridMatchList + summary: PUT UseridMatchList + description: PUT UseridMatchList + operationId: putUseridMatchList + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + get: + tags: + - UseridMatchList + summary: GET UseridMatchList + description: GET UseridMatchList + operationId: getUseridMatchList + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + /userid-match-list/{id}: + get: + tags: + - UseridMatchList + summary: GET UseridMatchList by ID + description: GET UseridMatchList by ID + operationId: getUseridMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + put: + tags: + - UseridMatchList + summary: PUT UseridMatchList by ID + description: PUT UseridMatchList by ID + operationId: putUseridMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + delete: + tags: + - UseridMatchList + summary: DELETE UseridMatchList by ID + description: DELETE UseridMatchList by ID + operationId: deleteUseridMatchListById + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/UseridMatchList' + /ike-crypto-profiles: + get: + tags: + - IKE Crypto Profiles + summary: List IKE crypto profiles + description: | + Retrieve a list of IKE crypto profiles. + operationId: ListIKECryptoProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ike-crypto-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: + - IKE Crypto Profiles + summary: Create an IKE crypto profile + description: | + Create a new IKE crypto profile. + operationId: CreateIKECryptoProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-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' + '/ike-crypto-profiles/{id}': + get: + tags: + - IKE Crypto Profiles + summary: Get an IKE crypto profile + description: | + Get an existing IKE crypto profile. + operationId: GetIKECryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-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: + - IKE Crypto Profiles + summary: Update an IKE crypto profile + description: | + Update an existing IKE crypto profile. + operationId: UpdateIKECryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-crypto-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: + - IKE Crypto Profiles + summary: Delete an IKE crypto profile + description: | + Delete an IKE crypto profile. + operationId: DeleteIKECryptoProfilesByID + 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' + /ike-gateways: + get: + tags: + - IKE Gateways + summary: List IKE gateways + description: | + Retrieve a list of IKE gateways. + operationId: ListIKEGateways + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ike-gateways' + 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: + - IKE Gateways + summary: Create an IKE gateway + description: | + Create a new IKE gateway. + operationId: CreateIKEGateways + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + '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' + '/ike-gateways/{id}': + get: + tags: + - IKE Gateways + summary: Get an IKE gateway + description: | + Get an existing IKE gateway. + operationId: GetIKEGatewaysByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + '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: + - IKE Gateways + summary: Update an IKE gateway + description: | + Update an IKE gateway. + operationId: UpdateIKEGatewaysByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ike-gateways' + '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: + - IKE Gateways + summary: Delete an IKE gateway + description: | + Delete an IKE gateway. + operationId: DeleteIKEGatewaysByID + 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' + /ipsec-crypto-profiles: + get: + tags: + - IPsec Crypto Profiles + summary: List IPsec crypto profiles + description: | + Retrieve a list of IPsec crypto profiles. + operationId: ListIPsecCryptoProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ipsec-crypto-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: + - IPsec Crypto Profiles + summary: Create an IPsec crypto profile + description: | + Create a new IPsec crypto profile. + operationId: CreateIPsecCryptoProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-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' + '/ipsec-crypto-profiles/{id}': + get: + tags: + - IPsec Crypto Profiles + summary: Get an IPsec crypto profile + description: | + Get an existing IPsec crypto profile. + operationId: GetIPsecCryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-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: + - IPsec Crypto Profiles + summary: Update an IPsec crypto profile + description: | + Update an IPsec crypto profile. + operationId: UpdateIPsecCryptoProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-crypto-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: + - IPsec Crypto Profiles + summary: Delete an IPsec crypto profile + description: | + Delete an IPsec crypto profile. + operationId: DeleteIPsecCryptoProfilesByID + 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' + /ipsec-tunnels: + get: + tags: + - IPsec Tunnels + summary: List IPsec tunnels + description: | + Retrieve a list of IPsec tunnels. + operationId: ListIPsecTunnels + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ipsec-tunnels' + 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: + - IPsec Tunnels + summary: Create an IPsec tunnel + description: | + Create a new IPsec tunnel. + operationId: CreateIPsecTunnels + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + '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' + '/ipsec-tunnels/{id}': + get: + tags: + - IPsec Tunnels + summary: Get an IPsec tunnel + description: | + Get an existing IPsec tunnel. + operationId: GetIPsecTunnelsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + '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: + - IPsec Tunnels + summary: Update an IPsec tunnel + description: | + Update an existing IPsec tunnel. + operationId: UpdateIPsecTunnelsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ipsec-tunnels' + '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: + - IPsec Tunnels + summary: Delete an IPsec tunnel + description: | + Delete an IPsec tunnel. + operationId: DeleteIPsecTunnelsByID + 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' + /qos-policy-rules: + get: + tags: + - QoS Rules + summary: List QoS policy rules + description: | + Retrieve a list of QoS policy rules. + operationId: ListQoSPolicyRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/qos-policy-rules' + 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 Rules + summary: Create a QoS policy rule + description: | + Create a new QoS policy rule. + operationId: CreateQoSPolicyRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + '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-policy-rules/{id}': + get: + tags: + - QoS Rules + summary: Get a QoS policy rule + description: | + Get an existing QoS policy rule. + operationId: GetQoSPolicyRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + '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 Rules + summary: Update a QoS policy rule + description: | + Update an existing QoS policy rule. + operationId: UpdateQoSPolicyRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/qos-policy-rules' + '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 Rules + summary: Delete a QoS policy rule + description: | + Delete a Qos policy rule. + operationId: DeleteQoSPolicyRulesByID + 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' + '/qos-policy-rules/{id}:move': + post: + tags: + - QoS Rules + summary: Move a QoS policy rule + description: | + Move a QoS policy rule. + operationId: MoveQoSPolicyRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/rule-based-move' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + /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' + /zones: + get: + tags: + - Security Zones + summary: List security zones + description: | + Retrieve a list of security zones. + operationId: ListZones + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/zones' + 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: + - Security Zones + summary: Create a security zone + description: | + Create a new security zone. + operationId: CreateZones + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + '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' + '/zones/{id}': + get: + tags: + - Security Zones + summary: Get a security zone + description: | + Get an existing security zone. + operationId: GetZonesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + '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: + - Security Zones + summary: Update a security zone + description: | + Update an existing security zone. + operationId: UpdateZonesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zones' + '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: + - Security Zones + summary: Delete a security zone + description: | + Delete a security zone. + operationId: DeleteZonesByID + 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' + /zone-protection-profiles: + get: + tags: + - Zone Protection Profiles + summary: List zone protection profiles + description: | + Retrieve a list of zone protection profiles. + operationId: ListZoneProtectionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/zone-protection-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: + - Zone Protection Profiles + summary: Create a zone protection profile + description: | + Create a new zone protection profile. + operationId: CreateZoneProtectionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-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' + '/zone-protection-profiles/{id}': + get: + tags: + - Zone Protection Profiles + summary: Get a zone protection profile + description: | + Get an existing zone protection profile. + operationId: GetZoneProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-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: + - Zone Protection Profiles + summary: Update a zone protection profile + description: | + Update an existing zone protection profile. + operationId: UpdateZoneProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/zone-protection-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: + - Zone Protection Profiles + summary: Delete a zone protection profile + description: | + Delete a zone protection profile. + operationId: DeleteZoneProtectionProfilesByID + 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' + /nat-rules: + get: + tags: + - NAT Rules + summary: List NAT rules + description: | + Retrieve a list of NAT rules. + operationId: ListNatRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/position' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/nat-rules' + 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: + - NAT Rules + summary: Create a NAT rule + description: | + Create a new NAT rule. + operationId: CreateNatRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + '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' + '/nat-rules/{id}': + get: + tags: + - NAT Rules + summary: Get a NAT rule + description: | + Get an existing NAT rule. + operationId: GetNatRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + '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: + - NAT Rules + summary: Update a NAT rule + description: | + Update an existing NAT rule. + operationId: UpdateNatRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + - $ref: '#/components/parameters/position' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/nat-rules' + '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: + - NAT Rules + summary: Delete a NAT rule + description: | + Delete a NAT rule. + operationId: DeleteNatRulesByID + 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' + /aggregate-interfaces: + get: + tags: + - Aggregate Interfaces + summary: List Aggregate Interfaces + description: | + Retrieve a list of Aggregate Interfaces. + operationId: ListAggregateInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/aggregate-interfaces' + 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: + - Aggregate Interfaces + summary: Create an Aggregate Interface + description: | + Create a new Aggregate Interface. + operationId: CreateAggregateInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + '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' + '/aggregate-interfaces/{id}': + get: + tags: + - Aggregate Interfaces + summary: Get an Aggregate Interface + description: | + Get an existing Aggregate Interface. + operationId: GetAggregateInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + '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: + - Aggregate Interfaces + summary: Update an Aggregate Interface + description: | + Update an existing Aggregate Interface. + operationId: UpdateAggregateInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/aggregate-interfaces' + '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: + - Aggregate Interfaces + summary: Delete an Aggregate Interface + description: | + Delete an Aggregate Interface. + operationId: DeleteAggregateInterfacesByID + 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' + /ethernet-interfaces: + get: + tags: + - Ethernet Interfaces + summary: List ethernet interfaces + description: | + Retrieve a list of ethernet interfaces. + operationId: ListEthernetInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ethernet-interfaces' + 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: + - Ethernet Interfaces + summary: Create an ethernet interface + description: | + Create a new ethernet interface. + operationId: CreateEthernetInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + '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' + '/ethernet-interfaces/{id}': + get: + tags: + - Ethernet Interfaces + summary: Get an ethernet interface + description: | + Get an existing ethernet interface. + operationId: GetEthernetInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + '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: + - Ethernet Interfaces + summary: Update an ethernet interface + description: | + Update an existing ethernet interface. + operationId: UpdateEthernetInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ethernet-interfaces' + '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: + - Ethernet Interfaces + summary: Delete an ethernet interface + description: | + Delete an ethernet interface. + operationId: DeleteEthernetInterfacesByID + 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' + /layer2-subinterfaces: + get: + tags: + - Layer 2 Subinterfaces + summary: List layer 2 subinterfaces + description: | + Retrieve a list of layer 2 subinterfaces. + operationId: ListLayer2Subinterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/layer2-subinterfaces' + 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: + - Layer 2 Subinterfaces + summary: Create a layer 2 subinterface + description: | + Create a new layer 2 subinterface. + operationId: CreateLayer2Subinterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + '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' + '/layer2-subinterfaces/{id}': + get: + tags: + - Layer 2 Subinterfaces + summary: Get a layer 2 subinterface + description: | + Get an existing layer 2 subinterface. + operationId: GetLayer2SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + '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: + - Layer 2 Subinterfaces + summary: Update a layer 2 subinterface + description: | + Update an existing layer 2 subinterface. + operationId: UpdateLayer2SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer2-subinterfaces' + '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: + - Layer 2 Subinterfaces + summary: Delete a layer 2 subinterface + description: | + Delete a layer 2 subinterface. + operationId: DeleteLayer2SubinterfacesByID + 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' + /layer3-subinterfaces: + get: + tags: + - Layer 3 Subinterfaces + summary: List layer 3 subinterfaces + description: | + Retrieve a list of layer 3 subinterfaces. + operationId: ListLayer3Subinterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/layer3-subinterfaces' + 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: + - Layer 3 Subinterfaces + summary: Create a layer 3 subinterface + description: | + Create a new layer 3 subinterface. + operationId: CreateLayer3Subinterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + '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' + '/layer3-subinterfaces/{id}': + get: + tags: + - Layer 3 Subinterfaces + summary: Get a layer 3 subinterface + description: | + Get an existing layer 3 subinterface. + operationId: GetLayer3SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + '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: + - Layer 3 Subinterfaces + summary: Update a layer 3 subinterface + description: | + Update an existing layer 3 subinterface. + operationId: UpdateLayer3SubinterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/layer3-subinterfaces' + '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: + - Layer 3 Subinterfaces + summary: Delete a layer 3 subinterface + description: | + Delete a layer 3 subinterface. + operationId: DeleteLayer3SubinterfacesByID + 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' + /loopback-interfaces: + get: + tags: + - Loopback Interfaces + summary: List loopback interfaces + description: | + Retrieve a list of loopback interfaces. + operationId: ListLoopbackInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/loopback-interfaces' + 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: + - Loopback Interfaces + summary: Create a loopback interface + description: | + Create a new loopback interface. + operationId: CreateLoopbackInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + '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' + '/loopback-interfaces/{id}': + get: + tags: + - Loopback Interfaces + summary: Get a loopback interface + description: | + Get an existing loopback interface. + operationId: GetLoopbackInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + '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: + - Loopback Interfaces + summary: Update a loopback interface + description: | + Update an existing loopback interface. + operationId: UpdateLoopbackInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/loopback-interfaces' + '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: + - Loopback Interfaces + summary: Delete a loopback interface + description: | + Delete a loopback interface. + operationId: DeleteLoopbackInterfacesByID + 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' + /interface-management-profiles: + get: + tags: + - Interface Management Profiles + summary: List interface management profiles + description: | + Retrieve a list of interface management profiles. + operationId: ListInterfaceManagementProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/interface-management-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: + - Interface Management Profiles + summary: Create a interface management profiles + description: | + Create a new interface management profile. + operationId: CreateInterfaceManagementProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-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' + '/interface-management-profiles/{id}': + get: + tags: + - Interface Management Profiles + summary: Get an interface management profile + description: | + Get an existing interface management profile. + operationId: GetInterfaceManagementProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-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: + - Interface Management Profiles + summary: Update an interface management profile + description: | + Update an existing interface management profile. + operationId: UpdateInterfaceManagementProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/interface-management-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: + - Interface Management Profiles + summary: Delete an interface management profile + description: | + Delete an interface management profile. + operationId: DeleteInterfaceManagementProfilesByID + 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' + /tunnel-interfaces: + get: + tags: + - Tunnel Interfaces + summary: List tunnel interfaces + description: | + Retrieve a list of tunnel interfaces. + operationId: ListTunnelInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/tunnel-interfaces' + 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: + - Tunnel Interfaces + summary: Create a tunnel interface + description: | + Create a new tunnel interface. + operationId: CreateTunnelInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + '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' + '/tunnel-interfaces/{id}': + get: + tags: + - Tunnel Interfaces + summary: Get a tunnel interface + description: | + Get an existing tunnel interface. + operationId: GetTunnelInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + '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: + - Tunnel Interfaces + summary: Update a tunnel interface + description: | + Update an existing tunnel interface. + operationId: UpdateTunnelInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tunnel-interfaces' + '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: + - Tunnel Interfaces + summary: Delete a tunnel interface + description: | + Delete a tunnel interface. + operationId: DeleteTunnelInterfacesByID + 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' + /vlan-interfaces: + get: + tags: + - VLAN Interfaces + summary: List VLAN interfaces + description: | + Retrieve a list of VLAN interfaces. + operationId: ListVLANInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/vlan-interfaces' + 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: + - VLAN Interfaces + summary: Create a VLAN interface + description: | + Create a new VLAN interface. + operationId: CreateVLANInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + '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' + '/vlan-interfaces/{id}': + get: + tags: + - VLAN Interfaces + summary: Get a VLAN interface + description: | + Get an existing VLAN interface. + operationId: GetVLANInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + '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: + - VLAN Interfaces + summary: Update a VLAN interface + description: | + Update an existing VLAN interface. + operationId: UpdateVLANlInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vlan-interfaces' + '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: + - VLAN Interfaces + summary: Delete a VLAN interface + description: | + Delete a VLAN interface. + operationId: DeleteVLANInterfacesByID + 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' + /bgp-address-family-profiles: + get: + tags: + - BGP Address Family Profiles + summary: List BGP address family profiles + description: | + Retrieve a list of BGP address family profiles. + operationId: ListBGPAddressFamilyProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-address-family-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: + - BGP Address Family Profiles + summary: Create a BGP address family profile + description: | + Create a new BGP address family profile. + operationId: CreateBGPAddressFamilyProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-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' + '/bgp-address-family-profiles/{id}': + get: + tags: + - BGP Address Family Profiles + summary: Get a BGP address family profile + description: | + Get an existing BGP address family profile. + operationId: GetBGPAddressFamilyProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-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: + - BGP Address Family Profiles + summary: Update a BGP address family profile + description: | + Update an existing BGP address family profile. + operationId: UpdateBGPAddressFamilyProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-address-family-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: + - BGP Address Family Profiles + summary: Delete a BGP address family profile + description: | + Delete a BGP address family profile. + operationId: DeleteBGPAddressFamilyProfilesByID + 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' + /bgp-auth-profiles: + get: + tags: + - BGP Authentication Profiles + summary: List BGP authentication profiles + description: | + Retrieve a list of BGP authentication profiles. + operationId: ListBGPAuthenticationProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-auth-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: + - BGP Authentication Profiles + summary: Create a BGP authentication profile + description: | + Create a new BGP authentication profile. + operationId: CreateBGPAuthenticationProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-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' + '/bgp-auth-profiles/{id}': + get: + tags: + - BGP Authentication Profiles + summary: Get a BGP authentication profile + description: | + Get an existing BGP authentication profile. + operationId: GetBGPAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-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: + - BGP Authentication Profiles + summary: Update a BGP authentication profile + description: | + Update an existing BGP authentication profile. + operationId: UpdateBGPAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-auth-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: + - BGP Authentication Profiles + summary: Delete a BGP authentication profile + description: | + Delete a BGP authentication profile. + operationId: DeleteBGPAuthenticationProfilesByID + 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' + /bgp-filtering-profiles: + get: + tags: + - BGP Filtering Profiles + summary: List BGP filtering profiles + description: | + Retrieve a list of BGP filtering profiles. + operationId: ListBGPFilteringProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-filtering-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: + - BGP Filtering Profiles + summary: Create a BGP filtering profile + description: | + Create a new BGP filtering profile. + operationId: CreateBGPFilteringProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-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' + '/bgp-filtering-profiles/{id}': + get: + tags: + - BGP Filtering Profiles + summary: Get a BGP filtering profile + description: | + Get an existing BGP filtering profile. + operationId: GetBGPFilteringProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-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: + - BGP Filtering Profiles + summary: Update a BGP filtering profile + description: | + Update an existing BGP filtering profile. + operationId: UpdateBGPFilteringProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-filtering-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: + - BGP Filtering Profiles + summary: Delete a BGP filtering profile + description: | + Delete a BGP filtering profile. + operationId: DeleteBGPFilteringProfilesByID + 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' + /bgp-redistribution-profiles: + get: + tags: + - BGP Redistribution Profiles + summary: List BGP redistribution profiles + description: | + Retrieve a list of BGP redistribution profiles. + operationId: ListBGPRedistributionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-redistribution-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: + - BGP Redistribution Profiles + summary: Create a BGP redistribution profile + description: | + Create a new BGP redistribution profile. + operationId: CreateBGPRedistributionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-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' + '/bgp-redistribution-profiles/{id}': + get: + tags: + - BGP Redistribution Profiles + summary: Get a BGP redistribution profile + description: | + Get an existing BGP redistribution profile. + operationId: GetBGPRedistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-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: + - BGP Redistribution Profiles + summary: Update a BGP redistribution profile + description: | + Update an existing BGP redistribution profile. + operationId: UpdateBGPRedistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-redistribution-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: + - BGP Redistribution Profiles + summary: Delete a BGP redistribution profile + description: | + Delete a BGP redistribution profile. + operationId: DeleteBGPRedistributionProfilesByID + 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' + /bgp-route-map-redistributions: + get: + tags: + - BGP Route Map Redistributions + summary: List BGP route map redistributions + description: | + Retrieve a list of BGP route map redistributions. + operationId: ListBGPRouteMapRedistributions + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-route-map-redistributions' + 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: + - BGP Route Map Redistributions + summary: Create a BGP route map redistribution + description: | + Create a new BGP route map redistribution. + operationId: CreateBGPRouteMapRedistributions + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + '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' + '/bgp-route-map-redistributions/{id}': + get: + tags: + - BGP Route Map Redistributions + summary: Get a BGP route map redistribution + description: | + Get an existing BGP route map redistribution. + operationId: GetBGPRouteMapRedistributionsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + '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: + - BGP Route Map Redistributions + summary: Update a BGP route map redistribution + description: | + Update an existing BGP route map redistribution. + operationId: UpdateBGPRouteMapRedistributionsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-map-redistributions' + '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: + - BGP Route Map Redistributions + summary: Delete a BGP route map redistribution + description: | + Delete a BGP route map redistribution. + operationId: DeleteBGPRouteMapRedistributionsByID + 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' + /bgp-route-maps: + get: + tags: + - BGP Route Maps + summary: List BGP route maps + description: | + Retrieve a list of BGP route maps. + operationId: ListBGPRouteMaps + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/bgp-route-maps' + 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: + - BGP Route Maps + summary: Create a BGP route map + description: | + Create a new BGP route map. + operationId: CreateBGPRouteMaps + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + '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' + '/bgp-route-maps/{id}': + get: + tags: + - BGP Route Maps + summary: Get a BGP route map + description: | + Get an existing BGP route map. + operationId: GetBGPRouteMapsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + '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: + - BGP Route Maps + summary: Update a BGP route map + description: | + Update an existing BGP route map. + operationId: UpdateBGPRouteMapsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/bgp-route-maps' + '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: + - BGP Route Maps + summary: Delete a BGP route map + description: | + Delete a BGP route map. + operationId: DeleteBGPRouteMapsByID + 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' + /link-tags: + get: + tags: + - Link Tags + summary: List link tags + description: | + Retrieve a list of link tags. + operationId: ListLinkTags + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/link-tags' + 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: + - Link Tags + summary: Create a link tag + description: | + Create a new link tag. + operationId: CreateLinkTags + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + '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' + '/link-tags/{id}': + get: + tags: + - Link Tags + summary: Get a link tag + description: | + Get an existing link tag. + operationId: GetLinkTagsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + '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: + - Link Tags + summary: Update a link tag + description: | + Update an existing link tag. + operationId: UpdateLinkTagsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/link-tags' + '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: + - Link Tags + summary: Delete a link tag + description: | + Delete a link tag. + operationId: DeleteLinkTagsByID + 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' + /logical-routers: + get: + tags: + - Logical Routers + summary: List logical routers + description: | + Retrieve a list of logical routers. + operationId: ListLogicalRouters + parameters: + - $ref: '#/components/parameters/pagination-optional' + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/logical-routers' + 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: + - Logical Routers + summary: Create a logical router + description: | + Create a new logical router. + operationId: CreateLogicalRouters + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + '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' + '/logical-routers/{id}': + get: + tags: + - Logical Routers + summary: Get a logical router + description: | + Get an existing logical router. + operationId: GetLogicalRoutersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + '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: + - Logical Routers + summary: Update a logical router + description: | + Update an existing logical router. + operationId: UpdateLogicalRoutersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/logical-routers' + '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: + - Logical Routers + summary: Delete a logical router + description: | + Delete a logical router. + operationId: DeleteLogicalRoutersByID + 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' + /ospf-auth-profiles: + get: + tags: + - OSPF Authentication Profiles + summary: List OSPF authentication profiles + description: | + Retrieve a list of OSPF authentication profiles. + operationId: ListOSPFAuthenticationProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/ospf-auth-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: + - OSPF Authentication Profiles + summary: Create an OSPF authentication profile + description: | + Create a new OSPF authentication profile. + operationId: CreateOSPFAuthenticationProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-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' + '/ospf-auth-profiles/{id}': + get: + tags: + - OSPF Authentication Profiles + summary: Get an OSPF authentication profile + description: | + Get an existing OSPF authentication profile. + operationId: GetOSPFAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-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: + - OSPF Authentication Profiles + summary: Update an OSPF authentication profile + description: | + Update an existing OSPF authentication profile. + operationId: UpdateOSPFAuthenticationProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ospf-auth-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: + - OSPF Authentication Profiles + summary: Delete an OSPF authentication profile + description: | + Delete an OSPF authentication profile. + operationId: DeleteOSPFAuthenticationProfilesByID + 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' + /pbf-rules: + get: + tags: + - PBF Rules + summary: List PBF rules + description: | + Retrieve a list of PBF rules. + operationId: ListPBFRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/pbf-rules' + 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: + - PBF Rules + summary: Create a PBF rule + description: | + Create a new PBF rule. + operationId: CreatePBFRules + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + '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' + '/pbf-rules/{id}': + get: + tags: + - PBF Rules + summary: Get a PBF rule + description: | + Get an existing PBF rule. + operationId: GetPBFRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + '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: + - PBF Rules + summary: Update a PBF rule + description: | + Update an existing PBF rule. + operationId: UpdatePBFRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pbf-rules' + '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: + - PBF Rules + summary: Delete a PBF rule + description: | + Delete a PBF rule. + operationId: DeletePBFRulesByID + 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' + /route-access-lists: + get: + tags: + - Route Access Lists + summary: List route access lists + description: | + Retrieve a list of route access lists. + operationId: ListRouteAccessLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-access-lists' + 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: + - Route Access Lists + summary: Create a route access list + description: | + Create a new PBF rule. + operationId: CreateRouteAccessLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + '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' + '/route-access-lists/{id}': + get: + tags: + - Route Access Lists + summary: Get a route access list + description: | + Get an existing route access list. + operationId: GetRouteAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + '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: + - Route Access Lists + summary: Update a route access list + description: | + Update an existing route access list. + operationId: UpdateRouteAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-access-lists' + '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: + - Route Access Lists + summary: Delete a route access list + description: | + Delete a route access list. + operationId: DeleteRouteAccessListsByID + 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' + /route-community-lists: + get: + tags: + - Route Community Lists + summary: List route community lists + description: | + Retrieve a list of route community lists. + operationId: ListRouteCommunityLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-community-lists' + 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: + - Route Community Lists + summary: Create a route community list + description: | + Create a new route community list. + operationId: CreateRouteCommunityLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + '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' + '/route-community-lists/{id}': + get: + tags: + - Route Community Lists + summary: Get a route community list + description: | + Get an existing route community list. + operationId: GetRouteCommunityListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + '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: + - Route Community Lists + summary: Update a route community list + description: | + Update an existing route community list. + operationId: UpdateRouteCommunityListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-community-lists' + '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: + - Route Community Lists + summary: Delete a route community list + description: | + Delete a route community list. + operationId: DeleteRouteCommunityListsByID + 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' + /route-path-access-lists: + get: + tags: + - Route Path Access Lists + summary: List route path access lists + description: | + Retrieve a list of route path access lists. + operationId: ListRoutePathAccessLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-path-access-lists' + 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: + - Route Path Access Lists + summary: Create a route path access list + description: | + Create a new route path access list. + operationId: CreateRoutePathAccessLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + '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' + '/route-path-access-lists/{id}': + get: + tags: + - Route Path Access Lists + summary: Get a route path access list + description: | + Get an existing route path access list. + operationId: GetRoutePathAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + '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: + - Route Path Access Lists + summary: Update a route path access list + description: | + Update an existing route path access list. + operationId: UpdateRoutePathAccessListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-path-access-lists' + '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: + - Route Path Access Lists + summary: Delete a route path access list + description: | + Delete a route path access list. + operationId: DeleteRoutePathAccessListsByID + 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' + /route-prefix-lists: + get: + tags: + - Route Prefix Lists + summary: List route prefix lists + description: | + Retrieve a list of route prefix lists. + operationId: ListRoutePrefixLists + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/route-prefix-lists' + 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: + - Route Prefix Lists + summary: Create a route prefix list + description: | + Create a new route prefix list. + operationId: CreateRoutePrefixLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + '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' + '/route-prefix-lists/{id}': + get: + tags: + - Route Prefix Lists + summary: Get a route prefix list + description: | + Get an existing route prefix list. + operationId: GetRoutePrefixListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + '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: + - Route Prefix Lists + summary: Update a route prefix list + description: | + Update an existing route prefix list. + operationId: UpdateRoutePrefixListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/route-prefix-lists' + '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: + - Route Prefix Lists + summary: Delete a route prefix list + description: | + Delete a route prefix list. + operationId: DeleteRoutePrefixListsByID + 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' + /auto-vpn-clusters: + get: + tags: + - Auto VPN Clusters + summary: List Auto VPN clusters + description: | + Retrieve a list of Auto VPN clusters. + operationId: ListAutoVPNClusters + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/auto-vpn-clusters' + 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: + - Auto VPN Clusters + summary: Create an Auto VPN cluster + description: | + Create a new Auto VPN cluster. + operationId: CreateAutoVPNClusters + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + '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' + '/auto-vpn-clusters/{id}': + get: + tags: + - Auto VPN Clusters + summary: Get an Auto VPN cluster + description: | + Get an existing Auto VPN clusters. + operationId: GetAutoVPNClustersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + '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: + - Auto VPN Clusters + summary: Update an Auto VPN cluster + description: | + Update an existing Auto VPN cluster. + operationId: UpdateAutoVPNClustersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-clusters' + '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: + - Auto VPN Clusters + summary: Delete an Auto VPN cluster + description: | + Delete an Auto VPN cluster. + operationId: DeleteAutoVPNClustersByID + 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' + /auto-vpn-monitor: + get: + tags: + - Auto VPN Monitor + summary: Get Auto VPN status + description: | + Get the status of the Auto VPN clusters. + operationId: GetAutoVPNMonitor + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/auto-vpn-monitor' + '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' + /auto-vpn-push: + post: + tags: + - Auto VPN Config Push + summary: Push Auto VPN configs + description: | + Push Auto VPN configs. + operationId: CreateAutoVPNPushConfigs + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-push-config' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-push-response' + '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' + /auto-vpn-settings: + get: + tags: + - Auto VPN Settings + summary: Get Auto VPN settings + description: | + Retrieve the Auto VPN settings. + operationId: GetAutoVPNSettings + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-settings' + '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: + - Auto VPN Settings + summary: Update Auto VPN settings + description: | + Update Auto VPN settings. + operationId: UpdateAutoVPNSettings + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-settings' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-vpn-settings' + '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' + + /sdwan-error-correction-profiles: + get: + tags: + - SD-WAN Error Correction Profiles + summary: List SD-WAN error correction profiles + description: | + Retrieve a list of SD-WAN error correction profiles. + operationId: ListSDWANErrorCorrectionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-error-correction-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: + - SD-WAN Error Correction Profiles + summary: Create an SD-WAN error correction profile + description: | + Create a new SD-WAN error correction profile. + operationId: CreateSDWANErrorCorrectionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-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' + '/sdwan-error-correction-profiles/{id}': + get: + tags: + - SD-WAN Error Correction Profiles + summary: Get an SD-WAN error correction profile + description: | + Get an existing SD-WAN error correction profile. + operationId: GetSDWANErrorCorrectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-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: + - SD-WAN Error Correction Profiles + summary: Update an SD-WAN error correction profile + description: | + Update an existing SD-WAN error correction profile. + operationId: UpdateSDWANErrorCorrectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-error-correction-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: + - SD-WAN Error Correction Profiles + summary: Delete an SD-WAN error correction profile + description: | + Delete an SD-WAN error correction profile. + operationId: DeleteSDWANErrorCorrectionProfilesByID + 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' + /sdwan-path-quality-profiles: + get: + tags: + - SD-WAN Path Quality Profiles + summary: List SD-WAN path quality profiles + description: | + Retrieve a list of SD-WAN path quality profiles. + operationId: ListSDWANPathQualityProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-path-quality-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: + - SD-WAN Path Quality Profiles + summary: Create an SD-WAN path quality profile + description: | + Create a new SD-WAN path quality profile. + operationId: CreateSDWANPathQualityProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-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' + '/sdwan-path-quality-profiles/{id}': + get: + tags: + - SD-WAN Path Quality Profiles + summary: Get an SD-WAN path quality profile + description: | + Get an existing SD-WAN path quality profile. + operationId: GetSDWANPathQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-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: + - SD-WAN Path Quality Profiles + summary: Update an SD-WAN path quality profile + description: | + Update an existing SD-WAN path quality profile. + operationId: UpdateSDWANPathQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-path-quality-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: + - SD-WAN Path Quality Profiles + summary: Delete an SD-WAN path quality profile + description: | + Delete an SD-WAN path quality profile. + operationId: DeleteSDWANPathQualityProfilesByID + 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' + /sdwan-rules: + get: + tags: + - SD-WAN Rules + summary: List SD-WAN rules + description: | + Retrieve a list of SD-WAN rules. + operationId: ListSDWANRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-rules' + 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: + - SD-WAN Rules + summary: Create an SD-WAN rule + description: | + Create a new SD-WAN rule. + operationId: CreateSDWANRules + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + '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' + '/sdwan-rules/{id}': + get: + tags: + - SD-WAN Rules + summary: Get an SD-WAN rule + description: | + Get an existing SD-WAN rule. + operationId: GetSDWANRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + '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: + - SD-WAN Rules + summary: Update an SD-WAN rule + description: | + Update an existing SD-WAN rule. + operationId: UpdateSDWANRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-rules' + '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: + - SD-WAN Rules + summary: Delete an SD-WAN rule + description: | + Delete an SD-WAN rule. + operationId: DeleteSDWANRulesByID + 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' + /sdwan-saas-quality-profiles: + get: + tags: + - SD-WAN SaaS Quality Profiles + summary: List SD-WAN SaaS quality profiles + description: | + Retrieve a list of SD-WAN SaaS quality profiles. + operationId: ListSDWANSaaSQualityProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-saas-quality-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: + - SD-WAN SaaS Quality Profiles + summary: Create an SD-WAN SaaS quality profile + description: | + Create a new SD-WAN SaaS quality profile. + operationId: CreateSDWANSaaSQualityProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-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' + '/sdwan-saas-quality-profiles/{id}': + get: + tags: + - SD-WAN SaaS Quality Profiles + summary: Get an SD-WAN SaaS quality profile + description: | + Get an existing SD-WAN SaaS quality profile. + operationId: GetSDWANSaaSQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-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: + - SD-WAN SaaS Quality Profiles + summary: Update an SD-WAN SaaS quality profile + description: | + Update an existing SD-WAN SaaS quality profile. + operationId: UpdateSDWANSaaSQualityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-saas-quality-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: + - SD-WAN SaaS Quality Profiles + summary: Delete an SD-WAN SaaS quality profile + description: | + Delete an SD-WAN SaaS quality profile. + operationId: DeleteSDWANSaaSQualityProfilesByID + 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' + /sdwan-traffic-distribution-profiles: + get: + tags: + - SD-WAN Traffic Distribution Profiles + summary: List SD-WAN traffic distribution profiles + description: | + Retrieve a list of SD-WAN traffic distribution profiles. + operationId: ListSDWANTrafficDistributionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/sdwan-traffic-distribution-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: + - SD-WAN Traffic Distribution Profiles + summary: Create an SD-WAN traffic distribution profile + description: | + Create a new SD-WAN traffic distribution profile. + operationId: CreateSDWANTrafficDistributionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-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' + '/sdwan-traffic-distribution-profiles/{id}': + get: + tags: + - SD-WAN Traffic Distribution Profiles + summary: Get an SD-WAN traffic distribution profile + description: | + Get an existing SD-WAN traffic distribution profile. + operationId: GetSDWANTrafficDistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-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: + - SD-WAN Traffic Distribution Profiles + summary: Update an SD-WAN traffic distribution profile + description: | + Update an existing SD-WAN traffic distribution profile. + operationId: UpdateSDWANTrafficDistributionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/sdwan-traffic-distribution-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: + - SD-WAN Traffic Distribution Profiles + summary: Delete an SD-WAN traffic distribution profile + description: | + Delete an SD-WAN traffic distribution profile. + operationId: DeleteSDWANTrafficDistributionProfilesByID + 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' + /dhcp-interfaces: + get: + tags: + - DHCP Interfaces + summary: List DHCP interfaces + description: | + Retrieve a list of DHCP interfaces. + operationId: ListDHCPInterfaces + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dhcp-interfaces' + 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: + - DHCP Interfaces + summary: Create a DHCP interface + description: | + Create a new DHCP interface. + operationId: CreateDHCPInterfaces + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + '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' + '/dhcp-interfaces/{id}': + get: + tags: + - DHCP Interfaces + summary: Get a DHCP interface + description: | + Get an existing DHCP interface. + operationId: GetDHCPInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + '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: + - DHCP Interfaces + summary: Update a DHCP interface + description: | + Update an existing DHCP interface. + operationId: UpdateDHCPInterfacesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dhcp-interfaces' + '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: + - DHCP Interfaces + summary: Delete a DHCP interface + description: | + Delete a DHCP interface. + operationId: DeleteDHCPInterfacesByID + 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' + /dns-proxies: + get: + tags: + - DNS Proxies + summary: List DNS proxies + description: | + Retrieve a list of DNS proxies. + operationId: ListDNSProxies + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dns-proxies' + 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: + - DNS Proxies + summary: Create a DNS proxy + description: | + Create a new DNS proxy. + operationId: CreateDNSProxies + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + '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' + '/dns-proxies/{id}': + get: + tags: + - DNS Proxies + summary: Get a DNS proxy + description: | + Get an existing DNS proxy. + operationId: GetDNSProxiesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + '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: + - DNS Proxies + summary: Update a DNS proxy + description: | + Update an existing DNS proxy. + operationId: UpdateDNSProxiesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-proxies' + '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: + - DNS Proxies + summary: Delete a DNS proxy + description: | + Delete a DNS proxy. + operationId: DeleteDNSProxiesByID + 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' + /ssl-decryption-settings: + get: + tags: + - Ssl Decryption Settings + summary: GET Ssl Decryption Settings + description: GET Ssl Decryption Settings + operationId: getSslDecryptionSettings + parameters: + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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: + - Ssl Decryption Settings + summary: POST Ssl Decryption Settings + description: POST Ssl Decryption Settings + operationId: postSslDecryptionSettings + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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' + put: + tags: + - Ssl Decryption Settings + summary: PUT Ssl Decryption Settings + description: PUT Ssl Decryption Settings + operationId: putSslDecryptionSettings + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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: + - Ssl Decryption Settings + summary: DELETE Ssl Decryption Settings + description: DELETE Ssl Decryption Settings + operationId: deleteSslDecryptionSettings + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/ssl-decryption-settings' + '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' + /remote-networks-license-info: + get: + summary: Get Remote Networks License Info + description: Returns operational license model and site license counts. + operationId: getRemoteNetworksLicenseInfo + tags: + - Remote Networks License + responses: + '200': + description: License information retrieved successfully. + content: + application/json: + schema: + $ref: '#/components/schemas/LicenseResult' + '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' + '500': + description: Failed to fetch license information. + content: + application/json: + schema: + type: object + properties: + error: + type: string + example: Failed to retrieve license data +components: + parameters: + name: + name: name + in: query + description: The name of the configuration resource + required: false + schema: + type: string + pagination-optional: + name: pagination + in: query + required: false + schema: + type: boolean + description: The parameter to mention if the response should be paginated. By default, its set to false + 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 + folder: + name: folder + in: query + description: | + The folder in which the resource is defined + required: false + schema: + type: string + snippet: + name: snippet + in: query + description: | + The snippet in which the resource is defined + required: false + schema: + type: string + device: + name: device + in: query + description: | + The device in which the resource is defined + required: false + schema: + type: string + position: + name: position + in: query + description: The relative position of the rule + required: true + schema: + enum: + - pre + - post + default: pre + 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 + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + ConfigMatchList: + type: object + properties: + send_to_panorama: + type: boolean + description: + type: string + filter: + type: string + name: + type: string + send_email: + type: array + items: + type: object + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + GlobalprotectMatchList: + type: object + properties: + send_email: + type: array + items: + type: object + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + registration: + type: object + properties: + localhost: + type: object + properties: + panorama: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + action: + type: string + name: + type: string + quarantine: + type: boolean + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + description: + type: string + filter: + type: string + HipmatchMatchList: + type: object + properties: + send_email: + type: array + items: + type: object + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + registration: + type: object + properties: + localhost: + type: object + properties: + panorama: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + action: + type: string + name: + type: string + quarantine: + type: boolean + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + description: + type: string + filter: + type: string + IptagMatchList: + type: object + properties: + description: + type: string + filter: + type: string + send_email: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + actions: + type: array + items: + type: object + properties: + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + action: + type: string + registration: + type: object + properties: + localhost: + type: object + properties: + panorama: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + name: + type: string + name: + type: string + quarantine: + type: boolean + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + SystemMatchList: + type: object + properties: + description: + type: string + filter: + type: string + name: + type: string + send_email: + type: array + items: + type: object + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + send_to_panorama: + type: boolean + UseridMatchList: + type: object + properties: + send_http: + type: array + items: + type: object + send_snmptrap: + type: array + items: + type: object + send_syslog: + type: array + items: + type: object + description: + type: string + filter: + type: string + name: + type: string + quarantine: + type: boolean + send_to_panorama: + type: boolean + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + integration: + type: object + properties: + action: + type: string + tagging: + type: object + properties: + action: + type: string + registration: + type: object + properties: + remote: + type: object + properties: + http_profile: + type: string + localhost: + type: object + properties: + panorama: + type: object + properties: + tags: + type: array + items: + type: object + target: + type: string + timeout: + type: integer + send_email: + type: array + items: + type: object + LicenseInfo: + type: object + properties: + license_type: + type: string + example: FWAAS-SITE-1000Mbps + count: + type: integer + example: 1 + LicenseResult: + type: object + properties: + license_model: + type: array + items: + type: string + example: [ "agg-bandwidth", "site" ] + purchased_licenses: + type: array + items: + $ref: '#/components/schemas/LicenseInfo' + configured_licenses: + type: array + items: + $ref: '#/components/schemas/LicenseInfo' + operational_license: + type: string + description: > + Indicates the currently active license model. + Can be "agg-bandwidth", "site", or "none". + example: site + ssl-decryption-settings: + type: object + properties: + disabled_ssl_exclude_cert_from_predefined: + type: array + items: + type: object + forward_trust_certificate: + type: object + properties: + ecdsa: + type: string + rsa: + type: string + forward_untrust_certificate: + type: object + properties: + rsa: + type: string + ecdsa: + type: string + root_ca_exclude_list: + type: array + items: + type: object + ssl_exclude_cert: + type: array + items: + type: object + properties: + description: + type: string + exclude: + type: boolean + name: + type: string + trusted_root_CA: + type: array + items: + type: object + ike-crypto-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 + hash: + type: array + items: + type: string + enum: + - md5 + - sha1 + - sha256 + - sha384 + - sha512 + - non-auth + description: Hashing algorithm + default: sha1 + encryption: + type: array + description: Encryption algorithm + items: + type: string + enum: + - des + - 3des + - aes-128-cbc + - aes-192-cbc + - aes-256-cbc + - aes-128-gcm + - aes-256-gcm + default: aes-128-cbc + dh_group: + type: array + items: + type: string + enum: + - group1 + - group2 + - group5 + - group14 + - group19 + - group20 + description: Phase-1 DH group + default: group2 + lifetime: + type: object + description: Ike crypto profile lifetime + oneOf: + - type: object + title: seconds + properties: + seconds: + type: integer + description: specify lifetime in seconds + minimum: 180 + maximum: 65535 + - type: object + title: minutes + properties: + minutes: + type: integer + description: specify lifetime in minutes + minimum: 3 + maximum: 65535 + - type: object + title: hours + properties: + hours: + type: integer + description: specify lifetime in hours + minimum: 1 + maximum: 65535 + - type: object + title: days + properties: + days: + type: integer + description: specify lifetime in days + minimum: 1 + maximum: 365 + authentication_multiple: + type: integer + description: IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled + maximum: 50 + default: 0 + required: + - name + - hash + - encryption + - dh_group + 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 + ike-gateways: + 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: 63 + local_address: + type: object + properties: + interface: + type: string + description: Interface variable or hardcoded vlan/loopback. vlan will be passed as default value + default: vlan + authentication: + type: object + oneOf: + - type: object + title: pre_shared_key + properties: + pre_shared_key: + type: object + properties: + key: + type: string + format: password + - type: object + title: certificate + properties: + certificate: + type: object + properties: + allow_id_payload_mismatch: + type: boolean + certificate_profile: + type: string + local_certificate: + type: object + properties: + local_certificate_name: + type: string + strict_validation_revocation: + type: boolean + use_management_as_source: + type: boolean + peer_id: + type: object + properties: + type: + enum: + - ipaddr + - keyid + - fqdn + - ufqdn + id: + type: string + description: Peer ID string + pattern: '^(.+\@[\*a-zA-Z0-9.-]+)$|^([\*$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\,|[^,])+)$' + minLength: 1 + maxLength: 1024 + local_id: + type: object + properties: + type: + type: string + id: + type: string + description: Local ID string + pattern: '^(.+\@[a-zA-Z0-9.-]+)$|^([$a-zA-Z0-9_:.-]+)$|^(([[:xdigit:]][[:xdigit:]])+)$|^([a-zA-Z0-9.]+=(\\,|[^,])+[, ]+)*([a-zA-Z0-9.]+=(\\,|[^,])+)$' + minLength: 1 + maxLength: 1024 + protocol: + type: object + properties: + ikev1: + type: object + properties: + ike_crypto_profile: + type: string + dpd: + type: object + properties: + enable: + type: boolean + ikev2: + type: object + properties: + ike_crypto_profile: + type: string + dpd: + type: object + properties: + enable: + type: boolean + version: + enum: + - ikev2-preferred + - ikev1 + - ikev2 + default: ikev2-preferred + protocol_common: + type: object + properties: + nat_traversal: + type: object + description: Enables NAT traversal for the IKE gateway. + properties: + enable: + type: boolean + default: true + passive_mode: + type: boolean + default: false + fragmentation: + type: object + properties: + enable: + enum: + - false + default: false + peer_address: + type: object + oneOf: + - type: object + title: ip + properties: + ip: + type: string + description: peer gateway has static IP address + - type: object + title: fqdn + properties: + fqdn: + type: string + description: peer gateway FQDN name + maxLength: 255 + - type: object + title: dynamic + properties: + dynamic: + type: object + default: {} + required: + - name + - authentication + - protocol + - peer_address + 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 + ipsec-crypto-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 + dh_group: + enum: + - no-pfs + - group1 + - group2 + - group5 + - group14 + - group19 + - group20 + description: phase-2 DH group (PFS DH group) + default: group2 + lifetime: + type: object + description: Ipsec crypto profile lifetime + oneOf: + - type: object + title: seconds + properties: + seconds: + type: integer + description: specify lifetime in seconds + minimum: 180 + maximum: 65535 + - type: object + title: minutes + properties: + minutes: + type: integer + description: specify lifetime in minutes + minimum: 3 + maximum: 65535 + - type: object + title: hours + properties: + hours: + type: integer + description: specify lifetime in hours + minimum: 1 + maximum: 65535 + - type: object + title: days + properties: + days: + type: integer + description: specify lifetime in days + minimum: 1 + maximum: 365 + lifesize: + type: object + oneOf: + - type: object + title: kb + properties: + kb: + type: integer + description: specify lifesize in kilobytes(KB) + minimum: 1 + maximum: 65535 + - type: object + title: mb + properties: + mb: + type: integer + description: specify lifesize in megabytes(MB) + minimum: 1 + maximum: 65535 + - type: object + title: gb + properties: + gb: + type: integer + description: specify lifesize in gigabytes(GB) + minimum: 1 + maximum: 65535 + - type: object + title: tb + properties: + tb: + type: integer + description: specify lifesize in terabytes(TB) + minimum: 1 + maximum: 65535 + required: + - name + - lifetime + anyOf: + - oneOf: + - type: object + title: esp + properties: + esp: + type: object + properties: + encryption: + type: array + description: Encryption algorithm + items: + type: string + enum: + - des + - 3des + - aes-128-cbc + - aes-192-cbc + - aes-256-cbc + - aes-128-gcm + - aes-256-gcm + - 'null' + default: aes-128-cbc + authentication: + type: array + description: Authentication algorithm + items: + type: string + default: sha1 + required: + - encryption + - authentication + required: + - esp + - type: object + title: ah + properties: + ah: + type: object + properties: + authentication: + type: array + items: + type: string + enum: + - md5 + - sha1 + - sha256 + - sha384 + - sha512 + required: + - authentication + required: + - ah + - 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 + ipsec-tunnels: + 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: 63 + tunnel_interface: + type: string + description: Tunnel interface variable or hardcoded tunnel. Default will be tunnels. + default: tunnel + auto_key: + type: object + properties: + ike_gateway: + type: array + items: + type: object + properties: + name: + type: string + ipsec_crypto_profile: + type: string + proxy_id: + type: array + description: IPv4 type of proxy_id values + items: + type: object + description: IPv4 type of proxy_id values for TCP protocol + properties: + name: + type: string + local: + type: string + remote: + type: string + protocol: + type: object + description: IPv4 type of proxy_id protocol values for TCP protocol + oneOf: + - type: object + title: number + properties: + number: + type: integer + description: IP protocol number + minimum: 1 + maximum: 254 + - type: object + title: tcp + properties: + tcp: + type: object + description: IPv4 type of proxy_id protocol values for TCP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + - type: object + title: udp + properties: + udp: + type: object + description: IPv6 type of proxy_id protocol values for UDP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + required: + - name + proxy_id_v6: + type: array + description: IPv6 type of proxy_id values + items: + type: object + description: IPv6 type of proxy_id values for TCP protocol + properties: + name: + type: string + local: + type: string + remote: + type: string + protocol: + type: object + description: IPv6 type of proxy_id protocol values for protocol + oneOf: + - type: object + title: number + properties: + number: + type: integer + description: IP protocol number + minimum: 1 + maximum: 254 + - type: object + title: tcp + properties: + tcp: + type: object + description: IPv6 type of proxy_id protocol values for TCP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + - type: object + title: udp + properties: + udp: + type: object + description: IPv6 type of proxy_id protocol values for UDP protocol + properties: + local_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + remote_port: + type: integer + minimum: 0 + maximum: 65535 + default: 0 + required: + - name + required: + - ike_gateway + - ipsec_crypto_profile + anti_replay: + type: boolean + description: Enable Anti-Replay check on this tunnel + copy_tos: + type: boolean + description: Copy IP TOS bits from inner packet to IPSec packet (not recommended) + default: false + enable_gre_encapsulation: + type: boolean + description: allow GRE over IPSec + default: false + tunnel_monitor: + type: object + properties: + enable: + type: boolean + description: Enable tunnel monitoring on this tunnel + default: true + destination_ip: + type: string + description: Destination IP to send ICMP probe + proxy_id: + type: string + description: Which proxy-id (or proxy-id-v6) the monitoring traffic will use + required: + - destination_ip + required: + - name + - auto_key + 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 + qos-policy-rules: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + action: + type: object + properties: + class: + type: string + description: + type: string + schedule: + type: string + dscp_tos: + type: object + properties: + codepoints: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + oneOf: + - type: object + title: ef + properties: + ef: + type: object + - type: object + title: af + properties: + af: + type: object + properties: + codepoint: + type: string + - type: object + title: cs + properties: + cs: + type: object + properties: + codepoint: + type: string + - type: object + title: tos + properties: + tos: + type: object + properties: + codepoint: + type: string + - type: object + title: custom + properties: + custom: + type: object + properties: + codepoint: + type: object + properties: + binary_value: + type: string + codepoint_name: + type: string + required: + - name + - action + 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 + rule-based-move: + type: object + title: rule-based-move + properties: + destination: + enum: + - top + - bottom + - before + - after + description: 'A destination of the rule. Valid destination values are top, bottom, before and after.' + rulebase: + enum: + - pre + - post + description: A base of a rule. Valid rulebase values are pre and post. + destination_rule: + type: string + description: A destination_rule attribute is required only if the destination value is before or after. Valid destination_rule values are existing rule UUIDs within the same container. + required: + - destination + - rulebase + 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: + type: string + description: Traffic class + maxLength: 31 + 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 + egress_guaranteed: + type: integer + description: guaranteed sending bandwidth in mbps + minimum: 0 + maximum: 60000 + - type: object + title: percentage + properties: + percentage: + type: object + properties: + class: + type: array + description: QoS setting for traffic classes + items: + type: object + properties: + name: + type: string + description: Traffic class + maxLength: 31 + 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 + egress_guaranteed: + type: integer + description: guaranteed sending bandwidth in percentage + minimum: 0 + maximum: 100 + 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 + zones: + 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: 63 + folder: + type: string + readOnly: true + enable_user_identification: + type: boolean + enable_device_identification: + type: boolean + dos_profile: + type: string + dos_log_setting: + type: string + network: + type: object + properties: + zone_protection_profile: + type: string + enable_packet_buffer_protection: + type: boolean + log_setting: + type: string + oneOf: + - title: tap + type: array + items: + type: string + - title: virtual_wire + type: array + items: + type: string + - title: layer2 + type: array + items: + type: string + - title: layer3 + type: array + items: + type: string + - title: tunnel + type: object + - title: external + type: array + items: + type: string + user_acl: + type: object + properties: + include_list: + type: array + items: + type: string + exclude_list: + type: array + items: + type: string + device_acl: + type: object + properties: + include_list: + type: array + items: + type: string + exclude_list: + type: array + items: + type: string + 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 + zone-protection-profiles: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: The profile name + type: string + maxLength: 31 + description: + description: The description of the profile + type: string + maxLength: 255 + flood: + type: object + properties: + tcp_syn: + type: object + properties: + enable: + description: Enable protection against SYN floods? + type: boolean + oneOf: + - title: red + type: object + properties: + alarm_rate: + description: When the flow exceeds the `alert_rate`` threshold, an alarm is generated. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: When the flow exceeds the `activate_rate`` threshold, the firewall drops individual SYN packets randomly to restrict the flow. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: When the flow exceeds the `maximal_rate` threshold, 100% of incoming SYN packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + - title: syn_cookies + type: object + properties: + alarm_rate: + description: When the flow exceeds the `alert_rate`` threshold, an alarm is generated. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: When the flow exceeds the `activate_rate`` threshold, the firewall drops individual SYN packets randomly to restrict the flow. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 0 + maximal_rate: + description: When the flow exceeds the `maximal_rate` threshold, 100% of incoming SYN packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 1000000 + required: + - alarm_rate + - activate_rate + - maximal_rate + udp: + type: object + properties: + enable: + description: Enable protection against UDP floods? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of UDP packets (not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of UDP packets (not matching an existing session) that the zone receives per second that triggers random dropping of UDP packets. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of UDP packets (not matching an existing session) the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + sctp_init: + type: object + properties: + enable: + description: Enable protection against floods of Stream Control Transmission Protocol (SCTP) packets that contain an Initiation (INIT) chunk? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of SCTP INIT packets (not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of SCTP INIT packets (not matching an existing session) that the zone receives per second before subsequent SCTP INIT packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of SCTP INIT packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + required: + - alarm_rate + - activate_rate + - maximal_rate + icmp: + type: object + properties: + enable: + description: Enable protection against ICMP floods? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of ICMP echo requests (pings not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of ICMP packets (not matching an existing session) that the zone receives per second before subsequent ICMP packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of ICMP packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + icmpv6: + type: object + properties: + enable: + description: Enable protection against ICMPv6 floods? + type: boolean + red: + type: object + properties: + alarm_rate: + description: The number of ICMPv6 echo requests (pings not matching an existing session) that the zone receives per second that triggers an attack alarm. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + description: The number of ICMPv6 packets (not matching an existing session) that the zone receives per second before subsequent ICMPv6 packets are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + description: The maximum number of ICMPv6 packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + other_ip: + type: object + properties: + enable: + description: Enable protection against other IP (non-TCP, non-ICMP, non-ICMPv6, non-SCTP, and non-UDP) floods? + type: boolean + red: + type: object + properties: + alarm_rate: + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + activate_rate: + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 10000 + maximal_rate: + type: integer + format: int32 + minimum: 0 + maximum: 2000000 + example: 40000 + required: + - alarm_rate + - activate_rate + - maximal_rate + scan: + type: array + items: + type: object + properties: + name: + description: | + The threat ID number. These can be found in [Palo Alto Networks ThreatVault](https://threatvault.paloaltonetworks.com). + * "8001" - TCP Port Scan + * "8002" - Host Sweep + * "8003" - UDP Port Scan + * "8006" - Port Scan + type: string + enum: + - "8001" + - "8002" + - "8003" + - "8006" + action: + type: object + oneOf: + - title: allow + type: object + - title: alert + type: object + - title: block + type: object + - title: block_ip + type: object + properties: + track_by: + type: string + enum: + - source-and-destination + - source + duration: + type: integer + format: int32 + minimum: 1 + maximum: 3600 + required: + - track_by + - duration + interval: + type: integer + format: int32 + minimum: 2 + maximum: 65535 + example: 2 + threshold: + type: integer + format: int32 + minimum: 2 + maximum: 65535 + example: 100 + required: + - name + scan_white_list: + type: array + items: + type: object + properties: + name: + description: A descriptive name for the address to exclude. + type: string + oneOf: + - title: ipv4 + type: string + format: ipv4 + - title: ipv6 + type: string + format: ipv6 + required: + - name + spoofed_ip_discard: + description: | + Check that the source IP address of the ingress packet is routable and the routing interface is in the same zone as the ingress interface. If either condition is not true, discard the packet. + type: boolean + strict_ip_check: + description: | + Check that both conditions are true: + * The source IP address is not the subnet broadcast IP address of the ingress interface. + * The source IP address is routable over the exact ingress interface. + If either condition is not true, discard the packet. + type: boolean + fragmented_traffic_discard: + description: | + Discard fragmented IP packets. + type: boolean + strict_source_routing_discard: + description: | + Discard packets with the Strict Source Routing IP option set. Strict Source Routing is an option whereby a source of a datagram provides routing information through which a gateway or host must send the datagram. + type: boolean + loose_source_routing_discard: + description: | + Discard packets with the Loose Source Routing IP option set. Loose Source Routing is an option whereby a source of a datagram provides routing information and a gateway or host is allowed to choose any route of a number of intermediate gateways to get the datagram to the next address in the route. + type: boolean + timestamp_discard: + description: | + Discard packets with the Timestamp IP option set. + type: boolean + record_route_discard: + description: | + Discard packets with the Record Route IP option set. When a datagram has this option, each router that routes the datagram adds its own IP address to the header, thus providing the path to the recipient. + type: boolean + security_discard: + description: | + Discard packets if the security option is defined. + type: boolean + stream_id_discard: + description: | + Discard packets if the Stream ID option is defined. + type: boolean + unknown_option_discard: + description: | + Discard packets if the class and number are unknown. + type: boolean + malformed_option_discard: + description: | + Discard packets if they have incorrect combinations of class, number, and length based on RFCs 791, 1108, 1393, and 2113. + type: boolean + mismatched_overlapping_tcp_segment_discard: + description: | + Drop packets with mismatched overlapping TCP segments. + type: boolean + tcp_handshake_discard: + description: | + Drop packets with split handshakes. + type: boolean + tcp_syn_with_data_discard: + description: | + Prevent a TCP session from being established if the TCP SYN packet contains data during a three-way handshake. + type: boolean + default: true + tcp_synack_with_data_discard: + description: | + Prevent a TCP session from being established if the TCP SYN-ACK packet contains data during a three-way handshake. + type: boolean + default: true + reject_non_syn_tcp: + description: | + Determine whether to reject the packet if the first packet for the TCP session setup is not a SYN packet: + * `global` — Use system-wide setting that is assigned through the CLI. + * `yes` — Reject non-SYN TCP. + * `no` — Accept non-SYN TCP. + type: string + enum: + - global + - yes + - no + asymmetric_path: + description: | + Determine whether to drop or bypass packets that contain out-of-sync ACKs or out-of-window sequence numbers: + * `global` — Use system-wide setting that is assigned through TCP Settings or the CLI. + * `drop` — Drop packets that contain an asymmetric path. + * `bypass` — Bypass scanning on packets that contain an asymmetric path. + type: string + enum: + - global + - drop + - bypass + tcp_timestamp_strip: + description: | + Determine whether the packet has a TCP timestamp in the header and, if it does, strip the timestamp from the header. + type: boolean + tcp_fast_open_and_data_strip: + description: | + Strip the TCP Fast Open option (and data payload, if any) from the TCP SYN or SYN-ACK packet during a TCP three-way handshake. + type: boolean + mptcp_option_strip: + description: | + MPTCP is an extension of TCP that allows a client to maintain a connection by simultaneously using multiple paths to connect to the destination host. By default, MPTCP support is disabled, based on the global MPTCP setting. Review or adjust the MPTCP settings for the security zones associated with this profile: + * `no` — Enable MPTCP support (do not strip the MPTCP option). + * `yes` — Disable MPTCP support (strip the MPTCP option). With this configured, MPTCP connections are converted to standard TCP connections, as MPTCP is backwards compatible with TCP. + * `global` — Support MPTCP based on the global MPTCP setting. By default, the global MPTCP setting is set to yes so that MPTCP is disabled (the MPTCP option is stripped from the packet). + type: string + enum: + - no + - yes + - global + default: global + icmp_ping_zero_id_discard: + description: | + Discard packets if the ICMP ping packet has an identifier value of 0. + type: boolean + icmp_frag_discard: + description: Discard packets that consist of ICMP fragments. + type: boolean + icmp_large_packet_discard: + description: Discard ICMP packets that are larger than 1024 bytes. + type: boolean + discard_icmp_embedded_error: + description: Discard ICMP packets that are embedded with an error message. + type: boolean + suppress_icmp_timeexceeded: + description: Stop sending ICMP TTL expired messages. + type: boolean + suppress_icmp_needfrag: + description: | + Stop sending ICMP fragmentation needed messages in response to packets that exceed the interface MTU and have the do not fragment (DF) bit set. This setting will interfere with the PMTUD process performed by hosts behind the firewall. + type: boolean + ipv6: + type: object + properties: + routing_header_0: + description: Drop packets with type 0 routing header. + type: boolean + routing_header_1: + description: Drop packets with type 1 routing header. + type: boolean + routing_header_3: + description: Drop packets with type 3 routing header. + type: boolean + routing_header_4_252: + description: Drop packets with type 4 to type 252 routing header. + type: boolean + routing_header_253: + description: Drop packets with type 253 routing header. + type: boolean + routing_header_254: + description: Drop packets with type 254 routing header. + type: boolean + routing_header_255: + description: Drop packets with type 255 routing header. + type: boolean + ipv4_compatible_address: + description: Discard IPv6 packets that are defined as an RFC 4291 IPv4-Compatible IPv6 address. + type: boolean + filter_ext_hdr: + type: object + properties: + hop_by_hop_hdr: + description: Discard IPv6 packets that contain the Hop-by-Hop Options extension header. + type: boolean + routing_hdr: + description: Discard IPv6 packets that contain the Routing extension header, which directs packets to one or more intermediate nodes on its way to its destination. + type: boolean + dest_option_hdr: + description: Discard IPv6 packets that contain the Destination Options extension, which contains options intended only for the destination of the packet. + type: boolean + options_invalid_ipv6_discard: + description: Discard IPv6 packets that contain invalid IPv6 options in an extension header. + type: boolean + reserved_field_set_discard: + description: Discard IPv6 packets that have a header with a reserved field not set to zero. + type: boolean + anycast_source: + description: Discard IPv6 packets that contain an anycast source address. + type: boolean + needless_fragment_hdr: + description: Discard IPv6 packets with the last fragment flag (M=0) and offset of zero. + type: boolean + icmpv6_too_big_small_mtu_discard: + description: Discard IPv6 packets that contain a Packet Too Big ICMPv6 message when the maximum transmission unit (MTU) is less than 1,280 bytes. + type: boolean + ignore_inv_pkt: + type: object + properties: + dest_unreach: + description: Require an explicit Security policy match for Destination Unreachable ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + pkt_too_big: + description: Require an explicit Security policy match for Packet Too Big ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + time_exceeded: + description: Require an explicit Security policy match for Time Exceeded ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + param_problem: + description: Require an explicit Security policy match for Parameter Problem ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + redirect: + description: Require an explicit Security policy match for Redirect Message ICMPv6 messages, even when the message is associated with an existing session. + type: boolean + non_ip_protocol: + type: object + properties: + list_type: + description: | + Specify the type of list you are creating for protocol protection: + * Include List—Only the protocols on the list are allowed—in addition to IPv4 (0x0800), IPv6 (0x86DD), ARP (0x0806), and VLAN tagged frames (0x8100). All other protocols are implicitly denied (blocked). + * Exclude List—Only the protocols on the list are denied; all other protocols are implicitly allowed. You cannot exclude IPv4 (0x0800), IPv6 (0x86DD), ARP (0x0806), or VLAN tagged frames (0x8100). + type: string + enum: + - exclude + - include + protocol: + type: array + items: + type: object + properties: + name: + description: | + Enter the protocol name that corresponds to the Ethertype code you are adding to the list. The firewall does not verify that the protocol name matches the Ethertype code but the Ethertype code does determine the protocol filter. + type: string + ether_type: + description: | + Enter an Ethertype code (protocol) preceded by 0x to indicate hexadecimal (range is 0x0000 to 0xFFFF). A list can have a maximum of 64 Ethertypes. Some sources of Ethertype codes are: + * [IEEE hexadecimal Ethertype](https://www.iana.org/assignments/ieee-802-numbers/ieee-802-numbers.xhtml) + * [standards.ieee.org/develop/regauth/ethertype/eth.txt](https://standards-oui.ieee.org/ethertype/eth.txt) + * [www.cavebear.com/archive/cavebear/Ethernet/type.html](https://www.cavebear.com/archive/cavebear/Ethernet/type.html) + type: string + enable: + description: Enable the Ethertype code on the list. + type: boolean + required: + - name + - ether_type + l2_sec_group_tag_protection: + type: object + properties: + tags: + type: array + items: + type: object + properties: + name: + description: Name for the list of Security Group Tags (SGTs). + type: string + tag: + description: The Layer 2 SGTs in headers of packets that you want to exclude (drop) when the SGT matches this list in the Zone Protection profile applied to a zone (range is 0 to 65,535). + type: string + enable: + description: Enable this exclude list for Ethernet SGT protection. + type: boolean + required: + - name + - tag + 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 + nat-rules: + type: object + required: + - id + - name + - from + - to + - source + - destination + - service + properties: + name: + description: NAT rule name + type: string + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + description: + description: NAT rule description + type: string + tag: + description: NAT rule tags + type: array + items: + type: string + disabled: + description: Disable NAT rule? + type: boolean + default: false + nat_type: + description: NAT type + type: string + enum: + - ipv4 + - nat64 + - nptv6 + default: ipv4 + from: + description: Source zone(s) of the original packet + type: array + items: + type: string + example: + - any + source: + description: Source address(es) of the original packet + type: array + items: + type: string + example: + - any + to: + description: Destination zone of the original packet + type: array + items: + type: string + example: + - any + to_interface: + description: Destination interface of the original packet + type: string + example: any + destination: + description: Destination address(es) of the original packet + type: array + items: + type: string + example: + - any + service: + description: The service of the original packet + type: string + example: any + source_translation: + type: object + oneOf: + - title: dynamic_ip_and_port + description: Dynamic IP and port + type: object + oneOf: + - title: translated_address + description: Translated source IP addresses + type: array + items: + description: IP address + type: string + - title: interface_address + description: Translated source interface + type: object + properties: + interface: + description: Interface name + type: string + oneOf: + - title: ip + description: Translated source IP address + type: string + - title: floating_ip + description: Floating IP address + type: string + - title: dynamic_ip + description: Dynamic IP + type: object + properties: + translated_address: + description: Translated IP addresses + type: array + items: + description: IP address + type: string + fallback: + type: object + oneOf: + - title: translated_address + description: Fallback IP addresses + type: array + items: + type: string + - title: interface_address + description: Fallback interface + type: object + properties: + interface: + description: Interface name + type: string + oneOf: + - title: ip + description: IP address + type: string + - title: floating_ip + description: Floating IP address + type: string + - title: static_ip + description: Static IP + type: object + properties: + translated_address: + description: Translated IP address + type: string + bi_directional: + type: string + active_active_device_binding: + type: string + enum: + - primary + - both + - "0" + - "1" + anyOf: + - oneOf: + - title: destination_translation + description: Destination translation + type: object + properties: + translated_address: + description: Translated destination IP address + type: string + translated_port: + description: Translated destination port + type: integer + minimum: 1 + maximum: 65535 + dns_rewrite: + description: DNS rewrite + type: object + properties: + direction: + type: string + enum: + - reverse + - forward + - title: dynamic_destination_translation + description: Dynamic destination translation + type: object + properties: + translated_address: + description: Translated destination IP address + type: string + translated_port: + description: Translated destination port + type: integer + minimum: 1 + maximum: 65535 + distribution: + description: Distribution method + type: string + enum: + - round-robin + - source-ip-hash + - ip-modulo + - ip-hash + - least-sessions + 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 + aggregate-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Aggregate interface name + type: string + default_value: + description: Default interface assignment + type: string + comment: + description: Aggregate interface description + type: string + minLength: 0 + maxLength: 1023 + anyOf: + - oneOf: + - title: layer2 + required: + - layer2 + properties: + layer2: + type: object + properties: + vlan_tag: + description: VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + example: '123' + lacp: + $ref: '#/components/schemas/lacp' + - title: layer3 + required: + - layer3 + properties: + layer3: + type: object + description: Aggregate Interface Layer 3 configuration + oneOf: + - title: static + type: object + properties: + ip: + description: Aggregate Interface IP addresses + type: array + items: + type: object + required: + - name + properties: + name: + description: Aggregate Interface IP addresses name + type: string + - title: dhcp + $ref: '#/components/schemas/agg-ethernet-dhcp-client' + properties: + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + default: 1500 + arp: + $ref: '#/components/schemas/agg-ethernet-arp' + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Aggregate Interface. + allOf: + - $ref: '#/components/schemas/ddns-config' + interface_management_profile: + description: Interface management profile + type: string + maxLength: 31 + lacp: + $ref: '#/components/schemas/lacp' + - 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 + lacp: + type: object + properties: + enable: + description: Enable LACP? + type: boolean + default: false + fast_failover: + description: Fast failover + type: boolean + default: false + mode: + description: Mode + type: string + enum: + - passive + - active + default: passive + transmission_rate: + description: Transmission mode + type: string + enum: + - fast + - slow + default: slow + system_priority: + description: LACP system priority in system ID + type: integer + minimum: 1 + maximum: 65535 + default: 32768 + max_ports: + description: Maximum number of physical ports bundled in the LAG + type: integer + minimum: 1 + maximum: 8 + default: 8 + agg-ethernet-dhcp-client: + type: object + description: Aggregate Ethernet DHCP Client + properties: + dhcp_client: + type: object + description: Aggregate Ethernet DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Aggregate Ethernet DHCP Client Send hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + ethernet-interfaces-dhcp-client: + type: object + description: Ethernet Interfaces DHCP Client + properties: + dhcp_client: + type: object + description: Ethernet Interfaces DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Ethernet Interfaces DHCP ClientSend hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + layer3-sub-interfaces-dhcp-client: + type: object + description: Layer3 sub interfaces DHCP Client + properties: + dhcp_client: + type: object + description: Layer3 sub interfaces DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Layer3 sub interfaces DHCP Client Send hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + vlan-interfaces-dhcp-client: + type: object + description: Vlan interfaces DHCP Client + properties: + dhcp_client: + type: object + description: Vlan interfaces DHCP Client Object + properties: + enable: + description: Enable DHCP? + type: boolean + default: true + create_default_route: + description: Automatically create default route pointing to default gateway provided by server + type: boolean + default: true + send_hostname: + description: Send hostname + type: object + properties: + enable: + type: boolean + default: true + hostname: + description: Set interface hostname + type: string + minLength: 1 + maxLength: 64 + pattern: '^[a-zA-Z0-9\._-]+$' + default: system-hostname + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + ddns-config: + type: object + required: + - ddns_hostname + - ddns_cert_profile + - ddns_vendor + - ddns_vendor_config + properties: + ddns_enabled: + description: Enable DDNS? + type: boolean + default: false + ddns_vendor: + description: DDNS vendor + type: string + maxLength: 127 + ddns_update_interval: + description: Update interval (days) + type: integer + minimum: 1 + maximum: 30 + default: 1 + ddns_cert_profile: + description: Certificate profile + type: string + ddns_hostname: + type: string + pattern: '^[a-zA-Z0-9_\.\-]+$' + maxLength: 255 + ddns_ip: + description: IP to register (static only) + type: string + format: ip-address + ddns_vendor_config: + description: DDNS vendor + type: string + maxLength: 255 + ethernet-interfaces: + type: object + required: + - id + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Interface name + type: string + default_value: + description: Default interface assignment + type: string + comment: + description: Interface description + type: string + minLength: 0 + maxLength: 1023 + link_speed: + description: Link speed + type: string + enum: + - auto + - '10' + - '100' + - '1000' + - '10000' + - '40000' + - '100000' + default: auto + link_duplex: + description: Link duplex + type: string + enum: + - auto + - half + - full + default: auto + link_state: + description: Link state + type: string + enum: + - auto + - up + - down + default: auto + poe: + $ref: '#/components/schemas/poe' + anyOf: + - oneOf: + - title: tap + properties: + tap: + type: object + default: {} + - title: layer2 + required: + - layer2 + properties: + layer2: + type: object + properties: + vlan_tag: + description: Assign interface to VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + lldp: + description: LLDP Settings + type: object + required: + - enable + properties: + enable: + description: Enable LLDP on Interface + type: boolean + default: false + - title: layer3 + required: + - layer3 + properties: + layer3: + type: object + description: Ethernet Interface Layer 3 configuration + oneOf: + - title: static + type: object + properties: + ip: + description: Ethernet Interface IP addresses + type: array + items: + type: object + required: + - name + properties: + name: + type: string + description: Ethernet Interface IP addresses name + - title: dhcp + type: object + $ref: "#/components/schemas/ethernet-interfaces-dhcp-client" + - title: pppoe + type: object + properties: + pppoe: + type: object + required: + - username + - password + properties: + enable: + type: boolean + default: true + username: + description: Username + type: string + minLength: 1 + maxLength: 255 + password: + description: Password + type: string + format: password + maxLength: 255 + authentication: + description: Authentication protocol + type: string + enum: + - CHAP + - PAP + - auto + static_address: + type: object + required: + - ip + properties: + ip: + description: Static IP address + type: string + maxLength: 63 + default_route_metric: + description: Metric of the default route created + type: integer + minimum: 1 + maximum: 65535 + default: 10 + access_concentrator: + description: Access concentrator + type: string + minLength: 1 + maxLength: 255 + service: + description: Service + type: string + minLength: 1 + maxLength: 255 + passive: + type: object + required: + - enable + properties: + enable: + description: Passive Mode enabled + type: boolean + default: false + + properties: + interface_management_profile: + description: Interface management profile + type: string + maxLength: 31 + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + default: 1500 + arp: + $ref: '#/components/schemas/ethernet-interfaces-arp' + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Ethernet Interfaces. + allOf: + - $ref: '#/components/schemas/ddns-config' + - 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 + poe: + type: object + properties: + poe_enabled: + description: Enabled PoE? + type: boolean + default: false + poe_rsvd_pwr: + description: PoE reserved power + type: integer + minimum: 0 + maximum: 90 + default: 0 + agg-ethernet-arp: + description: Aggregate Ethernet ARP configuration + type: array + items: + type: object + description: Aggregate Ethernet ARP configuration object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + default: {} + ethernet-interfaces-arp: + description: Ethernet Interfaces ARP configuration + type: array + items: + type: object + description: Ethernet Interfaces ARP configuration object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + default: {} + layer3-subinterfaces-arp: + description: Layer 3 sub Interfaces ARP configuration + type: array + items: + type: object + description: Layer 3 sub Interfaces ARP configuration object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + default: {} + layer2-subinterfaces: + type: object + required: + - name + - vlan_tag + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L2 sub-interface name + type: string + example: parent-interface.vlan-tag + comment: + description: Description + type: string + vlan_tag: + description: VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + parent_interface: + description: Parent interface + type: string + 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 + layer3-subinterfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L3 sub-interface name + type: string + tag: + description: VLAN tag + type: integer + minimum: 1 + maximum: 4096 + parent_interface: + description: Parent interface + type: string + comment: + description: Description + type: string + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Layer 3 sub Interfaces. + allOf: + - $ref: '#/components/schemas/ddns-config' + arp: + $ref: "#/components/schemas/layer3-subinterfaces-arp" + interface_management_profile: + description: Interface management profile + type: string + example: string + anyOf: + - oneOf: + - title: static + type: object + properties: + ip: + description: L3 sub-interface IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: L3 sub-interface IP address(es) + required: + - name + - title: dhcp + $ref: '#/components/schemas/layer3-sub-interfaces-dhcp-client' + - 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 + loopback-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Loopback Interface name + pattern: '^\$[a-zA-Z\d\-_\. ]+$' + type: string + default_value: + description: Default interface assignment + pattern: '^loopback\.([1-9][0-9]{0,3})$' + type: string + example: 'loopback.123' + comment: + description: Description + type: string + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + interface_management_profile: + description: Interface management profile + type: string + example: string + ip: + description: Loopback IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: Loopback IP address(es) + required: + - name + ipv6: + description: Loopback IPv6 Configuration + type: object + properties: + address: + description: IPv6 Address Parent + type: array + items: + type: object + properties: + enable_on_interface: + type: boolean + description: Enable Address on Interface + default: true + name: + type: string + description: IPv6 Address + example: '2001:DB8::1/128' + interface_id: + type: string + description: Interface ID + default: "EUI-64" + enabled: + description: Enable IPv6 + type: boolean + default: false + + 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 + tunnel-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L3 sub-interface name + type: string + default_value: + description: Default interface assignment + pattern: '^tunnel\.([1-9][0-9]{0,3})$' + type: string + example: 'tunnel.123' + comment: + description: Description + type: string + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + interface_management_profile: + description: Interface management profile + type: string + example: string + ip: + description: Tunnel Interface IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: Tunnel Interface IP address(es) + 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 + vlan-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: L3 sub-interface name + type: string + default_value: + description: Default interface assignment + pattern: '^vlan\.([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + type: string + example: 'vlan.123' + comment: + description: Description + type: string + vlan_tag: + description: VLAN tag + type: string + pattern: '^([1-9]\d{0,2}|[1-3]\d{3}|40[0-8]\d|409[0-6])$' + example: '123' + mtu: + description: MTU + type: integer + minimum: 576 + maximum: 9216 + ddns_config: + type: object + description: Dynamic DNS configuration specific to the Vlan Interfaces. + allOf: + - $ref: '#/components/schemas/ddns-config' + arp: + description: ARP configuration + type: array + items: + type: object + properties: + name: + description: IP address + type: string + format: ip-address + hw_address: + description: MAC address + type: string + format: mac-address + interface: + description: ARP interface + type: string + interface_management_profile: + description: Interface management profile + type: string + example: string + anyOf: + - oneOf: + - title: static + type: object + properties: + ip: + description: VLAN Interface IP Parent + type: array + items: + type: object + properties: + name: + type: string + description: VLAN Interface IP address(es) + required: + - name + - title: dhcp + $ref: '#/components/schemas/vlan-interfaces-dhcp-client' + - 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 + interface-management-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + http: + description: Allow HTTP? + type: boolean + https: + description: Allow HTTPS? + type: boolean + telnet: + description: Allow telnet? Seriously, why would you do this?!? + type: boolean + ssh: + description: Allow SSH? + type: boolean + ping: + description: Allow ping? + type: boolean + http_ocsp: + description: Allow HTTP OCSP? + type: boolean + response_pages: + description: Allow response pages? + type: boolean + userid_service: + description: Allow User-ID? + type: boolean + userid_syslog_listener_ssl: + description: Allow User-ID syslog listener (SSL)? + type: boolean + userid_syslog_listener_udp: + description: Allow User-ID syslog listener (UDP)? + type: boolean + permitted_ip: + description: Allowed IP address(es) + type: array + items: + type: object + properties: + name: + type: string + description: The allowed IP address or CIDR block. + 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 + bgp-address-family-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + ipv4: + required: + - ipv4 + properties: + ipv4: + type: object + properties: + unicast: + $ref: '#/components/schemas/bgp-address-family' + multicast: + $ref: '#/components/schemas/bgp-address-family' + 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 + bgp-address-family: + type: object + properties: + enable: + description: Enable? + type: boolean + soft_reconfig_with_stored_info: + description: Soft reconfiguration of peer with stored routes? + type: boolean + add_path: + type: object + properties: + tx_all_paths: + description: Advertise all paths to peer? + type: boolean + tx_bestpath_per_AS: + description: Advertise the bestpath per each neighboring AS? + type: boolean + as_override: + description: Override ASNs in outbound updates if AS-Path equals Remote-AS? + type: boolean + route_reflector_client: + description: Route reflector client? + type: boolean + default_originate: + description: Originate default route? + type: boolean + default_originate_map: + description: Default originate route map + type: string + allowas_in: + type: object + oneOf: + - title: origin + required: + - origin + properties: + origin: + type: object + - title: occurrence + required: + - occurrence + properties: + occurrence: + description: Number of times the firewalls own AS can be in an AS_PATH + type: integer + minimum: 1 + maximum: 10 + default: 1 + maximum_prefix: + type: object + properties: + num_prefixes: + description: Maximum number of prefixes + type: integer + minimum: 1 + maximum: 4294967295 + threshold: + description: Threshold percentage of the maximum number of prefixes + type: integer + minimum: 1 + maximum: 100 + action: + type: object + oneOf: + - title: warning_only + required: + - warning_only + properties: + warning_only: + type: object + - title: restart + required: + - restart + properties: + restart: + type: object + properties: + interval: + description: Restart interval + type: integer + minimum: 1 + maximum: 65535 + next_hop: + type: object + oneOf: + - title: self + required: + - self + properties: + self: + type: object + - title: self_force + required: + - self_force + properties: + self_force: + type: object + remove_private_AS: + type: object + oneOf: + - title: all + required: + - all + properties: + all: + type: object + - title: replace_AS + required: + - replace_AS + properties: + replace_AS: + type: object + send_community: + type: object + oneOf: + - title: all + required: + - all + properties: + all: + type: object + - title: both + required: + - both + properties: + both: + type: object + - title: extended + required: + - extended + properties: + extended: + type: object + - title: large + required: + - large + properties: + large: + type: object + - title: standard + required: + - standard + properties: + standard: + type: object + orf: + type: object + properties: + orf_prefix_list: + description: ORF prefix list + type: string + enum: + - none + - both + - receive + - send + bgp-auth-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + secret: + description: BGP authentication key + type: string + format: password + 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 + bgp-filtering-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: + type: string + ipv4: + required: + - ipv4 + properties: + ipv4: + type: object + properties: + unicast: + $ref: '#/components/schemas/bgp-filter' + multicast: + oneOf: + - type: object + properties: + inherit: + description: Inherit from unicast + type: boolean + - $ref: '#/components/schemas/bgp-filter' + 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 + bgp-filter: + type: object + properties: + filter_list: + type: object + properties: + inbound: + type: string + outbound: + type: string + inbound_network_filters: + type: object + properties: + distribute_list: + type: string + prefix_list: + type: string + outbound_network_filters: + type: object + properties: + distribute_list: + type: string + prefix_list: + type: string + route_maps: + type: object + properties: + inbound: + type: string + outbound: + type: string + conditional_advertisement: + type: object + properties: + exist: + type: object + properties: + advertise_map: + type: string + exist_map: + type: string + non_exist: + type: object + properties: + advertise_map: + type: string + non_exist_map: + type: string + unsuppress_map: + type: string + bgp-redistribution-profiles: + type: object + required: + - name + - ipv4 + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + ipv4: + type: object + properties: + unicast: + type: object + properties: + static: + type: object + properties: + enable: + description: Enable static route redistribution? + type: boolean + metric: + description: Route metric + type: integer + minimum: 1 + maximum: 65535 + route_map: + description: Route map + type: string + ospf: + type: object + properties: + enable: + description: Enable OSPF route redistribution? + type: boolean + metric: + description: Route metric + type: integer + minimum: 1 + maximum: 65535 + route_map: + description: Route map + type: string + connected: + type: object + properties: + enable: + description: Enable connected route redistribution? + type: boolean + metric: + description: Route metric + type: integer + minimum: 1 + maximum: 65535 + route_map: + description: Route map + type: string + 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 + bgp-route-map-redistributions: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Name + type: string + description: + description: Description + type: string + anyOf: + - oneOf: + - title: bgp + required: + - bgp + properties: + bgp: + type: object + oneOf: + - title: ospf + required: + - ospf + properties: + ospf: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + as_path_access_list: + description: AS path access list + type: string + regular_community: + description: Regular community + type: string + large_community: + description: Large community + type: string + extended_community: + description: Extended community + type: string + interface: + description: Interface + type: string + origin: + description: Origin + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + local_preference: + description: Local preference + type: integer + minimum: 1 + maximum: 4294967295 + peer: + description: Peer + type: string + enum: + - local + - none + ipv4: + type: object + description: bgp-route-map-redistributions ipv4 object + properties: + address: + type: object + description: bgp-route-map-redistributions ipv4 object address + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + description: bgp-route-map-redistributions ipv4 object next_hop + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + route_source: + type: object + description: bgp-route-map-redistributions ipv4 object route_source + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + metric: + type: object + properties: + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + action: + description: Metric action + type: string + enum: + - set + - add + - subtract + metric_type: + description: Metric type + type: string + enum: + - type-1 + - type-2 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + - title: rib + required: + - rib + properties: + rib: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + as_path_access_list: + description: AS path access list + type: string + regular_community: + description: Regular community + type: string + large_community: + description: Large community + type: string + extended_community: + description: Extended community + type: string + interface: + description: Interface + type: string + origin: + description: Origin + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + local_preference: + description: Local preference + type: integer + minimum: 1 + maximum: 4294967295 + peer: + description: Peer + type: string + enum: + - local + - none + ipv4: + type: object + properties: + address: + type: object + description: bgp-route-map-redistributions ipv4 rib object address + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + description: bgp-route-map-redistributions ipv4 rib object next_hop + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + route_source: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + source_address: + description: Source address + type: string + - title: ospf + required: + - ospf + properties: + ospf: + type: object + oneOf: + - title: bgp + required: + - bgp + properties: + bgp: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + address: + type: object + description: bgp-route-map-redistributions ospf address + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + description: bgp-route-map-redistributions ospf next_hop + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + atomic_aggregate: + description: Enable BGP atomic aggregate? + type: boolean + local_preference: + description: Local preference + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + weight: + description: Weight + type: integer + minimum: 0 + maximum: 4294967295 + origin: + description: Origin + type: string + enum: + - none + - egp + - igp + - incomplete + originator_id: + description: Originator ID + type: string + aggregator: + type: object + description: bgp-route-map-redistributions set aggregator + properties: + as: + description: Aggregator AS + type: integer + minimum: 1 + maximum: 4294967295 + router_id: + description: Router ID + type: string + ipv4: + type: object + properties: + source_address: + description: Source address + type: string + next_hop: + description: Next hop + type: string + aspath_prepend: + description: AS numbers + type: array + items: + description: AS number + type: integer + minimum: 1 + maximum: 65535 + regular_community: + description: Regular communities + type: array + items: + description: Regular community + type: string + large_community: + description: Large communities + type: array + items: + description: Large community + type: string + - title: rib + required: + - rib + properties: + rib: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + tag: + type: integer + minimum: 1 + maximum: 4294967295 + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + source_address: + description: Source address + type: string + - title: connected_static + required: + - connected_static + properties: + connected_static: + type: object + oneOf: + - title: bgp + required: + - bgp + properties: + bgp: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + ipv4: + type: object + description: bgp-route-map-redistributions connected-static ipv4 + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + atomic_aggregate: + description: Enable BGP atomic aggregate? + type: boolean + local_preference: + description: Local preference + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + weight: + description: Weight + type: integer + minimum: 0 + maximum: 4294967295 + origin: + description: Origin + type: string + enum: + - none + - egp + - igp + - incomplete + originator_id: + description: Originator ID + type: string + aggregator: + type: object + description: bgp-route-map-redistributions connected_static aggregator + properties: + as: + description: Aggregator AS + type: integer + minimum: 1 + maximum: 4294967295 + router_id: + description: Router ID + type: string + ipv4: + type: object + properties: + source_address: + description: Source address + type: string + next_hop: + description: Next hop + type: string + aspath_prepend: + description: AS numbers + type: array + items: + description: AS number + type: integer + minimum: 1 + maximum: 65535 + regular_community: + description: Regular communities + type: array + items: + description: Regular community + type: string + large_community: + description: Large communities + type: array + items: + description: Large community + type: string + - title: ospf + required: + - ospf + properties: + ospf: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + ipv4: + type: object + description: bgp-route-map-redistributions connected-static match ipv4 + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + metric_type: + description: Metric type + type: string + enum: + - type-1 + - type-2 + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + - title: rib + required: + - rib + properties: + rib: + type: object + properties: + route_map: + description: Route maps + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - permit + - deny + description: + description: Description + type: string + match: + type: object + properties: + interface: + description: Interface + type: string + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + ipv4: + type: object + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + source_address: + description: Source address + type: string + - 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 + bgp-route-maps: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: + type: string + route_map: + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + description: + description: Description + type: string + action: + description: Action + type: string + enum: + - permit + - deny + match: + type: object + properties: + as_path_access_list: + description: AS path access list + type: string + interface: + description: Interface + type: string + regular_community: + description: Regular community + type: string + origin: + description: Origin + type: string + large_community: + description: Large community + type: string + tag: + description: Tag + type: integer + minimum: 1 + maximum: 4294967295 + extended_community: + description: Extended community + type: string + local_preference: + type: integer + minimum: 0 + maximum: 4294967295 + metric: + description: Metric + type: integer + minimum: 0 + maximum: 4294967295 + peer: + description: Peer + type: string + enum: + - local + - none + ipv4: + type: object + description: bgp-route-maps ipv4 object + properties: + address: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + next_hop: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + route_source: + type: object + properties: + access_list: + description: Access list + type: string + prefix_list: + description: Prefix list + type: string + set: + type: object + properties: + atomic_aggregate: + description: Enable BGP atomic aggregate? + type: boolean + local_preference: + description: Local preference + type: integer + minimum: 0 + maximum: 4294967295 + tag: + description: Tag + type: integer + minimum: 0 + maximum: 4294967295 + metric: + type: object + properties: + action: + description: Metric action + type: string + enum: + - set + - add + - substract + value: + description: Metric value + type: integer + minimum: 0 + maximum: 4294967295 + weight: + description: Weight + type: integer + minimum: 0 + maximum: 4294967295 + origin: + description: Origin + type: string + enum: + - none + - egp + - igp + - incomplete + remove_regular_community: + description: Remove regular community name + type: string + remove_large_community: + description: Remove large community name + type: string + originator_id: + description: Originator ID + type: string + aggregator: + type: object + description: bgp-route-maps aggregator + properties: + as: + description: Aggregator AS + type: integer + minimum: 1 + maximum: 4294967295 + router_id: + description: Router ID + type: string + ipv4: + type: object + properties: + source_address: + description: Source address + type: string + next_hop: + description: Next hop + type: string + aspath_exclude: + type: array + items: + description: AS number + type: integer + aspath_prepend: + type: array + items: + description: AS number + type: integer + regular_community: + type: array + items: + description: Regular community + type: string + enum: + - none + - blackhole + - no-peer + - graceful-shutdown + - accept-own + - local-as + - route-filter-v4 + - route-filter-v6 + - no-advertise + - no-export + - internet + overwrite_regular_community: + description: Overwrite regular community? + type: boolean + large_community: + type: array + items: + description: Large community + type: string + overwrite_large_community: + description: Overwrite large community? + type: boolean + 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 + link-tags: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the link tag + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: The name of the link tag + type: string + maxLength: 63 + color: + description: The color of the link tag + type: string + enum: + - Red + - Green + - Blue + - Yellow + - Copper + - Orange + - Purple + - Gray + - Light Green + - Cyan + - Light Gray + - Blue Gray + - Lime + - Black + - Gold + - Brown + - Olive + - Maroon + - Red-Orange + - Yellow-Orange + - Forest Green + - Turquoise Blue + - Azure Blue + - Cerulean Blue + - Midnight Blue + - Medium Blue + - Cobalt Blue + - Violet Blue + - Blue Violet + - Medium Violet + - Medium Rose + - Lavender + - Orchid + - Thistle + - Peach + - Salmon + - Magenta + - Red Violet + - Mahogany + - Burnt Sienna + - Chestnut + comments: + description: Description of the link tag + type: string + maxLength: 0 + 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 + logical-routers: + type: object + required: + - 'name' + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + routing_stack: + type: string + enum: + - legacy + - advanced + vrf: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + interface: + type: array + items: + type: string + global_vrid: + type: integer + zone_name: + type: string + admin_dists: + type: object + properties: + static: + type: integer + static_ipv6: + type: integer + ospf_inter: + type: integer + ospf_intra: + type: integer + ospf_ext: + type: integer + ospfv3_inter: + type: integer + ospfv3_intra: + type: integer + ospfv3_ext: + type: integer + bgp_internal: + type: integer + bgp_external: + type: integer + bgp_local: + type: integer + rip: + type: integer + vr_admin_dists: + type: object + properties: + static: + type: integer + static_ipv6: + type: integer + ospf_int: + type: integer + ospf_ext: + type: integer + ospfv3_int: + type: integer + ospfv3_ext: + type: integer + ibgp: + type: integer + ebgp: + type: integer + rip: + type: integer + sdwan_type: + type: string + rib_filter: + type: object + properties: + ipv4: + type: object + properties: + static: + type: object + properties: + route_map: + type: string + bgp: + type: object + properties: + route_map: + type: string + ospf: + type: object + properties: + route_map: + type: string + rip: + type: object + properties: + route_map: + type: string + ipv6: + type: object + properties: + static: + type: object + properties: + route_map: + type: string + bgp: + type: object + properties: + route_map: + type: string + ospfv3: + type: object + properties: + route_map: + type: string + routing_table: + type: object + properties: + ip: + type: object + properties: + static_route: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + destination: + type: string + interface: + type: string + nexthop: + type: object + oneOf: + - title: receive + required: + - receive + properties: + receive: + type: object + properties: {} + - title: discard + required: + - discard + properties: + discard: + type: object + properties: {} + - title: ipv6_address + required: + - ipv6_address + properties: + ipv6_address: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + - title: next_lr + required: + - next_lr + properties: + next_lr: + type: string + - title: next_vr + required: + - next_vr + properties: + next_vr: + type: string + - title: tunnel + required: + - tunnel + properties: + tunnel: + type: string + route_table: + type: object + oneOf: + - title: unicast + required: + - unicast + properties: + unicast: + type: object + properties: {} + - title: multicast + required: + - multicast + properties: + multicast: + type: object + properties: {} + - title: both + required: + - both + properties: + both: + type: object + properties: {} + - title: no_install + required: + - no_install + properties: + no_install: + type: object + properties: {} + admin_dist: + type: integer + metric: + type: integer + bfd: + type: object + properties: + profile: + type: string + path_monitor: + type: object + properties: + enable: + type: boolean + failure_condition: + type: string + enum: + - 'any' + - 'all' + hold_time: + type: integer + monitor_destinations: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + source: + type: string + destination: + type: string + destination_fqdn: + type: string + interval: + type: integer + count: + type: integer + ipv6: + type: object + properties: + static_route: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + destination: + type: string + interface: + type: string + nexthop: + type: object + oneOf: + - title: receive + required: + - receive + properties: + receive: + type: object + properties: {} + - title: discard + required: + - discard + properties: + discard: + type: object + properties: {} + - title: ipv6_address + required: + - ipv6_address + properties: + ipv6_address: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + - title: next_lr + required: + - next_lr + properties: + next_lr: + type: string + - title: next_vr + required: + - next_vr + properties: + next_vr: + type: string + - title: tunnel + required: + - tunnel + properties: + tunnel: + type: string + admin_dist: + type: integer + metric: + type: integer + option: + type: object + properties: + passive: + type: object + properties: {} + route_table: + type: object + properties: + unicast: + type: object + properties: {} + multicast: + type: object + properties: {} + both: + type: object + properties: {} + no_install: + type: object + properties: {} + bfd: + type: object + properties: + profile: + type: string + path_monitor: + type: object + properties: + enable: + type: boolean + failure_condition: + type: string + enum: + - 'any' + - 'all' + hold_time: + type: integer + monitor_destinations: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + source: + type: string + destination: + type: string + destination_fqdn: + type: string + interval: + type: integer + count: + type: integer + ospf: + type: object + properties: + router_id: + type: string + global_bfd: + type: object + properties: + profile: + type: string + enable: + type: boolean + rfc1583: + type: boolean + reject_default_route: + type: boolean + allow_redist_default_route: + type: boolean + flood_prevention: + type: object + properties: + hello: + type: object + properties: + enable: + type: boolean + max_packet: + type: integer + lsa: + type: object + properties: + enable: + type: boolean + max_packet: + type: integer + spf_timer: + type: string + global_if_timer: + type: string + vr_timers: + type: object + properties: + spf_calculation_delay: + type: integer + lsa_interval: + type: integer + auth_profile: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: password + required: + - password + properties: + password: + type: string + - title: md5 + required: + - md5 + properties: + md5: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: number + key: + type: string + preferred: + type: boolean + redistribution_profile: + type: string + area: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + authentication: + type: string + type: + type: object + oneOf: + - title: normal + required: + - normal + properties: + normal: + type: object + properties: + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: stub + required: + - stub + properties: + stub: + type: object + properties: + no_summary: + type: boolean + accept_summary: + type: boolean + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + default_route_metric: + type: integer + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: nssa + required: + - nssa + properties: + nssa: + type: object + properties: + no_summary: + type: boolean + accept_summary: + type: boolean + default_information_originate: + type: object + properties: + metric: + type: integer + metric_type: + type: string + enum: + - 'type-1' + - 'type-2' + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + type: + type: string + enum: + - 'ext-1' + - 'ext-2' + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + route_tag: + type: integer + advertise: + type: boolean + range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + substitute: + type: string + advertise: + type: boolean + vr_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + mtu_ignore: + type: boolean + passive: + type: boolean + priority: + type: integer + link_type: + type: object + oneOf: + - title: broadcast + required: + - broadcast + properties: + broadcast: + type: object + properties: {} + - title: p2p + required: + - p2p + properties: + p2p: + type: object + properties: {} + - title: p2mp + required: + - p2mp + properties: + p2mp: + type: object + properties: + neighbor: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + priority: + type: integer + metric: + type: integer + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + timing: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + gr_delay: + type: integer + virtual_link: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + neighbor_id: + type: string + transit_area_id: + type: string + enable: + type: boolean + interface_id: + type: integer + instance_id: + type: integer + timing: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + passive: + type: boolean + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + export_rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + new_path_type: + type: string + enum: + - 'ext-1' + - 'ext-2' + new_tag: + type: string + metric: + type: integer + graceful_restart: + type: object + properties: + enable: + type: boolean + grace_period: + type: integer + helper_enable: + type: boolean + strict_LSA_checking: + type: boolean + max_neighbor_restart_time: + type: integer + ospfv3: + type: object + properties: + enable: + type: boolean + reject_default_route: + type: boolean + allow_redist_default_route: + type: boolean + router_id: + type: string + global_bfd: + type: object + properties: + profile: + type: string + disable_transit_traffic: + type: boolean + vr_timers: + type: object + properties: + spf_calculation_delay: + type: integer + lsa_interval: + type: integer + auth_profile: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + spi: + type: string + oneOf: + - title: esp + required: + - esp + properties: + esp: + type: object + properties: + authentication: + type: object + oneOf: + - title: sha1 + required: + - sha1 + properties: + sha1: + type: object + properties: + key: + type: string + - title: sha256 + required: + - sha256 + properties: + sha256: + type: object + properties: + key: + type: string + - title: sha384 + required: + - sha384 + properties: + sha384: + type: object + properties: + key: + type: string + - title: sha512 + required: + - sha512 + properties: + sha512: + type: object + properties: + key: + type: string + - title: md5 + required: + - md5 + properties: + md5: + type: object + properties: + key: + type: string + - title: none + required: + - none + properties: + none: + type: object + properties: {} + encryption: + type: object + properties: + algorithm: + type: string + enum: + - '3des' + - 'aes-128-cbc' + - 'aes-192-cbc' + - 'aes-256-cbc' + - 'null' + key: + type: string + - title: ah + required: + - ah + properties: + ah: + type: object + oneOf: + - title: sha1 + required: + - sha1 + properties: + sha1: + type: object + properties: + key: + type: string + - title: sha256 + required: + - sha256 + properties: + sha256: + type: object + properties: + key: + type: string + - title: sha384 + required: + - sha384 + properties: + sha384: + type: object + properties: + key: + type: string + - title: sha512 + required: + - sha512 + properties: + sha512: + type: object + properties: + key: + type: string + - title: md5 + required: + - md5 + properties: + md5: + type: object + properties: + key: + type: string + spf_timer: + type: string + global_if_timer: + type: string + redistribution_profile: + type: string + area: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + authentication: + type: string + type: + type: object + oneOf: + - title: normal + required: + - normal + properties: + normal: + type: object + properties: + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: stub + required: + - stub + properties: + stub: + type: object + properties: + accept_summary: + type: boolean + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + no_summary: + type: boolean + default_route_metric: + type: integer + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + - title: nssa + required: + - nssa + properties: + nssa: + type: object + properties: + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + route_tag: + type: integer + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + no_summary: + type: boolean + default_information_originate: + type: object + properties: + metric: + type: integer + metric_type: + type: string + enum: + - 'type-1' + - 'type-2' + accept_summary: + type: boolean + default_route: + type: object + oneOf: + - title: disable + required: + - disable + properties: + disable: + type: object + properties: {} + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: + metric: + type: integer + type: + type: string + enum: + - 'ext-1' + - 'ext-2' + abr: + type: object + properties: + import_list: + type: string + export_list: + type: string + inbound_filter_list: + type: string + outbound_filter_list: + type: string + nssa_ext_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + route_tag: + type: integer + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + advertise: + type: boolean + vr_range: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + oneOf: + - title: advertise + required: + - advertise + properties: + advertise: + type: object + properties: {} + - title: suppress + required: + - suppress + properties: + suppress: + type: object + properties: {} + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + mtu_ignore: + type: boolean + passive: + type: boolean + priority: + type: integer + link_type: + type: object + oneOf: + - title: broadcast + required: + - broadcast + properties: + broadcast: + type: object + properties: {} + - title: p2p + required: + - p2p + properties: + p2p: + type: object + properties: {} + - title: p2mp + required: + - p2mp + properties: + p2mp: + type: object + properties: + neighbor: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + priority: + type: integer + neighbor: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + gr_delay: + type: integer + metric: + type: integer + instance_id: + type: integer + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + timing: + type: string + virtual_link: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + neighbor_id: + type: string + transit_area_id: + type: string + enable: + type: boolean + interface_id: + type: integer + instance_id: + type: integer + timing: + type: string + vr_timing: + type: object + properties: + hello_interval: + type: integer + dead_counts: + type: integer + retransmit_interval: + type: integer + transit_delay: + type: integer + passive: + type: boolean + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + export_rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + new_path_type: + type: string + enum: + - 'ext-1' + - 'ext-2' + new_tag: + type: string + metric: + type: integer + graceful_restart: + type: object + properties: + enable: + type: boolean + grace_period: + type: integer + helper_enable: + type: boolean + strict_LSA_checking: + type: boolean + max_neighbor_restart_time: + type: integer + ecmp: + type: object + properties: + enable: + type: boolean + algorithm: + type: object + oneOf: + - title: ip_modulo + required: + - ip_modulo + properties: + ip_modulo: + type: object + properties: {} + - title: ip_hash + required: + - ip_hash + properties: + ip_hash: + type: object + properties: + src_only: + type: boolean + use_port: + type: boolean + hash_seed: + type: integer + - title: weighted_round_robin + required: + - weighted_round_robin + properties: + weighted_round_robin: + type: object + properties: + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + weight: + type: integer + - title: balanced_round_robin + required: + - balanced_round_robin + properties: + balanced_round_robin: + type: object + properties: {} + max_path: + type: integer + symmetric_return: + type: boolean + strict_source_path: + type: boolean + multicast: + type: object + properties: + enable: + type: boolean + enable_v6: + type: boolean + static_route: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + destination: + type: string + interface: + type: string + nexthop: + type: object + properties: + ip_address: + type: string + preference: + type: integer + pim: + type: object + properties: + enable: + type: boolean + rpf_lookup_mode: + type: string + enum: + - 'mrib-then-urib' + - 'mrib-only' + - 'urib-only' + route_ageout_time: + type: integer + if_timer_global: + type: string + group_permission: + type: string + ssm_address_space: + type: object + properties: + group_list: + type: string + spt_threshold: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + threshold: + type: string + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + description: + type: string + dr_priority: + type: integer + send_bsm: + type: boolean + if_timer: + type: string + neighbor_filter: + type: string + rp: + type: object + properties: + local_rp: + type: object + oneOf: + - title: static_rp + required: + - static_rp + properties: + static_rp: + type: object + properties: + interface: + type: string + address: + type: string + override: + type: boolean + group_list: + type: string + - title: candidate_rp + required: + - candidate_rp + properties: + candidate_rp: + type: object + properties: + interface: + type: string + address: + type: string + priority: + type: integer + advertisement_interval: + type: integer + group_list: + type: string + external_rp: + type: array + items: + type: object + properties: + name: + type: string + group_list: + type: string + override: + type: boolean + igmp: + type: object + properties: + enable: + type: boolean + dynamic: + type: object + properties: + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + version: + type: string + enum: + - '2' + - '3' + robustness: + type: string + enum: + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + group_filter: + type: string + max_groups: + type: string + max_sources: + type: string + query_profile: + type: string + router_alert_policing: + type: boolean + static: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + interface: + type: string + group_address: + type: string + source_address: + type: string + msdp: + type: object + properties: + enable: + type: boolean + global_timer: + type: string + global_authentication: + type: string + originator_id: + type: object + properties: + interface: + type: string + ip: + type: string + peer: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + local_address: + type: object + properties: + interface: + type: string + ip: + type: string + peer_as: + type: string + peer_address: + type: object + oneOf: + - title: ip + required: + - ip + properties: + ip: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + authentication: + type: string + max_sa: + type: integer + inbound_sa_filter: + type: string + outbound_sa_filter: + type: string + mode: + type: string + enum: + - PIM-SM + - IGMP-Proxy + route_ageout_time: + type: integer + interface_group: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + description: + type: string + interface: + type: array + items: + type: string + group_permission: + type: object + properties: + any_source_multicast: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_address: + type: string + included: + type: boolean + source_specific_multicast: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_address: + type: string + source_address: + type: string + included: + type: boolean + igmp: + type: object + properties: + enable: + type: boolean + version: + type: string + enum: + - '1' + - '2' + - '3' + mode: + type: string + enum: + - 'router' + - 'host' + max_query_response_time: + type: integer + query_interval: + type: integer + last_member_query_interval: + type: integer + immediate_leave: + type: boolean + robustness: + type: string + enum: + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + max_groups: + type: string + max_sources: + type: string + router_alert_policing: + type: boolean + pim: + type: object + properties: + enable: + type: boolean + assert_interval: + type: integer + hello_interval: + type: integer + join_prune_interval: + type: integer + dr_priority: + type: integer + bsr_border: + type: boolean + allowed_neighbors: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + ssm_address_space: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_address: + type: string + included: + type: boolean + spt_threshold: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + threshold: + type: string + rp: + type: object + properties: + local_rp: + type: object + oneOf: + - title: static_rp + required: + - static_rp + properties: + static_rp: + type: object + properties: + interface: + type: string + address: + type: string + override: + type: boolean + group_addresses: + type: array + items: + type: string + - title: candidate_rp + required: + - candidate_rp + properties: + candidate_rp: + type: object + properties: + interface: + type: string + address: + type: string + priority: + type: integer + advertisement_interval: + type: integer + group_addresses: + type: array + items: + type: string + external_rp: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + group_addresses: + type: array + items: + type: string + override: + type: boolean + rip: + type: object + properties: + enable: + type: boolean + default_information_originate: + type: boolean + global_timer: + type: string + auth_profile: + type: string + redistribution_profile: + type: string + global_bfd: + type: object + properties: + profile: + type: string + global_inbound_distribute_list: + type: object + properties: + access_list: + type: string + global_outbound_distribute_list: + type: object + properties: + access_list: + type: string + interface: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + mode: + type: string + enum: + - active + - passive + - send-only + split_horizon: + type: string + enum: + - split-horizon + - no-split-horizon + - no-split-horizon-with-poison-reverse + authentication: + type: string + bfd: + type: object + properties: + profile: + type: string + interface_inbound_distribute_list: + type: object + properties: + access_list: + type: string + metric: + type: integer + interface_outbound_distribute_list: + type: object + properties: + access_list: + type: string + metric: + type: integer + bgp: + type: object + properties: + enable: + type: boolean + router_id: + type: string + local_as: + type: string + confederation_member_as: + type: string + install_route: + type: boolean + enforce_first_as: + type: boolean + fast_external_failover: + type: boolean + ecmp_multi_as: + type: boolean + default_local_preference: + type: integer + graceful_shutdown: + type: boolean + always_advertise_network_route: + type: boolean + reject_default_route: + type: boolean + allow_redist_default_route: + type: boolean + as_format: + type: string + med: + type: object + properties: + always_compare_med: + type: boolean + deterministic_med_comparison: + type: boolean + aggregate: + type: object + properties: + aggregate_med: + type: boolean + graceful_restart: + type: object + properties: + enable: + type: boolean + stale_route_time: + type: integer + max_peer_restart_time: + type: integer + local_restart_time: + type: integer + global_bfd: + type: object + properties: + profile: + type: string + peer_group: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + aggregated_confed_as_path: + type: boolean + soft_reset_with_stored_info: + type: boolean + type: + type: object + oneOf: + - title: ibgp + required: + - ibgp + properties: + ibgp: + type: object + properties: + export_nexthop: + type: string + - title: ebgp_confed + required: + - ebgp_confed + properties: + ebgp_confed: + type: object + properties: + export_nexthop: + type: string + - title: ibgp_confed + required: + - ibgp_confed + properties: + ibgp_confed: + type: object + properties: + export_nexthop: + type: string + - title: ebgp + required: + - ebgp + properties: + ebgp: + type: object + properties: + import_nexthop: + type: string + export_nexthop: + type: string + remove_private_as: + type: boolean + address_family: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + filtering_profile: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + connection_options: + type: object + properties: + timers: + type: string + multihop: + type: integer + authentication: + type: string + dampening: + type: string + peer: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + passive: + type: boolean + peer_as: + type: string + peering_type: + type: string + reflector_client: + type: string + subsequent_address_family_identifier: + type: object + properties: + unicast: + type: boolean + multicast: + type: boolean + enable_sender_side_loop_detection: + type: boolean + enable_mp_bgp: + type: boolean + inherit: + type: object + oneOf: + - title: ipv4 + required: + - ipv4 + properties: + yes: + type: object + properties: {} + - title: 'no' + required: + - 'no' + properties: + no: + type: object + properties: + address_family: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + filtering_profile: + type: object + properties: + ipv4: + type: string + ipv6: + type: string + local_address: + type: object + properties: + interface: + type: string + ip: + type: string + peer_address: + type: object + oneOf: + - title: ip + required: + - ip + properties: + ip: + type: string + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: string + connection_options: + type: object + properties: + keep_alive_interval: + type: string + hold_time: + type: string + idle_hold_time: + type: integer + min_route_adv_interval: + type: integer + multihop: + type: string + open_delay_time: + type: integer + incoming_bgp_connection: + type: object + properties: + remote_port: + type: integer + allow: + type: boolean + outgoing_bgp_connection: + type: object + properties: + local_port: + type: integer + allow: + type: boolean + timers: + type: string + authentication: + type: string + dampening: + type: string + bfd: + type: object + properties: + profile: + type: string + multihop: + type: object + properties: + min_received_ttl: + type: number + max_prefixes: + type: string + aggregate_routes: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + description: + type: string + enable: + type: boolean + summary_only: + type: boolean + as_set: + type: boolean + same_med: + type: boolean + type: + type: object + oneOf: + - title: ipv4 + required: + - ipv4 + properties: + ipv4: + type: object + properties: + summary_prefix: + type: string + suppress_map: + type: string + attribute_map: + type: string + - title: ipv6 + required: + - ipv6 + properties: + ipv6: + type: object + properties: + summary_prefix: + type: string + suppress_map: + type: string + attribute_map: + type: string + redistribution_profile: + type: object + properties: + ipv4: + type: object + properties: + unicast: + type: string + ipv6: + type: object + properties: + unicast: + type: string + advertise_network: + type: object + properties: + ipv4: + type: object + properties: + network: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + unicast: + type: boolean + multicast: + type: boolean + backdoor: + type: boolean + ipv6: + type: object + properties: + network: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + unicast: + type: boolean + policy: + type: object + properties: + import: + type: object + properties: + rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + used_by: + type: array + items: + type: string + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + action: + type: object + oneOf: + - title: deny + required: + - deny + properties: + deny: + type: object + properties: {} + - title: allow + required: + - allow + properties: + allow: + type: object + properties: + dampening: + type: string + update: + type: object + properties: + local_preference: + type: integer + med: + type: integer + weight: + type: integer + nexthop: + type: string + origin: + type: string + enum: + - igp + - egp + - incomplete + as_path_limit: + type: integer + as_path: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove + required: + - remove + properties: + remove: + type: object + properties: {} + - title: prepend + required: + - prepend + properties: + prepend: + type: integer + - title: remove_and_prepend + required: + - remove_and_prepend + properties: + remove_and_prepend: + type: integer + community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + extended_community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + export: + type: object + properties: + rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + used_by: + type: array + items: + type: string + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + action: + type: object + oneOf: + - title: deny + required: + - deny + properties: + deny: + type: object + properties: {} + - title: allow + required: + - allow + properties: + allow: + type: object + properties: + update: + type: object + properties: + local_preference: + type: integer + med: + type: integer + nexthop: + type: string + origin: + type: string + enum: + - igp + - egp + - multicast + as_path_limit: + type: integer + as_path: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove + required: + - remove + properties: + remove: + type: object + properties: {} + - title: prepend + required: + - prepend + properties: + prepend: + type: integer + - title: remove_and_prepend + required: + - remove_and_prepend + properties: + remove_and_prepend: + type: integer + community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + extended_community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + conditional_advertisement: + type: object + properties: + policy: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + used_by: + type: array + items: + type: string + non_exist_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + advertise_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + aggregation: + type: object + properties: + address: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + prefix: + type: string + enable: + type: boolean + summary: + type: boolean + as_set: + type: boolean + aggregate_route_attributes: + type: object + properties: + local_preference: + type: integer + med: + type: integer + weight: + type: integer + nexthop: + type: string + origin: + type: string + enum: + - igp + - egp + - incomplete + as_path_limit: + type: integer + as_path: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove + required: + - remove + properties: + remove: + type: object + properties: {} + - title: prepend + required: + - prepend + properties: + prepend: + type: integer + - title: remove_and_prepend + required: + - remove_and_prepend + properties: + remove_and_prepend: + type: integer + community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + extended_community: + type: object + oneOf: + - title: none + required: + - none + properties: + none: + type: object + properties: {} + - title: remove_all + required: + - remove_all + properties: + remove_all: + type: object + properties: {} + - title: remove_regex + required: + - remove_regex + properties: + remove_regex: + type: string + - title: append + required: + - append + properties: + append: + type: array + items: + type: string + - title: overwrite + required: + - overwrite + properties: + overwrite: + type: array + items: + type: string + suppress_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + advertise_filters: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + enable: + type: boolean + match: + type: object + properties: + afi: + type: string + enum: + - ip + - ipv6 + safi: + type: string + enum: + - ip + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + address_prefix: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + exact: + type: boolean + nexthop: + type: array + items: + type: string + from_peer: + type: array + items: + type: string + med: + type: integer + as_path: + type: object + properties: + regex: + type: string + community: + type: object + properties: + regex: + type: string + extended_community: + type: object + properties: + regex: + type: string + redist_rules: + type: array + items: + type: object + required: + - 'name' + properties: + name: + type: string + address_family_identifier: + type: string + enum: + - ipv4 + - ipv6 + route_table: + type: string + enum: + - unicast + - multicast + - both + enable: + type: boolean + set_origin: + type: string + enum: + - igp + - egp + - incomplete + set_med: + type: integer + set_local_preference: + type: integer + set_as_path_limit: + type: integer + set_community: + type: array + items: + type: string + set_extended_community: + type: array + items: + type: string + metric: + type: integer + 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 + ospf-auth-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + anyOf: + - oneOf: + - title: password + type: object + required: + - password + properties: + password: + description: Password + type: string + format: password + - title: md5 + type: object + required: + - md5 + properties: + md5: + description: MD5s + type: array + items: + type: object + properties: + name: + description: Key ID + type: integer + minimum: 1 + maximum: 255 + key: + description: MD5 hash + type: string + maxLength: 16 + format: password + preferred: + description: Preferred? + type: boolean + - 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 + pbf-rules: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: PBF rule name + type: string + description: + description: Description + type: string + tag: + description: Tags + type: array + items: + type: string + schedule: + description: Schedule + type: string + from: + type: object + oneOf: + - title: zone + type: object + properties: + zone: + description: Source zones + type: array + items: + description: Source zone name + type: string + - title: interface + type: object + properties: + interface: + description: Source interfaces + type: array + items: + description: Source interface name + type: string + source: + description: Source addresses + type: array + items: + type: string + source_user: + description: Source users + type: array + items: + description: Source username + type: string + destination: + description: Destination addresses + type: array + items: + type: string + service: + description: Services + type: array + items: + description: Service name + type: string + application: + description: Applications + type: array + items: + description: Application name + type: string + action: + type: object + oneOf: + - title: forward + type: object + properties: + forward: + type: object + properties: + egress_interface: + description: Egress interface + type: string + nexthop: + type: object + oneOf: + - title: ip-address + properties: + ip_address: + description: Next hop IP address + type: string + - title: fqdn + properties: + fqdn: + description: Next hop FQDN + type: string + monitor: + type: object + properties: + profile: + description: Monitoring profile + type: string + disable_if_unreachable: + description: Disable this rule if nexthop/monitor ip is unreachable? + type: boolean + ip_address: + description: Monitor IP address + type: string + - title: discard + type: object + properties: + discard: + type: object + default: {} + - title: no_pbf + type: object + properties: + no_pbf: + type: object + default: {} + enforce_symmetric_return: + type: object + properties: + enabled: + description: Enforce symmetric return? + type: boolean + nexthop_address_list: + description: Next hop IP addresses + type: array + items: + type: object + properties: + name: + description: Next hop IP address + type: string + 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 + route-access-lists: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Route access list name + type: string + description: + description: Description + type: string + type: + type: object + properties: + ipv4: + type: object + properties: + ipv4_entry: + description: IPv4 access lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + source_address: + type: object + oneOf: + - title: address + required: + - address + properties: + address: + description: Source IP address + type: string + - title: entry + required: + - entry + properties: + address: + description: Source IP address + type: string + wildcard: + description: Source IP wildcard + type: string + destination_address: + type: object + oneOf: + - title: address + required: + - address + properties: + address: + description: Destination IP address + type: string + - title: entry + required: + - entry + properties: + address: + description: Destination IP address + type: string + wildcard: + description: Destination IP wildcard + type: string + 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 + route-community-lists: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Route community list name + type: string + description: + description: Description + type: string + type: + type: object + oneOf: + - title: regular + required: + - regular + properties: + regular: + type: object + properties: + regular_entry: + description: Regular community lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + community: + description: Communities + type: array + items: + description: Community + type: string + enum: + - blackhole + - no-peer + - graceful-shutdown + - accept-own + - local-as + - route-filter-v4 + - route-filter-v6 + - no-advertise + - no-export + - internet + - title: large + required: + - large + properties: + large: + type: object + properties: + large_entry: + description: Large community lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + lc_regex: + description: Large community regular expression + type: array + items: + type: string + maxItems: 8 + - title: extended + required: + - extended + properties: + extended: + type: object + properties: + extended_entry: + description: Extended community lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + lc_regex: + description: Extended community regular expression + type: array + items: + type: string + maxItems: 8 + 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 + route-path-access-lists: + type: object + required: + - 'name' + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: AS path access list name + type: string + description: + description: Description + type: string + aspath_entry: + description: AS paths + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + aspath_regex: + description: AS path regular expression + type: string + 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 + route-prefix-lists: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Filter prefix list name + type: string + description: + description: Description + type: string + ipv4: + type: object + properties: + ipv4_entry: + description: IPv4 prefix lists + type: array + items: + type: object + properties: + name: + description: Sequence number + type: integer + minimum: 1 + maximum: 65535 + action: + description: Action + type: string + enum: + - deny + - permit + prefix: + type: object + oneOf: + - title: network + required: + - network + properties: + network: + description: Network + type: string + enum: + - any + - title: entry + required: + - "entry" + properties: + entry: + type: object + properties: + network: + description: Network + type: string + greater_than_or_equal: + description: Greater than or equal to + type: integer + minimum: 0 + maximum: 32 + less_than_or_equal: + description: Less than or equal to + type: integer + minimum: 0 + maximum: 32 + 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 + auto-vpn-clusters: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: VPN cluster name + type: string + enable_sdwan: + description: Enable SD-WAN? + type: boolean + enable_mesh_between_hubs: + description: Enable mesh between hubs? + type: boolean + enable_mesh_interconnect: + description: Enable mesh interconnect? + type: boolean + type: + description: VPN cluster type + type: string + enum: + - hub-spoke + - mesh + default: hub-spoke + branches: + description: Branches + type: array + items: + type: object + properties: + name: + description: Branch firewall serial number + type: string + site: + description: Site name + type: string + logical_router: + description: Router + type: string + bgp_redistribution_profile: + description: BGP redistribution profile + type: string + interfaces: + description: Interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + dhcp_ip: + description: DHCP IP + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + default: false + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + maxItems: 4 + private_interfaces: + description: Private interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + default: false + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + maxItems: 4 + gateways: + description: Hubs + type: array + items: + type: object + properties: + name: + description: Hub firewall serial number + type: string + site: + description: Site name + type: string + priority: + description: Priority + enum: + - '1' + - '2' + - '3' + - '4' + - '5' + - '6' + - '7' + - '8' + logical_router: + description: Router + type: string + bgp_redistribution_profile: + description: BGP redistribution file + type: string + allow_dia_vpn_failover: + description: Allow DIA to VPN failover on branch device for the hub? + type: boolean + interfaces: + description: Interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + dhcp_ip: + description: DHCP IP + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + private_interfaces: + description: Private interfaces + type: array + items: + type: object + properties: + name: + description: Ethernet interface + type: string + sdwan_link_settings: + type: object + properties: + sdwan_interface_profile: + description: SD-WAN interface profile + type: string + upstream_nat: + type: object + properties: + enable: + description: Upstream NAT? + type: boolean + static_ip: + type: object + oneOf: + - title: ip_address + properties: + ip_address: + description: IP address + type: string + - title: fqdn + properties: + fqdn: + description: FQDN + type: string + sdwan_gateway: + description: Next hop gateway + type: string + auto-vpn-monitor: + type: object + properties: + vpn_cluster: + description: VPN cluster + type: string + connection_type: + description: Connection type + type: string + source_device: + description: Hub firewall serial number + type: string + local_intf: + description: Hub firewall interface + type: string + destination_device: + description: Branch firewall serial number + type: string + peer_intf: + description: Branch firewall interface + type: string + ike_gateway_name: + description: IKE gateway name + type: string + tunnel_name: + description: Tunnel name + type: string + tunnel_ip: + description: Hub tunnel IP address + type: string + ike_sa_status: + description: IKE security association status + type: string + ike_sa_result: + description: IKE security association result + type: string + ipsec_sa_status: + description: IPSec security association status + type: string + ipsec_sa_result: + description: IPSec security association result + type: string + tunnel_status: + description: Tunnel status + type: string + tunnel_result: + description: Tunnel result + type: string + ts: + description: Timestamp + type: string + # auto-vpn-objects: + # type: object + # properties: + # name: + # type: string + # example: string + # interface: + # type: array + # items: + # type: object + # example: [] + # bgp: + # type: object + # properties: + # enable: + # type: boolean + # router_id: + # type: string + # example: string + # local_as: + # type: string + # example: string + # install_route: + # type: boolean + # enforce_first_as: + # type: boolean + # fast_external_failover: + # type: boolean + # ecmp_multi_as: + # type: boolean + # default_local_preference: + # type: integer + # example: 1 + # graceful_shutdown: + # type: boolean + # always_advertise_network_route: + # type: boolean + # med: + # type: object + # properties: + # always_compare_med: + # type: boolean + # deterministic_med_comparison: + # type: boolean + # graceful_restart: + # type: object + # properties: + # enable: + # type: boolean + # stale_route_time: + # type: integer + # example: 1 + # max_peer_restart_time: + # type: integer + # example: 1 + # local_restart_time: + # type: integer + # example: 1 + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # peer_group: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # uuid: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # enable: + # type: boolean + # type: + # type: object + # properties: + # ibgp: + # type: object + # ebgp: + # type: object + # address_family: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # filtering_profile: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # connection_options: + # type: object + # properties: + # timers: + # type: string + # example: string + # multihop: + # type: string + # example: string + # authentication: + # type: string + # example: string + # dampening: + # type: string + # example: string + # peer: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # passive: + # type: boolean + # peer_as: + # type: string + # example: string + # enable_sender_side_loop_detection: + # type: boolean + # inherit: + # type: object + # properties: + # yes: + # type: object + # no: + # type: object + # properties: + # address_family: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # filtering_profile: + # type: object + # properties: + # ipv4: + # type: string + # example: string + # ipv6: + # type: string + # example: string + # local_address: + # type: object + # properties: + # interface: + # type: string + # example: string + # ip: + # type: string + # example: string + # peer_address: + # type: object + # properties: + # ip: + # type: string + # example: string + # fqdn: + # type: string + # example: string + # connection_options: + # type: object + # properties: + # timers: + # type: string + # example: string + # multihop: + # type: string + # example: string + # authentication: + # type: string + # example: string + # dampening: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # multihop: + # type: object + # properties: + # min_received_ttl: + # type: integer + # example: 1 + # aggregate_routes: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # description: + # type: string + # example: string + # enable: + # type: boolean + # summary_only: + # type: boolean + # as_set: + # type: boolean + # same_med: + # type: boolean + # type: + # type: object + # properties: + # ipv4: + # type: object + # properties: + # summary_prefix: + # type: string + # example: string + # suppress_map: + # type: string + # example: string + # attribute_map: + # type: string + # example: string + # ipv6: + # type: object + # properties: + # summary_prefix: + # type: string + # example: string + # suppress_map: + # type: string + # example: string + # attribute_map: + # type: string + # example: string + # redistribution_profile: + # type: object + # properties: + # ipv4: + # type: object + # properties: + # unicast: + # type: string + # example: string + # ipv6: + # type: object + # properties: + # unicast: + # type: string + # example: string + # advertise_network: + # type: object + # properties: + # ipv4: + # type: object + # properties: + # network: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # unicast: + # type: boolean + # multicast: + # type: boolean + # backdoor: + # type: boolean + # ipv6: + # type: object + # properties: + # network: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # unicast: + # type: boolean + # routing_table: + # type: object + # properties: + # ip: + # type: object + # properties: + # static_route: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # uuid: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # destination: + # type: string + # example: string + # interface: + # type: string + # example: string + # nexthop: + # type: object + # properties: + # discard: + # type: object + # ip_address: + # type: string + # example: string + # next_lr: + # type: string + # example: string + # fqdn: + # type: string + # example: string + # admin_dist: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # path_monitor: + # type: object + # properties: + # enable: + # type: boolean + # failure_condition: + # type: string + # example: string + # hold_time: + # type: integer + # example: 1 + # monitor_destinations: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # source: + # type: string + # example: string + # destination: + # type: string + # example: string + # interval: + # type: integer + # example: 1 + # count: + # type: integer + # example: 1 + # ipv6: + # type: object + # properties: + # static_route: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # destination: + # type: string + # example: string + # interface: + # type: string + # example: string + # nexthop: + # type: object + # properties: + # discard: + # type: object + # ipv6_address: + # type: string + # example: string + # fqdn: + # type: string + # example: string + # next_lr: + # type: string + # example: string + # admin_dist: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # path_monitor: + # type: object + # properties: + # enable: + # type: boolean + # failure_condition: + # type: string + # example: string + # hold_time: + # type: integer + # example: 1 + # monitor_destinations: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # source: + # type: string + # example: string + # destination: + # type: string + # example: string + # interval: + # type: integer + # example: 1 + # count: + # type: integer + # example: 1 + # ospf: + # type: object + # properties: + # router_id: + # type: string + # example: string + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # enable: + # type: boolean + # rfc1583: + # type: boolean + # spf_timer: + # type: string + # example: string + # global_if_timer: + # type: string + # example: string + # redistribution_profile: + # type: string + # example: string + # area: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # authentication: + # type: string + # example: string + # type: + # type: object + # properties: + # normal: + # type: object + # properties: + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # stub: + # type: object + # properties: + # no_summary: + # type: boolean + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa: + # type: object + # properties: + # no_summary: + # type: boolean + # default_information_originate: + # type: object + # properties: + # metric: + # type: integer + # example: 1 + # metric_type: + # type: string + # example: string + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa_ext_range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # route_tag: + # type: integer + # example: 1 + # advertise: + # type: boolean + # range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # substitute: + # type: string + # example: string + # advertise: + # type: boolean + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # enable: + # type: boolean + # mtu_ignore: + # type: boolean + # passive: + # type: boolean + # priority: + # type: integer + # example: 1 + # link_type: + # type: object + # properties: + # broadcast: + # type: object + # p2p: + # type: object + # p2mp: + # type: object + # properties: + # neighbor: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # priority: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # timing: + # type: string + # example: string + # virtual_link: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # neighbor_id: + # type: string + # example: string + # transit_area_id: + # type: string + # example: string + # enable: + # type: boolean + # interface_id: + # type: integer + # example: 1 + # instance_id: + # type: integer + # example: 1 + # timing: + # type: string + # example: string + # passive: + # type: boolean + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # graceful_restart: + # type: object + # properties: + # enable: + # type: boolean + # grace_period: + # type: integer + # example: 1 + # helper_enable: + # type: boolean + # strict_LSA_checking: + # type: boolean + # max_neighbor_restart_time: + # type: integer + # example: 1 + # ospfv3: + # type: object + # properties: + # enable: + # type: boolean + # router_id: + # type: string + # example: string + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # disable_transit_traffic: + # type: boolean + # spf_timer: + # type: string + # example: string + # global_if_timer: + # type: string + # example: string + # redistribution_profile: + # type: string + # example: string + # area: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # authentication: + # type: string + # example: string + # type: + # type: object + # properties: + # normal: + # type: object + # properties: + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # stub: + # type: object + # properties: + # no_summary: + # type: boolean + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa: + # type: object + # properties: + # no_summary: + # type: boolean + # default_information_originate: + # type: object + # properties: + # metric: + # type: integer + # example: 1 + # metric_type: + # type: string + # example: string + # abr: + # type: object + # properties: + # import_list: + # type: string + # example: string + # export_list: + # type: string + # example: string + # inbound_filter_list: + # type: string + # example: string + # outbound_filter_list: + # type: string + # example: string + # nssa_ext_range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # route_tag: + # type: integer + # example: 1 + # advertise: + # type: boolean + # range: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # advertise: + # type: boolean + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # mtu_ignore: + # type: boolean + # passive: + # type: boolean + # priority: + # type: integer + # example: 1 + # link_type: + # type: object + # properties: + # broadcast: + # type: object + # p2p: + # type: object + # p2mp: + # type: object + # properties: + # neighbor: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # priority: + # type: integer + # example: 1 + # metric: + # type: integer + # example: 1 + # instance_id: + # type: integer + # example: 1 + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # timing: + # type: string + # example: string + # virtual_link: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # neighbor_id: + # type: string + # example: string + # transit_area_id: + # type: string + # example: string + # enable: + # type: boolean + # interface_id: + # type: integer + # example: 1 + # instance_id: + # type: integer + # example: 1 + # timing: + # type: string + # example: string + # passive: + # type: boolean + # authentication: + # type: string + # example: string + # graceful_restart: + # type: object + # properties: + # enable: + # type: boolean + # grace_period: + # type: integer + # example: 1 + # helper_enable: + # type: boolean + # strict_LSA_checking: + # type: boolean + # max_neighbor_restart_time: + # type: integer + # example: 1 + # ecmp: + # type: object + # properties: + # enable: + # type: boolean + # autogenerated: + # type: string + # example: string + # algorithm: + # type: object + # properties: + # ip_modulo: + # type: object + # ip_hash: + # type: object + # properties: + # src_only: + # type: boolean + # use_port: + # type: boolean + # hash_seed: + # type: integer + # example: 1 + # weighted_round_robin: + # type: object + # properties: + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # weight: + # type: integer + # example: 1 + # balanced_round_robin: + # type: object + # max_path: + # type: integer + # example: 1 + # symmetric_return: + # type: boolean + # strict_source_path: + # type: boolean + # multicast: + # type: object + # properties: + # enable: + # type: boolean + # static_route: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # autogenerated: + # type: string + # example: string + # destination: + # type: string + # example: string + # interface: + # type: string + # example: string + # nexthop: + # type: object + # properties: + # ip_address: + # type: string + # example: string + # preference: + # type: integer + # example: 1 + # pim: + # type: object + # properties: + # enable: + # type: boolean + # rpf_lookup_mode: + # type: string + # example: string + # route_ageout_time: + # type: integer + # example: 1 + # if_timer_global: + # type: string + # example: string + # group_permission: + # type: string + # example: string + # ssm_address_space: + # type: object + # properties: + # group_list: + # type: string + # example: string + # spt_threshold: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # threshold: + # type: string + # example: string + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # description: + # type: string + # example: string + # dr_priority: + # type: integer + # example: 1 + # send_bsm: + # type: boolean + # if_timer: + # type: string + # example: string + # neighbor_filter: + # type: string + # example: string + # rp: + # type: object + # properties: + # local_rp: + # type: object + # properties: + # static_rp: + # type: object + # properties: + # interface: + # type: string + # example: string + # address: + # type: string + # example: string + # override: + # type: boolean + # group_list: + # type: string + # example: string + # candidate_rp: + # type: object + # properties: + # interface: + # type: string + # example: string + # address: + # type: string + # example: string + # priority: + # type: integer + # example: 1 + # advertisement_interval: + # type: integer + # example: 1 + # group_list: + # type: string + # example: string + # external_rp: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # group_list: + # type: string + # example: string + # override: + # type: boolean + # igmp: + # type: object + # properties: + # enable: + # type: boolean + # dynamic: + # type: object + # properties: + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # version: + # type: string + # example: string + # robustness: + # type: string + # example: string + # group_filter: + # type: string + # example: string + # max_groups: + # type: string + # example: string + # max_sources: + # type: string + # example: string + # query_profile: + # type: string + # example: string + # router_alert_policing: + # type: boolean + # static: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # interface: + # type: string + # example: string + # group_address: + # type: string + # example: string + # source_address: + # type: string + # example: string + # rip: + # type: object + # properties: + # enable: + # type: boolean + # default_information_originate: + # type: boolean + # global_timer: + # type: string + # example: string + # auth_profile: + # type: string + # example: string + # redistribution_profile: + # type: string + # example: string + # global_bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # global_inbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # global_outbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # interface: + # type: array + # items: + # type: object + # properties: + # name: + # type: string + # example: string + # enable: + # type: boolean + # mode: + # type: string + # example: string + # split_horizon: + # type: string + # example: string + # authentication: + # type: string + # example: string + # bfd: + # type: object + # properties: + # profile: + # type: string + # example: string + # interface_inbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # metric: + # type: integer + # example: 1 + # interface_outbound_distribute_list: + # type: object + # properties: + # access_list: + # type: string + # example: string + # metric: + # type: integer + # example: 1 + auto-vpn-push-config: + type: object + properties: + auto_vpn_devices: + description: VPN clusters + type: array + items: + type: object + properties: + name: + description: VPN cluster to push to + type: string + refresh_psk: + type: boolean + default: true + auto-vpn-push-response: + type: object + properties: + success: + description: Push successful? + type: boolean + job: + description: Job ID + type: string + message: + description: Job message + type: string + auto-vpn-settings: + required: + - vpn_address_pool + - as_range + type: object + properties: + vpn_address_pool: + description: VPN address pool + type: array + items: + type: string + as_range: + type: object + properties: + start: + type: integer + minimum: 1 + maximum: 65535 + end: + type: integer + minimum: 1 + maximum: 65535 + enable_mesh_between_hubs: + description: Enable mesh connection between hubs? + type: boolean + sdwan-error-correction-profiles: + type: object + required: + - name + - activation_threshold + - mode + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + activation_threshold: + type: integer + example: 1 + mode: + type: object + oneOf: + - title: forward_error_correction + type: object + required: + - forward_error_correction + properties: + forward_error_correction: + type: object + required: + - ratio + - recovery_duration + properties: + ratio: + type: string + recovery_duration: + type: integer + - title: packet_duplication + type: object + required: + - packet_duplication + properties: + packet_duplication: + type: object + required: + - recovery_duration_pd + properties: + recovery_duration_pd: + type: integer + 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 + sdwan-path-quality-profiles: + type: object + required: + - name + - metric + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + maxLength: 31 + metric: + type: object + required: + - latency + - pkt-loss + - jitter + properties: + latency: + type: object + required: + - threshold + - sensitivity + properties: + threshold: + description: Latency threshold (ms) + default: 100 + type: integer + minimum: 10 + maximum: 3000 + sensitivity: + description: Latency sensitivity + default: medium + type: string + enum: + - low + - medium + - high + pkt_loss: + type: object + required: + - threshold + - sensitivity + properties: + threshold: + description: Packet loss threshold (percentage) + default: 1 + type: integer + minimum: 1 + maximum: 100 + sensitivity: + description: Packet loss sensitivity + default: medium + type: string + enum: + - low + - medium + - high + jitter: + type: object + required: + - threshold + - sensitivity + properties: + threshold: + description: Jitter threshold (ms) + default: 100 + type: integer + minimum: 10 + maximum: 2000 + sensitivity: + description: Jitter sensitivity + default: medium + type: string + enum: + - low + - medium + - high + 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 + sdwan-rules: + type: object + required: + - name + - from + - position + - to + - source + - source_user + - destination + - application + - service + - action + - path_quality_profile + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Rule name + type: string + description: + description: Rule description + type: string + position: + description: Rule postion relative to device rules + type: string + enum: + - pre + - post + disabled: + description: Disable rule? + type: boolean + default: false + tag: + description: List of tags + type: array + items: + type: string + from: + description: List of source zones + type: array + items: + type: string + example: any + to: + description: List of destination zones + type: array + items: + type: string + example: any + source: + description: List of source addresses + type: array + items: + type: string + example: any + negate_source: + description: Negate source address(es)? + type: boolean + default: false + source_user: + description: List of source users + type: array + items: + type: string + example: any + destination: + description: List of destination addresses + type: array + items: + type: string + example: any + negate_destination: + description: Negate destination address(es)? + type: boolean + default: false + application: + description: List of applications + type: array + items: + type: string + example: any + service: + description: List of services + type: array + items: + type: string + example: any + path_quality_profile: + description: Path quality profile + type: string + saas_quality_profile: + description: SaaS quality profile + type: string + error_correction_profile: + description: Error correction profile + type: string + action: + type: object + required: + - traffic_distribution_profile + properties: + traffic_distribution_profile: + description: Traffic dstribution profile + type: string + 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 + sdwan-saas-quality-profiles: + type: object + required: + - name + - monitor_mode + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + monitor_mode: + type: object + oneOf: + - title: adaptive + type: object + required: + - adaptive + properties: + adaptive: + type: object + default: {} + - title: static_ip + type: object + required: + - static_ip + properties: + static_ip: + type: object + oneOf: + - title: ip_address + required: + - ip_address + properties: + ip_address: + description: List of IP addresses + type: array + items: + type: object + required: + - name + - probe_interval + properties: + name: + description: IP address + type: string + format: ip-address + probe_interval: + description: Probe interval (seconds) + type: integer + minimum: 1 + maximum: 60 + - title: fqdn + required: + - fqdn + properties: + fqdn: + type: object + required: + - fqdn_name + - probe_interval + properties: + fqdn_name: + description: FQDN + type: string + probe_interval: + description: Probe interval (seconds) + type: integer + minimum: 1 + maximum: 60 + - title: http_https + type: object + required: + - http_https + properties: + http_https: + type: object + required: + - monitored_url + - probe_interval + properties: + monitored_url: + description: Monitored URL + type: string + format: url + probe_interval: + description: Probe interval (seconds) + type: integer + minimum: 1 + maximum: 60 + 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 + sdwan-traffic-distribution-profiles: + type: object + required: + - name + - traffic-distribution + - link-tags + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + maxLength: 31 + traffic_distribution: + description: Traffic distribution + type: string + enum: + - Best Available Path + - Top Down Priority + - Weighted Session Distribution + default: Best Available Path + link_tags: + type: array + description: Link-Tags for interfaces identified by defined tags + items: + type: object + required: + - name + properties: + name: + type: string + maxLength: 255 + description: Link-Tag used for identifying a set of interfaces + weight: + description: Weight (percentage) (only used when `traffic-distribution` is `Weighted Session Distribution`) + type: integer + minimum: 0 + maximum: 100 + 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 + dhcp-interfaces: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Interface name + type: string + anyOf: + - oneOf: + - title: server + required: + - server + properties: + server: + type: object + properties: + probe_ip: + description: Ping IP before allocating? + type: boolean + mode: + description: DHCP server mode + type: string + enum: + - auto + - enabled + - disabled + option: + type: object + properties: + lease: + type: object + oneOf: + - title: unlimited + properties: + unlimited: + type: object + default: {} + - title: timeout + properties: + timeout: + description: DHCP lease timeout (minutes) + type: integer + minimum: 0 + maximum: 1000000 + inheritance: + type: object + properties: + source: + description: Interface from which to inherit lease options + type: string + gateway: + description: Default gateway + type: string + subnet_mask: + description: Subnet mask + type: string + dns: + type: object + properties: + primary: + description: Primary DNS server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary DNS server + type: string + format: ip-address + example: inherited + wins: + type: object + properties: + primary: + description: Primary WINS server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary WINS server + type: string + format: ip-address + example: inherited + nis: + type: object + properties: + primary: + description: Primary NIS server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary NIS server + type: string + format: ip-address + example: inherited + ntp: + type: object + properties: + primary: + description: Primary NTP server + type: string + format: ip-address + example: inherited + secondary: + description: Secondary NTP server + type: string + format: ip-address + example: inherited + pop3_server: + description: POP3 server + type: string + example: inherited + smtp_server: + description: SMTP server + type: string + example: inherited + dns_suffix: + description: DNS suffix + type: string + example: inherited + user_defined: + description: Custom DHCP options + type: array + items: + type: object + required: + - name + - inherited + properties: + name: + description: Option name + type: string + code: + description: Option code + type: integer + minimum: 1 + maximum: 254 + inherited: + description: Inherited from DHCP server inheritance source? + type: boolean + oneOf: + - title: ip + required: + - ip + properties: + ip: + type: array + items: + description: List of IP addresses + type: string + - title: ascii + required: + - ascii + properties: + ascii: + type: array + items: + description: List of ASCII values + type: string + - title: hex + required: + - hex + properties: + hex: + type: array + items: + description: List of hexadecimal values + type: string + ip_pool: + description: List of IP address pools + type: array + items: + description: IP address pool + type: string + reserved: + description: List of IP reservations + type: array + required: + - name + - mac + items: + type: object + properties: + name: + description: Reserved IP address + type: string + format: ip-address + mac: + description: Reserved MAC address + type: string + format: mac-address + description: + description: Reservation description + type: string + - title: relay + properties: + relay: + type: object + required: + - ip + properties: + ip: + type: object + required: + - enabled + - server + properties: + enabled: + description: Enabled? + type: boolean + default: true + server: + type: array + items: + description: List of DHCP server IP addresses + type: string + format: ip-address + - 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 + dns-proxies: + type: object + required: + - name + - default + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: DNS proxy name + type: string + maxLength: 31 + enabled: + description: Enable DNS proxy? + type: boolean + default: + type: object + required: + - primary + properties: + inheritance: + type: object + properties: + source: + description: Dynamic interface + type: string + primary: + description: Primary DNS Name server IP address + type: string + example: inherited + secondary: + description: Secondary DNS Name server IP address + type: string + example: inherited + interface: + description: Interfaces on which to enable DNS proxy service + type: array + items: + description: Interface name + type: string + domain_servers: + type: array + description: DNS proxy rules + items: + type: object + required: + - name + - domain-name + - primary + properties: + name: + description: Proxy rule name + type: string + cacheable: + description: Enable caching for this DNS proxy rule? + type: boolean + domain_name: + type: array + description: Domain names(s) that will be matched + items: + description: Domain name + type: string + format: fqdn + maxLength: 128 + primary: + description: Primary DNS server IP address + type: string + format: ip-address + secondary: + description: Secondary DNS server IP address + type: string + format: ip-address + static_entries: + type: array + items: + description: Static domain name mappings + type: object + required: + - name + - domain + - address + properties: + name: + description: Static entry name + type: string + maxLength: 31 + domain: + description: Fully qualified domain name + type: string + maxLength: 255 + address: + type: array + items: + description: Resolved IP address + type: string + format: ip-address + maxLength: 63 + tcp_queries: + type: object + required: + - enabled + properties: + enabled: + description: Turn on forwarding of TCP DNS queries? + type: boolean + default: false + max_pending_requests: + description: Upper limit on number of concurrent TCP DNS requests + type: integer + minimum: 64 + maximum: 256 + default: 64 + udp_queries: + type: object + properties: + retries: + properties: + interval: + description: Time in seconds for another request to be sent + default: 2 + type: integer + minimum: 1 + maximum: 30 + attempts: + description: Maximum number of retries before trying next name server + default: 5 + type: integer + minimum: 1 + maximum: 30 + cache: + type: object + required: + - enabled + properties: + enabled: + description: Turn on caching for this DNS object + type: boolean + default: true + cache_edns: + description: Cache EDNS UDP response + type: boolean + default: true + max_ttl: + type: object + required: + - enabled + properties: + enabled: + description: Enable max ttl for this DNS object + default: false + type: boolean + time_to_live: + description: Time in seconds after which entry is cleared + type: integer + minimum: 60 + maximum: 86400 + 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 + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 +security: + - scmToken: [] +x-internal: false \ No newline at end of file diff --git a/openapi-specs/scm/config/sase/objects/objects-recent.yaml b/openapi-specs/scm/config/sase/objects/objects-recent.yaml new file mode 100644 index 000000000..478d5aba3 --- /dev/null +++ b/openapi-specs/scm/config/sase/objects/objects-recent.yaml @@ -0,0 +1,7397 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: Objects + description: These APIs are used for defining and managing policy object configurations 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/objects/v1' + description: Current + - url: 'https://api.sase.paloaltonetworks.com/sse/config/v1' + description: Legacy +tags: + - name: Address Groups + description: Address Groups + - name: Addresses + description: Addresses + - name: Application Filters + description: Application Filters + - name: Application Groups + description: Application Groups + - name: Applications + description: Applications + - name: Auto-Tag Actions + description: Auto-Tag Actions + - name: Dynamic User Groups + description: Dynamic User Groups + - name: External Dynamic Lists + description: External Dynamic Lists + - name: HIP Objects + description: HIP Objects + - name: HIP Profiles + description: HIP Profiles + - name: HTTP Server Profiles + description: HTTP Server Profiles + - name: Log Forwarding Profiles + description: Log Forwarding Profiles + - name: Quarantined Devices + description: Quarantined Devices + - name: Regions + description: Regions + - name: Schedules + description: Schedules + - name: Service Groups + description: Service Groups + - name: Services + description: Services + - name: Syslog Server Profiles + description: Syslog Server Profiles + - name: Tags + description: Tags +paths: + /addresses: + get: + tags: + - Addresses + summary: List addresses + description: | + Retrieve a list of addresses. + operationId: ListAddresses + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/addresses' + 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: + - Addresses + summary: Create an address + description: | + Create a new address. + operationId: CreateAddresses + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/addresses' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/addresses' + '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' + '/addresses/{id}': + get: + tags: + - Addresses + summary: Get an address + description: | + Retrieve an existing address. + operationId: GetAddressesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/addresses' + '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: + - Addresses + summary: Update an address + description: | + Update an existing address. + operationId: UpdateAddressesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/addresses' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/addresses' + '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: + - Addresses + summary: Delete an address + description: | + Delete an address. + operationId: DeleteAddressesByID + 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' + /address-groups: + get: + tags: + - Address Groups + summary: List address groups + description: | + Retrieve a list of address groups. + operationId: ListAddressGroups + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/address-groups' + 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: + - Address Groups + summary: Create an address group + description: | + Create a new address group. + operationId: CreateAddressGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/address-groups' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/address-groups' + '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' + '/address-groups/{id}': + get: + tags: + - Address Groups + summary: Get an address group + description: | + Retrieve an existing address group. + operationId: GetAddressGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/address-groups' + '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: + - Address Groups + summary: Update an address group + description: | + Update an existing address group. + operationId: UpdateAddressGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/address-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/address-groups' + '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: + - Address Groups + summary: Delete an address group + description: | + Delete an address group. + operationId: DeleteAddressGroupsByID + 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' + /applications: + get: + tags: + - Applications + summary: List applications + description: | + Retrieve a list of applications. + operationId: ListApplications + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/applications' + 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: + - Applications + summary: Create an application + description: | + Create a new application. + operationId: CreateApplications + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/applications' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/applications' + '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' + '/applications/{id}': + get: + tags: + - Applications + summary: Get the application by id + description: | + Get an existing application. + operationId: GetApplicationsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/applications' + '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: + - Applications + summary: Update an application + description: | + Update an existing application. + operationId: UpdateApplicationsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/applications' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/applications' + '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: + - Applications + summary: Delete an application + description: | + Delete an application. + operationId: DeleteApplicationsByID + 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' + /application-filters: + get: + tags: + - Application Filters + summary: List application filters + description: | + Retrieve a list of application filters. + operationId: ListApplicationFilters + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/application-filters' + 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: + - Application Filters + summary: Create an application filter + description: | + Create a new application filter. + operationId: CreateApplicationFilters + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/application-filters' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-filters' + '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' + '/application-filters/{id}': + get: + tags: + - Application Filters + summary: Get an application filter + description: | + Get an existing application filter. + operationId: GetApplicationFiltersByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-filters' + '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: + - Application Filters + summary: Update an application filter + description: | + Update an existing application filter. + operationId: UpdateApplicationFiltersByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-filters' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-filters' + '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: + - Application Filters + summary: Delete an application filter + description: | + Delete an application filter. + operationId: DeleteApplicationFiltersByID + 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' + /application-groups: + get: + tags: + - Application Groups + summary: List application groups + description: | + Retrieve a list of application groups. + operationId: ListApplicationGroups + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + $ref: '#/components/schemas/application-groups' + 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: + - Application Groups + summary: Create an application group + description: | + Create a new application group. + operationId: CreateApplicationGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/application-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-groups' + '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' + '/application-groups/{id}': + get: + tags: + - Application Groups + summary: Get an application group + description: | + Get an existing application group. + operationId: GetApplicationGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-groups' + '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: + - Application Groups + summary: Update an application group + description: | + Update an existing application group. + operationId: UpdateApplicationGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/application-groups' + '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: + - Application Groups + summary: Delete an application group + description: | + Delete an application group. + operationId: DeleteApplicationGroupsByID + 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' + /auto-tag-actions: + get: + tags: + - Auto-Tag Actions + summary: List auto-tag actions + description: | + Retrieve a list of auto-tag actions + operationId: ListAuto-TagActions + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/auto-tag-actions' + 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: + - Auto-Tag Actions + summary: Create an auto-tag action + description: | + Create a new auto-tag action. + operationId: CreateAuto-TagActions + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/auto-tag-actions' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-tag-actions' + '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' + put: + tags: + - Auto-Tag Actions + summary: Update an auto-tag action + description: | + Update an existing auto-tag action. + operationId: UpdateAuto-TagActions + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-tag-actions' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/auto-tag-actions' + '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: + - Auto-Tag Actions + summary: Delete an Auto-Tag action + description: Delete an auto-tag action. + operationId: DeleteAuto-TagActions + parameters: + - $ref: '#/components/parameters/name-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' + /dynamic-user-groups: + get: + tags: + - Dynamic User Groups + summary: List Dynamic User Groups + description: | + Retrieve a list of Dynamic User Groups. + operationId: ListDynamicUserGroups + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dynamic-user-groups' + 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: + - Dynamic User Groups + summary: Create a Dynamic User Group + description: | + Create a new Dynamic User Group. + operationId: CreateDynamicUserGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dynamic-user-groups' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dynamic-user-groups' + '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' + '/dynamic-user-groups/{id}': + get: + tags: + - Dynamic User Groups + summary: Get a Dynamic User Group + description: | + Retrieve an existing Dynamic User Group. + operationId: GetDynamicUserGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dynamic-user-groups' + '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: + - Dynamic User Groups + summary: Update a Dynamic User Group + description: | + Update an existing Dynamic User Group. + operationId: UpdateDynamicUserGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dynamic-user-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dynamic-user-groups' + '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: + - Dynamic User Groups + summary: Delete a Dynamic User Group + description: | + Delete a Dynamic User Group. + operationId: DeleteDynamicUserGroupsByID + 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' + /external-dynamic-lists: + get: + tags: + - External Dynamic Lists + summary: List External Dynamic Lists + description: | + Retrieve a list of External Dynamic Lists. + operationId: ListExternalDynamicLists + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/external-dynamic-lists' + 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: + - External Dynamic Lists + summary: Create an External Dynamic List + description: | + Create a new External Dynamic List. + operationId: CreateExternalDynamicLists + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/external-dynamic-lists' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/external-dynamic-lists' + '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' + '/external-dynamic-lists/{id}': + get: + tags: + - External Dynamic Lists + summary: Get an External Dynamic List + description: | + Get an existing External Dynamic List. + operationId: GetExternalDynamicListsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/external-dynamic-lists' + '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: + - External Dynamic Lists + summary: Update an External Dynamic List + description: | + Update an existing External Dynamic List. + operationId: UpdateExternalDynamicListsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/external-dynamic-lists' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/external-dynamic-lists' + '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: + - External Dynamic Lists + summary: Delete an External Dynamic List + description: | + Delete an External Dynamic List. + operationId: DeleteExternalDynamicListsByID + 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' + /hip-objects: + get: + tags: + - HIP Objects + summary: List HIP objects + description: | + Retrieve a list HIP objects. + operationId: ListHIPObjects + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/hip-objects' + 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: + - HIP Objects + summary: Create a HIP object + description: | + Create a new HIP object. + operationId: CreateHIPObjects + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/hip-objects' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-objects' + '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' + '/hip-objects/{id}': + get: + tags: + - HIP Objects + summary: Get a HIP object + description: | + Get an existing HIP object. + operationId: GetHIPObjectsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-objects' + '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: + - HIP Objects + summary: Update a HIP object + description: | + Update an existing HIP object. + operationId: UpdateHIPObjectsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-objects' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-objects' + '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: + - HIP Objects + summary: Delete a HIP object + description: | + Delete a HIP object. + operationId: DeleteHIPObjectsByID + 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' + /hip-profiles: + get: + tags: + - HIP Profiles + summary: List HIP profiles + description: | + Retrieve a list of HIP profiles. + operationId: ListHIPProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/hip-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: + - HIP Profiles + summary: Create a HIP profile + description: | + Create a new HIP profile. + operationId: CreateHIPProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/hip-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-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' + '/hip-profiles/{id}': + get: + tags: + - HIP Profiles + summary: Get a HIP profile + description: Get an existing HIP profile. + operationId: GetHIPProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-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: + - HIP Profiles + summary: Update a HIP profile + description: | + Update an existing HIP profile. + operationId: UpdateHIPProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/hip-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: + - HIP Profiles + summary: Delete a HIP profile + description: | + Delete a HIP profile. + operationId: DeleteHIPProfilesByID + 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' + + /http-server-profiles: + get: + tags: + - HTTP Server Profiles + summary: List HTTP server profiles + description: | + Retrieve a list of HTTP server profiles. + operationId: ListHTTPServerProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/http-server-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: + - HTTP Server Profiles + summary: Create a HTTP server profile + description: | + Create a new HTTP server profile. + operationId: CreateHTTPServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/http-server-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-server-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' + '/http-server-profiles/{id}': + get: + tags: + - HTTP Server Profiles + summary: Get a HTTP server profile + description: Get an existing HTTP server profile. + operationId: GetHTTPServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-server-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: + - HTTP Server Profiles + summary: Update a HTTP server profile + description: | + Update an existing HTTP server profile. + operationId: UpdateHTTPServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-server-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: + - HTTP Server Profiles + summary: Delete a HTTP server profile + description: | + Delete a HTTP server profile. + operationId: DeleteHTTPServerProfilesByID + 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' + /log-forwarding-profiles: + get: + tags: + - Log Forwarding Profiles + summary: List log forwarding profiles + description: | + Retrieve a list of log forwarding profiles. + operationId: ListLogForwardingProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/log-forwarding-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: + - Log Forwarding Profiles + summary: Create a log forwarding profile + description: | + Create a new log forwarding profile. + operationId: CreateLogForwardingProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/log-forwarding-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/log-forwarding-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' + '/log-forwarding-profiles/{id}': + get: + tags: + - Log Forwarding Profiles + summary: Get a log forwarding profile + description: Get an existing log forwarding profile. + operationId: GetLogForwardingProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/log-forwarding-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: + - Log Forwarding Profiles + summary: Update a log forwarding profile + description: | + Update an existing log forwarding profile. + operationId: UpdateLogForwardingProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/log-forwarding-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/log-forwarding-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: + - Log Forwarding Profiles + summary: Delete a log forwarding profile + description: | + Delete a log forwarding profile. + operationId: DeleteLogForwardingProfilesByID + 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' + /quarantined-devices: + get: + tags: + - Quarantined Devices + summary: List quarantined devices + description: | + Retrieve a list of quarantined devices + operationId: ListQuarantinedDevices + parameters: + - $ref: '#/components/parameters/host_id' + - $ref: '#/components/parameters/serial_number' + responses: + '200': + description: OK + content: + application/json: + schema: + allOf: + - type: array + items: + $ref: '#/components/schemas/quarantined-devices' + '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: + - Quarantined Devices + summary: Create a quarantined device + description: | + Create a new quarantined device. + operationId: CreateQuarantinedDevices + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/quarantined-devices' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/quarantined-devices' + '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' + delete: + tags: + - Quarantined Devices + summary: Delete a quarantined device + description: | + Delete a quarantined device. + operationId: DeleteQuarantinedDevices + parameters: + - $ref: '#/components/parameters/host_id_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' + /regions: + get: + tags: + - Regions + summary: List regions + description: | + Retrieve a list of regions. + operationId: ListRegions + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/regions' + 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: + - Regions + summary: Create a region + description: | + Create a new region. + operationId: CreateRegions + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/regions' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/regions' + '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' + '/regions/{id}': + get: + tags: + - Regions + summary: Get a region + description: | + Get an existing region. + operationId: GetRegionsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/regions' + '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: + - Regions + summary: Update a region + description: | + Update an existing region. + operationId: UpdateRegionsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/regions' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/regions' + '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: + - Regions + summary: Delete a region + description: | + Delete a region. + operationId: DeleteRegionsByID + 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' + /schedules: + get: + tags: + - Schedules + summary: List schedules + description: | + Retrieve a list of schedules. + operationId: ListSchedules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/schedules' + 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: + - Schedules + summary: Create a schedule + description: | + Create a new schedule. + operationId: CreateSchedules + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/schedules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/schedules' + '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' + '/schedules/{id}': + get: + tags: + - Schedules + summary: Get a schedule + description: | + Get an existing schedule. + operationId: GetSchedulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/schedules' + '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: + - Schedules + summary: Update a schedule + description: | + Update an existing schedule. + operationId: UpdateSchedulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/schedules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/schedules' + '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: + - Schedules + summary: Delete a schedule + description: | + Delete a schedule. + operationId: DeleteSchedulesByID + 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' + /services: + get: + tags: + - Services + summary: List services + description: | + Retrieve a list of services. + operationId: ListServices + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/services' + 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: + - Services + summary: Create a service + description: | + Create a new service. + operationId: CreateServices + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/services' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/services' + '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' + '/services/{id}': + get: + tags: + - Services + summary: Get a service + description: | + Get an existing service. + operationId: GetServicesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/services' + '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: + - Services + summary: Update a service + description: | + Update an existing service. + operationId: UpdateServicesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/services' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/services' + '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: + - Services + summary: Delete a service + description: | + Delete a service. + operationId: DeleteServicesByID + 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' + /service-groups: + get: + tags: + - Service Groups + summary: List service groups + description: | + Retrieve a list of service groups. + operationId: ListServiceGroups + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/service-groups' + 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: + - Service Groups + summary: Create a service group + description: | + Create a new service group. + operationId: CreateServiceGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/service-groups' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-groups' + '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' + '/service-groups/{id}': + get: + tags: + - Service Groups + summary: Get the service group by id + description: | + Get an existing service group. + operationId: GetServiceGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-groups' + '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: + - Service Groups + summary: Update a service group + description: | + Update an existing service group. + operationId: UpdateServiceGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/service-groups' + '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: + - Service Groups + summary: Delete a service group + description: | + Delete a service group. + operationId: DeleteServiceGroupsByID + 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' + + /syslog-server-profiles: + get: + tags: + - Syslog Server Profiles + summary: List syslog server profiles + description: | + Retrieve a list of syslog server profiles. + operationId: ListSyslogServerProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/syslog-server-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: + - Syslog Server Profiles + summary: Create a syslog server profile + description: | + Create a new syslog server profile. + operationId: CreateSyslogServerProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/syslog-server-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/syslog-server-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' + '/syslog-server-profiles/{id}': + get: + tags: + - Syslog Server Profiles + summary: Get a syslog server profile + description: Get an existing syslog server profile. + operationId: GetSyslogServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/syslog-server-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: + - Syslog Server Profiles + summary: Update a syslog server profile + description: | + Update an existing syslog server profile. + operationId: UpdateSyslogServerProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/syslog-server-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/syslog-server-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: + - Syslog Server Profiles + summary: Delete a syslog server profile + description: | + Delete a syslog server profile. + operationId: DeleteSyslogServerProfilesByID + 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' + + /tags: + get: + tags: + - Tags + summary: List tags + description: | + Retrieve a list of tags. + operationId: ListTags + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/tags' + 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: + - Tags + summary: Create a tag + description: | + Create a new tag. + operationId: CreateTags + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/tags' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tags' + '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' + '/tags/{id}': + get: + tags: + - Tags + summary: Get a tag + description: | + Get an existing tag. + operationId: GetTagsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tags' + '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: + - Tags + summary: Update a tag + description: | + Update an existing tag. + operationId: UpdateTagsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tags' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tags' + '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: + - Tags + summary: Delete a tag + description: | + Delete a tag. + operationId: DeleteTagsByID + 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' +components: + parameters: + name: + name: name + in: query + description: The name of the configuration resource + required: false + schema: + type: string + name-required: + name: name + in: query + description: The name of the configuration resource + 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 + offset: + name: offset + in: query + description: The offset into the list of results returned + required: false + schema: + type: integer + default: 0 + folder: + name: folder + in: query + description: | + The folder in which the resource is defined + required: false + schema: + type: string + snippet: + name: snippet + in: query + description: | + The snippet in which the resource is defined + required: false + schema: + type: string + device: + name: device + in: query + description: | + The device in which the resource is defined + required: false + schema: + type: string + host_id_required: + name: host_id + in: query + description: | + Device host ID + required: true + schema: + type: string + host_id: + name: host_id + in: query + description: | + Device host ID + schema: + type: string + serial_number: + name: serial_number + in: query + description: | + Device serial number + 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 + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + addresses: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the address object + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the address object + maxLength: 63 + description: + type: string + maxLength: 1023 + description: The description of the address object + tag: + type: array + description: Tags assocaited with the address object + maxItems: 64 + items: + type: string + maxLength: 127 + anyOf: + - title: address_type + description: The address object type + oneOf: + - type: object + title: ip_netmask + properties: + ip_netmask: + type: string + description: IP address with or without CIDR notation + example: 192.168.80.0/24 + required: + - ip_netmask + - type: object + title: ip_range + properties: + ip_range: + type: string + example: 10.0.0.1-10.0.0.4 + required: + - ip_range + - type: object + title: ip_wildcard + properties: + ip_wildcard: + type: string + description: IP wildcard mask + example: 10.20.1.0/0.0.248.255 + required: + - ip_wildcard + - type: object + title: fqdn + properties: + fqdn: + type: string + pattern: '^[a-zA-Z0-9_]([a-zA-Z0-9._-])+[a-zA-Z0-9]$' + minLength: 1 + maxLength: 255 + description: Fully qualified domain name + example: some.example.com + required: + - fqdn + - title: container_type + description: The type of configuration container in which the address object is defined + 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 + address-groups: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the address group + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d._-]+$ + description: The name of the address group + maxLength: 63 + description: + type: string + maxLength: 1023 + tag: + type: array + description: Tags for address group object + maxItems: 64 + items: + type: string + maxLength: 127 + anyOf: + - title: group_type + description: The address group type + oneOf: + - type: object + title: static + properties: + static: + type: array + items: + type: string + maxLength: 63 + x-panMemberOf: + - location: shared + schema: address-group + subPath: name + description: Member address objects and/or groups + description: Static address group + required: + - static + - type: object + title: dynamic + properties: + dynamic: + type: object + properties: + filter: + type: string + description: Tag based filter defining group membership + maxLength: 2047 + example: tag1 AND tag2 OR tag3 + required: + - filter + description: Dynamic adddress group + required: + - dynamic + - title: container_type + description: The type of configuration container in which the address object is defined + 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 + applications: + type: object + required: + - name + - category + - risk + properties: + id: + type: string + description: The UUID of the application + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + format: ^[ a-zA-Z\d._-]+$ + maxLength: 31 + description: The name of the application + default: + type: object + oneOf: + - type: object + title: port + properties: + port: + type: array + items: + type: string + description: 'protocol port specification : {tcp|udp}/{dynamic|port range list} (e.g. tcp/8080, tcp/80,443, tcp/0-1024,10000, udp/dynamic)' + maxLength: 63 + - type: object + title: ident_by_ip_protocol + properties: + ident_by_ip_protocol: + type: string + x-maximum: 255 + x-minimum: 0 + example: '0,1-255' + - type: object + title: ident_by_icmp_type + properties: + ident_by_icmp_type: + type: object + properties: + type: + type: string + x-maximum: 255 + x-minimum: 0 + example: '0,1-255' + code: + type: string + x-maximum: 255 + x-minimum: 0 + example: '0,1-255' + required: + - type + - type: object + title: ident_by_icmp6_type + properties: + ident_by_icmp6_type: + type: object + properties: + type: + type: string + x-maximum: 255 + x-minimum: 0 + example: '0,1-255' + code: + type: string + x-maximum: 255 + x-minimum: 0 + example: '0,1-255' + required: + - type + category: + type: string + x-panMemberOf: + - location: shared + schema: content-preview/application-type/category + subPath: name + subcategory: + type: string + maxLength: 63 + technology: + type: string + maxLength: 63 + x-panMemberOf: + - location: shared + schema: content-preview/application-type/technology + subPath: name + description: + type: string + maxLength: 1023 + timeout: + type: integer + description: timeout in seconds + minimum: 0 + maximum: 604800 + tcp_timeout: + type: integer + description: timeout in seconds + minimum: 0 + maximum: 604800 + udp_timeout: + type: integer + description: timeout in seconds + minimum: 0 + maximum: 604800 + tcp_half_closed_timeout: + type: integer + description: timeout for half-close session in seconds + minimum: 1 + maximum: 604800 + tcp_time_wait_timeout: + type: integer + description: timeout for session in time_wait state in seconds + minimum: 1 + maximum: 600 + risk: + oneOf: + - type: string + - type: integer + evasive_behavior: + type: boolean + consume_big_bandwidth: + type: boolean + used_by_malware: + type: boolean + able_to_transfer_file: + type: boolean + has_known_vulnerability: + type: boolean + tunnel_other_application: + type: boolean + tunnel_applications: + type: boolean + prone_to_misuse: + type: boolean + pervasive_use: + type: boolean + file_type_ident: + type: boolean + virus_ident: + type: boolean + data_ident: + type: boolean + no_appid_caching: + type: boolean + alg_disable_capability: + type: string + maxLength: 127 + x-panMemberOf: + - location: shared + schema: content-preview/application + subPath: name + parent_app: + type: string + maxLength: 127 + x-panMemberOf: + - location: shared + schema: content-preview/application + subPath: name + signature: + type: array + items: + type: object + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + comment: + type: string + maxLength: 256 + scope: + enum: + - protocol-data-unit + - session + default: protocol-data-unit + order_free: + type: boolean + default: false + and_condition: + type: array + items: + type: object + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + or_condition: + type: array + items: + type: object + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + operator: + type: object + oneOf: + - type: object + title: pattern_match + properties: + pattern_match: + type: object + properties: + context: + type: string + maxLength: 127 + pattern: + type: string + maxLength: 127 + qualifier: + type: array + items: + type: object + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + value: + type: string + x-panMultiple: + - type: string + required: + - name + - value + required: + - context + - pattern + - type: object + title: greater_than + properties: + greater_than: + type: object + properties: + context: + type: string + maxLength: 127 + value: + type: integer + minimum: 0 + maximum: 4294967295 + qualifier: + type: array + items: + type: object + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + value: + type: string + x-panMultiple: + - type: string + required: + - name + - value + required: + - context + - value + - type: object + title: less_than + properties: + less_than: + type: object + properties: + context: + type: string + maxLength: 127 + value: + type: integer + minimum: 0 + maximum: 4294967295 + qualifier: + type: array + items: + type: object + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + value: + type: string + x-panMultiple: + - type: string + required: + - name + - value + required: + - context + - value + - type: object + title: equal_to + properties: + equal_to: + type: object + properties: + context: + type: string + x-panMultiple: + - type: string + maxLength: 127 + - enum: + - unknown-req-tcp + - unknown-rsp-tcp + - unknown-req-udp + - unknown-rsp-udp + type: string + position: + type: string + maxLength: 127 + mask: + type: string + description: 4-byte hex value + pattern: '^[0][xX][0-9A-Fa-f]{8}$' + maxLength: 10 + value: + type: string + maxLength: 10 + required: + - context + - value + required: + - name + - operator + required: + - name + 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 + application-filters: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + category: + type: array + items: + type: string + maxLength: 128 + x-panMemberOf: + - location: shared + schema: content-preview/application-type/category + subPath: name + subcategory: + type: array + items: + type: string + maxLength: 128 + x-panMemberOf: + - location: shared + schema: content-preview/application-type/category/entry/subcategory + subPath: name + technology: + type: array + items: + type: string + maxLength: 128 + x-panMemberOf: + - location: shared + schema: content-preview/application-type/technology + subPath: name + evasive: + type: boolean + description: only True is a valid value + excessive_bandwidth_use: + type: boolean + description: only True is a valid value + used_by_malware: + type: boolean + description: only True is a valid value + transfers_files: + type: boolean + description: only True is a valid value + has_known_vulnerabilities: + type: boolean + description: only True is a valid value + tunnels_other_apps: + type: boolean + description: only True is a valid value + prone_to_misuse: + type: boolean + description: only True is a valid value + pervasive: + type: boolean + description: only True is a valid value + is_saas: + type: boolean + description: only True is a valid value + new_appid: + type: boolean + description: only True is a valid value + risk: + type: array + items: + type: integer + minimum: 1 + maximum: 5 + saas_certifications: + type: array + items: + type: string + maxLength: 32 + saas_risk: + type: array + items: + type: string + maxLength: 32 + tagging: + type: object + oneOf: + - type: object + title: no_tag + properties: + no_tag: + type: boolean + - type: object + title: tag + properties: + tag: + type: array + items: + type: string + maxLength: 127 + x-panMemberOf: + - location: shared + schema: tag + subPath: name + exclude: + type: array + items: + type: string + maxLength: 63 + x-panMemberOf: + - location: shared + schema: application + subPath: name + - location: shared + schema: content-preview/application + subPath: 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 + application-groups: + type: object + required: + - id + - name + - members + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 31 + members: + type: array + items: + type: string + maxLength: 63 + x-panMemberOf: + - location: shared + schema: application + subPath: name + - location: shared + schema: content-preview/application + subPath: name + - location: shared + schema: application-group + subPath: name + - location: shared + schema: application-filter + subPath: 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 + auto-tag-actions: + type: object + required: + - name + - log_type + - filter + properties: + name: + type: string + description: 'Alphanumeric string [ 0-9a-zA-Z._-]' + maxLength: 63 + log_type: + type: string + readOnly: true + example: container + description: + type: string + maxLength: 1023 + filter: + type: string + description: Tag based filter defining group membership e.g. `tag1 AND tag2 OR tag3` + maxLength: 2047 + send_to_panorama: + type: boolean + quarantine: + type: boolean + actions: + type: array + items: + type: object + properties: + name: + type: string + type: + type: object + properties: + tagging: + type: object + properties: + target: + type: string + description: 'Source or Destination Address, User, X-Forwarded-For Address' + action: + enum: + - add-tag + - remove-tag + description: Add or Remove tag option + timeout: + type: number + tags: + type: array + description: Tags for address object + maxItems: 64 + items: + type: string + maxLength: 127 + required: + - target + - action + required: + - tagging + required: + - name + - type + 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 + dynamic-user-groups: + type: object + required: + - id + - name + - filter + properties: + id: + type: string + description: The UUID of the dynamic user group + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d.\-_]+$ + description: The name of the dynamic address group + maxLength: 63 + description: + type: string + maxLength: 1023 + description: The description of the dynamic address group + filter: + type: string + description: The tag-based filter for the dynamic user group + maxLength: 2047 + tag: + type: array + description: Tags associated with the dynamic user group + maxItems: 64 + items: + type: string + maxLength: 127 + 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 + external-dynamic-lists: + type: object + required: + - name + properties: + id: + type: string + description: The UUID of the external dynamic list + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d.\-_]+$ + description: The name of the external dynamic list + maxLength: 63 + type: + type: object + oneOf: + - type: object + title: predefined_ip + properties: + predefined_ip: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 255 + description: + type: string + maxLength: 255 + url: + type: string + required: + - url + - type: object + title: predefined_url + properties: + predefined_url: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 255 + description: + type: string + maxLength: 255 + url: + type: string + required: + - url + - type: object + title: ip + properties: + ip: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 255 + description: + type: string + maxLength: 255 + url: + type: string + maxLength: 255 + default: 'http://' + certificate_profile: + type: string + description: Profile for authenticating client certificates + default: None + x-panMultiple: + - type: string + - enum: + - None + type: string + auth: + type: object + properties: + username: + type: string + minLength: 1 + maxLength: 255 + password: + type: string + format: password + maxLength: 255 + required: + - username + - password + recurring: + type: object + oneOf: + - type: object + title: five_minute + properties: + five_minute: + type: object + required: + - five_minute + - type: object + title: hourly + properties: + hourly: + type: object + required: + - hourly + - type: object + title: daily + properties: + daily: + type: object + properties: + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - at + required: + - daily + - type: object + title: weekly + properties: + weekly: + type: object + properties: + day_of_week: + enum: + - sunday + - monday + - tuesday + - wednesday + - thursday + - friday + - saturday + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_week + - at + required: + - weekly + - type: object + title: monthly + properties: + monthly: + type: object + properties: + day_of_month: + type: integer + minimum: 1 + maximum: 31 + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_month + - at + required: + - monthly + required: + - url + - recurring + - type: object + title: domain + properties: + domain: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 255 + description: + type: string + maxLength: 255 + url: + type: string + maxLength: 255 + default: 'http://' + certificate_profile: + type: string + description: Profile for authenticating client certificates + default: None + x-panMultiple: + - type: string + - enum: + - None + type: string + auth: + type: object + properties: + username: + type: string + minLength: 1 + maxLength: 255 + password: + type: string + maxLength: 255 + required: + - username + - password + recurring: + type: object + oneOf: + - type: object + title: hourly + properties: + hourly: + type: object + required: + - hourly + - type: object + title: five_minute + properties: + five_minute: + type: object + required: + - five_minute + - type: object + title: daily + properties: + daily: + type: object + properties: + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - at + required: + - daily + - type: object + title: weekly + properties: + weekly: + type: object + properties: + day_of_week: + enum: + - sunday + - monday + - tuesday + - wednesday + - thursday + - friday + - saturday + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_week + - at + required: + - weekly + - type: object + title: monthly + properties: + monthly: + type: object + properties: + day_of_month: + type: integer + minimum: 1 + maximum: 31 + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_month + - at + required: + - monthly + expand_domain: + type: boolean + description: Enable/Disable expand domain + default: false + required: + - url + - recurring + - type: object + title: url + properties: + url: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 255 + description: + type: string + maxLength: 255 + url: + type: string + maxLength: 255 + default: 'http://' + certificate_profile: + type: string + description: Profile for authenticating client certificates + default: None + x-panMultiple: + - type: string + - enum: + - None + type: string + auth: + type: object + properties: + username: + type: string + minLength: 1 + maxLength: 255 + password: + type: string + maxLength: 255 + required: + - username + - password + recurring: + type: object + oneOf: + - type: object + title: hourly + properties: + hourly: + type: object + required: + - hourly + - type: object + title: five_minute + properties: + five_minute: + type: object + required: + - five_minute + - type: object + title: daily + properties: + daily: + type: object + properties: + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - at + required: + - daily + - type: object + title: weekly + properties: + weekly: + type: object + properties: + day_of_week: + enum: + - sunday + - monday + - tuesday + - wednesday + - thursday + - friday + - saturday + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_week + - at + required: + - weekly + - type: object + title: monthly + properties: + monthly: + type: object + properties: + day_of_month: + type: integer + minimum: 1 + maximum: 31 + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_month + - at + required: + - monthly + required: + - url + - recurring + - type: object + title: imsi + properties: + imsi: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 34 + description: + type: string + maxLength: 255 + url: + type: string + maxLength: 255 + default: 'http://' + certificate_profile: + type: string + description: Profile for authenticating client certificates + default: None + x-panMultiple: + - type: string + - enum: + - None + type: string + auth: + type: object + properties: + username: + type: string + minLength: 1 + maxLength: 255 + password: + type: string + maxLength: 255 + required: + - username + - password + recurring: + type: object + oneOf: + - type: object + title: five_minute + properties: + five_minute: + type: object + required: + - five_minute + - type: object + title: hourly + properties: + hourly: + type: object + required: + - hourly + - type: object + title: daily + properties: + daily: + type: object + properties: + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - at + required: + - daily + - type: object + title: weekly + properties: + weekly: + type: object + properties: + day_of_week: + enum: + - sunday + - monday + - tuesday + - wednesday + - thursday + - friday + - saturday + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_week + - at + required: + - weekly + - type: object + title: monthly + properties: + monthly: + type: object + properties: + day_of_month: + type: integer + minimum: 1 + maximum: 31 + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_month + - at + required: + - monthly + required: + - url + - recurring + - type: object + title: imei + properties: + imei: + type: object + properties: + exception_list: + type: array + items: + type: string + maxLength: 32 + description: + type: string + maxLength: 255 + url: + type: string + maxLength: 255 + default: 'http://' + certificate_profile: + type: string + description: Profile for authenticating client certificates + default: None + x-panMultiple: + - type: string + - enum: + - None + type: string + auth: + type: object + properties: + username: + type: string + minLength: 1 + maxLength: 255 + password: + type: string + maxLength: 255 + required: + - username + - password + recurring: + type: object + oneOf: + - type: object + title: five_minute + properties: + five_minute: + type: object + required: + - five_minute + - type: object + title: hourly + properties: + hourly: + type: object + required: + - hourly + - type: object + title: daily + properties: + daily: + type: object + properties: + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - at + required: + - daily + - type: object + title: weekly + properties: + weekly: + type: object + properties: + day_of_week: + enum: + - sunday + - monday + - tuesday + - wednesday + - thursday + - friday + - saturday + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_week + - at + required: + - weekly + - type: object + title: monthly + properties: + monthly: + type: object + properties: + day_of_month: + type: integer + minimum: 1 + maximum: 31 + at: + type: string + description: Time specification hh (e.g. 20) + pattern: '([01][0-9]|[2][0-3])' + minLength: 2 + maxLength: 2 + default: '00' + required: + - day_of_month + - at + required: + - monthly + required: + - url + - recurring + 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 + hip-objects: + type: object + required: + - id + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d.\-_]+$ + description: The name of the HIP object + maxLength: 31 + description: + type: string + maxLength: 255 + host_info: + type: object + properties: + criteria: + type: object + properties: + domain: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + os: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: object + oneOf: + - type: object + title: Microsoft + properties: + Microsoft: + type: string + description: Microsoft vendor + maxLength: 255 + default: All + required: + - Microsoft + - type: object + title: Apple + properties: + Apple: + type: string + description: Apple vendor + maxLength: 255 + default: All + required: + - Apple + - type: object + title: Google + properties: + Google: + type: string + description: Google vendor + maxLength: 255 + default: All + required: + - Google + - type: object + title: Linux + properties: + Linux: + type: string + description: Linux vendor + maxLength: 255 + default: All + required: + - Linux + - type: object + title: Other + properties: + Other: + type: string + description: Other vendor + maxLength: 255 + required: + - Other + required: + - contains + client_version: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + host_name: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + host_id: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + managed: + type: boolean + description: If device is managed + serial_number: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + required: + - criteria + network_info: + type: object + properties: + criteria: + type: object + properties: + network: + type: object + oneOf: + - type: object + title: is + properties: + is: + type: object + oneOf: + - type: object + title: wifi + properties: + wifi: + type: object + properties: + ssid: + type: string + description: SSID + pattern: .* + maxLength: 1023 + - type: object + title: mobile + properties: + mobile: + type: object + properties: + carrier: + type: string + pattern: .* + maxLength: 1023 + - type: object + title: unknown + properties: + unknown: + type: object + - type: object + title: is_not + properties: + is_not: + type: object + oneOf: + - type: object + title: wifi + properties: + wifi: + type: object + properties: + ssid: + type: string + description: SSID + pattern: .* + maxLength: 1023 + - type: object + title: mobile + properties: + mobile: + type: object + properties: + carrier: + type: string + pattern: .* + maxLength: 1023 + - type: object + title: ethernet + properties: + ethernet: + type: object + - type: object + title: unknown + properties: + unknown: + type: object + patch_management: + type: object + properties: + criteria: + type: object + properties: + is_installed: + type: boolean + description: Is Installed + default: true + is_enabled: + enum: + - 'no' + - 'yes' + - not-available + description: is enabled + missing_patches: + type: object + properties: + severity: + type: object + oneOf: + - type: object + title: greater_equal + properties: + greater_equal: + type: integer + minimum: 0 + maximum: 100000 + required: + - greater_equal + - type: object + title: greater_than + properties: + greater_than: + type: integer + minimum: 0 + maximum: 100000 + required: + - greater_than + - type: object + title: is + properties: + is: + type: integer + minimum: 0 + maximum: 100000 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: integer + minimum: 0 + maximum: 100000 + required: + - is_not + - type: object + title: less_equal + properties: + less_equal: + type: integer + minimum: 0 + maximum: 100000 + required: + - less_equal + - type: object + title: less_than + properties: + less_than: + type: integer + minimum: 0 + maximum: 100000 + required: + - less_than + patches: + type: array + items: + type: string + description: patch security-bulletin-id or kb-article-id + pattern: .* + maxLength: 1023 + check: + enum: + - has-any + - has-none + - has-all + default: has-any + required: + - check + vendor: + type: array + description: Vendor name + items: + type: object + properties: + name: + type: string + maxLength: 103 + product: + type: array + description: Product name + items: + type: string + pattern: .* + maxLength: 1023 + required: + - name + exclude_vendor: + type: boolean + default: false + data_loss_prevention: + type: object + properties: + criteria: + type: object + properties: + is_installed: + type: boolean + description: Is Installed + default: true + is_enabled: + enum: + - 'no' + - 'yes' + - not-available + description: is enabled + vendor: + type: array + description: Vendor name + items: + type: object + properties: + name: + type: string + maxLength: 103 + product: + type: array + description: Product name + items: + type: string + pattern: .* + maxLength: 1023 + required: + - name + exclude_vendor: + type: boolean + default: false + firewall: + type: object + properties: + criteria: + type: object + properties: + is_installed: + type: boolean + description: Is Installed + default: true + is_enabled: + enum: + - 'no' + - 'yes' + - not-available + description: is enabled + vendor: + type: array + description: Vendor name + items: + type: object + description: Product name + properties: + name: + type: string + maxLength: 103 + product: + type: array + items: + type: string + pattern: .* + maxLength: 1023 + required: + - name + exclude_vendor: + type: boolean + default: false + anti_malware: + type: object + properties: + criteria: + type: object + properties: + virdef_version: + type: object + oneOf: + - type: object + title: within + properties: + within: + type: object + oneOf: + - type: object + title: days + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 65535 + default: 1 + - type: object + title: versions + properties: + versions: + type: integer + description: specify versions range + minimum: 1 + maximum: 65535 + default: 1 + required: + - within + - type: object + title: not_within + properties: + not_within: + type: object + oneOf: + - type: object + title: days + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 65535 + default: 1 + - type: object + title: versions + properties: + versions: + type: integer + description: specify versions range + minimum: 1 + maximum: 65535 + default: 1 + required: + - not_within + product_version: + type: object + oneOf: + - type: object + title: greater_equal + properties: + greater_equal: + type: string + maxLength: 255 + required: + - greater_equal + - type: object + title: greater_than + properties: + greater_than: + type: string + maxLength: 255 + required: + - greater_than + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + - type: object + title: less_equal + properties: + less_equal: + type: string + maxLength: 255 + required: + - less_equal + - type: object + title: less_than + properties: + less_than: + type: string + maxLength: 255 + required: + - less_than + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: within + properties: + within: + type: object + properties: + versions: + type: integer + description: versions range + minimum: 1 + maximum: 65535 + default: 1 + required: + - versions + required: + - within + - type: object + title: not_within + properties: + not_within: + type: object + properties: + versions: + type: integer + description: versions range + minimum: 1 + maximum: 65535 + default: 1 + required: + - versions + required: + - not_within + is_installed: + type: boolean + description: Is Installed + default: true + real_time_protection: + enum: + - 'no' + - 'yes' + - not-available + description: real time protection + last_scan_time: + type: object + oneOf: + - type: object + title: not_available + properties: + not_available: + type: object + required: + - not_available + - type: object + title: within + properties: + within: + type: object + oneOf: + - type: object + title: days + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 65535 + default: 1 + - type: object + title: hours + properties: + hours: + type: integer + description: specify time in hours + minimum: 1 + maximum: 65535 + default: 24 + required: + - within + - type: object + title: not_within + properties: + not_within: + type: object + oneOf: + - type: object + title: days + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 65535 + default: 1 + - type: object + title: hours + properties: + hours: + type: integer + description: specify time in hours + minimum: 1 + maximum: 65535 + default: 24 + required: + - not_within + vendor: + type: array + description: Vendor name + items: + type: object + description: Product name + properties: + name: + type: string + maxLength: 103 + product: + type: array + items: + type: string + pattern: .* + maxLength: 1023 + required: + - name + exclude_vendor: + type: boolean + default: false + disk_backup: + type: object + properties: + criteria: + type: object + properties: + is_installed: + type: boolean + description: Is Installed + default: true + last_backup_time: + type: object + oneOf: + - type: object + title: not_available + properties: + not_available: + type: object + required: + - not_available + - type: object + title: within + properties: + within: + type: object + oneOf: + - type: object + title: days + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 65535 + default: 1 + - type: object + title: hours + properties: + hours: + type: integer + description: specify time in hours + minimum: 1 + maximum: 65535 + default: 24 + required: + - within + - type: object + title: not_within + properties: + not_within: + type: object + oneOf: + - type: object + title: days + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 65535 + default: 1 + - type: object + title: hours + properties: + hours: + type: integer + description: specify time in hours + minimum: 1 + maximum: 65535 + default: 24 + required: + - not_within + vendor: + type: array + description: Vendor name + items: + type: object + description: Product name + properties: + name: + type: string + maxLength: 103 + product: + type: array + items: + type: string + pattern: .* + maxLength: 1023 + required: + - name + exclude_vendor: + type: boolean + default: false + disk_encryption: + type: object + properties: + criteria: + type: object + description: Encryption locations + properties: + is_installed: + type: boolean + description: Is Installed + default: true + encrypted_locations: + type: array + items: + type: object + properties: + name: + type: string + description: Encryption location + maxLength: 1023 + encryption_state: + type: object + oneOf: + - type: object + title: is + properties: + is: + enum: + - encrypted + - unencrypted + - partial + - unknown + default: encrypted + - type: object + title: is_not + properties: + is_not: + enum: + - encrypted + - unencrypted + - partial + - unknown + default: encrypted + required: + - name + vendor: + type: array + description: Vendor name + items: + type: object + description: Product name + properties: + name: + type: string + maxLength: 103 + product: + type: array + items: + type: string + pattern: .* + maxLength: 1023 + required: + - name + exclude_vendor: + type: boolean + default: false + custom_checks: + type: object + properties: + criteria: + type: object + properties: + process_list: + type: array + items: + type: object + properties: + name: + type: string + description: Process Name + maxLength: 1023 + running: + type: boolean + default: true + required: + - name + registry_key: + type: array + items: + type: object + properties: + name: + type: string + description: Registry key + maxLength: 1023 + default_value_data: + type: string + description: Registry key default value data + pattern: .* + maxLength: 1024 + negate: + type: boolean + description: Key does not exist or match specified value data + default: false + registry_value: + type: array + items: + type: object + properties: + name: + type: string + description: Registry value name + maxLength: 1023 + value_data: + type: string + description: Registry value data + pattern: .* + maxLength: 1024 + negate: + type: boolean + description: Value does not exist or match specified value data + default: false + required: + - name + required: + - name + plist: + type: array + items: + type: object + properties: + name: + type: string + description: Preference list + maxLength: 1023 + negate: + type: boolean + description: Plist does not exist + default: false + key: + type: array + items: + type: object + properties: + name: + type: string + description: Key name + maxLength: 1023 + value: + type: string + description: Key value + pattern: .* + maxLength: 1024 + negate: + type: boolean + description: Value does not exist or match specified value data + default: false + required: + - name + required: + - name + required: + - criteria + mobile_device: + type: object + properties: + criteria: + type: object + properties: + jailbroken: + type: boolean + description: If device is by rooted/jailbroken + disk_encrypted: + type: boolean + description: If device's disk is encrypted + passcode_set: + type: boolean + description: If device's passcode is present + last_checkin_time: + type: object + oneOf: + - type: object + title: within + properties: + within: + type: object + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 365 + default: 30 + required: + - days + required: + - within + - type: object + title: not_within + properties: + not_within: + type: object + properties: + days: + type: integer + description: specify time in days + minimum: 1 + maximum: 365 + default: 30 + required: + - days + required: + - not_within + imei: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + model: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + phone_number: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + tag: + type: object + oneOf: + - type: object + title: contains + properties: + contains: + type: string + maxLength: 255 + required: + - contains + - type: object + title: is + properties: + is: + type: string + maxLength: 255 + required: + - is + - type: object + title: is_not + properties: + is_not: + type: string + maxLength: 255 + required: + - is_not + applications: + type: object + properties: + has_malware: + type: object + oneOf: + - type: object + title: 'no' + properties: + 'no': + type: object + - type: object + title: 'yes' + properties: + 'yes': + type: object + properties: + excludes: + type: array + items: + type: object + properties: + name: + type: string + maxLength: 31 + package: + type: string + description: application package name + pattern: .* + maxLength: 1024 + hash: + type: string + description: application hash + pattern: .* + maxLength: 1024 + required: + - name + has_unmanaged_app: + type: boolean + description: Has apps that are not managed + includes: + type: array + items: + type: object + properties: + name: + type: string + maxLength: 31 + package: + type: string + description: application package name + pattern: .* + maxLength: 1024 + hash: + type: string + description: application hash + pattern: .* + maxLength: 1024 + required: + - name + certificate: + type: object + properties: + criteria: + type: object + properties: + certificate_profile: + type: string + description: Profile for authenticating client certificates + x-panMemberOf: + - location: shared + schema: certificate-profile + subPath: name + certificate_attributes: + type: array + items: + type: object + properties: + name: + type: string + description: Attribute Name + value: + type: string + description: Key value + pattern: .* + maxLength: 1024 + 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 + hip-profiles: + type: object + required: + - id + - name + - match + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d.\-_]+$ + description: The name of the HIP profile + maxLength: 31 + description: + type: string + maxLength: 255 + match: + type: string + maxLength: 2048 + 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 + http-server-profiles: + type: object + required: + - id + - name + properties: + id: + type: string + format: uuid + description: The UUID of the HTTP server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the profile + maxLength: 63 + server: + type: array + items: + type: object + properties: + name: + description: HTTP server name + type: string + address: + description: HTTP server address + type: string + protocol: + description: HTTP server protocol + type: string + enum: + - HTTP + - HTTPS + port: + description: HTTP server port + type: integer + tls_version: + description: HTTP server TLS version + type: string + enum: + - '1.0' + - '1.1' + - '1.2' + - '1.3' + certificate_profile: + description: HTTP server certificate profile + type: string + default: None + http_method: + description: HTTP operation to perform + type: string + enum: + - GET + - POST + - PUT + - DELETE + tag_registration: + description: Register tags on match + type: boolean + format: + type: object + properties: + config: + $ref: '#/components/schemas/payload-format' + system: + $ref: '#/components/schemas/payload-format' + traffic: + $ref: '#/components/schemas/payload-format' + threat: + $ref: '#/components/schemas/payload-format' + wildfire: + $ref: '#/components/schemas/payload-format' + url: + $ref: '#/components/schemas/payload-format' + data: + $ref: '#/components/schemas/payload-format' + gtp: + $ref: '#/components/schemas/payload-format' + sctp: + $ref: '#/components/schemas/payload-format' + tunnel: + $ref: '#/components/schemas/payload-format' + auth: + $ref: '#/components/schemas/payload-format' + userid: + $ref: '#/components/schemas/payload-format' + iptag: + $ref: '#/components/schemas/payload-format' + decryption: + $ref: '#/components/schemas/payload-format' + globalprotect: + $ref: '#/components/schemas/payload-format' + hip_match: + $ref: '#/components/schemas/payload-format' + correlation: + $ref: '#/components/schemas/payload-format' + 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 + log-forwarding-profiles: + type: object + required: + - id + - name + properties: + id: + type: string + format: uuid + description: The UUID of the log server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the log forwarding profile + maxLength: 63 + description: + description: Log forwarding profile description + type: string + maximum: 255 + match_list: + type: array + items: + type: object + properties: + name: + description: Name of the match profile + type: string + maxLength: 63 + action_desc: + description: Match profile description + type: string + maxLength: 255 + log_type: + description: Log type + type: string + enum: + - traffic + - threat + - wildfire + - url + - data + - tunnel + - auth + - decryption + filter: + description: Filter match criteria + type: string + maxLength: 65535 + send_http: + description: A list of HTTP server profiles + type: array + items: + type: string + send_syslog: + description: A list of syslog server profiles + type: array + items: + type: string + 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 + payload-format: + type: object + properties: + name: + description: The name of the payload format + type: string + default: Default + url_format: + description: The URL path of the HTTP server + type: string + headers: + type: array + items: + type: object + properties: + name: + description: Header name + type: string + value: + description: Header value + type: string + params: + type: array + items: + type: object + properties: + name: + description: Parameter name + type: string + value: + description: Parameter value + type: string + payload: + description: | + The log payload format. The accepted log field values are as follows. + * `receive_time` + * `serial` + * `seqno` + * `actionflags` + * `type` + * `subtype` + * `time_generated` + * `high_res_timestamp` + * `dg_hier_level_1` + * `dg_hier_level_2` + * `dg_hier_level_3` + * `dg_hier_level_4` + * `vsys_name` + * `device_name` + * `vsys_id` + * `host` + * `vsys` + * `cmd` + * `admin` + * `client` + * `result` + * `path` + * `dg_id` + * `comment` + * `tpl_id` + * `sender_sw_version` + * `cef-formatted-receive_time` + * `cef-formatted-time_generated` + * `before-change-detail` + * `after-change-detail` + type: string + quarantined-devices: + type: object + required: + - host_id + properties: + host_id: + type: string + description: Device host ID + serial_number: + type: string + description: Device serial number + regions: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the region + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d._-]+$ + description: The name of the region + maxLength: 31 + geo_location: + type: object + properties: + latitude: + type: number + description: The latitudinal position of the region + format: float + minimum: -90 + maximum: 90 + longitude: + type: number + description: The longitudinal postition of the region + format: float + minimum: -180 + maximum: 180 + required: + - latitude + - longitude + address: + type: array + items: + type: string + x-panMultiple: [] + 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 + schedules: + type: object + required: + - id + - name + - schedule_type + properties: + id: + type: string + description: The UUID of the schedule + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d._-]+$ + description: The name of the schedule + maxLength: 31 + schedule_type: + type: object + oneOf: + - type: object + title: recurring + properties: + recurring: + type: object + oneOf: + - type: object + title: weekly + properties: + weekly: + type: object + properties: + sunday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + monday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + tuesday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + wednesday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + thursday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + friday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + saturday: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + - type: object + title: daily + properties: + daily: + type: array + items: + type: string + description: 'Time range specification hh:mm-hh:mm (e.g. 10:00-23:59)' + pattern: '([01][0-9]|[2][0-3]):([0-5][0-9])-([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 11 + maxLength: 11 + - type: object + title: non_recurring + properties: + non_recurring: + type: array + items: + type: string + description: 'Datetime range specification YYYY/MM/DD@hh:mm-YYYY/MM/DD@hh:mm (e.g. 2006/08/01@10:00-2007/12/31@23:59)' + pattern: '[0-9][0-9][0-9][0-9]\/([0][1-9]|[1][0-2])\/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9])-[0-9][0-9][0-9][0-9]\/([0][1-9]|[1][0-2])\/([0-2][0-9]|[3][0-1])@([01][0-9]|[2][0-3]):([0-5][0-9])' + minLength: 33 + maxLength: 33 + 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 + services: + type: object + required: + - name + properties: + id: + type: string + description: The UUID of the service + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d.\-_]+$ + description: The name of the service + maxLength: 63 + description: + type: string + maxLength: 1023 + protocol: + type: object + oneOf: + - type: object + title: tcp + properties: + tcp: + type: object + properties: + port: + type: string + minLength: 1 + maxLength: 1023 + source_port: + type: string + minLength: 1 + maxLength: 1023 + override: + type: object + properties: + timeout: + type: integer + description: tcp session timeout value (in second) + minimum: 1 + maximum: 604800 + default: 3600 + halfclose_timeout: + type: integer + description: tcp session half-close timeout value (in second) + minimum: 1 + maximum: 604800 + default: 120 + timewait_timeout: + type: integer + description: tcp session time-wait timeout value (in second) + minimum: 1 + maximum: 600 + default: 15 + required: + - port + - type: object + title: udp + properties: + udp: + type: object + properties: + port: + type: string + minLength: 1 + maxLength: 1023 + source_port: + type: string + minLength: 1 + maxLength: 1023 + override: + type: object + properties: + timeout: + type: integer + description: udp session timeout value (in second) + minimum: 1 + maximum: 604800 + default: 30 + required: + - port + tag: + type: array + description: Tags for service object + maxItems: 64 + items: + type: string + maxLength: 127 + 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 + service-groups: + type: object + required: + - id + - name + - members + properties: + id: + type: string + description: The UUID of the service group + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: ^[ a-zA-Z\d.\-_]+$ + description: The name of the service group + maxLength: 63 + members: + type: array + items: + type: string + description: Associate services or service groups + maxLength: 63 + x-panMemberOf: + - location: shared + schema: service + subPath: name + - location: shared + schema: service-group + subPath: name + tag: + type: array + description: Tags associated with the service group + maxItems: 64 + items: + type: string + maxLength: 127 + 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 + + syslog-server-profiles: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the syslog server profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + maxLength: 31 + description: The name of the syslog server profile + format: + type: object + properties: + escaping: + type: object + properties: + escape_character: + description: Escape sequence delimiter + type: string + maxLength: 1 + escaped_characters: + description: A list of all the characters to be escaped (without spaces). + type: string + maxLength: 255 + traffic: + type: string + threat: + type: string + wildfire: + type: string + url: + type: string + data: + type: string + gtp: + type: string + sctp: + type: string + tunnel: + type: string + auth: + type: string + userid: + type: string + iptag: + type: string + decryption: + type: string + config: + type: string + system: + type: string + globalprotect: + type: string + hip_match: + type: string + correlation: + type: string + servers: + type: object + properties: + name: + description: Syslog server name + type: string + server: + description: Syslog server address + type: string + transport: + description: Transport protocol + type: string + enum: + - UDP + - TCP + port: + description: Syslog server port + type: integer + minimum: 1 + maximum: 65535 + format: + description: Syslog format + type: string + enum: + - BSD + - IETF + facility: + description: Syslog facility + type: string + enum: + - LOG_USER + - LOG_LOCAL0 + - LOG_LOCAL1 + - LOG_LOCAL2 + - LOG_LOCAL3 + - LOG_LOCAL4 + - LOG_LOCAL5 + - LOG_LOCAL6 + - LOG_LOCAL7 + 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 + + tags: + type: object + required: + - name + properties: + id: + type: string + description: The UUID of the tag + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + maxLength: 127 + description: The name of the tag + color: + description: The color of the tag + type: string + enum: + - Red + - Green + - Blue + - Yellow + - Copper + - Orange + - Purple + - Gray + - Light Green + - Cyan + - Light Gray + - Blue Gray + - Lime + - Black + - Gold + - Brown + - Olive + - Maroon + - Red-Orange + - Yellow-Orange + - Forest Green + - Turquoise Blue + - Azure Blue + - Cerulean Blue + - Midnight Blue + - Medium Blue + - Cobalt Blue + - Violet Blue + - Blue Violet + - Medium Violet + - Medium Rose + - Lavender + - Orchid + - Thistle + - Peach + - Salmon + - Magenta + - Red Violet + - Mahogany + - Burnt Sienna + - Chestnut + comments: + type: string + maxLength: 1023 + description: The description of the tag + 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 + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 +security: + - scmToken: [] +x-internal: false diff --git a/openapi-specs/scm/config/sase/operations/config-operations-recent.yaml b/openapi-specs/scm/config/sase/operations/config-operations-recent.yaml new file mode 100644 index 000000000..1201be059 --- /dev/null +++ b/openapi-specs/scm/config/sase/operations/config-operations-recent.yaml @@ -0,0 +1,844 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: Config Operations + description: These APIs are used for Prisma Access and NGFW operations 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/operations/v1' + description: Current + - url: 'https://api.sase.paloaltonetworks.com/sse/config/v1' + description: Legacy +paths: + /jobs: + get: + tags: + - Jobs + summary: List jobs + description: | + Retrieve a list of configuration jobs. + operationId: ListJobs + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/jobs' + 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' + '/jobs/{id}': + get: + tags: + - Jobs + summary: Get a job + description: | + Get an existing configuration job. + operationId: GetJobsByID + parameters: + - $ref: '#/components/parameters/jobid' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + type: array + items: + $ref: '#/components/schemas/jobs' + '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' + '/config-versions:load': + post: + tags: + - Config Versions + summary: Load config version + description: | + Load a specific configuration version into the candidate configuration. + operationId: LoadConfigVersions + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/load-config' + 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' + '/config-versions/candidate:push': + post: + tags: + - Config Versions + summary: Push the candidate configuration + description: | + Push the candidate configuration. + operationId: PushCandidateConfigVersions + requestBody: + description: Created + content: + application/json: + schema: + type: object + properties: + admin: + type: array + description: List the administrators and/or service accounts in this field. If you want to push folder named All, please do not add this admin field at all and list each of the folders under All in the folder field. + items: + type: string + description: + type: string + description: A description of the changes being pushed + anyOf: + - type: object + title: folders + properties: + folder: + type: array + description: The target folders for the configuration push + uniqueItems: true + items: + type: string + pattern: ^[a-zA-Z\d-_\. ]+$ + maxLength: 64 + example: [DMZ, Internet, Branches] + required: + - folders + - type: object + title: devices + properties: + devices: + type: array + description: The target devices for the configuration push + uniqueItems: true + items: + type: number + maxLength: 16 + example: [007951000388704, 007951000388707, 007051000239252] + required: + - folders + 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' + /config-versions: + get: + tags: + - Config Versions + summary: List configuration versions + description: | + Retrieve a list of configuration versions. + operationId: ListConfigVersions + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + responses: + '200': + description: OK + content: + application/json: + schema: + allOf: + - type: array + items: + $ref: '#/components/schemas/config-version' + '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' + /config-versions/candidate: + delete: + tags: + - Config Versions + summary: Delete a candidate configuration + description: | + Delete a candidate configuration. Roll back to the running configuration. + operationId: DeleteCandidateConfigVersions + 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' + '/config-versions/{version}': + get: + tags: + - Config Versions + summary: Get config by version + description: | + Get config by version. + operationId: GetConfigVersionsByID + parameters: + - $ref: '#/components/parameters/version' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/config-version' + '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' + /config-versions/running: + get: + tags: + - Config Versions + summary: Get running configuration versions + description: | + Get the running configuration versions on each folder. + operationId: GetRunningConfigVersions + responses: + '200': + description: OK + content: + application/json: + schema: + allOf: + - type: array + items: + $ref: '#/components/schemas/running-versions' + '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' +tags: + - name: Config Versions + description: Config Versions + - name: Jobs + description: Jobs +components: + parameters: + 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 + jobid: + name: id + in: path + description: The ID of the job + required: true + schema: + type: integer + version: + name: version + in: path + description: The configuration version number + required: true + schema: + type: integer + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + jobs: + type: object + properties: + device_name: + type: string + description: The name of the device + end_ts: + type: string + description: The timestamp indicating when the job was finished + id: + type: string + description: The job ID + example: "115" + job_result: + type: string + description: The job result + example: "2" + job_status: + type: string + description: The current status of the job + example: "2" + job_type: + type: string + description: The job type + example: "53" + parent_id: + type: string + description: The parent job ID + example: "114" + percent: + type: string + description: Job completion percentage + result_str: + type: string + enum: + - OK + - FAIL + - PEND + - WAIT + - CANCELLED + description: The result of the job + start_ts: + type: string + description: The timestamp indicating when the job was created + status_str: + type: string + enum: + - ACT + - FIN + - PEND + - PUSHSENT + - PUSHFAIL + - PUSHABORT + description: The current status of the job + summary: + type: string + description: The completion summary of the job + type_str: + type: string + enum: + - CommitAll + - CommitAndPush + - NGFW-Bootstrap-Push + - Validate + description: The job type + example: CommitAndPush + uname: + type: string + description: The administrator or service account that created the job + format: email + description: + type: string + description: A description provided by the administrator or service account + example: Added a new security rule for marketing + details: + type: string + description: JSON string with detailed errors or info + example: "{\"errors\":[\"Config push aborted, error: Failed to handle VPN clusters. Please check AutoVPN config for the device\"]}" + required: + - device_name + - end_ts + - id + - job_result + - job_status + - job_type + - parent_id + - percent + - result_str + - start_ts + - status_str + - summary + - type_str + - uname + - description + load-config: + type: object + properties: + version: + type: integer + config-version: + type: object + properties: + id: + type: integer + description: The configuration version + version: + type: string + description: The configuration version name + date: + type: string + format: date-time + admin: + type: string + description: The administrator or service account that pushed this configuration version + format: email + scope: + type: string + description: + type: string + swg_config: + type: string + updated: + type: number + created: + type: number + deleted: + type: number + ngfw_scope: + type: string + description: A comma separated list of firewall serial numbers + types: + type: string + impacted_devices: + type: string + edited_by: + type: string + required: + - id + - version + - date + - admin + - scope + - description + - swg_config + - updated + - created + - deleted + - ngfw_scope + - types + - impacted_devices + - edited_by + running-versions: + type: object + properties: + device: + type: string + description: The folder name or firewall serial number + version: + type: integer + description: The configuration version number + date: + type: string + description: The timestamp of when the configuration version was pushed to the folder or firewall + format: date-time + required: + - device + - version + - date + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + error_detail_cause_info: + type: object + title: Cause Info + properties: + code: + type: string + message: + type: string + details: + type: object + help: + type: string +security: + - scmToken: [] +x-internal: false diff --git a/openapi-specs/scm/config/sase/security/security-services-recent.yaml b/openapi-specs/scm/config/sase/security/security-services-recent.yaml new file mode 100644 index 000000000..473e52e1f --- /dev/null +++ b/openapi-specs/scm/config/sase/security/security-services-recent.yaml @@ -0,0 +1,6930 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: Security Services + description: These APIs are used for defining and managing security services configurations 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/security/v1' + description: Current + - url: 'https://api.sase.paloaltonetworks.com/sse/config/v1' + description: Legacy +tags: + - name: Anti-Spyware Profiles + description: Anti-Spyware Profiles + - name: Anti-Spyware Signatures + description: Anti-Spyware Signatures + - name: Application Override Rules + description: Application Override Rules + - name: Decryption Exclusions + description: Decryption Exclusions + - name: Decryption Profiles + description: Decryption Profiles + - name: Decryption Rules + description: Decryption Rules + - name: DNS Security Profiles + description: DNS Security Profiles + - name: DoS Protection Profiles + description: DoS Protection Profiles + - name: DoS Protection Rules + description: DoS Protection Rules + - name: File Blocking Profiles + description: File Blocking Profiles + - name: HTTP Header Profiles + description: HTTP Header Profiles + - name: Profile Groups + description: Profile Groups + - name: Security Rules + description: Security Rules + - name: URL Access Profiles + description: URL Access Profiles + - name: URL Categories + description: URL Categories + - name: URL Filtering Categories + description: Predefined URL categories + - name: Vulnerability Protection Profiles + description: Vulnerability Protection Profiles + - name: Vulnerability Protection Signatures + description: Vulnerability Protection Signatures + - name: WildFire Anti-Virus Profiles + description: WildFire Anti-Virus Profiles + - name: Saas Tenant Restrictions + description: Saas Tenant Restrictions +paths: + /anti-spyware-profiles: + get: + tags: + - Anti-Spyware Profiles + summary: List anti-spyware profiles + description: | + Retrieve a list of anti-spyware profiles. + operationId: ListAntiSpywareProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/anti-spyware-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: + - Anti-Spyware Profiles + summary: Create an anti-spyware profile + description: | + Create a new anti-spyware profile. + operationId: CreateAntiSpywareProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-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' + '/anti-spyware-profiles/{id}': + get: + tags: + - Anti-Spyware Profiles + summary: Get an anti-spyware profile + description: | + Get an existing anti-spyware profile. + operationId: GetAntiSpywareProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-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: + - Anti-Spyware Profiles + summary: Update an anti-spyware profile + description: | + Update an existing anti-spyware profile. + operationId: UpdateAntiSpywareProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-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: + - Anti-Spyware Profiles + summary: Delete an anti-spyware profile + description: | + Delete an anti-spyware profile. + operationId: DeleteAntiSpywareProfilesByID + 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' + /anti-spyware-signatures: + get: + tags: + - Anti-Spyware Signatures + summary: List anti-spyware signatures + description: | + Retrieve a list of anti-spyware signatures. + operationId: ListAntiSpywareSignatures + parameters: + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/anti-spyware-signatures' + 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: + - Anti-Spyware Signatures + summary: Create an anti-spyware signature + description: | + Create a new anti-spyware signature. + operationId: CreateAntiSpywareSignatures + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-signatures' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-signatures' + '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' + '/anti-spyware-signatures/{id}': + get: + tags: + - Anti-Spyware Signatures + summary: Get an anti-spyware signature + description: | + Get an existing anti-spyware signature. + operationId: GetAntiSpywareSignaturesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-signatures' + '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: + - Anti-Spyware Signatures + summary: Update an anti-spyware signature + description: | + Update an existing anti-spyware signature. + operationId: UpdateAntiSpywareSignaturesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-signatures' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/anti-spyware-signatures' + '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: + - Anti-Spyware Signatures + summary: Delete an anti-spyware signature + description: | + Delete an anti-spyware signature. + operationId: DeleteAntiSpywareSignaturesByID + 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' + /app-override-rules: + get: + tags: + - Application Override Rules + summary: List application override rules + description: | + Retrieve a list of application override rules. + operationId: ListApplicationOverrideRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/app-override-rules' + 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: + - Application Override Rules + summary: Create an application override rule + description: | + Create a new application override rule. + operationId: CreateApplicationOverrideRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/app-override-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/app-override-rules' + '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' + '/app-override-rules/{id}': + get: + tags: + - Application Override Rules + summary: Get an application override rule + description: | + Get an existing application override rule. + operationId: GetApplicationOverrideRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/app-override-rules' + '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: + - Application Override Rules + summary: Update an application override rule + description: | + Update an existing application override rule. + operationId: UpdateApplicationOverrideRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/app-override-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/app-override-rules' + '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: + - Application Override Rules + summary: Delete an application override rule + description: | + Delete an application override rule. + operationId: DeleteApplicationOverrideRulesByID + 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' + '/app-override-rules/{id}:move': + post: + tags: + - Application Override Rules + summary: Move an application override rule + description: | + Move an existing application override rule. + operationId: MoveApplicationOverrideRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: The app override rule you want to move + content: + application/json: + schema: + $ref: '#/components/schemas/rule-based-move' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + /decryption-exclusions: + get: + tags: + - Decryption Exclusions + summary: List decryption exclusions + description: | + Retrieve a list of decryption exclusions. + operationId: ListDecryptionExclusions + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/decryption-exclusions' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + post: + tags: + - Decryption Exclusions + summary: Create a decryption exclusion + description: | + Create a new decryption exclusion. + operationId: CreateDecryptionExclusions + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-exclusions' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-exclusions' + '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' + '/decryption-exclusions/{id}': + get: + tags: + - Decryption Exclusions + summary: Get a decryption exclusion + description: | + Get an existing decryption exclusion. + operationId: GetDecryptionExclusionsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-exclusions' + '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: + - Decryption Exclusions + summary: Update a decryption exclusion + description: | + Update an existing decryption exclusion. + operationId: UpdateDecryptionExclusionsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-exclusions' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-exclusions' + '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: + - Decryption Exclusions + summary: Delete a decryption exclusion + description: | + Delete a decryption exclusion. + operationId: DeleteDecryptionExclusionsByID + 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' + /decryption-profiles: + get: + tags: + - Decryption Profiles + summary: List decryption profiles + description: | + Retrieve a list of decryption profiles. + operationId: ListDecryptionProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/decryption-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: + - Decryption Profiles + summary: Create a decryption profile + description: | + Create a new decryption profile. + operationId: CreateDecryptionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-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' + '/decryption-profiles/{id}': + get: + tags: + - Decryption Profiles + summary: Get a decryption profile + description: | + Get an existing decryption profile. + operationId: GetDecryptionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-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: + - Decryption Profiles + summary: Update a decryption profile + description: | + Update an existing decryption profile. + operationId: UpdateDecryptionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-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: + - Decryption Profiles + summary: Delete a decryption profile + description: | + Delete a decryption profile. + operationId: DeleteDecryptionProfilesByID + 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' + /decryption-rules: + get: + tags: + - Decryption Rules + summary: List decryption rules + description: | + Retrieve a list of decryption rules. + operationId: ListDecryptionRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/decryption-rules' + 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: + - Decryption Rules + summary: Create a decryption rule + description: | + Create a new decryption rule. + operationId: CreateDecryptionRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-rules' + '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' + '/decryption-rules/{id}': + get: + tags: + - Decryption Rules + summary: Get a decryption rule + description: | + Get an existing decryption rule. + operationId: GetDecryptionRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-rules' + '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: + - Decryption Rules + summary: Update a decryption rule + description: | + Update an existing decryption rule. + operationId: UpdateDecryptionRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/decryption-rules' + '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: + - Decryption Rules + summary: Delete a decryption rule + description: | + Delete a decryption rule. + operationId: DeleteDecryptionRulesByID + 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' + '/decryption-rules/{id}:move': + post: + tags: + - Decryption Rules + summary: Move a decryption rule + description: | + Move an existing decryption rule. + operationId: MoveDecryptionRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/rule-based-move' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + /dns-security-profiles: + get: + tags: + - DNS Security Profiles + summary: List DNS security profiles + description: | + Retrieve a list of DNS security profiles. + operationId: ListDNSSecurityProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dns-security-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: + - DNS Security Profiles + summary: Create a DNS security profile + description: | + Create a new DNS security profile. + operationId: CreateDNSSecurityProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dns-security-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-security-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' + '/dns-security-profiles/{id}': + get: + tags: + - DNS Security Profiles + summary: Get a DNS security profile + description: | + Get an existing DNS security profile. + operationId: GetDNSSecurityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-security-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: + - DNS Security Profiles + summary: Update a DNS security profile + description: | + Update an existing DNS security profile. + operationId: UpdateDNSSecurityProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-security-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dns-security-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: + - DNS Security Profiles + summary: Delete a DNS security profile + description: | + Delete a DNS security profile. + operationId: DeleteDNSSecurityProfilesByID + 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' + /dos-protection-profiles: + get: + tags: + - DoS Protection Profiles + summary: List DoS protection profiles + description: | + Retrieve a list of DoS protection profiles. + operationId: ListDoSProtectionProfiles + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dos-protection-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: + - DoS Protection Profiles + summary: Create a DoS protection profile + description: | + Create a new DoS protection profile. + operationId: CreateDoSProtectionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-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' + '/dos-protection-profiles/{id}': + get: + tags: + - DoS Protection Profiles + summary: Get a DoS protection profile + description: | + Get an existing DoS protection profile. + operationId: GetDoSProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-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: + - DoS Protection Profiles + summary: Update a DoS protection profile + description: | + Update an existing DoS protection profile. + operationId: UpdateDoSProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-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: + - DoS Protection Profiles + summary: Delete a DoS protection profile + description: | + Delete a DoS protection profile. + operationId: DeleteDoSProtectionProfilesByID + 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' + /dos-protection-rules: + get: + tags: + - DoS Protection Rules + summary: List DoS protection rules + description: | + Retrieve a list of DoS protection rules. + operationId: ListDoSProtectionRules + parameters: + - $ref: '#/components/parameters/limit' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/dos-protection-rules' + 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: + - DoS Protection Rules + summary: Create a DoS protection rule + description: | + Create a new DoS protection rule. + operationId: CreateDoSProtectionRules + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-rules' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-rules' + '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' + '/dos-protection-rules/{id}': + get: + tags: + - DoS Protection Rules + summary: Get a DoS protection rule + description: | + Get an existing DoS protection rule. + operationId: GetDoSProtectionRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-rules' + '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: + - DoS Protection Rules + summary: Update a DoS protection rule + description: | + Update an existing DoS protection rule. + operationId: UpdateDoSProtectionRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/dos-protection-rules' + '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: + - DoS Protection Rules + summary: Delete a DoS protection rule + description: | + Delete a DoS protection rule. + operationId: DeleteDoSProtectionRulesByID + 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' + /file-blocking-profiles: + get: + tags: + - File Blocking Profiles + summary: List file blocking profiles + description: | + Retrieve a list of file blocking profiles. + operationId: ListFileBlockingProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/file-blocking-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: + - File Blocking Profiles + summary: Create a file blocking profiles + description: | + Create a new file blocking profile. + operationId: CreateFileBlockingProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/file-blocking-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/file-blocking-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' + '/file-blocking-profiles/{id}': + get: + tags: + - File Blocking Profiles + summary: Get a file blocking profile + description: | + Get an existing file blocking profile. + operationId: GetFileBlockingProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/file-blocking-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: + - File Blocking Profiles + summary: Update a file blocking profile + description: | + Update a file blocking profile. + operationId: UpdateFileBlockingProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/file-blocking-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/file-blocking-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: + - File Blocking Profiles + summary: Delete a file blocking profile + description: | + Delete a file blocking profile. + operationId: DeleteFileBlockingProfilesByID + 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' + /http-header-profiles: + get: + tags: + - HTTP Header Profiles + summary: List HTTP header profiles + description: | + Retrieve a list of HTTP header profiles. + operationId: ListHTTPHeaderProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/http-header-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: + - HTTP Header Profiles + summary: Create an HTTP header profile + description: | + Create a new HTTP header profiles. + operationId: CreateHTTPHeaderProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/http-header-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-header-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' + '/http-header-profiles/{id}': + get: + tags: + - HTTP Header Profiles + summary: Get an HTTP header profile + description: | + Get an existing HTTP header profile. + operationId: GetHTTPHeaderProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-header-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: + - HTTP Header Profiles + summary: Update an HTTP header profile + description: | + Update an existing HTTP header profile. + operationId: UpdateHTTPHeaderProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-header-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/http-header-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: + - HTTP Header Profiles + summary: Delete an HTTP header profile + description: | + Delete an HTTP header profile. + operationId: DeleteHTTPHeaderProfilesByID + 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' + /profile-groups: + get: + tags: + - Profile Groups + summary: List profile groups + description: | + Retrieve a list of profile groups. + operationId: ListProfileGroups + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/profile-groups' + 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: + - Profile Groups + summary: Create a profile group + description: | + Create a new profile group. + operationId: CreateProfileGroups + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/profile-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/profile-groups' + '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' + '/profile-groups/{id}': + get: + tags: + - Profile Groups + summary: Get a profile group + description: | + Get an existing profile group. + operationId: GetProfileGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/profile-groups' + '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: + - Profile Groups + summary: Update a profile group + description: | + Update an existing profile group. + operationId: UpdateProfileGroupsByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/profile-groups' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/profile-groups' + '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: + - Profile Groups + summary: Delete a profile group + description: | + Delete a profile group. + operationId: DeleteProfileGroupsByID + 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' + /security-rules: + get: + tags: + - Security Rules + summary: List security rules + description: | + Retrieve a list of security rules. + operationId: ListRules + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/position' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/SecurityRuleListResponse' + '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: + - Security Rules + summary: Create a security rule + description: | + Create a new security rule. + operationId: CreateSecurityRules + parameters: + - $ref: '#/components/parameters/position' + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/security-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/security-rules' + '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-rules/{id}': + get: + tags: + - Security Rules + summary: Get a security rule + description: | + Get an existing security rule. + operationId: GetSecurityRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/security-rules' + '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: + - Security Rules + summary: Update a security rule + description: | + Update an existing security rule. + operationId: UpdateSecurityRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/security-rules' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/security-rules' + '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: + - Security Rules + summary: Delete a security rule + description: | + Delete a security rule. + operationId: DeleteSecurityRulesByID + 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' + '/security-rules/{id}:move': + post: + tags: + - Security Rules + summary: Move a security rule + description: | + Move an existing security rule. + operationId: MoveSecurityRulesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/rule-based-move' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + /url-access-profiles: + get: + tags: + - URL Access Profiles + summary: List URL access profiles + description: | + Retrieve a list of URL access profiles. + operationId: ListURLAccessProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/url-access-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: + - URL Access Profiles + summary: Create a URL access profile + description: | + Create a new URL access profile. + operationId: CreateURLAccessProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/url-access-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-access-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' + '/url-access-profiles/{id}': + get: + tags: + - URL Access Profiles + summary: Get a URL access profile + description: | + Get an existing URL access profile. + operationId: GetURLAccessProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-access-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: + - URL Access Profiles + summary: Update a URL access Profile + description: | + Update an existing URL access Profile. + operationId: UpdateURLAccessProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-access-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-access-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: + - URL Access Profiles + summary: Delete a URL access profile + description: | + Delete a URL access profile. + operationId: DeleteURLAccessProfilesByID + 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' + /url-categories: + get: + tags: + - URL Categories + summary: List custom URL categories + description: | + Retrieve a list of custom URL categories. + operationId: ListURLCategories + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/url-categories' + 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: + - URL Categories + summary: Create a custom URL category + description: | + Create a new custom URL category. + operationId: CreateURLCategories + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/url-categories' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-categories' + '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' + '/url-categories/{id}': + get: + tags: + - URL Categories + summary: Get a custom URL category + description: | + Get an existing custom URL category. + operationId: GetURLCategoriesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-categories' + '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: + - URL Categories + summary: Update a custom URL category + description: | + Update an existing custom URL category. + operationId: UpdateURLCategoriesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-categories' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/url-categories' + '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: + - URL Categories + summary: Delete a custom URL Category + description: | + Delete a custom URL Category. + operationId: DeleteURLCategoriesByID + 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' + /url-filtering-categories: + get: + tags: + - URL Filtering Categories + summary: List custom URL categories + description: | + Retrieve a list of custom URL categories. + operationId: ListURLFilteringCategories + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/url-filtering-categories' + 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' + /vulnerability-protection-profiles: + get: + tags: + - Vulnerability Protection Profiles + summary: List vulnerability protection profiles + description: | + Retrieve a list of vulnerability protection profiles. + operationId: ListVulnerabilityProtectionProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/vulnerability-protection-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: + - Vulnerability Protection Profiles + summary: Create a vulnerability protection profile + description: | + Create a new vulnerability protection profile. + operationId: CreateVulnerabilityProtectionProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-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' + '/vulnerability-protection-profiles/{id}': + get: + tags: + - Vulnerability Protection Profiles + summary: Get a vulnerability protection profile + description: | + Get an existing vulnerability protection profile. + operationId: GetVulnerabilityProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-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: + - Vulnerability Protection Profiles + summary: Update an vulnerability protection profile + description: | + Update an existing vulnerability protection profile. + operationId: UpdateVulnerabilityProtectionProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-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: + - Vulnerability Protection Profiles + summary: Delete a vulnerability protection profile + description: | + Delete a vulnerability protection profile. + operationId: DeleteVulnerabilityProtectionProfilesByID + 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' + /vulnerability-protection-signatures: + get: + tags: + - Vulnerability Protection Signatures + summary: List vulnerability protection signatures + description: | + Retrieve a list of vulnerability protection signatures. + operationId: ListVulnerabilityProtectionSignatures + parameters: + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/vulnerability-protection-signatures' + 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: + - Vulnerability Protection Signatures + summary: Create a vulnerability protection signature + description: | + Create a new vulnerability protection signature. + operationId: CreateVulnerabilityProtectionSignatures + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-signatures' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-signatures' + '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' + '/vulnerability-protection-signatures/{id}': + get: + tags: + - Vulnerability Protection Signatures + summary: Get a vulnerability protection signature + description: | + Get an existing vulnerability protection signature. + operationId: GetVulnerabilityProtectionSignaturesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-signatures' + '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: + - Vulnerability Protection Signatures + summary: Update a vulnerability protection signature + description: | + Update an existing vulnerability protection signature. + operationId: UpdateVulnerabilityProtectionSignaturesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-signatures' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/vulnerability-protection-signatures' + '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: + - Vulnerability Protection Signatures + summary: Delete a vulnerability protection signature + description: | + Delete a vulnerability protection signature. + operationId: DeleteVulnerabilityProtectionSignaturesByID + 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' + /wildfire-anti-virus-profiles: + get: + tags: + - WildFire Anti-Virus Profiles + summary: List Wildfire and anti-virus profiles + description: | + Retrieve a list of WildFire and anti-virus profiles. + operationId: ListWildFireAntiVirusProfiles + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/wildfire-anti-virus-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: + - WildFire Anti-Virus Profiles + summary: Create a WildFire and anti-virus profile + description: | + Create a new WildFire and anti-virus profile. + operationId: CreateWildFireAntiVirusProfiles + requestBody: + description: Created + content: + application/json: + schema: + $ref: '#/components/schemas/wildfire-anti-virus-profiles' + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/wildfire-anti-virus-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' + '/wildfire-anti-virus-profiles/{id}': + get: + tags: + - WildFire Anti-Virus Profiles + summary: Get a WildFire and anti-virus profile + description: | + Get an existing WildFire and anti-virus profile. + operationId: GetWildFireAntiVirusProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/wildfire-anti-virus-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: + - WildFire Anti-Virus Profiles + summary: Update a wildfire and antivirus profile + description: | + Update an existing WildFire and anti-virus profile. + operationId: UpdateWildFireAntiVirusProfilesByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/wildfire-anti-virus-profiles' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/wildfire-anti-virus-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: + - WildFire Anti-Virus Profiles + summary: Delete a WildFire and anti-virus profile + description: | + Delete a WildFire and anti-virus profile. + operationId: DeleteWildFireAntiVirusProfilesByID + 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' + /saas-tenant-restrictions: + get: + tags: + - Saas Tenant Restrictions + summary: Get Saas Tenant Restrictions + description: Get Saas Tenant Restrictions + operationId: GetSaasTenantRestrictions + parameters: + - $ref: '#/components/parameters/name' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + - $ref: '#/components/parameters/offset' + - $ref: '#/components/parameters/limit' + responses: + '200': + description: OK + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/saas-tenant-restrictions' + 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' + '409': + $ref: '#/components/responses/conflict_errors' + default: + $ref: '#/components/responses/default_errors' + put: + tags: + - Saas Tenant Restrictions + summary: Update Saas Tenant Restrictions + description: Update Saas Tenant Restrictions + operationId: UpdateSaasTenantRestrictions + parameters: + - $ref: '#/components/parameters/snippet' + requestBody: + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/saas-tenant-restrictions' + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/saas-tenant-restrictions' + '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' +components: + parameters: + 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 + folder: + name: folder + in: query + description: | + The folder in which the resource is defined + required: false + schema: + type: string + snippet: + name: snippet + in: query + description: | + The snippet in which the resource is defined + required: false + schema: + type: string + device: + name: device + in: query + description: | + The device in which the resource is defined + required: false + schema: + type: string + position: + name: position + in: query + description: | + The position of a security rule + required: true + schema: + enum: + - pre + - post + default: pre + 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 + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + 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_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: E016 + message: Invalid Credential + 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_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: E016 + message: Key Expired + 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_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: E007 + message: Unauthorized + 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_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_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_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_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_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: E003 + message: Missing Body + 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_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: E013 + message: Bad XPath + 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_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: E016 + message: Object Not Unique + 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_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_object: + summary: Invalid Object + value: + _errors: + - code: E003 + message: Invalid Object + 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_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 + schemas: + anti-spyware-profiles: + type: object + required: + - id + - name + properties: + id: + type: string + description: The UUID of the anti-spyware profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the anti-spyware profile + description: + type: string + cloud_inline_analysis: + type: boolean + default: false + inline_exception_edl_url: + type: array + items: + type: string + inline_exception_ip_address: + type: array + items: + type: string + mica_engine_spyware_enabled: + type: array + items: + type: object + properties: + name: + type: string + inline_policy_action: + enum: + - alert + - allow + - drop + - reset-both + - reset-client + - reset-server + default: alert + rules: + type: array + items: + type: object + properties: + name: + type: string + action: + type: object + description: anti spyware profiles rules default action + oneOf: + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: drop + properties: + drop: + type: object + - type: object + title: reset_client + properties: + reset_client: + type: object + - type: object + title: reset_server + properties: + reset_server: + type: object + - type: object + title: reset_both + properties: + reset_both: + type: object + - type: object + title: block_ip + description: Antispyware profiles rules action block ip parent + properties: + block_ip: + type: object + description: anti spyware profiles rules action block ip + properties: + track_by: + enum: + - source-and-destination + - source + duration: + type: integer + minimum: 1 + maximum: 3600 + packet_capture: + enum: + - disable + - single-packet + - extended-capture + severity: + type: array + items: + type: string + category: + enum: + - adns-adtracking + - adns-benign + - adns-c2 + - adns-ddns + - adns-dnsmisconfig + - adns-grayware + - adns-hijacking + - adns-malware + - adns-new-domain + - adns-parked + - adns-phishing + - adns-proxy + - adware + - any + - autogen + - backdoor + - botnet + - browser-hijack + - command-and-control + - cryptominer + - data-theft + - dns + - dns-adtracking + - dns-benign + - dns-c2 + - dns-ddns + - dns-grayware + - dns-malware + - dns-new-domain + - dns-parked + - dns-phishing + - dns-proxy + - dns-security + - dns-wildfire + - domain-edl + - downloader + - fraud + - hacktool + - inline-cloud-c2 + - keylogger + - net-worm + - p2p-communication + - phishing-kit + - post-exploitation + - spyware + - tls-fingerprint + - webshell + threat_name: + type: string + minLength: 3 + default: any + threat_exception: + type: array + items: + type: object + properties: + name: + type: string + action: + type: object + description: anti spyware profiles threat exception default action + oneOf: + - type: object + title: default + properties: + default: + type: object + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: drop + properties: + drop: + type: object + - type: object + title: reset_client + properties: + reset_client: + type: object + - type: object + title: reset_server + properties: + reset_server: + type: object + - type: object + title: reset_both + properties: + reset_both: + type: object + - type: object + title: block_ip + description: anti spyware profiles threat exception action block ip parent + properties: + block_ip: + type: object + description: anti spyware profiles threat exception action block ip + properties: + track_by: + enum: + - source-and-destination + - source + duration: + type: integer + minimum: 1 + maximum: 3600 + packet_capture: + enum: + - disable + - single-packet + - extended-capture + exempt_ip: + type: array + items: + type: object + description: anti spyware protection IP address to be exempted from threat exception + properties: + name: + type: string + required: + - name + notes: + type: string + 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 + anti-spyware-signatures: + type: object + required: + - id + - threat_id + - threatname + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + threat_id: + type: string + description: threat id range <15000-18000> and <6900001-7000000> + bugtraq: + type: array + items: + type: string + comment: + type: string + maxLength: 256 + cve: + type: array + items: + type: string + default_action: + type: object + description: anti spyware signature default action + oneOf: + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: drop + properties: + drop: + type: object + - type: object + title: reset_client + properties: + reset_client: + type: object + - type: object + title: reset_server + properties: + reset_server: + type: object + - type: object + title: reset_both + properties: + reset_both: + type: object + - type: object + title: block_ip + description: anti spyware signature default action + properties: + block_ip: + type: object + description: anti spyware signature block ip + properties: + track_by: + enum: + - source-and-destination + - source + duration: + type: integer + minimum: 1 + maximum: 3600 + direction: + enum: + - client2server + - server2client + - both + reference: + type: array + items: + type: string + severity: + enum: + - critical + - low + - high + - medium + - informational + signature: + type: object + description: anti spyware signature + oneOf: + - type: object + title: combination + properties: + combination: + type: object + description: anti spyware signature combination + properties: + and_condition: + type: array + items: + type: object + properties: + name: + type: string + or_condition: + type: array + items: + type: object + properties: + name: + type: string + threat_id: + type: string + order_free: + type: boolean + default: false + time_attribute: + type: object + description: anti spyware time attribute + properties: + interval: + type: integer + minimum: 1 + maximum: 3600 + threshold: + type: integer + minimum: 1 + maximum: 255 + track_by: + enum: + - source-and-destination + - source + - destination + - type: object + title: standard + properties: + standard: + type: array + items: + type: object + properties: + name: + type: string + and_condition: + type: array + items: + type: object + properties: + name: + type: string + or_condition: + type: array + items: + type: object + properties: + name: + type: string + operator: + type: object + properties: + equal_to: + type: object + properties: + context: + type: string + negate: + type: boolean + default: false + qualifier: + type: array + items: + type: object + properties: + name: + type: string + value: + type: string + value: + type: integer + minimum: 0 + maximum: 4294967295 + greater_than: + type: object + properties: + context: + type: string + qualifier: + type: array + items: + type: object + properties: + name: + type: string + value: + type: string + value: + type: integer + minimum: 0 + maximum: 4294967295 + less_than: + type: object + properties: + context: + type: string + qualifier: + type: array + items: + type: object + properties: + name: + type: string + value: + type: string + value: + type: integer + minimum: 0 + maximum: 4294967295 + pattern_match: + type: object + properties: + context: + type: string + negate: + type: boolean + default: false + pattern: + type: string + qualifier: + type: array + items: + type: object + properties: + name: + type: string + value: + type: string + comment: + type: string + maxLength: 256 + order_free: + type: boolean + default: false + scope: + enum: + - protocol-data-unit + - session + required: + - name + threatname: + type: string + maxLength: 1024 + vendor: + type: array + items: + type: string + 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 + app-override-rules: + type: object + required: + - name + - application + - destination + - from + - port + - protocol + - source + - to + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: '^[a-zA-Z0-9._-]+$' + maxLength: 63 + application: + type: string + description: + type: string + maxLength: 1024 + destination: + type: array + default: + - any + items: + type: string + disabled: + type: boolean + default: false + from: + type: array + default: + - any + items: + type: string + group_tag: + type: string + negate_destination: + type: boolean + default: false + negate_source: + type: boolean + default: false + port: + type: string + minimum: 0 + maximum: 65535 + protocol: + enum: + - tcp + - udp + source: + type: array + default: + - any + items: + type: string + tag: + type: array + items: + type: string + to: + type: array + default: + - any + items: + type: string + 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 + rule-based-move: + type: object + title: rule-based-move + properties: + destination: + enum: + - top + - bottom + - before + - after + description: 'A destination of the rule. Valid destination values are top, bottom, before and after.' + rulebase: + enum: + - pre + - post + description: A base of a rule. Valid rulebase values are pre and post. + destination_rule: + type: string + description: A destination_rule attribute is required only if the destination value is before or after. Valid destination_rule values are existing rule UUIDs within the same container. + required: + - destination + - rulebase + decryption-exclusions: + type: object + required: + - id + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: + type: string + 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 + decryption-profiles: + type: object + required: + - name + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: 'Must start with alphanumeric char and should contain only alphanemeric, underscore, hyphen, dot or space' + pattern: '^[A-Za-z0-9]{1}[A-Za-z0-9_\-\.\s]{0,}$' + ssl_forward_proxy: + type: object + properties: + auto_include_altname: + type: boolean + default: false + block_client_cert: + type: boolean + default: false + block_expired_certificate: + type: boolean + default: false + block_timeout_cert: + type: boolean + default: false + block_tls13_downgrade_no_resource: + type: boolean + default: false + block_unknown_cert: + type: boolean + default: false + block_unsupported_cipher: + type: boolean + default: false + block_unsupported_version: + type: boolean + default: false + block_untrusted_issuer: + type: boolean + default: false + restrict_cert_exts: + type: boolean + default: false + strip_alpn: + type: boolean + default: false + ssl_inbound_proxy: + type: object + properties: + block_if_hsm_unavailable: + type: boolean + default: false + block_if_no_resource: + type: boolean + default: false + block_unsupported_cipher: + type: boolean + default: false + block_unsupported_version: + type: boolean + default: false + ssl_no_proxy: + type: object + properties: + block_expired_certificate: + type: boolean + default: false + block_untrusted_issuer: + type: boolean + default: false + ssl_protocol_settings: + type: object + properties: + auth_algo_md5: + type: boolean + default: true + auth_algo_sha1: + type: boolean + default: true + auth_algo_sha256: + type: boolean + default: true + auth_algo_sha384: + type: boolean + default: true + enc_algo_3des: + type: boolean + default: true + enc_algo_aes_128_cbc: + type: boolean + default: true + enc_algo_aes_128_gcm: + type: boolean + default: true + enc_algo_aes_256_cbc: + type: boolean + default: true + enc_algo_aes_256_gcm: + type: boolean + default: true + enc_algo_chacha20_poly1305: + type: boolean + default: true + enc_algo_rc4: + type: boolean + default: true + keyxchg_algo_dhe: + type: boolean + default: true + keyxchg_algo_ecdhe: + type: boolean + default: true + keyxchg_algo_rsa: + type: boolean + default: true + max_version: + enum: + - sslv3 + - tls1-0 + - tls1-1 + - tls1-2 + - tls1-3 + - max + default: tls1-2 + min_version: + enum: + - sslv3 + - tls1-0 + - tls1-1 + - tls1-2 + - tls1-3 + default: tls1-0 + 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 + decryption-rules: + type: object + required: + - name + - action + - category + - destination + - service + - source + - source_user + - from + - to + properties: + id: + type: string + description: The UUID of the decryption rule + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the decryption rule + action: + type: string + enum: + - decrypt + - no-decrypt + description: The action to be taken + description: + type: string + description: The description of the decryption rule + category: + type: array + items: + type: string + description: The destination URL category + destination: + type: array + items: + type: string + description: The destination addresses + destination_hip: + type: array + items: + type: string + description: The Host Integrity Profile of the destination host + profile: + type: string + description: The decryption profile associated with the decryption rule + service: + type: array + items: + type: string + description: The destination services and/or service groups + source: + type: array + items: + type: string + description: The source addresses + source_hip: + type: array + items: + type: string + description: The Host Integrity Profile of the source host + source_user: + type: array + items: + type: string + description: List of source users and/or groups. Reserved words include `any`, `pre-login`, `known-user`, and `unknown`. + tag: + type: array + items: + type: string + description: The tags associated with the decryption rule + from: + type: array + items: + type: string + description: The source security zone + to: + type: array + items: + type: string + description: The destination security zone + disabled: + type: boolean + description: Is the rule disabled? + negate_source: + type: boolean + description: Negate the source addresses? + negate_destination: + type: boolean + description: Negate the destination addresses? + log_setting: + type: string + description: The log settings of the decryption rule + log_fail: + type: boolean + description: Log failed decryption events? + log_success: + type: boolean + description: Log successful decryption events? + type: + type: object + oneOf: + - type: object + title: ssl_forward_proxy + properties: + ssl_forward_proxy: + type: object + - type: object + title: ssl_inbound_inspection + properties: + ssl_inbound_inspection: + type: string + description: add the certificate name for SSL inbound inspection + required: + - ssl_inbound_inspection + description: The type of decryption + 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 + dns-security-profiles: + type: object + properties: + id: + type: string + description: The UUID of the DNS security profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the DNS security profile + description: + type: string + description: The description of the DNS security profile + botnet_domains: + type: object + description: Botnet domains + properties: + dns_security_categories: + type: array + description: DNS categories + items: + type: object + properties: + name: + type: string + action: + enum: + - default + - allow + - block + - sinkhole + default: default + log_level: + enum: + - default + - none + - low + - informational + - medium + - high + - critical + default: default + packet_capture: + enum: + - disable + - single-packet + - extended-capture + lists: + type: array + description: Dynamic lists of DNS domains + items: + type: object + properties: + name: + type: string + action: + type: object + oneOf: + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: block + properties: + block: + type: object + - type: object + title: sinkhole + properties: + sinkhole: + type: object + packet_capture: + enum: + - disable + - single-packet + - extended-capture + required: + - name + sinkhole: + type: object + description: DNS sinkhole settings + properties: + ipv4_address: + enum: + - 127.0.0.1 + - pan-sinkhole-default-ip + ipv6_address: + enum: + - '::1' + whitelist: + type: array + description: DNS security overrides + items: + type: object + properties: + name: + type: string + description: DNS domain or FQDN to be whitelisted + description: + type: string + 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 + dos-protection-profiles: + type: object + required: + - name + - type + properties: + id: + type: string + description: The UUID of the DNS security profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Profile name + type: string + maxLength: 31 + type: + description: Type + type: string + enum: + - aggregate + - classified + description: + description: Description + type: string + minLength: 0 + maxLength: 255 + flood: + type: object + properties: + tcp-syn: + type: object + required: + - enable + properties: + enable: + type: boolean + default: false + oneOf: + - title: red + properties: + red: + type: object + required: + - alarm-rate + - activate-rate + - maximal-rate + properties: + alarm-rate: + description: Connection rate (cps) to generate alarm + default: 10000 + type: integer + minimum: 0 + maximum: 2000000 + activate-rate: + description: Connection rate (cps) to start RED + default: 10000 + type: integer + minimum: 1 + maximum: 2000000 + maximal-rate: + description: Maximal connection rate (cps) allowed + default: 40000 + type: integer + minimum: 1 + maximum: 2000000 + block: + type: object + properties: + duration: + default: 300 + type: integer + minimum: 1 + maximum: 21600 + - title: syn-cookies + required: + - syn-cookies + properties: + syn-cookies: + type: object + required: + - alarm-rate + - activate-rate + - maximal-rate + properties: + alarm-rate: + description: Connection rate (cps) to generate alarm + default: 10000 + type: integer + minimum: 0 + maximum: 2000000 + activate-rate: + description: Connection rate (cps) to activate SYN cookies proxy + default: 0 + type: integer + minimum: 0 + maximum: 2000000 + maximal-rate: + description: Maximum connection rate (cps) allowed + default: 1000000 + type: integer + minimum: 1 + maximum: 2000000 + block: + type: object + xml: + name: block + properties: + duration: + default: 300 + type: integer + minimum: 1 + maximum: 21600 + udp: + type: object + properties: + enable: + type: boolean + default: false + red: + type: object + required: + - alarm-rate + - activate-rate + - maximal-rate + properties: + alarm-rate: + description: Connection rate (cps) to generate alarm + default: 10000 + type: integer + minimum: 0 + maximum: 2000000 + activate-rate: + description: Connection rate (cps) to start RED + default: 10000 + type: integer + minimum: 1 + maximum: 2000000 + maximal-rate: + description: Maximal connection rate (cps) allowed + default: 40000 + type: integer + minimum: 1 + maximum: 2000000 + block: + type: object + properties: + duration: + default: 300 + type: integer + minimum: 1 + maximum: 21600 + icmp: + type: object + properties: + enable: + type: boolean + default: false + red: + type: object + required: + - alarm-rate + - activate-rate + - maximal-rate + properties: + alarm-rate: + description: Connection rate (cps) to generate alarm + default: 10000 + type: integer + minimum: 0 + maximum: 2000000 + activate-rate: + description: Connection rate (cps) to start RED + default: 10000 + type: integer + minimum: 1 + maximum: 2000000 + maximal-rate: + description: Maximal connection rate (cps) allowed + default: 40000 + type: integer + minimum: 1 + maximum: 2000000 + block: + type: object + properties: + duration: + default: 300 + type: integer + minimum: 1 + maximum: 21600 + icmpv6: + type: object + properties: + enable: + type: boolean + default: false + red: + type: object + required: + - alarm-rate + - activate-rate + - maximal-rate + properties: + alarm-rate: + description: Connection rate (cps) to generate alarm + default: 10000 + type: integer + minimum: 0 + maximum: 2000000 + activate-rate: + description: Connection rate (cps) to start RED + default: 10000 + type: integer + minimum: 1 + maximum: 2000000 + maximal-rate: + description: Maximal connection rate (cps) allowed + default: 40000 + type: integer + minimum: 1 + maximum: 2000000 + block: + type: object + properties: + duration: + default: 300 + type: integer + minimum: 1 + maximum: 21600 + other-ip: + type: object + properties: + enable: + type: boolean + default: false + red: + type: object + required: + - alarm-rate + - activate-rate + - maximal-rate + properties: + alarm-rate: + description: Connection rate (cps) to generate alarm + default: 10000 + type: integer + minimum: 0 + maximum: 2000000 + activate-rate: + description: Connection rate (cps) to start RED + default: 10000 + type: integer + minimum: 1 + maximum: 2000000 + maximal-rate: + description: Maximal connection rate (cps) allowed + default: 40000 + type: integer + minimum: 1 + maximum: 2000000 + block: + type: object + properties: + duration: + default: 300 + type: integer + minimum: 1 + maximum: 21600 + resource: + type: object + properties: + sessions: + type: object + properties: + enabled: + type: boolean + default: false + max-concurrent-limit: + default: 32768 + type: integer + minimum: 1 + maximum: 4194304 + 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 + dos-protection-rules: + type: object + required: + - name + - type + properties: + id: + type: string + description: The UUID of the DNS security profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + description: Rule name + type: string + maxLength: 31 + description: + description: Description + type: string + minLength: 0 + maxLength: 255 + disabled: + description: Rule disabled? + type: boolean + default: false + position: + description: Position relative to local device rules + type: string + enum: + - pre + - post + default: pre + schedule: + description: Schedule on which to enforce the rule + type: string + tag: + description: List of tags + type: array + items: + type: string + from: + description: List of source zones + type: array + items: + type: string + example: any + to: + description: List of destination zones + type: array + items: + type: string + example: any + source: + description: List of source addresses + type: array + items: + type: string + example: any + source_user: + description: List of source users and/or groups. Reserved words include `any`, `pre-login`, `known-user`, and `unknown`. + type: array + items: + type: string + example: any + destination: + description: List of destination addresses + type: array + items: + type: string + example: any + service: + description: List of services + type: array + items: + type: string + example: any + action: + description: The action to take on rule match + type: object + oneOf: + - title: deny + type: object + required: + - deny + properties: + deny: + type: object + default: {} + - title: allow + type: object + required: + - allow + properties: + allow: + type: object + default: {} + - title: protect + type: object + required: + - protect + properties: + protect: + type: object + default: {} + protection: + type: object + oneOf: + - title: aggregate + required: + - aggregate + type: object + properties: + aggregate: + type: object + required: + - profile + properties: + profile: + description: Aggregate DoS protection profile + type: string + - title: classified + required: + - classified + type: object + properties: + classified: + type: object + required: + - classification-criteria + - profile + properties: + classification-criteria: + type: object + required: + - address + properties: + address: + description: Classification method + type: string + enum: + - source-ip-only + - destination-ip-only + - src-dest-ip-both + profile: + description: Classified DoS protection profile + type: string + log_setting: + description: Log forwarding profile name + type: string + default: Cortex Data Lake + 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 + file-blocking-profiles: + type: object + required: + - id + - name + - action + - application + - direction + - file_type + properties: + id: + type: string + description: The UUID of the file blocking profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the file blocking profile + description: + type: string + rules: + type: array + description: A list of file blocking rules + items: + type: object + properties: + name: + type: string + description: The name of the file blocking rule + action: + enum: + - alert + - block + - continue + default: alert + description: The action to take when the rule match criteria is met + application: + type: array + description: The application transferring the files (App-ID naming) + minItems: 1 + default: + - any + items: + type: string + direction: + description: The direction of the file transfer + enum: + - download + - upload + - both + default: both + file_type: + type: array + description: The file type + minItems: 1 + default: + - any + items: + type: string + required: + - name + - action + - application + - direction + - file_type + 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 + http-header-profiles: + type: object + required: + - name + properties: + id: + type: string + description: The UUID of the HTTP header profile + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the HTTP header profile + description: + type: string + description: The description of the HTTP header profile + http_header_insertion: + type: array + description: A list of HTTP header profile rules + items: + type: object + properties: + name: + type: string + description: The name of the HTTP header insertion rule + type: + type: array + description: A list of HTTP header insertion definitions (_This should be an object rather than an array_) + items: + type: object + properties: + name: + type: string + description: The HTTP header insertion type (_This is a predefined list in the UI_) + domains: + type: array + description: A list of DNS domains + items: + type: string + example: + - '*.google.com' + - 'gmail.com' + headers: + type: array + items: + type: object + properties: + name: + type: string + description: An auto-generated name (_This should be removed_) + readOnly: true + header: + type: string + description: The HTTP header string + example: X-MyCustomHeader + value: + type: string + description: The value associated with the HTTP header + example: somevalue + log: + type: boolean + default: false + description: Log the use of this HTTP header insertion? + required: + - name + - header + - value + required: + - name + - domains + - headers + required: + - name + - type + 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 + profile-groups: + type: object + properties: + id: + type: string + description: The UUID of the profile group + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the profile group + dns_security: + type: array + items: + type: string + description: The name of a DNS security profile + file_blocking: + type: array + items: + type: string + description: The name of a file blocking profile + spyware: + type: array + items: + type: string + description: The name of an anti-spyware profile + url_filtering: + type: array + items: + type: string + description: The name of a URL filtering profile + virus_and_wildfire_analysis: + type: array + items: + type: string + description: The name of a anti-virus and Wildfire analysis profile + vulnerability: + type: array + items: + type: string + description: The name of a vulnerability protection profile + saas_security: + type: array + items: + type: string + description: The name of an HTTP header insertion profile + ai_security: + type: array + items: + type: string + description: The name of an AI Security profile + data_filtering: + type: array + items: + type: string + description: The name of DLP profile + 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 + # 1. THE UNIFIED, DISCRIMINATED SCHEMA + # This is the primary schema that all paths now reference. + security-rules: + type: object + description: |- + Represents a Security or Internet security rule. + A rule must be one of the policy types AND exist in one scope (folder, snippet, or device). + # Use allOf to combine multiple, independent constraints. + allOf: + # Constraint 1: The object must conform to one of the policy types. + - oneOf: + - $ref: '#/components/schemas/security-rule-type' + - $ref: '#/components/schemas/internet-rule-type' + discriminator: + propertyName: policy_type + mapping: + Security: '#/components/schemas/security-rule-type' + Internet: '#/components/schemas/internet-rule-type' + + # Constraint 2: The object must exist in exactly one scope. + - oneOf: + - type: object + title: folder + required: [folder] + properties: + folder: + type: string + pattern: ^[a-zA-Z\d\-_\. ]+$ + maxLength: 64 + description: The folder in which the resource is defined + - type: object + title: snippet + required: [snippet] + properties: + snippet: + type: string + pattern: ^[a-zA-Z\d\-_\. ]+$ + maxLength: 64 + description: The snippet in which the resource is defined + - type: object + title: device + required: [device] + properties: + device: + type: string + pattern: ^[a-zA-Z\d\-_\. ]+$ + maxLength: 64 + description: The device in which the resource is defined + + # 2. A BASE SCHEMA FOR COMMON PROPERTIES + # This reduces duplication and clearly defines what is shared between rule types. + base-rule-properties: + type: object + required: + - name + properties: + id: + type: string + description: The UUID of the security rule + format: uuid + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the security rule + policy_type: + type: string + default: 'Security' + disabled: + type: boolean + description: Is the security rule disabled? + default: false + description: + type: string + description: The description of the security rule + tag: + type: array + description: The tags associated with the security rule + uniqueItems: true + items: + type: string + from: + type: array + description: The source security zone(s) + uniqueItems: true + items: + type: string + default: any + to: + type: array + description: The destination security zone(s) + uniqueItems: true + items: + type: string + default: any + source: + type: array + description: The source addresses(es) + uniqueItems: true + items: + type: string + default: any + negate_source: + type: boolean + description: Negate the source address(es)? + default: false + source_user: + type: array + description: List of source users and/or groups. Reserved words include `any`, `pre-login`, `known-user`, and `unknown`. + uniqueItems: true + items: + type: string + default: any + destination: + type: array + description: The destination address(es) + uniqueItems: true + items: + type: string + default: any + service: + type: array + description: The service(s) being accessed + uniqueItems: true + items: + type: string + default: any + schedule: + type: string + description: Schedule in which this rule will be applied + action: + enum: + - allow + - deny + - drop + - reset-client + - reset-server + - reset-both + description: The action to be taken when the rule is matched + + # 3. THE "SECURITY" RULE VARIANT + # Contains the base properties plus fields unique to 'Security' rules. + security-rule-type: + type: object + required: + - from + - to + - source + - source_user + - destination + - service + - action + description: A standard security rule for controlling traffic between zones. + allOf: + - $ref: '#/components/schemas/base-rule-properties' + - type: object + required: + - category + - application + properties: + negate_destination: + type: boolean + description: Negate the destination addresses(es)? + default: false + source_hip: + type: array + description: The source Host Integrity Profile(s) + items: + type: string + default: any + destination_hip: + type: array + description: The destination Host Integrity Profile(s) + uniqueItems: true + items: + type: string + default: any + application: + type: array + description: The application(s) being accessed + uniqueItems: true + items: + type: string + default: any + category: + type: array + description: The URL categories being accessed + uniqueItems: true + items: + type: string + default: any + action: + enum: + - allow + - deny + - drop + - reset-client + - reset-server + - reset-both + description: The action to be taken when the rule is matched + profile_setting: + type: object + description: The security profile object + properties: + group: + type: array + description: The security profile group + items: + type: string + default: best-practice + log_setting: + type: string + description: The external log forwarding profile + log_start: + type: boolean + description: Log at session start? + log_end: + type: boolean + description: Log at session end? + tenant_restrictions: + type: array + items: + type: string + default: any + + # 4. THE "INTERNET" RULE VARIANT + # Contains the base properties plus fields unique to 'Internet' rules. + internet-rule-type: + type: object + description: A simplified security rule for controlling internet access. + allOf: + - $ref: '#/components/schemas/base-rule-properties' + - type: object + properties: + negate_user: + type: boolean + default: false + devices: + type: array + items: + type: string + default: ['any'] + action: + enum: [allow, deny] + default: allow + log_settings: + type: object + properties: + log_sessions: + type: boolean + default: true + security_settings: + type: object + properties: + anti_spyware: + type: string + enum: [yes, no] + default: yes + vulnerability: + type: string + enum: [yes, no] + default: yes + virus_and_wildfire_analysis: + type: string + enum: [yes, no] + default: yes + block_web_application: + type: array + items: + type: string + block_url_category: + type: array + items: + type: string + allow_web_application: + type: array + items: + type: object + properties: + name: + type: string + type: + type: string + file_control: + type: object + properties: + upload: + type: string + enum: + [ + allow-all-file-types, + best-practice, + block-all-file-types, + ] + download: + type: string + enum: + [ + allow-all-file-types, + best-practice, + block-all-file-types, + ] + saas_enterprise_control: + type: object + properties: + consumer_access: + type: object + properties: + enable: + type: string + enum: [yes, no] + enterprise_access: + type: object + properties: + enable: + type: string + enum: [yes, no] + tenant_restrictions: + type: array + items: + type: string + application_function: + type: array + items: + type: string + dlp: + type: string + saas_tenant_list: + type: array + items: + type: string + saas_user_list: + type: array + items: + type: string + tenant_control: + type: object + properties: + tenants: + type: array + items: + type: string + allowed_activities: + type: array + items: + type: string + blocked_activities: + type: array + items: + type: string + parent_application: + type: string + allow_url_category: + type: array + items: + type: object + properties: + name: + type: string + decryption: + type: string + enum: [enabled, disabled] + default: enabled + credential_enforcement: + type: string + enum: [enabled, disabled] + default: enabled + additional_action: + type: string + enum: [none, continue, redirect, isolate] + default: none + isolation_profiles: + type: string + default: none + file_control: + type: object + properties: + upload: + type: string + enum: + [ + allow-all-file-types, + best-practice, + block-all-file-types, + ] + download: + type: string + enum: + [ + allow-all-file-types, + best-practice, + block-all-file-types, + ] + dlp: + type: string + default_profile_settings: + type: object + properties: + file_control: + type: object + properties: + upload: + type: string + enum: + [ + allow-all-file-types, + best-practice, + block-all-file-types, + ] + download: + type: string + enum: + [ + allow-all-file-types, + best-practice, + block-all-file-types, + ] + dlp: + type: string + + # 5. THE LIST RESPONSE SCHEMA + # This now points to the unified 'security-rules' schema. + SecurityRuleListResponse: + type: object + properties: + data: + type: array + items: + $ref: '#/components/schemas/security-rules' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + url-access-profiles: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + alert: + type: array + items: + type: string + allow: + type: array + items: + type: string + block: + type: array + items: + type: string + continue: + type: array + items: + type: string + cloud_inline_cat: + type: boolean + credential_enforcement: + type: object + properties: + alert: + type: array + items: + type: string + allow: + type: array + items: + type: string + block: + type: array + items: + type: string + continue: + type: array + items: + type: string + log_severity: + type: string + default: medium + mode: + type: object + properties: + disabled: + type: object + domain_credentials: + type: object + ip_user: + type: object + group_mapping: + type: string + description: + type: string + maxLength: 255 + mlav_category_exception: + type: array + items: + type: string + local_inline_cat: + type: boolean + log_container_page_only: + type: boolean + default: true + log_http_hdr_referer: + type: boolean + default: false + log_http_hdr_user_agent: + type: boolean + default: false + log_http_hdr_xff: + type: boolean + default: false + safe_search_enforcement: + type: boolean + default: false + redirect: + type: array + items: + type: string + 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 + url-categories: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: + type: string + list: + type: array + items: + type: string + type: + enum: + - URL List + - Category Match + default: URL List + 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 + url-filtering-categories: + type: object + properties: + type: + type: string + value: + type: string + vulnerability-protection-profiles: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: '^[a-zA-Z0-9._-]+$' + rules: + type: array + items: + type: object + properties: + name: + type: string + action: + type: object + description: vulnerability profiles threat exception default action + oneOf: + - type: object + title: default + properties: + default: + type: object + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: drop + properties: + drop: + type: object + - type: object + title: reset_client + properties: + reset_client: + type: object + - type: object + title: reset_server + properties: + reset_server: + type: object + - type: object + title: reset_both + properties: + reset_both: + type: object + - type: object + title: block_ip + properties: + block_ip: + type: object + description: vulnerability protection block ip + properties: + track_by: + enum: + - source-and-destination + - source + duration: + type: integer + minimum: 1 + maximum: 3600 + packet_capture: + enum: + - disable + - single-packet + - extended-capture + severity: + type: array + items: + type: string + category: + enum: + - any + - app-id-change + - brute-force + - code-execution + - code-obfuscation + - command-execution + - dos + - exploit-kit + - info-leak + - inline-cloud-exploit + - insecure-credentials + - overflow + - phishing + - protocol-anomaly + - scan + - sql-injection + cve: + type: array + items: + type: string + host: + type: string + vendor_id: + type: array + items: + type: string + threat_name: + type: string + threat_exception: + type: array + items: + type: object + properties: + name: + type: string + action: + type: object + description: vulnerability threat exception default action + oneOf: + - type: object + title: default + properties: + default: + type: object + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: drop + properties: + drop: + type: object + - type: object + title: reset_client + properties: + reset_client: + type: object + - type: object + title: reset_server + properties: + reset_server: + type: object + - type: object + title: reset_both + properties: + reset_both: + type: object + - type: object + title: block_ip + properties: + block_ip: + type: object + description: vulnerability protection threat exception block ip + properties: + track_by: + enum: + - source-and-destination + - source + duration: + type: integer + minimum: 1 + maximum: 3600 + packet_capture: + enum: + - disable + - single-packet + - extended-capture + exempt_ip: + type: array + items: + type: object + description: Vulnerability protection IP address to be exempted from threat exception + properties: + name: + type: string + required: + - name + time_attribute: + type: object + description: vulnerability time attribute + properties: + interval: + type: integer + minimum: 1 + maximum: 3600 + threshold: + type: integer + minimum: 1 + maximum: 65535 + track_by: + enum: + - source + - destination + - source-and-destination + notes: + type: string + description: + type: string + 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 + vulnerability-protection-signatures: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + threat_id: + type: string + description: threat id range <41000-45000> and <6800001-6900000> + affected_host: + type: object + oneOf: + - type: object + title: client + properties: + client: + type: boolean + - type: object + title: server + properties: + server: + type: boolean + bugtraq: + type: array + items: + type: string + comment: + type: string + maxLength: 256 + cve: + type: array + items: + type: string + default_action: + type: object + oneOf: + - type: object + title: allow + properties: + allow: + type: object + - type: object + title: alert + properties: + alert: + type: object + - type: object + title: drop + properties: + drop: + type: object + - type: object + title: reset_client + properties: + reset_client: + type: object + - type: object + title: reset_server + properties: + reset_server: + type: object + - type: object + title: reset_both + properties: + reset_both: + type: object + - type: object + title: block_ip + properties: + block_ip: + description: vulnerability protection bugtraq block ip + type: object + properties: + track_by: + enum: + - source-and-destination + - source + duration: + type: integer + minimum: 1 + maximum: 3600 + direction: + enum: + - client2server + - server2client + - both + reference: + type: array + items: + type: string + severity: + enum: + - critical + - low + - high + - medium + - informational + signature: + description: vulnerability protection signature + type: object + oneOf: + - type: object + title: combination + description: vulnerability protection signature combination + properties: + combination: + type: object + description: vulnerability protection signature combination object + properties: + and_condition: + type: array + description: vulnerability protection signature combination object and condition + items: + type: object + description: vulnerability protection signature combination object and condition object + properties: + name: + type: string + or_condition: + type: array + description: vulnerability protection signature combination object and condition object or condition + items: + type: object + description: vulnerability protection signature combination object and condition object or condition object + properties: + name: + type: string + threat_id: + type: string + order_free: + type: boolean + default: false + time_attribute: + type: object + properties: + interval: + type: integer + minimum: 1 + maximum: 3600 + threshold: + type: integer + minimum: 1 + maximum: 255 + track_by: + enum: + - source-and-destination + - source + - destination + - type: object + title: standard + description: vulnerability protection signature standard + properties: + standard: + type: array + description: vulnerability protection signature standard array + items: + type: object + description: vulnerability protection signature standard object + properties: + name: + type: string + and_condition: + type: array + description: vulnerability protection signature standard object and condition + items: + type: object + description: vulnerability protection signature standard object and condition object + properties: + name: + type: string + or_condition: + type: array + description: vulnerability protection signature standard object and condition object or condition + items: + type: object + description: vulnerability protection signature standard object and condition object or condition object + properties: + name: + type: string + operator: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators + properties: + equal_to: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators equal_to + properties: + context: + type: string + negate: + type: boolean + default: false + qualifier: + type: array + description: vulnerability protection signature standard object and condition object or condition object operators equal_to qualifier array + items: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators equal_to qualifier array object + properties: + name: + type: string + value: + type: string + value: + type: integer + minimum: 0 + maximum: 4294967295 + greater_than: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators greater_than + properties: + context: + type: string + qualifier: + type: array + description: vulnerability protection signature standard object and condition object or condition object operators greater_than qualifier + items: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators greater_than qualifier object + properties: + name: + type: string + value: + type: string + value: + type: integer + minimum: 0 + maximum: 4294967295 + less_than: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators less_than + properties: + context: + type: string + qualifier: + type: array + description: vulnerability protection signature standard object and condition object or condition object operators less_than array + items: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators less_than array object + properties: + name: + type: string + value: + type: string + value: + type: integer + minimum: 0 + maximum: 4294967295 + pattern_match: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators pattern match + properties: + context: + type: string + negate: + type: boolean + default: false + pattern: + type: string + qualifier: + type: array + description: vulnerability protection signature standard object and condition object or condition object operators pattern match qualifier + items: + type: object + description: vulnerability protection signature standard object and condition object or condition object operators pattern match qualifier object + properties: + name: + type: string + value: + type: string + comment: + type: string + maxLength: 256 + order_free: + type: boolean + default: false + scope: + enum: + - protocol-data-unit + - session + required: + - name + threatname: + type: string + maxLength: 1024 + vendor: + type: array + items: + type: string + required: + - threat_id + - threatname + - affected_host + - severity + - direction + - signature + 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 + wildfire-anti-virus-profiles: + type: object + properties: + id: + type: string + description: UUID of the resource + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + pattern: '^[a-zA-Z0-9._-]+$' + description: + type: string + mlav_exception: + type: array + items: + type: object + properties: + name: + type: string + description: + type: string + filename: + type: string + packet_capture: + type: boolean + rules: + type: array + items: + type: object + properties: + name: + type: string + analysis: + enum: + - public-cloud + - private-cloud + application: + type: array + items: + type: string + direction: + enum: + - download + - upload + - both + file_type: + type: array + items: + type: string + threat_exception: + type: array + items: + type: object + properties: + name: + type: string + notes: + type: string + 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 + saas-tenant-restrictions: + type: object + properties: + description: + type: string + description: Description associated with the tenant restriction (example - Microsoft 365 SaaS Security Restrictions, Dropbox SaaS Security Restrictions, YouTube Safe Search Restrictions, Google Apps SaaS Security Restrictions) + domains: + type: array + description: List of domains associated with tenant restrictions + items: + type: string + description: Domain string associated with tenant restrictions (example - "microsoft.com", "office365") + headers: + type: array + description: List of headers associated with tenant restrictions + items: + type: object + properties: + header: + type: string + description: Header string associated with the tenant restriction (example - Restrict-Access-To-Tenants, Restrict-Access-Context, X-Dropbox-allowed-Team-Ids, YouTube-Restrict, X-GooGApps-Allowed-Domains) + name: + type: string + description: Header name associated with tenant restrictions (example - Permitted Tenant List, Tenant Directory ID) + value: + type: string + description: Header value associated with tenant restriction (example - tenant1,tenant2,strict etc.) + name: + type: string + description: Name of the tenant restriction (example - Microsoft 365, Dropbox, YouTube Safe Search, Google Apps) + saas_edl: + type: array + description: List of EDL associated with tenant restrictions + items: + type: string + description: EDL string associated with the tenant restriction + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + x-examples: {} + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + x-examples: {} + 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 +security: + - scmToken: [] +x-internal: false diff --git a/openapi-specs/scm/config/sase/setup/config-setup-recent.yaml b/openapi-specs/scm/config/sase/setup/config-setup-recent.yaml new file mode 100644 index 000000000..424e0e45c --- /dev/null +++ b/openapi-specs/scm/config/sase/setup/config-setup-recent.yaml @@ -0,0 +1,3077 @@ +openapi: 3.0.0 +info: + version: 2.0.0 + title: Configuration Setup + description: These APIs are used to define how Strata Cloud Manager configurations are implemented. + 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/setup/v1' + description: Current +tags: + - name: Devices + description: NGFW devices + - name: Folders + description: Configuration folders + - name: Labels + description: Configuration labels + - name: Snippets + description: Configuration snippets + - name: Variables + description: Configuration variables + - name: Snippet Categories + description: Configuration snippets and category information + - name: Trusted Tenants Overview + description: Overview of published and subscribed tenants + - name: Trust Information + description: Trust Information with shared snippets + - name: Trusts + description: Trusts between tenants + - name: Trust Validations + description: Validates trust information + - name: Subscribed Tenants + description: Subscribed Tenants information + - name: Snippet Snapshots + description: Snippet Snapshots + - name: Shared Snippets + description: Shared Snippets + - name: Snippet Audit Logs + description: Snippet Audit Logs +paths: + /labels: + get: + summary: List labels + description: | + Retrieve a list of labels. + tags: + - Labels + operationId: ListLabels + parameters: + - $ref: '#/components/parameters/limit-optional' + - $ref: '#/components/parameters/offset-optional' + - $ref: '#/components/parameters/name-optional' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/labels' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + description: 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' + default: + $ref: '#/components/responses/default_errors' + post: + summary: Create a label + description: | + Create a new label. + tags: + - Labels + operationId: CreateLabel + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/labels' + description: The `label` resource definition. + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/labels' + '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' + /labels/{id}: + get: + summary: Get a label + description: | + Retrieve an existing label. + tags: + - Labels + operationId: GetLabelByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/labels' + description: 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' + default: + $ref: '#/components/responses/default_errors' + put: + summary: Update a label + description: | + Update an existing label. + tags: + - Labels + operationId: UpdateLabelByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/labels' + description: The `label` resource definition. + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/labels' + '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: + summary: Delete a label + description: | + Delete an existing label. + tags: + - Labels + operationId: DeleteLabelByID + 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' + /variables: + get: + summary: List variables + description: | + Retrieve a list of variables. + tags: + - Variables + operationId: ListVariables + parameters: + - $ref: '#/components/parameters/limit-optional' + - $ref: '#/components/parameters/offset-optional' + - $ref: '#/components/parameters/name-optional' + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/variables' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + description: 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' + default: + $ref: '#/components/responses/default_errors' + post: + summary: Create a variable + description: | + Create a new variable. + tags: + - Variables + operationId: CreateVariable + parameters: + - $ref: '#/components/parameters/folder' + - $ref: '#/components/parameters/snippet' + - $ref: '#/components/parameters/device' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/variables' + description: The `variable` resource definition. + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/variables' + '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' + /variables/{id}: + get: + summary: Get a variables + description: | + Retrieve an existing variable. + tags: + - Variables + operationId: GetVariableByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/variables' + description: 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' + default: + $ref: '#/components/responses/default_errors' + put: + summary: Update a variable + description: | + Update an existing variable. + tags: + - Variables + operationId: UpdateVariableByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/variables' + description: The `variable` resource definition. + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/variables' + '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: + summary: Delete a variable + description: | + Delete an existing variable. + tags: + - Variables + operationId: DeleteVariableByID + 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' + /snippets: + get: + summary: List snippets + description: | + Retrieve a list of snippets. + tags: + - Snippets + operationId: ListSnippets + parameters: + - $ref: '#/components/parameters/limit-optional' + - $ref: '#/components/parameters/offset-optional' + - $ref: '#/components/parameters/name-optional' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/snippets' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + description: 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' + default: + $ref: '#/components/responses/default_errors' + post: + summary: Create a snippet + description: | + Create a new snippet. + tags: + - Snippets + operationId: CreateSnippet + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippets' + description: The `snippet` resource definition. + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/snippets' + '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' + /snippets/{id}: + get: + summary: Get a snippet + description: | + Retrieve an existing snippet. + tags: + - Snippets + parameters: + - $ref: '#/components/parameters/uuid' + operationId: GetSnippetByID + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippets' + description: 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' + default: + $ref: '#/components/responses/default_errors' + put: + summary: Update a snippet + description: | + Update an existing snippet. + tags: + - Snippets + operationId: UpdateSnippetByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippets' + description: The `snippet` resource definition. + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/snippets' + '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: + summary: Delete a snippet + description: | + Delete an existing snippet. + tags: + - Snippets + operationId: DeleteSnippetByID + 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' + /folders: + get: + summary: List folders + description: | + Retrieve a list of folders. + tags: + - Folders + operationId: ListFolders + parameters: + - $ref: '#/components/parameters/limit-optional' + - $ref: '#/components/parameters/offset-optional' + - $ref: '#/components/parameters/name-optional' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/folders' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + description: 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' + default: + $ref: '#/components/responses/default_errors' + post: + summary: Create a folder + description: | + Create a new folder. + tags: + - Folders + operationId: CreateFolder + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/folders' + description: The `folder` resource definition + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/folders' + '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' + /folders/{id}: + get: + summary: Get a folder + description: | + Retrieve an existing folder. + tags: + - Folders + operationId: GetFolderByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/folders' + description: 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' + default: + $ref: '#/components/responses/default_errors' + put: + summary: Update a folder + description: | + Update an existing folder. + tags: + - Folders + operationId: UpdateFolderByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/folders' + description: The `folder` resource definition. + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/folders' + '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: + summary: Delete a folder + description: | + Delete an existing folder. + tags: + - Folders + operationId: DeleteFolderByID + 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' + /devices: + get: + summary: List devices + description: | + Retrieve a list of devices. + tags: + - Devices + operationId: ListDevices + parameters: + - $ref: '#/components/parameters/pagination-optional' + - $ref: '#/components/parameters/limit-optional' + - $ref: '#/components/parameters/offset-optional' + - $ref: '#/components/parameters/name-optional' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/devices' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + description: 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' + default: + $ref: '#/components/responses/default_errors' + /devices/{id}: + get: + summary: Get a device + description: | + Retrieve an existing device. + tags: + - Devices + operationId: GetDeviceByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/devices' + description: 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' + default: + $ref: '#/components/responses/default_errors' + put: + summary: Update a device + description: | + Update an existing device. + tags: + - Devices + operationId: UpdateDeviceByID + parameters: + - $ref: '#/components/parameters/uuid' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/devices-put' + description: The `device` resource definition. + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/devices' + '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' + /snippet-categories: + get: + summary: List snippets categories + description: | + Retrieve a list of snippet categories. + tags: + - Snippet Categories + operationId: ListSnippetCategories + parameters: + - $ref: '#/components/parameters/limit-optional' + - $ref: '#/components/parameters/offset-optional' + - $ref: '#/components/parameters/name-optional' + responses: + '200': + content: + application/json: + schema: + type: object + properties: + data: + allOf: + - type: array + items: + $ref: '#/components/schemas/snippet_categories' + limit: + type: integer + default: 200 + offset: + type: integer + default: 0 + total: + type: integer + description: 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' + default: + $ref: '#/components/responses/default_errors' + /snippet-categories/{id}: + get: + summary: Get a snippet category + description: | + Retrieve an existing snippet category. + tags: + - Snippet Categories + parameters: + - $ref: '#/components/parameters/uuid' + operationId: GetSnippetCategoryByID + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_categories' + description: 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' + default: + $ref: '#/components/responses/default_errors' + delete: + summary: Delete a snippet category + description: | + Delete an existing snippet category. + tags: + - Snippet Categories + operationId: DeleteSnippetCategoryByID + 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' + /trusted-tenant-overview: + get: + summary: Trusted Tenants Overview + description: | + Overview of publishers and subscribers. + tags: + - Trusted Tenants Overview + operationId: GetTrustedTenantsOverview + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/trusted_tenant_overview' + description: 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' + default: + $ref: '#/components/responses/default_errors' + /trusted-tenants: + get: + summary: Trusted Tenants With Snippets + description: | + Retrieve a list of trusted tenants with snippets. + tags: + - Trust Information + operationId: ListTrustedTenantsWithSnippets + parameters: + - $ref: '#/components/parameters/trusted-tenant-type' + responses: + '200': + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/trust_info_with_shared_snippets' + description: 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' + default: + $ref: '#/components/responses/default_errors' + /trusts: + post: + summary: Create a trust + description: | + Create a new trust. + tags: + - Trusts + operationId: CreateTrust + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/trusts' + description: The `trusts` resource definition + responses: + '201': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/tenant_trust_info' + '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' + delete: + summary: Delete a Trust + description: | + Delete an existing Trust. + tags: + - Trusts + operationId: DeleteTrust + parameters: + - $ref: '#/components/parameters/trust-ids' + - $ref: '#/components/parameters/trusted-tenant-type' + 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' + /trust-validations: + post: + summary: Validates Trust + description: | + Validate trust. + tags: + - Trust Validations + operationId: ValidateTrust + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/trusts_validation_payload' + description: The `trust validation` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/tenant_trust_info' + description: OK + '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' + /subscribed-tenants/{id}: + get: + summary: Get Subscribed Tenants + description: | + Retrieve a list of subscribed tenants. + tags: + - Subscribed Tenants + operationId: ListSubscribedTenantsByID + parameters: + - $ref: '#/components/parameters/uuid' + responses: + '200': + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/snippet_share_info' + description: 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' + default: + $ref: '#/components/responses/default_errors' + /subscribed-tenants: + post: + summary: Create Subscribed Tenant + description: | + Create Subscribed Tenant. + tags: + - Subscribed Tenants + operationId: CreateSubscribedTenant + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/add_subscriber_request_payload' + description: The `Subscribed Tenant` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/tenant_trust_info' + description: OK + '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' + put: + summary: Update a subscribed tenant + description: | + Update an existing subscribed tenant. + tags: + - Subscribed Tenants + operationId: UpdateSubscribedTenantBySnippetID + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/subscriber_property_payload' + description: The `subscribed tenant` resource definition. + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/subscriber_property_payload' + description: 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' + delete: + summary: Delete a subscribed tenant + description: | + Delete an existing subscribed tenant. + tags: + - Subscribed Tenants + operationId: DeleteSubscribedTenantBySnippedID + parameters: + - $ref: '#/components/parameters/snippet-id' + - $ref: '#/components/parameters/recipient-tsgs' + 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' + /snippet-snapshots: + post: + summary: Save Snippet Snapshots + description: | + Save Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: SaveSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/save_snippet_snapshot_payload' + description: The `Save Snippet Snapshots` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/save_snippet_snapshot_config_response' + description: OK + '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' + /snippet-snapshots:publish: + post: + summary: Publish Snippet Snapshots + description: | + Publish Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: PublishSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_publish_request' + description: The `Snippet Snapshots To Publish` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_publish_response' + description: OK + '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' + /snippet-snapshots:compare: + post: + summary: Compare Snippet Snapshots + description: | + Compare Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: CompareSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/compare_snippet_snapshot_config_payload' + description: The `Snippet Snapshots To Compare` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_compare_response' + description: OK + '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' + /snippet-snapshots:diff: + post: + summary: Diff Snippet Snapshots + description: | + Diff Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: DiffSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/compare_tlo_payload' + description: The `Snippet Snapshots To Differentiate` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_diff_response' + description: OK + '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' + /snippet-snapshots:load: + post: + summary: Load Snippet Snapshots + description: | + Load Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: LoadSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_load_snippet_payload' + description: The `Snippet Snapshots To Load` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_load_snippet_response' + description: OK + '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' + /snippet-snapshots:updates: + post: + summary: Update Snippet Snapshots + description: | + Update Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: UpdateSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_subscriber_compare_payload' + description: The `Snippet Snapshots To Update` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_snapshot_subscriber_compare_response' + description: OK + '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' + /snippet-snapshots:convert: + post: + summary: Convert Snippet Snapshots + description: | + Convert Snippet Snapshots. + tags: + - Snippet Snapshots + operationId: ConvertSnippetSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/common_snippet_snapshot_payload' + description: The `Snippet Snapshots To Convert` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/dynamic_entry' + description: OK + '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' + /shared-snippets: + get: + summary: Get Shared Snippets + description: | + Retrieve a list of shared snippets. + tags: + - Shared Snippets + operationId: ListSharedSnippets + responses: + '200': + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/snippet_share_info' + description: 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' + default: + $ref: '#/components/responses/default_errors' + put: + summary: Update Shared Snippets + description: | + Update Shared Snippets. + tags: + - Shared Snippets + operationId: ConvertSharedSnippets + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_share_upload_payload' + description: The `Shared Snippets To Update` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_share_info' + description: OK + '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' + /shared-snippets:load: + post: + summary: Load Shared Snippets + description: | + Convert Snippet Snippets. + tags: + - Shared Snippets + operationId: LoadSharedSnippets + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_share_load_payload' + description: The `Snippet Snapshots To Convert` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_share_load_payload' + description: OK + '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' + /snippet-audit-logs/{id}: + get: + summary: Get a snippet audit logs + description: | + Retrieve an existing snippet audit logs by UUID. + tags: + - Snippet Audit Logs + parameters: + - $ref: '#/components/parameters/uuid' + - $ref: '#/components/parameters/trusted-tenant-type' + operationId: GetSnippetAuditLogsByID + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_audit_history' + description: 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' + default: + $ref: '#/components/responses/default_errors' + /snippet-audit-logs: + post: + summary: Create snippet audit logs configuration + description: | + Create snippet audit logs configuration. + tags: + - Snippet Audit Logs + operationId: CreateSnippetAuditLogs + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_audit_payload' + description: The `Snippet Snapshots To Convert` resource definition + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/snippet_audit_history' + description: OK + '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' +components: + securitySchemes: + scmOAuth: + type: oauth2 + description: | + Strata Cloud Manager APIs authenticate client requests using the + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + 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 + OAuth 2.0 Client Credentials flow. Please use the `client_id`, + `client_secret` values associated with an IAM service account along + with a scope value of `tsg_id:XXXXXXXXXX`, where `XXXXXXXXXX` is the + Tenant Service Group (TSG) ID. The resulting JWT access token should + be attached to all API calls as a `Bearer` token in the `Authorization` + header (ex. `Authorization: Bearer tokenstring`). + scheme: bearer + bearerFormat: JWT + parameters: + uuid: + name: id + in: path + required: true + schema: + type: string + description: The UUID of the resource + pagination-optional: + name: pagination + in: query + required: false + schema: + type: boolean + description: The parameter to mention if the response should be paginated. By default, its set to false + name-optional: + name: name + in: query + required: false + schema: + type: string + description: The name of the resource + limit-optional: + name: limit + in: query + required: false + schema: + type: integer + description: The maximum number of resources to return + offset-optional: + name: offset + in: query + required: false + schema: + type: integer + description: The offset into the list of resources returned + folder: + name: folder + in: query + required: false + schema: + type: string + description: | + The folder in which the resource is defined + snippet: + name: snippet + in: query + required: false + schema: + type: string + description: | + The snippet in which the resource is defined + device: + name: device + in: query + required: false + schema: + type: string + description: | + The device in which the resource is defined + trusted-tenant-type: + name: type + in: query + required: true + schema: + type: string + enum: + - subscriber + - publisher + description: | + Specifies the type of the tenant that is trusted, either 'subscriber' or 'publisher'. + trust-ids: + name: trustids + in: query + required: true + schema: + type: string + description: | + Comma-separated list of trust IDs + snippet-id: + name: snippet-id + in: query + required: true + schema: + type: string + description: | + The ID of the snippet + recipient-tsgs: + name: tsgs + in: query + required: true + schema: + type: string + description: | + Comma-separated list of recipient TSG IDs + responses: + http_ok: + description: OK + http_created: + description: Created + 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' + 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: + 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' + 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' + 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' + 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' + 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' + examples: + json_401_panui_auth_not_authenticated: + summary: Not Authenticated + value: + _errors: + - code: "E016" + message: Not Authenticated + details: {} + _request_id: "abcd-1234" + json_401_panui_auth_invalid_credential: + summary: Invalid Credential + value: + _errors: + - code: "E016" + message: Invalid Credential + details: {} + _request_id: "abcd-1234" + json_401_panui_auth_key_too_long: + summary: Key Too Long + value: + _errors: + - code: "E016" + message: Key Too Long + details: {} + _request_id: "abcd-1234" + json_401_panui_auth_key_expired: + summary: Key Expired + value: + _errors: + - code: "E016" + message: Key Expired + details: {} + _request_id: "abcd-1234" + 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: "abcd-1234" + json_403_panui_auth_unauthorized: + summary: Unauthorized + value: + _errors: + - code: "E007" + message: Unauthorized + details: {} + _request_id: "abcd-1234" + json_501_panui_restapi_version_not_supported: + summary: Version Not Supported + value: + _errors: + - code: "E012" + message: Version Not Supported + details: {} + _request_id: "abcd-1234" + json_501_panui_restapi_method_not_supported: + summary: Method Not Supported + value: + _errors: + - code: "E012" + message: Method Not Supported + details: {} + _request_id: "abcd-1234" + 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: "abcd-1234" + 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: "abcd-1234" + json_400_panui_restapi_missing_query_parameter: + summary: Missing Query Parameter + value: + _errors: + - code: "E003" + message: 'Missing Query Parameter: name' + details: {} + _request_id: "abcd-1234" + json_400_panui_restapi_invalid_query_parameter: + summary: Invalid Query Parameter + value: + _errors: + - code: "E003" + message: 'Invalid Query Parameter: location=invalid' + details: {} + _request_id: "abcd-1234" + json_400_panui_restapi_missing_body: + summary: Missing Body + value: + _errors: + - code: "E003" + message: Missing Body + details: {} + _request_id: "abcd-1234" + json_405_panui_restapi_action_not_supported: + summary: Action Not Supported + value: + _errors: + - code: "E012" + message: 'Action Not Supported: move' + details: {} + _request_id: "abcd-1234" + json_400_panui_mgmt_bad_xpath: + summary: Bad XPath + value: + _errors: + - code: "E013" + message: Bad XPath + details: {} + _request_id: "abcd-1234" + json_404_panui_mgmt_object_not_present: + summary: Object Not Present + value: + _errors: + - code: "E005" + message: Object Not Present + details: {} + _request_id: "abcd-1234" + json_409_panui_mgmt_object_not_unique: + summary: Object Not Unique + value: + _errors: + - code: "E016" + message: Object Not Unique + details: {} + _request_id: "abcd-1234" + json_409_panui_mgmt_name_not_unique: + summary: Name Not Unique + value: + _errors: + - code: "E006" + message: Name Not Unique + details: {} + _request_id: "abcd-1234" + json_409_panui_mgmt_reference_not_zero: + summary: Reference Not Zero + value: + _errors: + - code: "E009" + message: Reference Not Zero + details: {} + _request_id: "abcd-1234" + json_400_panui_mgmt_invalid_object: + summary: Invalid Object + value: + _errors: + - code: "E003" + message: Invalid Object + details: {} + _request_id: "abcd-1234" + json_400_panui_mgmt_invalid_command: + summary: Invalid Command + value: + _errors: + - code: "E003" + message: Invalid Command + details: {} + _request_id: "abcd-1234" + json_400_panui_mgmt_malformed_command: + summary: Malformed Command + value: + _errors: + - code: "E003" + message: Malformed Command + details: {} + _request_id: "abcd-1234" + json_504_panui_mgmt_session_timeout: + summary: Session Timeout + value: + _errors: + - code: '4' + message: Session Timeout + details: {} + _request_id: "abcd-1234" + schemas: + generic_error: + type: object + properties: + _errors: + $ref: '#/components/schemas/error_detail_cause_infos' + _request_id: + type: string + error_detail_cause_infos: + type: array + items: + $ref: '#/components/schemas/error_detail_cause_info' + error_detail_cause_info: + title: Cause Info + type: object + properties: + 'code': + type: string + message: + type: string + details: + oneOf: + - type: string + - type: object + help: + type: string + variables: + type: object + required: + - 'name' + - 'id' + - 'type' + - 'value' + properties: + id: + type: string + description: UUID of the variable + readOnly: true + example: 123e4567-e89b-12d3-a456-426655440000 + name: + type: string + description: The name of the variable + maxLength: 63 + type: + type: string + enum: + - percent + - count + - ip-netmask + - zone + - ip-range + - ip-wildcard + - device-priority + - device-id + - egress-max + - as-number + - fqdn + - port + - link-tag + - group-id + - rate + - router-id + - qos-profile + - timer + description: The variable type + value: + oneOf: + - type: string + - type: object + additionalProperties: + oneOf: + - type: string + - type: integer + description: The value of the variable + default: "None" + overridden: + type: boolean + readOnly: true + description: Is the variable overridden? + description: + type: string + description: The description of the variable + 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 + folders: + type: object + required: + - "name" + - "id" + - "parent" + properties: + "name": + type: string + description: The name of the folder + "id": + type: string + readOnly: true + description: The UUID of the folder + "parent": + type: string + description: The parent folder + "description": + type: string + description: The description of the folder + "labels": + type: array + items: + type: string + description: Labels assigned to the folder + "snippets": + type: array + items: + type: string + description: Snippets associated with the folder + snippets: + type: object + required: + - "name" + - "id" + properties: + "name": + type: string + description: The name of the snippet + "description": + type: string + description: The description of the snippet + "id": + type: string + description: The UUID of the snippet + readOnly: true + "type": + type: string + readOnly: true + enum: + - predefined + - custom + description: The snippet type + "labels": + type: array + items: + type: string + description: Labels applied to the snippet + labels: + type: object + required: + - "name" + - "id" + properties: + "name": + type: string + description: The name of the label + "id": + type: string + readOnly: true + description: The UUID of the label + "description": + type: string + description: The description of the label + devices-put: + type: object + properties: + "display_name": + type: string + description: The display name of the device + "folder": + type: string + description: The folder containing the device + "description": + type: string + description: The description of the device + "labels": + type: array + items: + type: string + description: Labels assigned to the device + "snippets": + type: array + items: + type: string + description: Snippets associated with the device + devices: + type: object + required: + - name + - id + - folder + properties: + "id": + type: string + readOnly: true + description: The UUID of the device + "name": + type: string + description: The name of the device + "display_name": + type: string + description: The display name of the device + "folder": + type: string + description: The folder containing the device + "description": + type: string + description: The description of the device + "hostname": + type: string + readOnly: true + description: The hostname of the device + "ip_address": + type: string + readOnly: true + description: The IPv4 address of the device + "ipV6_address": + type: string + readOnly: true + description: The IPv6 address of the device + "mac_address": + type: string + readOnly: true + description: The MAC address of the device + "family": + type: string + readOnly: true + description: The product family of the device + "model": + type: string + readOnly: true + description: The model of the device + "labels": + type: array + items: + type: string + description: Labels assigned to the device + "snippets": + type: array + items: + type: string + description: Snippets associated with the device + "app_version": + type: string + readOnly: true + "threat_version": + type: string + readOnly: true + "anti_virus_version": + type: string + readOnly: true + "wf_ver": + type: string + readOnly: true + "iot_version": + type: string + readOnly: true + "url_db_type": + type: string + readOnly: true + "url_db_ver": + type: string + readOnly: true + "software_version": + type: string + readOnly: true + "vm_state": + type: string + readOnly: true + "gp_client_verion": + type: string + readOnly: true + "gp_data_version": + type: string + readOnly: true + "log_db_version": + type: string + readOnly: true + "uptime": + type: string + readOnly: true + "dev_cert_detail": + type: string + readOnly: true + "dev_cert_expiry_date": + type: string + readOnly: true + "ha_state": + type: string + readOnly: true + "ha_peer_serial": + type: string + readOnly: true + "ha_peer_state": + type: string + readOnly: true + "is_connected": + type: boolean + readOnly: true + "connected_since": + type: string + format: date-time + readOnly: true + "app_release_date": + type: string + readOnly: true + "threat_release_date": + type: string + readOnly: true + "av_release_date": + type: string + readOnly: true + "wf_release_date": + type: string + readOnly: true + "iot_release_date": + type: string + readOnly: true + "license_match": + type: boolean + readOnly: true + "available_licensess": + type: array + items: + type: object + properties: + "issued": + type: string + format: date + readOnly: true + "expires": + type: string + format: date + readOnly: true + "feature": + type: string + readOnly: true + "authcode": + type: string + readOnly: true + readOnly: true + "installed_licenses": + type: array + items: + type: object + properties: + "issued": + type: string + format: date + readOnly: true + "expired": + type: string + readOnly: true + "expires": + type: string + readOnly: true + "feature": + type: string + readOnly: true + "authcode": + type: string + readOnly: true + readOnly: true + snippet_categories: + type: object + properties: + name: + type: string + readOnly: true + id: + type: string + readOnly: true + enable_prefix: + type: boolean + readOnly: true + prefix: + type: string + readOnly: true + display_name: + type: string + readOnly: true + type: + type: string + readOnly: true + description: + type: string + readOnly: true + status: + type: string + readOnly: true + error: + type: string + readOnly: true + donor_tsg: + type: string + readOnly: true + donor_tenant_id: + type: string + readOnly: true + donor_tenant_name: + type: string + readOnly: true + recipient_tsg: + type: string + readOnly: true + recipient_tenant_id: + type: string + readOnly: true + recipient_tenant_name: + type: string + readOnly: true + snippet_uuid: + type: string + readOnly: true + donor_snippet_version: + type: integer + readOnly: true + donor_snippet_file_id: + type: integer + readOnly: true + donor_created: + type: integer + readOnly: true + msg_uuid: + type: string + readOnly: true + created_in: + type: string + format: date-time + readOnly: true + last_update: + type: string + format: date-time + readOnly: true + folders: + type: array + items: + $ref: '#/components/schemas/used_folders' + shared_in: + type: string + readOnly: true + labels: + type: array + items: + type: string + readOnly: true + recipient_paused_update: + type: boolean + readOnly: true + recipient_validate_before_update: + type: boolean + readOnly: true + version: + type: integer + readOnly: true + required: + - name + - id + used_folders: + type: object + properties: + id: + type: string + name: + type: string + required: + - name + trusted_tenant_overview: + type: object + properties: + publisher: + type: object + properties: + total: + type: integer + readOnly: true + pending: + type: integer + readOnly: true + subscriber: + type: object + properties: + total: + type: integer + readOnly: true + pending: + type: integer + readOnly: true + trust_info_with_shared_snippets: + type: object + properties: + id: + type: integer + readOnly: true + donor_tsg: + type: string + readOnly: true + recipient_tsg: + type: string + readOnly: true + recipient_paused_update: + type: integer + readOnly: true + recipient_validate_before_update: + type: integer + readOnly: true + snippet_uuid: + type: string + readOnly: true + snippet_name: + type: string + readOnly: true + donor_snippet_version: + type: integer + readOnly: true + donor_snippet_file_id: + type: integer + readOnly: true + donor_created: + type: integer + readOnly: true + recipient_snippet_version: + type: integer + readOnly: true + recipient_snippet_file_id: + type: integer + readOnly: true + msg_uuid: + type: string + readOnly: true + status: + type: string + readOnly: true + error: + type: string + readOnly: true + created: + type: string + format: date-time + readOnly: true + last_updated: + type: string + format: date-time + readOnly: true + updated_by: + type: string + readOnly: true + shared_snippets: + type: array + items: + $ref: '#/components/schemas/snippet_share_info' + snippet_share_info: + type: object + properties: + id: + type: integer + format: uint + readOnly: true + donor_tsg: + type: string + readOnly: true + recipient_tsg: + type: string + readOnly: true + recipient_paused_update: + type: boolean + readOnly: true + recipient_validate_before_update: + type: boolean + readOnly: true + snippet_uuid: + type: string + readOnly: true + snippet_name: + type: string + readOnly: true + donor_snippet_version: + type: integer + readOnly: true + donor_snippet_file_id: + type: integer + readOnly: true + donor_created: + type: integer + readOnly: true + recipient_snippet_version: + type: integer + readOnly: true + recipient_snippet_file_id: + type: integer + readOnly: true + msg_uuid: + type: string + readOnly: true + status: + type: string + readOnly: true + error: + type: string + readOnly: true + created: + type: string + format: date-time + readOnly: true + last_updated: + type: string + format: date-time + readOnly: true + donor_tenant_id: + type: string + readOnly: true + donor_tenant_name: + type: string + readOnly: true + recipient_tenant_id: + type: string + readOnly: true + recipient_tenant_name: + type: string + readOnly: true + properties: + type: array + items: + $ref: '#/components/schemas/snippet_share_property' + snippet_share_property: + type: object + properties: + id: + type: integer + readOnly: true + donor_tsg: + type: string + readOnly: true + donor_tenant: + type: string + readOnly: true + recipient_tsg: + type: string + readOnly: true + recipient_tenant: + type: string + readOnly: true + snippet_uuid: + type: string + readOnly: true + snippet_name: + type: string + readOnly: true + property_name: + type: string + readOnly: true + property_value: + type: string + readOnly: true + msg_uuid: + type: string + readOnly: true + status: + type: string + readOnly: true + error: + type: string + readOnly: true + created: + type: string + format: date-time + readOnly: true + created_by: + type: string + readOnly: true + updated: + type: string + format: date-time + readOnly: true + updated_by: + type: string + readOnly: true + trusts: + type: object + properties: + tsg: + type: string + donor_tenant_name: + type: string + recipient_tenant_name: + type: string + trust_id: + type: integer + nullable: true + psk: + type: string + tenant_trust_info: + type: object + properties: + trust_id: + type: integer + donor_trust_info_id: + type: integer + readOnly: true + donor_tsg: + type: string + readOnly: true + donor_tenant_id: + type: string + donor_tenant_name: + type: string + donor_cluster: + type: string + readOnly: true + donor_region: + type: string + readOnly: true + donor_project: + type: string + readOnly: true + recipient_trust_info_id: + type: integer + readOnly: true + recipient_tsg: + type: string + readOnly: true + recipient_tenant_id: + type: string + readOnly: true + recipient_tenant_name: + type: string + recipient_cluster: + type: string + readOnly: true + recipient_region: + type: string + readOnly: true + recipient_project: + type: string + readOnly: true + psk: + type: string + donor_msg_uuid: + type: string + readOnly: true + recipient_msg_uuid: + type: string + readOnly: true + current_status: + type: string + readOnly: true + error_details: + type: string + readOnly: true + created: + type: string + format: date-time + readOnly: true + created_by: + type: string + readOnly: true + last_updated: + type: string + format: date-time + readOnly: true + updated_by: + type: string + readOnly: true + trusts_validation_payload: + type: object + required: + - tsg + - donor_tenant_name + - recipient_tenant_name + - trust_id + - psk + properties: + tsg: + type: string + donor_tenant_name: + type: string + recipient_tenant_name: + type: string + trust_id: + type: integer + nullable: true + psk: + type: string + add_subscriber_request_payload: + type: array + items: + type: object + required: + - tsg_id + - snippet_id + - snippet_name + properties: + tsg_id: + type: string + snippet_id: + type: string + snippet_name: + type: string + subscriber_property_payload: + type: object + required: + - tsg_id + - snippet_id + - snippet_name + properties: + tsg_id: + type: string + snippet_id: + type: string + snippet_name: + type: string + property: + type: array + items: + $ref: '#/components/schemas/property_item' + property_item: + type: object + properties: + id: + type: integer + name: + type: string + value: + type: string + deleted_subscriber: + type: object + properties: + info: + $ref: '#/components/schemas/snippet_share_info' + status: + type: string + details: + type: string + snippet_snapshot_publish_request: + type: object + properties: + id: + type: string + name: + type: string + tsgs: + type: array + items: + type: string + validation: + type: boolean + version: + type: integer + snippet_snapshot_publish_response: + type: object + readOnly: true + properties: + id: + type: string + readOnly: true + tsgs: + type: array + readOnly: true + items: + type: string + version: + type: integer + readOnly: true + nullable: true + file_id: + type: integer + readOnly: true + nullable: true + job_id: + type: integer + readOnly: true + save_snippet_snapshot_payload: + type: object + properties: + id: + type: string + description: + type: string + required: + - id + - description + save_snippet_snapshot_config_response: + type: object + readOnly: true + properties: + status: + type: string + readOnly: true + result: + type: object + readOnly: true + properties: + version: + type: string + compare_snippet_snapshot_config_payload: + type: object + properties: + id: + type: string + version: + type: integer + comparing_version: + type: integer + required: + - id + - version + - comparing_version + compare_tlo_payload: + type: object + properties: + snippet_id: + type: string + object_id: + type: string + version: + type: integer + comparing_version: + type: integer + required: + - snippet_id + - object_id + - version + - comparing_version - + common_snippet_snapshot_payload: + type: object + properties: + id: + type: string + keep_local: + type: boolean + snippet_snapshot_compare_entry: + type: object + readOnly: true + properties: + id: + type: string + readOnly: true + admin: + type: string + readOnly: true + format: email + loc: + type: string + loctype: + type: string + objectname: + type: string + objecttype: + type: string + operations: + type: string + enum: [edit, create] + timestamp: + type: string + format: date-time + snippet_snapshot_compare_response: + type: array + readOnly: true + items: + $ref: '#/components/schemas/snippet_snapshot_compare_entry' + snippet_snapshot_diff_response: + type: object + properties: + after: + type: object + readOnly: true + properties: + '@ts': + type: string + readOnly: true + format: date-time + entry: + type: array + readOnly: true + items: + $ref: '#/components/schemas/dynamic_entry' + before: + type: object + properties: + '@ts': + type: string + format: date-time + entry: + type: array + items: + $ref: '#/components/schemas/dynamic_entry' + snippet_snapshot_load_snippet_payload: + type: object + properties: + id: + type: string + version: + type: string + required: + - id + - version + snippet_snapshot_load_snippet_response: + type: object + readOnly: true + properties: + status: + type: string + snippet_snapshot_subscriber_compare_payload: + type: object + properties: + id: + type: string + tenant_id: + type: string + description: Publisher Tenant ID + required: + - id + - tenant_id + snippet_snapshot_subscriber_compare_response: + type: object + properties: + publisher: + type: object + readOnly: true + properties: + entry: + type: array + items: + $ref: '#/components/schemas/dynamic_entry' + subscriber: + type: object + readOnly: true + properties: + entry: + type: array + items: + $ref: '#/components/schemas/dynamic_entry' + dynamic_entry: + type: object + readOnly: true + additionalProperties: true + snippet_share_upload_payload: + type: object + required: + - id + properties: + id: + type: string + pause_update: + type: boolean + validate_before_update: + type: boolean + snippet_share_load_payload: + type: object + required: + - id + properties: + id: + type: string + validation: + type: boolean + nullable: true + snippet_audit_history: + type: object + properties: + id: + type: integer + format: uint + readOnly: true + donor_tsg: + type: string + readOnly: true + donor_tenant_name: + type: string + readOnly: true + recipient_tsg: + type: string + readOnly: true + recipient_tenant_name: + type: string + readOnly: true + donor_created: + type: integer + readOnly: true + snippet_uuid: + type: string + readOnly: true + user: + type: string + readOnly: true + version: + type: string + readOnly: true + action: + type: string + readOnly: true + display: + type: integer + readOnly: true + details: + type: string + readOnly: true + created: + type: string + format: date-time + readOnly: true + deleted: + type: integer + readOnly: true + snippet_audit_payload: + type: object + properties: + donor_tsg: + type: string + donor_tenant_name: + type: string + recipient_tsg: + type: string + recipient_tenant_name: + type: string + donor_created: + type: integer + snippet_uuid: + type: string + version: + type: string + action: + type: string + details: + type: string +security: + - scmToken: [] +x-internal: false \ No newline at end of file diff --git a/products/scm/api/config/sase/network configurations/network-api.md b/products/scm/api/config/sase/network configurations/network-api.md new file mode 100644 index 000000000..d45d1a4ac --- /dev/null +++ b/products/scm/api/config/sase/network configurations/network-api.md @@ -0,0 +1,19 @@ +--- +id: network-api +title: Network Services APIs +sidebar_label: Network Services APIs +keywords: + - Strata Cloud Manager + - Configuration + - Network + - Reference + - API +--- + +Welcome to the Network configuration APIs. Use these APIs to configure networks and network +interfaces for your deployments. + +These APIs use the [common authentication mechanism](/scm/docs/getstarted) for service access and authorization. + +You must use the [Configuration Operations API](/scm/api/config/ngfw/operations/operations-api-ngfw) to push +configurations made using these APIs to your deployments. diff --git a/products/scm/sidebars.ts b/products/scm/sidebars.ts index 59dfbf4ac..df89f67d7 100644 --- a/products/scm/sidebars.ts +++ b/products/scm/sidebars.ts @@ -123,6 +123,17 @@ module.exports = { require("./api/config/sase/setup/sidebar"), ], }, + { + type: "category", + label: "Network Configuration", + items: [ + { + type: "doc", + id: "scm/api/config/sase/network configurations/network-api", + }, + require("./api/config/sase/network configurations/sidebar"), + ], + }, { type: "category", label: "Network Deployment", diff --git a/src/pages/strata-cloud-manager/index.js b/src/pages/strata-cloud-manager/index.js index e136513d5..c162da06e 100644 --- a/src/pages/strata-cloud-manager/index.js +++ b/src/pages/strata-cloud-manager/index.js @@ -101,8 +101,8 @@ export default function SCMLandingPage() { icon: "api-doc", }, { - to: "scm/api/config/sase/mobileagent/mobileagent-api", - label: "GlobalProtect", + to: "scm/api/config/sase/network configurations/network-api", + label: "Network Configurations", icon: "api-doc", }, {