openapi: 3.0.1 info: title: 'Atlassian wiki/rest/api/user/' description: Needs description. termsOfService: https://atlassian.com/terms/ version: 1.0.0 externalDocs: description: The online and complete version of the Confluence Cloud REST API docs. url: https://developer.atlassian.com/cloud/confluence/rest/ servers: - url: //your-domain.atlassian.net tags: - name: Content Watches - name: User Properties - name: Users paths: /wiki/rest/api/user/anonymous: get: tags: - Users summary: Atlassian Get Anonymous User description: >- Returns information about how anonymous users are represented, like the
profile picture and display name.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetanonymoususer parameters: - name: expand in: query description: |- A multi-value parameter indicating which properties of the user to expand. - `operations` returns the operations that the user is allowed to do. style: form explode: false schema: type: array items: type: string enum: - operations responses: '200': description: Returned if the anonymous user representation is returned. content: application/json: schema: $ref: '#/components/schemas/UserAnonymous' '403': description: |- Returned if the calling user does not have permission to use Confluence. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-user x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-user - scheme: oAuthDefinitions state: Beta scopes: - read:user:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/user/current: get: tags: - Users summary: Atlassian Get Current User description: >- Returns the currently logged-in user. This includes information about
the user, like the display name, userKey, account ID, profile picture,
and more.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetcurrentuser parameters: - name: expand in: query description: |- A multi-value parameter indicating which properties of the user to expand. - `operations` returns the operations that the user is allowed to do. - `personalSpace` returns the user's personal space, if it exists. - `isExternalCollaborator` returns whether the user is an external collaborator user. style: form explode: false schema: type: array items: type: string enum: - operations - personalSpace - isExternalCollaborator responses: '200': description: Returned if the current user is returned. content: application/json: schema: $ref: '#/components/schemas/User' '403': description: |- Returned if the calling user does not have permission to use Confluence. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-user x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-user - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/user/memberof: get: tags: - Users summary: Atlassian Get Group Memberships For User description: >- Returns the groups that a user is a member of.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetgroupmembershipsforuser parameters: - name: accountId in: query description: >- The account ID of the user. The accountId uniquely identifies the user across all Atlassian products. For example, `384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192`. required: true schema: type: string - name: start in: query description: The starting index of the returned groups. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: |- The maximum number of groups to return per page. Note, this may be restricted by fixed system limits. schema: minimum: 0 type: integer format: int32 default: 200 responses: '200': description: Returned if the requested groups are returned. content: application/json: schema: $ref: '#/components/schemas/GroupArrayWithLinks' '403': description: |- Returned if the calling user does not have permission to use Confluence. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-user x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-user - scheme: oAuthDefinitions state: Beta scopes: - read:user:confluence - read:group:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/user/bulk: get: tags: - Users summary: Atlassian Get Multiple Users Using Ids description: >- Returns user details for the ids provided in request.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetbulkuserlookup parameters: - name: accountId in: query description: A list of accountId's of users to be returned. required: true schema: type: string - name: expand in: query description: |- A multi-value parameter indicating which properties of the user to expand. - `operations` returns the operations that the user is allowed to do. - `personalSpace` returns the user's personal space, if it exists. - `isExternalCollaborator` returns whether the user is an external collaborator user. style: form explode: false schema: type: array items: type: string enum: - operations - personalSpace - isExternalCollaborator - name: limit in: query description: |- The maximum number of results returned. Currently API returns 200 results max. If more that 200 ids are passed first 200 will be returned. schema: maximum: 200 minimum: 1 type: integer format: int32 responses: '200': description: Returned if, the list of users is returned. content: application/json: schema: $ref: '#/components/schemas/BulkUserLookupArray' '403': description: |- Returned if the calling user does not have permission to use Confluence. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-user x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-user - scheme: oAuthDefinitions state: Beta scopes: - read:content-details:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/user/watch/content/{contentId}: get: tags: - Content Watches summary: Atlassian Get Content Watch Status description: >- Returns whether a user is watching a piece of content. Choose the user by
doing one of the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetcontentwatchstatus parameters: - name: contentId in: path description: >- The ID of the content to be queried for whether the specified user is watching it. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '200': description: Returned if the requested watch status is returned. content: application/json: schema: $ref: '#/components/schemas/UserWatch' '403': description: |- Returned if; - The calling user does not have permission to view the content. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No content exists for the specified `contentId`. content: {} '404': description: Returned if no `contentId` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: READ post: tags: - Content Watches summary: Atlassian Add Content Watcher description: >- Adds a user as a watcher to a piece of content. Choose the user by doing
one of the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

Note, you must add the `X-Atlassian-Token: no-check` header when making a
request, as this operation has XSRF protection.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianAddcontentwatcher parameters: - name: contentId in: path description: The ID of the content to add the watcher to. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '204': description: >- Returned if the watcher was successfully created. No response body is returned. content: {} '403': description: |- Returned if; - The `X-Atlassian-Token: no-check` header is not specified. - The calling user does not have permission to view the content. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No content exists for the specified `contentId`. content: {} '404': description: Returned if no `contentId` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE delete: tags: - Content Watches summary: Atlassian Remove Content Watcher description: >- Removes a user as a watcher from a piece of content. Choose the user by
doing one of the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianRemovecontentwatcher parameters: - name: X-Atlassian-Token in: header description: |- Note, you must add header when making a request, as this operation has XSRF protection. required: true schema: type: string default: no-check - name: contentId in: path description: The ID of the content to remove the watcher from. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '204': description: >- Returned if the watcher was successfully deleted. No response body is returned. content: {} '403': description: |- Returned if; - The `X-Atlassian-Token: no-check` header is not specified. - The calling user does not have permission to view the content. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No content exists for the specified `contentId`. content: {} '404': description: Returned if no `contentId` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: false x-atlassian-connect-scope: WRITE /wiki/rest/api/user/watch/label/{labelName}: get: tags: - Content Watches summary: Atlassian Get Label Watch Status description: >- Returns whether a user is watching a label. Choose the user by doing one
of the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianIswatchinglabel parameters: - name: labelName in: path description: >- The name of the label to be queried for whether the specified user is watching it. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '200': description: Returned if the requested watch status is returned. content: application/json: schema: $ref: '#/components/schemas/UserWatch' '403': description: |- Returned if; - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No label exists for the specified `labelName`. content: {} '404': description: Returned if no `labelName` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ post: tags: - Content Watches summary: Atlassian Add Label Watcher description: >- Adds a user as a watcher to a label. Choose the user by doing one of the
following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

Note, you must add the `X-Atlassian-Token: no-check` header when making a
request, as this operation has XSRF protection.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianAddlabelwatcher parameters: - name: X-Atlassian-Token in: header description: |- Note, you must add header when making a request, as this operation has XSRF protection. required: true schema: type: string default: no-check - name: labelName in: path description: The name of the label to add the watcher to. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '204': description: >- Returned if the watcher was successfully created. No response body is returned. content: {} '403': description: |- Returned if; - The `X-Atlassian-Token: no-check` header is not specified. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No label exists for the specified `labelName`. content: {} '404': description: Returned if no `labelName` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: WRITE delete: tags: - Content Watches summary: Atlassian Remove Label Watcher description: >- Removes a user as a watcher from a label. Choose the user by doing one of
the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianRemovelabelwatcher parameters: - name: labelName in: path description: The name of the label to remove the watcher from. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '204': description: >- Returned if the watcher was successfully deleted. No response body is returned. content: {} '403': description: |- Returned if; - The `X-Atlassian-Token: no-check` header is not specified. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No label exists for the specified `labelName`. content: {} '404': description: Returned if no `labelName` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: WRITE /wiki/rest/api/user/watch/space/{spaceKey}: get: tags: - Content Watches summary: Atlassian Get Space Watch Status description: >- Returns whether a user is watching a space. Choose the user by
doing one of the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianIswatchingspace parameters: - name: spaceKey in: path description: |- The key of the space to be queried for whether the specified user is watching it. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '200': description: Returned if the requested watch status is returned. content: application/json: schema: $ref: '#/components/schemas/UserWatch' '403': description: |- Returned if; - The calling user does not have permission to view the space. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No space exists for the specified `spaceKey`. content: {} '404': description: Returned if no `spaceKey` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:confluence-content.summary x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:confluence-content.summary - scheme: oAuthDefinitions state: Beta scopes: - read:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ post: tags: - Content Watches summary: Atlassian Add Space Watcher description: >- Adds a user as a watcher to a space. Choose the user by doing one of the
following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

Note, you must add the `X-Atlassian-Token: no-check` header when making a
request, as this operation has XSRF protection.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianAddspacewatcher parameters: - name: X-Atlassian-Token in: header description: |- Note, you must add header when making a request, as this operation has XSRF protection. required: true schema: type: string default: no-check - name: spaceKey in: path description: The key of the space to add the watcher to. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '204': description: >- Returned if the watcher was successfully created. No response body is returned. content: {} '403': description: |- Returned if; - The `X-Atlassian-Token: no-check` header is not specified. - The calling user does not have permission to view the space. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No space exists for the specified `spaceKey`. content: {} '404': description: Returned if no `spaceKey` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: WRITE delete: tags: - Content Watches summary: Atlassian Remove Space Watch description: >- Removes a user as a watcher from a space. Choose the user by doing one of
the following:

- Specify a user via a query parameter: Use the `accountId` to identify the user.
- Do not specify a user: The currently logged-in user will be used.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
'Confluence Administrator' global permission if specifying a user, otherwise
permission to access the Confluence site ('Can use' global permission). operationId: atlassianRemovespacewatch parameters: - name: spaceKey in: path description: The key of the space to remove the watcher from. required: true schema: type: string - $ref: '#/components/parameters/userLookupKey' - $ref: '#/components/parameters/userLookupUsername' - $ref: '#/components/parameters/userLookupAccountId' responses: '204': description: >- Returned if the watcher was successfully deleted. No response body is returned. content: {} '403': description: |- Returned if; - The `X-Atlassian-Token: no-check` header is not specified. - The calling user does not have permission to view the space. - A user is specified via a query parameter and the calling user is not a Confluence administrator. - No space exists for the specified `spaceKey`. content: {} '404': description: Returned if no `spaceKey` is specified. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:confluence-content x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:confluence-content - scheme: oAuthDefinitions state: Beta scopes: - write:watcher:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: WRITE /wiki/rest/api/user/email: get: tags: - Users summary: Atlassian Get User Email Address description: >- Returns a user's email address. This API is only available to apps approved by
Atlassian, according to these [guidelines](https://community.developer.atlassian.com/t/guidelines-for-requesting-access-to-email-address/27603).

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetprivacyunsafeuseremail parameters: - name: accountId in: query description: >- The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, `384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192`. Required. required: true schema: type: string responses: '200': description: Returned if the requested user's email is returned. content: application/json: schema: $ref: '#/components/schemas/AccountIdEmailRecord' '400': description: Returned if the calling app is not approved to use this API. content: {} '401': description: |- Returned if the authentication credentials are incorrect or missing from the request. content: {} '404': description: Returned if a user with the given accountId does not exist. content: {} '501': description: Indicates that the API is not currently enabled. content: {} x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: ACCESS_EMAIL_ADDRESSES /wiki/rest/api/user/email/bulk: get: tags: - Users summary: Atlassian Get User Email Addresses In Batch description: >- Returns user email addresses for a set of accountIds. This API is only available to apps approved by
Atlassian, according to these [guidelines](https://community.developer.atlassian.com/t/guidelines-for-requesting-access-to-email-address/27603).

Any accounts which are not available will not be included in the result.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetprivacyunsafeuseremailbulk parameters: - name: accountId in: query description: The account IDs of the users. required: true style: form explode: false schema: type: array items: type: string responses: '200': description: Returned if the request is successful. content: application/json: schema: $ref: '#/components/schemas/AccountIdEmailRecordArray' '400': description: Returned if the calling app is not approved to use this API. content: {} '401': description: |- Returned if the authentication credentials are incorrect or missing from the request. content: {} '501': description: Indicates that the API is not currently enabled. content: {} x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: ACCESS_EMAIL_ADDRESSES /wiki/rest/api/user/{userId}/property: get: tags: - User Properties summary: Atlassian Get User Properties description: >- Returns the properties for a user as list of property keys. For more information
about user properties, see [Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/).
`Note`, these properties stored against a user are on a Confluence site level and not space/content level.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetuserproperties parameters: - name: userId in: path description: The account ID of the user to be queried for its properties. required: true schema: type: string - name: start in: query description: The starting index of the returned properties. schema: minimum: 0 type: integer format: int32 default: 0 - name: limit in: query description: |- The maximum number of properties to return per page. Note, this may be restricted by fixed system limits. schema: minimum: 0 maximum: 25 type: integer format: int32 default: 5 responses: '200': description: Returned if the requested properties are returned. content: application/json: schema: $ref: '#/components/schemas/UserPropertyKeyArray' '400': description: >- Returned if request has malformed syntax or userId is not a valid user id. content: {} '401': description: >- Returned if the authentication credentials are incorrect or missing from the request. content: {} '403': description: Returned if the user does not have the correct permissions. content: {} '404': description: Returned if there is no user with the given user ID. content: {} security: - basicAuth: [] - oAuthDefinitions: - read:user.property:confluence x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:user.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ /wiki/rest/api/user/{userId}/property/{key}: get: tags: - User Properties summary: Atlassian Get User Property description: >- Returns the property corresponding to `key` for a user. For more information
about user properties, see [Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/).
`Note`, these properties stored against a user are on a Confluence site level and not space/content level.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianGetuserproperty parameters: - name: userId in: path description: The account ID of the user to be queried for its properties. required: true schema: type: string - name: key in: path description: The key of the user property. required: true schema: type: string pattern: ^[-_a-zA-Z0-9]+$ responses: '200': description: Returned if the requested properties are returned. content: application/json: schema: $ref: '#/components/schemas/UserProperty' '400': description: |- Returned if; - The key is too long. - Request has malformed syntax or userId is not a valid user id. content: {} '401': description: >- Returned if the authentication credentials are incorrect or missing from the request. content: {} '403': description: Returned if the user does not have the correct permissions. content: {} '404': description: |- Returned if; - There is no user with the given user ID - There is no user property with the given key content: {} security: - basicAuth: [] - oAuthDefinitions: - read:user.property:confluence x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - read:user.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: READ put: tags: - User Properties summary: Atlassian Update User Property description: >- Updates a property for the given user. Note, you cannot update the key of a user property, only the value.
For more information about user properties, see
[Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/).
`Note`, these properties stored against a user are on a Confluence site level and not space/content level.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianUpdateuserproperty parameters: - name: userId in: path description: >- The account ID of the user. The accountId uniquely identifies the user across all Atlassian products. For example, 384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192 required: true schema: type: string - name: key in: path description: The key of the user property. required: true schema: type: string pattern: ^[-_a-zA-Z0-9]+$ requestBody: description: The user property to be updated. content: application/json: schema: $ref: '#/components/schemas/UserPropertyUpdate' required: true responses: '204': description: Returned if the user property is updated. '400': description: |- Returned if; - The key is too long. - The value is empty. - The value is too long. - Request has malformed syntax or userId is not a valid user id. content: {} '401': description: >- Returned if the authentication credentials are incorrect or missing from the request. content: {} '403': description: Returned if the user does not have the correct permissions. content: {} '404': description: |- Returned if; - There is no user property with the given key. - There is no user with the given user id. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:user.property:confluence x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:user.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE post: tags: - User Properties summary: Atlassian Create User Property By Key description: >- Creates a property for a user. For more information about user properties, see [Confluence entity properties]
(https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/).
`Note`, these properties stored against a user are on a Confluence site level and not space/content level.

`Note:` the number of properties which could be created per app in a tenant for each user might be
restricted by fixed system limits.
**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianCreateuserproperty parameters: - name: userId in: path description: >- The account ID of the user. The accountId uniquely identifies the user across all Atlassian products. For example, 384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192 required: true schema: type: string - name: key in: path description: The key of the user property. required: true schema: type: string pattern: ^[-_a-zA-Z0-9]+$ requestBody: description: The user property to be created. content: application/json: schema: $ref: '#/components/schemas/UserPropertyCreate' required: true responses: '201': description: Returned if the user property is created. '400': description: |- Returned if; - The key is too long. - The value is empty. - The value is too long. - Request has malformed syntax or userId is not a valid user id. content: {} '401': description: >- Returned if the authentication credentials are incorrect or missing from the request. content: {} '403': description: Returned if the user does not have the correct permissions. content: {} '404': description: Returned if there is no user with the given user id. content: {} '409': description: Returned if the key already exists for the user. content: {} security: - basicAuth: [] - oAuthDefinitions: - write:user.property:confluence x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:user.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-codegen-request-body-name: body x-atlassian-connect-scope: WRITE delete: tags: - User Properties summary: Atlassian Delete User Property description: >- Deletes a property for the given user.
For more information about user properties, see
[Confluence entity properties](https://developer.atlassian.com/cloud/confluence/confluence-entity-properties/).
`Note`, these properties stored against a user are on a Confluence site level and not space/content level.

**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:
Permission to access the Confluence site ('Can use' global permission). operationId: atlassianDeleteuserproperty parameters: - name: userId in: path description: >- The account ID of the user. The accountId uniquely identifies the user across all Atlassian products. For example, 384093:32b4d9w0-f6a5-3535-11a3-9c8c88d10192 required: true schema: type: string - name: key in: path description: The key of the user property. required: true schema: type: string pattern: ^[-_a-zA-Z0-9]+$ responses: '204': description: Returned if the user property is deleted. '400': description: |- Returned if; - The key is too long. - Request has malformed syntax or userId is not a valid user id. content: {} '401': description: >- Returned if the authentication credentials are incorrect or missing from the request. content: {} '403': description: Returned if the user does not have the correct permissions. content: {} '404': description: |- Returned if; - There is no user property with the given key - There is no user with the given user id content: {} security: - basicAuth: [] - oAuthDefinitions: - write:user.property:confluence x-atlassian-oauth2-scopes: - scheme: oAuthDefinitions state: Current scopes: - write:user.property:confluence x-atlassian-data-security-policy: - app-access-rule-exempt: true x-atlassian-connect-scope: WRITE components: schemas: UserAnonymous: required: - _links - displayName - profilePicture - type type: object properties: type: type: string profilePicture: $ref: '#/components/schemas/Icon' displayName: type: string operations: type: array items: $ref: '#/components/schemas/OperationCheckResult' isExternalCollaborator: type: boolean description: Whether the user is an external collaborator user _expandable: type: object properties: operations: type: string _links: $ref: '#/components/schemas/GenericLinks' User: required: - type type: object additionalProperties: true nullable: true properties: type: type: string enum: - known - unknown - anonymous - user username: $ref: '#/components/schemas/GenericUserName' userKey: $ref: '#/components/schemas/GenericUserKey' accountId: $ref: '#/components/schemas/GenericAccountId' accountType: type: string description: >- The account type of the user, may return empty string if unavailable. App is if the user is a bot user created on behalf of an Atlassian app. enum: - atlassian - app - '' email: nullable: true type: string description: >- The email address of the user. Depending on the user's privacy setting, this may return an empty string. publicName: type: string description: >- The public name or nickname of the user. Will always contain a value. profilePicture: $ref: '#/components/schemas/Icon' displayName: nullable: true type: string description: >- The displays name of the user. Depending on the user's privacy setting, this may be the same as publicName. timeZone: nullable: true type: string description: >- This displays user time zone. Depending on the user's privacy setting, this may return null. isExternalCollaborator: type: boolean description: Whether the user is an external collaborator user externalCollaborator: type: boolean description: Whether the user is an external collaborator user operations: nullable: true type: array items: $ref: '#/components/schemas/OperationCheckResult' details: $ref: '#/components/schemas/UserDetails' personalSpace: $ref: '#/components/schemas/Space' _expandable: type: object properties: operations: type: string details: type: string personalSpace: type: string _links: $ref: '#/components/schemas/GenericLinks' GroupArrayWithLinks: description: Same as GroupArray but with `_links` property. required: - limit - results - size - start - _links type: object properties: results: type: array items: $ref: '#/components/schemas/Group' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 totalSize: type: integer format: int64 default: 0 description: >- This property will return total count of the objects before pagination is applied. This value is returned if `shouldReturnTotalSize` is set to `true`. _links: $ref: '#/components/schemas/GenericLinks' BulkUserLookupArray: required: - _links - limit - results - size - start type: object properties: results: type: array items: $ref: '#/components/schemas/BulkUserLookup' start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' UserWatch: required: - watching type: object properties: watching: type: boolean AccountIdEmailRecord: required: - accountId - email type: object properties: accountId: type: string email: type: string AccountIdEmailRecordArray: type: array items: $ref: '#/components/schemas/AccountIdEmailRecord' UserPropertyKeyArray: required: - results type: object properties: results: type: array items: type: object properties: key: type: string start: type: integer format: int32 limit: type: integer format: int32 size: type: integer format: int32 _links: $ref: '#/components/schemas/GenericLinks' UserProperty: required: - key - value - id - lastModifiedDate - createdDate type: object properties: key: type: string value: type: object additionalProperties: true properties: {} description: The value of the content property. id: type: string description: a unique identifier for the user property lastModifiedDate: type: string format: date-time description: >- datetime when the property was last modified such as `2022-02-01T12:00:00.111Z` createdDate: type: string format: date-time description: >- datetime when the property was created such as `2022-01-01T12:00:00.111Z` _links: $ref: '#/components/schemas/GenericLinks' x-atlassian-narrative: documents: - title: About anchor: about body: >- This is the reference for the Confluence Cloud REST API. This API is the primary way to get and modify data in Confluence Cloud, whether you are developing an app or any other integration. Use it to interact with Confluence entities, like pages and blog posts, spaces, users, groups, and more. - title: Authentication and authorization anchor: auth body: >- **Authentication:** If you are building a Cloud app, authentication is implemented via JWT or OAuth 2.0, depending on what you are building (see [Security overview](https://developer.atlassian.com/cloud/confluence/security-overview/)). Otherwise, if you are authenticating directly against the REST API, the REST API supports basic auth (see [Basic auth for REST APIs](https://developer.atlassian.com/cloud/confluence/basic-auth-for-rest-apis/)). **Authorization:** If you are building a Cloud app, authorization can be implemented by [scopes](https://developer.atlassian.com/cloud/confluence/scopes/) or by [OAuth 2.0 user impersonation](https://developer.atlassian.com/cloud/confluence/oauth-2-jwt-bearer-tokens-for-apps). Otherwise, if you are making calls directly against the REST API, authorization is based on the user used in the authentication process. See [Security overview](https://developer.atlassian.com/cloud/confluence/security-overview/) for more details on authentication and authorization. - title: Status codes anchor: status-code body: >- The Confluence REST API uses the [standard HTTP status codes](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html). Responses that return an error status code will also return a response body, similar to the following: ```json { "statusCode": 404, "data": { "authorized": false, "valid": false, "errors": [ { "message": { "translation": "This is an example error message.", "args": [] } } ], "successful": false }, "message": "This is an example error message." } ``` - title: Using the REST API anchor: using body: >- **Expansion:** The Confluence REST API uses resource expansion: some parts of a resource are not returned unless explicitly specified. This simplifies responses and minimizes network traffic. To expand part of a resource in a request, use the `expand` query parameter and specify the entities to be expanded. If you need to expand nested entities, use the `.` dot notation. For example, the following request will expand information about the requested content's space and labels: ``` GET /wiki/rest/api/content/{id}?expand=space,metadata.labels ``` **Pagination:** The Confluence REST API uses pagination: a method that returns a response with multiple objects can only return a limited number at one time. This limits the size of responses and conserves server resources. Use the 'limit' and 'start' query parameters to specify pagination: - `limit` is the number of objects to return per page. This may be restricted by system limits. - `start` is the index of the first item returned in the page of results. The base index is 0. For example, the following request will return ten content objects, starting from the fifth object. ``` GET /wiki/rest/api/content?start=4&limit=10 ``` **Special headers:** - `X-Atlassian-Token: no-check` request header must be specified for methods that are protected from Cross Site Request Forgery (XSRF/CSRF) attacks. This is stated in the method description, if required. For more information, see this [KB article](https://confluence.atlassian.com/cloudkb/xsrf-check-failed-when-calling-cloud-apis-826874382.html). - title: Capabilities anchor: capabilities body: >- **Webhooks:** A webhook is a user-defined callback over HTTP. You can use Confluence webhooks to notify your app or web application when certain events occur in Confluence. For example, when a page is created or updated. To learn more, see [Webhooks](https://developer.atlassian.com/cloud/confluence/modules/webhook/). **Content properties:** Content properties are a key-value storage associated with a piece of Confluence content. If you are building an app, this is one form of persistence that you can use. You can use the Confluence REST API to get, update, and delete content properties. To learn more, see [Content properties in the REST API](https://developer.atlassian.com/cloud/confluence/content-properties/). **CQL:** The Confluence Query Language (CQL) allows you to perform complex searches for content using an SQL-like syntax in the `search` resource. To learn more, see [Advanced searching using CQL](https://developer.atlassian.com/cloud/confluence/advanced-searching-using-cql/).