naftiko: 1.0.0-alpha2 info: label: n8n Public API — User description: 'n8n Public API — User. 5 operations. Lead operation: Retrieve all users. Self-contained Naftiko capability covering one N8n business surface.' tags: - N8n - User created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: N8N_API_KEY: N8N_API_KEY capability: consumes: - type: http namespace: n8n-user baseUri: https://app.n8n.cloud/api/v1 description: n8n Public API — User business capability. Self-contained, no shared references. resources: - name: users path: /users operations: - name: getusers method: GET description: Retrieve all users outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: number - name: cursor in: query type: string - name: includeRole in: query type: boolean - name: projectId in: query type: string - name: createusers method: POST description: Create multiple users outputRawFormat: json outputParameters: - name: result type: object value: $. - name: users-id path: /users/{id} operations: - name: getuser method: GET description: Get user by ID/Email outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: includeRole in: query type: boolean - name: deleteuser method: DELETE description: Delete a user outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: users-id-role path: /users/{id}/role operations: - name: changeuserrole method: PATCH description: Change a user's global role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true authentication: type: bearer token: '{{env.N8N_API_KEY}}' exposes: - type: rest namespace: n8n-user-rest port: 8080 description: REST adapter for n8n Public API — User. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/users name: users description: REST surface for users. operations: - method: GET name: getusers description: Retrieve all users call: n8n-user.getusers with: limit: rest.limit cursor: rest.cursor includeRole: rest.includeRole projectId: rest.projectId outputParameters: - type: object mapping: $. - method: POST name: createusers description: Create multiple users call: n8n-user.createusers outputParameters: - type: object mapping: $. - path: /v1/users/{id} name: users-id description: REST surface for users-id. operations: - method: GET name: getuser description: Get user by ID/Email call: n8n-user.getuser with: id: rest.id includeRole: rest.includeRole outputParameters: - type: object mapping: $. - method: DELETE name: deleteuser description: Delete a user call: n8n-user.deleteuser with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/users/{id}/role name: users-id-role description: REST surface for users-id-role. operations: - method: PATCH name: changeuserrole description: Change a user's global role call: n8n-user.changeuserrole with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: n8n-user-mcp port: 9090 transport: http description: MCP adapter for n8n Public API — User. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: retrieve-all-users description: Retrieve all users hints: readOnly: true destructive: false idempotent: true call: n8n-user.getusers with: limit: tools.limit cursor: tools.cursor includeRole: tools.includeRole projectId: tools.projectId outputParameters: - type: object mapping: $. - name: create-multiple-users description: Create multiple users hints: readOnly: false destructive: false idempotent: false call: n8n-user.createusers outputParameters: - type: object mapping: $. - name: get-user-id-email description: Get user by ID/Email hints: readOnly: true destructive: false idempotent: true call: n8n-user.getuser with: id: tools.id includeRole: tools.includeRole outputParameters: - type: object mapping: $. - name: delete-user description: Delete a user hints: readOnly: false destructive: true idempotent: true call: n8n-user.deleteuser with: id: tools.id outputParameters: - type: object mapping: $. - name: change-user-s-global-role description: Change a user's global role hints: readOnly: false destructive: false idempotent: true call: n8n-user.changeuserrole with: id: tools.id outputParameters: - type: object mapping: $.