naftiko: 1.0.0-alpha2 info: label: FlashBlade REST API — Realms description: 'FlashBlade REST API — Realms. 8 operations. Lead operation: Pure Storage GET Realms. Self-contained Naftiko capability covering one Pure Storage business surface.' tags: - Pure Storage - Realms created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: PURE_STORAGE_API_KEY: PURE_STORAGE_API_KEY capability: consumes: - type: http namespace: flashblade-rest-realms baseUri: http://[array] description: FlashBlade REST API — Realms business capability. Self-contained, no shared references. resources: - name: api-2.26-realms path: /api/2.26/realms operations: - name: get method: GET description: Pure Storage GET Realms outputRawFormat: json outputParameters: - name: result type: object value: $. - name: post method: POST description: Pure Storage POST Realms outputRawFormat: json outputParameters: - name: result type: object value: $. - name: delete method: DELETE description: Pure Storage DELETE Realms outputRawFormat: json outputParameters: - name: result type: object value: $. - name: patch method: PATCH description: Pure Storage PATCH Realms outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-2.26-realms-defaults path: /api/2.26/realms/defaults operations: - name: get method: GET description: Pure Storage GET Realms/defaults outputRawFormat: json outputParameters: - name: result type: object value: $. - name: patch method: PATCH description: Pure Storage PATCH Realms/defaults outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-2.26-realms-space path: /api/2.26/realms/space operations: - name: get method: GET description: Pure Storage GET Realms/space outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-2.26-realms-space-storage-classes path: /api/2.26/realms/space/storage-classes operations: - name: get method: GET description: Pure Storage GET Realms/space/storage-classes outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: x-auth-token value: '{{env.PURE_STORAGE_API_KEY}}' placement: header exposes: - type: rest namespace: flashblade-rest-realms-rest port: 8080 description: REST adapter for FlashBlade REST API — Realms. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/2-26/realms name: api-2-26-realms description: REST surface for api-2.26-realms. operations: - method: GET name: get description: Pure Storage GET Realms call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - method: POST name: post description: Pure Storage POST Realms call: flashblade-rest-realms.post outputParameters: - type: object mapping: $. - method: DELETE name: delete description: Pure Storage DELETE Realms call: flashblade-rest-realms.delete outputParameters: - type: object mapping: $. - method: PATCH name: patch description: Pure Storage PATCH Realms call: flashblade-rest-realms.patch with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/2-26/realms/defaults name: api-2-26-realms-defaults description: REST surface for api-2.26-realms-defaults. operations: - method: GET name: get description: Pure Storage GET Realms/defaults call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - method: PATCH name: patch description: Pure Storage PATCH Realms/defaults call: flashblade-rest-realms.patch with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/2-26/realms/space name: api-2-26-realms-space description: REST surface for api-2.26-realms-space. operations: - method: GET name: get description: Pure Storage GET Realms/space call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - path: /v1/api/2-26/realms/space/storage-classes name: api-2-26-realms-space-storage-classes description: REST surface for api-2.26-realms-space-storage-classes. operations: - method: GET name: get description: Pure Storage GET Realms/space/storage-classes call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - type: mcp namespace: flashblade-rest-realms-mcp port: 9090 transport: http description: MCP adapter for FlashBlade REST API — Realms. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: pure-storage-get-realms description: Pure Storage GET Realms hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - name: pure-storage-post-realms description: Pure Storage POST Realms hints: readOnly: false destructive: false idempotent: false call: flashblade-rest-realms.post outputParameters: - type: object mapping: $. - name: pure-storage-delete-realms description: Pure Storage DELETE Realms hints: readOnly: false destructive: true idempotent: true call: flashblade-rest-realms.delete outputParameters: - type: object mapping: $. - name: pure-storage-patch-realms description: Pure Storage PATCH Realms hints: readOnly: false destructive: false idempotent: true call: flashblade-rest-realms.patch with: body: tools.body outputParameters: - type: object mapping: $. - name: pure-storage-get-realms-defaults description: Pure Storage GET Realms/defaults hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - name: pure-storage-patch-realms-defaults description: Pure Storage PATCH Realms/defaults hints: readOnly: false destructive: false idempotent: true call: flashblade-rest-realms.patch with: body: tools.body outputParameters: - type: object mapping: $. - name: pure-storage-get-realms-space description: Pure Storage GET Realms/space hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-realms.get outputParameters: - type: object mapping: $. - name: pure-storage-get-realms-space-2 description: Pure Storage GET Realms/space/storage-classes hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-realms.get outputParameters: - type: object mapping: $.