Last updated Feb 12, 2024

Announcement — Introducing 'App User' type on Feb 9, 2023

Summary

To support the development of a new feature, we're introducing a new subtype of the Account definition called App User into the Bitbucket Cloud API. After a 6-month deprecation period, ending on Feb 9, 2023, any API which documents an Account type can start returning App User objects, along with the currently expected Team and User objects.

Why we’re adding the App User type

The App User type represents a new type of Bitbucket Account used by certain integrations and apps. The App User type shares the vast majority of its fields with the User type. However, it has some unique fields so we decided to create a new subtype of Account instead of overloading the User type.

Note that you won’t be able to directly create App User objects via our REST API.

We've included the App User definition in our swagger.json to allow vendors and users to integrate with the new data structure prior to the release date.

The app_user schema

1
2
"app_user": {
    "allOf": [
        {
            "$ref": "#/definitions/account"
        },
        {
            "type": "object",
            "title": "App User",
            "description": "An app user object.",
            "properties": {
                "account_id": {
                    "type": "string",
                    "description": "The user's Atlassian account ID."
                },
                "account_status": {
                    "type": "string",
                    "description": "The status of the account. Currently the only possible value is \"active\", but more values may be added in the future."
                },
                "kind": {
                    "type": "string",
                    "description": "The kind of App User."
                }
            },
            "additionalProperties": true
        }
    ]
}

What action is required?

Although there are many endpoints impacted by these changes, the actual changes should require little or no action from most developers. If you use our swagger.json file to auto-generate client code, you may wish to regenerate your client code.

The app_user object can be treated in an identical manner to a user object, unless you wish to differentiate them. They both share the account_id, account_status, uuid and display_name fields which are the primary fields used.

Which schema objects are affected?

Account changes

  • May return the new App User subtype.

Base Commit changes

  • The author field may return the new App User subtype.

Branch Restriction changes

  • The users array field may return the new App User subtype.
  • The groups array field refers to type Group which has changes (See Group changes)

Branch changes

Branching Model changes

  • The development field refers to type Ref which has changes (See Ref changes)
  • The production field refers to type Ref which has changes (See Ref changes)

Comment changes

  • The user field may return the new App User subtype.

Commit Comment changes

  • The commit field refers to type Commit which has changes (See Commit changes)

Commit File changes

  • The commit field refers to type Commit which has changes (See Commit changes)

Commit changes

  • The author field may return the new App User subtype.
  • The repository field refers to type Repository which has changes (See Repository changes)

Deploy Key changes

  • The repository field refers to a type Repository which has changes (See Repository changes)
  • The owner field may return the new App User subtype.

Deployment Release changes

  • The commit field refers to a type Commit which has changes (See Commit changes)

Deployment State Completed changes

  • The deployer field may return the new App User subtype.

Deployment State In Progress changes

  • The deployer field may return the new App User subtype.

Deployment State changes

Deployment changes

Diff Stat changes

Group changes

  • The owner field may return the new App User subtype.

Issue Change changes

  • The user field may return the new App User subtype.
  • The issue field refers to a type Issue which has changes (See Issue changes)

Issue Comment changes

Issue changes

  • The repository field refers to a type Repository which has changes (See Repository changes)
  • The assignee field may return the new App User subtype.
  • The reporter field may return the new App User subtype.

Paginated Accounts changes

  • The values array field may return the new App User subtype.

Paginated Branches changes

  • The values array field refers to type Branch which has changes (See Branch changes)

Paginated Changeset changes

  • The values array field refers to type Base Commit which has changes (See Base Commit changes)

Paginated Commit Comments changes

Paginated Deploy Keys changes

  • The values array field refers to type Deploy Key which has changes (See Deploy Key changes)

Paginated Deployments changes

  • The values array field refers to type Deployment which has changes (See Deployment changes)

Paginated Diff Stat changes

  • The values array field refers to type Diff Stat which has changes (See Diff Stat changes)

Paginated Files changes

  • The values array field refers to type Commit File which has changes (See Commit File changes)

Paginated Issue Comments changes

Paginated Issues changes

  • The values array field refers to type Issue which has changes (See Issue changes)

Paginated Log Entries changes

Paginated Pipeline Schedule changes

Paginated Pipelines changes

  • The values array field refers to type Pipeline which has changes (See Pipeline changes)

Paginated Pull Request Comments changes

Paginated Pull Requests changes

Paginated Refs changes

  • The values array field refers to type Ref which has changes (See Ref changes)

Paginated Repositories changes

  • The values array field refers to type Repository which has changes (See Repository changes)

Paginated Repository Group Permissions changes

Paginated Repository Permissions changes

Paginated Repository User Permissions changes

Paginated Snippet Comments changes

Paginated Snippet Commits changes

Paginated Snippets changes

  • The values array field refers to type Snippet which has changes (See Snippet changes)

Paginated SSH User Keys changes

Paginated Tags changes

  • The values array field refers to type Tag which has changes (See Tag changes)

Paginated Tree Entry changes

  • The values array field refers to type Tree Entry which has changes (See Tree Entry changes)

Paginated Workspace Memberships changes

Participant changes

  • The user field may return the new App User subtype.

Pipeline Commit Target changes

  • The commit field refers to type Commit which has changes (See Commit changes)

Pipeline Ref Target changes

  • The commit field refers to type Commit which has changes (See Commit changes)

Pipeline Schedule changes

Pipeline Target changes

Pipeline changes

  • The creator field may return the new App User subtype.
  • The target field refers to type Commit which has changes (See Commit changes)

Pipelines Configuration changes

  • The repository field refers to type Repository which has changes (See Repository changes)

Pull Request Comment changes

Pull Request changes

  • The author field may return the new App User subtype.
  • The closed_by field may return the new App User subtype.
  • The reviewers array field may return the new App User subtype.
  • The participants array field refers to type Participant which has changes (See Participant changes)

Ref changes

  • The target field refers to type Commit which has changes (See Commit changes)

Repository Group Permission changes

  • The repository field refers to type Repository which has changes (See Repository changes)
  • The group field refers to type Group which has changes (See Group changes)

Repository Permission changes

  • The repository field refers to type Repository which has changes (See Repository changes)
  • The user field may return the new App User subtype.

Repository User Permission changes

  • The repository field refers to type Repository which has changes (See Repository changes)
  • The user field may return the new App User subtype.

Repository changes

  • The owner field may return the new App User subtype.

search_code_search_result changes

search_result_page changes

Snippet Comment changes

  • The snippet field refers to type Snippet which has changes (See Snippet changes)

Snippet Commit changes

Snippet changes

  • The owner field may return the new App User subtype.
  • The creator field may return the new App User subtype.

SSH Account Key changes

  • The owner field may return the new App User subtype.

Tag changes

Tree Entry changes

  • The commit field refers to type Commit which has changes (See Commit changes)

Workspace Membership changes

  • The user field may return the new App User subtype.

Which API endpoints are affected?

Any API endpoints that return the Account type will be affected. From the release date, they will return one of the three Account subtypes: User, Team, or App User.

The following lists show all the endpoints which will be impacted after the deprecation period is over.

Addon endpoints

No changes

Branch restrictions endpoints

Branching model endpoints

Commit statuses endpoints

No changes

Commits endpoints

Deployments endpoints

Downloads endpoints

No changes

Issue tracker endpoints

Pipelines endpoints

Projects endpoints

No changes

Pullrequests endpoints

Refs changes

Reports changes

No changes

Repository changes

Snippets changes

Source changes

Ssh changes

Team changes

No changes

User changes

Webhooks changes

No changes

Workspaces changes

Other operations changes

Rate this page: