naftiko: 1.0.0-alpha2 info: label: Atlassian Bit Bucket User API — Users description: 'Atlassian Bit Bucket User API — Users. 23 operations. Lead operation: Atlassian List Explicit User Permissions for Repository. Self-contained Naftiko capability covering one Atlassian business surface.' tags: - Atlassian - Users created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ATLASSIAN_API_KEY: ATLASSIAN_API_KEY capability: consumes: - type: http namespace: bitbucket-user-users baseUri: https://api.bitbucket.org/2.0 description: Atlassian Bit Bucket User API — Users business capability. Self-contained, no shared references. resources: - name: repositories-workspace-repo_slug-permissions-config-users path: /repositories/{workspace}/{repo_slug}/permissions-config/users operations: - name: listexplicituserpermissionsforrepository method: GET description: Atlassian List Explicit User Permissions for Repository outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-permissions-config-users-selected_user_id path: /repositories/{workspace}/{repo_slug}/permissions-config/users/{selected_user_id} operations: - name: deleteanexplicituserpermissionforrepository method: DELETE description: Atlassian Delete an Explicit User Permission for Repository outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getanexplicituserpermissionforrepository method: GET description: Atlassian Get an Explicit User Permission for Repository outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateanexplicituserpermissionforrepository method: PUT description: Atlassian Update an Explicit User Permission for Repository outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: user path: /user operations: - name: getcurrentuser method: GET description: Atlassian Get Current User outputRawFormat: json outputParameters: - name: result type: object value: $. - name: user-emails path: /user/emails operations: - name: listemailaddressesforcurrentuser method: GET description: Atlassian List Email Addresses for Current User outputRawFormat: json outputParameters: - name: result type: object value: $. - name: user-emails-email path: /user/emails/{email} operations: - name: getanemailaddressforcurrentuser method: GET description: Atlassian Get an Email Address for Current User outputRawFormat: json outputParameters: - name: result type: object value: $. - name: user-permissions-repositories path: /user/permissions/repositories operations: - name: listrepositorypermissionsforuser method: GET description: Atlassian List Repository Permissions for User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: q in: query type: string description: Query string to narrow down the response as per - name: sort in: query type: string description: Name of a response property sort the result by as per - name: user-permissions-workspaces path: /user/permissions/workspaces operations: - name: listworkspacesforthecurrentuser method: GET description: Atlassian List Workspaces for the Current User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: q in: query type: string description: Query string to narrow down the response. See - name: sort in: query type: string description: Name of a response property to sort results. See - name: users-selected_user path: /users/{selected_user} operations: - name: getuser method: GET description: Atlassian Get User outputRawFormat: json outputParameters: - name: result type: object value: $. - name: users-selected_user-pipelines_config-variables path: /users/{selected_user}/pipelines_config/variables operations: - name: listvariablesforuser method: GET description: Atlassian List Variables for User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: createvariableforuser method: POST description: Atlassian Create Variable for User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: users-selected_user-pipelines_config-variables-variable_uuid path: /users/{selected_user}/pipelines_config/variables/{variable_uuid} operations: - name: getvariableforuser method: GET description: Atlassian Get Variable for User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: variable_uuid in: path type: string description: The UUID of the variable to retrieve. required: true - name: updatevariableforuser method: PUT description: Atlassian Update Variable for User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: variable_uuid in: path type: string description: The UUID of the variable. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deletevariableforuser method: DELETE description: Atlassian Delete Variable for User outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: variable_uuid in: path type: string description: The UUID of the variable to delete. required: true - name: users-selected_user-properties-app_key-property_name path: /users/{selected_user}/properties/{app_key}/{property_name} operations: - name: updateuserapplicationproperty method: PUT description: Atlassian Update User Application Property outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: app_key in: path type: string description: The key of the Connect app. required: true - name: property_name in: path type: string description: The name of the property. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deleteuserapplicationproperty method: DELETE description: Atlassian Delete User Application Property outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: app_key in: path type: string description: The key of the Connect app. required: true - name: property_name in: path type: string description: The name of the property. required: true - name: getuserapplicationproperty method: GET description: Atlassian Get User Application Property outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: app_key in: path type: string description: The key of the Connect app. required: true - name: property_name in: path type: string description: The name of the property. required: true - name: users-selected_user-search-code path: /users/{selected_user}/search/code operations: - name: searchforcodeinusersrepositories method: GET description: Atlassian Search for Code in Users Repositories outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: selected_user in: path type: string description: Either the UUID of the account surrounded by curly-braces, for example `{account UUID}`, OR an Atlassian Account ID. required: true - name: search_query in: query type: string description: The search query required: true - name: page in: query type: integer description: Which page of the search results to retrieve - name: pagelen in: query type: integer description: How many search results to retrieve per page - name: workspaces-workspace-projects-project_key-permissions-config-users path: /workspaces/{workspace}/projects/{project_key}/permissions-config/users operations: - name: listexplicituserpermissionsforproject method: GET description: Atlassian List Explicit User Permissions for Project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workspaces-workspace-projects-project_key-permissions-config-users-selected_user path: /workspaces/{workspace}/projects/{project_key}/permissions-config/users/{selected_user_id} operations: - name: deleteanexplicituserpermissionforproject method: DELETE description: Atlassian Delete an Explicit User Permission for Project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: getanexplicituserpermissionforproject method: GET description: Atlassian Get an Explicit User Permission for Project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateanexplicituserpermissionforproject method: PUT description: Atlassian Update an Explicit User Permission for Project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false authentication: type: bearer token: '{{env.ATLASSIAN_API_KEY}}' exposes: - type: rest namespace: bitbucket-user-users-rest port: 8080 description: REST adapter for Atlassian Bit Bucket User API — Users. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/repositories/{workspace}/{repo-slug}/permissions-config/users name: repositories-workspace-repo-slug-permissions-config-users description: REST surface for repositories-workspace-repo_slug-permissions-config-users. operations: - method: GET name: listexplicituserpermissionsforrepository description: Atlassian List Explicit User Permissions for Repository call: bitbucket-user-users.listexplicituserpermissionsforrepository outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/permissions-config/users/{selected-user-id} name: repositories-workspace-repo-slug-permissions-config-users-selected-user-id description: REST surface for repositories-workspace-repo_slug-permissions-config-users-selected_user_id. operations: - method: DELETE name: deleteanexplicituserpermissionforrepository description: Atlassian Delete an Explicit User Permission for Repository call: bitbucket-user-users.deleteanexplicituserpermissionforrepository outputParameters: - type: object mapping: $. - method: GET name: getanexplicituserpermissionforrepository description: Atlassian Get an Explicit User Permission for Repository call: bitbucket-user-users.getanexplicituserpermissionforrepository outputParameters: - type: object mapping: $. - method: PUT name: updateanexplicituserpermissionforrepository description: Atlassian Update an Explicit User Permission for Repository call: bitbucket-user-users.updateanexplicituserpermissionforrepository with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/user name: user description: REST surface for user. operations: - method: GET name: getcurrentuser description: Atlassian Get Current User call: bitbucket-user-users.getcurrentuser outputParameters: - type: object mapping: $. - path: /v1/user/emails name: user-emails description: REST surface for user-emails. operations: - method: GET name: listemailaddressesforcurrentuser description: Atlassian List Email Addresses for Current User call: bitbucket-user-users.listemailaddressesforcurrentuser outputParameters: - type: object mapping: $. - path: /v1/user/emails/{email} name: user-emails-email description: REST surface for user-emails-email. operations: - method: GET name: getanemailaddressforcurrentuser description: Atlassian Get an Email Address for Current User call: bitbucket-user-users.getanemailaddressforcurrentuser outputParameters: - type: object mapping: $. - path: /v1/user/permissions/repositories name: user-permissions-repositories description: REST surface for user-permissions-repositories. operations: - method: GET name: listrepositorypermissionsforuser description: Atlassian List Repository Permissions for User call: bitbucket-user-users.listrepositorypermissionsforuser with: q: rest.q sort: rest.sort outputParameters: - type: object mapping: $. - path: /v1/user/permissions/workspaces name: user-permissions-workspaces description: REST surface for user-permissions-workspaces. operations: - method: GET name: listworkspacesforthecurrentuser description: Atlassian List Workspaces for the Current User call: bitbucket-user-users.listworkspacesforthecurrentuser with: q: rest.q sort: rest.sort outputParameters: - type: object mapping: $. - path: /v1/users/{selected-user} name: users-selected-user description: REST surface for users-selected_user. operations: - method: GET name: getuser description: Atlassian Get User call: bitbucket-user-users.getuser outputParameters: - type: object mapping: $. - path: /v1/users/{selected-user}/pipelines-config/variables name: users-selected-user-pipelines-config-variables description: REST surface for users-selected_user-pipelines_config-variables. operations: - method: GET name: listvariablesforuser description: Atlassian List Variables for User call: bitbucket-user-users.listvariablesforuser with: selected_user: rest.selected_user outputParameters: - type: object mapping: $. - method: POST name: createvariableforuser description: Atlassian Create Variable for User call: bitbucket-user-users.createvariableforuser with: selected_user: rest.selected_user body: rest.body outputParameters: - type: object mapping: $. - path: /v1/users/{selected-user}/pipelines-config/variables/{variable-uuid} name: users-selected-user-pipelines-config-variables-variable-uuid description: REST surface for users-selected_user-pipelines_config-variables-variable_uuid. operations: - method: GET name: getvariableforuser description: Atlassian Get Variable for User call: bitbucket-user-users.getvariableforuser with: selected_user: rest.selected_user variable_uuid: rest.variable_uuid outputParameters: - type: object mapping: $. - method: PUT name: updatevariableforuser description: Atlassian Update Variable for User call: bitbucket-user-users.updatevariableforuser with: selected_user: rest.selected_user variable_uuid: rest.variable_uuid body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletevariableforuser description: Atlassian Delete Variable for User call: bitbucket-user-users.deletevariableforuser with: selected_user: rest.selected_user variable_uuid: rest.variable_uuid outputParameters: - type: object mapping: $. - path: /v1/users/{selected-user}/properties/{app-key}/{property-name} name: users-selected-user-properties-app-key-property-name description: REST surface for users-selected_user-properties-app_key-property_name. operations: - method: PUT name: updateuserapplicationproperty description: Atlassian Update User Application Property call: bitbucket-user-users.updateuserapplicationproperty with: selected_user: rest.selected_user app_key: rest.app_key property_name: rest.property_name body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteuserapplicationproperty description: Atlassian Delete User Application Property call: bitbucket-user-users.deleteuserapplicationproperty with: selected_user: rest.selected_user app_key: rest.app_key property_name: rest.property_name outputParameters: - type: object mapping: $. - method: GET name: getuserapplicationproperty description: Atlassian Get User Application Property call: bitbucket-user-users.getuserapplicationproperty with: selected_user: rest.selected_user app_key: rest.app_key property_name: rest.property_name outputParameters: - type: object mapping: $. - path: /v1/users/{selected-user}/search/code name: users-selected-user-search-code description: REST surface for users-selected_user-search-code. operations: - method: GET name: searchforcodeinusersrepositories description: Atlassian Search for Code in Users Repositories call: bitbucket-user-users.searchforcodeinusersrepositories with: selected_user: rest.selected_user search_query: rest.search_query page: rest.page pagelen: rest.pagelen outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/permissions-config/users name: workspaces-workspace-projects-project-key-permissions-config-users description: REST surface for workspaces-workspace-projects-project_key-permissions-config-users. operations: - method: GET name: listexplicituserpermissionsforproject description: Atlassian List Explicit User Permissions for Project call: bitbucket-user-users.listexplicituserpermissionsforproject outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/permissions-config/users/{selected-user-id} name: workspaces-workspace-projects-project-key-permissions-config-users-selected-user description: REST surface for workspaces-workspace-projects-project_key-permissions-config-users-selected_user. operations: - method: DELETE name: deleteanexplicituserpermissionforproject description: Atlassian Delete an Explicit User Permission for Project call: bitbucket-user-users.deleteanexplicituserpermissionforproject outputParameters: - type: object mapping: $. - method: GET name: getanexplicituserpermissionforproject description: Atlassian Get an Explicit User Permission for Project call: bitbucket-user-users.getanexplicituserpermissionforproject outputParameters: - type: object mapping: $. - method: PUT name: updateanexplicituserpermissionforproject description: Atlassian Update an Explicit User Permission for Project call: bitbucket-user-users.updateanexplicituserpermissionforproject with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: bitbucket-user-users-mcp port: 9090 transport: http description: MCP adapter for Atlassian Bit Bucket User API — Users. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: atlassian-list-explicit-user-permissions description: Atlassian List Explicit User Permissions for Repository hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.listexplicituserpermissionsforrepository outputParameters: - type: object mapping: $. - name: atlassian-delete-explicit-user-permission description: Atlassian Delete an Explicit User Permission for Repository hints: readOnly: false destructive: true idempotent: true call: bitbucket-user-users.deleteanexplicituserpermissionforrepository outputParameters: - type: object mapping: $. - name: atlassian-get-explicit-user-permission description: Atlassian Get an Explicit User Permission for Repository hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getanexplicituserpermissionforrepository outputParameters: - type: object mapping: $. - name: atlassian-update-explicit-user-permission description: Atlassian Update an Explicit User Permission for Repository hints: readOnly: false destructive: false idempotent: true call: bitbucket-user-users.updateanexplicituserpermissionforrepository with: body: tools.body outputParameters: - type: object mapping: $. - name: atlassian-get-current-user description: Atlassian Get Current User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getcurrentuser outputParameters: - type: object mapping: $. - name: atlassian-list-email-addresses-current description: Atlassian List Email Addresses for Current User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.listemailaddressesforcurrentuser outputParameters: - type: object mapping: $. - name: atlassian-get-email-address-current description: Atlassian Get an Email Address for Current User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getanemailaddressforcurrentuser outputParameters: - type: object mapping: $. - name: atlassian-list-repository-permissions-user description: Atlassian List Repository Permissions for User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.listrepositorypermissionsforuser with: q: tools.q sort: tools.sort outputParameters: - type: object mapping: $. - name: atlassian-list-workspaces-current-user description: Atlassian List Workspaces for the Current User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.listworkspacesforthecurrentuser with: q: tools.q sort: tools.sort outputParameters: - type: object mapping: $. - name: atlassian-get-user description: Atlassian Get User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getuser outputParameters: - type: object mapping: $. - name: atlassian-list-variables-user description: Atlassian List Variables for User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.listvariablesforuser with: selected_user: tools.selected_user outputParameters: - type: object mapping: $. - name: atlassian-create-variable-user description: Atlassian Create Variable for User hints: readOnly: false destructive: false idempotent: false call: bitbucket-user-users.createvariableforuser with: selected_user: tools.selected_user body: tools.body outputParameters: - type: object mapping: $. - name: atlassian-get-variable-user description: Atlassian Get Variable for User hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getvariableforuser with: selected_user: tools.selected_user variable_uuid: tools.variable_uuid outputParameters: - type: object mapping: $. - name: atlassian-update-variable-user description: Atlassian Update Variable for User hints: readOnly: false destructive: false idempotent: true call: bitbucket-user-users.updatevariableforuser with: selected_user: tools.selected_user variable_uuid: tools.variable_uuid body: tools.body outputParameters: - type: object mapping: $. - name: atlassian-delete-variable-user description: Atlassian Delete Variable for User hints: readOnly: false destructive: true idempotent: true call: bitbucket-user-users.deletevariableforuser with: selected_user: tools.selected_user variable_uuid: tools.variable_uuid outputParameters: - type: object mapping: $. - name: atlassian-update-user-application-property description: Atlassian Update User Application Property hints: readOnly: false destructive: false idempotent: true call: bitbucket-user-users.updateuserapplicationproperty with: selected_user: tools.selected_user app_key: tools.app_key property_name: tools.property_name body: tools.body outputParameters: - type: object mapping: $. - name: atlassian-delete-user-application-property description: Atlassian Delete User Application Property hints: readOnly: false destructive: true idempotent: true call: bitbucket-user-users.deleteuserapplicationproperty with: selected_user: tools.selected_user app_key: tools.app_key property_name: tools.property_name outputParameters: - type: object mapping: $. - name: atlassian-get-user-application-property description: Atlassian Get User Application Property hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getuserapplicationproperty with: selected_user: tools.selected_user app_key: tools.app_key property_name: tools.property_name outputParameters: - type: object mapping: $. - name: atlassian-search-code-users-repositories description: Atlassian Search for Code in Users Repositories hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.searchforcodeinusersrepositories with: selected_user: tools.selected_user search_query: tools.search_query page: tools.page pagelen: tools.pagelen outputParameters: - type: object mapping: $. - name: atlassian-list-explicit-user-permissions-2 description: Atlassian List Explicit User Permissions for Project hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.listexplicituserpermissionsforproject outputParameters: - type: object mapping: $. - name: atlassian-delete-explicit-user-permission-2 description: Atlassian Delete an Explicit User Permission for Project hints: readOnly: false destructive: true idempotent: true call: bitbucket-user-users.deleteanexplicituserpermissionforproject outputParameters: - type: object mapping: $. - name: atlassian-get-explicit-user-permission-2 description: Atlassian Get an Explicit User Permission for Project hints: readOnly: true destructive: false idempotent: true call: bitbucket-user-users.getanexplicituserpermissionforproject outputParameters: - type: object mapping: $. - name: atlassian-update-explicit-user-permission-2 description: Atlassian Update an Explicit User Permission for Project hints: readOnly: false destructive: false idempotent: true call: bitbucket-user-users.updateanexplicituserpermissionforproject with: body: tools.body outputParameters: - type: object mapping: $.