memberentitlementmanagement

package
v1.0.0-b5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 23, 2020 License: MIT Imports: 14 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var GroupTypeValues = groupTypeValuesType{
	ProjectStakeholder:   "projectStakeholder",
	ProjectReader:        "projectReader",
	ProjectContributor:   "projectContributor",
	ProjectAdministrator: "projectAdministrator",
	Custom:               "custom",
}
View Source
var ProjectPermissionInheritedValues = projectPermissionInheritedValuesType{
	NotSet:       "notSet",
	NotInherited: "notInherited",
	Inherited:    "inherited",
}
View Source
var ResourceAreaId, _ = uuid.Parse("68ddce18-2501-45f1-a17b-7931a9922690")
View Source
var SummaryPropertyNameValues = summaryPropertyNameValuesType{
	AccessLevels: "accessLevels",
	Licenses:     "licenses",
	Extensions:   "extensions",
	Projects:     "projects",
	Groups:       "groups",
	All:          "all",
}
View Source
var UserEntitlementPropertyValues = userEntitlementPropertyValuesType{
	License:    "license",
	Extensions: "extensions",
	Projects:   "projects",
	GroupRules: "groupRules",
	All:        "all",
}

Functions

This section is empty.

Types

type AddGroupEntitlementArgs

type AddGroupEntitlementArgs struct {
	// (required) GroupEntitlement object specifying License Rule, Extensions Rule for the group. Based on the rules the members of the group will be given licenses and extensions. The Group Entitlement can be used to add the group to another project level groups
	GroupEntitlement *GroupEntitlement
	// (optional) RuleOption [ApplyGroupRule/TestApplyGroupRule] - specifies if the rules defined in group entitlement should be created and applied to it’s members (default option) or just be tested
	RuleOption *licensingrule.RuleOption
}

Arguments for the AddGroupEntitlement function

type AddMemberToGroupArgs

type AddMemberToGroupArgs struct {
	// (required) Id of the Group.
	GroupId *uuid.UUID
	// (required) Id of the member to add.
	MemberId *uuid.UUID
}

Arguments for the AddMemberToGroup function

type AddUserEntitlementArgs

type AddUserEntitlementArgs struct {
	// (required) UserEntitlement object specifying License, Extensions and Project/Team groups the user should be added to.
	UserEntitlement *UserEntitlement
}

Arguments for the AddUserEntitlement function

type BaseOperationResult

type BaseOperationResult struct {
	// List of error codes paired with their corresponding error messages
	Errors *[]azuredevops.KeyValuePair `json:"errors,omitempty"`
	// Success status of the operation
	IsSuccess *bool `json:"isSuccess,omitempty"`
}

type Client

type Client interface {
	// [Preview API] Create a group entitlement with license rule, extension rule.
	AddGroupEntitlement(context.Context, AddGroupEntitlementArgs) (*GroupEntitlementOperationReference, error)
	// [Preview API] Add a member to a Group.
	AddMemberToGroup(context.Context, AddMemberToGroupArgs) error
	// [Preview API] Add a user, assign license and extensions and make them a member of a project group in an account.
	AddUserEntitlement(context.Context, AddUserEntitlementArgs) (*UserEntitlementsPostResponse, error)
	// [Preview API] Delete a group entitlement.
	DeleteGroupEntitlement(context.Context, DeleteGroupEntitlementArgs) (*GroupEntitlementOperationReference, error)
	// [Preview API] Delete a user from the account.
	DeleteUserEntitlement(context.Context, DeleteUserEntitlementArgs) error
	// [Preview API] Get a group entitlement.
	GetGroupEntitlement(context.Context, GetGroupEntitlementArgs) (*GroupEntitlement, error)
	// [Preview API] Get the group entitlements for an account.
	GetGroupEntitlements(context.Context, GetGroupEntitlementsArgs) (*[]GroupEntitlement, error)
	// [Preview API] Get direct members of a Group.
	GetGroupMembers(context.Context, GetGroupMembersArgs) (*PagedGraphMemberList, error)
	// [Preview API] Get User Entitlement for a user.
	GetUserEntitlement(context.Context, GetUserEntitlementArgs) (*UserEntitlement, error)
	// [Preview API] Get a paged set of user entitlements matching the filter criteria. If no filter is is passed, a page from all the account users is returned.
	GetUserEntitlements(context.Context, GetUserEntitlementsArgs) (*PagedGraphMemberList, error)
	// [Preview API] Get summary of Licenses, Extension, Projects, Groups and their assignments in the collection.
	GetUsersSummary(context.Context, GetUsersSummaryArgs) (*UsersSummary, error)
	// [Preview API] Remove a member from a Group.
	RemoveMemberFromGroup(context.Context, RemoveMemberFromGroupArgs) error
	// [Preview API] Update entitlements (License Rule, Extensions Rule, Project memberships etc.) for a group.
	UpdateGroupEntitlement(context.Context, UpdateGroupEntitlementArgs) (*GroupEntitlementOperationReference, error)
	// [Preview API] Edit the entitlements (License, Extensions, Projects, Teams etc) for a user.
	UpdateUserEntitlement(context.Context, UpdateUserEntitlementArgs) (*UserEntitlementsPatchResponse, error)
	// [Preview API] Edit the entitlements (License, Extensions, Projects, Teams etc) for one or more users.
	UpdateUserEntitlements(context.Context, UpdateUserEntitlementsArgs) (*UserEntitlementOperationReference, error)
}

func NewClient

func NewClient(ctx context.Context, connection *azuredevops.Connection) (Client, error)

type ClientImpl

type ClientImpl struct {
	Client azuredevops.Client
}

func (*ClientImpl) AddGroupEntitlement

[Preview API] Create a group entitlement with license rule, extension rule.

func (*ClientImpl) AddMemberToGroup

func (client *ClientImpl) AddMemberToGroup(ctx context.Context, args AddMemberToGroupArgs) error

[Preview API] Add a member to a Group.

func (*ClientImpl) AddUserEntitlement

func (client *ClientImpl) AddUserEntitlement(ctx context.Context, args AddUserEntitlementArgs) (*UserEntitlementsPostResponse, error)

[Preview API] Add a user, assign license and extensions and make them a member of a project group in an account.

func (*ClientImpl) DeleteGroupEntitlement

func (client *ClientImpl) DeleteGroupEntitlement(ctx context.Context, args DeleteGroupEntitlementArgs) (*GroupEntitlementOperationReference, error)

[Preview API] Delete a group entitlement.

func (*ClientImpl) DeleteUserEntitlement

func (client *ClientImpl) DeleteUserEntitlement(ctx context.Context, args DeleteUserEntitlementArgs) error

[Preview API] Delete a user from the account.

func (*ClientImpl) GetGroupEntitlement

func (client *ClientImpl) GetGroupEntitlement(ctx context.Context, args GetGroupEntitlementArgs) (*GroupEntitlement, error)

[Preview API] Get a group entitlement.

func (*ClientImpl) GetGroupEntitlements

func (client *ClientImpl) GetGroupEntitlements(ctx context.Context, args GetGroupEntitlementsArgs) (*[]GroupEntitlement, error)

[Preview API] Get the group entitlements for an account.

func (*ClientImpl) GetGroupMembers

func (client *ClientImpl) GetGroupMembers(ctx context.Context, args GetGroupMembersArgs) (*PagedGraphMemberList, error)

[Preview API] Get direct members of a Group.

func (*ClientImpl) GetUserEntitlement

func (client *ClientImpl) GetUserEntitlement(ctx context.Context, args GetUserEntitlementArgs) (*UserEntitlement, error)

[Preview API] Get User Entitlement for a user.

func (*ClientImpl) GetUserEntitlements

func (client *ClientImpl) GetUserEntitlements(ctx context.Context, args GetUserEntitlementsArgs) (*PagedGraphMemberList, error)

[Preview API] Get a paged set of user entitlements matching the filter criteria. If no filter is is passed, a page from all the account users is returned.

func (*ClientImpl) GetUsersSummary

func (client *ClientImpl) GetUsersSummary(ctx context.Context, args GetUsersSummaryArgs) (*UsersSummary, error)

[Preview API] Get summary of Licenses, Extension, Projects, Groups and their assignments in the collection.

func (*ClientImpl) RemoveMemberFromGroup

func (client *ClientImpl) RemoveMemberFromGroup(ctx context.Context, args RemoveMemberFromGroupArgs) error

[Preview API] Remove a member from a Group.

func (*ClientImpl) UpdateGroupEntitlement

func (client *ClientImpl) UpdateGroupEntitlement(ctx context.Context, args UpdateGroupEntitlementArgs) (*GroupEntitlementOperationReference, error)

[Preview API] Update entitlements (License Rule, Extensions Rule, Project memberships etc.) for a group.

func (*ClientImpl) UpdateUserEntitlement

func (client *ClientImpl) UpdateUserEntitlement(ctx context.Context, args UpdateUserEntitlementArgs) (*UserEntitlementsPatchResponse, error)

[Preview API] Edit the entitlements (License, Extensions, Projects, Teams etc) for a user.

func (*ClientImpl) UpdateUserEntitlements

func (client *ClientImpl) UpdateUserEntitlements(ctx context.Context, args UpdateUserEntitlementsArgs) (*UserEntitlementOperationReference, error)

[Preview API] Edit the entitlements (License, Extensions, Projects, Teams etc) for one or more users.

type DeleteGroupEntitlementArgs

type DeleteGroupEntitlementArgs struct {
	// (required) ID of the group to delete.
	GroupId *uuid.UUID
	// (optional) RuleOption [ApplyGroupRule/TestApplyGroupRule] - specifies if the rules defined in group entitlement should be deleted and the changes are applied to it’s members (default option) or just be tested
	RuleOption *licensingrule.RuleOption
	// (optional) Optional parameter that specifies whether the group with the given ID should be removed from all other groups
	RemoveGroupMembership *bool
}

Arguments for the DeleteGroupEntitlement function

type DeleteUserEntitlementArgs

type DeleteUserEntitlementArgs struct {
	// (required) ID of the user.
	UserId *uuid.UUID
}

Arguments for the DeleteUserEntitlement function

type Extension

type Extension struct {
	// Assignment source for this extension. I.e. explicitly assigned or from a group rule.
	AssignmentSource *licensing.AssignmentSource `json:"assignmentSource,omitempty"`
	// Gallery Id of the Extension.
	Id *string `json:"id,omitempty"`
	// Friendly name of this extension.
	Name *string `json:"name,omitempty"`
	// Source of this extension assignment. Ex: msdn, account, none, etc.
	Source *licensing.LicensingSource `json:"source,omitempty"`
}

An extension assigned to a user

type ExtensionSummaryData

type ExtensionSummaryData struct {
	// Count of Licenses already assigned.
	Assigned *int `json:"assigned,omitempty"`
	// Available Count.
	Available *int `json:"available,omitempty"`
	// Quantity
	IncludedQuantity *int `json:"includedQuantity,omitempty"`
	// Total Count.
	Total *int `json:"total,omitempty"`
	// Count of Extension Licenses assigned to users through msdn.
	AssignedThroughSubscription *int `json:"assignedThroughSubscription,omitempty"`
	// Gallery Id of the Extension
	ExtensionId *string `json:"extensionId,omitempty"`
	// Friendly name of this extension
	ExtensionName *string `json:"extensionName,omitempty"`
	// Whether its a Trial Version.
	IsTrialVersion *bool `json:"isTrialVersion,omitempty"`
	// Minimum License Required for the Extension.
	MinimumLicenseRequired *commerce.MinimumRequiredServiceLevel `json:"minimumLicenseRequired,omitempty"`
	// Days remaining for the Trial to expire.
	RemainingTrialDays *int `json:"remainingTrialDays,omitempty"`
	// Date on which the Trial expires.
	TrialExpiryDate *azuredevops.Time `json:"trialExpiryDate,omitempty"`
}

Summary of Extensions in the organization.

type GetGroupEntitlementArgs

type GetGroupEntitlementArgs struct {
	// (required) ID of the group.
	GroupId *uuid.UUID
}

Arguments for the GetGroupEntitlement function

type GetGroupEntitlementsArgs

type GetGroupEntitlementsArgs struct {
}

Arguments for the GetGroupEntitlements function

type GetGroupMembersArgs

type GetGroupMembersArgs struct {
	// (required) Id of the Group.
	GroupId *uuid.UUID
	// (optional) Maximum number of results to retrieve.
	MaxResults *int
	// (optional) Paging Token from the previous page fetched. If the 'pagingToken' is null, the results would be fetched from the beginning of the Members List.
	PagingToken *string
}

Arguments for the GetGroupMembers function

type GetUserEntitlementArgs

type GetUserEntitlementArgs struct {
	// (required) ID of the user.
	UserId *uuid.UUID
}

Arguments for the GetUserEntitlement function

type GetUserEntitlementsArgs

type GetUserEntitlementsArgs struct {
	// (optional) Maximum number of the user entitlements to return. Max value is 10000. Default value is 100
	Top *int
	// (optional) Offset: Number of records to skip. Default value is 0
	Skip *int
	// (optional) Comma (",") separated list of properties and their values to filter on. Currently, the API only supports filtering by ExtensionId. An example parameter would be filter=extensionId eq search.
	Filter *string
	// (optional) PropertyName and Order (separated by a space ( )) to sort on (e.g. LastAccessDate Desc)
	SortOption *string
}

Arguments for the GetUserEntitlements function

type GetUsersSummaryArgs

type GetUsersSummaryArgs struct {
	// (optional) Comma (",") separated list of properties to select. Supported property names are {AccessLevels, Licenses, Extensions, Projects, Groups}.
	Select *string
}

Arguments for the GetUsersSummary function

type Group

type Group struct {
	// Display Name of the Group
	DisplayName *string `json:"displayName,omitempty"`
	// Group Type
	GroupType *GroupType `json:"groupType,omitempty"`
}

Project Group (e.g. Contributor, Reader etc.)

type GroupEntitlement

type GroupEntitlement struct {
	// Extension Rules.
	ExtensionRules *[]Extension `json:"extensionRules,omitempty"`
	// Member reference.
	Group *graph.GraphGroup `json:"group,omitempty"`
	// The unique identifier which matches the Id of the GraphMember.
	Id *uuid.UUID `json:"id,omitempty"`
	// [Readonly] The last time the group licensing rule was executed (regardless of whether any changes were made).
	LastExecuted *azuredevops.Time `json:"lastExecuted,omitempty"`
	// License Rule.
	LicenseRule *licensing.AccessLevel `json:"licenseRule,omitempty"`
	// Group members. Only used when creating a new group.
	Members *[]UserEntitlement `json:"members,omitempty"`
	// Relation between a project and the member's effective permissions in that project.
	ProjectEntitlements *[]ProjectEntitlement `json:"projectEntitlements,omitempty"`
	// The status of the group rule.
	Status *licensingrule.GroupLicensingRuleStatus `json:"status,omitempty"`
}

A group entity with additional properties including its license, extensions, and project membership

type GroupEntitlementOperationReference

type GroupEntitlementOperationReference struct {
	// Unique identifier for the operation.
	Id *uuid.UUID `json:"id,omitempty"`
	// Unique identifier for the plugin.
	PluginId *uuid.UUID `json:"pluginId,omitempty"`
	// The current status of the operation.
	Status *operations.OperationStatus `json:"status,omitempty"`
	// URL to get the full operation object.
	Url *string `json:"url,omitempty"`
	// Operation completed with success or failure.
	Completed *bool `json:"completed,omitempty"`
	// True if all operations were successful.
	HaveResultsSucceeded *bool `json:"haveResultsSucceeded,omitempty"`
	// List of results for each operation.
	Results *[]GroupOperationResult `json:"results,omitempty"`
}

type GroupOperationResult

type GroupOperationResult struct {
	// List of error codes paired with their corresponding error messages
	Errors *[]azuredevops.KeyValuePair `json:"errors,omitempty"`
	// Success status of the operation
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Identifier of the Group being acted upon
	GroupId *uuid.UUID `json:"groupId,omitempty"`
	// Result of the Groupentitlement after the operation
	Result *GroupEntitlement `json:"result,omitempty"`
}

type GroupOption

type GroupOption struct {
	// Access Level
	AccessLevel *licensing.AccessLevel `json:"accessLevel,omitempty"`
	// Group
	Group *Group `json:"group,omitempty"`
}

Group option to add a user to

type GroupType

type GroupType string

Used when adding users to a project. Each GroupType maps to a well-known group. The lowest GroupType should always be ProjectStakeholder

type LicenseSummaryData

type LicenseSummaryData struct {
	// Count of Licenses already assigned.
	Assigned *int `json:"assigned,omitempty"`
	// Available Count.
	Available *int `json:"available,omitempty"`
	// Quantity
	IncludedQuantity *int `json:"includedQuantity,omitempty"`
	// Total Count.
	Total *int `json:"total,omitempty"`
	// Type of Account License.
	AccountLicenseType *licensing.AccountLicenseType `json:"accountLicenseType,omitempty"`
	// Count of Disabled Licenses.
	Disabled *int `json:"disabled,omitempty"`
	// Designates if this license quantity can be changed through purchase
	IsPurchasable *bool `json:"isPurchasable,omitempty"`
	// Name of the License.
	LicenseName *string `json:"licenseName,omitempty"`
	// Type of MSDN License.
	MsdnLicenseType *licensing.MsdnLicenseType `json:"msdnLicenseType,omitempty"`
	// Specifies the date when billing will charge for paid licenses
	NextBillingDate *azuredevops.Time `json:"nextBillingDate,omitempty"`
	// Source of the License.
	Source *licensing.LicensingSource `json:"source,omitempty"`
	// Total license count after next billing cycle
	TotalAfterNextBillingDate *int `json:"totalAfterNextBillingDate,omitempty"`
}

Summary of Licenses in the organization.

type MemberEntitlement deprecated

type MemberEntitlement struct {
	// User's access level denoted by a license.
	AccessLevel *licensing.AccessLevel `json:"accessLevel,omitempty"`
	// [Readonly] Date the user was added to the collection.
	DateCreated *azuredevops.Time `json:"dateCreated,omitempty"`
	// User's extensions.
	Extensions *[]Extension `json:"extensions,omitempty"`
	// [Readonly] GroupEntitlements that this user belongs to.
	GroupAssignments *[]GroupEntitlement `json:"groupAssignments,omitempty"`
	// The unique identifier which matches the Id of the Identity associated with the GraphMember.
	Id *uuid.UUID `json:"id,omitempty"`
	// [Readonly] Date the user last accessed the collection.
	LastAccessedDate *azuredevops.Time `json:"lastAccessedDate,omitempty"`
	// Relation between a project and the user's effective permissions in that project.
	ProjectEntitlements *[]ProjectEntitlement `json:"projectEntitlements,omitempty"`
	// User reference.
	User *graph.GraphUser `json:"user,omitempty"`
	// Member reference
	Member *graph.GraphMember `json:"member,omitempty"`
}

Deprecated: Use UserEntitlement instead

type MemberEntitlementOperationReference

type MemberEntitlementOperationReference struct {
	// Unique identifier for the operation.
	Id *uuid.UUID `json:"id,omitempty"`
	// Unique identifier for the plugin.
	PluginId *uuid.UUID `json:"pluginId,omitempty"`
	// The current status of the operation.
	Status *operations.OperationStatus `json:"status,omitempty"`
	// URL to get the full operation object.
	Url *string `json:"url,omitempty"`
	// Operation completed with success or failure
	Completed *bool `json:"completed,omitempty"`
	// True if all operations were successful
	HaveResultsSucceeded *bool `json:"haveResultsSucceeded,omitempty"`
	// List of results for each operation
	Results *[]OperationResult `json:"results,omitempty"`
}

type MemberEntitlementsPatchResponse

type MemberEntitlementsPatchResponse struct {
	// True if all operations were successful.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the member entitlement after the operations. have been applied
	MemberEntitlement *MemberEntitlement `json:"memberEntitlement,omitempty"`
	// List of results for each operation
	OperationResults *[]OperationResult `json:"operationResults,omitempty"`
}

type MemberEntitlementsPostResponse

type MemberEntitlementsPostResponse struct {
	// True if all operations were successful.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the member entitlement after the operations. have been applied
	MemberEntitlement *MemberEntitlement `json:"memberEntitlement,omitempty"`
	// Operation result
	OperationResult *OperationResult `json:"operationResult,omitempty"`
}

type MemberEntitlementsResponseBase

type MemberEntitlementsResponseBase struct {
	// True if all operations were successful.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the member entitlement after the operations. have been applied
	MemberEntitlement *MemberEntitlement `json:"memberEntitlement,omitempty"`
}

type OperationResult

type OperationResult struct {
	// List of error codes paired with their corresponding error messages.
	Errors *[]azuredevops.KeyValuePair `json:"errors,omitempty"`
	// Success status of the operation.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Identifier of the Member being acted upon.
	MemberId *uuid.UUID `json:"memberId,omitempty"`
	// Result of the MemberEntitlement after the operation.
	Result *MemberEntitlement `json:"result,omitempty"`
}

type PagedGraphMemberList

type PagedGraphMemberList struct {
	Members *[]UserEntitlement `json:"members,omitempty"`
}

A page of users

type ProjectEntitlement

type ProjectEntitlement struct {
	// Assignment Source (e.g. Group or Unknown).
	AssignmentSource *licensing.AssignmentSource `json:"assignmentSource,omitempty"`
	// Project Group (e.g. Contributor, Reader etc.)
	Group *Group `json:"group,omitempty"`
	// Deprecated: This property is deprecated. Please use ProjectPermissionInherited.
	IsProjectPermissionInherited *bool `json:"isProjectPermissionInherited,omitempty"`
	// Whether the user is inheriting permissions to a project through a Azure DevOps or AAD group membership.
	ProjectPermissionInherited *ProjectPermissionInherited `json:"projectPermissionInherited,omitempty"`
	// Project Ref
	ProjectRef *ProjectRef `json:"projectRef,omitempty"`
	// Team Ref.
	TeamRefs *[]TeamRef `json:"teamRefs,omitempty"`
}

Relation between a project and the user's effective permissions in that project.

type ProjectPermissionInherited

type ProjectPermissionInherited string

type ProjectRef

type ProjectRef struct {
	// Project ID.
	Id *uuid.UUID `json:"id,omitempty"`
	// Project Name.
	Name *string `json:"name,omitempty"`
}

A reference to a project

type RemoveMemberFromGroupArgs

type RemoveMemberFromGroupArgs struct {
	// (required) Id of the group.
	GroupId *uuid.UUID
	// (required) Id of the member to remove.
	MemberId *uuid.UUID
}

Arguments for the RemoveMemberFromGroup function

type SummaryData

type SummaryData struct {
	// Count of Licenses already assigned.
	Assigned *int `json:"assigned,omitempty"`
	// Available Count.
	Available *int `json:"available,omitempty"`
	// Quantity
	IncludedQuantity *int `json:"includedQuantity,omitempty"`
	// Total Count.
	Total *int `json:"total,omitempty"`
}

type SummaryPropertyName

type SummaryPropertyName string

[Flags]

type TeamRef

type TeamRef struct {
	// Team ID
	Id *uuid.UUID `json:"id,omitempty"`
	// Team Name
	Name *string `json:"name,omitempty"`
}

A reference to a team

type UpdateGroupEntitlementArgs

type UpdateGroupEntitlementArgs struct {
	// (required) JsonPatchDocument containing the operations to perform on the group.
	Document *[]webapi.JsonPatchOperation
	// (required) ID of the group.
	GroupId *uuid.UUID
	// (optional) RuleOption [ApplyGroupRule/TestApplyGroupRule] - specifies if the rules defined in group entitlement should be updated and the changes are applied to it’s members (default option) or just be tested
	RuleOption *licensingrule.RuleOption
}

Arguments for the UpdateGroupEntitlement function

type UpdateUserEntitlementArgs

type UpdateUserEntitlementArgs struct {
	// (required) JsonPatchDocument containing the operations to perform on the user.
	Document *[]webapi.JsonPatchOperation
	// (required) ID of the user.
	UserId *uuid.UUID
}

Arguments for the UpdateUserEntitlement function

type UpdateUserEntitlementsArgs

type UpdateUserEntitlementsArgs struct {
	// (required) JsonPatchDocument containing the operations to perform.
	Document *[]webapi.JsonPatchOperation
	// (optional) Whether to send email invites to new users or not
	DoNotSendInviteForNewUsers *bool
}

Arguments for the UpdateUserEntitlements function

type UserEntitlement

type UserEntitlement struct {
	// User's access level denoted by a license.
	AccessLevel *licensing.AccessLevel `json:"accessLevel,omitempty"`
	// [Readonly] Date the user was added to the collection.
	DateCreated *azuredevops.Time `json:"dateCreated,omitempty"`
	// User's extensions.
	Extensions *[]Extension `json:"extensions,omitempty"`
	// [Readonly] GroupEntitlements that this user belongs to.
	GroupAssignments *[]GroupEntitlement `json:"groupAssignments,omitempty"`
	// The unique identifier which matches the Id of the Identity associated with the GraphMember.
	Id *uuid.UUID `json:"id,omitempty"`
	// [Readonly] Date the user last accessed the collection.
	LastAccessedDate *azuredevops.Time `json:"lastAccessedDate,omitempty"`
	// Relation between a project and the user's effective permissions in that project.
	ProjectEntitlements *[]ProjectEntitlement `json:"projectEntitlements,omitempty"`
	// User reference.
	User *graph.GraphUser `json:"user,omitempty"`
}

A user entity with additional properties including their license, extensions, and project membership

type UserEntitlementOperationReference

type UserEntitlementOperationReference struct {
	// Unique identifier for the operation.
	Id *uuid.UUID `json:"id,omitempty"`
	// Unique identifier for the plugin.
	PluginId *uuid.UUID `json:"pluginId,omitempty"`
	// The current status of the operation.
	Status *operations.OperationStatus `json:"status,omitempty"`
	// URL to get the full operation object.
	Url *string `json:"url,omitempty"`
	// Operation completed with success or failure.
	Completed *bool `json:"completed,omitempty"`
	// True if all operations were successful.
	HaveResultsSucceeded *bool `json:"haveResultsSucceeded,omitempty"`
	// List of results for each operation.
	Results *[]UserEntitlementOperationResult `json:"results,omitempty"`
}

type UserEntitlementOperationResult

type UserEntitlementOperationResult struct {
	// List of error codes paired with their corresponding error messages.
	Errors *[]azuredevops.KeyValuePair `json:"errors,omitempty"`
	// Success status of the operation.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the MemberEntitlement after the operation.
	Result *UserEntitlement `json:"result,omitempty"`
	// Identifier of the Member being acted upon.
	UserId *uuid.UUID `json:"userId,omitempty"`
}

type UserEntitlementProperty

type UserEntitlementProperty string

[Flags]

type UserEntitlementsPatchResponse

type UserEntitlementsPatchResponse struct {
	// True if all operations were successful.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the user entitlement after the operations have been applied.
	UserEntitlement *UserEntitlement `json:"userEntitlement,omitempty"`
	// List of results for each operation.
	OperationResults *[]UserEntitlementOperationResult `json:"operationResults,omitempty"`
}

type UserEntitlementsPostResponse

type UserEntitlementsPostResponse struct {
	// True if all operations were successful.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the user entitlement after the operations have been applied.
	UserEntitlement *UserEntitlement `json:"userEntitlement,omitempty"`
	// Operation result.
	OperationResult *UserEntitlementOperationResult `json:"operationResult,omitempty"`
}

type UserEntitlementsResponseBase

type UserEntitlementsResponseBase struct {
	// True if all operations were successful.
	IsSuccess *bool `json:"isSuccess,omitempty"`
	// Result of the user entitlement after the operations have been applied.
	UserEntitlement *UserEntitlement `json:"userEntitlement,omitempty"`
}

type UsersSummary

type UsersSummary struct {
	// Available Access Levels
	AvailableAccessLevels *[]licensing.AccessLevel `json:"availableAccessLevels,omitempty"`
	// Summary of Extensions in the organization
	Extensions *[]ExtensionSummaryData `json:"extensions,omitempty"`
	// Group Options
	GroupOptions *[]GroupOption `json:"groupOptions,omitempty"`
	// Summary of Licenses in the organization
	Licenses *[]LicenseSummaryData `json:"licenses,omitempty"`
	// Summary of Projects in the organization
	ProjectRefs *[]ProjectRef `json:"projectRefs,omitempty"`
}

Summary of licenses and extensions assigned to users in the organization

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL