naftiko: 1.0.0-alpha2 info: label: Spot Administration API — Users description: 'Spot Administration API — Users. 6 operations. Lead operation: Spot List Organization Users. Self-contained Naftiko capability covering one Flexera business surface.' tags: - Flexera - Users created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FLEXERA_API_KEY: FLEXERA_API_KEY capability: consumes: - type: http namespace: spot-administration-users baseUri: https://api.spotinst.io description: Spot Administration API — Users business capability. Self-contained, no shared references. resources: - name: setup-organization-organizationId-user path: /setup/organization/{organizationId}/user operations: - name: listorganizationusers method: GET description: Spot List Organization Users outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: organizationId in: path type: string required: true - name: setup-user path: /setup/user operations: - name: createuser method: POST description: Spot Create User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: setup-user-programmatic path: /setup/user/programmatic operations: - name: createprogrammaticuser method: POST description: Spot Create Programmatic User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: setup-user-userId path: /setup/user/{userId} operations: - name: getuser method: GET description: Spot Get User Details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userId in: path type: string required: true - name: updateuserpermissions method: PUT description: Spot Update User Permissions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deleteuser method: DELETE description: Spot Delete User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userId in: path type: string required: true authentication: type: bearer token: '{{env.FLEXERA_API_KEY}}' exposes: - type: rest namespace: spot-administration-users-rest port: 8080 description: REST adapter for Spot Administration API — Users. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/setup/organization/{organizationid}/user name: setup-organization-organizationid-user description: REST surface for setup-organization-organizationId-user. operations: - method: GET name: listorganizationusers description: Spot List Organization Users call: spot-administration-users.listorganizationusers with: organizationId: rest.organizationId outputParameters: - type: object mapping: $. - path: /v1/setup/user name: setup-user description: REST surface for setup-user. operations: - method: POST name: createuser description: Spot Create User call: spot-administration-users.createuser with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/setup/user/programmatic name: setup-user-programmatic description: REST surface for setup-user-programmatic. operations: - method: POST name: createprogrammaticuser description: Spot Create Programmatic User call: spot-administration-users.createprogrammaticuser with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/setup/user/{userid} name: setup-user-userid description: REST surface for setup-user-userId. operations: - method: GET name: getuser description: Spot Get User Details call: spot-administration-users.getuser with: userId: rest.userId outputParameters: - type: object mapping: $. - method: PUT name: updateuserpermissions description: Spot Update User Permissions call: spot-administration-users.updateuserpermissions with: userId: rest.userId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteuser description: Spot Delete User call: spot-administration-users.deleteuser with: userId: rest.userId outputParameters: - type: object mapping: $. - type: mcp namespace: spot-administration-users-mcp port: 9090 transport: http description: MCP adapter for Spot Administration API — Users. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: spot-list-organization-users description: Spot List Organization Users hints: readOnly: true destructive: false idempotent: true call: spot-administration-users.listorganizationusers with: organizationId: tools.organizationId outputParameters: - type: object mapping: $. - name: spot-create-user description: Spot Create User hints: readOnly: false destructive: false idempotent: false call: spot-administration-users.createuser with: body: tools.body outputParameters: - type: object mapping: $. - name: spot-create-programmatic-user description: Spot Create Programmatic User hints: readOnly: false destructive: false idempotent: false call: spot-administration-users.createprogrammaticuser with: body: tools.body outputParameters: - type: object mapping: $. - name: spot-get-user-details description: Spot Get User Details hints: readOnly: true destructive: false idempotent: true call: spot-administration-users.getuser with: userId: tools.userId outputParameters: - type: object mapping: $. - name: spot-update-user-permissions description: Spot Update User Permissions hints: readOnly: false destructive: false idempotent: true call: spot-administration-users.updateuserpermissions with: userId: tools.userId body: tools.body outputParameters: - type: object mapping: $. - name: spot-delete-user description: Spot Delete User hints: readOnly: false destructive: true idempotent: true call: spot-administration-users.deleteuser with: userId: tools.userId outputParameters: - type: object mapping: $.