Permission
A permission that defines a specific action (or set of actions) a TeamCity user can perform. The non-editable list of user permissions is available via the /app/rest/users/{userLocator}/permissions endpoint. Permissions are granted to roles, which can then be attached to user groups or individual users.
Related Help article: Managing Roles and Permissions
Properties
id
The unique permission ID.
name
The read-only description of this permission
global
Returns true if the permission can be assigned only globally (for example, the view_audit_log permission); false if it can be limited to a specific TeamCity project (cancel_build or view_project).
This property is a characteristic of a permission itself and does not reflect how this permission is used in a specific role for a specific user. Users can be granted a non-global permission (either directly or by joining a user group) both for individual projects and globally (for all projects on a server). For example, when assigning a role to an individual user, a request body can set the scope parameter to either g (global) or p:{Project_ID}. The actual permission scope for a specific user is stored in the PermissionAssignment.isGlobalScope property.
Schema
Below, you can find a full schema of this object, in XML and JSON formats. You can choose what fields to submit depending on your current needs. Different methods might expect different fields: the best approach is to request this entity via GET and use the response as a base for the following POST request.
A link to another object implies that you can substitute it with the schema of the linked object, if it is required for your call.