Branch

An Object

A branch is a workspace for your content. Each repository supports one or more branches. You basically create all of your content items in a branch. This includes articles, blog posts, new items, documents, Office files, PDFs, etc. You name it. They go into a branch.

You can have as many branches as you want. Each branch is a completely isolated workspace. Thus, you can create your own branch for your own projects. You can work on those projects and when you're happy with it, you can share it with the rest of the team.

Or, you can create a branch and invite a bunch of people to work with you. They're your own workspaces. You can play with them however you want.

Changesets and Branches

You can think of a branch in the same way as you might think of the tree of a branch. Like that old Maple tree in the backyard when you were a kid. Remember that tree? You used to climb it. Then one day, you fell out of it and now, pretty much, that's all you hear about when you go home for family reunions.

Anyway, yeah, so a branch is like a tree branch. Each tree branch stems from a previous branch. And branches are made up of changesets.

A changeset is a bit like a layer from a transparency. When you write content into a branch, it goes onto a new changeset. Every time you make a change, like when you update something or delete something, it also goes onto a new changeset. And so, in this way, branches grow in length.

Branches also maintain a "tip" view which is the sum total of all changes, creates, updates and deletes that you make while working with the branch. Thus, at all times, the full "changeset history" of everything you've done is maintained but so is a "tip" view that gives you a real-time view of what is effectively a top-most version of all your content.

Note

Drop in one of our language drivers to accelerate your development.
Here are links to some of our popular Cookbooks to help you get started!

Parent

This Branch is contained within a Repository.

Properties

The following properties are available:

Property Type Default Read-Only Description
_doc string No The primary ID
_system object No Metadata maintained by the system

Methods

The following methods are available:

Add Team Member

Adds a principal as a member of a Team against the given branch
POST /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/members/add

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team
id true string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Archive Branch

Archives this branch, tearing down its runtime tip view to free up MongoDB and ElasticSearch resources. No data is lost.
POST /repositories/{repositoryId}/branches/{branchId}/archive

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
You can't create, read, update, query or search content in an archived branch until you unarchive it.

Chain Branches

GET /repositories/{repositoryId}/branches/chain

Parameters

Name Required Type Description
repositoryId true string The ID of the repository

Changeset Diffs

POST /repositories/{repositoryId}/branches/{branchId}/diffs/changeset

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Check Membership

Checks whether a principal belongs to a Team for the given branch
POST /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/members/check

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team
id true string

Response

{
  "type": "object",
  "description": "Belongs",
  "extends": "status",
  "properties": {
    "belongs": {
      "type": "boolean"
    },
    "ok": null
  }
}

Check Permission

Checks whether one or more authorities against the specified branch are granted for a given set of users
POST /repositories/{repositoryId}/branches/{branchId}/permissions/{permissionId}/check

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
permissionId true string The ID of the permission
id true string

Response

{
  "$ref": "#/components/schemas/checkPermission"
}

Check Single Authority

Checks whether a single authority is granted against the specified branch for the given user
POST /repositories/{repositoryId}/branches/{branchId}/authorities/{authorityId}/check

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
authorityId true string The ID or authority key for the authority
id true string

Response

{
  "type": "object",
  "description": "Check",
  "extends": "status",
  "properties": {
    "check": {
      "type": "boolean"
    },
    "ok": null
  }
}

Check multiple Authorities

Checks whether one or more authorities against the specified branch are granted for a given set of users
POST /repositories/{repositoryId}/branches/authorities/check

Parameters

Name Required Type Description
repositoryId true string The ID of the repository

Response

{
  "type": "object",
  "description": "Check Multiple Authorities Out",
  "properties": {
    "checks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "permissionedId": {
            "type": "string"
          },
          "principalId": {
            "type": "string"
          },
          "authorityId": {
            "type": "string"
          },
          "result": {
            "type": "boolean"
          }
        }
      }
    }
  }
}

Check multiple Permissions

Checks whether one or more permissions against the specified branch are granted for a given set of users
POST /repositories/{repositoryId}/branches/permissions/check

Parameters

Name Required Type Description
repositoryId true string The ID of the repository

Response

{
  "type": "object",
  "description": "Check Multiple Permissions Out",
  "properties": {
    "checks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "permissionedId": {
            "type": "string"
          },
          "principalId": {
            "type": "string"
          },
          "permissionId": {
            "type": "string"
          },
          "result": {
            "type": "boolean"
          }
        }
      }
    }
  }
}

Copyfrom Branche

POST /repositories/{repositoryId}/branches/{branchId}/copyfrom

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Count Node

POST /repositories/{repositoryId}/branches/{branchId}/diffs/node/count

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Count Nodeproperty

POST /repositories/{repositoryId}/branches/{branchId}/diffs/nodeproperty/count

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Create Branch

Creates a new Branch
POST /repositories/{repositoryId}/branches

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
changeset true string The ID of the changeset to fork the new branch from
branch false string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Create Indexe

POST /repositories/{repositoryId}/branches/{branchId}/indexes

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Create Snapshot

POST /repositories/{repositoryId}/snapshots

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
changeset true string

Create a Team

Creates a Team against the given branch
POST /repositories/{repositoryId}/branches/{branchId}/teams

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "extends": "document",
  "description": "Team",
  "properties": {
    "teamableObjectTypeId": {
      "type": "string",
      "readonly": true
    },
    "teamableObjectId": {
      "type": "string",
      "readonly": true
    },
    "key": {
      "type": "string"
    },
    "groupId": {
      "type": "string"
    },
    "groupDomainId": {
      "type": "string"
    },
    "roleKeys": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_doc": null,
    "_system": null
  }
}

Delete Branch

Deletes an existing Branch
POST /repositories/{repositoryId}/branches/{branchId}/delete

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Delete Branch

Deletes an existing Branch
DELETE /repositories/{repositoryId}/branches/{branchId}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Delete Indexe

POST /repositories/{repositoryId}/branches/{branchId}/indexes/{name}/delete

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
name true string

Delete Indexe

DELETE /repositories/{repositoryId}/branches/{branchId}/indexes/{name}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
name true string

Delete Snapshot

POST /repositories/{repositoryId}/snapshots/{snapshotId}/delete

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
snapshotId true string

Delete Snapshot

DELETE /repositories/{repositoryId}/snapshots/{snapshotId}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
snapshotId true string

Deletes a Team

Deletes a Team against the given branch
DELETE /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Export Branch

Starts an export job for this resource
POST /repositories/{repositoryId}/branches/{branchId}/export

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
groupId false string The Group ID to be assigned to the exported archive
artifactId false string The Artifact ID to be assigned to the exported archive
versionId false string The Version ID to be assigned to the exported archive
vaultId false string The ID of the vault where the exported archive should be saved
schedule false string Whether to run the job immediately or in the background (either 'synchronous' or 'asynchronous')

Response

{
  "type": "object",
  "description": "Export Configuration",
  "properties": {
    "startDate": {
      "type": "object",
      "description": "Only include objects whose modification date is after this time (epoch millis). This is used for partial or rolling exports."
    },
    "endDate": {
      "type": "object",
      "description": "Only include objects whose modification date is before this time (epoch millis). This is used for partial or rolling exports."
    },
    "startChangeset": {
      "type": "string",
      "description": "Only include data that is relevant to changesets at or beyond the specified changeset."
    },
    "endChangeset": {
      "type": "string",
      "description": "Only include data that is relevant to changesets at or before the specified changeset."
    },
    "includeACLs": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include ACLs during export."
    },
    "includeTeams": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Teams during export."
    },
    "includeActivities": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Activities during export."
    },
    "includeBinaries": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Binaries for data stores during export."
    },
    "includeAttachments": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Attachments for Attachables during export."
    },
    "artifactDependencies": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "artifactIncludes": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "forceIncludes": {
      "type": "boolean"
    }
  }
}

Export Changes

GET /repositories/{repositoryId}/branches/{branchId}/changes/export

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string
view false string

Export Diff

GET /repositories/{repositoryId}/branches/{branchId}/diff/export

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Find Branch Changes

Starts a job to find all the changes made in one branch that would be applied during a merge. The source branch is specified using the 'id' parameter. The target branch is the branch identified by the resource path. A view can be applied using the 'view' parameter (valid value is 'editorial').
POST /repositories/{repositoryId}/branches/{branchId}/changes/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string The ID of the source branch. The target branch is the branch identified by the resource path.
view false string A view to apply. The valid value is editorial.
filter false string
source false string
target false string
force false string

Generate Qnames

POST /repositories/{repositoryId}/branches/{branchId}/qnames/generate

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Get Team

Retrieves a Team against the given branch
GET /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team

Response

{
  "type": "object",
  "extends": "document",
  "description": "Team",
  "properties": {
    "teamableObjectTypeId": {
      "type": "string",
      "readonly": true
    },
    "teamableObjectId": {
      "type": "string",
      "readonly": true
    },
    "key": {
      "type": "string"
    },
    "groupId": {
      "type": "string"
    },
    "groupDomainId": {
      "type": "string"
    },
    "roleKeys": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_doc": null,
    "_system": null
  }
}

Grant Authority

Grants an authority against the specified branch to a given user
POST /repositories/{repositoryId}/branches/{branchId}/authorities/{authorityId}/grant

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
authorityId true string The ID or authority key for the authority
id true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Grant Authority to Team

Assigns an Authority to a Team for the given branch
POST /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/authorities/{authorityId}/grant

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team
authorityId true string The ID or authority key for the authority

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Import Branch

Starts an import job for this resource
POST /repositories/{repositoryId}/branches/{branchId}/import

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
groupId false string The Group ID to be assigned to the exported archive
artifactId false string The Artifact ID to be assigned to the exported archive
versionId false string The Version ID to be assigned to the exported archive
vaultId false string The ID of the vault where the exported archive should be saved
schedule false string Whether to run the job immediately or in the background (either 'synchronous' or 'asynchronous')

Response

{
  "type": "object",
  "description": "Import Configuration",
  "properties": {
    "includeACLs": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include ACLs during import."
    },
    "includeTeams": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Teams during import."
    },
    "includeActivities": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Activities during import."
    },
    "includeBinaries": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Binaries for data stores during import."
    },
    "includeAttachments": {
      "type": "boolean",
      "default": true,
      "description": "Whether to include Attachments for Attachables during import."
    },
    "strategy": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "default": "CLONE",
      "description": "Either CLONE or COPY_EVERYTHING. Use CLONE to keep the same IDs on import. Use COPY_EVERYTHING to generate all new IDs for all entries on every import."
    },
    "substitutions": {
      "type": "string"
    }
  }
}

Index Search

GET /repositories/{repositoryId}/branches/{branchId}/search/index

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Info Deployments

GET /repositories/{repositoryId}/branches/{branchId}/deployments/info

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
state true string

Invalidate Branch Changes

Invalidates any branch changes for the given branch
POST /repositories/{repositoryId}/branches/{branchId}/changes/invalidate

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Behaviors

GET /repositories/{repositoryId}/branches/{branchId}/behaviors

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Definitions

GET /repositories/{repositoryId}/branches/{branchId}/definitions

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Descendants

GET /repositories/{repositoryId}/branches/{branchId}/descendants

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Forks

GET /repositories/{repositoryId}/branches/{branchId}/forks

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Forms

GET /repositories/{repositoryId}/branches/{branchId}/forms

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Indexes

GET /repositories/{repositoryId}/branches/{branchId}/indexes

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Joins

GET /repositories/{repositoryId}/branches/{branchId}/joins

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Merge Conflict Branches

Gets the branches with which this branch has merge conflicts.
GET /repositories/{repositoryId}/branches/{branchId}/merges

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
mergeType false string

List Policies

GET /repositories/{repositoryId}/branches/{branchId}/policies

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
containerOnly false string

List Properties

GET /repositories/{repositoryId}/branches/{branchId}/properties

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
excludeSystem true boolean

List Pull Sources

Finds the other branches from which a branch can safely pull from
GET /repositories/{repositoryId}/branches/{branchId}/pull/sources

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
all false string

List Schemas

GET /repositories/{repositoryId}/branches/{branchId}/schemas

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

List Snapshots

GET /repositories/{repositoryId}/snapshots

Parameters

Name Required Type Description
repositoryId true string The ID of the repository

List Team Authorities

Retrieves a list of the authorities defined to be granted by a Team
GET /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/authorities

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team

Response

{
  "type": "object",
  "description": "List of Authorities",
  "properties": {
    "authorities": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}

List Teams

Lists the Teams against the given branch
GET /repositories/{repositoryId}/branches/{branchId}/teams

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

List Tree

GET /repositories/{repositoryId}/branches/{branchId}/tree/list

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
mode false string
archived true string
snapshots true string
releases true string
editorial true string
active true string
inactive true string
temporary true string

List Tree

GET /repositories/{repositoryId}/branches/tree/list

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
snapshot true string
archived true string
temporary true string

Lists Branch

Retrieves a list of Branch instances
GET /repositories/{repositoryId}/branches

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set
This method supports pagination.

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap_branch"
      }
    }
  }
}

Lists Team Members

Lists the members of a Team against the given branch
GET /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/members

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Merge Branch

Merges a source branch into a target branch. The source branch is specified using the 'id' parameter. The target branch is the branch identified by the resource path.
POST /repositories/{repositoryId}/branches/{branchId}/merge

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string The ID of the source branch. The target branch is the branch identified by the resource path.

Network Branches

POST /repositories/{repositoryId}/branches/network

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
workspace true string

Nodediffs History

GET /repositories/{repositoryId}/branches/{branchId}/history/nodediffs

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
root false string
tip false string
include_root false string

Queries for Branch

Queries for instances of type Branch
POST /repositories/{repositoryId}/branches/query

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set
This method supports pagination.

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap_branch"
      }
    }
  }
}

Query

Queries for matches
POST /repositories/{repositoryId}/branches/{branchId}/behaviors/query

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set
This method supports pagination.

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap"
      }
    }
  }
}

Query

Queries for matches
POST /repositories/{repositoryId}/deployments/verification/query

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set
This method supports pagination.

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap"
      }
    }
  }
}

Query

Queries for matches
POST /repositories/{repositoryId}/branches/{branchId}/definitions/query

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set
This method supports pagination.

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap"
      }
    }
  }
}

Read ACL

Read the Access Control List for the specified branch
GET /repositories/{repositoryId}/branches/{branchId}/acl/list

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Result Map of ACL entries",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "_doc": {
            "type": "string",
            "title": "Principal ID"
          },
          "name": {
            "type": "string",
            "title": "Principal Name"
          },
          "type": {
            "type": "string",
            "title": "Principal Type"
          },
          "domainId": {
            "type": "string"
          },
          "domainQualifiedId": {
            "type": "string"
          },
          "domainQualifiedName": {
            "type": "string"
          },
          "principalId": {
            "type": "string",
            "title": "Principal ID"
          },
          "userEmail": {
            "type": "string"
          },
          "userFirstName": {
            "type": "string"
          },
          "userLastName": {
            "type": "string"
          },
          "authorities": {
            "type": "array",
            "title": "Authorities",
            "items": {
              "type": "string",
              "title": "Authority Key"
            }
          }
        }
      }
    }
  }
}

Read ACL for Principal

Read the Access Control List for the specified branch and the given principal
GET /repositories/{repositoryId}/branches/{branchId}/acl

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Response

{
  "type": "object",
  "description": "Result Map of Authority Keys",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "Authority Key"
      }
    }
  }
}

Read Authorities Report

Read the Authorities Report for the specified branch
POST /repositories/{repositoryId}/branches/{branchId}/authorities

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Authority Report",
  "properties": {
    "principalId": {
      "type": "object",
      "properties": {
        "id": {
          "type": "object",
          "properties": {
            "role-key": {
              "type": "string"
            },
            "principal": {
              "type": "string"
            },
            "permissioned": {
              "type": "string"
            },
            "inheritsFrom": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "principal": {
                  "type": "string"
                },
                "permissioned": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  }
}

Read Branch

Reads an instance of a Branch
GET /repositories/{repositoryId}/branches/{branchId}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "extends": "document",
  "description": "Branch",
  "container": "repository",
  "properties": {
    "_doc": null,
    "_system": null
  }
}

Read Children Definition

GET /repositories/{repositoryId}/branches/{branchId}/definitions/{qname}/children

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
qname true string

Read Conflicting Branche

GET /repositories/{repositoryId}/branches/{branchId}/conflicting

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Read Definition

GET /repositories/{repositoryId}/branches/{branchId}/definitions/{qname}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
qname true string

Read Document

GET /repositories/{repositoryId}/branches/{branchId}/search/index/documents/{docId}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
docId true string

Read Info Branche

GET /repositories/{repositoryId}/branches/{branchId}/info

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Read Qname

GET /repositories/{repositoryId}/branches/{branchId}/qnames/{qname}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
qname true string

Read Schema

GET /repositories/{repositoryId}/branches/{branchId}/schemas/{qname}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
qname true string

Read Snapshot

GET /repositories/{repositoryId}/snapshots/{snapshotId}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
snapshotId true string

Read Tree Branche

GET /repositories/{repositoryId}/branches/{branchId}/tree

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
mode false string
archived true string
snapshots true string
releases true string
editorial true string
active true string
inactive true string
temporary true string

Rebase Branch

Rebases the branch to a different root changeset.
POST /repositories/{repositoryId}/branches/{branchId}/rebase/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Remove Team Member

Remove a principal from a team's membership list
POST /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/members/remove

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team
id true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Reset Branch

Resets the branch to a given prior changeset. This moves the branch head back to the given changeset and deletes the changesets that would otherwise now be dangling. The prior changeset must exist on the branch.
POST /repositories/{repositoryId}/branches/{branchId}/reset/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Revert Branch

Reverts the branch to a given prior changeset. This creates a new changeset whose contents restore the state from a previous changeset. The delta between the prior changeset and the tip is calculated and content operations are performed to effectively restore the prior tip state. The prior changeset must exist on the branch.
POST /repositories/{repositoryId}/branches/{branchId}/revert/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Revert Changes

POST /repositories/{repositoryId}/branches/{branchId}/changes/revert

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Revoke Authority

Revokes an authority against the specified branch from a given user
POST /repositories/{repositoryId}/branches/{branchId}/authorities/{authorityId}/revoke

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
authorityId true string The ID or authority key for the authority
id true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Revoke Authority from Team

Revokes an Authority from a Team for the given branch
POST /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/authorities/{authorityId}/revoke

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team
authorityId true string The ID or authority key for the authority

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Start Cherrypick

POST /repositories/{repositoryId}/branches/{branchId}/cherrypick/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Copyfrom

POST /repositories/{repositoryId}/branches/{branchId}/copyfrom/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string

Start Create

POST /repositories/{repositoryId}/branches/{branchId}/view/create/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Create

POST /repositories/{repositoryId}/branches/create/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branch true string
changeset false string

Start Create

POST /repositories/{repositoryId}/branches/{branchId}/path/index/create/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Create

POST /repositories/{repositoryId}/branches/{branchId}/search/index/create/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Create

POST /repositories/{repositoryId}/branches/{branchId}/embeddings/index/create/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Diff

Starts the diff-ing of a source and target branch. The source branch is specified using the 'id' parameter. The target branch is the branch identified by the resource path.
POST /repositories/{repositoryId}/branches/{branchId}/diff/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string The ID of the source branch. The target branch is the branch identified by the resource path.

Start Drop

POST /repositories/{repositoryId}/branches/{branchId}/embeddings/index/drop/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Drop

POST /repositories/{repositoryId}/branches/{branchId}/search/index/drop/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start History

POST /repositories/{repositoryId}/branches/{branchId}/history/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
root false string
tip false string
include_root false string
view false string

Start Merge

Starts the merging of a source branch into a target branch. The source branch is specified using the 'id' parameter. The target branch is the branch identified by the resource path.
POST /repositories/{repositoryId}/branches/{branchId}/merge/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
id true string The ID of the source branch. The target branch is the branch identified by the resource path.
dryRun false boolean
The merge runs as a background job. The response holds the job ID (_doc); poll the job to see when it completes and how the merge went.

Start Recreatefilenames

POST /repositories/{repositoryId}/branches/{branchId}/nodes/recreatefilenames/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Repair

POST /repositories/{repositoryId}/branches/{branchId}/repair/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
commit false string

Start Snapshots

POST /repositories/{repositoryId}/snapshots/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
changeset true string

Start Validate

POST /repositories/{repositoryId}/branches/{branchId}/search/index/validate/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
repair false string

Start Validate

POST /repositories/{repositoryId}/branches/{branchId}/nodes/validate/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Start Validate

POST /repositories/{repositoryId}/branches/{branchId}/path/index/validate/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
repair false string

Start Verification

POST /repositories/{repositoryId}/branches/{branchId}/deployments/verification/start

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
state true string

Stats Diffs

POST /repositories/{repositoryId}/branches/{branchId}/diffs/stats

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Summarize Access Policy

Retrieves an access policy summary for a Team on the given branch
GET /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}/access/policies/summary

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team
scope false string
info false string
order false string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Tree Branches

GET /repositories/{repositoryId}/branches/tree

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
snapshot true string
archived true string
temporary true string

Unarchive Branch

Restores the runtime tip view of an archived branch, so that its content can be worked with again
POST /repositories/{repositoryId}/branches/{branchId}/unarchive

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Update Branch

Updates an existing Branch
POST /repositories/{repositoryId}/branches/{branchId}/update

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Update Branch

Updates an existing Branch
PUT /repositories/{repositoryId}/branches/{branchId}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Update a Team

Updates a Team against the given branch
PUT /repositories/{repositoryId}/branches/{branchId}/teams/{teamKey}

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
teamKey true string The key identifier for the team

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Validate Definition

POST /repositories/{repositoryId}/branches/{branchId}/definitions/{qname}/validate

Parameters

Name Required Type Description
repositoryId true string The ID of the repository
branchId true string The ID of the branch
qname true string

Schema


{
  "type": "object",
  "extends": "document",
  "description": "Branch",
  "container": "repository",
  "properties": {
    "_doc": null,
    "_system": null
  },
  "id": "branch"
}