naftiko: 1.0.0-alpha2 info: label: FlashBlade REST API — Certificates description: 'FlashBlade REST API — Certificates. 9 operations. Lead operation: Pure Storage GET Certificates. Self-contained Naftiko capability covering one Pure Storage business surface.' tags: - Pure Storage - Certificates 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-certificates baseUri: http://[array] description: FlashBlade REST API — Certificates business capability. Self-contained, no shared references. resources: - name: api-2.26-certificates path: /api/2.26/certificates operations: - name: get method: GET description: Pure Storage GET Certificates outputRawFormat: json outputParameters: - name: result type: object value: $. - name: post method: POST description: Pure Storage POST Certificates outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: delete method: DELETE description: Pure Storage DELETE Certificates outputRawFormat: json outputParameters: - name: result type: object value: $. - name: patch method: PATCH description: Pure Storage PATCH Certificates 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-certificates-certificate-groups path: /api/2.26/certificates/certificate-groups operations: - name: get method: GET description: Pure Storage GET Certificates/certificate-groups outputRawFormat: json outputParameters: - name: result type: object value: $. - name: post method: POST description: Pure Storage POST Certificates/certificate-groups outputRawFormat: json outputParameters: - name: result type: object value: $. - name: delete method: DELETE description: Pure Storage DELETE Certificates/certificate-groups outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-2.26-certificates-certificate-signing-requests path: /api/2.26/certificates/certificate-signing-requests operations: - name: post method: POST description: Pure Storage Create Certificate-signing-requests 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-certificates-uses path: /api/2.26/certificates/uses operations: - name: get method: GET description: Pure Storage GET Certificates/uses 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-certificates-rest port: 8080 description: REST adapter for FlashBlade REST API — Certificates. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/2-26/certificates name: api-2-26-certificates description: REST surface for api-2.26-certificates. operations: - method: GET name: get description: Pure Storage GET Certificates call: flashblade-rest-certificates.get outputParameters: - type: object mapping: $. - method: POST name: post description: Pure Storage POST Certificates call: flashblade-rest-certificates.post with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: delete description: Pure Storage DELETE Certificates call: flashblade-rest-certificates.delete outputParameters: - type: object mapping: $. - method: PATCH name: patch description: Pure Storage PATCH Certificates call: flashblade-rest-certificates.patch with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/2-26/certificates/certificate-groups name: api-2-26-certificates-certificate-groups description: REST surface for api-2.26-certificates-certificate-groups. operations: - method: GET name: get description: Pure Storage GET Certificates/certificate-groups call: flashblade-rest-certificates.get outputParameters: - type: object mapping: $. - method: POST name: post description: Pure Storage POST Certificates/certificate-groups call: flashblade-rest-certificates.post outputParameters: - type: object mapping: $. - method: DELETE name: delete description: Pure Storage DELETE Certificates/certificate-groups call: flashblade-rest-certificates.delete outputParameters: - type: object mapping: $. - path: /v1/api/2-26/certificates/certificate-signing-requests name: api-2-26-certificates-certificate-signing-requests description: REST surface for api-2.26-certificates-certificate-signing-requests. operations: - method: POST name: post description: Pure Storage Create Certificate-signing-requests call: flashblade-rest-certificates.post with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/2-26/certificates/uses name: api-2-26-certificates-uses description: REST surface for api-2.26-certificates-uses. operations: - method: GET name: get description: Pure Storage GET Certificates/uses call: flashblade-rest-certificates.get outputParameters: - type: object mapping: $. - type: mcp namespace: flashblade-rest-certificates-mcp port: 9090 transport: http description: MCP adapter for FlashBlade REST API — Certificates. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: pure-storage-get-certificates description: Pure Storage GET Certificates hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-certificates.get outputParameters: - type: object mapping: $. - name: pure-storage-post-certificates description: Pure Storage POST Certificates hints: readOnly: false destructive: false idempotent: false call: flashblade-rest-certificates.post with: body: tools.body outputParameters: - type: object mapping: $. - name: pure-storage-delete-certificates description: Pure Storage DELETE Certificates hints: readOnly: false destructive: true idempotent: true call: flashblade-rest-certificates.delete outputParameters: - type: object mapping: $. - name: pure-storage-patch-certificates description: Pure Storage PATCH Certificates hints: readOnly: false destructive: false idempotent: true call: flashblade-rest-certificates.patch with: body: tools.body outputParameters: - type: object mapping: $. - name: pure-storage-get-certificates-certificate description: Pure Storage GET Certificates/certificate-groups hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-certificates.get outputParameters: - type: object mapping: $. - name: pure-storage-post-certificates-certificate description: Pure Storage POST Certificates/certificate-groups hints: readOnly: false destructive: false idempotent: false call: flashblade-rest-certificates.post outputParameters: - type: object mapping: $. - name: pure-storage-delete-certificates-certificate description: Pure Storage DELETE Certificates/certificate-groups hints: readOnly: false destructive: true idempotent: true call: flashblade-rest-certificates.delete outputParameters: - type: object mapping: $. - name: pure-storage-create-certificate-signing description: Pure Storage Create Certificate-signing-requests hints: readOnly: false destructive: false idempotent: false call: flashblade-rest-certificates.post with: body: tools.body outputParameters: - type: object mapping: $. - name: pure-storage-get-certificates-uses description: Pure Storage GET Certificates/uses hints: readOnly: true destructive: false idempotent: true call: flashblade-rest-certificates.get outputParameters: - type: object mapping: $.