naftiko: 1.0.0-alpha2 info: label: Konnect API - Go SDK — Roles description: 'Konnect API - Go SDK — Roles. 9 operations. Lead operation: Get Predefined Roles. Self-contained Naftiko capability covering one Kong business surface.' tags: - Kong - Roles created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: KONG_API_KEY: KONG_API_KEY capability: consumes: - type: http namespace: konnect-platform-roles baseUri: https://global.api.konghq.com description: Konnect API - Go SDK — Roles business capability. Self-contained, no shared references. resources: - name: v3-roles path: /v3/roles operations: - name: getpredefinedroles method: GET description: Get Predefined Roles outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-teams-teamId-assigned-roles path: /v3/teams/{teamId}/assigned-roles operations: - name: listteamroles method: GET description: List Team Roles outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter in: query type: object description: Filter roles returned in the response. - name: teamsassignrole method: POST description: Assign Team Role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v3-teams-teamId-assigned-roles-roleId path: /v3/teams/{teamId}/assigned-roles/{roleId} operations: - name: getteamrole method: GET description: Get Team Role outputRawFormat: json outputParameters: - name: result type: object value: $. - name: teamsremoverole method: DELETE description: Remove Team Role outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-users-userId-assigned-roles path: /v3/users/{userId}/assigned-roles operations: - name: listuserroles method: GET description: List User Roles outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter in: query type: object description: Filter roles returned in the response. - name: usersassignrole method: POST description: Assign Role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v3-users-userId-assigned-roles-roleId path: /v3/users/{userId}/assigned-roles/{roleId} operations: - name: getuserrole method: GET description: Get User Role outputRawFormat: json outputParameters: - name: result type: object value: $. - name: usersremoverole method: DELETE description: Remove Role outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.KONG_API_KEY}}' exposes: - type: rest namespace: konnect-platform-roles-rest port: 8080 description: REST adapter for Konnect API - Go SDK — Roles. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v3/roles name: v3-roles description: REST surface for v3-roles. operations: - method: GET name: getpredefinedroles description: Get Predefined Roles call: konnect-platform-roles.getpredefinedroles outputParameters: - type: object mapping: $. - path: /v1/v3/teams/{teamid}/assigned-roles name: v3-teams-teamid-assigned-roles description: REST surface for v3-teams-teamId-assigned-roles. operations: - method: GET name: listteamroles description: List Team Roles call: konnect-platform-roles.listteamroles with: filter: rest.filter outputParameters: - type: object mapping: $. - method: POST name: teamsassignrole description: Assign Team Role call: konnect-platform-roles.teamsassignrole with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v3/teams/{teamid}/assigned-roles/{roleid} name: v3-teams-teamid-assigned-roles-roleid description: REST surface for v3-teams-teamId-assigned-roles-roleId. operations: - method: GET name: getteamrole description: Get Team Role call: konnect-platform-roles.getteamrole outputParameters: - type: object mapping: $. - method: DELETE name: teamsremoverole description: Remove Team Role call: konnect-platform-roles.teamsremoverole outputParameters: - type: object mapping: $. - path: /v1/v3/users/{userid}/assigned-roles name: v3-users-userid-assigned-roles description: REST surface for v3-users-userId-assigned-roles. operations: - method: GET name: listuserroles description: List User Roles call: konnect-platform-roles.listuserroles with: filter: rest.filter outputParameters: - type: object mapping: $. - method: POST name: usersassignrole description: Assign Role call: konnect-platform-roles.usersassignrole with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v3/users/{userid}/assigned-roles/{roleid} name: v3-users-userid-assigned-roles-roleid description: REST surface for v3-users-userId-assigned-roles-roleId. operations: - method: GET name: getuserrole description: Get User Role call: konnect-platform-roles.getuserrole outputParameters: - type: object mapping: $. - method: DELETE name: usersremoverole description: Remove Role call: konnect-platform-roles.usersremoverole outputParameters: - type: object mapping: $. - type: mcp namespace: konnect-platform-roles-mcp port: 9090 transport: http description: MCP adapter for Konnect API - Go SDK — Roles. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-predefined-roles description: Get Predefined Roles hints: readOnly: true destructive: false idempotent: true call: konnect-platform-roles.getpredefinedroles outputParameters: - type: object mapping: $. - name: list-team-roles description: List Team Roles hints: readOnly: true destructive: false idempotent: true call: konnect-platform-roles.listteamroles with: filter: tools.filter outputParameters: - type: object mapping: $. - name: assign-team-role description: Assign Team Role hints: readOnly: false destructive: false idempotent: false call: konnect-platform-roles.teamsassignrole with: body: tools.body outputParameters: - type: object mapping: $. - name: get-team-role description: Get Team Role hints: readOnly: true destructive: false idempotent: true call: konnect-platform-roles.getteamrole outputParameters: - type: object mapping: $. - name: remove-team-role description: Remove Team Role hints: readOnly: false destructive: true idempotent: true call: konnect-platform-roles.teamsremoverole outputParameters: - type: object mapping: $. - name: list-user-roles description: List User Roles hints: readOnly: true destructive: false idempotent: true call: konnect-platform-roles.listuserroles with: filter: tools.filter outputParameters: - type: object mapping: $. - name: assign-role description: Assign Role hints: readOnly: false destructive: false idempotent: false call: konnect-platform-roles.usersassignrole with: body: tools.body outputParameters: - type: object mapping: $. - name: get-user-role description: Get User Role hints: readOnly: true destructive: false idempotent: true call: konnect-platform-roles.getuserrole outputParameters: - type: object mapping: $. - name: remove-role description: Remove Role hints: readOnly: false destructive: true idempotent: true call: konnect-platform-roles.usersremoverole outputParameters: - type: object mapping: $.