naftiko: 1.0.0-alpha2 info: label: Palo Alto Networks Cloud NGFW for AWS REST API — RuleStacks description: 'Palo Alto Networks Cloud NGFW for AWS REST API — RuleStacks. 6 operations. Lead operation: Palo Alto Networks List Rule Stacks. Self-contained Naftiko capability covering one Palo Alto Networks business surface.' tags: - Palo Alto Networks - RuleStacks created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: PALO_ALTO_NETWORKS_API_KEY: PALO_ALTO_NETWORKS_API_KEY capability: consumes: - type: http namespace: palo-alto-cloud-ngfw-rulestacks baseUri: https://api.{region}.aws.cloudngfw.paloaltonetworks.com/v1 description: Palo Alto Networks Cloud NGFW for AWS REST API — RuleStacks business capability. Self-contained, no shared references. resources: - name: config-rulestacks path: /config/rulestacks operations: - name: listrulestacks method: GET description: Palo Alto Networks List Rule Stacks outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: maxresults in: query type: integer description: Maximum number of rule stacks to return per page. - name: nexttoken in: query type: string description: Pagination token from a previous response. - name: scope in: query type: string description: Scope filter for rule stacks. - name: createrulestack method: POST description: Palo Alto Networks Create Rule Stack outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: config-rulestacks-rulestack path: /config/rulestacks/{rulestack} operations: - name: getrulestack method: GET description: Palo Alto Networks Get Rule Stack outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: candidate in: query type: boolean description: Return candidate (uncommitted) configuration if true. - name: updaterulestack method: PUT description: Palo Alto Networks Update Rule Stack outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleterulestack method: DELETE description: Palo Alto Networks Delete Rule Stack outputRawFormat: json outputParameters: - name: result type: object value: $. - name: config-rulestacks-rulestack-commit path: /config/rulestacks/{rulestack}/commit operations: - name: commitrulestack method: POST description: Palo Alto Networks Commit Rule Stack outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: Authorization value: '{{env.PALO_ALTO_NETWORKS_API_KEY}}' placement: header exposes: - type: rest namespace: palo-alto-cloud-ngfw-rulestacks-rest port: 8080 description: REST adapter for Palo Alto Networks Cloud NGFW for AWS REST API — RuleStacks. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/config/rulestacks name: config-rulestacks description: REST surface for config-rulestacks. operations: - method: GET name: listrulestacks description: Palo Alto Networks List Rule Stacks call: palo-alto-cloud-ngfw-rulestacks.listrulestacks with: maxresults: rest.maxresults nexttoken: rest.nexttoken scope: rest.scope outputParameters: - type: object mapping: $. - method: POST name: createrulestack description: Palo Alto Networks Create Rule Stack call: palo-alto-cloud-ngfw-rulestacks.createrulestack with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/config/rulestacks/{rulestack} name: config-rulestacks-rulestack description: REST surface for config-rulestacks-rulestack. operations: - method: GET name: getrulestack description: Palo Alto Networks Get Rule Stack call: palo-alto-cloud-ngfw-rulestacks.getrulestack with: candidate: rest.candidate outputParameters: - type: object mapping: $. - method: PUT name: updaterulestack description: Palo Alto Networks Update Rule Stack call: palo-alto-cloud-ngfw-rulestacks.updaterulestack with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleterulestack description: Palo Alto Networks Delete Rule Stack call: palo-alto-cloud-ngfw-rulestacks.deleterulestack outputParameters: - type: object mapping: $. - path: /v1/config/rulestacks/{rulestack}/commit name: config-rulestacks-rulestack-commit description: REST surface for config-rulestacks-rulestack-commit. operations: - method: POST name: commitrulestack description: Palo Alto Networks Commit Rule Stack call: palo-alto-cloud-ngfw-rulestacks.commitrulestack outputParameters: - type: object mapping: $. - type: mcp namespace: palo-alto-cloud-ngfw-rulestacks-mcp port: 9090 transport: http description: MCP adapter for Palo Alto Networks Cloud NGFW for AWS REST API — RuleStacks. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: palo-alto-networks-list-rule description: Palo Alto Networks List Rule Stacks hints: readOnly: true destructive: false idempotent: true call: palo-alto-cloud-ngfw-rulestacks.listrulestacks with: maxresults: tools.maxresults nexttoken: tools.nexttoken scope: tools.scope outputParameters: - type: object mapping: $. - name: palo-alto-networks-create-rule description: Palo Alto Networks Create Rule Stack hints: readOnly: false destructive: false idempotent: false call: palo-alto-cloud-ngfw-rulestacks.createrulestack with: body: tools.body outputParameters: - type: object mapping: $. - name: palo-alto-networks-get-rule description: Palo Alto Networks Get Rule Stack hints: readOnly: true destructive: false idempotent: true call: palo-alto-cloud-ngfw-rulestacks.getrulestack with: candidate: tools.candidate outputParameters: - type: object mapping: $. - name: palo-alto-networks-update-rule description: Palo Alto Networks Update Rule Stack hints: readOnly: false destructive: false idempotent: true call: palo-alto-cloud-ngfw-rulestacks.updaterulestack with: body: tools.body outputParameters: - type: object mapping: $. - name: palo-alto-networks-delete-rule description: Palo Alto Networks Delete Rule Stack hints: readOnly: false destructive: true idempotent: true call: palo-alto-cloud-ngfw-rulestacks.deleterulestack outputParameters: - type: object mapping: $. - name: palo-alto-networks-commit-rule description: Palo Alto Networks Commit Rule Stack hints: readOnly: false destructive: false idempotent: false call: palo-alto-cloud-ngfw-rulestacks.commitrulestack outputParameters: - type: object mapping: $.