naftiko: 1.0.0-alpha2 info: label: Bunq user/{userID}/oauth-client — User description: 'Bunq user/{userID}/oauth-client — User. 9 operations. Lead operation: User. Self-contained Naftiko capability covering one Bunq business surface.' tags: - Bunq - User created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: BUNQ_API_KEY: BUNQ_API_KEY capability: consumes: - type: http namespace: user-userid-oauth-client-user baseUri: https://public-api.sandbox.bunq.com/{basePath} description: Bunq user/{userID}/oauth-client — User business capability. Self-contained, no shared references. resources: - name: user-userID-oauth-client path: /user/{userID}/oauth-client operations: - name: createoauthclientforuser method: POST description: Used for managing OAuth Clients. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: body in: body type: object description: Request body (JSON). required: true - name: listalloauthclientforuser method: GET description: Used for managing OAuth Clients. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: user-userID-oauth-client-itemId path: /user/{userID}/oauth-client/{itemId} operations: - name: readoauthclientforuser method: GET description: Used for managing OAuth Clients. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: itemId in: path type: integer required: true - name: updateoauthclientforuser method: PUT description: Used for managing OAuth Clients. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: itemId in: path type: integer required: true - name: body in: body type: object description: Request body (JSON). required: true - name: user-userID-oauth-client-oauth-clientID-callback-url path: /user/{userID}/oauth-client/{oauth-clientID}/callback-url operations: - name: createcallbackurlforuseroauthclient method: POST description: Used for managing OAuth Client Callback URLs. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: oauth-clientID in: path type: integer required: true - name: body in: body type: object description: Request body (JSON). required: true - name: listallcallbackurlforuseroauthclient method: GET description: Used for managing OAuth Client Callback URLs. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: oauth-clientID in: path type: integer required: true - name: user-userID-oauth-client-oauth-clientID-callback-url-itemId path: /user/{userID}/oauth-client/{oauth-clientID}/callback-url/{itemId} operations: - name: readcallbackurlforuseroauthclient method: GET description: Used for managing OAuth Client Callback URLs. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: oauth-clientID in: path type: integer required: true - name: itemId in: path type: integer required: true - name: updatecallbackurlforuseroauthclient method: PUT description: Used for managing OAuth Client Callback URLs. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: oauth-clientID in: path type: integer required: true - name: itemId in: path type: integer required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deletecallbackurlforuseroauthclient method: DELETE description: Used for managing OAuth Client Callback URLs. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: userID in: path type: integer required: true - name: oauth-clientID in: path type: integer required: true - name: itemId in: path type: integer required: true exposes: - type: rest namespace: user-userid-oauth-client-user-rest port: 8080 description: REST adapter for Bunq user/{userID}/oauth-client — User. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/user/{userid}/oauth-client name: user-userid-oauth-client description: REST surface for user-userID-oauth-client. operations: - method: POST name: createoauthclientforuser description: Used for managing OAuth Clients. call: user-userid-oauth-client-user.createoauthclientforuser with: userID: rest.userID body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listalloauthclientforuser description: Used for managing OAuth Clients. call: user-userid-oauth-client-user.listalloauthclientforuser with: userID: rest.userID outputParameters: - type: object mapping: $. - path: /v1/user/{userid}/oauth-client/{itemid} name: user-userid-oauth-client-itemid description: REST surface for user-userID-oauth-client-itemId. operations: - method: GET name: readoauthclientforuser description: Used for managing OAuth Clients. call: user-userid-oauth-client-user.readoauthclientforuser with: userID: rest.userID itemId: rest.itemId outputParameters: - type: object mapping: $. - method: PUT name: updateoauthclientforuser description: Used for managing OAuth Clients. call: user-userid-oauth-client-user.updateoauthclientforuser with: userID: rest.userID itemId: rest.itemId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/user/{userid}/oauth-client/{oauth-clientid}/callback-url name: user-userid-oauth-client-oauth-clientid-callback-url description: REST surface for user-userID-oauth-client-oauth-clientID-callback-url. operations: - method: POST name: createcallbackurlforuseroauthclient description: Used for managing OAuth Client Callback URLs. call: user-userid-oauth-client-user.createcallbackurlforuseroauthclient with: userID: rest.userID oauth-clientID: rest.oauth-clientID body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listallcallbackurlforuseroauthclient description: Used for managing OAuth Client Callback URLs. call: user-userid-oauth-client-user.listallcallbackurlforuseroauthclient with: userID: rest.userID oauth-clientID: rest.oauth-clientID outputParameters: - type: object mapping: $. - path: /v1/user/{userid}/oauth-client/{oauth-clientid}/callback-url/{itemid} name: user-userid-oauth-client-oauth-clientid-callback-url-itemid description: REST surface for user-userID-oauth-client-oauth-clientID-callback-url-itemId. operations: - method: GET name: readcallbackurlforuseroauthclient description: Used for managing OAuth Client Callback URLs. call: user-userid-oauth-client-user.readcallbackurlforuseroauthclient with: userID: rest.userID oauth-clientID: rest.oauth-clientID itemId: rest.itemId outputParameters: - type: object mapping: $. - method: PUT name: updatecallbackurlforuseroauthclient description: Used for managing OAuth Client Callback URLs. call: user-userid-oauth-client-user.updatecallbackurlforuseroauthclient with: userID: rest.userID oauth-clientID: rest.oauth-clientID itemId: rest.itemId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletecallbackurlforuseroauthclient description: Used for managing OAuth Client Callback URLs. call: user-userid-oauth-client-user.deletecallbackurlforuseroauthclient with: userID: rest.userID oauth-clientID: rest.oauth-clientID itemId: rest.itemId outputParameters: - type: object mapping: $. - type: mcp namespace: user-userid-oauth-client-user-mcp port: 9090 transport: http description: MCP adapter for Bunq user/{userID}/oauth-client — User. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: used-managing-oauth-clients description: Used for managing OAuth Clients. hints: readOnly: false destructive: false idempotent: false call: user-userid-oauth-client-user.createoauthclientforuser with: userID: tools.userID body: tools.body outputParameters: - type: object mapping: $. - name: used-managing-oauth-clients-2 description: Used for managing OAuth Clients. hints: readOnly: true destructive: false idempotent: true call: user-userid-oauth-client-user.listalloauthclientforuser with: userID: tools.userID outputParameters: - type: object mapping: $. - name: used-managing-oauth-clients-3 description: Used for managing OAuth Clients. hints: readOnly: true destructive: false idempotent: true call: user-userid-oauth-client-user.readoauthclientforuser with: userID: tools.userID itemId: tools.itemId outputParameters: - type: object mapping: $. - name: used-managing-oauth-clients-4 description: Used for managing OAuth Clients. hints: readOnly: false destructive: false idempotent: true call: user-userid-oauth-client-user.updateoauthclientforuser with: userID: tools.userID itemId: tools.itemId body: tools.body outputParameters: - type: object mapping: $. - name: used-managing-oauth-client-callback description: Used for managing OAuth Client Callback URLs. hints: readOnly: false destructive: false idempotent: false call: user-userid-oauth-client-user.createcallbackurlforuseroauthclient with: userID: tools.userID oauth-clientID: tools.oauth-clientID body: tools.body outputParameters: - type: object mapping: $. - name: used-managing-oauth-client-callback-2 description: Used for managing OAuth Client Callback URLs. hints: readOnly: true destructive: false idempotent: true call: user-userid-oauth-client-user.listallcallbackurlforuseroauthclient with: userID: tools.userID oauth-clientID: tools.oauth-clientID outputParameters: - type: object mapping: $. - name: used-managing-oauth-client-callback-3 description: Used for managing OAuth Client Callback URLs. hints: readOnly: true destructive: false idempotent: true call: user-userid-oauth-client-user.readcallbackurlforuseroauthclient with: userID: tools.userID oauth-clientID: tools.oauth-clientID itemId: tools.itemId outputParameters: - type: object mapping: $. - name: used-managing-oauth-client-callback-4 description: Used for managing OAuth Client Callback URLs. hints: readOnly: false destructive: false idempotent: true call: user-userid-oauth-client-user.updatecallbackurlforuseroauthclient with: userID: tools.userID oauth-clientID: tools.oauth-clientID itemId: tools.itemId body: tools.body outputParameters: - type: object mapping: $. - name: used-managing-oauth-client-callback-5 description: Used for managing OAuth Client Callback URLs. hints: readOnly: false destructive: true idempotent: true call: user-userid-oauth-client-user.deletecallbackurlforuseroauthclient with: userID: tools.userID oauth-clientID: tools.oauth-clientID itemId: tools.itemId outputParameters: - type: object mapping: $.