Documentation

​
​

Development

User Acquisition

Monetization

Industry

Unity Version Control Client API

v1

Supported
​

Unity Version Control Client API

v1

Supported
​

Unity Services Web APIs
​
​
Endpoints
  • activity
  • annotation
  • attribute
  • branch
  • changeset
  • code review
  • integration
  • label
  • lock
  • lock rule
  • merge
  • merge rule
  • merge-bot
  • network permission
  • notifications
  • organization
  • organizations
  • permission
  • repository
  • revision
  • user
  • user group
  • vcs

Unity Version Control Client API

Unity Version Control client-facing APIs for working with VCS repositories attached to Unity Build Automation projects. Supports user JWTs, End User Service Account API keys (basic auth), and End User Service Account bearer tokens (
Authorization: Bearer unity_sa_bt.<id>.<secret>
).
Download OpenAPI specification:

GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories


List repositories from the VCS provider without going through UBA's stored SCM credentials. GitHub: caller supplies a personal access token in the
x-vcs-pat
header. UVCS: no header required. The gateway-authenticated user identity and URL org/project identify the target.

Path parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories"

organizationId

string
required
No description

projectId

string
required
No description

Header parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories"

x-vcs-pat

string
GitHub personal access token. Required when
providerType=GITHUB
; ignored for UVCS. Never logged.

Query parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories"

providerType

string
required
Provider identifier (
GITHUB
or
UVCS
).

limit

number
default: 30
Page size. Defaults to 30.

next

string
Opaque cursor returned in a previous response as
cursor.next
.

previous

string
Opaque cursor returned in a previous response as
cursor.previous
.

HTTP response status codes for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories":

Code samples for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories":

Request example

curl -X GET \ -H "x-vcs-pat: <x-vcs-pat>" \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories"

Response example

{ "results": [ { "name": "string", "id": "string", "description": "string", "defaultBranch": "string", "url": "string", "fullName": "string", "cloneUrl": "string", "owner": { "login": "string" } } ], "cursor": { "next": "string", "previous": "string" }, "limit": 0}

GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches


List branches in a VCS repository. Two auth modes on the same route. Omit
providerType
for the default flow, which resolves credentials via UBA scm-credentials. Set
providerType=GITHUB
with the PAT in
x-vcs-pat
, or
providerType=UVCS
with no header, to skip the UBA lookup and use the caller-supplied or gateway-authenticated credential directly.

Path parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

Header parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

x-vcs-pat

string
GitHub personal access token. Required when
providerType=GITHUB
; ignored otherwise. Never logged.

Query parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

providerType

string
GITHUB
or
UVCS
. When present, the credential-in-header flow handles the request and bypasses UBA. When absent, the UBA-backed listing handles it.

limit

number
default: 30
Page size. Defaults to 30.

next

string
Opaque cursor returned in a previous response as
cursor.next
.

previous

string
Opaque cursor returned in a previous response as
cursor.previous
.

HTTP response status codes for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches":

Code samples for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches":

Request example

curl -X GET \ -H "x-vcs-pat: <x-vcs-pat>" \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

Response example

{ "results": [ { "name": "string", "id": 0, "description": "string", "author": "string", "lastChangesetName": "string", "lastChangesetComment": "string", "lastChangesetId": 0, "lastActivityDate": "2024-01-01T00:00:00Z", "creationDate": "2024-01-01T00:00:00Z", "status": "string", "canBeDeleted": true, "numberOfReviews": 0, "numberOfChangesets": 0, "isMain": true, "pulls": [ { "id": 0, "title": "string", "description": "string", "status": "string", "sourceBranch": "string", "targetBranch": "string" } ] } ], "cursor": { "next": "string", "previous": "string" }, "limit": 0}

POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches


Fork a new branch from an existing one. UVCS resolves
fromBranch
to its head changeset and POSTs to Plastic's
/branches
. GitHub looks up the source ref's commit SHA and POSTs to
/git/refs
.

Path parameters for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

Request body for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

Media Type:
application/json

name

string
required
New branch name. UVCS expects a leading "/" (Plastic adds one if missing). GitHub treats it as a plain ref name (no leading "/").

fromBranch

string
required
Existing branch to fork from. Its current head becomes the new branch's parent.

comment

string
Optional description. UVCS only; GitHub ignores it.

HTTP response status codes for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches":

Code samples for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "name": "string", "fromBranch": "string", "comment": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches"

Response example

{ "name": "string", "id": 0, "description": "string", "author": "string", "lastChangesetName": "string", "lastChangesetComment": "string", "lastChangesetId": 0, "lastActivityDate": "2024-01-01T00:00:00Z", "creationDate": "2024-01-01T00:00:00Z", "status": "string", "canBeDeleted": true, "numberOfReviews": 0, "numberOfChangesets": 0, "isMain": true, "pulls": [ { "id": 0, "title": "string", "description": "string", "status": "string", "sourceBranch": "string", "targetBranch": "string" } ]}

GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets


List changesets / commits on a branch.

Path parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

branchName

string
required
No description

Query parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

limit

number
default: 30
Page size for GET. Defaults to 30. Ignored by POST.

next

string
Opaque cursor (for GET) returned in a previous response as
cursor.next
.

previous

string
Opaque cursor (for GET) returned in a previous response as
cursor.previous
.

HTTP response status codes for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets":

Code samples for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

Response example

{ "results": [ { "id": 0, "name": "string", "guid": "string", "branchName": "string", "branchId": 0, "comment": "string", "authorName": "string", "date": "2024-01-01T00:00:00Z", "labels": [ "string" ], "canBeDeleted": true, "hasCodeReview": true, "codeReviewIds": [ 0 ], "merges": [ {} ], "createdByMe": true } ], "cursor": { "next": "string", "previous": "string" }, "limit": 0}

POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets


Create a changeset on the branch from previously-uploaded files.

Path parameters for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

branchName

string
required
No description

Query parameters for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

limit

number
default: 30
Page size for GET. Defaults to 30. Ignored by POST.

next

string
Opaque cursor (for GET) returned in a previous response as
cursor.next
.

previous

string
Opaque cursor (for GET) returned in a previous response as
cursor.previous
.

Request body for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

Media Type:
application/json

comment

string
Changeset / commit message.

changes

array[object]
required
No description

changeType

string
required
No description

itemType

string
No description

path

string
required
Repository path of the item.

content

string
fileUploadId
returned by the file-upload endpoint.

md5

string
MD5 checksum of the uploaded bytes.

dstPath

string
Destination path for
Moved
changes.

symlinkPath

string
Link target for
Symlink
items.

HTTP response status codes for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets":

Code samples for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "changes": [ { "changeType": "Added", "itemType": "Text", "path": "string", "content": "string", "md5": "string", "dstPath": "string", "symlinkPath": "string" } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/changesets"

Response example

{ "id": 0, "name": "string", "guid": "string", "branchName": "string", "branchId": 0, "comment": "string", "authorName": "string", "date": "2024-01-01T00:00:00Z", "labels": [ "string" ], "canBeDeleted": true, "hasCodeReview": true, "codeReviewIds": [ 0 ], "merges": [ {} ], "createdByMe": true}

POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/file-upload


Upload the full bytes of a single file. The gateway accepts Content-Type application/offset+octet-stream, Unity's standard binary media type. Plain application/octet-stream is not on the gateway allowlist. Per-file cap is 75 MB (raw bytes).

Path parameters for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/file-upload"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

Request body for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/file-upload"

Media Type:
application/offset+octet-stream
Schema:
Raw file bytes.
"string"

HTTP response status codes for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/file-upload":

Code samples for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/file-upload":

Request example

curl -X POST \ -H "Content-Type: application/offset+octet-stream" \ -d '"string"' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/file-upload"

Response example

{ "fileUploadId": "string", "md5": "string"}

POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/pulls


Create a pull request / code review.

Path parameters for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/pulls"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

Request body for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/pulls"

Media Type:
application/json

title

string
required
No description

sourceBranch

string
required
Source branch (GitHub head / UVCS code-review branch).

targetBranch

string
Target branch. Required for GitHub (used as the PR
base
). Ignored by UVCS, which anchors Plastic code reviews on the source branch only.

baseBranch

string
Alias for
targetBranch
; targetBranch wins when both are sent.

description

string
No description

reviewers

array[string]
Reviewer user emails to assign.

HTTP response status codes for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/pulls":

Code samples for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/pulls":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "title": "string", "sourceBranch": "string", "targetBranch": "string", "baseBranch": "string", "description": "string", "reviewers": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/pulls"

Response example

{ "id": 0, "title": "string", "description": "string", "sourceBranch": "string", "targetBranch": "string", "author": "string", "status": "string", "createdAt": "2024-01-01T00:00:00Z", "updatedAt": "2024-01-01T00:00:00Z", "url": "string"}

POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/merges


Merge a VCS branch into another. UVCS posts to /mergeto (sourceType=branch); GitHub posts to /repos/.../merges. sourceBranch and targetBranch are both required.

Path parameters for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/merges"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

Request body for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/merges"

Media Type:
application/json

comment

string
Merge commit message. UVCS comment / GitHub commit_message.

sourceBranch

string
required
Branch to merge from. UVCS branch path or GitHub head ref.

targetBranch

string
required
Branch to merge into. UVCS branch path or GitHub base ref.

HTTP response status codes for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/merges":

Code samples for "POST /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/merges":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "sourceBranch": "string", "targetBranch": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/merges"

Response example

{ "status": "OK", "revision": "string", "message": "string"}

GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/build-status


Return the latest successful + currently in-progress build for the given build target, with the file diffs for "files being built" and "pending changes after the latest build".

Path parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/build-status"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

branchName

string
required
No description

Query parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/build-status"

buildTargetId

string
required
Unity Build Automation build target id to inspect.

HTTP response status codes for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/build-status":

Code samples for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/build-status":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/build-status"

Response example

{ "lastSuccessful": { "buildNumber": 0, "scmBranch": "string", "scmCommitId": "string", "status": "queued", "startedAt": "2024-01-01T00:00:00Z", "finishedAt": "2024-01-01T00:00:00Z" }, "inProgress": { "buildNumber": 0, "scmBranch": "string", "scmCommitId": "string", "status": "queued", "startedAt": "2024-01-01T00:00:00Z", "finishedAt": "2024-01-01T00:00:00Z" }, "status": "not_started"}

GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/vcs-status


Return the VCS-side state of a branch: current head revision, parent (destination) branch with its merge-target tip and fork point, and files introduced on this branch (diff from forkPoint to head).

Path parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/vcs-status"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

branchName

string
required
No description

Query parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/vcs-status"

buildTargetId

string
Unity Build Automation build target id. When provided, each
pendingFiles
entry carries a
pending
flag. The flag marks paths not yet captured by the most recent successful build for the target.

HTTP response status codes for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/vcs-status":

Code samples for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/vcs-status":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/vcs-status"

Response example

{ "branchHead": { "revision": "string" }, "destinationBranch": { "name": "string", "revision": "string", "forkPoint": "string" }, "pendingFiles": [ { "path": "string", "changeType": "Added", "size": 0, "srcPath": "string", "itemType": "Text", "pending": true, "revisionId": "string" } ], "processing": [ { "path": "string", "changeType": "Added", "size": 0, "srcPath": "string", "itemType": "Text", "pending": true, "revisionId": "string" } ]}

GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/files/{filePath}/source-url


Return a signed, downloadable URL for the bytes of the file on the given branch. UVCS mints a JWT-signed URL with a short TTL; GitHub returns the contents API's download_url (pre-signed for private repos, plain raw URL for public).

Path parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/files/{filePath}/source-url"

organizationId

string
required
No description

projectId

string
required
No description

repository

string
required
No description

branchName

string
required
No description

filePath

string
required
No description

Query parameters for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/files/{filePath}/source-url"

revisionId

string
Provider-native revision id. UVCS: numeric per-file revisionId from a build-status diff entry. GitHub: a commit SHA. When omitted, the URL targets the latest revision of the file on the branch.

HTTP response status codes for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/files/{filePath}/source-url":

Code samples for "GET /organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/files/{filePath}/source-url":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationId}/projects/{projectId}/vcs/repositories/{repository}/branches/{branchName}/files/{filePath}/source-url"

Response example

{ "url": "string"}

GET /organizations/{organizationName}


Get organization details by name.

Path parameters for "GET /organizations/{organizationName}"

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "GET /organizations/{organizationName}":

Code samples for "GET /organizations/{organizationName}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PATCH /organizations/{organizationName}


Update organization fields by name.

Path parameters for "PATCH /organizations/{organizationName}"

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "PATCH /organizations/{organizationName}":

Code samples for "PATCH /organizations/{organizationName}":

Request example

curl -X PATCH \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/projects/{projectId}/repositories


List repositories under a project for the organization.

Path parameters for "GET /organizations/{organizationName}/projects/{projectId}/repositories"

organizationName

string
required
Path parameter organizationName

projectId

string
required
Project ID

HTTP response status codes for "GET /organizations/{organizationName}/projects/{projectId}/repositories":

Code samples for "GET /organizations/{organizationName}/projects/{projectId}/repositories":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/projects/{projectId}/repositories"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

POST /organizations/{organizationName}/projects/{projectId}/repositories


Create a repository under a project for the organization.

Path parameters for "POST /organizations/{organizationName}/projects/{projectId}/repositories"

organizationName

string
required
Path parameter organizationName

projectId

string
required
Project ID

HTTP response status codes for "POST /organizations/{organizationName}/projects/{projectId}/repositories":

Code samples for "POST /organizations/{organizationName}/projects/{projectId}/repositories":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/projects/{projectId}/repositories"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories


List repositories for the organization.

Path parameters for "GET /organizations/{organizationName}/repositories"

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "GET /organizations/{organizationName}/repositories":

Code samples for "GET /organizations/{organizationName}/repositories":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

POST /organizations/{organizationName}/repositories


Create a repository for the organization.

Path parameters for "POST /organizations/{organizationName}/repositories"

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "POST /organizations/{organizationName}/repositories":

Code samples for "POST /organizations/{organizationName}/repositories":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get organization activity


Get organization activity

Path parameters for "Get organization activity"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get organization activity"

startDate

string
required
No description

endDate

string
required
No description

HTTP response status codes for "Get organization activity":

Code samples for "Get organization activity":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/activities"

Response example

{ "activeUsers": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "automaticSolvedFileConflicts": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "branchExplorerViews": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "changesets": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "crossFileDiffsUsage": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "dataStored": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "diffsPerformed": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "downloadedGb": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "imageDiffsUsage": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "keyOperationsNewBranches": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "manualSolvedFileConflicts": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "newBranches": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "semanticDiffUsage": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "solvedDirectoryConflicts": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }, "xDiffsUsage": { "dataset": [ { "date": "2024-01-01T00:00:00Z", "value": 0 } ], "trend": 0, "average": 0 }}

Get organization code reviews


Get a paginated list of code reviews for an organization.

Path parameters for "Get organization code reviews"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get organization code reviews"

limit

number
No description

order

string
No description

next

string
No description

previous

string
No description

filterTargets

string
required
JSON array of target types and ids in format [["branch"|"changeset"|"label", number]]

filterBranchNames

array
required
Comma separated list of branch names

filterBranchIds

array
required
Comma separated list of branch ids

filterStatus

array
required
Comma separated list of code review statuses

filterReviewerStatus

array
required
Comma separated list of code review statuses

filterOwner

array
required
Comma separated list of owner emails

filterReviewer

array
required
Comma separated list of reviewer emails

filterRepoNames

array
required
Comma separated list of repository names

orderBy

string
required
No description

HTTP response status codes for "Get organization code reviews":

Code samples for "Get organization code reviews":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/code-reviews"

Response example

{ "limit": 0, "offset": 0, "total": 0, "results": [ { "assignee": "string", "comments": [ { "type": "Comment", "id": 0, "uuid": "string", "owner": "user@example.com", "timestamp": "2024-01-01T00:00:00Z", "createdAt": "2024-01-01T00:00:00Z", "updatedAt": "2024-01-01T00:00:00Z", "itemId": 0, "itemPath": "string", "revisionId": 0, "locationSpec": "string", "commentText": "string", "reviewId": 0, "parentCommentId": 0, "changesetId": 0, "appliedInChangesetId": 0, "branchChangesetId": 0 } ], "commentsCount": 0, "createdAt": "2024-01-01T00:00:00Z", "description": "string", "id": 0, "mergeAllowed": true, "mergeIssues": "string", "merges": [ { "sourceChangesetId": 0, "sourceBranchId": 0, "sourceBranchName": "string", "destinationChangesetId": 0, "destinationBranchId": 0, "destinationBranchName": "string", "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "author": "string", "comment": "string" } ], "numberOfIssues": 0, "object": { "type": "branch", "spec": "string", "id": 0 }, "owner": "string", "repositoryName": "string", "reviewers": [ { "name": "user@example.com", "isGroup": true, "status": "under-review" } ], "status": "under-review", "title": "string", "unansweredQuestionsCount": 0, "updatedAt": "2024-01-01T00:00:00Z", "userCommentsCount": 0 } ]}

Get an organization consumption


Get an organization consumption

Path parameters for "Get an organization consumption"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get an organization consumption"

startDate

string
required
No description

endDate

string
required
No description

HTTP response status codes for "Get an organization consumption":

Code samples for "Get an organization consumption":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/consumption"

Response example

{ "results": [ { "date": "2024-01-01T00:00:00Z", "networkUsageChange": 0, "storageChange": 0, "storageTotal": 0 } ]}

Get integrations


Get integrations

Path parameters for "Get integrations"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Get integrations":

Code samples for "Get integrations":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations"

Response example

[ { "channelWebhook": "string", "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "type": "string" }]

Delete integrations


Delete integrations

Path parameters for "Delete integrations"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Delete integrations"

Media Type:
application/json

ids

array[number]
required
No description

HTTP response status codes for "Delete integrations":

Code samples for "Delete integrations":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "ids": [ 0 ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations"

Response example

{ "failures": [ 0 ]}

Create a discord integration


Create a discord integration

Path parameters for "Create a discord integration"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Create a discord integration"

Media Type:
application/json

channelWebhook

string
required
No description

events

array[string]
required
No description

filters

string
required
No description

name

string
required
No description

repositories

array[string]
required
No description

HTTP response status codes for "Create a discord integration":

Code samples for "Create a discord integration":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "channelWebhook": "string", "events": [ "string" ], "filters": "string", "name": "string", "repositories": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations/discord"

Response example

{ "channelWebhook": "string", "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "type": "string"}

Replace a discord integration


Replace a discord integration

Path parameters for "Replace a discord integration"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

id

number
required
No description

Request body for "Replace a discord integration"

Media Type:
application/json

channelWebhook

string
required
No description

events

array[string]
required
No description

filters

string
required
No description

name

string
required
No description

repositories

array[string]
required
No description

HTTP response status codes for "Replace a discord integration":

Code samples for "Replace a discord integration":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "channelWebhook": "string", "events": [ "string" ], "filters": "string", "name": "string", "repositories": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations/discord/{id}"

Response example

{ "channelWebhook": "string", "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "type": "string"}

Create a slack integration


Create a slack integration

Path parameters for "Create a slack integration"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Create a slack integration"

Media Type:
application/json

botOauthToken

string
required
No description

events

array[string]
required
No description

filters

string
required
No description

name

string
required
No description

repositories

array[string]
required
No description

slackChannel

string
required
No description

HTTP response status codes for "Create a slack integration":

Code samples for "Create a slack integration":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "botOauthToken": "string", "events": [ "string" ], "filters": "string", "name": "string", "repositories": [ "string" ], "slackChannel": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations/slack"

Response example

{ "botOauthToken": "string", "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "slackChannel": "string", "type": "string"}

Replace a slack integration


Replace a slack integration

Path parameters for "Replace a slack integration"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

id

number
required
No description

Request body for "Replace a slack integration"

Media Type:
application/json

botOauthToken

string
required
No description

events

array[string]
required
No description

filters

string
required
No description

name

string
required
No description

repositories

array[string]
required
No description

slackChannel

string
required
No description

HTTP response status codes for "Replace a slack integration":

Code samples for "Replace a slack integration":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "botOauthToken": "string", "events": [ "string" ], "filters": "string", "name": "string", "repositories": [ "string" ], "slackChannel": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations/slack/{id}"

Response example

{ "botOauthToken": "string", "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "slackChannel": "string", "type": "string"}

Create a webhook integration


Create a webhook integration

Path parameters for "Create a webhook integration"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Create a webhook integration"

Media Type:
application/json

events

array[string]
required
No description

filters

string
required
No description

name

string
required
No description

repositories

array[string]
required
No description

url

string
required
No description

HTTP response status codes for "Create a webhook integration":

Code samples for "Create a webhook integration":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "events": [ "string" ], "filters": "string", "name": "string", "repositories": [ "string" ], "url": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations/webhook"

Response example

{ "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "type": "string", "url": "string"}

Replace a webhook integration


Replace a webhook integration

Path parameters for "Replace a webhook integration"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

id

number
required
No description

Request body for "Replace a webhook integration"

Media Type:
application/json

events

array[string]
required
No description

filters

string
required
No description

name

string
required
No description

repositories

array[string]
required
No description

url

string
required
No description

HTTP response status codes for "Replace a webhook integration":

Code samples for "Replace a webhook integration":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "events": [ "string" ], "filters": "string", "name": "string", "repositories": [ "string" ], "url": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/integrations/webhook/{id}"

Response example

{ "events": [ "string" ], "failures": [ { "message": "string", "status": "string" } ], "filters": "string", "id": 0, "name": "string", "organizationName": "string", "repositories": [ "string" ], "type": "string", "url": "string"}

Get organization lock rule


Get organization lock rule

Path parameters for "Get organization lock rule"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Get organization lock rule":

Code samples for "Get organization lock rule":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/lock-rule"

Response example

{ "excludedBranches": [ "string" ], "fileExtensions": "string", "targetBranch": "string", "targetBranches": [ "string" ]}

Change the organization lock rule


Change the organization lock rule

Path parameters for "Change the organization lock rule"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Change the organization lock rule"

Media Type:
application/json

excludedBranches

array[string]
No description

fileExtensions

string
required
No description

targetBranch

string
No description

targetBranches

array[string]
No description

HTTP response status codes for "Change the organization lock rule":

Code samples for "Change the organization lock rule":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "excludedBranches": [ "string" ], "fileExtensions": "string", "targetBranch": "string", "targetBranches": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/lock-rule"

Response example

{ "excludedBranches": [ "string" ], "fileExtensions": "string", "targetBranch": "string", "targetBranches": [ "string" ]}

Delete an organization lock rule


Delete an organization lock rule

Path parameters for "Delete an organization lock rule"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Delete an organization lock rule":

Code samples for "Delete an organization lock rule":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/lock-rule"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get assigned code reviews


From recent repositories, ie: repositories that have received changes

Path parameters for "Get assigned code reviews"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get assigned code reviews"

numberOfRecentRepositories

integer
required
No description

HTTP response status codes for "Get assigned code reviews":

Code samples for "Get assigned code reviews":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/me/assigned-code-reviews"

Response example

{ "results": [ { "numberOfCodeReviews": 0, "repositoryName": "string" } ]}

GET /organizations/{organizationName}/merge-bots


List merge bots configured for the organization.

Path parameters for "GET /organizations/{organizationName}/merge-bots"

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "GET /organizations/{organizationName}/merge-bots":

Code samples for "GET /organizations/{organizationName}/merge-bots":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/merge-bots"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get merge bot plug definitions


Get merge bot plug definitions

Path parameters for "Get merge bot plug definitions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Get merge bot plug definitions":

Code samples for "Get merge bot plug definitions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/merge-bots/plug-definitions"

Response example

{ "results": [ { "buildIn": true, "configuration": [ {} ], "description": "string", "name": "string", "type": "string" } ]}

Get merge rules


Get merge rules

Path parameters for "Get merge rules"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Get merge rules":

Code samples for "Get merge rules":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/merge-rules"

Response example

{ "results": [ { "condition": "string", "destination": { "branchesNamesPattern": [ "string" ], "attributes": [ { "name": null, "value": null } ] }, "id": 0, "isEnabled": true, "repositoriesPattern": [ "string" ], "source": { "branchesNamesPattern": [ "string" ], "attributes": [ { "name": null, "value": null } ] } } ]}

Create a merge rule


Create a merge rule

Path parameters for "Create a merge rule"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Create a merge rule"

Media Type:
application/json

condition

string
required
No description

destination

object
required
No description

attributes

array[object]
required
No description

name

string
required
No description

value

string
required
No description

branchesNamesPattern

array[string]
required
No description

isEnabled

boolean
required
No description

repositoriesPattern

array[string]
required
No description

source

object
required
No description

attributes

array[object]
required
No description

name

string
required
No description

value

string
required
No description

branchesNamesPattern

array[string]
required
No description

HTTP response status codes for "Create a merge rule":

Code samples for "Create a merge rule":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "condition": "string", "destination": { "attributes": [ { "name": "string", "value": "string" } ], "branchesNamesPattern": [ "string" ] }, "isEnabled": true, "repositoriesPattern": [ "string" ], "source": { "attributes": [ { "name": "string", "value": "string" } ], "branchesNamesPattern": [ "string" ] }}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/merge-rules"

Response example

{ "condition": "string", "destination": { "branchesNamesPattern": [ "string" ], "attributes": [ { "name": "string", "value": "string" } ] }, "id": 0, "isEnabled": true, "repositoriesPattern": [ "string" ], "source": { "branchesNamesPattern": [ "string" ], "attributes": [ { "name": "string", "value": "string" } ] }}

Delete merge rules


Delete merge rules

Path parameters for "Delete merge rules"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Delete merge rules"

Media Type:
application/json

ids

array[number]
required
No description

HTTP response status codes for "Delete merge rules":

Code samples for "Delete merge rules":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "ids": [ 0 ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/merge-rules"

Response example

{ "failures": [ 0 ]}

Replace a merge rule


Replace a merge rule

Path parameters for "Replace a merge rule"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

id

number
required
No description

Request body for "Replace a merge rule"

Media Type:
application/json

condition

string
required
No description

destination

object
required
No description

attributes

array[object]
required
No description

name

string
required
No description

value

string
required
No description

branchesNamesPattern

array[string]
required
No description

id

number
required
No description

isEnabled

boolean
required
No description

repositoriesPattern

array[string]
required
No description

source

object
required
No description

attributes

array[object]
required
No description

name

string
required
No description

value

string
required
No description

branchesNamesPattern

array[string]
required
No description

HTTP response status codes for "Replace a merge rule":

Code samples for "Replace a merge rule":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "condition": "string", "destination": { "attributes": [ { "name": "string", "value": "string" } ], "branchesNamesPattern": [ "string" ] }, "id": 0, "isEnabled": true, "repositoriesPattern": [ "string" ], "source": { "attributes": [ { "name": "string", "value": "string" } ], "branchesNamesPattern": [ "string" ] }}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/merge-rules/{id}"

Response example

{ "condition": "string", "destination": { "branchesNamesPattern": [ "string" ], "attributes": [ { "name": "string", "value": "string" } ] }, "id": 0, "isEnabled": true, "repositoriesPattern": [ "string" ], "source": { "branchesNamesPattern": [ "string" ], "attributes": [ { "name": "string", "value": "string" } ] }}

Get network permissions


Get network permissions

Path parameters for "Get network permissions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Get network permissions":

Code samples for "Get network permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/network-permissions"

Response example

{ "organizationName": "string", "permissions": "string"}

Change network permissions


Change network permissions

Path parameters for "Change network permissions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Change network permissions"

Media Type:
application/json

permissions

string
required
No description

HTTP response status codes for "Change network permissions":

Code samples for "Change network permissions":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "permissions": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/network-permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/notifications


Gets the email notification settings for the organization.

Path parameters for "GET /organizations/{organizationName}/notifications"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "GET /organizations/{organizationName}/notifications":

Code samples for "GET /organizations/{organizationName}/notifications":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/notifications"

Response example

{ "id": 0, "organizationName": "string", "repositories": [ "string" ]}

POST /organizations/{organizationName}/notifications


Enables email notifications for the organization.

Path parameters for "POST /organizations/{organizationName}/notifications"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "POST /organizations/{organizationName}/notifications"

Media Type:
application/json

repositories

array[string]
No description

HTTP response status codes for "POST /organizations/{organizationName}/notifications":

Code samples for "POST /organizations/{organizationName}/notifications":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "repositories": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/notifications"

Response example

{ "id": 0, "organizationName": "string", "repositories": [ "string" ]}

DELETE /organizations/{organizationName}/notifications


Disables email notifications for the organization.

Path parameters for "DELETE /organizations/{organizationName}/notifications"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "DELETE /organizations/{organizationName}/notifications":

Code samples for "DELETE /organizations/{organizationName}/notifications":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/notifications"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get organization permissions


Get permissions for an organization by name.

Path parameters for "Get organization permissions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get organization permissions"

endUserType

string
No description

endUserName

string
No description

HTTP response status codes for "Get organization permissions":

Code samples for "Get organization permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/permissions"

Response example

{ "permissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}

Patch an organization permissions


Patch an organization permissions

Path parameters for "Patch an organization permissions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Patch an organization permissions"

Media Type:
application/json

endUsersPermissions

array[object]
required
No description

name

string
required
No description

type

string
required
No description

permissions

array[object]
required
No description

name

string
required
No description

isOverride

boolean
required
No description

isEnabled

boolean
required
No description

valueInherited

boolean
No description

HTTP response status codes for "Patch an organization permissions":

Code samples for "Patch an organization permissions":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "endUsersPermissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get profiles


Get profiles of users in the organization

Path parameters for "Get profiles"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get profiles"

limit

number
No description

order

string
No description

offset

number
No description

orderBy

string
No description

HTTP response status codes for "Get profiles":

Code samples for "Get profiles":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/profiles"

Response example

{ "limit": 0, "offset": 0, "total": 0, "results": [ { "assignedAt": "2024-01-01T00:00:00Z", "email": "user@example.com", "groups": [ { "id": 0, "name": "string" } ], "id": 0, "isAdmin": true, "isOwner": true, "joinedOrganizationAt": "2024-01-01T00:00:00Z", "permissions": [ { "isEnabled": true, "isOverride": true, "name": "string", "valueInherited": true } ], "source": "DevOps", "unityUser": { "avatarUrl": "https://example.com", "email": "user@example.com", "genesisId": "string", "id": "string", "name": "string" } } ]}

GET /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}


Get a repository scoped under a project.

Path parameters for "GET /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}"

organizationName

string
required
Path parameter organizationName

projectId

string
required
Project ID

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}":

Code samples for "GET /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PATCH /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}


Update a repository scoped under a project.

Path parameters for "PATCH /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}"

organizationName

string
required
Path parameter organizationName

projectId

string
required
Project ID

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "PATCH /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}":

Code samples for "PATCH /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}":

Request example

curl -X PATCH \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

DELETE /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}


Delete a repository scoped under a project.

Path parameters for "DELETE /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}"

organizationName

string
required
Path parameter organizationName

projectId

string
required
Project ID

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "DELETE /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}":

Code samples for "DELETE /organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/projects/{projectId}/repositories/{repositoryName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get an organization repository


Get an organization repository

Path parameters for "Get an organization repository"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get an organization repository"

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get an organization repository":

Code samples for "Get an organization repository":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}"

Response example

{ "creatorName": "string", "description": "string", "id": 0, "isFavorite": true, "isPublic": true, "lastActivityDate": "2024-01-01T00:00:00Z", "mainBranch": "string", "mainBranchId": 0, "name": "string", "uuid": "string", "workspaces": [ { "guid": "string", "id": 0, "lastActivityDate": "2024-01-01T00:00:00Z", "name": "string", "owner": "string", "ownerUnityUser": { "avatarUrl": "https://example.com", "email": "user@example.com", "genesisId": "string", "id": "string", "name": "string" }, "repositoryName": "string", "shares": [ { "name": "string", "user": "string", "unityUser": { "id": null, "genesisId": null, "name": null, "email": null, "avatarUrl": null } } ], "uvcsConnections": [ { "id": "string", "name": "string", "path": "string", "isPartial": true, "target": { "type": null, "server": null, "repositoryId": null, "repositoryName": null, "id": null, "spec": null } } ] } ]}

Patch an organization repository


Patch an organization repository

Path parameters for "Patch an organization repository"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Patch an organization repository"

Media Type:
application/json

description

string
New description of the repository. Skipped if not provided.

isPublic

boolean
New public status of the repository. Skipped if not provided.

name

string
New name of the repository. Skipped if not provided.

HTTP response status codes for "Patch an organization repository":

Code samples for "Patch an organization repository":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "description": "string", "isPublic": true, "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}"

Response example

{ "creatorName": "string", "description": "string", "id": 0, "isFavorite": true, "isPublic": true, "lastActivityDate": "2024-01-01T00:00:00Z", "mainBranch": "string", "mainBranchId": 0, "name": "string", "uuid": "string", "workspaces": [ { "guid": "string", "id": 0, "lastActivityDate": "2024-01-01T00:00:00Z", "name": "string", "owner": "string", "ownerUnityUser": { "avatarUrl": "https://example.com", "email": "user@example.com", "genesisId": "string", "id": "string", "name": "string" }, "repositoryName": "string", "shares": [ { "name": "string", "user": "string", "unityUser": { "id": null, "genesisId": null, "name": null, "email": null, "avatarUrl": null } } ], "uvcsConnections": [ { "id": "string", "name": "string", "path": "string", "isPartial": true, "target": { "type": null, "server": null, "repositoryId": null, "repositoryName": null, "id": null, "spec": null } } ] } ]}

Delete an organization repository


Delete an organization repository

Path parameters for "Delete an organization repository"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

HTTP response status codes for "Delete an organization repository":

Code samples for "Delete an organization repository":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PUT /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}


Create or replace a custom attribute on a branch, label, or other target.

Path parameters for "PUT /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

targetNameOrId

string
required
Path parameter targetNameOrId

targetType

string
required
Path parameter targetType

Request body for "PUT /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}"

Media Type:
application/json

value

string
required
No description

HTTP response status codes for "PUT /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}":

Code samples for "PUT /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "value": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}"

Response example

{ "attributeId": 0, "attributeName": "string", "attributeComment": "string", "target": { "name": "string", "id": 0, "type": "branch" }, "value": "string", "lastUpdatedDate": "2024-01-01T00:00:00Z"}

DELETE /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}


Delete a custom attribute on a branch, label, or other target.

Path parameters for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

targetNameOrId

string
required
Path parameter targetNameOrId

targetType

string
required
Path parameter targetType

HTTP response status codes for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}":

Code samples for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetNameOrId}/attributes/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Start merge bots


Start merge bots for a repository and a branch

Path parameters for "Start merge bots"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

targetType

string
required
Path parameter targetType

targetValue

string
required
Path parameter targetValue

organizationName

string
required
No description

repositoryName

string
required
No description

targetType

string
required
No description

targetValue

string
required
No description

HTTP response status codes for "Start merge bots":

Code samples for "Start merge bots":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/{targetType}/{targetValue}/merge-bots/start"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions


Get the all notification subscriptions for the object

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

type

string
required
Path parameter type

organizationName

string
required
No description

repositoryName

string
required
No description

type

string
required
No description

id

number
required
No description

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions"

Response example

[ { "id": 0, "type": "review" }]

POST /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions


Subscribe to notifications for the object

Path parameters for "POST /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

type

string
required
Path parameter type

organizationName

string
required
No description

repositoryName

string
required
No description

type

string
required
No description

id

number
required
No description

HTTP response status codes for "POST /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions":

Code samples for "POST /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions"

Response example

{ "object": { "type": "review", "id": 0 }, "reason": "userIsUnsubscribed", "user": { "email": "string", "isGroup": true, "groupMembers": [ "string" ] }}

DELETE /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions


Unsubscribe from notifications for the object

Path parameters for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

type

string
required
Path parameter type

organizationName

string
required
No description

repositoryName

string
required
No description

type

string
required
No description

id

number
required
No description

HTTP response status codes for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions":

Code samples for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/{type}/{id}/subscriptions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get attributes


This is paginated

Path parameters for "Get attributes"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get attributes"

filterStartDate

string
No description

filterEndDate

string
No description

filterAuthors

array
No description

orderBy

string
No description

next

string
No description

previous

string
No description

limit

number
No description

search

string
No description

order

string
No description

HTTP response status codes for "Get attributes":

Code samples for "Get attributes":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/attributes"

Response example

{ "cursor": { "next": "string", "previous": "string" }, "limit": 0, "results": [ { "author": "string", "comment": "string", "creationDate": "2024-01-01T00:00:00Z", "id": 0, "name": "string" } ]}

Create an attribute


Create an attribute

Path parameters for "Create an attribute"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Create an attribute"

Media Type:
application/json

comment

string
required
No description

name

string
required
No description

HTTP response status codes for "Create an attribute":

Code samples for "Create an attribute":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/attributes"

Response example

{ "author": "string", "comment": "string", "creationDate": "2024-01-01T00:00:00Z", "id": 0, "name": "string"}

Delete attributes


Delete attributes

Path parameters for "Delete attributes"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Delete attributes"

Media Type:
application/json

ids

array[integer]
required
No description

HTTP response status codes for "Delete attributes":

Code samples for "Delete attributes":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "ids": [ 0 ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/attributes"

Response example

{ "failures": [ 0 ]}

Patch attribute


Patch attribute

Path parameters for "Patch attribute"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

id

integer
required
No description

Request body for "Patch attribute"

Media Type:
application/json

comment

string
No description

name

string
No description

HTTP response status codes for "Patch attribute":

Code samples for "Patch attribute":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/attributes/{id}"

Response example

{ "author": "string", "comment": "string", "creationDate": "2024-01-01T00:00:00Z", "id": 0, "name": "string"}

Get attribute permissions


Get attribute permissions

Path parameters for "Get attribute permissions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

id

number
required
No description

HTTP response status codes for "Get attribute permissions":

Code samples for "Get attribute permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/attributes/{id}/permissions"

Response example

{ "permissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}

Set attribute permissions


Set attribute permissions

Path parameters for "Set attribute permissions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

id

number
required
No description

Request body for "Set attribute permissions"

Media Type:
application/json

endUsersPermissions

array[object]
required
No description

name

string
required
No description

type

string
required
No description

permissions

array[object]
required
No description

name

string
required
No description

isOverride

boolean
required
No description

isEnabled

boolean
required
No description

valueInherited

boolean
No description

HTTP response status codes for "Set attribute permissions":

Code samples for "Set attribute permissions":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "endUsersPermissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/attributes/{id}/permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get branches


Get branches

Path parameters for "Get branches"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get branches"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

next

string
No description

previous

string
No description

orderBy

string
No description

filterAuthors

array
No description

filterStartDate

string
No description

filterEndDate

string
No description

filterActivityStartDate

string
No description

filterActivityEndDate

string
No description

includeFields

array
Comma-separated list of fields to include in the response

hidden

boolean
No description

HTTP response status codes for "Get branches":

Code samples for "Get branches":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches"

Response example

{ "cursor": { "next": "string", "previous": "string" }, "limit": 0, "results": [ { "author": "string", "canBeDeleted": true, "creationDate": "2024-01-01T00:00:00Z", "description": "string", "hidden": true, "id": 0, "isMain": true, "lastActivityDate": "2024-01-01T00:00:00Z", "lastChangesetId": 0, "lastChangesetName": "string", "merges": [ { "author": "string", "comment": "string", "destinationBranchId": 0, "destinationBranchName": "string", "destinationChangesetId": 0, "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "sourceBranchId": 0, "sourceBranchName": "string", "sourceChangesetId": 0 } ], "name": "string", "numberOfChangesets": 0, "numberOfReviews": 0, "status": "string" } ]}

Create a branch


Create a branch

Path parameters for "Create a branch"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Create a branch"

Media Type:
application/json

changeset

number
required
No description

comment

string
No description

name

string
required
No description

HTTP response status codes for "Create a branch":

Code samples for "Create a branch":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "changeset": 0, "comment": "", "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches"

Response example

{ "author": "string", "canBeDeleted": true, "creationDate": "2024-01-01T00:00:00Z", "description": "string", "hidden": true, "id": 0, "isMain": true, "lastActivityDate": "2024-01-01T00:00:00Z", "lastChangesetId": 0, "lastChangesetName": "string", "merges": [ { "author": "string", "comment": "string", "destinationBranchId": 0, "destinationBranchName": "string", "destinationChangesetId": 0, "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "sourceBranchId": 0, "sourceBranchName": "string", "sourceChangesetId": 0 } ], "name": "string", "numberOfChangesets": 0, "numberOfReviews": 0, "status": "string"}

Get a branch


Use
idType
to specify whether you are using name or id to lookup the branch

Path parameters for "Get a branch"

branchIdOrName

string
required
Branch name or id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchIdOrName

string
required
Branch name or id

Query parameters for "Get a branch"

idType

string
default: unknown
required
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get a branch":

Code samples for "Get a branch":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchIdOrName}"

Response example

{ "attributesValues": [ { "attributeComment": "string", "attributeId": 0, "attributeName": "string", "lastUpdatedDate": "2024-01-01T00:00:00Z", "target": { "name": "string", "id": 0, "type": "branch" }, "value": "string" } ], "author": "string", "canBeDeleted": true, "creationDate": "2024-01-01T00:00:00Z", "description": "string", "hidden": true, "id": 0, "isMain": true, "lastActivityDate": "2024-01-01T00:00:00Z", "lastChangesetId": 0, "lastChangesetName": "string", "merges": [ { "author": "string", "comment": "string", "destinationBranchId": 0, "destinationBranchName": "string", "destinationChangesetId": 0, "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "sourceBranchId": 0, "sourceBranchName": "string", "sourceChangesetId": 0 } ], "name": "string", "numberOfChangesets": 0, "numberOfReviews": 0, "status": "string"}

Patch a branch


Patch a branch

Path parameters for "Patch a branch"

branchIdOrName

string
required
Branch name or id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchIdOrName

string
required
No description

Request body for "Patch a branch"

Media Type:
application/json

hidden

boolean
No description

name

string
No description

HTTP response status codes for "Patch a branch":

Code samples for "Patch a branch":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "hidden": true, "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchIdOrName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Delete a branch


Delete a branch

Path parameters for "Delete a branch"

branchIdOrName

string
required
Branch name or id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchIdOrName

string
required
No description

HTTP response status codes for "Delete a branch":

Code samples for "Delete a branch":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchIdOrName}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/folder-info


Get folder summary information for the branch root.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/folder-info"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/folder-info":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/folder-info":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/folder-info"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get folder information (files, folders and total size in bytes) from a branch


Get folder information (files, folders and total size in bytes) from a branch

Path parameters for "Get folder information (files, folders and total size in bytes) from a branch"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchName

string
required
No description

path

default: /
required
Optional parameter for the item path

Query parameters for "Get folder information (files, folders and total size in bytes) from a branch"

recursive

boolean
default: false
If true, traverse the entire directory tree.

HTTP response status codes for "Get folder information (files, folders and total size in bytes) from a branch":

Code samples for "Get folder information (files, folders and total size in bytes) from a branch":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/folder-info/{path}"

Response example

{ "files": 0, "folders": 0, "totalSize": 0}

GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items


List items at the branch root.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get items from a branch


Get items from a branch

Path parameters for "Get items from a branch"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchName

string
required
No description

path

string
default: /
required
Optional parameter for the item path

Query parameters for "Get items from a branch"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

offset

number
No description

orderBy

string
No description

multiSearch

boolean
default: false
No description

idType

string
default: unknown
No description

childrenOffset

number
No description

childrenLimit

number
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get items from a branch":

Code samples for "Get items from a branch":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items/{path}"

Response example

{ "branch": "string", "branchId": 0, "changeset": 0, "children": [ { "revision": 0, "item": "string", "size": 0, "branch": "string", "branchId": 0, "changeset": 0, "comment": "string", "owner": "string", "date": "2024-01-01T00:00:00Z", "repository": "string", "type": "string", "contentType": "string", "xLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } } ], "comment": "string", "contentType": "string", "date": "2024-01-01T00:00:00Z", "item": "string", "lock": { "date": "2024-01-01T00:00:00Z", "destinationBranchId": 0, "destinationBranchName": "string", "holderBranchId": 0, "holderBranchName": "string", "id": "string", "name": "string", "owner": "string", "status": "Retained" }, "owner": "string", "path": "string", "rawUrl": "string", "repository": "string", "revision": 0, "size": 0, "type": "string", "xLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }}

Get an item permissions


Get an item permissions

Path parameters for "Get an item permissions"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchName

string
required
No description

path

default: /
required
Optional parameter for the item path

HTTP response status codes for "Get an item permissions":

Code samples for "Get an item permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items/permissions/{path}"

Response example

{ "permissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}

Set an item permissions


Set an item permissions

Path parameters for "Set an item permissions"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchName

string
required
No description

path

default: /
required
Optional parameter for the item path

Request body for "Set an item permissions"

Media Type:
application/json

endUsersPermissions

array[object]
required
No description

name

string
required
No description

type

string
required
No description

permissions

array[object]
required
No description

name

string
required
No description

isOverride

boolean
required
No description

isEnabled

boolean
required
No description

valueInherited

boolean
No description

HTTP response status codes for "Set an item permissions":

Code samples for "Set an item permissions":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "endUsersPermissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/items/permissions/{path}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get a branch permissions


Get a branch permissions

Path parameters for "Get a branch permissions"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchName

string
required
No description

HTTP response status codes for "Get a branch permissions":

Code samples for "Get a branch permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/permissions"

Response example

{ "permissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}

Set a branch permissions


Set a branch permissions

Path parameters for "Set a branch permissions"

branchName

string
required
Path parameter branchName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

branchName

string
required
No description

Request body for "Set a branch permissions"

Media Type:
application/json

endUsersPermissions

array[object]
required
No description

name

string
required
No description

type

string
required
No description

permissions

array[object]
required
No description

name

string
required
No description

isOverride

boolean
required
No description

isEnabled

boolean
required
No description

valueInherited

boolean
No description

HTTP response status codes for "Set a branch permissions":

Code samples for "Set a branch permissions":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "endUsersPermissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/branches/{branchName}/permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get changesets


This is paginated

Path parameters for "Get changesets"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get changesets"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

next

string
No description

previous

string
No description

orderBy

string
No description

branchName

string
No description

filterStartDate

string
No description

filterEndDate

string
No description

filterBranchIds

array
No description

filterAuthors

array
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get changesets":

Code samples for "Get changesets":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/changesets"

Response example

{ "cursor": { "next": "string", "previous": "string" }, "limit": 0, "results": [ { "authorName": "string", "branchId": 0, "branchName": "string", "canBeDeleted": true, "codeReviewIds": [ 0 ], "comment": "string", "date": "2024-01-01T00:00:00Z", "guid": "string", "hasCodeReview": true, "id": 0, "labels": [ "string" ], "merges": [ { "author": "string", "comment": "string", "destinationBranchId": 0, "destinationBranchName": "string", "destinationChangesetId": 0, "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "sourceBranchId": 0, "sourceBranchName": "string", "sourceChangesetId": 0 } ], "name": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{changesetId}/items


List items changed in a changeset (root path).

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{changesetId}/items"

changesetId

string
required
Path parameter changesetId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{changesetId}/items":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{changesetId}/items":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/changesets/{changesetId}/items"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get items from a changeset


Get items from a changeset

Path parameters for "Get items from a changeset"

changesetId

string
required
Path parameter changesetId

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

changesetId

number
required
No description

path

default: /
required
Optional parameter for the item path

Query parameters for "Get items from a changeset"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

offset

number
No description

orderBy

string
No description

multiSearch

boolean
default: false
No description

idType

string
default: unknown
No description

childrenOffset

number
No description

childrenLimit

number
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get items from a changeset":

Code samples for "Get items from a changeset":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/changesets/{changesetId}/items/{path}"

Response example

{ "branch": "string", "branchId": 0, "changeset": 0, "children": [ { "revision": 0, "item": "string", "size": 0, "branch": "string", "branchId": 0, "changeset": 0, "comment": "string", "owner": "string", "date": "2024-01-01T00:00:00Z", "repository": "string", "type": "string", "contentType": "string", "xLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } } ], "comment": "string", "contentType": "string", "date": "2024-01-01T00:00:00Z", "item": "string", "lock": { "date": "2024-01-01T00:00:00Z", "destinationBranchId": 0, "destinationBranchName": "string", "holderBranchId": 0, "holderBranchName": "string", "id": "string", "name": "string", "owner": "string", "status": "Retained" }, "owner": "string", "path": "string", "rawUrl": "string", "repository": "string", "revision": 0, "size": 0, "type": "string", "xLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }}

GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}


Get changeset details.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PATCH /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}


Update changeset metadata.

Path parameters for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}":

Code samples for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}":

Request example

curl -X PATCH \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

DELETE /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}


Delete a changeset.

Path parameters for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}":

Code samples for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/changesets/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get code reviews


Get a paginated list of code reviews.

Path parameters for "Get code reviews"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get code reviews"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

next

string
No description

previous

string
No description

filterTargets

string
JSON array of target types and ids in format [["branch"|"changeset"|"label", number]]

filterBranchNames

array
Comma separated list of branch names

filterBranchIds

array
Comma separated list of branch ids

filterStatus

array
Comma separated list of code review statuses

filterReviewerStatus

array
Comma separated list of code review statuses

filterOwner

array
Comma separated list of owner emails

filterReviewer

array
Comma separated list of reviewer emails

filterRepoNames

array
Comma separated list of repository names

orderBy

string
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get code reviews":

Code samples for "Get code reviews":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews"

Response example

{ "assignedToMe": 0, "reviewedCount": 0, "reviews": {}, "reworkRequiredCount": 0, "totalCount": 0, "underReviewCount": 0}

Create a code review


Create a code review with the given data.

Path parameters for "Create a code review"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Create a code review"

Media Type:
application/json

description

string
required
No description

object

object
required
No description

type

string
required
No description

spec

string
required
No description

reviewers

array[object]
required
No description

title

string
required
No description

HTTP response status codes for "Create a code review":

Code samples for "Create a code review":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "description": "string", "object": { "type": "branch", "spec": "string" }, "reviewers": [ "string" ], "title": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews"

Response example

{ "assignee": "string", "comments": [ { "type": "Comment", "id": 0, "uuid": "string", "owner": "user@example.com", "timestamp": "2024-01-01T00:00:00Z", "createdAt": "2024-01-01T00:00:00Z", "updatedAt": "2024-01-01T00:00:00Z", "itemId": 0, "itemPath": "string", "revisionId": 0, "locationSpec": "string", "commentText": "string", "reviewId": 0, "parentCommentId": 0, "changesetId": 0, "appliedInChangesetId": 0, "branchChangesetId": 0 } ], "commentsCount": 0, "createdAt": "2024-01-01T00:00:00Z", "description": "string", "id": 0, "mergeAllowed": true, "mergeIssues": "string", "merges": [ { "sourceChangesetId": 0, "sourceBranchId": 0, "sourceBranchName": "string", "destinationChangesetId": 0, "destinationBranchId": 0, "destinationBranchName": "string", "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "author": "string", "comment": "string" } ], "numberOfIssues": 0, "object": { "type": "branch", "spec": "string", "id": 0 }, "owner": "string", "repositoryName": "string", "reviewers": [ { "name": "user@example.com", "isGroup": true, "status": "under-review" } ], "status": "under-review", "title": "string", "unansweredQuestionsCount": 0, "updatedAt": "2024-01-01T00:00:00Z", "userCommentsCount": 0}

Delete code reviews


Delete code reviews by id

Path parameters for "Delete code reviews"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Delete code reviews"

Media Type:
application/json

reviews

array[string]
required
No description

HTTP response status codes for "Delete code reviews":

Code samples for "Delete code reviews":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "reviews": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews"

Response example

{ "failures": [ "string" ]}

Get a code review


Get a code review by id

Path parameters for "Get a code review"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

Query parameters for "Get a code review"

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get a code review":

Code samples for "Get a code review":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}"

Response example

{ "assignee": "string", "comments": [ { "type": "Comment", "id": 0, "uuid": "string", "owner": "user@example.com", "timestamp": "2024-01-01T00:00:00Z", "createdAt": "2024-01-01T00:00:00Z", "updatedAt": "2024-01-01T00:00:00Z", "itemId": 0, "itemPath": "string", "revisionId": 0, "locationSpec": "string", "commentText": "string", "reviewId": 0, "parentCommentId": 0, "changesetId": 0, "appliedInChangesetId": 0, "branchChangesetId": 0 } ], "commentsCount": 0, "createdAt": "2024-01-01T00:00:00Z", "description": "string", "id": 0, "mergeAllowed": true, "mergeIssues": "string", "merges": [ { "sourceChangesetId": 0, "sourceBranchId": 0, "sourceBranchName": "string", "destinationChangesetId": 0, "destinationBranchId": 0, "destinationBranchName": "string", "destinationIsMain": true, "mergeDate": "2024-01-01T00:00:00Z", "author": "string", "comment": "string" } ], "numberOfIssues": 0, "object": { "type": "branch", "spec": "string", "id": 0 }, "owner": "string", "repositoryName": "string", "reviewers": [ { "name": "user@example.com", "isGroup": true, "status": "under-review" } ], "status": "under-review", "title": "string", "unansweredQuestionsCount": 0, "updatedAt": "2024-01-01T00:00:00Z", "userCommentsCount": 0}

Patch a code review


Patch a code review by id

Path parameters for "Patch a code review"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

Request body for "Patch a code review"

Media Type:
application/json

description

string
No description

title

string
No description

HTTP response status codes for "Patch a code review":

Code samples for "Patch a code review":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "description": "string", "title": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Delete a code review


Delete a code review by id

Path parameters for "Delete a code review"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

HTTP response status codes for "Delete a code review":

Code samples for "Delete a code review":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get comments


Get comments for a code review.

Path parameters for "Get comments"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

HTTP response status codes for "Get comments":

Code samples for "Get comments":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments"

Response example

{ "comments": [ { "type": "Comment", "id": 0, "uuid": "string", "owner": "user@example.com", "timestamp": "2024-01-01T00:00:00Z", "createdAt": "2024-01-01T00:00:00Z", "updatedAt": "2024-01-01T00:00:00Z", "itemId": 0, "itemPath": "string", "revisionId": 0, "locationSpec": "string", "commentText": "string", "reviewId": 0, "parentCommentId": 0, "changesetId": 0, "appliedInChangesetId": 0, "branchChangesetId": 0 } ]}

Add a comment


Add a comment to a code review.

Path parameters for "Add a comment"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

Query parameters for "Add a comment"

includeFields

array
Comma-separated list of fields to include in the response

Request body for "Add a comment"

Media Type:
application/json

changesetId

number
required
No description

commentText

string
required
No description

locationSpec

string
No description

revisionId

number
required
No description

type

string
required
No description

HTTP response status codes for "Add a comment":

Code samples for "Add a comment":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "changesetId": 0, "commentText": "string", "locationSpec": "string", "revisionId": 0, "type": "Change"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments"

Response example

{ "appliedInChangesetId": 0, "branchChangesetId": 0, "changesetId": 0, "commentText": "string", "createdAt": "2024-01-01T00:00:00Z", "id": 0, "itemId": 0, "itemPath": "string", "locationSpec": "string", "owner": "user@example.com", "parentCommentId": 0, "reviewId": 0, "revisionId": 0, "timestamp": "2024-01-01T00:00:00Z", "type": "Comment", "updatedAt": "2024-01-01T00:00:00Z", "uuid": "string"}

Patch a comment


Patch a comment for a code review.

Path parameters for "Patch a comment"

codeReviewId

string
required
Path parameter codeReviewId

commentId

string
required
Path parameter commentId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

commentId

number
required
No description

Request body for "Patch a comment"

Media Type:
application/json

commentText

string
required
No description

HTTP response status codes for "Patch a comment":

Code samples for "Patch a comment":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "commentText": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{commentId}"

Response example

{ "appliedInChangesetId": 0, "branchChangesetId": 0, "changesetId": 0, "commentText": "string", "createdAt": "2024-01-01T00:00:00Z", "id": 0, "itemId": 0, "itemPath": "string", "locationSpec": "string", "owner": "user@example.com", "parentCommentId": 0, "reviewId": 0, "revisionId": 0, "timestamp": "2024-01-01T00:00:00Z", "type": "Comment", "updatedAt": "2024-01-01T00:00:00Z", "uuid": "string"}

Delete a comment


Delete a comment on a code review.

Path parameters for "Delete a comment"

codeReviewId

string
required
Path parameter codeReviewId

commentId

string
required
Path parameter commentId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

commentId

number
required
No description

HTTP response status codes for "Delete a comment":

Code samples for "Delete a comment":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{commentId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Resolve a comment


Resolve a comment on a code review.

Path parameters for "Resolve a comment"

codeReviewId

string
required
Path parameter codeReviewId

commentId

string
required
Path parameter commentId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

commentId

number
required
No description

Request body for "Resolve a comment"

Media Type:
application/json

changesetId

number
required
No description

HTTP response status codes for "Resolve a comment":

Code samples for "Resolve a comment":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "changesetId": 0}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{commentId}/resolutions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

POST /organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{parentCommentId}/replies


Post a reply to a code review comment thread.

Path parameters for "POST /organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{parentCommentId}/replies"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

parentCommentId

string
required
Path parameter parentCommentId

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "POST /organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{parentCommentId}/replies":

Code samples for "POST /organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{parentCommentId}/replies":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/comments/{parentCommentId}/replies"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get reviewers


Get reviewers for a code review.

Path parameters for "Get reviewers"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

HTTP response status codes for "Get reviewers":

Code samples for "Get reviewers":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/reviewers"

Response example

{ "reviewers": [ { "name": "user@example.com", "isGroup": true, "status": "under-review" } ]}

Add reviewers


Add reviewers to a code review.

Path parameters for "Add reviewers"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

Request body for "Add reviewers"

Media Type:
application/json

reviewers

array[object]
required
No description

HTTP response status codes for "Add reviewers":

Code samples for "Add reviewers":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "reviewers": [ { "name": "user@example.com", "isGroup": true, "status": "under-review" } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/reviewers"

Response example

{ "reviewers": [ { "name": "user@example.com", "isGroup": true, "status": "under-review" } ]}

Remove reviewers


Remove reviewers from a code review.

Path parameters for "Remove reviewers"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

Request body for "Remove reviewers"

Media Type:
application/json

reviewers

array[object]
required
No description

HTTP response status codes for "Remove reviewers":

Code samples for "Remove reviewers":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "reviewers": [ { "name": "user@example.com", "isGroup": true } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/reviewers"

Response example

{ "failures": [ { "name": "user@example.com", "isGroup": true } ]}

Mark as reviewed


Mark a code review as the provided review status.

Path parameters for "Mark as reviewed"

codeReviewId

string
required
Path parameter codeReviewId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

codeReviewId

number
required
No description

Request body for "Mark as reviewed"

Media Type:
application/json

comment

string
No description

reviewerName

string
required
No description

status

string
required
No description

HTTP response status codes for "Mark as reviewed":

Code samples for "Mark as reviewed":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "reviewerName": "user@example.com", "status": "under-review"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/code-reviews/{codeReviewId}/reviews"

Response example

{ "appliedInChangesetId": 0, "branchChangesetId": 0, "changesetId": 0, "commentText": "string", "createdAt": "2024-01-01T00:00:00Z", "id": 0, "itemId": 0, "itemPath": "string", "locationSpec": "string", "owner": "user@example.com", "parentCommentId": 0, "reviewId": 0, "revisionId": 0, "timestamp": "2024-01-01T00:00:00Z", "type": "Comment", "updatedAt": "2024-01-01T00:00:00Z", "uuid": "string"}

Get a diff for branches


There is a source branch and a destination branch. Destination is not mandatory, if not provided, the diff will be with the origin branch of the source branch

Path parameters for "Get a diff for branches"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get a diff for branches"

sourceBranchId

number
required
No description

destinationBranchId

number
No description

isSemantic

default: true
No description

pendingToIntegrate

default: false
No description

comparisonType

string
default: IgnoreEolWhiteSpaces
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get a diff for branches":

Code samples for "Get a diff for branches":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/diffs/branches"

Response example

{ "added": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "author": "string", "changed": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "comment": "string", "deleted": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "destination": "string", "destinationId": 0, "fsProtectionChanged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "mergeGroups": [ { "itemId": 0, "branchName": "string", "branchId": 0, "repoName": "string", "merged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "added": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "changed": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "moved": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "deleted": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ] } ], "merged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "moved": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "objectType": "string", "refactorGroups": [ { "itemId": 0, "branchName": "string", "branchId": 0, "repoName": "string", "merged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "added": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "changed": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "moved": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "deleted": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ] } ], "repository": "string", "source": "string", "timestamp": "string"}

GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/changesets/{changesetId}


Get a diff for a single changeset (no destination changeset in path).

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/changesets/{changesetId}"

changesetId

string
required
Path parameter changesetId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/changesets/{changesetId}":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/changesets/{changesetId}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/diffs/changesets/{changesetId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get a changeset diff


Get a changeset diff

Path parameters for "Get a changeset diff"

changesetId

string
required
Path parameter changesetId

destinationChangesetId

string
required
Path parameter destinationChangesetId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

changesetId

number
required
No description

destinationChangesetId

number
required
Optional destination changeset to diff against

Query parameters for "Get a changeset diff"

isSemantic

default: true
No description

comparisonType

string
default: IgnoreEolWhiteSpaces
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get a changeset diff":

Code samples for "Get a changeset diff":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/diffs/changesets/{changesetId}/{destinationChangesetId}"

Response example

{ "added": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "author": "string", "changed": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "comment": "string", "deleted": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "destination": "string", "destinationId": 0, "fsProtectionChanged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "mergeGroups": [ { "itemId": 0, "branchName": "string", "branchId": 0, "repoName": "string", "merged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "added": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "changed": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "moved": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "deleted": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ] } ], "merged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "moved": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": "string", "sourceXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }, "dstData": "string", "dstXLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } }, "type": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": null, "insideLineRegions": null }, "right": { "diffRegions": null, "insideLineRegions": null } }, "lineMapping": { "sourceEditor": [ null ], "destinationEditor": [ null ] }, "moveInfo": { "regions": { "left": null, "right": null }, "diffRegions": { "left": null, "right": null }, "insideLineRegions": { "left": null, "right": null } }, "semanticInfo": { "left": { "diffIcons": null }, "right": { "diffIcons": null } } }, "lock": { "id": "string", "name": "string", "holderBranchName": "string", "holderBranchId": 0, "destinationBranchName": "string", "destinationBranchId": 0, "owner": "string", "date": "2024-01-01T00:00:00Z", "status": "Retained" } } ], "objectType": "string", "refactorGroups": [ { "itemId": 0, "branchName": "string", "branchId": 0, "repoName": "string", "merged": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "added": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "changed": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "moved": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ], "deleted": [ { "mountId": "string", "itemId": 0, "path": "string", "srcPath": "string", "sourceRev": 0, "sourceRevSize": 0, "sourceChangeset": 0, "sourceBranch": 0, "sourceBranchName": "string", "dstRev": 0, "dstRevSize": 0, "dstChangeset": 0, "dstBranch": 0, "dstBranchName": "string", "timestamp": "string", "repoName": "string", "xlink": { "sourceData": null, "sourceXLink": null, "dstData": null, "dstXLink": null }, "type": "string", "diffInfo": { "drawingInfo": null, "lineMapping": null, "moveInfo": null, "semanticInfo": null }, "lock": { "id": null, "name": null, "holderBranchName": null, "holderBranchId": null, "destinationBranchName": null, "destinationBranchId": null, "owner": null, "date": null, "status": null } } ] } ], "repository": "string", "source": "string", "timestamp": "string"}

GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}


Get a diff for a label (no destination label in path).

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}"

labelId

string
required
Path parameter labelId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}/{destinationLabelId}


Get a diff between two labels.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}/{destinationLabelId}"

destinationLabelId

string
required
Path parameter destinationLabelId

labelId

string
required
Path parameter labelId

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}/{destinationLabelId}":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}/{destinationLabelId}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/diffs/labels/{labelId}/{destinationLabelId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get a revision diff


Get a revision diff

Path parameters for "Get a revision diff"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get a revision diff"

source

string
required
No description

destination

string
required
No description

isSemantic

boolean
default: false
No description

comparisonType

string
default: IgnoreEolWhiteSpaces
No description

HTTP response status codes for "Get a revision diff":

Code samples for "Get a revision diff":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/diffs/revisions"

Response example

{ "comment": "string", "diffInfo": { "drawingInfo": { "left": { "diffRegions": [ { "initialLine": null, "endLine": null, "color": null, "borderColor": null } ], "insideLineRegions": [ { "line": null, "regions": null } ] }, "right": { "diffRegions": [ {} ], "insideLineRegions": [ { "line": null, "regions": null } ] } }, "lineMapping": { "destinationEditor": [ 0 ], "sourceEditor": [ 0 ] }, "moveInfo": { "diffRegions": { "left": [ { "initialLine": null, "endLine": null, "color": null, "borderColor": null } ], "right": [ { "initialLine": null, "endLine": null, "color": null, "borderColor": null } ] }, "insideLineRegions": { "left": [ { "line": null, "regions": null } ], "right": [ { "line": null, "regions": null } ] }, "regions": { "left": [ { "initialLine": null, "endLine": null, "color": null, "borderColor": null } ], "right": [ { "initialLine": null, "endLine": null, "color": null, "borderColor": null } ] } }, "semanticInfo": { "left": { "diffIcons": [ { "diffIconType": null, "position": null } ] }, "right": { "diffIcons": [ { "diffIconType": null, "position": null } ] } } }, "dstRev": { "branchName": "string", "changeset": 0, "owner": "string" }, "path": "string", "srcRev": { "branchName": "string", "changeset": 0, "owner": "string" }}

Get a source history


Get a source history

Path parameters for "Get a source history"

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

sourceName

string
required
Path parameter sourceName

sourceType

string
required
Path parameter sourceType

organizationName

string
required
No description

repositoryName

string
required
No description

path

string
required
No description

sourceType

string
required
No description

sourceName

string
required
No description

Query parameters for "Get a source history"

orderBy

string
No description

startDate

string
No description

endDate

string
No description

branchName

string
No description

type

string
No description

next

string
No description

previous

string
No description

limit

number
No description

search

string
No description

order

string
No description

HTTP response status codes for "Get a source history":

Code samples for "Get a source history":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/items/history/{sourceType}/{sourceName}/{path}"

Response example

{ "cursor": { "next": "string", "previous": "string" }, "limit": 0, "results": [ { "branchId": 0, "branchName": "string", "changesetId": 0, "changesetName": "string", "comment": "string", "date": "string", "ownerName": "string", "parentRevisionId": 0, "prevName": "string", "revisionId": 0, "type": "string" } ]}

Get labels


It is paginated

Path parameters for "Get labels"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get labels"

orderBy

string
No description

filterStartDate

string
No description

filterEndDate

string
No description

next

string
No description

previous

string
No description

limit

number
No description

search

string
No description

order

string
No description

HTTP response status codes for "Get labels":

Code samples for "Get labels":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels"

Response example

{ "cursor": { "next": "string", "previous": "string" }, "limit": 0, "results": [ { "comment": "string", "date": "2024-01-01T00:00:00Z", "id": 0, "lastChangesetId": 0, "lastChangesetName": "string", "name": "string", "ownerEmail": "string", "repositoryName": "string" } ]}

Create a label


Create a label

Path parameters for "Create a label"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Create a label"

Media Type:
application/json

applyLabelToXlinkRepositories

boolean
required
No description

changeset

number
required
No description

comment

string
required
No description

name

string
required
No description

HTTP response status codes for "Create a label":

Code samples for "Create a label":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "applyLabelToXlinkRepositories": true, "changeset": 0, "comment": "", "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels"

Response example

{ "comment": "string", "date": "2024-01-01T00:00:00Z", "id": 0, "lastChangesetId": 0, "lastChangesetName": "string", "name": "string", "ownerEmail": "string", "repositoryName": "string"}

Delete several labels


Delete several labels

Path parameters for "Delete several labels"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Delete several labels"

Media Type:
application/json

ids

array[number]
required
No description

HTTP response status codes for "Delete several labels":

Code samples for "Delete several labels":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "ids": [ 0 ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels"

Response example

{ "failures": [ 0 ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}


Get a label by id.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PATCH /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}


Update label fields by id.

Path parameters for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}":

Code samples for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}":

Request example

curl -X PATCH \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

DELETE /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}


Delete a label by id.

Path parameters for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}":

Code samples for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions


Get permissions for a label.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PUT /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions


Replace permissions for a label.

Path parameters for "PUT /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "PUT /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions":

Code samples for "PUT /organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions":

Request example

curl -X PUT \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{id}/permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{labelName}/items


List items included in a label (root path).

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{labelName}/items"

labelName

string
required
Path parameter labelName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{labelName}/items":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/labels/{labelName}/items":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{labelName}/items"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get items from a label


Get items from a label

Path parameters for "Get items from a label"

labelName

string
required
Path parameter labelName

organizationName

string
required
Path parameter organizationName

path

string
required
Path parameter path

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

labelName

string
required
No description

path

default: /
required
Optional parameter for the item path

Query parameters for "Get items from a label"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

offset

number
No description

orderBy

string
No description

multiSearch

boolean
default: false
No description

idType

string
default: unknown
No description

childrenOffset

number
No description

childrenLimit

number
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get items from a label":

Code samples for "Get items from a label":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/labels/{labelName}/items/{path}"

Response example

{ "branch": "string", "branchId": 0, "changeset": 0, "children": [ { "revision": 0, "item": "string", "size": 0, "branch": "string", "branchId": 0, "changeset": 0, "comment": "string", "owner": "string", "date": "2024-01-01T00:00:00Z", "repository": "string", "type": "string", "contentType": "string", "xLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" } } ], "comment": "string", "contentType": "string", "date": "2024-01-01T00:00:00Z", "item": "string", "lock": { "date": "2024-01-01T00:00:00Z", "destinationBranchId": 0, "destinationBranchName": "string", "holderBranchId": 0, "holderBranchName": "string", "id": "string", "name": "string", "owner": "string", "status": "Retained" }, "owner": "string", "path": "string", "rawUrl": "string", "repository": "string", "revision": 0, "size": 0, "type": "string", "xLink": { "xLinkChangeset": {}, "xLinkRelative": true, "xLinkOrganization": "string", "xLinkRepository": "string", "xLinkRoot": "string" }}

Change or create a repository lock rule


Change or create a repository lock rule

Path parameters for "Change or create a repository lock rule"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Change or create a repository lock rule"

Media Type:
application/json

excludedBranches

array[string]
No description

fileExtensions

string
required
No description

targetBranch

string
No description

targetBranches

array[string]
No description

HTTP response status codes for "Change or create a repository lock rule":

Code samples for "Change or create a repository lock rule":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "excludedBranches": [ "string" ], "fileExtensions": "string", "targetBranch": "string", "targetBranches": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/lock-rule"

Response example

{ "excludedBranches": [ "string" ], "fileExtensions": "string", "repositoryName": "string", "targetBranch": "string", "targetBranches": [ "string" ]}

Get all lock rules


Get all lock rules

Path parameters for "Get all lock rules"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get all lock rules"

filterStartDate

string
No description

filterEndDate

string
No description

filterOwners

array
No description

filterBranchIds

array
No description

orderBy

string
No description

offset

number
No description

limit

number
No description

search

string
No description

order

string
No description

HTTP response status codes for "Get all lock rules":

Code samples for "Get all lock rules":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/locks"

Response example

[ { "date": "2024-01-01T00:00:00Z", "destinationBranchId": 0, "destinationBranchName": "string", "holderBranchId": 0, "holderBranchName": "string", "id": "string", "name": "string", "owner": "string", "status": "Retained" }]

Delete several locks


Delete several locks

Path parameters for "Delete several locks"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Delete several locks"

Media Type:
application/json

ids

array[string]
required
No description

HTTP response status codes for "Delete several locks":

Code samples for "Delete several locks":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "ids": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/locks"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Perform a merge


Perform a merge

Path parameters for "Perform a merge"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Perform a merge"

Media Type:
application/json

comment

string
No description

destination

string
required
No description

source

object
required
No description

sourceType

string
required
No description

HTTP response status codes for "Perform a merge":

Code samples for "Perform a merge":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "destination": "string", "source": {}, "sourceType": "branch"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge"

Response example

{ "changesetId": 0, "message": "string", "status": "OK"}

Get if a merge is allowed


Get if a merge is allowed

Path parameters for "Get if a merge is allowed"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get if a merge is allowed"

sourceBranchName

string
required
No description

destinationBranchName

string
required
No description

HTTP response status codes for "Get if a merge is allowed":

Code samples for "Get if a merge is allowed":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-allowed"

Response example

{ "result": "Ok"}

Get merge bots


There is no pagination

Path parameters for "Get merge bots"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

HTTP response status codes for "Get merge bots":

Code samples for "Get merge bots":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots"

Response example

{ "results": [ { "configuration": { "branchPrefix": "string", "ciGroup": {} }, "description": "string", "name": "string", "started": true, "type": "string" } ]}

Create a merge bot


This merge bot will be specific for the repository

Path parameters for "Create a merge bot"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Create a merge bot"

Media Type:
application/json

configuration

object
required
No description

description

string
required
No description

name

string
required
No description

type

string
required
No description

HTTP response status codes for "Create a merge bot":

Code samples for "Create a merge bot":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "configuration": { "branchPrefix": "string", "ciGroup": {} }, "description": "string", "name": "string", "type": "trunk-bot"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots"

Response example

{ "configuration": { "branchPrefix": "string", "ciGroup": {} }, "description": "string", "name": "string", "started": true, "type": "string"}

Delete merge bots


Delete merge bots

Path parameters for "Delete merge bots"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Delete merge bots"

Media Type:
application/json

mergeBotNames

array[string]
required
No description

HTTP response status codes for "Delete merge bots":

Code samples for "Delete merge bots":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "mergeBotNames": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get a merge bot


Get a merge bot

Path parameters for "Get a merge bot"

mergeBotName

string
required
Path parameter mergeBotName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

mergeBotName

string
required
No description

HTTP response status codes for "Get a merge bot":

Code samples for "Get a merge bot":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/{mergeBotName}"

Response example

{ "configuration": { "branchPrefix": "string", "ciGroup": {} }, "description": "string", "name": "string", "started": true, "type": "string"}

Change a merge bot


Change a merge bot

Path parameters for "Change a merge bot"

mergeBotName

string
required
Path parameter mergeBotName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

mergeBotName

string
required
No description

Request body for "Change a merge bot"

Media Type:
application/json

configuration

object
No description

description

string
No description

name

string
No description

HTTP response status codes for "Change a merge bot":

Code samples for "Change a merge bot":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "configuration": { "branchPrefix": "string", "ciGroup": {} }, "description": "string", "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/{mergeBotName}"

Response example

{ "configuration": { "branchPrefix": "string", "ciGroup": {} }, "description": "string", "name": "string", "started": true, "type": "string"}

Start or stop a merge bot


Start or stop a merge bot

Path parameters for "Start or stop a merge bot"

mergeBotName

string
required
Path parameter mergeBotName

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

mergeBotName

string
required
No description

Request body for "Start or stop a merge bot"

Media Type:
application/json

started

boolean
required
No description

HTTP response status codes for "Start or stop a merge bot":

Code samples for "Start or stop a merge bot":

Request example

curl -X PUT \ -H "Content-Type: application/json" \ -d '{ "started": true}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/{mergeBotName}/started"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get merge bot plugs


Get merge bot plugs

Path parameters for "Get merge bot plugs"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

HTTP response status codes for "Get merge bot plugs":

Code samples for "Get merge bot plugs":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs"

Response example

{ "results": [ { "configuration": {}, "name": "string", "plugDefinitionName": "string", "plugDefinitionType": "string" } ]}

Create merge bot plug


Create merge bot plug

Path parameters for "Create merge bot plug"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Create merge bot plug"

Media Type:
application/json

configuration

object
required
This part depends on the plug config selected. There is no check done.

name

string
required
No description

plugDefinitionName

string
required
No description

plugDefinitionType

string
required
No description

HTTP response status codes for "Create merge bot plug":

Code samples for "Create merge bot plug":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "configuration": {}, "name": "string", "plugDefinitionName": "string", "plugDefinitionType": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs"

Response example

{ "configuration": {}, "name": "string", "plugDefinitionName": "string", "plugDefinitionType": "string"}

Delete merge bot plugs


Delete merge bot plugs

Path parameters for "Delete merge bot plugs"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Delete merge bot plugs"

Media Type:
application/json

names

array[string]
required
No description

HTTP response status codes for "Delete merge bot plugs":

Code samples for "Delete merge bot plugs":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "names": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}


Get merge bot plug configuration by name.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}"

name

string
required
Path parameter name

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PUT /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}


Update merge bot plug configuration by name.

Path parameters for "PUT /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}"

name

string
required
Path parameter name

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "PUT /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}":

Code samples for "PUT /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}":

Request example

curl -X PUT \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/plugs/{name}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get merge bots reports


Get merge bots reports

Path parameters for "Get merge bots reports"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get merge bots reports"

mergeBotsNames

string
required
No description

date

string
No description

HTTP response status codes for "Get merge bots reports":

Code samples for "Get merge bots reports":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/reports"

Response example

{ "results": [ { "date": "2024-01-01T00:00:00Z", "mergeBotName": "string", "properties": [ { "type": "string", "value": "string" } ], "repositoryName": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/reports/latest


Get the latest merge bot reports for the repository.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/reports/latest"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/reports/latest":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/merge-bots/reports/latest":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-bots/reports/latest"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Produce a merge report


Produce a merge report

Path parameters for "Produce a merge report"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Produce a merge report"

Media Type:
application/json

comment

string
No description

destination

string
required
No description

source

object
required
No description

sourceType

string
required
No description

HTTP response status codes for "Produce a merge report":

Code samples for "Produce a merge report":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "comment": "string", "destination": "string", "source": {}, "sourceType": "branch"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/merge-report"

Response example

{ "conflictsThatCannotBeSolved": true, "mergeAllowed": true, "mergeIssues": "string", "result": { "changes": [ { "base": { "changeset": 0, "branchId": 0, "itemId": 0, "type": "directory", "owner": "string", "date": "2024-01-01T00:00:00Z", "size": 0 }, "isDirectory": true, "isContentChanged": true, "itemId": 0, "path": "string", "revInfo": { "changeset": 0, "branchId": 0, "itemId": 0, "type": "directory", "owner": "string", "date": "2024-01-01T00:00:00Z", "size": 0 }, "status": "string", "sourcePath": "string", "destinationPath": "string", "type": "string" } ], "directoryConflicts": [ { "type": "string", "source": { "base": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "isDirectory": true, "isContentChanged": true, "itemId": 0, "path": "string", "revInfo": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "status": "string", "sourcePath": "string", "destinationPath": "string", "type": "string" }, "destination": { "base": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "isDirectory": true, "isContentChanged": true, "itemId": 0, "path": "string", "revInfo": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "status": "string", "sourcePath": "string", "destinationPath": "string", "type": "string" }, "base": { "changeset": 0, "branchId": 0, "itemId": 0, "type": "directory", "owner": "string", "date": "2024-01-01T00:00:00Z", "size": 0 } } ], "fileConflicts": [ { "type": "string", "source": { "base": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "isDirectory": true, "isContentChanged": true, "itemId": 0, "path": "string", "revInfo": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "status": "string", "sourcePath": "string", "destinationPath": "string", "type": "string" }, "destination": { "base": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "isDirectory": true, "isContentChanged": true, "itemId": 0, "path": "string", "revInfo": { "changeset": null, "branchId": null, "itemId": null, "type": null, "owner": null, "date": null, "size": null }, "status": "string", "sourcePath": "string", "destinationPath": "string", "type": "string" }, "base": { "changeset": 0, "branchId": 0, "itemId": 0, "type": "directory", "owner": "string", "date": "2024-01-01T00:00:00Z", "size": 0 } } ], "resultStatus": "string" }}

GET /organizations/{organizationName}/repositories/{repositoryName}/notifications


List repository notifications.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/notifications"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/notifications":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/notifications":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/notifications"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

POST /organizations/{organizationName}/repositories/{repositoryName}/notifications


Create or register a repository notification.

Path parameters for "POST /organizations/{organizationName}/repositories/{repositoryName}/notifications"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "POST /organizations/{organizationName}/repositories/{repositoryName}/notifications":

Code samples for "POST /organizations/{organizationName}/repositories/{repositoryName}/notifications":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/notifications"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

DELETE /organizations/{organizationName}/repositories/{repositoryName}/notifications


Clear or dismiss repository notifications.

Path parameters for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/notifications"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/notifications":

Code samples for "DELETE /organizations/{organizationName}/repositories/{repositoryName}/notifications":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/notifications"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get a repository permissions


Get a repository permissions

Path parameters for "Get a repository permissions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Query parameters for "Get a repository permissions"

endUserType

string
No description

endUserName

string
No description

HTTP response status codes for "Get a repository permissions":

Code samples for "Get a repository permissions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/permissions"

Response example

{ "permissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}

Patch a repository permissions


Patch a repository permissions

Path parameters for "Patch a repository permissions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "Patch a repository permissions"

Media Type:
application/json

endUsersPermissions

array[object]
required
No description

name

string
required
No description

type

string
required
No description

permissions

array[object]
required
No description

name

string
required
No description

isOverride

boolean
required
No description

isEnabled

boolean
required
No description

valueInherited

boolean
No description

HTTP response status codes for "Patch a repository permissions":

Code samples for "Patch a repository permissions":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "endUsersPermissions": [ { "name": "string", "type": "user", "permissions": [ { "name": "string", "isOverride": true, "isEnabled": true, "valueInherited": true } ] } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/permissions"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get a revision


Get a revision

Path parameters for "Get a revision"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

revisionId

string
required
Path parameter revisionId

organizationName

string
required
No description

repositoryName

string
required
No description

revisionId

number
required
No description

HTTP response status codes for "Get a revision":

Code samples for "Get a revision":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/{revisionId}"

Response example

{ "branch": "string", "changesetId": 0, "comment": "string", "date": "2024-01-01T00:00:00Z", "itemPath": "string", "owner": "string", "repositoryName": "string", "revisionId": 0, "size": 0, "type": "string"}

Get the content of a revision


Get the content of a revision

Path parameters for "Get the content of a revision"

format

string
required
Path parameter format

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

revisionId

string
required
Path parameter revisionId

organizationName

string
required
No description

repositoryName

string
required
No description

revisionId

number
required
No description

format

string
required
No description

Header parameters for "Get the content of a revision"

x-encryption-token

string
No description

HTTP response status codes for "Get the content of a revision":

Code samples for "Get the content of a revision":

Request example

curl -X GET \ -H "x-encryption-token: <x-encryption-token>" \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/{revisionId}/{format}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get short-lived url that points to revision content


This returned url can directly be used without other authentication

Path parameters for "Get short-lived url that points to revision content"

format

string
required
Path parameter format

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

revisionId

string
required
Path parameter revisionId

organizationName

string
required
No description

repositoryName

string
required
No description

revisionId

number
required
No description

format

string
required
No description

Header parameters for "Get short-lived url that points to revision content"

x-encryption-token

string
No description

Query parameters for "Get short-lived url that points to revision content"

name

string
required
No description

HTTP response status codes for "Get short-lived url that points to revision content":

Code samples for "Get short-lived url that points to revision content":

Request example

curl -X GET \ -H "x-encryption-token: <x-encryption-token>" \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/{revisionId}/{format}/url"

Response example

{ "url": "string"}

Get revision annotations


Get revision annotations

Path parameters for "Get revision annotations"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

revisionId

string
required
Path parameter revisionId

organizationName

string
required
No description

repositoryName

string
required
No description

revisionId

number
required
No description

HTTP response status codes for "Get revision annotations":

Code samples for "Get revision annotations":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/{revisionId}/annotations"

Response example

[ { "branchName": "string", "changesetId": 0, "comment": "string", "date": "2024-01-01T00:00:00Z", "line": 0, "owner": "string", "parentRevisionId": 0, "revisionId": 0 }]

Get data content revisions


Gives you metadata if it is a binary or the content if it is a text file

Path parameters for "Get data content revisions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Header parameters for "Get data content revisions"

x-encryption-token

string
No description

Query parameters for "Get data content revisions"

revisionId

array
required
No description

HTTP response status codes for "Get data content revisions":

Code samples for "Get data content revisions":

Request example

curl -X GET \ -H "x-encryption-token: <x-encryption-token>" \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/data"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get data content revisions


Gives you metadata if it is a binary or the content if it is a text file. This endpoint has a body to avoid the url size limit

Path parameters for "Get data content revisions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Header parameters for "Get data content revisions"

x-encryption-token

string
No description

Request body for "Get data content revisions"

Media Type:
application/json

encryptionToken

string
No description

revision

array[object]
No description

name

string
required
No description

revisionId

number
required
No description

revisionIds

array[number]
required
No description

HTTP response status codes for "Get data content revisions":

Code samples for "Get data content revisions":

Request example

curl -X POST \ -H "x-encryption-token: <x-encryption-token>" \ -H "Content-Type: application/json" \ -d '{ "encryptionToken": "string", "revision": [ { "name": "string", "revisionId": 0 } ], "revisionIds": []}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/data"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url


Get signed URLs for data (non-raw) revision content via query parameters.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url


Obtain signed URLs for data revision content via request body.

Path parameters for "POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url":

Code samples for "POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/data/url"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get raw content revisions


Gives you the file content, whatever the file type

Path parameters for "Get raw content revisions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Header parameters for "Get raw content revisions"

x-encryption-token

string
No description

Query parameters for "Get raw content revisions"

revisionId

array
required
No description

HTTP response status codes for "Get raw content revisions":

Code samples for "Get raw content revisions":

Request example

curl -X GET \ -H "x-encryption-token: <x-encryption-token>" \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/raw"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get raw content revisions


Gives you the file content, whatever the file type. This endpoint has a body to avoid the url size limit

Path parameters for "Get raw content revisions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Header parameters for "Get raw content revisions"

x-encryption-token

string
No description

Request body for "Get raw content revisions"

Media Type:
application/json

encryptionToken

string
No description

revision

array[object]
No description

name

string
required
No description

revisionId

number
required
No description

revisionIds

array[number]
required
No description

HTTP response status codes for "Get raw content revisions":

Code samples for "Get raw content revisions":

Request example

curl -X POST \ -H "x-encryption-token: <x-encryption-token>" \ -H "Content-Type: application/json" \ -d '{ "encryptionToken": "string", "revision": [ { "name": "string", "revisionId": 0 } ], "revisionIds": []}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/raw"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url


Get signed URLs for raw revision content via query parameters.

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url


Obtain signed URLs for raw revision content via request body.

Path parameters for "POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

HTTP response status codes for "POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url":

Code samples for "POST /organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url":

Request example

curl -X POST \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/revisions/raw/url"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /organizations/{organizationName}/repositories/{repositoryName}/subscriptions


Get the user subscription for notifications from repository

Path parameters for "GET /organizations/{organizationName}/repositories/{repositoryName}/subscriptions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

HTTP response status codes for "GET /organizations/{organizationName}/repositories/{repositoryName}/subscriptions":

Code samples for "GET /organizations/{organizationName}/repositories/{repositoryName}/subscriptions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/subscriptions"

Response example

{ "type": [ "reviews" ]}

PATCH /organizations/{organizationName}/repositories/{repositoryName}/subscriptions


Update the user subscription for notifications from repository

Path parameters for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/subscriptions"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

Request body for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/subscriptions"

Media Type:
application/json

types

array[string]
required
No description

HTTP response status codes for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/subscriptions":

Code samples for "PATCH /organizations/{organizationName}/repositories/{repositoryName}/subscriptions":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "types": [ "reviews" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/subscriptions"

Response example

{ "type": [ "reviews" ]}

Validate if a name is correct


Check if the name follows the repository name nomenclature

Path parameters for "Validate if a name is correct"

organizationName

string
required
Path parameter organizationName

repositoryName

string
required
Path parameter repositoryName

organizationName

string
required
No description

repositoryName

string
required
No description

HTTP response status codes for "Validate if a name is correct":

Code samples for "Validate if a name is correct":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/{repositoryName}/validate-name"

Response example

{ "error": "string", "isValid": true}

Get repositories lock rules


Get all rules for all repositories in the organization

Path parameters for "Get repositories lock rules"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get repositories lock rules"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

offset

number
No description

orderBy

string
No description

HTTP response status codes for "Get repositories lock rules":

Code samples for "Get repositories lock rules":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/lock-rules"

Response example

{ "limit": 0, "offset": 0, "total": 0, "results": [ { "excludedBranches": [ "string" ], "fileExtensions": "string", "repositoryName": "string", "targetBranch": "string", "targetBranches": [ "string" ] } ]}

Create or update a repository lock rule


Create or update a lock rule for a repository. If the lock rule exists, the POST we replace it

Path parameters for "Create or update a repository lock rule"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Create or update a repository lock rule"

Media Type:
application/json

excludedBranches

array[string]
No description

fileExtensions

string
required
No description

repositoryName

string
required
No description

targetBranch

string
No description

targetBranches

array[string]
No description

HTTP response status codes for "Create or update a repository lock rule":

Code samples for "Create or update a repository lock rule":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "excludedBranches": [ "string" ], "fileExtensions": "string", "repositoryName": "string", "targetBranch": "string", "targetBranches": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/lock-rules"

Response example

{ "excludedBranches": [ "string" ], "fileExtensions": "string", "repositoryName": "string", "targetBranch": "string", "targetBranches": [ "string" ]}

Delete repositories lock rules


Each repository has only one lock rule. Give the name of the repository is enough to delete it s lock rule

Path parameters for "Delete repositories lock rules"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Delete repositories lock rules"

Media Type:
application/json

repositoriesNames

array[string]
required
No description

HTTP response status codes for "Delete repositories lock rules":

Code samples for "Delete repositories lock rules":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "repositoriesNames": [ "string" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/repositories/lock-rules"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get organization storage


Get organization storage

Path parameters for "Get organization storage"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "Get organization storage":

Code samples for "Get organization storage":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/storage"

Response example

{ "rawStorageMax": 0, "rawStorageUsed": 0, "repositories": [ { "name": "string", "size": 0 } ], "storageMax": 0, "storageUsed": 0}

GET /organizations/{organizationName}/subscriptions


Get the user subscription for notifications from organization

Path parameters for "GET /organizations/{organizationName}/subscriptions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

HTTP response status codes for "GET /organizations/{organizationName}/subscriptions":

Code samples for "GET /organizations/{organizationName}/subscriptions":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/subscriptions"

Response example

{ "type": [ "reviews" ]}

PATCH /organizations/{organizationName}/subscriptions


Update the user subscription for notifications from organization

Path parameters for "PATCH /organizations/{organizationName}/subscriptions"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "PATCH /organizations/{organizationName}/subscriptions"

Media Type:
application/json

types

array[string]
required
No description

HTTP response status codes for "PATCH /organizations/{organizationName}/subscriptions":

Code samples for "PATCH /organizations/{organizationName}/subscriptions":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "types": [ "reviews" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/subscriptions"

Response example

{ "type": [ "reviews" ]}

Get user groups


This is paginated

Path parameters for "Get user groups"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get user groups"

orderBy

string
No description

filterUserIds

array
No description

offset

number
No description

limit

number
No description

search

string
No description

order

string
No description

HTTP response status codes for "Get user groups":

Code samples for "Get user groups":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups"

Response example

{ "limit": 0, "offset": 0, "results": [ { "description": "string", "id": 0, "name": "string", "userCount": 0 } ], "total": 0}

Create a user group


Create a user group

Path parameters for "Create a user group"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Create a user group"

Media Type:
application/json

description

string
required
No description

name

string
required
No description

permissions

array[object]
required
No description

endUsersPermissions

array[object]
required
No description

name

string
required
No description

type

string
required
No description

permissions

array[object]
required
No description

name

string
required
No description

isOverride

boolean
required
No description

isEnabled

boolean
required
No description

valueInherited

boolean
No description

HTTP response status codes for "Create a user group":

Code samples for "Create a user group":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "description": "string", "name": "string", "permissions": [ { "endUsersPermissions": [ { "name": "string", "type": "user", "permissions": [ null ] } ] } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups"

Response example

{ "description": "string", "id": 0, "name": "string", "userCount": 0}

Change a user group


Change a user group

Path parameters for "Change a user group"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Change a user group"

Media Type:
application/json

userGroups

array[object]
required
No description

id

number
required
No description

users

object
required
No description

add

array[string]
required
No description

remove

array[string]
required
No description

HTTP response status codes for "Change a user group":

Code samples for "Change a user group":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "userGroups": [ { "id": 0, "users": { "add": [ "string" ], "remove": [ "string" ] } } ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Remove user groups


Remove user groups

Path parameters for "Remove user groups"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Remove user groups"

Media Type:
application/json

ids

array[number]
required
No description

HTTP response status codes for "Remove user groups":

Code samples for "Remove user groups":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "ids": [ 0 ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups"

Response example

{ "failures": [ 0 ]}

Get a user group


Get a user group

Path parameters for "Get a user group"

groupId

string
required
Path parameter groupId

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

groupId

number
required
No description

HTTP response status codes for "Get a user group":

Code samples for "Get a user group":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/{groupId}"

Response example

{ "description": "string", "id": 0, "name": "string", "userCount": 0}

Patch a user group


Patch a user group

Path parameters for "Patch a user group"

groupId

string
required
Path parameter groupId

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

groupId

number
required
No description

Request body for "Patch a user group"

Media Type:
application/json

description

string
No description

name

string
No description

HTTP response status codes for "Patch a user group":

Code samples for "Patch a user group":

Request example

curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "description": "string", "name": "string"}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/{groupId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Delete a user group


Delete a user group

Path parameters for "Delete a user group"

groupId

string
required
Path parameter groupId

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

groupId

number
required
No description

HTTP response status codes for "Delete a user group":

Code samples for "Delete a user group":

Request example

curl -X DELETE \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/{groupId}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get users in a user group


Get a paginated list of users in a user group by name.

Path parameters for "Get users in a user group"

groupId

string
required
Path parameter groupId

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

groupId

number
required
The group ID

Query parameters for "Get users in a user group"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

offset

number
No description

orderBy

string
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get users in a user group":

Code samples for "Get users in a user group":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/{groupId}/users"

Response example

{ "limit": 0, "offset": 0, "total": 0, "results": [ { "assignedAt": "2024-01-01T00:00:00Z", "email": "user@example.com", "groups": [ { "id": 0, "name": "string" } ], "id": 0, "isAdmin": true, "isOwner": true, "joinedOrganizationAt": "2024-01-01T00:00:00Z", "permissions": [ { "isEnabled": true, "isOverride": true, "name": "string", "valueInherited": true } ], "source": "DevOps", "unityUser": { "avatarUrl": "https://example.com", "email": "user@example.com", "genesisId": "string", "id": "string", "name": "string" } } ]}

Add users to a user group


Add users to a user group by name.

Path parameters for "Add users to a user group"

groupId

string
required
Path parameter groupId

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

groupId

number
required
The group ID

Request body for "Add users to a user group"

Media Type:
application/json

emails

array[string]
required
No description

HTTP response status codes for "Add users to a user group":

Code samples for "Add users to a user group":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "emails": [ "user@example.com" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/{groupId}/users"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Remove users from a user group


Remove users from a user group by name.

Path parameters for "Remove users from a user group"

groupId

string
required
Path parameter groupId

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

groupId

number
required
The group ID

Request body for "Remove users from a user group"

Media Type:
application/json

emails

array[string]
required
No description

HTTP response status codes for "Remove users from a user group":

Code samples for "Remove users from a user group":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "emails": [ "user@example.com" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/{groupId}/users"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Get if a user group name is available


Get if a user group name is available

Path parameters for "Get if a user group name is available"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get if a user group name is available"

name

string
required
No description

HTTP response status codes for "Get if a user group name is available":

Code samples for "Get if a user group name is available":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/user-groups/names/available"

Response example

{ "isAvailable": true}

Get users


Paginated list of users in the organization.

Path parameters for "Get users"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Query parameters for "Get users"

limit

number
No description

search

array
Optional search string. Can be repeated to search for multiple strings. Only available on endpoints with multi-search support.

order

string
No description

offset

number
No description

orderBy

string
No description

filterGroupNames

array
Comma-separated list of group names to filter by

filterRegistered

boolean
No description

includeFields

array
Comma-separated list of fields to include in the response

HTTP response status codes for "Get users":

Code samples for "Get users":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/users"

Response example

{ "limit": 0, "offset": 0, "total": 0, "results": [ { "assignedAt": "2024-01-01T00:00:00Z", "email": "user@example.com", "groups": [ { "id": 0, "name": "string" } ], "id": 0, "isAdmin": true, "isOwner": true, "joinedOrganizationAt": "2024-01-01T00:00:00Z", "permissions": [ { "isEnabled": true, "isOverride": true, "name": "string", "valueInherited": true } ], "source": "DevOps", "unityUser": { "avatarUrl": "https://example.com", "email": "user@example.com", "genesisId": "string", "id": "string", "name": "string" } } ]}

Delete users


Delete the provided users from the organization.

Path parameters for "Delete users"

organizationName

string
required
Path parameter organizationName

organizationName

string
required
No description

Request body for "Delete users"

Media Type:
application/json

emails

array[string]
required
No description

HTTP response status codes for "Delete users":

Code samples for "Delete users":

Request example

curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "emails": [ "user@example.com" ]}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/users"

Response example

{ "failures": [ "user@example.com" ]}

GET /organizations/{organizationName}/users/{id}


Get an organization user by id.

Path parameters for "GET /organizations/{organizationName}/users/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "GET /organizations/{organizationName}/users/{id}":

Code samples for "GET /organizations/{organizationName}/users/{id}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/users/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

PATCH /organizations/{organizationName}/users/{id}


Update an organization user by id.

Path parameters for "PATCH /organizations/{organizationName}/users/{id}"

id

string
required
Path parameter id

organizationName

string
required
Path parameter organizationName

HTTP response status codes for "PATCH /organizations/{organizationName}/users/{id}":

Code samples for "PATCH /organizations/{organizationName}/users/{id}":

Request example

curl -X PATCH \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/users/{id}"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

GET /at-unity-organizations/{organizationId}


Get @unity organization by unity organization id

Path parameters for "GET /at-unity-organizations/{organizationId}"

organizationId

string
required
Genesis ID of the organization

organizationId

string
required
No description

HTTP response status codes for "GET /at-unity-organizations/{organizationId}":

Code samples for "GET /at-unity-organizations/{organizationId}":

Request example

curl -X GET \ "https://services.api.unity.com/plastic/v1/at-unity-organizations/{organizationId}"

Response example

{ "canCreateRepository": true, "creationDate": "2024-01-01T00:00:00Z", "description": "string", "devOpsUnlimited": true, "freeTierLimitReached": true, "genesisOrganizationId": "string", "isEncrypted": true, "isLinked": true, "isUnityCloudBundle": true, "name": "string", "ownerId": 0, "rawStorageMax": 0, "rawStorageUsed": 0, "regionDescription": "string", "regionName": "string", "regionUrl": "https://example.com", "source": "purchase", "storageMax": 0, "storageUsed": 0, "ugoLimitReached": true, "unityOrganization": { "genesisId": "string", "id": "string", "name": "string" }, "userBelongsToOrganization": true, "userCount": 0}

POST /organizations/{organizationName}/invitations


Send invitations to join the organization. Duplicate emails are deduplicated.

Path parameters for "POST /organizations/{organizationName}/invitations"

organizationName

string
required
Path parameter organizationName

Request body for "POST /organizations/{organizationName}/invitations"

Media Type:
application/json

emails

array[string]
required
No description

adminPermissions

boolean
required
Grant admin permissions to the invited users.

HTTP response status codes for "POST /organizations/{organizationName}/invitations":

Code samples for "POST /organizations/{organizationName}/invitations":

Request example

curl -X POST \ -H "Content-Type: application/json" \ -d '{ "emails": [ "user@example.com" ], "adminPermissions": true}' \ "https://services.api.unity.com/plastic/v1/organizations/{organizationName}/invitations"

Response example

{ "failures": [ { "name": "string", "id": 0, "code": "string", "message": "string" } ]}

Copyright © 2026 Unity Technologies
LegalPrivacy PolicyCookiesDocumentation Terms of UseDo Not Sell or Share My Personal InformationYour Privacy Choices (Cookie Settings)

"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S and elsewhere (more info here). Other names or brands are trademarks of their respective owners.

Some pages are machine-translated for convenience, and may contain inaccuracies. In the event of conflicting information, the English version is authoritative.