msgraph

package
v0.69.0 Latest Latest
Warning

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

Go to latest
Published: May 17, 2024 License: Apache-2.0 Imports: 17 Imported by: 11

Documentation

Index

Constants

View Source
const (
	AccessPackageCatalogStatusPublished   AccessPackageCatalogStatus = "Published"
	AccessPackageCatalogStatusUnpublished AccessPackageCatalogState  = "Unpublished"
)

Variables

This section is empty.

Functions

func ConflictConsistencyFailureFunc added in v0.47.0

func ConflictConsistencyFailureFunc(resp *http.Response, o *odata.OData) bool

Api call give StatusConflict on consistency errors

func MarshalDocs added in v0.23.0

func MarshalDocs(docs [][]byte) ([]byte, error)

func RetryOn404ConsistencyFailureFunc added in v0.16.0

func RetryOn404ConsistencyFailureFunc(resp *http.Response, _ *odata.OData) bool

RetryOn404ConsistencyFailureFunc can be used to retry a request when a 404 response is received

func RetryableErrorHandler added in v0.28.2

func RetryableErrorHandler(resp *http.Response, err error, numTries int) (*http.Response, error)

RetryableErrorHandler ensures that the response is returned after exhausting retries for a request We can't return an error here, or net/http will not return the response

func ServicePrincipalDoesNotExistConsistency added in v0.47.0

func ServicePrincipalDoesNotExistConsistency(resp *http.Response, o *odata.OData) bool

Api calls give UnknownError on consistency errors

func ValidateId added in v0.51.0

func ValidateId(id *string) bool

Types

type AccessPackage added in v0.31.0

type AccessPackage struct {
	ID                            *string                          `json:"id,omitempty"`
	Catalog                       *AccessPackageCatalog            `json:"catalog,omitempty"`
	CreatedDateTime               *time.Time                       `json:"createdDateTime,omitempty"`
	Description                   *string                          `json:"description,omitempty"`
	DisplayName                   *string                          `json:"displayName,omitempty"`
	IsHidden                      *bool                            `json:"isHidden,omitempty"`
	ModifiedDateTime              *time.Time                       `json:"modifiedDateTime,omitempty"`
	AccessPackageIncompatibleWith *[]AccessPackage                 `json:"accessPackagesIncompatibleWith,omitempty"` // Relationship
	AssignmentPolicies            *[]AccessPackageAssignmentPolicy `json:"assignmentPolicies,omitempty"`             // Relationship
	IncompatibleAccessPackages    *[]AccessPackage                 `json:"incompatibleAccessPackages,omitempty"`     // Relationship
	IncompatibleGroups            *[]Group                         `json:"incompatibleGroups,omitempty"`             // Relationship
	IsRoleScopesVisible           *bool                            `json:"isRoleScopesVisible,omitempty"`            // beta property
	ModifiedBy                    *string                          `json:"modifiedBy,omitempty"`                     // beta property
	CatalogId                     *string                          `json:"catalogId,omitempty"`                      // beta property
	CreatedBy                     *string                          `json:"createdBy,omitempty"`                      // beta property
}

type AccessPackageAnswer added in v0.56.0

type AccessPackageAnswer struct {
	DisplayValue     *string                `json:"displayValue,omitempty"`
	AnsweredQuestion *AccessPackageQuestion `json:"answeredQuestion,omitempty"`
}

type AccessPackageAssignment added in v0.56.0

type AccessPackageAssignment struct {
	ID                  *string               `json:"id,omitempty"`
	Target              *AccessPackageSubject `json:"target,omitempty"`
	TargetID            *string               `json:"targetId,omitempty"`
	AssignementPolicyID *string               `json:"assignmentPolicyId,omitempty"`
	AccessPackageID     *string               `json:"accessPackageId,omitempty"`
}

type AccessPackageAssignmentPolicy added in v0.31.0

type AccessPackageAssignmentPolicy struct {
	AccessPackageId         *string                   `json:"accessPackageId,omitempty"`
	AccessReviewSettings    *AssignmentReviewSettings `json:"accessReviewSettings,omitempty"`
	CanExtend               *bool                     `json:"canExtend,omitempty"`
	CreatedBy               *string                   `json:"createdBy,omitempty"`
	CreatedDateTime         *time.Time                `json:"createdDateTime,omitempty"`
	Description             *string                   `json:"description,omitempty"`
	DisplayName             *string                   `json:"displayName,omitempty"`
	DurationInDays          *int32                    `json:"durationInDays,omitempty"`
	ExpirationDateTime      *time.Time                `json:"expirationDateTime,omitempty"`
	ID                      *string                   `json:"id,omitempty"`
	ModifiedBy              *string                   `json:"modifiedBy,omitempty"`
	ModifiedDateTime        *time.Time                `json:"modifiedDateTime,omitempty"`
	RequestApprovalSettings *ApprovalSettings         `json:"requestApprovalSettings,omitempty"`
	RequestorSettings       *RequestorSettings        `json:"requestorSettings,omitempty"`
	Questions               *[]AccessPackageQuestion  `json:"questions,omitempty"`
}

type AccessPackageAssignmentPolicyClient added in v0.31.0

type AccessPackageAssignmentPolicyClient struct {
	BaseClient Client
}

func NewAccessPackageAssignmentPolicyClient added in v0.31.0

func NewAccessPackageAssignmentPolicyClient() *AccessPackageAssignmentPolicyClient

func (*AccessPackageAssignmentPolicyClient) Create added in v0.31.0

Create creates a new AccessPackageAssignmentPolicy.

func (*AccessPackageAssignmentPolicyClient) Delete added in v0.31.0

Delete removes a AccessPackageAssignmentPolicy.

func (*AccessPackageAssignmentPolicyClient) Get added in v0.31.0

Get retrieves a AccessPackageAssignmentPolicy.

func (*AccessPackageAssignmentPolicyClient) List added in v0.31.0

List returns a list of AccessPackageAssignmentPolicy

func (*AccessPackageAssignmentPolicyClient) Update added in v0.31.0

func (c *AccessPackageAssignmentPolicyClient) Update(ctx context.Context, accessPackageAssignmentPolicy AccessPackageAssignmentPolicy) (int, error)

Update amends an existing AccessPackageAssignmentPolicy.

type AccessPackageAssignmentRequest added in v0.56.0

type AccessPackageAssignmentRequest struct {
	ID                             *string                           `json:"id,omitempty"`
	RequestType                    *AccessPackageRequestType         `json:"requestType,omitempty"`
	Status                         *string                           `json:"status,omitempty"`
	CompletedDateTime              *time.Time                        `json:"completedDateTime,omitempty"`
	CreatedDateTime                *time.Time                        `json:"createdDateTime,omitempty"`
	State                          *AccessPackageRequestState        `json:"state,omitempty"`
	Schedule                       *EntitlementManagementSchedule    `json:"schedule,omitempty"`
	Assignment                     *AccessPackageAssignment          `json:"assignment,omitempty"`
	AccessPackageAssignment        *AccessPackageAssignment          `json:"accessPackageAssignment,omitempty"`         // beta Relationship
	CompletedDate                  *time.Time                        `json:"completedDate,omitempty"`                   // beta property
	IsValidationOnly               *bool                             `json:"isValidationOnly,omitempty"`                // beta property
	Justification                  *string                           `json:"justification,omitempty"`                   // beta property
	RequestState                   *AccessPackageRequestState        `json:"requestState,omitempty"`                    // beta property
	RequestStatus                  *string                           `json:"requestStatus,omitempty"`                   // beta property
	CustomExtensionHandlerInstance *[]CustomExtensionHandlerInstance `json:"customExtensionHandlerInstances,omitempty"` // beta property
	Answers                        *[]AccessPackageAnswer            `json:"answers,omitempty"`                         // beta property
}

type AccessPackageAssignmentRequestClient added in v0.56.0

type AccessPackageAssignmentRequestClient struct {
	BaseClient Client
}

func NewAccessPackageAssignmentRequestClient added in v0.56.0

func NewAccessPackageAssignmentRequestClient() *AccessPackageAssignmentRequestClient

func (*AccessPackageAssignmentRequestClient) Cancel added in v0.56.0

Cancel will cancel a request is in a cancellable state

func (*AccessPackageAssignmentRequestClient) Create added in v0.56.0

Create will create an access package request

func (*AccessPackageAssignmentRequestClient) Delete added in v0.56.0

Delete will delete an access package request

func (*AccessPackageAssignmentRequestClient) Get added in v0.56.0

Get will get an Access Package request

func (*AccessPackageAssignmentRequestClient) List added in v0.56.0

List will list all access package assignment requests

func (*AccessPackageAssignmentRequestClient) Reprocess added in v0.56.0

Reprocess re-processes an access package assignment request

type AccessPackageCatalog added in v0.31.0

type AccessPackageCatalog struct {
	ID                  *string                   `json:"id,omitempty"`
	State               AccessPackageCatalogState `json:"state,omitempty"`
	CatalogType         AccessPackageCatalogType  `json:"catalogType,omitempty"`
	CreatedDateTime     *time.Time                `json:"createdDateTime,omitempty"`
	Description         *string                   `json:"description,omitempty"`
	DisplayName         *string                   `json:"displayName,omitempty"`
	IsExternallyVisible *bool                     `json:"isExternallyVisible,omitempty"`
	ModifiedDateTime    *time.Time                `json:"modifiedDateTime,omitempty"`
	//Beta
	CatalogStatus AccessPackageCatalogStatus `json:"catalogStatus,omitempty"`
	CreatedBy     *string                    `json:"createdBy,omitempty"`
	ModifiedBy    *string                    `json:"modifiedBy,omitempty"`
}

type AccessPackageCatalogClient added in v0.31.0

type AccessPackageCatalogClient struct {
	BaseClient Client
}

func NewAccessPackageCatalogClient added in v0.31.0

func NewAccessPackageCatalogClient() *AccessPackageCatalogClient

func (*AccessPackageCatalogClient) Create added in v0.31.0

Create creates a new AccessPackageCatalog.

func (*AccessPackageCatalogClient) Delete added in v0.31.0

func (c *AccessPackageCatalogClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a AccessPackageCatalog.

func (*AccessPackageCatalogClient) Get added in v0.31.0

Get retrieves a AccessPackageCatalog.

func (*AccessPackageCatalogClient) List added in v0.31.0

List returns a list of AccessPackageCatalog.

func (*AccessPackageCatalogClient) Update added in v0.31.0

func (c *AccessPackageCatalogClient) Update(ctx context.Context, accessPackageCatalog AccessPackageCatalog) (int, error)

Update amends an existing AccessPackageCatalog.

type AccessPackageCatalogState added in v0.40.0

type AccessPackageCatalogState = string
const (
	AccessPackageCatalogStatePublished   AccessPackageCatalogState = "published"
	AccessPackageCatalogStateUnpublished AccessPackageCatalogState = "unpublished"
)

type AccessPackageCatalogStatus added in v0.31.0

type AccessPackageCatalogStatus = string

type AccessPackageCatalogType added in v0.31.0

type AccessPackageCatalogType = string
const (
	AccessPackageCatalogTypeServiceDefault AccessPackageCatalogType = "ServiceDefault"
	AccessPackageCatalogTypeUserManaged    AccessPackageCatalogType = "UserManaged"
)

type AccessPackageClient added in v0.31.0

type AccessPackageClient struct {
	BaseClient Client
}

func NewAccessPackageClient added in v0.31.0

func NewAccessPackageClient() *AccessPackageClient

func (*AccessPackageClient) Create added in v0.31.0

func (c *AccessPackageClient) Create(ctx context.Context, accessPackage AccessPackage) (*AccessPackage, int, error)

Create creates a new AccessPackage.

func (*AccessPackageClient) Delete added in v0.31.0

func (c *AccessPackageClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a AccessPackage.

func (*AccessPackageClient) Get added in v0.31.0

Get retrieves a AccessPackage.

func (*AccessPackageClient) List added in v0.31.0

func (c *AccessPackageClient) List(ctx context.Context, query odata.Query) (*[]AccessPackage, int, error)

List returns a list of AccessPackage

func (*AccessPackageClient) Update added in v0.31.0

func (c *AccessPackageClient) Update(ctx context.Context, accessPackage AccessPackage) (int, error)

Update amends an existing AccessPackage.

type AccessPackageCustomExtensionHandlerStatus added in v0.56.0

type AccessPackageCustomExtensionHandlerStatus = string
const (
	AccessPackageCustomExtensionHandlerStatusRequestSent     AccessPackageCustomExtensionHandlerStatus = "requestSent"
	AccessPackageCustomExtensionHandlerStatusRequestReceived AccessPackageCustomExtensionHandlerStatus = "requestReceived"
)

type AccessPackageCustomExtensionStage added in v0.56.0

type AccessPackageCustomExtensionStage = string
const (
	AccessPackageCustomExtensionStageAssignmentRequestCreated               AccessPackageCustomExtensionStage = "assignmentRequestCreated"
	AccessPackageCustomExtensionStageAssignmentRequestApproved              AccessPackageCustomExtensionStage = "assignmentRequestApproved"
	AccessPackageCustomExtensionStageAssignmentRequestGranted               AccessPackageCustomExtensionStage = "assignmentRequestGranted"
	AccessPackageCustomExtensionStageAssignmentRequestRemoved               AccessPackageCustomExtensionStage = "assignmentRequestRemoved"
	AccessPackageCustomExtensionStageAssignmentFourteenDaysBeforeExpiration AccessPackageCustomExtensionStage = "assignmentFourteenDaysBeforeExpiration"
	AccessPackageCustomExtensionStageAssignmentOneDayBeforeExpiration       AccessPackageCustomExtensionStage = "assignmentOneDayBeforeExpiration"
)

type AccessPackageLocalizedContent added in v0.31.0

type AccessPackageLocalizedContent struct {
	DefaultText    *string                        `json:"defaultText,omitempty"`
	LocalizedTexts *[]AccessPackageLocalizedTexts `json:"localizedTexts,omitempty"`
}

type AccessPackageLocalizedTexts added in v0.31.0

type AccessPackageLocalizedTexts struct {
	Text         *string `json:"text,omitempty"`
	LanguageCode *string `json:"languageCode,omitempty"`
}

type AccessPackageMultipleChoiceQuestions added in v0.40.0

type AccessPackageMultipleChoiceQuestions struct {
	ODataType    *odata.Type                    `json:"@odata.type,omitempty"`
	ActualValue  *string                        `json:"actualValue,string"`
	DisplayValue *AccessPackageLocalizedContent `json:"displayValue,omitempty"`
}

type AccessPackageQuestion added in v0.31.0

type AccessPackageQuestion struct {
	ODataType            *odata.Type                             `json:"@odata.type,omitempty"`
	ID                   *string                                 `json:"id,omitempty"`
	IsRequired           *bool                                   `json:"isRequired,omitempty"`
	Sequence             *int32                                  `json:"sequence,omitempty"`
	Text                 *AccessPackageLocalizedContent          `json:"text,omitempty"`
	Choices              *[]AccessPackageMultipleChoiceQuestions `json:"choices,omitempty"`
	IsSingleLineQuestion *bool                                   `json:"isSingleLineQuestion,omitempty"`
}

type AccessPackageRequestState added in v0.56.0

type AccessPackageRequestState = string
const (
	AccessPackageRequestStateSubmitted           AccessPackageRequestState = "submitted"
	AccessPackageRequestStatePendingApproval     AccessPackageRequestState = "pendingApproval"
	AccessPackageRequestStateDelivering          AccessPackageRequestState = "delivering"
	AccessPackageRequestStateDelivered           AccessPackageRequestState = "delivered"
	AccessPackageRequestStateDeliveryFailed      AccessPackageRequestState = "deliveryFailed"
	AccessPackageRequestStateDenied              AccessPackageRequestState = "denied"
	AccessPackageRequestStateScheduled           AccessPackageRequestState = "scheduled"
	AccessPackageRequestStateCanceled            AccessPackageRequestState = "canceled"
	AccessPackageRequestStatePartiallyDelievered AccessPackageRequestState = "partiallyDelivered"
)

type AccessPackageRequestType added in v0.56.0

type AccessPackageRequestType = string
const (
	AccessPackageRequestTypeNotSpecified AccessPackageRequestType = "notSpecified"
	AccessPackageRequestTypeUserAdd      AccessPackageRequestType = "userAdd"
	AccessPackageRequestTypeUserExtend   AccessPackageRequestType = "UserExtend"
	AccessPackageRequestTypeUserUpdate   AccessPackageRequestType = "userUpdate"
	AccessPackageRequestTypeUserRemove   AccessPackageRequestType = "userRemove"
	AccessPackageRequestTypeAdminAdd     AccessPackageRequestType = "adminAdd"
	AccessPackageRequestTypeAdminUpdate  AccessPackageRequestType = "adminUpdate"
	AccessPackageRequestTypeAdminRemove  AccessPackageRequestType = "adminRemove"
	AccessPackageRequestTypeSystemAdd    AccessPackageRequestType = "systemAdd"
	AccessPackageRequestTypeSystemUpdate AccessPackageRequestType = "systemUpdate"
	AccessPackageRequestTypeSystemRemove AccessPackageRequestType = "systemRemove"
	AccessPackageRequestTypeOnBehalfAdd  AccessPackageRequestType = "onBehalfAdd"
)

type AccessPackageResource added in v0.31.0

type AccessPackageResource struct {
	AccessPackageResourceEnvironment *AccessPackageResourceEnvironment `json:"accessPackageResourceEnvironment,omitempty"`
	AddedBy                          *string                           `json:"addedBy,omitempty"`
	AddedOn                          *time.Time                        `json:"addedOn,omitempty"`
	Description                      *string                           `json:"description,omitempty"`
	DisplayName                      *string                           `json:"displayName,omitempty"`
	ID                               *string                           `json:"id,omitempty"`
	IsPendingOnboarding              *bool                             `json:"isPendingOnboarding,omitempty"`
	OriginId                         *string                           `json:"originId,omitempty"`
	OriginSystem                     AccessPackageResourceOriginSystem `json:"originSystem,omitempty"`
	ResourceType                     *AccessPackageResourceType        `json:"resourceType,omitempty"`
	Url                              *string                           `json:"url,omitempty"`
}

type AccessPackageResourceClient added in v0.31.0

type AccessPackageResourceClient struct {
	BaseClient Client
}

func NewAccessPackageResourceClient added in v0.31.0

func NewAccessPackageResourceClient() *AccessPackageResourceClient

func (*AccessPackageResourceClient) Get added in v0.31.0

Get retrieves an AccessPackageResource for the specified catalog This uses OData Filter as there is no native Get method

func (*AccessPackageResourceClient) List added in v0.31.0

List retrieves a list of AccessPackageResources for the specified catalog

type AccessPackageResourceEnvironment added in v0.31.0

type AccessPackageResourceEnvironment struct {
	ConnectionInfo       *ConnectionInfo                   `json:"connectionInfo,omitempty"`
	CreatedBy            *string                           `json:"createdBy,omitempty"`
	CreatedDateTime      *time.Time                        `json:"createdDateTime,omitempty"`
	Description          *string                           `json:"description,omitempty"`
	DisplayName          *string                           `json:"displayName,omitempty"`
	ID                   *string                           `json:"id,omitempty"`
	IsDefaultEnvironment *bool                             `json:"isDefaultEnvironment,omitempty"`
	ModifiedBy           *string                           `json:"modifiedBy,omitempty"`
	ModifiedDateTime     *time.Time                        `json:"modifiedDateTime,omitempty"`
	OriginId             *string                           `json:"originId,omitempty"`
	OriginSystem         AccessPackageResourceOriginSystem `json:"originSystem,omitempty"`
}

type AccessPackageResourceOriginSystem added in v0.31.0

type AccessPackageResourceOriginSystem = string
const (
	AccessPackageResourceOriginSystemAadApplication   AccessPackageResourceOriginSystem = "AadApplication"
	AccessPackageResourceOriginSystemAadGroup         AccessPackageResourceOriginSystem = "AadGroup"
	AccessPackageResourceOriginSystemSharePointOnline AccessPackageResourceOriginSystem = "SharePointOnline"
)

type AccessPackageResourceRequest added in v0.31.0

type AccessPackageResourceRequest struct {
	CatalogId             *string                            `json:"catalogId,omitempty"`
	ExpirationDateTime    *time.Time                         `json:"expirationDateTime,omitempty"`
	ID                    *string                            `json:"id,omitempty"`
	IsValidationOnly      *bool                              `json:"isValidationOnly,omitempty"`
	Justification         *string                            `json:"justification,omitempty"`
	RequestState          *AccessPackageResourceRequestState `json:"requestState,omitempty"`
	RequestStatus         *string                            `json:"requestStatus,omitempty"`
	RequestType           *AccessPackageResourceRequestType  `json:"requestType,omitempty"`
	AccessPackageResource *AccessPackageResource             `json:"accessPackageResource,omitempty"`
	ExecuteImmediately    *bool                              `json:"executeImmediately,omitempty"`
}

type AccessPackageResourceRequestClient added in v0.31.0

type AccessPackageResourceRequestClient struct {
	BaseClient Client
}

func NewAccessPackageResourceRequestClient added in v0.31.0

func NewAccessPackageResourceRequestClient() *AccessPackageResourceRequestClient

func (*AccessPackageResourceRequestClient) Create added in v0.31.0

Create creates a new AccessPackageResourceRequest.

func (*AccessPackageResourceRequestClient) Delete added in v0.31.0

func (c *AccessPackageResourceRequestClient) Delete(ctx context.Context, accessPackageResourceRequest AccessPackageResourceRequest) (int, error)

Delete removes a AccessPackageResourceRequest This is a pseudo delete method because there is no Delete endpoint. Instead, we construct and send a request to delete a resource assignment. See tests for example usage. Docs: https://docs.microsoft.com/en-us/graph/api/accesspackageresourcerequest-post?view=graph-rest-beta#example-5-create-an-accesspackageresourcerequest-for-removing-a-resource

func (*AccessPackageResourceRequestClient) Get added in v0.31.0

Get retrieves an AccessPackageResourceRequest This uses OData Filter as there is no native Get method

func (*AccessPackageResourceRequestClient) List added in v0.31.0

List returns a list of AccessPackageResourceRequest

type AccessPackageResourceRequestState added in v0.31.0

type AccessPackageResourceRequestState = string
const (
	AccessPackageResourceRequestStateDelivered AccessPackageResourceRequestState = "Delivered"
)

type AccessPackageResourceRequestType added in v0.31.0

type AccessPackageResourceRequestType = string
const (
	AccessPackageResourceRequestTypeAdminAdd    AccessPackageResourceRequestType = "AdminAdd"
	AccessPackageResourceRequestTypeAdminRemove AccessPackageResourceRequestType = "AdminRemove"
)

type AccessPackageResourceRole added in v0.31.0

type AccessPackageResourceRole struct {
	Description           *string                           `json:"description"`
	ID                    *string                           `json:"id,omitempty"`
	DisplayName           *string                           `json:"displayName,omitempty"`
	OriginId              *string                           `json:"originId,omitempty"`
	OriginSystem          AccessPackageResourceOriginSystem `json:"originSystem,omitempty"`
	AccessPackageResource *AccessPackageResource            `json:"accessPackageResource,omitempty"`
}

type AccessPackageResourceRoleClient added in v0.67.0

type AccessPackageResourceRoleClient struct {
	BaseClient Client
}

func NewAccessPackageResourceRoleClient added in v0.67.0

func NewAccessPackageResourceRoleClient() *AccessPackageResourceRoleClient

func (*AccessPackageResourceRoleClient) List added in v0.67.0

func (c *AccessPackageResourceRoleClient) List(ctx context.Context, catalogId string, originSystem AccessPackageResourceOriginSystem, accessPackageResourceId string) (*[]AccessPackageResourceRole, int, error)

List retrieves a list of AccessPackageResourceRoles for a specific accessPackageResource for a particular catalog / originSystem This method requires us to use an Odata Filter / Expand to function correctly

type AccessPackageResourceRoleScope added in v0.31.0

type AccessPackageResourceRoleScope struct {
	AccessPackageId *string `json:"-"`

	ID                         *string                     `json:"id,omitempty"`
	CreatedBy                  *string                     `json:"createdBy,omitempty"`
	CreatedDateTime            *time.Time                  `json:"createdDateTime,omitempty"`
	ModifiedBy                 *string                     `json:"modifiedBy,omitempty"`
	ModifiedDateTime           *time.Time                  `json:"modifiedDateTime,omitempty"`
	AccessPackageResourceRole  *AccessPackageResourceRole  `json:"accessPackageResourceRole,omitempty"`
	AccessPackageResourceScope *AccessPackageResourceScope `json:"accessPackageResourceScope,omitempty"`
}

type AccessPackageResourceRoleScopeClient added in v0.31.0

type AccessPackageResourceRoleScopeClient struct {
	BaseClient Client
}

func NewAccessPackageResourceRoleScopeClient added in v0.31.0

func NewAccessPackageResourceRoleScopeClient() *AccessPackageResourceRoleScopeClient

func (*AccessPackageResourceRoleScopeClient) Create added in v0.31.0

Create creates a new AccessPackageResourceRoleScope.

func (*AccessPackageResourceRoleScopeClient) Delete added in v0.62.0

func (c *AccessPackageResourceRoleScopeClient) Delete(ctx context.Context, accessPackageId string, id string) (int, error)

Delete removes a AccessPackageResourceRoleScope.

func (*AccessPackageResourceRoleScopeClient) Get added in v0.31.0

Get retrieves a AccessPackageResourceRoleScope.

func (*AccessPackageResourceRoleScopeClient) List added in v0.31.0

List returns a list of AccessPackageResourceRoleScope(s)

type AccessPackageResourceScope added in v0.31.0

type AccessPackageResourceScope struct {
	Description  *string                           `json:"description,omitempty"`
	DisplayName  *string                           `json:"displayName,omitempty"`
	ID           *string                           `json:"id,omitempty"`
	IsRootScope  *bool                             `json:"isRootScope,omitempty"`
	OriginId     *string                           `json:"originId,omitempty"`
	OriginSystem AccessPackageResourceOriginSystem `json:"originSystem,omitempty"`
	Url          *string                           `json:"url"`
}

type AccessPackageResourceType added in v0.31.0

type AccessPackageResourceType = string
const (
	AccessPackageResourceTypeApplication          AccessPackageResourceType = "Application"
	AccessPackageResourceTypeSharePointOnlineSite AccessPackageResourceType = "SharePoint Online Site"
)

type AccessPackageSubject added in v0.56.0

type AccessPackageSubject struct {
	DisplayName                 *string `json:"displayName,omitempty"`
	Email                       *string `json:"email,omitempty"`
	ID                          *string `json:"id,omitempty"`
	ObjectID                    *string `json:"objectId,omitempty"`
	OnPremiseSecurityIdentifier *string `json:"onPremisesSecurityIdentifier,omitempty"`
	PrincipalName               *string `json:"principalName,omitempty"`
	SubjectType                 *string `json:"subjectType,omitempty"`
}

type AccessReviewRecurrenceType added in v0.63.0

type AccessReviewRecurrenceType = string
const (
	AccessReviewRecurrenceTypeWeekly     AccessReviewRecurrenceType = "weekly"
	AccessReviewRecurrenceTypeMonthly    AccessReviewRecurrenceType = "monthly"
	AccessReviewRecurrenceTypeQuarterly  AccessReviewRecurrenceType = "quarterly"
	AccessReviewRecurrenceTypeHalfYearly AccessReviewRecurrenceType = "halfyearly"
	AccessReviewRecurrenceTypeAnnual     AccessReviewRecurrenceType = "annual"
)

type AccessReviewReviewerType added in v0.40.0

type AccessReviewReviewerType = string
const (
	AccessReviewReviewerTypeManager   AccessReviewReviewerType = "Manager"
	AccessReviewReviewerTypeReviewers AccessReviewReviewerType = "Reviewers"
	AccessReviewReviewerTypeSelf      AccessReviewReviewerType = "Self"
)

type AccessReviewTimeoutBehaviorType added in v0.40.0

type AccessReviewTimeoutBehaviorType = string
const (
	AccessReviewTimeoutBehaviorTypeAcceptAccessRecommendation AccessReviewTimeoutBehaviorType = "acceptAccessRecommendation"
	AccessReviewTimeoutBehaviorTypeKeepAccess                 AccessReviewTimeoutBehaviorType = "keepAccess"
	AccessReviewTimeoutBehaviorTypeRemoveAccess               AccessReviewTimeoutBehaviorType = "removeAccess"
)

type AddIn

type AddIn struct {
	ID         *string          `json:"id,omitempty"`
	Properties *[]AddInKeyValue `json:"properties,omitempty"`
	Type       *string          `json:"type,omitempty"`
}

type AddInKeyValue

type AddInKeyValue struct {
	Key   *string `json:"key,omitempty"`
	Value *string `json:"value,omitempty"`
}

type AdministrativeUnit added in v0.36.0

type AdministrativeUnit struct {
	Description *StringNullWhenEmpty          `json:"description,omitempty"`
	DisplayName *string                       `json:"displayName,omitempty"`
	ID          *string                       `json:"id,omitempty"`
	Visibility  *AdministrativeUnitVisibility `json:"visibility,omitempty"`
}

type AdministrativeUnitVisibility added in v0.36.0

type AdministrativeUnitVisibility = string
const (
	AdministrativeUnitVisibilityHiddenMembership AdministrativeUnitVisibility = "HiddenMembership"
	AdministrativeUnitVisibilityPublic           AdministrativeUnitVisibility = "Public"
)

type AdministrativeUnitsClient added in v0.36.0

type AdministrativeUnitsClient struct {
	BaseClient Client
}

AdministrativeUnitsClient performs operations on Administrative Units

func NewAdministrativeUnitsClient added in v0.36.0

func NewAdministrativeUnitsClient() *AdministrativeUnitsClient

NewAdministrativeUnitsClient returns a new AdministrativeUnitsClient.

func (*AdministrativeUnitsClient) AddMembers added in v0.36.0

func (c *AdministrativeUnitsClient) AddMembers(ctx context.Context, administrativeUnitId string, members *Members) (int, error)

AddMembers adds new members to a AdministrativeUnit.

func (*AdministrativeUnitsClient) AddScopedRoleMember added in v0.36.0

func (c *AdministrativeUnitsClient) AddScopedRoleMember(ctx context.Context, administrativeUnitId string, scopedRoleMembership ScopedRoleMembership) (*ScopedRoleMembership, int, error)

AddScopedRoleMember adds a new scoped role membership for a AdministrativeUnit.

func (*AdministrativeUnitsClient) Create added in v0.36.0

Create creates a new AdministrativeUnit.

func (*AdministrativeUnitsClient) CreateGroup added in v0.55.0

func (c *AdministrativeUnitsClient) CreateGroup(ctx context.Context, administrativeUnitId string, group *Group) (*Group, int, error)

func (*AdministrativeUnitsClient) Delete added in v0.36.0

func (c *AdministrativeUnitsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a AdministrativeUnit.

func (*AdministrativeUnitsClient) Get added in v0.36.0

Get retrieves an AdministrativeUnit

func (*AdministrativeUnitsClient) GetMember added in v0.36.0

func (c *AdministrativeUnitsClient) GetMember(ctx context.Context, administrativeUnitId, memberId string) (*string, int, error)

GetMember retrieves a single member of the specified AdministrativeUnit.

func (*AdministrativeUnitsClient) GetScopedRoleMember added in v0.36.0

func (c *AdministrativeUnitsClient) GetScopedRoleMember(ctx context.Context, administrativeUnitId, scopedRoleMembershipId string, query odata.Query) (*ScopedRoleMembership, int, error)

GetScopedRoleMember retrieves a single member of the specified AdministrativeUnit.

func (*AdministrativeUnitsClient) List added in v0.36.0

List returns a list of AdministrativeUnits, optionally queried using OData.

func (*AdministrativeUnitsClient) ListMembers added in v0.36.0

func (c *AdministrativeUnitsClient) ListMembers(ctx context.Context, administrativeUnitId string) (*[]string, int, error)

ListMembers retrieves the members of the specified AdministrativeUnit.

func (*AdministrativeUnitsClient) ListScopedRoleMembers added in v0.36.0

func (c *AdministrativeUnitsClient) ListScopedRoleMembers(ctx context.Context, administrativeUnitId string, query odata.Query) (*[]ScopedRoleMembership, int, error)

ListScopedRoleMembers retrieves the members of the specified AdministrativeUnit.

func (*AdministrativeUnitsClient) RemoveMembers added in v0.36.0

func (c *AdministrativeUnitsClient) RemoveMembers(ctx context.Context, administrativeUnitId string, memberIds *[]string) (int, error)

RemoveMembers removes members from a AdministrativeUnit.

func (*AdministrativeUnitsClient) RemoveScopedRoleMembers added in v0.36.0

func (c *AdministrativeUnitsClient) RemoveScopedRoleMembers(ctx context.Context, administrativeUnitId, scopedRoleMembershipId string) (int, error)

RemoveScopedRoleMembers removes members from a AdministrativeUnit.

func (*AdministrativeUnitsClient) Update added in v0.36.0

func (c *AdministrativeUnitsClient) Update(ctx context.Context, administrativeUnit AdministrativeUnit) (int, error)

Update amends an existing AdministrativeUnit.

type AgeGroup added in v0.21.0

type AgeGroup = StringNullWhenEmpty
const (
	AgeGroupNone     AgeGroup = ""
	AgeGroupAdult    AgeGroup = "Adult"
	AgeGroupMinor    AgeGroup = "Minor"
	AgeGroupNotAdult AgeGroup = "NotAdult"
)

type ApiPreAuthorizedApplication

type ApiPreAuthorizedApplication struct {
	AppId         *string   `json:"appId,omitempty"`
	PermissionIds *[]string `json:"permissionIds,omitempty"`
}

type ApiVersion

type ApiVersion string
const (
	Version10   ApiVersion = "v1.0"
	VersionBeta ApiVersion = "beta"
)

type AppIdentity added in v0.18.0

type AppIdentity struct {
	AppId                *string `json:"appId,omitempty"`
	DisplayName          *string `json:"displayName,omitempty"`
	ServicePrincipalId   *string `json:"servicePrincipalId,omitempty"`
	ServicePrincipalName *string `json:"servicePrincipalName,omitempty"`
}

type AppRole

type AppRole struct {
	ID                 *string                     `json:"id,omitempty"`
	AllowedMemberTypes *[]AppRoleAllowedMemberType `json:"allowedMemberTypes,omitempty"`
	Description        *string                     `json:"description,omitempty"`
	DisplayName        *string                     `json:"displayName,omitempty"`
	IsEnabled          *bool                       `json:"isEnabled,omitempty"`
	Origin             *string                     `json:"origin,omitempty"`
	Value              *string                     `json:"value,omitempty"`
}

type AppRoleAllowedMemberType added in v0.12.0

type AppRoleAllowedMemberType = string
const (
	AppRoleAllowedMemberTypeApplication AppRoleAllowedMemberType = "Application"
	AppRoleAllowedMemberTypeUser        AppRoleAllowedMemberType = "User"
)

type AppRoleAssignedToClient added in v0.30.0

type AppRoleAssignedToClient struct {
	BaseClient Client
}

AppRoleAssignedToClient performs operations on AppRoleAssignments.

func NewAppRoleAssignedToClient added in v0.30.0

func NewAppRoleAssignedToClient() *AppRoleAssignedToClient

NewAppRoleAssignedToClient returns a new AppRoleAssignedToClient

func (*AppRoleAssignedToClient) Assign added in v0.30.0

func (c *AppRoleAssignedToClient) Assign(ctx context.Context, appRoleAssignment AppRoleAssignment) (*AppRoleAssignment, int, error)

Assign assigns an app role for a service principal to the specified user/group/service principal object

func (*AppRoleAssignedToClient) List added in v0.30.0

List returns a list of app role assignments granted for a service principal

func (*AppRoleAssignedToClient) Remove added in v0.30.0

func (c *AppRoleAssignedToClient) Remove(ctx context.Context, resourceId, appRoleAssignmentId string) (int, error)

Remove removes an app role assignment for a service principal

type AppRoleAssignment added in v0.12.0

type AppRoleAssignment struct {
	Id                   *string    `json:"id,omitempty"`
	DeletedDateTime      *time.Time `json:"deletedDateTime,omitempty"`
	AppRoleId            *string    `json:"appRoleId,omitempty"`
	CreatedDateTime      *time.Time `json:"createdDateTime,omitempty"`
	PrincipalDisplayName *string    `json:"principalDisplayName,omitempty"`
	PrincipalId          *string    `json:"principalId,omitempty"`
	PrincipalType        *string    `json:"principalType,omitempty"`
	ResourceDisplayName  *string    `json:"resourceDisplayName,omitempty"`
	ResourceId           *string    `json:"resourceId,omitempty"`
}

type AppRoleAssignmentsClient added in v0.12.0

type AppRoleAssignmentsClient struct {
	BaseClient Client
	// contains filtered or unexported fields
}

AppRoleAssignmentsClient performs operations on AppRoleAssignments.

func NewGroupsAppRoleAssignmentsClient added in v0.14.0

func NewGroupsAppRoleAssignmentsClient() *AppRoleAssignmentsClient

NewGroupsAppRoleAssignmentsClient returns a new AppRoleAssignmentsClient for groups assignments

func NewServicePrincipalsAppRoleAssignmentsClient added in v0.14.0

func NewServicePrincipalsAppRoleAssignmentsClient() *AppRoleAssignmentsClient

NewServicePrincipalsAppRoleAssignmentsClient returns a new AppRoleAssignmentsClient for service principal assignments

func NewUsersAppRoleAssignmentsClient added in v0.14.0

func NewUsersAppRoleAssignmentsClient() *AppRoleAssignmentsClient

NewUsersAppRoleAssignmentsClient returns a new AppRoleAssignmentsClient for users assignments

func (*AppRoleAssignmentsClient) Assign added in v0.12.0

func (c *AppRoleAssignmentsClient) Assign(ctx context.Context, clientServicePrincipalId, resourceServicePrincipalId, appRoleId string) (*AppRoleAssignment, int, error)

Assign assigns an app role to a user, group or service principal depending on client resource type.

func (*AppRoleAssignmentsClient) List added in v0.12.0

List returns a list of app role assignments.

func (*AppRoleAssignmentsClient) Remove added in v0.12.0

func (c *AppRoleAssignmentsClient) Remove(ctx context.Context, id, appRoleAssignmentId string) (int, error)

Remove removes a app role assignment.

type Application

type Application struct {
	DirectoryObject
	Owners *Owners `json:"owners@odata.bind,omitempty"`

	AddIns                        *[]AddIn                  `json:"addIns,omitempty"`
	Api                           *ApplicationApi           `json:"api,omitempty"`
	AppId                         *string                   `json:"appId,omitempty"`
	ApplicationTemplateId         *string                   `json:"applicationTemplateId,omitempty"`
	AppRoles                      *[]AppRole                `json:"appRoles,omitempty"`
	CreatedDateTime               *time.Time                `json:"createdDateTime,omitempty"`
	DefaultRedirectUri            *string                   `json:"defaultRedirectUri,omitempty"`
	DeletedDateTime               *time.Time                `json:"deletedDateTime,omitempty"`
	Description                   *StringNullWhenEmpty      `json:"description,omitempty"`
	DisabledByMicrosoftStatus     interface{}               `json:"disabledByMicrosoftStatus,omitempty"`
	DisplayName                   *string                   `json:"displayName,omitempty"`
	GroupMembershipClaims         *[]GroupMembershipClaim   `json:"-"` // see Application.MarshalJSON / Application.UnmarshalJSON
	IdentifierUris                *[]string                 `json:"identifierUris,omitempty"`
	Info                          *InformationalUrl         `json:"info,omitempty"`
	IsAuthorizationServiceEnabled *bool                     `json:"isAuthorizationServiceEnabled,omitempty"`
	IsDeviceOnlyAuthSupported     *bool                     `json:"isDeviceOnlyAuthSupported,omitempty"`
	IsFallbackPublicClient        *bool                     `json:"isFallbackPublicClient,omitempty"`
	IsManagementRestricted        *bool                     `json:"isManagementRestricted,omitempty"`
	KeyCredentials                *[]KeyCredential          `json:"keyCredentials,omitempty"`
	Oauth2RequirePostResponse     *bool                     `json:"oauth2RequirePostResponse,omitempty"` // field name has typo in beta API
	Oauth2RequiredPostResponse    *bool                     `json:"oauth2RequiredPostResponse,omitempty"`
	OnPremisesPublishing          *OnPremisesPublishing     `json:"onPremisesPublishing,omitempty"`
	OptionalClaims                *OptionalClaims           `json:"optionalClaims,omitempty"`
	Notes                         *StringNullWhenEmpty      `json:"notes,omitempty"`
	ParentalControlSettings       *ParentalControlSettings  `json:"parentalControlSettings,omitempty"`
	PasswordCredentials           *[]PasswordCredential     `json:"passwordCredentials,omitempty"`
	PublicClient                  *PublicClient             `json:"publicClient,omitempty"`
	PublisherDomain               *string                   `json:"publisherDomain,omitempty"`
	RequiredResourceAccess        *[]RequiredResourceAccess `json:"requiredResourceAccess,omitempty"`
	ServiceManagementReference    *StringNullWhenEmpty      `json:"serviceManagementReference,omitempty"`
	SignInAudience                *SignInAudience           `json:"signInAudience,omitempty"`
	Spa                           *ApplicationSpa           `json:"spa,omitempty"`
	Tags                          *[]string                 `json:"tags,omitempty"`
	TokenEncryptionKeyId          *string                   `json:"tokenEncryptionKeyId,omitempty"`
	UniqueName                    *string                   `json:"uniqueName,omitempty"`
	VerifiedPublisher             *VerifiedPublisher        `json:"verifiedPublisher,omitempty"`
	Web                           *ApplicationWeb           `json:"web,omitempty"`
}

Application describes an Application object.

func (*Application) AppendAppRole

func (a *Application) AppendAppRole(role AppRole) error

AppendAppRole adds a new AppRole to an Application, checking to see if it already exists.

func (Application) MarshalJSON added in v0.12.0

func (a Application) MarshalJSON() ([]byte, error)

func (*Application) RemoveAppRole

func (a *Application) RemoveAppRole(role AppRole) error

RemoveAppRole removes an AppRole from an Application.

func (*Application) UnmarshalJSON added in v0.12.0

func (a *Application) UnmarshalJSON(data []byte) error

func (*Application) UpdateAppRole

func (a *Application) UpdateAppRole(role AppRole) error

UpdateAppRole amends an existing AppRole defined in an Application.

type ApplicationApi

type ApplicationApi struct {
	AcceptMappedClaims          *bool                          `json:"acceptMappedClaims,omitempty"`
	KnownClientApplications     *[]string                      `json:"knownClientApplications,omitempty"`
	OAuth2PermissionScopes      *[]PermissionScope             `json:"oauth2PermissionScopes,omitempty"`
	PreAuthorizedApplications   *[]ApiPreAuthorizedApplication `json:"preAuthorizedApplications,omitempty"`
	RequestedAccessTokenVersion *int32                         `json:"requestedAccessTokenVersion,omitempty"`
}

func (*ApplicationApi) AppendOAuth2PermissionScope

func (a *ApplicationApi) AppendOAuth2PermissionScope(scope PermissionScope) error

AppendOAuth2PermissionScope adds a new ApplicationOAuth2PermissionScope to an ApplicationApi, checking to see if it already exists.

func (*ApplicationApi) RemoveOAuth2PermissionScope

func (a *ApplicationApi) RemoveOAuth2PermissionScope(scope PermissionScope) error

RemoveOAuth2PermissionScope removes an ApplicationOAuth2PermissionScope from an ApplicationApi.

func (*ApplicationApi) UpdateOAuth2PermissionScope

func (a *ApplicationApi) UpdateOAuth2PermissionScope(scope PermissionScope) error

UpdateOAuth2PermissionScope amends an existing ApplicationOAuth2PermissionScope defined in an ApplicationApi.

type ApplicationEnforcedRestrictionsSessionControl added in v0.11.0

type ApplicationEnforcedRestrictionsSessionControl struct {
	IsEnabled *bool `json:"isEnabled,omitempty"`
}

type ApplicationExtension added in v0.18.0

type ApplicationExtension struct {
	Id                     *string                             `json:"id,omitempty"`
	AppDisplayName         *string                             `json:"appDisplayName,omitempty"`
	DataType               ApplicationExtensionDataType        `json:"dataType,omitempty"`
	IsSyncedFromOnPremises *bool                               `json:"isSyncedFromOnPremises,omitempty"`
	Name                   *string                             `json:"name,omitempty"`
	TargetObjects          *[]ApplicationExtensionTargetObject `json:"targetObjects,omitempty"`
}

type ApplicationExtensionDataType added in v0.18.0

type ApplicationExtensionDataType = string
const (
	ApplicationExtensionDataTypeBinary       ApplicationExtensionDataType = "Binary"
	ApplicationExtensionDataTypeBoolean      ApplicationExtensionDataType = "Boolean"
	ApplicationExtensionDataTypeDateTime     ApplicationExtensionDataType = "DateTime"
	ApplicationExtensionDataTypeInteger      ApplicationExtensionDataType = "Integer"
	ApplicationExtensionDataTypeLargeInteger ApplicationExtensionDataType = "LargeInteger"
	ApplicationExtensionDataTypeString       ApplicationExtensionDataType = "String"
)

type ApplicationExtensionTargetObject added in v0.18.0

type ApplicationExtensionTargetObject = string
const (
	ApplicationExtensionTargetObjectApplication  ApplicationExtensionTargetObject = "Application"
	ApplicationExtensionTargetObjectDevice       ApplicationExtensionTargetObject = "Device"
	ApplicationExtensionTargetObjectGroup        ApplicationExtensionTargetObject = "Group"
	ApplicationExtensionTargetObjectOrganization ApplicationExtensionTargetObject = "Organization"
	ApplicationExtensionTargetObjectUser         ApplicationExtensionTargetObject = "User"
)

type ApplicationSpa added in v0.20.0

type ApplicationSpa struct {
	RedirectUris *[]string `json:"redirectUris,omitempty"`
}

type ApplicationTemplate added in v0.28.0

type ApplicationTemplate struct {
	ID                         *string                        `json:"id,omitempty"`
	Categories                 *[]ApplicationTemplateCategory `json:"categories,omitempty"`
	Description                *string                        `json:"description,omitempty"`
	DisplayName                *string                        `json:"displayName,omitempty"`
	HomePageUrl                *string                        `json:"homePageUrl,omitempty"`
	LogoUrl                    *string                        `json:"logoUrl,omitempty"`
	Publisher                  *string                        `json:"publisher,omitempty"`
	SupportedProvisioningTypes *[]string                      `json:"supportedProvisioningTypes,omitempty"`
	SupportedSingleSignOnModes *[]string                      `json:"supportedSingleSignOnModes,omitempty"`

	Application      *Application      `json:"application,omitempty"`
	ServicePrincipal *ServicePrincipal `json:"servicePrincipal,omitempty"`
}

type ApplicationTemplateCategory added in v0.28.0

type ApplicationTemplateCategory = string
const (
	ApplicationTemplateCategoryCollaboration      ApplicationTemplateCategory = "Collaboration"
	ApplicationTemplateCategoryBusinessManagement ApplicationTemplateCategory = "Business Management"
	ApplicationTemplateCategoryConsumer           ApplicationTemplateCategory = "Consumer"
	ApplicationTemplateCategoryContentManagement  ApplicationTemplateCategory = "Content management"
	ApplicationTemplateCategoryCRM                ApplicationTemplateCategory = "CRM"
	ApplicationTemplateCategoryDataServices       ApplicationTemplateCategory = "Data services"
	ApplicationTemplateCategoryDeveloperServices  ApplicationTemplateCategory = "Developer services"
	ApplicationTemplateCategoryECommerce          ApplicationTemplateCategory = "E-commerce"
	ApplicationTemplateCategoryEducation          ApplicationTemplateCategory = "Education"
	ApplicationTemplateCategoryERP                ApplicationTemplateCategory = "ERP"
	ApplicationTemplateCategoryFinance            ApplicationTemplateCategory = "Finance"
	ApplicationTemplateCategoryHealth             ApplicationTemplateCategory = "Health"
	ApplicationTemplateCategoryHumanResources     ApplicationTemplateCategory = "Human resources"
	ApplicationTemplateCategoryITInfrastructure   ApplicationTemplateCategory = "IT infrastructure"
	ApplicationTemplateCategoryMail               ApplicationTemplateCategory = "Mail"
	ApplicationTemplateCategoryManagement         ApplicationTemplateCategory = "Management"
	ApplicationTemplateCategoryMarketing          ApplicationTemplateCategory = "Marketing"
	ApplicationTemplateCategoryMedia              ApplicationTemplateCategory = "Media"
	ApplicationTemplateCategoryProductivity       ApplicationTemplateCategory = "Productivity"
	ApplicationTemplateCategoryProjectManagement  ApplicationTemplateCategory = "Project management"
	ApplicationTemplateCategoryTelecommunications ApplicationTemplateCategory = "Telecommunications"
	ApplicationTemplateCategoryTools              ApplicationTemplateCategory = "Tools"
	ApplicationTemplateCategoryTravel             ApplicationTemplateCategory = "Travel"
	ApplicationTemplateCategoryWebDesignHosting   ApplicationTemplateCategory = "Web design & hosting"
)

type ApplicationTemplatesClient added in v0.28.0

type ApplicationTemplatesClient struct {
	BaseClient Client
}

ApplicationTemplatesClient performs operations on ApplicationTemplates.

func NewApplicationTemplatesClient added in v0.28.0

func NewApplicationTemplatesClient() *ApplicationTemplatesClient

NewApplicationTemplatesClient returns a new ApplicationTemplatesClient

func (*ApplicationTemplatesClient) Get added in v0.28.0

Get retrieves an ApplicationTemplate

func (*ApplicationTemplatesClient) Instantiate added in v0.28.0

func (c *ApplicationTemplatesClient) Instantiate(ctx context.Context, applicationTemplate ApplicationTemplate) (*ApplicationTemplate, int, error)

Instantiate instantiates an ApplicationTemplate, which creates an Application and Service Principal in the tenant. The created Application and ServicePrincipal are provided in the response.

func (*ApplicationTemplatesClient) List added in v0.28.0

List returns a list of ApplicationTemplates, optionally queried using OData.

type ApplicationWeb

type ApplicationWeb struct {
	HomePageUrl           *StringNullWhenEmpty   `json:"homePageUrl,omitempty"`
	ImplicitGrantSettings *ImplicitGrantSettings `json:"implicitGrantSettings,omitempty"`
	LogoutUrl             *StringNullWhenEmpty   `json:"logoutUrl,omitempty"`
	RedirectUris          *[]string              `json:"redirectUris,omitempty"`
}

type ApplicationsClient

type ApplicationsClient struct {
	BaseClient Client
}

ApplicationsClient performs operations on Applications.

func NewApplicationsClient

func NewApplicationsClient() *ApplicationsClient

NewApplicationsClient returns a new ApplicationsClient

func (*ApplicationsClient) AddOwners

func (c *ApplicationsClient) AddOwners(ctx context.Context, application *Application) (int, error)

AddOwners adds new owners to an Application. First populate the `owners` field, then call this method

func (*ApplicationsClient) AddPassword added in v0.13.0

func (c *ApplicationsClient) AddPassword(ctx context.Context, applicationId string, passwordCredential PasswordCredential) (*PasswordCredential, int, error)

AddPassword appends a new password credential to an Application.

func (*ApplicationsClient) Create

func (c *ApplicationsClient) Create(ctx context.Context, application Application) (*Application, int, error)

Create creates a new Application.

func (*ApplicationsClient) CreateExtension added in v0.18.0

func (c *ApplicationsClient) CreateExtension(ctx context.Context, applicationExtension ApplicationExtension, id string) (*ApplicationExtension, int, error)

Create creates a new ApplicationExtension.

func (*ApplicationsClient) CreateFederatedIdentityCredential added in v0.39.0

func (c *ApplicationsClient) CreateFederatedIdentityCredential(ctx context.Context, applicationId string, credential FederatedIdentityCredential) (*FederatedIdentityCredential, int, error)

CreateFederatedIdentityCredential adds a new federated identity credential for an application

func (*ApplicationsClient) Delete

func (c *ApplicationsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes an Application.

func (*ApplicationsClient) DeleteExtension added in v0.18.0

func (c *ApplicationsClient) DeleteExtension(ctx context.Context, applicationId, extensionId string) (int, error)

DeleteExtension removes an Application Extension.

func (*ApplicationsClient) DeleteFederatedIdentityCredential added in v0.39.0

func (c *ApplicationsClient) DeleteFederatedIdentityCredential(ctx context.Context, applicationId, credentialId string) (int, error)

DeleteFederatedIdentityCredential removes a federated identity credential from an application

func (*ApplicationsClient) DeletePermanently added in v0.15.0

func (c *ApplicationsClient) DeletePermanently(ctx context.Context, id string) (int, error)

DeletePermanently removes a deleted Application permanently. id is the object ID of the application.

func (*ApplicationsClient) Get

func (c *ApplicationsClient) Get(ctx context.Context, id string, query odata.Query) (*Application, int, error)

Get retrieves an Application manifest.

func (*ApplicationsClient) GetDeleted added in v0.14.0

func (c *ApplicationsClient) GetDeleted(ctx context.Context, id string, query odata.Query) (*Application, int, error)

GetDeleted retrieves a deleted Application manifest. id is the object ID of the application.

func (*ApplicationsClient) GetFederatedIdentityCredential added in v0.39.0

func (c *ApplicationsClient) GetFederatedIdentityCredential(ctx context.Context, applicationId, credentialId string, query odata.Query) (*FederatedIdentityCredential, int, error)

GetFederatedIdentityCredential returns the federated identity credentials for an application

func (*ApplicationsClient) GetOwner

func (c *ApplicationsClient) GetOwner(ctx context.Context, applicationId, ownerId string) (*string, int, error)

GetOwner retrieves a single owner for the specified Application. applicationId is the object ID of the application. ownerId is the object ID of the owning object.

func (*ApplicationsClient) List

func (c *ApplicationsClient) List(ctx context.Context, query odata.Query) (*[]Application, int, error)

List returns a list of Applications, optionally queried using OData.

func (*ApplicationsClient) ListDeleted added in v0.14.0

func (c *ApplicationsClient) ListDeleted(ctx context.Context, query odata.Query) (*[]Application, int, error)

ListDeleted retrieves a list of recently deleted applications, optionally queried using OData.

func (*ApplicationsClient) ListExtensions added in v0.18.0

func (c *ApplicationsClient) ListExtensions(ctx context.Context, id string, query odata.Query) (*[]ApplicationExtension, int, error)

func (*ApplicationsClient) ListFederatedIdentityCredentials added in v0.39.0

func (c *ApplicationsClient) ListFederatedIdentityCredentials(ctx context.Context, applicationId string, query odata.Query) (*[]FederatedIdentityCredential, int, error)

ListFederatedIdentityCredentials returns the federated identity credentials for an application

func (*ApplicationsClient) ListOwners

func (c *ApplicationsClient) ListOwners(ctx context.Context, id string) (*[]string, int, error)

ListOwners retrieves the owners of the specified Application. id is the object ID of the application.

func (*ApplicationsClient) RemoveOwners

func (c *ApplicationsClient) RemoveOwners(ctx context.Context, applicationId string, ownerIds *[]string) (int, error)

RemoveOwners removes owners from an Application. applicationId is the object ID of the application. ownerIds is a *[]string containing object IDs of owners to remove.

func (*ApplicationsClient) RemovePassword added in v0.13.0

func (c *ApplicationsClient) RemovePassword(ctx context.Context, applicationId string, keyId string) (int, error)

RemovePassword removes a password credential from an Application.

func (*ApplicationsClient) RestoreDeleted added in v0.17.0

func (c *ApplicationsClient) RestoreDeleted(ctx context.Context, id string) (*Application, int, error)

RestoreDeleted restores a recently deleted Application. id is the object ID of the application.

func (*ApplicationsClient) SetFallbackPublicClient added in v0.64.0

func (c *ApplicationsClient) SetFallbackPublicClient(ctx context.Context, id string, fallbackPublicClient *bool) (int, error)

SetFallbackPublicClient amends the manifest of an existing Application.

func (*ApplicationsClient) Update

func (c *ApplicationsClient) Update(ctx context.Context, application Application) (int, error)

Update amends the manifest of an existing Application.

func (*ApplicationsClient) UpdateFederatedIdentityCredential added in v0.39.0

func (c *ApplicationsClient) UpdateFederatedIdentityCredential(ctx context.Context, applicationId string, credential FederatedIdentityCredential) (int, error)

UpdateFederatedIdentityCredential updates an existing federated identity credential for an application

func (c *ApplicationsClient) UploadLogo(ctx context.Context, applicationId, contentType string, logoData []byte) (int, error)

UploadLogo uploads the application logo which should be a gif, jpeg or png image

type AppliedConditionalAccessPolicy added in v0.18.0

type AppliedConditionalAccessPolicy struct {
	DisplayName             *string   `json:"displayName,omitempty"`
	EnforcedGrantControls   *[]string `json:"enforcedGrantControls,omitempty"`
	EnforcedSessionControls *[]string `json:"enforcedSessionControls,omitempty"`
	Id                      *string   `json:"id,omitempty"`
	Result                  *string   `json:"appliedConditionalAccessPolicyResult,omitempty"`
}

type Approval added in v0.67.0

type Approval struct {
	ID    *string         `json:"id,omitempty"`
	Steps *[]ApprovalStep `json:"steps,omitempty"`
}

type ApprovalMode added in v0.31.0

type ApprovalMode = string
const (
	ApprovalModeNoApproval  ApprovalMode = "NoApproval"
	ApprovalModeSerial      ApprovalMode = "Serial"
	ApprovalModeSingleStage ApprovalMode = "SingleStage"
)

type ApprovalSettings added in v0.31.0

type ApprovalSettings struct {
	IsApprovalRequiredForAdd         *bool            `json:"isApprovalRequiredForAdd,omitempty"`
	IsApprovalRequiredForUpdate      *bool            `json:"isApprovalRequiredForUpdate,omitempty"`
	IsApprovalRequired               *bool            `json:"isApprovalRequired,omitempty"`               //beta property
	IsApprovalRequiredForExtension   *bool            `json:"isApprovalRequiredForExtension,omitempty"`   //beta property
	IsRequestorJustificationRequired *bool            `json:"isRequestorJustificationRequired,omitempty"` //beta property
	ApprovalMode                     ApprovalMode     `json:"approvalMode,omitempty"`                     //beta property
	ApprovalStages                   *[]ApprovalStage `json:"approvalStages,omitempty"`
}

type ApprovalStage added in v0.31.0

type ApprovalStage struct {
	ApprovalStageTimeOutInDays      *int32     `json:"approvalStageTimeOutInDays,omitempty"`
	IsApproverJustificationRequired *bool      `json:"isApproverJustificationRequired,omitempty"`
	IsEscalationEnabled             *bool      `json:"isEscalationEnabled,omitempty"`
	EscalationTimeInMinutes         *int32     `json:"escalationTimeInMinutes,omitempty"`
	PrimaryApprovers                *[]UserSet `json:"primaryApprovers,omitempty"`
	EscalationApprovers             *[]UserSet `json:"escalationApprovers,omitempty"`
}

type ApprovalStep added in v0.67.0

type ApprovalStep struct {
	ID               *string            `json:"id,omitempty"`
	AssignedToMe     *bool              `json:"assignedToMe,omitempty"`
	DisplayName      *string            `json:"displayName,omitempty"`
	Justification    *string            `json:"justification,omitempty"`
	ReviewResult     *string            `json:"reviewResult,omitempty"`
	ReviewedBy       *[]UserIdentity    `json:"reviewedBy,omitempty"`
	ReviewedDateTime *time.Time         `json:"reviewedDateTime,omitempty"`
	Status           ApprovalStepStatus `json:"status,omitempty"`
}

type ApprovalStepStatus added in v0.67.0

type ApprovalStepStatus = string
const (
	ApprovalStepStatusInProgress   ApprovalStepStatus = "InProgress"
	ApprovalStepStatusInitializing ApprovalStepStatus = "Initializing"
	ApprovalStepStatusCompleted    ApprovalStepStatus = "Completed"
	ApprovalStepStatusExpired      ApprovalStepStatus = "Expired"
)

type AssignmentReviewSettings added in v0.31.0

type AssignmentReviewSettings struct {
	IsEnabled                       *bool                           `json:"isEnabled,omitempty"`
	RecurrenceType                  AccessReviewRecurrenceType      `json:"recurrenceType,omitempty"`
	ReviewerType                    AccessReviewReviewerType        `json:"reviewerType,omitempty"`
	StartDateTime                   *time.Time                      `json:"startDateTime,omitempty"`
	DurationInDays                  *int32                          `json:"durationInDays,omitempty"`
	Reviewers                       *[]UserSet                      `json:"reviewers,omitempty"`
	IsAccessRecommendationEnabled   *bool                           `json:"isAccessRecommendationEnabled,omitempty"`
	IsApprovalJustificationRequired *bool                           `json:"isApprovalJustificationRequired,omitempty"`
	AccessReviewTimeoutBehavior     AccessReviewTimeoutBehaviorType `json:"accessReviewTimeoutBehavior,omitempty"`
}

type AttestationLevel added in v0.25.0

type AttestationLevel = string
const (
	AttestationLevelAttested    AttestationLevel = "attested"
	AttestationLevelNotAttested AttestationLevel = "notAttested"
)

type AttributeSet added in v0.69.0

type AttributeSet struct {
	ID                  *string `json:"id,omitempty"`
	Description         *string `json:"description,omitempty"`
	MaxAttributesPerSet *int32  `json:"maxAttributesPerSet,omitempty"`
}

type AttributeSetClient added in v0.69.0

type AttributeSetClient struct {
	BaseClient Client
}

func NewAttributeSetClient added in v0.69.0

func NewAttributeSetClient() *AttributeSetClient

func (*AttributeSetClient) Create added in v0.69.0

func (c *AttributeSetClient) Create(ctx context.Context, attributeSet AttributeSet) (*AttributeSet, int, error)

func (*AttributeSetClient) Get added in v0.69.0

func (*AttributeSetClient) List added in v0.69.0

func (c *AttributeSetClient) List(ctx context.Context, query odata.Query) (*[]AttributeSet, int, error)

func (*AttributeSetClient) Update added in v0.69.0

func (c *AttributeSetClient) Update(ctx context.Context, AttributeSet AttributeSet) (int, error)

type AuditActivityInitiator added in v0.18.0

type AuditActivityInitiator struct {
	App  *AppIdentity  `json:"app,omitempty"`
	User *UserIdentity `json:"user,omitempty"`
}

type AuthenticationMethod added in v0.25.0

type AuthenticationMethod interface{}

type AuthenticationMethodFeature added in v0.24.0

type AuthenticationMethodFeature = string
const (
	AuthenticationMethodFeatureSsprRegistered      AuthenticationMethodFeature = "ssprRegistered"
	AuthenticationMethodFeatureSsprEnabled         AuthenticationMethodFeature = "ssprEnabled"
	AuthenticationMethodFeatureSsprCapable         AuthenticationMethodFeature = "ssprCapable"
	AuthenticationMethodFeaturePasswordlessCapable AuthenticationMethodFeature = "passwordlessCapable"
	AuthenticationMethodFeatureMfaCapable          AuthenticationMethodFeature = "mfaCapable"
)

type AuthenticationMethodKeyStrength added in v0.25.0

type AuthenticationMethodKeyStrength = string
const (
	AuthenticationMethodKeyStrengthNormal  AuthenticationMethodKeyStrength = "normal"
	AuthenticationMethodKeyStrengthWeak    AuthenticationMethodKeyStrength = "weak"
	AuthenticationMethodKeyStrengthUnknown AuthenticationMethodKeyStrength = "unknown"
)

type AuthenticationMethodModes added in v0.63.0

type AuthenticationMethodModes = string
const (
	AuthenticationMethodModesEmail                       AuthenticationMethodModes = "email"
	AuthenticationMethodModesFederatedMultiFactor        AuthenticationMethodModes = "federatedMultiFactor"
	AuthenticationMethodModesFederatedSingleFactor       AuthenticationMethodModes = "federatedSingleFactor"
	AuthenticationMethodModesFido2                       AuthenticationMethodModes = "fido2"
	AuthenticationMethodModesHardwareOath                AuthenticationMethodModes = "hardwareOath"
	AuthenticationMethodModesMicrosoftAuthenticatorPush  AuthenticationMethodModes = "microsoftAuthenticatorPush"
	AuthenticationMethodModesMicrosoftDeviceBasedPush    AuthenticationMethodModes = "deviceBasedPush"
	AuthenticationMethodModesPassword                    AuthenticationMethodModes = "password"
	AuthenticationMethodModesSms                         AuthenticationMethodModes = "sms"
	AuthenticationMethodModesSoftwareOath                AuthenticationMethodModes = "softwareOath"
	AuthenticationMethodModesTemporaryAccessPassMultiUse AuthenticationMethodModes = "temporaryAccessPassMultiUse"
	AuthenticationMethodModesTemporaryAccessPassOneTime  AuthenticationMethodModes = "temporaryAccessPassOneTime"
	AuthenticationMethodModesUnknownFutureValue          AuthenticationMethodModes = "unknownFutureValue"
	AuthenticationMethodModesVoice                       AuthenticationMethodModes = "voice"
	AuthenticationMethodModesWindowsHelloForBusiness     AuthenticationMethodModes = "windowsHelloForBusiness"
	AuthenticationMethodModesX509CertificateMultiFactor  AuthenticationMethodModes = "x509CertificateMultiFactor"
	AuthenticationMethodModesX509CertificateSingleFactor AuthenticationMethodModes = "x509CertificateSingleFactor"
)

type AuthenticationMethodsClient added in v0.25.0

type AuthenticationMethodsClient struct {
	BaseClient Client
}

AuthenticationMethodsClient performs operations on the Authentications methods endpoint under Identity and Sign-in

func NewAuthenticationMethodsClient added in v0.25.0

func NewAuthenticationMethodsClient() *AuthenticationMethodsClient

NewAuthenticationMethodsClient returns a new AuthenticationMethodsClient

func (*AuthenticationMethodsClient) CreateEmailMethod added in v0.25.0

func (*AuthenticationMethodsClient) CreatePhoneMethod added in v0.25.0

func (*AuthenticationMethodsClient) CreateTemporaryAccessPassMethod added in v0.25.0

func (*AuthenticationMethodsClient) DeleteEmailMethod added in v0.25.0

func (c *AuthenticationMethodsClient) DeleteEmailMethod(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) DeleteFido2Method added in v0.25.0

func (c *AuthenticationMethodsClient) DeleteFido2Method(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) DeleteMicrosoftAuthenticatorMethod added in v0.25.0

func (c *AuthenticationMethodsClient) DeleteMicrosoftAuthenticatorMethod(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) DeletePhoneMethod added in v0.25.0

func (c *AuthenticationMethodsClient) DeletePhoneMethod(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) DeleteTemporaryAccessPassMethod added in v0.25.0

func (c *AuthenticationMethodsClient) DeleteTemporaryAccessPassMethod(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) DeleteWindowsHelloMethod added in v0.25.0

func (c *AuthenticationMethodsClient) DeleteWindowsHelloMethod(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) DisablePhoneSMS added in v0.25.0

func (c *AuthenticationMethodsClient) DisablePhoneSMS(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) EnablePhoneSMS added in v0.25.0

func (c *AuthenticationMethodsClient) EnablePhoneSMS(ctx context.Context, userID, id string) (int, error)

func (*AuthenticationMethodsClient) GetEmailMethod added in v0.25.0

func (c *AuthenticationMethodsClient) GetEmailMethod(ctx context.Context, userID, id string, query odata.Query) (*EmailAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) GetFido2Method added in v0.25.0

func (c *AuthenticationMethodsClient) GetFido2Method(ctx context.Context, userID, id string, query odata.Query) (*Fido2AuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) GetMicrosoftAuthenticatorMethod added in v0.25.0

func (c *AuthenticationMethodsClient) GetMicrosoftAuthenticatorMethod(ctx context.Context, userID, id string, query odata.Query) (*MicrosoftAuthenticatorAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) GetPasswordMethod added in v0.25.0

func (c *AuthenticationMethodsClient) GetPasswordMethod(ctx context.Context, userID, id string, query odata.Query) (*PasswordAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) GetPhoneMethod added in v0.25.0

func (c *AuthenticationMethodsClient) GetPhoneMethod(ctx context.Context, userID, id string, query odata.Query) (*PhoneAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) GetTemporaryAccessPassMethod added in v0.25.0

func (c *AuthenticationMethodsClient) GetTemporaryAccessPassMethod(ctx context.Context, userID, id string, query odata.Query) (*TemporaryAccessPassAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) GetWindowsHelloMethod added in v0.25.0

func (*AuthenticationMethodsClient) List added in v0.25.0

List all authentication methods

func (*AuthenticationMethodsClient) ListEmailMethods added in v0.25.0

func (c *AuthenticationMethodsClient) ListEmailMethods(ctx context.Context, userID string, query odata.Query) (*[]EmailAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) ListFido2Methods added in v0.25.0

func (c *AuthenticationMethodsClient) ListFido2Methods(ctx context.Context, userID string, query odata.Query) (*[]Fido2AuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) ListMicrosoftAuthenticatorMethods added in v0.25.0

func (c *AuthenticationMethodsClient) ListMicrosoftAuthenticatorMethods(ctx context.Context, userID string, query odata.Query) (*[]MicrosoftAuthenticatorAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) ListPasswordMethods added in v0.25.0

func (c *AuthenticationMethodsClient) ListPasswordMethods(ctx context.Context, userID string, query odata.Query) (*[]PasswordAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) ListPhoneMethods added in v0.25.0

func (c *AuthenticationMethodsClient) ListPhoneMethods(ctx context.Context, userID string, query odata.Query) (*[]PhoneAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) ListTemporaryAccessPassMethods added in v0.25.0

func (c *AuthenticationMethodsClient) ListTemporaryAccessPassMethods(ctx context.Context, userID string, query odata.Query) (*[]TemporaryAccessPassAuthenticationMethod, int, error)

func (*AuthenticationMethodsClient) ListWindowsHelloMethods added in v0.25.0

func (*AuthenticationMethodsClient) UpdateEmailMethod added in v0.25.0

func (c *AuthenticationMethodsClient) UpdateEmailMethod(ctx context.Context, userID string, email EmailAuthenticationMethod) (int, error)

func (*AuthenticationMethodsClient) UpdatePhoneMethod added in v0.25.0

func (c *AuthenticationMethodsClient) UpdatePhoneMethod(ctx context.Context, userID string, phone PhoneAuthenticationMethod) (int, error)

type AuthenticationPhoneType added in v0.25.0

type AuthenticationPhoneType = string
const (
	AuthenticationPhoneTypeMobile          AuthenticationPhoneType = "mobile"
	AuthenticationPhoneTypeAlternateMobile AuthenticationPhoneType = "alternateMobile"
	AuthenticationPhoneTypeOffice          AuthenticationPhoneType = "office"
)

type AuthenticationStrengthPoliciesClient added in v0.63.0

type AuthenticationStrengthPoliciesClient struct {
	BaseClient Client
}

AuthenticationStrengthPoliciesClient performs operations on AuthenticationStrengthPolicy.

func NewAuthenticationStrengthPoliciesClient added in v0.63.0

func NewAuthenticationStrengthPoliciesClient() *AuthenticationStrengthPoliciesClient

NewAuthenticationStrengthPoliciesClient returns a new AuthenticationStrengthPoliciesClient

func (*AuthenticationStrengthPoliciesClient) Create added in v0.63.0

Create creates a new AuthenticationStrengthPolicy.

func (*AuthenticationStrengthPoliciesClient) Delete added in v0.63.0

Delete removes a AuthenticationStrengthPolicy.

func (*AuthenticationStrengthPoliciesClient) Get added in v0.63.0

Get retrieves a AuthenticationStrengthPolicy.

func (*AuthenticationStrengthPoliciesClient) List added in v0.63.0

List returns a list of AuthenticationStrengthPolicy, optionally queried using OData.

func (*AuthenticationStrengthPoliciesClient) Update added in v0.63.0

func (c *AuthenticationStrengthPoliciesClient) Update(ctx context.Context, AuthenticationStrengthPolicy AuthenticationStrengthPolicy) (int, error)

Update amends an existing AuthenticationStrengthPolicy.

func (*AuthenticationStrengthPoliciesClient) UpdateAllowedCombinations added in v0.64.0

func (c *AuthenticationStrengthPoliciesClient) UpdateAllowedCombinations(ctx context.Context, policy AuthenticationStrengthPolicy) (int, error)

Update amends an existing AuthenticationStrengthPolicy's allowed combinations

type AuthenticationStrengthPolicy added in v0.63.0

type AuthenticationStrengthPolicy struct {
	AllowedCombinations *[]AuthenticationMethodModes      `json:"allowedCombinations,omitempty"`
	CreatedDateTime     *time.Time                        `json:"createdDateTime,omitempty"`
	ID                  *string                           `json:"id,omitempty"`
	ModifiedDateTime    *time.Time                        `json:"modifiedDateTime,omitempty"`
	PolicyType          *AuthenticationStrengthPolicyType `json:"policyType,omitempty"`
	Description         *string                           `json:"description,omitempty"`
	DisplayName         *string                           `json:"displayName,omitempty"`
}

type AuthenticationStrengthPolicyType added in v0.63.0

type AuthenticationStrengthPolicyType = string
const (
	AuthenticationStrengthPolicyTypeBuiltIn            AuthenticationStrengthPolicyType = "builtIn"
	AuthenticationStrengthPolicyTypeCustom             AuthenticationStrengthPolicyType = "custom"
	AuthenticationStrengthPolicyTypeUnknownFutureValue AuthenticationStrengthPolicyType = "unknownFutureValue"
)

type B2CUserFlow added in v0.48.0

type B2CUserFlow struct {
	ID                  *string  `json:"id,omitempty"`
	UserFlowType        *string  `json:"userFlowType,omitempty"`
	UserFlowTypeVersion *float32 `json:"userFlowTypeVersion,omitempty"`
	// The property that determines whether language customization is enabled within the B2C user flow. Language customization is not enabled by default for B2C user flows.
	IsLanguageCustomizationEnabled *bool `json:"IsLanguageCustomizationEnabled,omitempty"`
	// Indicates the default language of the b2cIdentityUserFlow that is used when no ui_locale tag is specified in the request. This field is RFC 5646 compliant.
	DefaultLanguageTag *string `json:"defaultLanguageTag,omitempty"`
}

type B2CUserFlowClient added in v0.48.0

type B2CUserFlowClient struct {
	BaseClient Client
}

B2CUserFlowClient performs operations on B2CUserFlow.

func NewB2CUserFlowClient added in v0.48.0

func NewB2CUserFlowClient() *B2CUserFlowClient

NewB2CUserFlowClient returns a new B2CUserFlowClient.

func (*B2CUserFlowClient) Create added in v0.48.0

func (c *B2CUserFlowClient) Create(ctx context.Context, userflow B2CUserFlow) (*B2CUserFlow, int, error)

Create creates a new B2CUserFlow.

func (*B2CUserFlowClient) Delete added in v0.48.0

func (c *B2CUserFlowClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a B2CUserFlow.

func (*B2CUserFlowClient) Get added in v0.48.0

func (c *B2CUserFlowClient) Get(ctx context.Context, id string, query odata.Query) (*B2CUserFlow, int, error)

Get returns an existing B2CUserFlow.

func (*B2CUserFlowClient) List added in v0.48.0

func (c *B2CUserFlowClient) List(ctx context.Context, query odata.Query) (*[]B2CUserFlow, int, error)

List returns a list of B2C UserFlows, optionally queried using OData.

func (*B2CUserFlowClient) Update added in v0.48.0

func (c *B2CUserFlowClient) Update(ctx context.Context, userflow B2CUserFlow) (int, error)

Update amends an existing B2CUserFlow.

type BaseNamedLocation added in v0.11.0

type BaseNamedLocation struct {
	ODataType        *odata.Type `json:"@odata.type,omitempty"`
	ID               *string     `json:"id,omitempty"`
	DisplayName      *string     `json:"displayName,omitempty"`
	CreatedDateTime  *time.Time  `json:"createdDateTime,omitempty"`
	ModifiedDateTime *time.Time  `json:"modifiedDateTime,omitempty"`
}

type BodyType added in v0.13.0

type BodyType = string
const (
	BodyTypeText BodyType = "text"
	BodyTypeHtml BodyType = "html"
)

type ClaimsMappingPolicy added in v0.42.0

type ClaimsMappingPolicy struct {
	DirectoryObject
	Definition            *[]string `json:"definition,omitempty"`
	Description           *string   `json:"description,omitempty"`
	DisplayName           *string   `json:"displayName,omitempty"`
	IsOrganizationDefault *bool     `json:"isOrganizationDefault,omitempty"`
}

type ClaimsMappingPolicyClient added in v0.42.0

type ClaimsMappingPolicyClient struct {
	BaseClient Client
}

func NewClaimsMappingPolicyClient added in v0.42.0

func NewClaimsMappingPolicyClient() *ClaimsMappingPolicyClient

NewClaimsMappingPolicyClient returns a new ClaimsMappingPolicyClient

func (*ClaimsMappingPolicyClient) Create added in v0.42.0

Create creates a new ClaimsMappingPolicy.

func (*ClaimsMappingPolicyClient) Delete added in v0.42.0

func (c *ClaimsMappingPolicyClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a ClaimsMappingPolicy.

func (*ClaimsMappingPolicyClient) Get added in v0.42.0

Get retrieves a ClaimsMappingPolicy.

func (*ClaimsMappingPolicyClient) List added in v0.42.0

List returns a list of ClaimsMappingPolicy, optionally queried using OData.

func (*ClaimsMappingPolicyClient) Update added in v0.42.0

func (c *ClaimsMappingPolicyClient) Update(ctx context.Context, claimsMappingPolicy ClaimsMappingPolicy) (int, error)

Update amends an existing ClaimsMappingPolicy.

type Client

type Client struct {
	// Endpoint is the base endpoint for Microsoft Graph, usually "https://graph.microsoft.com".
	Endpoint string

	// ApiVersion is the Microsoft Graph API version to use.
	ApiVersion ApiVersion

	// UserAgent is the HTTP user agent string to send in requests.
	UserAgent string

	// Authorizer is anything that can provide an access token with which to authorize requests.
	Authorizer auth.Authorizer

	// DisableRetries prevents the client from reattempting failed requests (which it does to work around eventual consistency issues).
	// This does not impact handling of retries related to rate limiting, which are always performed.
	DisableRetries bool

	// RequestMiddlewares is a slice of functions that are called in order before a request is sent
	RequestMiddlewares *[]RequestMiddleware

	// ResponseMiddlewares is a slice of functions that are called in order before a response is parsed and returned
	ResponseMiddlewares *[]ResponseMiddleware

	// HttpClient is the underlying http.Client, which by default uses a retryable client
	HttpClient      *http.Client
	RetryableClient *retryablehttp.Client
}

Client is a base client to be used by clients for specific entities. It can send GET, POST, PUT, PATCH and DELETE requests to Microsoft Graph and is API version and tenant aware.

func NewClient

func NewClient(apiVersion ApiVersion) Client

NewClient returns a new Client configured with the specified API version and tenant ID.

func (Client) Delete

Delete performs a DELETE request.

func (Client) Get

Get performs a GET request.

func (Client) Patch

Patch performs a PATCH request.

func (Client) Post

Post performs a POST request.

func (Client) Put

Put performs a PUT request.

type CloudAppSecurityControl added in v0.11.0

type CloudAppSecurityControl struct {
	IsEnabled            *bool                                                `json:"isEnabled,omitempty"`
	CloudAppSecurityType *ConditionalAccessCloudAppSecuritySessionControlType `json:"cloudAppSecurityType,omitempty"`
}

type ConditionalAccessApplications added in v0.11.0

type ConditionalAccessApplications struct {
	ApplicationFilter   *ConditionalAccessFilter `json:"applicationFilter,omitempty"`
	IncludeApplications *[]string                `json:"includeApplications,omitempty"`
	ExcludeApplications *[]string                `json:"excludeApplications,omitempty"`
	IncludeUserActions  *[]string                `json:"includeUserActions,omitempty"`
}

type ConditionalAccessAuthenticationType added in v0.65.0

type ConditionalAccessAuthenticationType = string
const (
	ConditionalAccessAuthenticationTypePrimaryAndSecondaryAuthentication ConditionalAccessAuthenticationType = "primaryAndSecondaryAuthentication"
	ConditionalAccessAuthenticationTypeSecondaryAuthentication           ConditionalAccessAuthenticationType = "secondaryAuthentication"
	ConditionalAccessAuthenticationTypeUnknownFutureValue                ConditionalAccessAuthenticationType = "unknownFutureValue"
)

type ConditionalAccessClientAppType added in v0.36.0

type ConditionalAccessClientAppType = string
const (
	ConditionalAccessClientAppTypeAll                         ConditionalAccessClientAppType = "all"
	ConditionalAccessClientAppTypeBrowser                     ConditionalAccessClientAppType = "browser"
	ConditionalAccessClientAppTypeEasSupported                ConditionalAccessClientAppType = "easSupported"
	ConditionalAccessClientAppTypeExchangeActiveSync          ConditionalAccessClientAppType = "exchangeActiveSync"
	ConditionalAccessClientAppTypeMobileAppsAndDesktopClients ConditionalAccessClientAppType = "mobileAppsAndDesktopClients"
	ConditionalAccessClientAppTypeOther                       ConditionalAccessClientAppType = "other"
)

type ConditionalAccessClientApplications added in v0.60.0

type ConditionalAccessClientApplications struct {
	ExcludeServicePrincipals *[]string `json:"excludeServicePrincipals,omitempty"`
	IncludeServicePrincipals *[]string `json:"includeServicePrincipals,omitempty"`
}

type ConditionalAccessCloudAppSecuritySessionControlType added in v0.36.0

type ConditionalAccessCloudAppSecuritySessionControlType = string
const (
	ConditionalAccessCloudAppSecuritySessionControlTypeBlockDownloads     ConditionalAccessCloudAppSecuritySessionControlType = "blockDownloads"
	ConditionalAccessCloudAppSecuritySessionControlTypeMcasConfigured     ConditionalAccessCloudAppSecuritySessionControlType = "mcasConfigured"
	ConditionalAccessCloudAppSecuritySessionControlTypeMonitorOnly        ConditionalAccessCloudAppSecuritySessionControlType = "monitorOnly"
	ConditionalAccessCloudAppSecuritySessionControlTypeUnknownFutureValue ConditionalAccessCloudAppSecuritySessionControlType = "unknownFutureValue"
)

type ConditionalAccessConditionSet added in v0.11.0

type ConditionalAccessConditionSet struct {
	Applications               *ConditionalAccessApplications       `json:"applications,omitempty"`
	ClientApplications         *ConditionalAccessClientApplications `json:"clientApplications,omitempty"`
	ClientAppTypes             *[]ConditionalAccessClientAppType    `json:"clientAppTypes,omitempty"`
	Devices                    *ConditionalAccessDevices            `json:"devices"`
	DeviceStates               *ConditionalAccessDeviceStates       `json:"deviceStates,omitempty"`
	Locations                  *ConditionalAccessLocations          `json:"locations"`
	Platforms                  *ConditionalAccessPlatforms          `json:"platforms"`
	ServicePrincipalRiskLevels *[]ConditionalAccessRiskLevel        `json:"servicePrincipalRiskLevels,omitempty"`
	SignInRiskLevels           *[]ConditionalAccessRiskLevel        `json:"signInRiskLevels,omitempty"`
	UserRiskLevels             *[]ConditionalAccessRiskLevel        `json:"userRiskLevels,omitempty"`
	Users                      *ConditionalAccessUsers              `json:"users,omitempty"`
}

type ConditionalAccessDevicePlatform added in v0.36.0

type ConditionalAccessDevicePlatform = string
const (
	ConditionalAccessDevicePlatformAll                ConditionalAccessDevicePlatform = "all"
	ConditionalAccessDevicePlatformAndroid            ConditionalAccessDevicePlatform = "android"
	ConditionalAccessDevicePlatformIos                ConditionalAccessDevicePlatform = "iOS"
	ConditionalAccessDevicePlatformLinux              ConditionalAccessDevicePlatform = "linux"
	ConditionalAccessDevicePlatformMacOs              ConditionalAccessDevicePlatform = "macOS"
	ConditionalAccessDevicePlatformUnknownFutureValue ConditionalAccessDevicePlatform = "unknownFutureValue"
	ConditionalAccessDevicePlatformWindows            ConditionalAccessDevicePlatform = "windows"
	ConditionalAccessDevicePlatformWindowsPhone       ConditionalAccessDevicePlatform = "windowsPhone"
)

type ConditionalAccessDeviceStates added in v0.36.0

type ConditionalAccessDeviceStates struct {
	IncludeStates *ConditionalAccessDeviceStatesInclude `json:"includeStates,omitempty"`
	ExcludeStates *ConditionalAccessDeviceStatesExclude `json:"excludeStates,omitempty"`
}

type ConditionalAccessDeviceStatesExclude added in v0.36.0

type ConditionalAccessDeviceStatesExclude = string
const (
	ConditionalAccessDeviceStatesExcludeCompliant    ConditionalAccessDeviceStatesExclude = "Compliant"
	ConditionalAccessDeviceStatesExcludeDomainJoined ConditionalAccessDeviceStatesExclude = "DomainJoined"
)

type ConditionalAccessDeviceStatesInclude added in v0.36.0

type ConditionalAccessDeviceStatesInclude = string
const (
	ConditionalAccessDeviceStatesIncludeAll ConditionalAccessDeviceStatesInclude = "All"
)

type ConditionalAccessDevices added in v0.36.0

type ConditionalAccessDevices struct {
	IncludeDevices *[]string                `json:"includeDevices,omitempty"`
	ExcludeDevices *[]string                `json:"excludeDevices,omitempty"`
	DeviceFilter   *ConditionalAccessFilter `json:"deviceFilter,omitempty"`
}

type ConditionalAccessExternalTenants added in v0.65.0

type ConditionalAccessExternalTenants struct {
	ODataType      *odata.Type                                     `json:"@odata.type,omitempty"`
	MembershipKind *ConditionalAccessExternalTenantsMembershipKind `json:"membershipKind,omitempty"`
	Members        *[]string                                       `json:"members,omitempty"`
}

type ConditionalAccessExternalTenantsMembershipKind added in v0.65.0

type ConditionalAccessExternalTenantsMembershipKind = string
const (
	ConditionalAccessExternalTenantsMembershipKindAll                ConditionalAccessExternalTenantsMembershipKind = "all"
	ConditionalAccessExternalTenantsMembershipKindEnumerated         ConditionalAccessExternalTenantsMembershipKind = "enumerated"
	ConditionalAccessExternalTenantsMembershipKindUnknownFutureValue ConditionalAccessExternalTenantsMembershipKind = "unknownFutureValue"
)

type ConditionalAccessFilter added in v0.36.0

type ConditionalAccessFilter struct {
	Mode *ConditionalAccessFilterMode `json:"mode,omitempty"`
	Rule *string                      `json:"rule,omitempty"`
}

type ConditionalAccessFilterMode added in v0.36.0

type ConditionalAccessFilterMode = string
const (
	ConditionalAccessFilterModeExclude ConditionalAccessFilterMode = "exclude"
	ConditionalAccessFilterModeInclude ConditionalAccessFilterMode = "include"
)

type ConditionalAccessFrequencyInterval added in v0.65.0

type ConditionalAccessFrequencyInterval = string
const (
	ConditionalAccessFrequencyIntervalTimeBased          ConditionalAccessFrequencyInterval = "timeBased"
	ConditionalAccessFrequencyIntervalEveryTime          ConditionalAccessFrequencyInterval = "everyTime"
	ConditionalAccessFrequencyIntervalUnknownFutureValue ConditionalAccessFrequencyInterval = "unknownFutureValue"
)

type ConditionalAccessFrequencyType added in v0.65.0

type ConditionalAccessFrequencyType = string
const (
	ConditionalAccessFrequencyTypeDays  ConditionalAccessFrequencyType = "days"
	ConditionalAccessFrequencyTypeHours ConditionalAccessFrequencyType = "hours"
)

type ConditionalAccessGrantControl added in v0.36.0

type ConditionalAccessGrantControl = string
const (
	ConditionalAccessGrantControlApprovedApplication  ConditionalAccessGrantControl = "approvedApplication"
	ConditionalAccessGrantControlBlock                ConditionalAccessGrantControl = "block"
	ConditionalAccessGrantControlCompliantApplication ConditionalAccessGrantControl = "compliantApplication"
	ConditionalAccessGrantControlCompliantDevice      ConditionalAccessGrantControl = "compliantDevice"
	ConditionalAccessGrantControlDomainJoinedDevice   ConditionalAccessGrantControl = "domainJoinedDevice"
	ConditionalAccessGrantControlMfa                  ConditionalAccessGrantControl = "mfa"
	ConditionalAccessGrantControlPasswordChange       ConditionalAccessGrantControl = "passwordChange"
	ConditionalAccessGrantControlUnknownFutureValue   ConditionalAccessGrantControl = "unknownFutureValue"
)

type ConditionalAccessGrantControls added in v0.11.0

type ConditionalAccessGrantControls struct {
	Operator                    *string                          `json:"operator,omitempty"`
	AuthenticationStrength      *AuthenticationStrengthPolicy    `json:"authenticationStrength,omitempty"`
	BuiltInControls             *[]ConditionalAccessGrantControl `json:"builtInControls,omitempty"`
	CustomAuthenticationFactors *[]string                        `json:"customAuthenticationFactors,omitempty"`
	TermsOfUse                  *[]string                        `json:"termsOfUse,omitempty"`
}

type ConditionalAccessGuestOrExternalUserType added in v0.65.0

type ConditionalAccessGuestOrExternalUserType = string
const (
	ConditionalAccessGuestOrExternalUserTypeNone                   ConditionalAccessGuestOrExternalUserType = "none"
	ConditionalAccessGuestOrExternalUserTypeInternalGuest          ConditionalAccessGuestOrExternalUserType = "internalGuest"
	ConditionalAccessGuestOrExternalUserTypeB2bCollaborationGuest  ConditionalAccessGuestOrExternalUserType = "b2bCollaborationGuest"
	ConditionalAccessGuestOrExternalUserTypeB2bCollaborationMember ConditionalAccessGuestOrExternalUserType = "b2bCollaborationMember"
	ConditionalAccessGuestOrExternalUserTypeB2bDirectConnectUser   ConditionalAccessGuestOrExternalUserType = "b2bDirectConnectUser"
	ConditionalAccessGuestOrExternalUserTypeOtherExternalUser      ConditionalAccessGuestOrExternalUserType = "otherExternalUser"
	ConditionalAccessGuestOrExternalUserTypeServiceProvider        ConditionalAccessGuestOrExternalUserType = "serviceProvider"
	ConditionalAccessGuestOrExternalUserTypeUnknownFutureValue     ConditionalAccessGuestOrExternalUserType = "unknownFutureValue"
)

type ConditionalAccessGuestsOrExternalUsers added in v0.65.0

type ConditionalAccessGuestsOrExternalUsers struct {
	GuestOrExternalUserTypes *[]ConditionalAccessGuestOrExternalUserType `json:"-"` // see ConditionalAccessGuestsOrExternalUsers.MarshalJSON / ConditionalAccessGuestsOrExternalUsers.UnmarshalJSON
	ExternalTenants          *ConditionalAccessExternalTenants           `json:"externalTenants,omitempty"`
}

func (ConditionalAccessGuestsOrExternalUsers) MarshalJSON added in v0.65.0

func (c ConditionalAccessGuestsOrExternalUsers) MarshalJSON() ([]byte, error)

func (*ConditionalAccessGuestsOrExternalUsers) UnmarshalJSON added in v0.65.0

func (c *ConditionalAccessGuestsOrExternalUsers) UnmarshalJSON(data []byte) error

type ConditionalAccessLocations added in v0.11.0

type ConditionalAccessLocations struct {
	IncludeLocations *[]string `json:"includeLocations,omitempty"`
	ExcludeLocations *[]string `json:"excludeLocations,omitempty"`
}

type ConditionalAccessPlatforms added in v0.11.0

type ConditionalAccessPlatforms struct {
	IncludePlatforms *[]ConditionalAccessDevicePlatform `json:"includePlatforms,omitempty"`
	ExcludePlatforms *[]ConditionalAccessDevicePlatform `json:"excludePlatforms,omitempty"`
}

type ConditionalAccessPoliciesClient added in v0.35.0

type ConditionalAccessPoliciesClient struct {
	BaseClient Client
}

ConditionalAccessPoliciesClient performs operations on ConditionalAccessPolicy.

func NewConditionalAccessPoliciesClient added in v0.35.0

func NewConditionalAccessPoliciesClient() *ConditionalAccessPoliciesClient

NewConditionalAccessPoliciesClient returns a new ConditionalAccessPoliciesClient

func (*ConditionalAccessPoliciesClient) Create added in v0.35.0

Create creates a new ConditionalAccessPolicy.

func (*ConditionalAccessPoliciesClient) Delete added in v0.35.0

Delete removes a ConditionalAccessPolicy.

func (*ConditionalAccessPoliciesClient) Get added in v0.35.0

Get retrieves a ConditionalAccessPolicy.

func (*ConditionalAccessPoliciesClient) List added in v0.35.0

List returns a list of ConditionalAccessPolicy, optionally queried using OData.

func (*ConditionalAccessPoliciesClient) Update added in v0.35.0

func (c *ConditionalAccessPoliciesClient) Update(ctx context.Context, conditionalAccessPolicy ConditionalAccessPolicy) (int, error)

Update amends an existing ConditionalAccessPolicy.

type ConditionalAccessPolicy added in v0.11.0

type ConditionalAccessPolicy struct {
	Conditions       *ConditionalAccessConditionSet    `json:"conditions,omitempty"`
	CreatedDateTime  *time.Time                        `json:"createdDateTime,omitempty"`
	DisplayName      *string                           `json:"displayName,omitempty"`
	GrantControls    *ConditionalAccessGrantControls   `json:"grantControls"`
	ID               *string                           `json:"id,omitempty"`
	ModifiedDateTime *time.Time                        `json:"modifiedDateTime,omitempty"`
	SessionControls  *ConditionalAccessSessionControls `json:"sessionControls"`
	State            *ConditionalAccessPolicyState     `json:"state,omitempty"`
}

ConditionalAccessPolicy describes an Conditional Access Policy object.

type ConditionalAccessPolicyState added in v0.27.0

type ConditionalAccessPolicyState = string
const (
	ConditionalAccessPolicyStateEnabled                           ConditionalAccessPolicyState = "enabled"
	ConditionalAccessPolicyStateDisabled                          ConditionalAccessPolicyState = "disabled"
	ConditionalAccessPolicyStateEnabledForReportingButNotEnforced ConditionalAccessPolicyState = "enabledForReportingButNotEnforced"
)

type ConditionalAccessRiskLevel added in v0.36.0

type ConditionalAccessRiskLevel = string
const (
	ConditionalAccessRiskLevelHidden             ConditionalAccessRiskLevel = "hidden"
	ConditionalAccessRiskLevelHigh               ConditionalAccessRiskLevel = "high"
	ConditionalAccessRiskLevelLow                ConditionalAccessRiskLevel = "low"
	ConditionalAccessRiskLevelMedium             ConditionalAccessRiskLevel = "medium"
	ConditionalAccessRiskLevelNone               ConditionalAccessRiskLevel = "none"
	ConditionalAccessRiskLevelUnknownFutureValue ConditionalAccessRiskLevel = "unknownFutureValue"
)

type ConditionalAccessSessionControls added in v0.11.0

type ConditionalAccessSessionControls struct {
	ApplicationEnforcedRestrictions *ApplicationEnforcedRestrictionsSessionControl `json:"applicationEnforcedRestrictions"`
	CloudAppSecurity                *CloudAppSecurityControl                       `json:"cloudAppSecurity"`
	DisableResilienceDefaults       *bool                                          `json:"disableResilienceDefaults,omitempty"`
	PersistentBrowser               *PersistentBrowserSessionControl               `json:"persistentBrowser"`
	SignInFrequency                 *SignInFrequencySessionControl                 `json:"signInFrequency"`
}

type ConditionalAccessUsers added in v0.11.0

type ConditionalAccessUsers struct {
	IncludeUsers                 *[]string                               `json:"includeUsers,omitempty"`
	ExcludeUsers                 *[]string                               `json:"excludeUsers,omitempty"`
	IncludeGroups                *[]string                               `json:"includeGroups,omitempty"`
	ExcludeGroups                *[]string                               `json:"excludeGroups,omitempty"`
	IncludeRoles                 *[]string                               `json:"includeRoles,omitempty"`
	ExcludeRoles                 *[]string                               `json:"excludeRoles,omitempty"`
	IncludeGuestsOrExternalUsers *ConditionalAccessGuestsOrExternalUsers `json:"includeGuestsOrExternalUsers"`
	ExcludeGuestsOrExternalUsers *ConditionalAccessGuestsOrExternalUsers `json:"excludeGuestsOrExternalUsers"`
}

type ConnectedOrganization added in v0.51.0

type ConnectedOrganization struct {
	ID               *string                     `json:"id,omitempty"`
	Description      *string                     `json:"description,omitempty"`
	DisplayName      *string                     `json:"displayName,omitempty"`
	IdentitySources  *[]IdentitySource           `json:"identitySources,omitempty"`
	State            *ConnectedOrganizationState `json:"state,omitempty"`
	CreatedDateTime  *time.Time                  `json:"createdDateTime,omitempty"`
	ModifiedDateTime *time.Time                  `json:"modifiedDateTime,omitempty"`
}

In Azure AD entitlement management, a connected organization is a reference to a directory or domain of another organization whose users can request access.

type ConnectedOrganizationClient added in v0.51.0

type ConnectedOrganizationClient struct {
	BaseClient Client
}

func NewConnectedOrganizationClient added in v0.51.0

func NewConnectedOrganizationClient() *ConnectedOrganizationClient

func (*ConnectedOrganizationClient) AddExternalSponsorGroup added in v0.51.0

func (c *ConnectedOrganizationClient) AddExternalSponsorGroup(ctx context.Context, orgId string, grpId string) error

Add a group as an external sponsor to the connected organization. https://docs.microsoft.com/graph/api/connectedorganization-post-externalsponsors

func (*ConnectedOrganizationClient) AddExternalSponsorUser added in v0.51.0

func (c *ConnectedOrganizationClient) AddExternalSponsorUser(ctx context.Context, orgId string, userId string) error

Add a user as an external sponsor to the connected organization. https://docs.microsoft.com/graph/api/connectedorganization-post-externalsponsors

func (*ConnectedOrganizationClient) AddInternalSponsorGroup added in v0.51.0

func (c *ConnectedOrganizationClient) AddInternalSponsorGroup(ctx context.Context, orgId string, grpId string) error

Add a group as an external sponsor to the connected organization. https://docs.microsoft.com/graph/api/connectedorganization-post-internalsponsors

func (*ConnectedOrganizationClient) AddInternalSponsorUser added in v0.51.0

func (c *ConnectedOrganizationClient) AddInternalSponsorUser(ctx context.Context, orgId string, userId string) error

Add a user as an external sponsor to the connected organization. https://docs.microsoft.com/graph/api/connectedorganization-post-internalsponsors

func (*ConnectedOrganizationClient) Create added in v0.51.0

Create creates a new ConnectedOrganization. https://docs.microsoft.com/graph/api/entitlementmanagement-post-connectedorganizations

func (*ConnectedOrganizationClient) Delete added in v0.51.0

Delete removes a ConnectedOrganization. https://docs.microsoft.com/graph/api/connectedorganization-delete

func (*ConnectedOrganizationClient) DeleteExternalSponsor added in v0.51.0

func (c *ConnectedOrganizationClient) DeleteExternalSponsor(ctx context.Context, orgId string, id string) error

Delete a user or group as an external sponsor to the connected organization. https://docs.microsoft.com/graph/api/connectedorganization-delete-externalsponsors

func (*ConnectedOrganizationClient) DeleteInternalSponsor added in v0.51.0

func (c *ConnectedOrganizationClient) DeleteInternalSponsor(ctx context.Context, orgId string, id string) error

Delete a user or group as an internal sponsor to the connected organization. https://docs.microsoft.com/graph/api/connectedorganization-delete-internalsponsors

func (*ConnectedOrganizationClient) Get added in v0.51.0

Get retrieves a ConnectedOrganization. https://docs.microsoft.com/graph/api/connectedorganization-get

func (*ConnectedOrganizationClient) List added in v0.51.0

List returns a list of ConnectedOrganization https://docs.microsoft.com/graph/api/entitlementmanagement-list-connectedorganizations

func (*ConnectedOrganizationClient) ListExternalSponsors added in v0.51.0

func (c *ConnectedOrganizationClient) ListExternalSponsors(ctx context.Context, query odata.Query, id string) (*[]DirectoryObject, int, error)

List the external sponsors for a connected organization. https://docs.microsoft.com/graph/api/connectedorganization-list-externalsponsors

func (*ConnectedOrganizationClient) ListInternalSponsors added in v0.51.0

func (c *ConnectedOrganizationClient) ListInternalSponsors(ctx context.Context, query odata.Query, id string) (*[]DirectoryObject, int, error)

List the internal sponsors for a connected organization. https://docs.microsoft.com/graph/api/connectedorganization-list-internalsponsors

func (*ConnectedOrganizationClient) Update added in v0.51.0

func (c *ConnectedOrganizationClient) Update(ctx context.Context, connectedOrganization ConnectedOrganization) (int, error)

Update amends an existing ConnectedOrganization. https://docs.microsoft.com/graph/api/connectedorganization-update

type ConnectedOrganizationState added in v0.51.0

type ConnectedOrganizationState = string
const (
	ConnectedOrganizationStateProposed           ConnectedOrganizationState = "proposed"
	ConnectedOrganizationStateConfigured         ConnectedOrganizationState = "configured"
	ConnectedOrganizationStateUnknownFutureValue ConnectedOrganizationState = "unknownFutureValue"
)

type ConnectionInfo added in v0.31.0

type ConnectionInfo struct {
	Url *string `json:"url,omitempty"`
}

type ConsentProvidedForMinor added in v0.21.0

type ConsentProvidedForMinor = StringNullWhenEmpty
const (
	ConsentProvidedForMinorNone        ConsentProvidedForMinor = ""
	ConsentProvidedForMinorDenied      ConsentProvidedForMinor = "Denied"
	ConsentProvidedForMinorGranted     ConsentProvidedForMinor = "Granted"
	ConsentProvidedForMinorNotRequired ConsentProvidedForMinor = "NotRequired"
)

type ConsistencyFailureFunc added in v0.16.0

type ConsistencyFailureFunc func(*http.Response, *odata.OData) bool

ConsistencyFailureFunc is a function that determines whether an HTTP request has failed due to eventual consistency and should be retried

type CountryNamedLocation added in v0.11.0

type CountryNamedLocation struct {
	*BaseNamedLocation
	CountriesAndRegions               *[]string `json:"countriesAndRegions,omitempty"`
	IncludeUnknownCountriesAndRegions *bool     `json:"includeUnknownCountriesAndRegions,omitempty"`
}

CountryNamedLocation describes an Country Named Location object.

type CredentialUsageSummary added in v0.24.0

type CredentialUsageSummary struct {
	AuthMethod              *UsageAuthMethod `json:"usageAuthMethod,omitempty"`
	FailureActivityCount    *int64           `json:"failureActivityCount,omitempty"`
	Feature                 *FeatureType     `json:"feature,omitempty"`
	ID                      *string          `json:"id,omitempty"`
	SuccessfulActivityCount *int64           `json:"successfulActivityCount,omitempty"`
}

type CredentialUsageSummaryPeriod added in v0.24.0

type CredentialUsageSummaryPeriod = string
const (
	CredentialUsageSummaryPeriod30 CredentialUsageSummaryPeriod = "D30"
	CredentialUsageSummaryPeriod7  CredentialUsageSummaryPeriod = "D7"
	CredentialUsageSummaryPeriod1  CredentialUsageSummaryPeriod = "D1"
)

type CredentialUserRegistrationCount added in v0.24.0

type CredentialUserRegistrationCount struct {
	ID                     *string                  `json:"id,omitempty"`
	TotalUserCount         *int64                   `json:"totalUserCount,omitempty"`
	UserRegistrationCounts *[]UserRegistrationCount `json:"userRegistrationCounts,omitempty"`
}

type CredentialUserRegistrationDetails added in v0.24.0

type CredentialUserRegistrationDetails struct {
	AuthMethods       *[]RegistrationAuthMethod `json:"authMethods,omitempty"`
	ID                *string                   `json:"id,omitempty"`
	IsCapable         *bool                     `json:"isCapable,omitempty"`
	IsEnabled         *bool                     `json:"isEnabled,omitempty"`
	IsMfaRegistered   *bool                     `json:"isMfaRegistered,omitempty"`
	IsRegistered      *bool                     `json:"isRegistered,omitempty"`
	UserDisplayName   *string                   `json:"userDisplayName,omitempty"`
	UserPrincipalName *string                   `json:"UserPrincipalName,omitempty"`
}

type CustomExtensionHandlerInstance added in v0.56.0

type CustomExtensionHandlerInstance struct {
	CustomExensionId      *string                                    `json:"customExtensionId,omitempty"`
	ExternalCorrelationId *string                                    `json:"externalCorrelationId,omitempty"`
	Stage                 *AccessPackageCustomExtensionStage         `json:"stage,omitempty"`
	Status                *AccessPackageCustomExtensionHandlerStatus `json:"status,omitempty"`
}

type CustomSecurityAttributeDefinition added in v0.69.0

type CustomSecurityAttributeDefinition struct {
	AttributeSet            *string `json:"attributeSet,omitempty"`
	Description             *string `json:"description,omitempty"`
	ID                      *string `json:"id,omitempty"`
	IsCollection            *bool   `json:"isCollection,omitempty"`
	IsSearchable            *bool   `json:"isSearchable,omitempty"`
	Name                    *string `json:"name,omitempty"`
	Status                  *string `json:"status,omitempty"`
	Type                    *string `json:"type,omitempty"`
	UsePreDefinedValuesOnly *bool   `json:"usePreDefinedValuesOnly,omitempty"`
}

type CustomSecurityAttributeDefinitionClient added in v0.69.0

type CustomSecurityAttributeDefinitionClient struct {
	BaseClient Client
}

CustomSecurityAttributeDefinitionClient returns a BaseClient to enable interaction with the graph API

func NewCustomSecurityAttributeDefinitionClient added in v0.69.0

func NewCustomSecurityAttributeDefinitionClient() *CustomSecurityAttributeDefinitionClient

NewCustomSecurityAttributeDefinitionClient returns a new instance of CustomSecurityAttributeDefinitionClient

func (*CustomSecurityAttributeDefinitionClient) Create added in v0.69.0

Create will create a CustomSecurityAttributeDefinition and return the result, HTTP status code as well as any errors

func (*CustomSecurityAttributeDefinitionClient) Deactivate added in v0.69.0

func (*CustomSecurityAttributeDefinitionClient) Delete added in v0.69.0

Delete removes an instance of CustomSecurityAttributeDefinition by `id`

func (*CustomSecurityAttributeDefinitionClient) Get added in v0.69.0

Get returns a single CustomSecurityAttributeDefinition, HTTP status code, and any errors

func (*CustomSecurityAttributeDefinitionClient) List added in v0.69.0

List returns a slice of CustomSecurityAttributeDefinition, the HTTP status code and any errors

func (*CustomSecurityAttributeDefinitionClient) Update added in v0.69.0

func (c *CustomSecurityAttributeDefinitionClient) Update(ctx context.Context, customSecurityAttributeDefinition CustomSecurityAttributeDefinition) (int, error)

Update will update a single CustomSecurityAttributeDefinition entity returning the HTTP status code and any errors

type DaysOfWeekType added in v0.56.0

type DaysOfWeekType = string
const (
	DaysOfWeekTypeSunday    DaysOfWeekType = "sunday"
	DaysOfWeekTypeMonday    DaysOfWeekType = "monday"
	DaysOfWeekTypeTuesday   DaysOfWeekType = "tuesday"
	DaysOfWeekTypeWednesday DaysOfWeekType = "wednesday"
	DaysOfWeekTypeThursday  DaysOfWeekType = "thursday"
	DaysOfWeekTypeFriday    DaysOfWeekType = "friday"
	DaysOfWeekTypeSaturday  DaysOfWeekType = "saturday"
)

type DelegatedPermissionGrant added in v0.36.0

type DelegatedPermissionGrant struct {
	Id          *string                              `json:"id,omitempty"`
	ClientId    *string                              `json:"clientId,omitempty"`
	ConsentType *DelegatedPermissionGrantConsentType `json:"consentType,omitempty"`
	PrincipalId *string                              `json:"principalId,omitempty"`
	ResourceId  *string                              `json:"resourceId,omitempty"`
	Scopes      *[]string                            `json:"-"`
}

func (DelegatedPermissionGrant) MarshalJSON added in v0.36.0

func (d DelegatedPermissionGrant) MarshalJSON() ([]byte, error)

func (*DelegatedPermissionGrant) UnmarshalJSON added in v0.36.0

func (d *DelegatedPermissionGrant) UnmarshalJSON(data []byte) error

type DelegatedPermissionGrantConsentType added in v0.36.0

type DelegatedPermissionGrantConsentType = string
const (
	DelegatedPermissionGrantConsentTypeAllPrincipals DelegatedPermissionGrantConsentType = "AllPrincipals"
	DelegatedPermissionGrantConsentTypePrincipal     DelegatedPermissionGrantConsentType = "Principal"
)

type DelegatedPermissionGrantsClient added in v0.36.0

type DelegatedPermissionGrantsClient struct {
	BaseClient Client
}

DelegatedPermissionGrantsClient performs operations on DelegatedPermissionGrants.

func NewDelegatedPermissionGrantsClient added in v0.36.0

func NewDelegatedPermissionGrantsClient() *DelegatedPermissionGrantsClient

NewDelegatedPermissionGrantsClient returns a new DelegatedPermissionGrantsClient

func (*DelegatedPermissionGrantsClient) Create added in v0.36.0

Create creates a new delegated permission grant

func (*DelegatedPermissionGrantsClient) Delete added in v0.36.0

Delete removes a delegated permission grant

func (*DelegatedPermissionGrantsClient) Get added in v0.36.0

Get returns a delegated permission grant

func (*DelegatedPermissionGrantsClient) List added in v0.36.0

List returns a list of delegated permission grants

func (*DelegatedPermissionGrantsClient) Update added in v0.36.0

func (c *DelegatedPermissionGrantsClient) Update(ctx context.Context, delegatedPermissionGrant DelegatedPermissionGrant) (int, error)

Update amends an existing delegated permission grant

type DeleteHttpRequestInput

type DeleteHttpRequestInput struct {
	ConsistencyFailureFunc ConsistencyFailureFunc
	OData                  odata.Query
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
	Uri                    Uri
}

DeleteHttpRequestInput configures a DELETE request.

func (DeleteHttpRequestInput) GetConsistencyFailureFunc added in v0.16.0

func (i DeleteHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (DeleteHttpRequestInput) GetContentType added in v0.29.0

func (i DeleteHttpRequestInput) GetContentType() string

GetContentType returns the content type for the request, currently only application/json is supported

func (DeleteHttpRequestInput) GetOData added in v0.32.0

func (i DeleteHttpRequestInput) GetOData() odata.Query

GetOData returns the OData request metadata

func (DeleteHttpRequestInput) GetValidStatusCodes

func (i DeleteHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a DELETE request.

func (DeleteHttpRequestInput) GetValidStatusFunc

func (i DeleteHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a DELETE request is considered valid.

type DeploymentProfileAssignmentStatus added in v0.60.0

type DeploymentProfileAssignmentStatus = string
const (
	DeploymentProfileAssignmentStatusUnknown                  DeploymentProfileAssignmentStatus = "unknown"
	DeploymentProfileAssignmentStatusAssignedInSync           DeploymentProfileAssignmentStatus = "assignedInSync"
	DeploymentProfileAssignmentStatusAssignedOutOfSync        DeploymentProfileAssignmentStatus = "assignedOutOfSync"
	DeploymentProfileAssignmentStatusAssignedUnknownSyncState DeploymentProfileAssignmentStatus = "assignedUnknownSyncState"
	DeploymentProfileAssignmentStatusNotAssigned              DeploymentProfileAssignmentStatus = "notAssigned"
	DeploymentProfileAssignmentStatusPending                  DeploymentProfileAssignmentStatus = "pending"
	DeploymentProfileAssignmentStatusFailed                   DeploymentProfileAssignmentStatus = "failed"
)

type DeviceAndAppManagementAssignmentFilterType added in v0.60.0

type DeviceAndAppManagementAssignmentFilterType = string
const (
	DeviceAndAppManagementAssignmentFilterTypeNone    DeviceAndAppManagementAssignmentFilterType = "none"
	DeviceAndAppManagementAssignmentFilterTypeInclude DeviceAndAppManagementAssignmentFilterType = "include"
	DeviceAndAppManagementAssignmentFilterTypeExclude DeviceAndAppManagementAssignmentFilterType = "exclude"
)

type DeviceAndAppManagementAssignmentSource added in v0.60.0

type DeviceAndAppManagementAssignmentSource = string
const (
	DeviceAndAppManagementAssignmentSourceDirect     DeviceAndAppManagementAssignmentSource = "direct"
	DeviceAndAppManagementAssignmentSourcePolicySets DeviceAndAppManagementAssignmentSource = "policySets"
)

type DeviceAndAppManagementAssignmentTarget added in v0.60.0

type DeviceAndAppManagementAssignmentTarget struct {
	DeviceAndAppManagementAssignmentFilterId   *string                                     `json:"deviceAndAppManagementAssignmentFilterId,omitempty"`
	DeviceAndAppManagementAssignmentFilterType *DeviceAndAppManagementAssignmentFilterType `json:"deviceAndAppManagementAssignmentFilterType,omitempty"`
}

type DeviceDetail added in v0.18.0

type DeviceDetail struct {
	Browser         *string `json:"browser,omitempty"`
	DeviceId        *string `json:"deviceId,omitempty"`
	DisplayName     *string `json:"displayName,omitempty"`
	IsCompliant     *bool   `json:"isCompliant,omitempty"`
	IsManaged       *bool   `json:"isManaged,omitempty"`
	OperatingSystem *string `json:"operatingSystem,omitempty"`
	TrustType       *string `json:"trustType,omitempty"`
}

type DeviceUsageType added in v0.60.0

type DeviceUsageType = string
const (
	DeviceUsageTypeSingleUser DeviceUsageType = "singleUser"
	DeviceUsageTypeShared     DeviceUsageType = "shared"
)

type DirectoryAudit added in v0.18.0

type DirectoryAudit struct {
	ActivityDateTime    *time.Time              `json:"activityDateTime,omitempty"`
	ActivityDisplayName *string                 `json:"activityDisplayName,omitempty"`
	AdditionalDetails   *[]KeyValue             `json:"additionalDetails,omitempty"`
	Category            *string                 `json:"category,omitempty"`
	CorrelationId       *string                 `json:"correlationId,omitempty"`
	Id                  *string                 `json:"id,omitempty"`
	InitiatedBy         *AuditActivityInitiator `json:"initiatedBy,omitempty"`
	LoggedByService     *string                 `json:"loggedByService,omitempty"`
	Result              *string                 `json:"result,omitempty"`
	ResultReason        *string                 `json:"resultReason,omitempty"`
	TargetResources     *[]TargetResource       `json:"targetResources,omitempty"`
}

type DirectoryAuditReportsClient added in v0.18.0

type DirectoryAuditReportsClient struct {
	BaseClient Client
}

DirectoryAuditReportsClient performs operations on directory Audit reports.

func NewDirectoryAuditReportsClient added in v0.18.0

func NewDirectoryAuditReportsClient() *DirectoryAuditReportsClient

NewDirectoryAuditReportsClient returns a new DirectoryAuditReportsClient.

func (*DirectoryAuditReportsClient) Get added in v0.18.0

Get retrieves a Directory audit report.

func (*DirectoryAuditReportsClient) List added in v0.18.0

List returns a list of Directory audit report logs, optionally queried using OData.

type DirectoryObject added in v0.24.0

type DirectoryObject struct {
	ODataId        *odata.Id              `json:"@odata.id,omitempty"`
	ODataType      *odata.Type            `json:"@odata.type,omitempty"`
	Id             *string                `json:"id,omitempty"`
	ObjectId       *string                `json:"objectId,omitempty"`
	DisplayName    *string                `json:"displayName,omitempty"`
	AdditionalData map[string]interface{} `json:"-"`
}

func (*DirectoryObject) ID added in v0.24.0

func (o *DirectoryObject) ID() (id *string)

func (*DirectoryObject) UnmarshalJSONWithAdditionalData added in v0.52.0

func (o *DirectoryObject) UnmarshalJSONWithAdditionalData(data []byte) error

func (*DirectoryObject) Uri added in v0.24.0

func (o *DirectoryObject) Uri(endpoint string, apiVersion ApiVersion) string

type DirectoryObjectsClient added in v0.24.0

type DirectoryObjectsClient struct {
	BaseClient Client
}

DirectoryObjectsClient performs operations on Directory Objects (the base type for other objects such as users and groups)

func NewDirectoryObjectsClient added in v0.24.0

func NewDirectoryObjectsClient() *DirectoryObjectsClient

NewDirectoryObjectsClient returns a new DirectoryObjectsClient.

func (*DirectoryObjectsClient) Delete added in v0.24.0

func (c *DirectoryObjectsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a DirectoryObject.

func (*DirectoryObjectsClient) Get added in v0.24.0

Get retrieves a DirectoryObject.

func (*DirectoryObjectsClient) GetByIds added in v0.24.0

func (c *DirectoryObjectsClient) GetByIds(ctx context.Context, ids []string, types []odata.ShortType) (*[]DirectoryObject, int, error)

GetByIds retrieves multiple DirectoryObjects from a list of IDs.

func (*DirectoryObjectsClient) GetMemberGroups added in v0.24.0

func (c *DirectoryObjectsClient) GetMemberGroups(ctx context.Context, id string, securityEnabledOnly bool) (*[]DirectoryObject, int, error)

GetMemberGroups retrieves IDs of the groups and directory roles that a directory object is a member of. id is the object ID of the directory object.

func (*DirectoryObjectsClient) GetMemberObjects added in v0.24.0

func (c *DirectoryObjectsClient) GetMemberObjects(ctx context.Context, id string, securityEnabledOnly bool) (*[]DirectoryObject, int, error)

GetMemberObjects retrieves IDs of the groups and directory roles that a directory object is a member of. id is the object ID of the directory object.

type DirectoryRole added in v0.12.0

type DirectoryRole struct {
	DirectoryObject
	Members *Members `json:"-"`

	Description    *string `json:"description,omitempty"`
	DisplayName    *string `json:"displayName,omitempty"`
	RoleTemplateId *string `json:"roleTemplateId,omitempty"`
}

func (*DirectoryRole) UnmarshalJSON added in v0.24.0

func (r *DirectoryRole) UnmarshalJSON(data []byte) error

type DirectoryRoleTemplate added in v0.11.0

type DirectoryRoleTemplate struct {
	ID              *string    `json:"id,omitempty"`
	DeletedDateTime *time.Time `json:"deletedDateTime,omitempty"`
	Description     *string    `json:"description,omitempty"`
	DisplayName     *string    `json:"displayName,omitempty"`
}

DirectoryRoleTemplate describes a Directory Role Template.

type DirectoryRoleTemplatesClient added in v0.11.0

type DirectoryRoleTemplatesClient struct {
	BaseClient Client
}

DirectoryRoleTemplatesClient performs operations on DirectoryRoleTemplates.

func NewDirectoryRoleTemplatesClient added in v0.11.0

func NewDirectoryRoleTemplatesClient() *DirectoryRoleTemplatesClient

NewDirectoryRoleTemplatesClient returns a new DirectoryRoleTemplatesClient

func (*DirectoryRoleTemplatesClient) Get added in v0.11.0

Get retrieves a DirectoryRoleTemplate manifest.

func (*DirectoryRoleTemplatesClient) List added in v0.11.0

List returns a list of DirectoryRoleTemplates.

type DirectoryRolesClient added in v0.12.0

type DirectoryRolesClient struct {
	BaseClient Client
}

DirectoryRolesClient performs operations on DirectoryRoles.

func NewDirectoryRolesClient added in v0.12.0

func NewDirectoryRolesClient() *DirectoryRolesClient

NewDirectoryRolesClient returns a new DirectoryRolesClient

func (*DirectoryRolesClient) Activate added in v0.12.0

func (c *DirectoryRolesClient) Activate(ctx context.Context, roleTemplateID string) (*DirectoryRole, int, error)

Activate activates a directory role. To read a directory role or update its members, it must first be activated in the tenant using role template id. This method will attempt to detect whether a role is already activated in the tenant, but may fail in some circumstances.

func (*DirectoryRolesClient) AddMembers added in v0.12.0

func (c *DirectoryRolesClient) AddMembers(ctx context.Context, directoryRole *DirectoryRole) (int, error)

AddMembers adds new members to a Directory Role. First populate the `members` field, then call this method

func (*DirectoryRolesClient) Get added in v0.12.0

Get retrieves a DirectoryRole manifest.

func (*DirectoryRolesClient) GetByTemplateId added in v0.29.0

func (c *DirectoryRolesClient) GetByTemplateId(ctx context.Context, templateId string) (*DirectoryRole, int, error)

GetByTemplateId retrieves a DirectoryRole manifest for a DirectoryRoleTemplate id.

func (*DirectoryRolesClient) GetMember added in v0.12.0

func (c *DirectoryRolesClient) GetMember(ctx context.Context, directoryRoleId, memberId string) (*string, int, error)

GetMember retrieves a single member of the specified DirectoryRole. directoryRoleId is the object ID of the directory role. memberId is the object ID of the member object.

func (*DirectoryRolesClient) List added in v0.12.0

List returns a list of DirectoryRoles activated in the tenant.

func (*DirectoryRolesClient) ListMembers added in v0.12.0

func (c *DirectoryRolesClient) ListMembers(ctx context.Context, id string) (*[]string, int, error)

ListMembers retrieves the members of the specified directory role. id is the object ID of the directory role.

func (*DirectoryRolesClient) RemoveMembers added in v0.12.0

func (c *DirectoryRolesClient) RemoveMembers(ctx context.Context, directoryRoleId string, memberIds *[]string) (int, error)

RemoveMembers removes members from a Directory Role. id is the object ID of the Directory Role. memberIds is a *[]string containing object IDs of members to remove.

type Domain

type Domain struct {
	ID                               *string   `json:"id,omitempty"`
	AuthenticationType               *string   `json:"authenticationType,omitempty"`
	IsAdminManaged                   *bool     `json:"isAdminManaged,omitempty"`
	IsDefault                        *bool     `json:"isDefault,omitempty"`
	IsInitial                        *bool     `json:"isInitial,omitempty"`
	IsRoot                           *bool     `json:"isRoot,omitempty"`
	IsVerified                       *bool     `json:"isVerified,omitempty"`
	PasswordNotificationWindowInDays *int      `json:"passwordNotificationWindowInDays,omitempty"`
	PasswordValidityPeriodInDays     *int      `json:"passwordValidityPeriodInDays,omitempty"`
	SupportedServices                *[]string `json:"supportedServices,omitempty"`

	State *DomainState `json:"state,omitempty"`
}

Domain describes a Domain object.

type DomainState

type DomainState struct {
	LastActionDateTime *time.Time `json:"lastActionDateTime,omitempty"`
	Operation          *string    `json:"operation,omitempty"`
	Status             *string    `json:"status,omitempty"`
}

type DomainsClient

type DomainsClient struct {
	BaseClient Client
}

DomainsClient performs operations on Domains.

func NewDomainsClient

func NewDomainsClient() *DomainsClient

NewDomainsClient returns a new DomainsClient.

func (*DomainsClient) Get

func (c *DomainsClient) Get(ctx context.Context, id string, query odata.Query) (*Domain, int, error)

Get retrieves a Domain.

func (*DomainsClient) List

func (c *DomainsClient) List(ctx context.Context, query odata.Query) (*[]Domain, int, error)

List returns a list of Domains.

type EmailAddress

type EmailAddress struct {
	Address *string `json:"address,omitempty"`
	Name    *string `json:"name,omitempty"`
}

type EmailAuthenticationMethod added in v0.25.0

type EmailAuthenticationMethod struct {
	ID           *string `json:"id,omitempty"`
	EmailAddress *string `json:"emailAddress,omitempty"`
}

type EmployeeOrgData added in v0.29.0

type EmployeeOrgData struct {
	CostCenter *string `json:"costCenter,omitempty"`
	Division   *string `json:"division,omitempty"`
}

type EnrollmentState added in v0.60.0

type EnrollmentState = string
const (
	EnrollmentStateUnknown      EnrollmentState = "unknown"
	EnrollmentStateEnrolled     EnrollmentState = "enrolled"
	EnrollmentStatePendingReset EnrollmentState = "pendingReset"
	EnrollmentStateFailed       EnrollmentState = "failed"
	EnrollmentStateNotContacted EnrollmentState = "notContacted"
	EnrollmentStateBlocked      EnrollmentState = "blocked"
)

type EntitlementManagementSchedule added in v0.56.0

type EntitlementManagementSchedule struct {
	StartDateTime *time.Time         `json:"startDateTime,omitempty"`
	Expiration    *ExpirationPattern `json:"expiration,omitempty"`
	Recurrence    *RecurrencePattern `json:"recurrence,omitempty"`
}

type EntitlementRoleAssignmentsClient added in v0.56.0

type EntitlementRoleAssignmentsClient struct {
	BaseClient Client
}

EntitlementRoleAssignmentsClient performs operations on RoleAssignments.

func NewEntitlementRoleAssignmentsClient added in v0.56.0

func NewEntitlementRoleAssignmentsClient() *EntitlementRoleAssignmentsClient

NewEntitlementRoleAssignmentsClient returns a new EntitlementRoleAssignmentsClient

func (*EntitlementRoleAssignmentsClient) Create added in v0.56.0

Create creates a new UnifiedRoleAssignment.

func (*EntitlementRoleAssignmentsClient) Delete added in v0.56.0

Delete removes a UnifiedRoleAssignment.

func (*EntitlementRoleAssignmentsClient) Get added in v0.56.0

Get retrieves a UnifiedRoleAssignment

func (*EntitlementRoleAssignmentsClient) List added in v0.56.0

List returns a list of RoleAssignments

type EntitlementRoleDefinitionsClient added in v0.56.0

type EntitlementRoleDefinitionsClient struct {
	BaseClient Client
}

EntitlementRoleDefinitionsClient performs operations on RoleDefinitions.

func NewEntitlementRoleDefinitionsClient added in v0.56.0

func NewEntitlementRoleDefinitionsClient() *EntitlementRoleDefinitionsClient

NewEntitlementRoleDefinitionsClient returns a new EntitlementRoleDefinitionsClient

func (*EntitlementRoleDefinitionsClient) Get added in v0.56.0

Get retrieves a UnifiedRoleDefinition

func (*EntitlementRoleDefinitionsClient) List added in v0.56.0

List returns a list of RoleDefinitions

type ExpirationPattern added in v0.56.0

type ExpirationPattern struct {
	Duration    *string                `json:"duration,omitempty"`
	EndDateTime *time.Time             `json:"endDateTime,omitempty"`
	Type        *ExpirationPatternType `json:"type,omitempty"`
}

type ExpirationPatternType added in v0.56.0

type ExpirationPatternType = string
const (
	ExpirationPatternTypeNotSpecified  ExpirationPatternType = "notSpecified"
	ExpirationPatternTypeNoExpiration  ExpirationPatternType = "noExpiration"
	ExpirationPatternTypeAfterDateTime ExpirationPatternType = "afterDateTime"
	ExpirationPatternTypeAfterDuration ExpirationPatternType = "afterDuration"
)

type ExtensionSchemaProperty added in v0.19.0

type ExtensionSchemaProperty struct {
	Name *string                         `json:"name,omitempty"`
	Type ExtensionSchemaPropertyDataType `json:"type,omitempty"`
}

type ExtensionSchemaPropertyDataType added in v0.19.0

type ExtensionSchemaPropertyDataType = string
const (
	ExtensionSchemaPropertyDataBinary   ExtensionSchemaPropertyDataType = "Binary"
	ExtensionSchemaPropertyDataBoolean  ExtensionSchemaPropertyDataType = "Boolean"
	ExtensionSchemaPropertyDataDateTime ExtensionSchemaPropertyDataType = "DateTime"
	ExtensionSchemaPropertyDataInteger  ExtensionSchemaPropertyDataType = "Integer"
	ExtensionSchemaPropertyDataString   ExtensionSchemaPropertyDataType = "String"
)

type ExtensionSchemaTargetType added in v0.19.0

type ExtensionSchemaTargetType = string
const (
	ExtensionSchemaTargetTypeAdministrativeUnit ExtensionSchemaTargetType = "AdministrativeUnit"
	ExtensionSchemaTargetTypeContact            ExtensionSchemaTargetType = "Contact"
	ExtensionSchemaTargetTypeDevice             ExtensionSchemaTargetType = "Device"
	ExtensionSchemaTargetTypeEvent              ExtensionSchemaTargetType = "Event"
	ExtensionSchemaTargetTypePost               ExtensionSchemaTargetType = "Post"
	ExtensionSchemaTargetTypeGroup              ExtensionSchemaTargetType = "Group"
	ExtensionSchemaTargetTypeMessage            ExtensionSchemaTargetType = "Message"
	ExtensionSchemaTargetTypeOrganization       ExtensionSchemaTargetType = "Organization"
	ExtensionSchemaTargetTypeUser               ExtensionSchemaTargetType = "User"
)

type FeatureType added in v0.24.0

type FeatureType = string
const (
	FeatureTypeRegistration       FeatureType = "registration"
	FeatureTypeReset              FeatureType = "reset"
	FeatureTypeUnknownFutureValue FeatureType = "unknownFutureValue"
)

type FederatedIdentityCredential added in v0.39.0

type FederatedIdentityCredential struct {
	Audiences   *[]string            `json:"audiences,omitempty"`
	Description *StringNullWhenEmpty `json:"description,omitempty"`
	ID          *string              `json:"id,omitempty"`
	Issuer      *string              `json:"issuer,omitempty"`
	Name        *string              `json:"name,omitempty"`
	Subject     *string              `json:"subject,omitempty"`
}

type Fido2AuthenticationMethod added in v0.25.0

type Fido2AuthenticationMethod struct {
	ID                      *string           `json:"id,omitempty"`
	DisplayName             *string           `json:"displayName,omitempty"`
	CreatedDateTime         *time.Time        `json:"createdDateTime,omitempty"`
	AAGuid                  *string           `json:"aaGuid,omitempty"`
	Model                   *string           `json:"model,omitempty"`
	AttestationCertificates *[]string         `json:"attestationCertificates,omitempty"`
	AttestationLevel        *AttestationLevel `json:"attestationLevel,omitempty"`
}

type FirstDayOfWeek added in v0.56.0

type FirstDayOfWeek = string
const (
	FirstDayOfWeekSunday    FirstDayOfWeek = "sunday"
	FirstDayOfWeekMonday    FirstDayOfWeek = "monday"
	FirstDayOfWeekTuesday   FirstDayOfWeek = "tuesday"
	FirstDayOfWeekWednesday FirstDayOfWeek = "wednesday"
	FirstDayOfWeekThursday  FirstDayOfWeek = "thursday"
	FirstDayOfWeekFriday    FirstDayOfWeek = "friday"
	FirstDayOfWeekSaturday  FirstDayOfWeek = "staturday"
)

type GeoCoordinates added in v0.18.0

type GeoCoordinates struct {
	Altitude  *float64 `json:"altitude,omitempty"`
	Latitude  *float64 `json:"latitude,omitempty"`
	Longitude *float64 `json:"longitude,omitempty"`
}

type GetHttpRequestInput

type GetHttpRequestInput struct {
	ConsistencyFailureFunc ConsistencyFailureFunc
	DisablePaging          bool
	OData                  odata.Query
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
	Uri                    Uri
	// contains filtered or unexported fields
}

GetHttpRequestInput configures a GET request.

func (GetHttpRequestInput) GetConsistencyFailureFunc added in v0.16.0

func (i GetHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (GetHttpRequestInput) GetContentType added in v0.29.0

func (i GetHttpRequestInput) GetContentType() string

GetContentType returns the content type for the request, currently only application/json is supported

func (GetHttpRequestInput) GetOData added in v0.32.0

func (i GetHttpRequestInput) GetOData() odata.Query

GetOData returns the OData request metadata

func (GetHttpRequestInput) GetValidStatusCodes

func (i GetHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a GET request.

func (GetHttpRequestInput) GetValidStatusFunc

func (i GetHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a GET request is considered valid.

type Group

type Group struct {
	DirectoryObject
	Members          *Members               `json:"members@odata.bind,omitempty"`
	Owners           *Owners                `json:"owners@odata.bind,omitempty"`
	SchemaExtensions *[]SchemaExtensionData `json:"-"`

	AllowExternalSenders          *bool                               `json:"allowExternalSenders,omitempty"`
	AssignedLabels                *[]GroupAssignedLabel               `json:"assignedLabels,omitempty"`
	AssignedLicenses              *[]GroupAssignedLicense             `json:"assignLicenses,omitempty"`
	AutoSubscribeNewMembers       *bool                               `json:"autoSubscribeNewMembers,omitempty"`
	Classification                *string                             `json:"classification,omitempty"`
	CreatedDateTime               *time.Time                          `json:"createdDateTime,omitempty"`
	DeletedDateTime               *time.Time                          `json:"deletedDateTime,omitempty"`
	Description                   *StringNullWhenEmpty                `json:"description,omitempty"`
	DisplayName                   *string                             `json:"displayName,omitempty"`
	ExpirationDateTime            *time.Time                          `json:"expirationDateTime,omitempty"`
	GroupTypes                    *[]GroupType                        `json:"groupTypes,omitempty"`
	HasMembersWithLicenseErrors   *bool                               `json:"hasMembersWithLicenseErrors,omitempty"`
	HideFromAddressLists          *bool                               `json:"hideFromAddressLists,omitempty"`
	HideFromOutlookClients        *bool                               `json:"hideFromOutlookClients,omitempty"`
	IsAssignableToRole            *bool                               `json:"isAssignableToRole,omitempty"`
	IsSubscribedByMail            *bool                               `json:"isSubscribedByMail,omitempty"`
	LicenseProcessingState        *string                             `json:"licenseProcessingState,omitempty"`
	Mail                          *string                             `json:"mail,omitempty"`
	MailEnabled                   *bool                               `json:"mailEnabled,omitempty"`
	MailNickname                  *string                             `json:"mailNickname,omitempty"`
	MembershipRule                *StringNullWhenEmpty                `json:"membershipRule,omitempty"`
	MembershipRuleProcessingState *GroupMembershipRuleProcessingState `json:"membershipRuleProcessingState,omitempty"`
	OnPremisesDomainName          *string                             `json:"onPremisesDomainName,omitempty"`
	OnPremisesLastSyncDateTime    *time.Time                          `json:"onPremisesLastSyncDateTime,omitempty"`
	OnPremisesNetBiosName         *string                             `json:"onPremisesNetBiosName,omitempty"`
	OnPremisesProvisioningErrors  *[]GroupOnPremisesProvisioningError `json:"onPremisesProvisioningErrors,omitempty"`
	OnPremisesSamAccountName      *string                             `json:"onPremisesSamAccountName,omitempty"`
	OnPremisesSecurityIdentifier  *string                             `json:"onPremisesSecurityIdentifier,omitempty"`
	OnPremisesSyncEnabled         *bool                               `json:"onPremisesSyncEnabled,omitempty"`
	PreferredDataLocation         *string                             `json:"preferredDataLocation,omitempty"`
	PreferredLanguage             *string                             `json:"preferredLanguage,omitempty"`
	ProxyAddresses                *[]string                           `json:"proxyAddresses,omitempty"`
	RenewedDateTime               *time.Time                          `json:"renewedDateTime,omitempty"`
	ResourceBehaviorOptions       *[]GroupResourceBehaviorOption      `json:"resourceBehaviorOptions,omitempty"`
	ResourceProvisioningOptions   *[]GroupResourceProvisioningOption  `json:"resourceProvisioningOptions,omitempty"`
	SecurityEnabled               *bool                               `json:"securityEnabled,omitempty"`
	SecurityIdentifier            *string                             `json:"securityIdentifier,omitempty"`
	Theme                         *GroupTheme                         `json:"theme,omitempty"`
	UnseenCount                   *int                                `json:"unseenCount,omitempty"`
	Visibility                    *GroupVisibility                    `json:"visibility,omitempty"`
	WritebackConfiguration        *GroupWritebackConfiguration        `json:"writebackConfiguration,omitempty"`
}

Group describes a Group object.

func (*Group) HasTypes added in v0.19.0

func (g *Group) HasTypes(types []GroupType) bool

HasTypes returns true if the group has all the specified GroupTypes

func (Group) MarshalJSON added in v0.23.0

func (g Group) MarshalJSON() ([]byte, error)

func (*Group) UnmarshalJSON added in v0.23.0

func (g *Group) UnmarshalJSON(data []byte) error

type GroupAssignedLabel

type GroupAssignedLabel struct {
	LabelId     *string `json:"labelId,omitempty"`
	DisplayName *string `json:"displayName,omitempty"`
}

type GroupAssignedLicense

type GroupAssignedLicense struct {
	DisabledPlans *[]string `json:"disabledPlans,omitempty"`
	SkuId         *string   `json:"skuId,omitempty"`
}

type GroupMembershipClaim added in v0.12.0

type GroupMembershipClaim = string
const (
	GroupMembershipClaimAll              GroupMembershipClaim = "All"
	GroupMembershipClaimNone             GroupMembershipClaim = "None"
	GroupMembershipClaimApplicationGroup GroupMembershipClaim = "ApplicationGroup"
	GroupMembershipClaimDirectoryRole    GroupMembershipClaim = "DirectoryRole"
	GroupMembershipClaimSecurityGroup    GroupMembershipClaim = "SecurityGroup"
)

type GroupMembershipRuleProcessingState added in v0.38.0

type GroupMembershipRuleProcessingState = string
const (
	GroupMembershipRuleProcessingStateOn     GroupMembershipRuleProcessingState = "On"
	GroupMembershipRuleProcessingStatePaused GroupMembershipRuleProcessingState = "Paused"
)

type GroupOnPremisesProvisioningError

type GroupOnPremisesProvisioningError struct {
	Category             *string   `json:"category,omitempty"`
	OccurredDateTime     time.Time `json:"occurredDateTime,omitempty"`
	PropertyCausingError *string   `json:"propertyCausingError,omitempty"`
	Value                *string   `json:"value,omitempty"`
}

type GroupResourceBehaviorOption added in v0.21.0

type GroupResourceBehaviorOption = string
const (
	GroupResourceBehaviorOptionAllowOnlyMembersToPost                   GroupResourceBehaviorOption = "AllowOnlyMembersToPost"
	GroupResourceBehaviorOptionCalendarMemberReadOnly                   GroupResourceBehaviorOption = "CalendarMemberReadOnly"
	GroupResourceBehaviorOptionConnectorsDisabled                       GroupResourceBehaviorOption = "ConnectorsDisabled"
	GroupResourceBehaviorOptionHideGroupInOutlook                       GroupResourceBehaviorOption = "HideGroupInOutlook"
	GroupResourceBehaviorOptionSkipExchangeInstantOn                    GroupResourceBehaviorOption = "SkipExchangeInstantOn"
	GroupResourceBehaviorOptionSubscribeMembersToCalendarEventsDisabled GroupResourceBehaviorOption = "SubscribeMembersToCalendarEventsDisabled"
	GroupResourceBehaviorOptionSubscribeNewGroupMembers                 GroupResourceBehaviorOption = "SubscribeNewGroupMembers"
	GroupResourceBehaviorOptionWelcomeEmailDisabled                     GroupResourceBehaviorOption = "WelcomeEmailDisabled"
)

type GroupResourceProvisioningOption added in v0.21.0

type GroupResourceProvisioningOption = string
const (
	GroupResourceProvisioningOptionTeam GroupResourceProvisioningOption = "Team"
)

type GroupTheme added in v0.21.0

type GroupTheme = StringNullWhenEmpty
const (
	GroupThemeNone   GroupTheme = ""
	GroupThemeBlue   GroupTheme = "Blue"
	GroupThemeGreen  GroupTheme = "Green"
	GroupThemeOrange GroupTheme = "Orange"
	GroupThemePink   GroupTheme = "Pink"
	GroupThemePurple GroupTheme = "Purple"
	GroupThemeRed    GroupTheme = "Red"
	GroupThemeTeal   GroupTheme = "Teal"
)

type GroupType added in v0.17.0

type GroupType = string
const (
	GroupTypeDynamicMembership GroupType = "DynamicMembership"
	GroupTypeUnified           GroupType = "Unified"
)

type GroupVisibility added in v0.21.0

type GroupVisibility = string
const (
	GroupVisibilityHiddenMembership GroupVisibility = "Hiddenmembership"
	GroupVisibilityPrivate          GroupVisibility = "Private"
	GroupVisibilityPublic           GroupVisibility = "Public"
)

type GroupWritebackConfiguration added in v0.52.0

type GroupWritebackConfiguration struct {
	IsEnabled           *bool                `json:"isEnabled"`
	OnPremisesGroupType *OnPremisesGroupType `json:"onPremisesGroupType"`
}

type GroupsClient

type GroupsClient struct {
	BaseClient Client
}

GroupsClient performs operations on Groups.

func NewGroupsClient

func NewGroupsClient() *GroupsClient

NewGroupsClient returns a new GroupsClient.

func (*GroupsClient) AddMembers

func (c *GroupsClient) AddMembers(ctx context.Context, group *Group) (int, error)

AddMembers adds new members to a Group. First populate the `members` field, then call this method

func (*GroupsClient) AddOwners

func (c *GroupsClient) AddOwners(ctx context.Context, group *Group) (int, error)

AddOwners adds new owners to a Group. First populate the `owners` field, then call this method

func (*GroupsClient) Create

func (c *GroupsClient) Create(ctx context.Context, group Group) (*Group, int, error)

Create creates a new Group.

func (*GroupsClient) Delete

func (c *GroupsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a Group.

func (*GroupsClient) DeletePermanently added in v0.15.0

func (c *GroupsClient) DeletePermanently(ctx context.Context, id string) (int, error)

DeletePermanently removes a deleted O365 Group permanently.

func (*GroupsClient) Get

func (c *GroupsClient) Get(ctx context.Context, id string, query odata.Query) (*Group, int, error)

Get retrieves a Group.

func (*GroupsClient) GetDeleted added in v0.14.0

func (c *GroupsClient) GetDeleted(ctx context.Context, id string, query odata.Query) (*Group, int, error)

GetDeleted retrieves a deleted O365 Group.

func (*GroupsClient) GetMember

func (c *GroupsClient) GetMember(ctx context.Context, groupId, memberId string) (*string, int, error)

GetMember retrieves a single member of the specified Group. groupId is the object ID of the group. memberId is the object ID of the member object.

func (*GroupsClient) GetMembers added in v0.60.0

func (c *GroupsClient) GetMembers(ctx context.Context, groupId string, query odata.Query) (*[]User, int, error)

GetMembers retrieves all member of the specified Group, configurable by an OData Query. groupId is the object ID of the group.

func (*GroupsClient) GetOwner

func (c *GroupsClient) GetOwner(ctx context.Context, groupId, ownerId string) (*string, int, error)

GetOwner retrieves a single owner for the specified Group. groupId is the object ID of the group. ownerId is the object ID of the owning object.

func (*GroupsClient) GetWithSchemaExtensions added in v0.23.0

func (c *GroupsClient) GetWithSchemaExtensions(ctx context.Context, id string, query odata.Query, schemaExtensions *[]SchemaExtensionData) (*Group, int, error)

GetWithSchemaExtensions retrieves a Group, including the values for any specified schema extensions

func (*GroupsClient) List

func (c *GroupsClient) List(ctx context.Context, query odata.Query) (*[]Group, int, error)

List returns a list of Groups, optionally queried using OData.

func (*GroupsClient) ListAdministrativeUnitMemberships added in v0.57.0

func (c *GroupsClient) ListAdministrativeUnitMemberships(ctx context.Context, id string) (*[]AdministrativeUnit, int, error)

func (*GroupsClient) ListDeleted added in v0.14.0

func (c *GroupsClient) ListDeleted(ctx context.Context, query odata.Query) (*[]Group, int, error)

ListDeleted retrieves a list of recently deleted O365 groups, optionally queried using OData.

func (*GroupsClient) ListMembers

func (c *GroupsClient) ListMembers(ctx context.Context, id string) (*[]string, int, error)

ListMembers retrieves the members of the specified Group. id is the object ID of the group.

func (*GroupsClient) ListOwners

func (c *GroupsClient) ListOwners(ctx context.Context, id string) (*[]string, int, error)

ListOwners retrieves the owners of the specified Group. id is the object ID of the group.

func (*GroupsClient) ListTransitiveMembers added in v0.51.0

func (c *GroupsClient) ListTransitiveMembers(ctx context.Context, id string) (*[]string, int, error)

ListTransitiveMembers retrieves a flat list of all nested members of the specified Group. id is the object ID of the group.

func (*GroupsClient) RemoveMembers

func (c *GroupsClient) RemoveMembers(ctx context.Context, id string, memberIds *[]string) (int, error)

RemoveMembers removes members from a Group. groupId is the object ID of the group. memberIds is a *[]string containing object IDs of members to remove.

func (*GroupsClient) RemoveOwners

func (c *GroupsClient) RemoveOwners(ctx context.Context, id string, ownerIds *[]string) (int, error)

RemoveOwners removes owners from a Group. groupId is the object ID of the group. ownerIds is a *[]string containing object IDs of owners to remove.

func (*GroupsClient) RestoreDeleted added in v0.17.0

func (c *GroupsClient) RestoreDeleted(ctx context.Context, id string) (*Group, int, error)

RestoreDeleted restores a recently deleted O365 Group.

func (*GroupsClient) Update

func (c *GroupsClient) Update(ctx context.Context, group Group) (int, error)

Update amends an existing Group.

type HttpRequestInput

type HttpRequestInput interface {
	GetConsistencyFailureFunc() ConsistencyFailureFunc
	GetContentType() string
	GetOData() odata.Query
	GetValidStatusCodes() []int
	GetValidStatusFunc() ValidStatusFunc
}

HttpRequestInput is any type that can validate the response to an HTTP request.

type IPNamedLocation added in v0.11.0

type IPNamedLocation struct {
	*BaseNamedLocation
	IPRanges  *[]IPNamedLocationIPRange `json:"ipRanges,omitempty"`
	IsTrusted *bool                     `json:"isTrusted,omitempty"`
}

IPNamedLocation describes an IP Named Location object.

type IPNamedLocationIPRange added in v0.11.0

type IPNamedLocationIPRange struct {
	CIDRAddress *string `json:"cidrAddress,omitempty"`
}

type Identity added in v0.36.0

type Identity struct {
	DisplayName *string `json:"displayName,omitempty"`
	Id          *string `json:"id,omitempty"`
	TenantId    *string `json:"tenantId,omitempty"`
}

type IdentityProvider added in v0.13.0

type IdentityProvider struct {
	ODataType    *odata.Type `json:"@odata.type,omitempty"`
	ID           *string     `json:"id,omitempty"`
	ClientId     *string     `json:"clientId,omitempty"`
	ClientSecret *string     `json:"clientSecret,omitempty"`
	Type         *string     `json:"identityProviderType,omitempty"`
	Name         *string     `json:"displayName,omitempty"`
}

type IdentityProvidersClient added in v0.13.0

type IdentityProvidersClient struct {
	BaseClient Client
}

IdentityProvidersClient performs operations on IdentityProviders.

func NewIdentityProvidersClient added in v0.13.0

func NewIdentityProvidersClient() *IdentityProvidersClient

NewIdentityProvidersClient returns a new IdentityProvidersClient

func (*IdentityProvidersClient) Create added in v0.13.0

Create creates a new IdentityProvider.

func (*IdentityProvidersClient) Delete added in v0.13.0

func (c *IdentityProvidersClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a IdentityProvider.

func (*IdentityProvidersClient) Get added in v0.13.0

Get retrieves an IdentityProvider.

func (*IdentityProvidersClient) List added in v0.13.0

List returns a list of IdentityProviders.

func (*IdentityProvidersClient) ListAvailableProviderTypes added in v0.13.0

func (c *IdentityProvidersClient) ListAvailableProviderTypes(ctx context.Context) (*[]string, int, error)

List returns a list of all available identity provider types.

func (*IdentityProvidersClient) Update added in v0.13.0

func (c *IdentityProvidersClient) Update(ctx context.Context, provider IdentityProvider) (int, error)

Update amends an existing IdentityProvider.

type IdentitySource added in v0.51.0

type IdentitySource struct {
	ODataType   *odata.Type `json:"@odata.type,omitempty"`
	DisplayName *string     `json:"displayName,omitempty"`
	TenantId    *string     `json:"tenantId,omitempty"`
	DomainName  *string     `json:"domainName,omitempty"`
	IssuerUri   *string     `json:"issuerUri,omitempty"`
}

Used in the identity sources of a ConnectedOrganization.

type ImplicitGrantSettings

type ImplicitGrantSettings struct {
	EnableAccessTokenIssuance *bool `json:"enableAccessTokenIssuance,omitempty"`
	EnableIdTokenIssuance     *bool `json:"enableIdTokenIssuance,omitempty"`
}

type IncludedUserRoles added in v0.24.0

type IncludedUserRoles = string
const (
	IncludedUserRolesAll             IncludedUserRoles = "all"
	IncludedUserRolesPrivilegedAdmin IncludedUserRoles = "privilegedAdmin"
	IncludedUserRolesAdmin           IncludedUserRoles = "admin"
	IncludedUserRolesUser            IncludedUserRoles = "user"
)

type IncludedUserTypes added in v0.24.0

type IncludedUserTypes = string
const (
	IncludedUserTypesAll    IncludedUserTypes = "all"
	IncludedUserTypesMember IncludedUserTypes = "member"
	IncludedUserTypesGuest  IncludedUserTypes = "guest"
)

type IndexType added in v0.56.0

type IndexType = string
const (
	IndexTypeFirst  IndexType = "first"
	IndexTypeSecond IndexType = "second"
	IndexTypeThird  IndexType = "third"
	IndexTypeFourth IndexType = "fourth"
	IndexTypeLast   IndexType = "last"
)

type InformationalUrl

type InformationalUrl struct {
	LogoUrl             *StringNullWhenEmpty `json:"logoUrl,omitempty"`
	MarketingUrl        *StringNullWhenEmpty `json:"marketingUrl"`
	PrivacyStatementUrl *StringNullWhenEmpty `json:"privacyStatementUrl"`
	SupportUrl          *StringNullWhenEmpty `json:"supportUrl"`
	TermsOfServiceUrl   *StringNullWhenEmpty `json:"termsOfServiceUrl"`
}

type Invitation

type Invitation struct {
	ID                      *string          `json:"id,omitempty"`
	InvitedUserDisplayName  *string          `json:"invitedUserDisplayName,omitempty"`
	InvitedUserEmailAddress *string          `json:"invitedUserEmailAddress,omitempty"`
	SendInvitationMessage   *bool            `json:"sendInvitationMessage,omitempty"`
	InviteRedirectURL       *string          `json:"inviteRedirectUrl,omitempty"`
	InviteRedeemURL         *string          `json:"inviteRedeemUrl,omitempty"`
	Status                  *string          `json:"status,omitempty"`
	InvitedUserType         *InvitedUserType `json:"invitedUserType,omitempty"`

	InvitedUserMessageInfo *InvitedUserMessageInfo `json:"invitedUserMessageInfo,omitempty"`
	InvitedUser            *User                   `json:"invitedUser,omitempty"`
}

Invitation describes a Invitation object.

type InvitationsClient

type InvitationsClient struct {
	BaseClient Client
}

InvitationsClient performs operations on Invitations.

func NewInvitationsClient

func NewInvitationsClient() *InvitationsClient

NewInvitationsClient returns a new InvitationsClient.

func (*InvitationsClient) Create

func (c *InvitationsClient) Create(ctx context.Context, invitation Invitation) (*Invitation, int, error)

Create creates a new Invitation.

type InvitedUserMessageInfo

type InvitedUserMessageInfo struct {
	CCRecipients          *[]Recipient `json:"ccRecipients,omitempty"`
	CustomizedMessageBody *string      `json:"customizedMessageBody,omitempty"`
	MessageLanguage       *string      `json:"messageLanguage,omitempty"`
}

type InvitedUserType added in v0.27.0

type InvitedUserType = string
const (
	InvitedUserTypeGuest  InvitedUserType = "Guest"
	InvitedUserTypeMember InvitedUserType = "Member"
)

type ItemBody added in v0.13.0

type ItemBody struct {
	Content     *string   `json:"content,omitempty"`
	ContentType *BodyType `json:"contentType,omitempty"`
}

type KerberosSignOnSettings

type KerberosSignOnSettings struct {
	ServicePrincipalName       *string `json:"kerberosServicePrincipalName,omitempty"`
	SignOnMappingAttributeType *string `jsonL:"kerberosSignOnMappingAttributeType,omitempty"`
}

type KeyCredential

type KeyCredential struct {
	CustomKeyIdentifier *string            `json:"customKeyIdentifier,omitempty"`
	DisplayName         *string            `json:"displayName,omitempty"`
	EndDateTime         *time.Time         `json:"endDateTime,omitempty"`
	KeyId               *string            `json:"keyId,omitempty"`
	StartDateTime       *time.Time         `json:"startDateTime,omitempty"`
	Thumbprint          *string            `json:"thumbprint,omitempty"`
	Type                KeyCredentialType  `json:"type"`
	Usage               KeyCredentialUsage `json:"usage"`
	Key                 *string            `json:"key,omitempty"`
}

KeyCredential describes a key (certificate) credential for an object.

type KeyCredentialType added in v0.13.0

type KeyCredentialType = string
const (
	KeyCredentialTypeAsymmetricX509Cert  KeyCredentialType = "AsymmetricX509Cert"
	KeyCredentialTypeX509CertAndPassword KeyCredentialType = "X509CertAndPassword"
)

type KeyCredentialUsage added in v0.12.0

type KeyCredentialUsage = string
const (
	KeyCredentialUsageSign   KeyCredentialUsage = "Sign"
	KeyCredentialUsageVerify KeyCredentialUsage = "Verify"
)

type KeyValue added in v0.18.0

type KeyValue struct {
	Key   *string `json:"key,omitempty"`
	Value *string `json:"value,omitempty"`
}

type KeyValueObject added in v0.64.0

type KeyValueObject struct {
	Key   *string `json:"key,omitempty"`
	Value *string `json:"value,omitempty"`
}

type Location added in v0.18.0

type Location struct {
	City            *string         `json:"city,omitempty"`
	CountryOrRegion *string         `json:"countryOrRegion,omitempty"`
	GeoCoordinates  *GeoCoordinates `json:"geoCoordinates,omitempty"`
	State           *string         `json:"state,omitempty"`
}

type MailMessage added in v0.13.0

type MailMessage struct {
	Message *Message `json:"message,omitempty"`
}

type Me

type Me struct {
	ID                *string `json:"id"`
	DisplayName       *string `json:"displayName"`
	UserPrincipalName *string `json:"userPrincipalName"`
}

Me describes the authenticated user.

type MeClient

type MeClient struct {
	BaseClient Client
}

MeClient performs operations on the authenticated user.

func NewMeClient

func NewMeClient() *MeClient

NewMeClient returns a new MeClient.

func (*MeClient) Get

func (c *MeClient) Get(ctx context.Context, query odata.Query) (*Me, int, error)

Get retrieves information about the authenticated user.

func (*MeClient) GetProfile

func (c *MeClient) GetProfile(ctx context.Context, query odata.Query) (*Me, int, error)

GetProfile retrieves the profile of the authenticated user.

func (*MeClient) Sendmail added in v0.13.0

func (c *MeClient) Sendmail(ctx context.Context, message MailMessage) (int, error)

SendMail sends message specified in the request body. TODO: Needs testing with an O365 user principal

type Members added in v0.24.0

type Members []DirectoryObject

func (Members) MarshalJSON added in v0.24.0

func (o Members) MarshalJSON() ([]byte, error)

func (*Members) UnmarshalJSON added in v0.24.0

func (o *Members) UnmarshalJSON(data []byte) error

type Message added in v0.13.0

type Message struct {
	ID            *string      `json:"id,omitempty"`
	Subject       *string      `json:"subject,omitempty"`
	Body          *ItemBody    `json:"body,omitempty"`
	From          *Recipient   `json:"from,omitempty"`
	ToRecipients  *[]Recipient `json:"toRecipients,omitempty"`
	CcRecipients  *[]Recipient `json:"ccRecipients,omitempty"`
	BccRecipients *[]Recipient `json:"bccRecipients,omitempty"`
}

type MethodUsabilityReason added in v0.25.0

type MethodUsabilityReason string
const (
	MethodUsabilityReasonEnabledByPolicy  MethodUsabilityReason = "enabledByPolicy"
	MethodUsabilityReasonDisabledByPolicy MethodUsabilityReason = "disabledByPolicy"
	MethodUsabilityReasonExpired          MethodUsabilityReason = "expired"
	MethodUsabilityReasonNotYetValid      MethodUsabilityReason = "notYetValid"
	MethodUsabilityReasonOneTimeUsed      MethodUsabilityReason = "oneTimeUsed"
)

type MicrosoftAuthenticatorAuthenticationMethod added in v0.25.0

type MicrosoftAuthenticatorAuthenticationMethod struct {
	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
	DisplayName     *string    `json:"displayName,omitempty"`
	ID              *string    `json:"id,omitempty"`
	DeviceTag       *string    `json:"deviceTag,omitempty"`
	PhoneAppVersion *string    `json:"phoneAppVersion,omitempty"`
}

type ModifiedProperty added in v0.18.0

type ModifiedProperty struct {
	DisplayName *string `json:"displayName,omitempty"`
	NewValue    *string `json:"newValue,omitempty"`
	OldValue    *string `json:"oldValue,omitempty"`
}

type NamedLocation added in v0.11.0

type NamedLocation interface{}

type NamedLocationsClient added in v0.11.0

type NamedLocationsClient struct {
	BaseClient Client
}

NamedLocationsClient performs operations on Named Locations.

func NewNamedLocationsClient added in v0.11.0

func NewNamedLocationsClient() *NamedLocationsClient

NewNamedLocationsClient returns a new NamedLocationsClient.

func (*NamedLocationsClient) CreateCountry added in v0.11.0

func (c *NamedLocationsClient) CreateCountry(ctx context.Context, countryNamedLocation CountryNamedLocation) (*CountryNamedLocation, int, error)

CreateCountry creates a new Country Named Location.

func (*NamedLocationsClient) CreateIP added in v0.11.0

func (c *NamedLocationsClient) CreateIP(ctx context.Context, ipNamedLocation IPNamedLocation) (*IPNamedLocation, int, error)

CreateIP creates a new IP Named Location.

func (*NamedLocationsClient) Delete added in v0.11.0

func (c *NamedLocationsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a Named Location.

func (*NamedLocationsClient) Get added in v0.15.0

Get retrieves a Named Location which can be type asserted back to IP or Country Named Location.

func (*NamedLocationsClient) GetCountry added in v0.11.0

func (c *NamedLocationsClient) GetCountry(ctx context.Context, id string, query odata.Query) (*CountryNamedLocation, int, error)

GetCountry retrieves an Country Named Location.

func (*NamedLocationsClient) GetIP added in v0.11.0

GetIP retrieves an IP Named Location.

func (*NamedLocationsClient) List added in v0.11.0

List returns a list of Named Locations, optionally queried using OData.

func (*NamedLocationsClient) UpdateCountry added in v0.11.0

func (c *NamedLocationsClient) UpdateCountry(ctx context.Context, countryNamedLocation CountryNamedLocation) (int, error)

UpdateCountry amends an existing Country Named Location.

func (*NamedLocationsClient) UpdateIP added in v0.11.0

func (c *NamedLocationsClient) UpdateIP(ctx context.Context, ipNamedLocation IPNamedLocation) (int, error)

UpdateIP amends an existing IP Named Location.

type OnPremisesGroupType added in v0.52.0

type OnPremisesGroupType = string
const (
	UniversalDistributionGroup        OnPremisesGroupType = "UniversalDistributionGroup"
	UniversalMailEnabledSecurityGroup OnPremisesGroupType = "UniversalMailEnabledSecurityGroup"
	UniversalSecurityGroup            OnPremisesGroupType = "UniversalSecurityGroup"
)

type OnPremisesPublishing

type OnPremisesPublishing struct {
	AlternateUrl                  *string `json:"alternateUrl,omitempty"`
	ApplicationServerTimeout      *string `json:"applicationServerTimeout,omitempty"`
	ApplicationType               *string `json:"applicationType,omitempty"`
	ExternalAuthenticationType    *string `json:"externalAuthenticationType,omitempty"`
	ExternalUrl                   *string `json:"externalUrl,omitempty"`
	InternalUrl                   *string `json:"internalUrl,omitempty"`
	IsHttpOnlyCookieEnabled       *bool   `json:"isHttpOnlyCookieEnabled,omitempty"`
	IsOnPremPublishingEnabled     *bool   `json:"isOnPremPublishingEnabled,omitempty"`
	IsPersistentCookieEnabled     *bool   `json:"isPersistentCookieEnabled,omitempty"`
	IsSecureCookieEnabled         *bool   `json:"isSecureCookieEnabled,omitempty"`
	IsTranslateHostHeaderEnabled  *bool   `json:"isTranslateHostHeaderEnabled,omitempty"`
	IsTranslateLinksInBodyEnabled *bool   `json:"isTranslateLinksInBodyEnabled,omitempty"`

	SingleSignOnSettings                     *OnPremisesPublishingSingleSignOn                             `json:"singleSignOnSettings,omitempty"`
	VerifiedCustomDomainCertificatesMetadata *OnPremisesPublishingVerifiedCustomDomainCertificatesMetadata `json:"verifiedCustomDomainCertificatesMetadata,omitempty"`
	VerifiedCustomDomainKeyCredential        *KeyCredential                                                `json:"verifiedCustomDomainKeyCredential,omitempty"`
	VerifiedCustomDomainPasswordCredential   *PasswordCredential                                           `json:"verifiedCustomDomainPasswordCredential,omitempty"`
}

type OnPremisesPublishingSingleSignOn

type OnPremisesPublishingSingleSignOn struct {
	KerberosSignOnSettings *KerberosSignOnSettings `json:"kerberosSignOnSettings,omitempty"`
	SingleSignOnMode       *string                 `json:"singleSignOnMode,omitempty"`
}

type OnPremisesPublishingVerifiedCustomDomainCertificatesMetadata

type OnPremisesPublishingVerifiedCustomDomainCertificatesMetadata struct {
	ExpiryDate  *time.Time `json:"expiryDate,omitempty"`
	IssueDate   *time.Time `json:"issueDate,omitempty"`
	IssuerName  *string    `json:"issuerName,omitempty"`
	SubjectName *string    `json:"subjectName,omitempty"`
	Thumbprint  *string    `json:"thumbprint,omitempty"`
}

type OptionalClaim

type OptionalClaim struct {
	AdditionalProperties *[]string `json:"additionalProperties,omitempty"`
	Essential            *bool     `json:"essential,omitempty"`
	Name                 *string   `json:"name,omitempty"`
	Source               *string   `json:"source,omitempty"`
}

type OptionalClaims

type OptionalClaims struct {
	AccessToken *[]OptionalClaim `json:"accessToken,omitempty"`
	IdToken     *[]OptionalClaim `json:"idToken,omitempty"`
	Saml2Token  *[]OptionalClaim `json:"saml2Token,omitempty"`
}

type OutOfBoxExperienceSettings added in v0.60.0

type OutOfBoxExperienceSettings struct {
	HidePrivacySettings       *bool            `json:"hidePrivacySettings,omitempty"`
	HideEULA                  *bool            `json:"hideEULA,omitempty"`
	UserType                  *WindowsUserType `json:"userType,omitempty"`
	DeviceUsageType           *DeviceUsageType `json:"deviceUsageType,omitempty"`
	SkipKeyboardSelectionPage *bool            `json:"skipKeyboardSelectionPage,omitempty"`
	HideEscapeLink            *bool            `json:"hideEscapeLink,omitempty"`
}

type Owners added in v0.24.0

type Owners []DirectoryObject

func (Owners) MarshalJSON added in v0.24.0

func (o Owners) MarshalJSON() ([]byte, error)

func (*Owners) UnmarshalJSON added in v0.24.0

func (o *Owners) UnmarshalJSON(data []byte) error

type ParentalControlSettings

type ParentalControlSettings struct {
	CountriesBlockedForMinors *[]string `json:"countriesBlockedForMinors,omitempty"`
	LegalAgeGroupRule         *string   `json:"legalAgeGroupRule,omitempty"`
}

type PasswordAuthenticationMethod added in v0.25.0

type PasswordAuthenticationMethod struct {
	CreationDateTime *time.Time `json:"creationDateTime,omitempty"`
	ID               *string    `json:"id,omitempty"`
	Password         *string    `json:"password,omitempty"`
}

type PasswordCredential

type PasswordCredential struct {
	CustomKeyIdentifier *string    `json:"customKeyIdentifier,omitempty"`
	DisplayName         *string    `json:"displayName,omitempty"`
	EndDateTime         *time.Time `json:"endDateTime,omitempty"`
	Hint                *string    `json:"hint,omitempty"`
	KeyId               *string    `json:"keyId,omitempty"`
	SecretText          *string    `json:"secretText,omitempty"`
	StartDateTime       *time.Time `json:"startDateTime,omitempty"`
}

PasswordCredential describes a password credential for an object.

type PasswordSingleSignOnSettings

type PasswordSingleSignOnSettings struct {
	Fields *[]SingleSignOnField `json:"fields,omitempty"`
}

type PatchHttpRequestInput

type PatchHttpRequestInput struct {
	ConsistencyFailureFunc ConsistencyFailureFunc
	Body                   []byte
	OData                  odata.Query
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
	Uri                    Uri
}

PatchHttpRequestInput configures a PATCH request.

func (PatchHttpRequestInput) GetConsistencyFailureFunc added in v0.16.0

func (i PatchHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (PatchHttpRequestInput) GetContentType added in v0.29.0

func (i PatchHttpRequestInput) GetContentType() string

GetContentType returns the content type for the request, currently only application/json is supported

func (PatchHttpRequestInput) GetOData added in v0.32.0

func (i PatchHttpRequestInput) GetOData() odata.Query

GetOData returns the OData request metadata

func (PatchHttpRequestInput) GetValidStatusCodes

func (i PatchHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a PATCH request.

func (PatchHttpRequestInput) GetValidStatusFunc

func (i PatchHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a PATCH request is considered valid.

type PermissionScope

type PermissionScope struct {
	ID                      *string             `json:"id,omitempty"`
	AdminConsentDescription *string             `json:"adminConsentDescription,omitempty"`
	AdminConsentDisplayName *string             `json:"adminConsentDisplayName,omitempty"`
	IsEnabled               *bool               `json:"isEnabled,omitempty"`
	Type                    PermissionScopeType `json:"type,omitempty"`
	UserConsentDescription  *string             `json:"userConsentDescription,omitempty"`
	UserConsentDisplayName  *string             `json:"userConsentDisplayName,omitempty"`
	Value                   *string             `json:"value,omitempty"`
}

type PermissionScopeType added in v0.12.0

type PermissionScopeType = string
const (
	PermissionScopeTypeAdmin PermissionScopeType = "Admin"
	PermissionScopeTypeUser  PermissionScopeType = "User"
)

type PersistentBrowserSessionControl added in v0.11.0

type PersistentBrowserSessionControl struct {
	IsEnabled *bool                         `json:"isEnabled,omitempty"`
	Mode      *PersistentBrowserSessionMode `json:"mode,omitempty"`
}

type PersistentBrowserSessionMode added in v0.36.0

type PersistentBrowserSessionMode = string
const (
	PersistentBrowserSessionModeAlways PersistentBrowserSessionMode = "always"
	PersistentBrowserSessionModeNever  PersistentBrowserSessionMode = "never"
)

type PhoneAuthenticationMethod added in v0.25.0

type PhoneAuthenticationMethod struct {
	ID          *string                  `json:"id,omitempty"`
	PhoneNumber *string                  `json:"phoneNumber,omitempty"`
	PhoneType   *AuthenticationPhoneType `json:"phoneType,omitempty"`
}

type PostHttpRequestInput

type PostHttpRequestInput struct {
	Body                   []byte
	ConsistencyFailureFunc ConsistencyFailureFunc
	OData                  odata.Query
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
	Uri                    Uri
}

PostHttpRequestInput configures a POST request.

func (PostHttpRequestInput) GetConsistencyFailureFunc added in v0.16.0

func (i PostHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (PostHttpRequestInput) GetContentType added in v0.29.0

func (i PostHttpRequestInput) GetContentType() string

GetContentType returns the content type for the request, currently only application/json is supported

func (PostHttpRequestInput) GetOData added in v0.32.0

func (i PostHttpRequestInput) GetOData() odata.Query

GetOData returns the OData request metadata

func (PostHttpRequestInput) GetValidStatusCodes

func (i PostHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a POST request.

func (PostHttpRequestInput) GetValidStatusFunc

func (i PostHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a POST request is considered valid.

type PreferredSingleSignOnMode added in v0.22.0

type PreferredSingleSignOnMode = StringNullWhenEmpty
const (
	PreferredSingleSignOnModeNone         PreferredSingleSignOnMode = ""
	PreferredSingleSignOnModeNotSupported PreferredSingleSignOnMode = "notSupported"
	PreferredSingleSignOnModeOidc         PreferredSingleSignOnMode = "oidc"
	PreferredSingleSignOnModePassword     PreferredSingleSignOnMode = "password"
	PreferredSingleSignOnModeSaml         PreferredSingleSignOnMode = "saml"
)

type PrivilegedAccessGroupAction added in v0.67.0

type PrivilegedAccessGroupAction = string
const (
	PrivilegedAccessGroupActionAdminAssign    PrivilegedAccessGroupAction = "adminAssign"
	PrivilegedAccessGroupActionAdminUpdate    PrivilegedAccessGroupAction = "adminUpdate"
	PrivilegedAccessGroupActionAdminRemove    PrivilegedAccessGroupAction = "adminRemove"
	PrivilegedAccessGroupActionAdminExtend    PrivilegedAccessGroupAction = "adminExtend"
	PrivilegedAccessGroupActionAdminRenew     PrivilegedAccessGroupAction = "adminRenew"
	PrivilegedAccessGroupActionSelfActivate   PrivilegedAccessGroupAction = "selfActivate"
	PrivilegedAccessGroupActionSelfDeactivate PrivilegedAccessGroupAction = "selfDeactivate"
)

type PrivilegedAccessGroupAssignmentSchedule added in v0.67.0

type PrivilegedAccessGroupAssignmentSchedule struct {
	ID               *string                               `json:"id,omitempty"`
	AccessId         PrivilegedAccessGroupRelationship     `json:"accessId,omitempty"`
	AssignmentType   PrivilegedAccessGroupAssignmentType   `json:"assignmentType,omitempty"`
	CreatedDateTime  *time.Time                            `json:"createdDateTime,omitempty"`
	CreatedUsing     *string                               `json:"createdUsing,omitempty"`
	GroupId          *string                               `json:"groupId,omitempty"`
	MemberType       PrivilegedAccessGroupMemberType       `json:"memberType,omitempty"`
	ModifiedDateTime *time.Time                            `json:"modifiedDateTime,omitempty"`
	PrincipalId      *string                               `json:"principalId,omitempty"`
	ScheduleInfo     *RequestSchedule                      `json:"scheduleInfo,omitempty"`
	Status           PrivilegedAccessGroupAssignmentStatus `json:"status,omitempty"`
}

type PrivilegedAccessGroupAssignmentScheduleClient added in v0.67.0

type PrivilegedAccessGroupAssignmentScheduleClient struct {
	BaseClient Client
}

func NewPrivilegedAccessGroupAssignmentScheduleClient added in v0.67.0

func NewPrivilegedAccessGroupAssignmentScheduleClient() *PrivilegedAccessGroupAssignmentScheduleClient

func (*PrivilegedAccessGroupAssignmentScheduleClient) Get added in v0.67.0

Get retrieves a PrivilegedAccessGroupAssignment

func (*PrivilegedAccessGroupAssignmentScheduleClient) InstancesGet added in v0.67.0

Get retrieves a PrivilegedAccessGroupAssignmentScheduleInstance

func (*PrivilegedAccessGroupAssignmentScheduleClient) InstancesList added in v0.67.0

List retrieves a list of PrivilegedAccessGroupAssignmentScheduleInstances

func (*PrivilegedAccessGroupAssignmentScheduleClient) List added in v0.67.0

List retrieves a list of PrivilegedAccessGroupAssignments

func (*PrivilegedAccessGroupAssignmentScheduleClient) RequestsCancel added in v0.67.0

func (c *PrivilegedAccessGroupAssignmentScheduleClient) RequestsCancel(ctx context.Context, requestId string) (int, error)

Cancel cancels a PrivilegedAccessGroupAssignmentScheduleRequest

func (*PrivilegedAccessGroupAssignmentScheduleClient) RequestsCreate added in v0.67.0

Create creates a new PrivilegedAccessGroupAssignmentScheduleRequest.

func (*PrivilegedAccessGroupAssignmentScheduleClient) RequestsGet added in v0.67.0

Get retrieves a PrivilegedAccessGroupAssignmentScheduleRequest

func (*PrivilegedAccessGroupAssignmentScheduleClient) RequestsList added in v0.67.0

List retrieves a list of PrivilegedAccessGroupAssignmentScheduleRequests

type PrivilegedAccessGroupAssignmentScheduleInstance added in v0.67.0

type PrivilegedAccessGroupAssignmentScheduleInstance struct {
	ID                   *string                             `json:"id,omitempty"`
	AccessId             PrivilegedAccessGroupRelationship   `json:"accessId,omitempty"`
	AssignmentScheduleId *string                             `json:"assignmentScheduleId,omitempty"`
	AssignmentType       PrivilegedAccessGroupAssignmentType `json:"assignmentType,omitempty"`
	EndDateTime          *time.Time                          `json:"createdDateTime,omitempty"`
	GroupId              *string                             `json:"groupId,omitempty"`
	MemberType           PrivilegedAccessGroupMemberType     `json:"memberType,omitempty"`
	PrincipalId          *string                             `json:"principalId,omitempty"`
	StartDateTime        *time.Time                          `json:"startDateTime,omitempty"`
}

type PrivilegedAccessGroupAssignmentScheduleInstancesClient added in v0.67.0

type PrivilegedAccessGroupAssignmentScheduleInstancesClient struct {
	BaseClient Client
}

func NewPrivilegedAccessGroupAssignmentScheduleInstancesClient added in v0.67.0

func NewPrivilegedAccessGroupAssignmentScheduleInstancesClient() *PrivilegedAccessGroupAssignmentScheduleInstancesClient

func (*PrivilegedAccessGroupAssignmentScheduleInstancesClient) Get added in v0.67.0

Get retrieves a PrivilegedAccessGroupAssignmentScheduleInstance

func (*PrivilegedAccessGroupAssignmentScheduleInstancesClient) List added in v0.67.0

List retrieves a list of PrivilegedAccessGroupAssignmentScheduleInstances

type PrivilegedAccessGroupAssignmentScheduleRequest added in v0.67.0

type PrivilegedAccessGroupAssignmentScheduleRequest struct {
	ID                *string                               `json:"id,omitempty"`
	AccessId          PrivilegedAccessGroupRelationship     `json:"accessId,omitempty"`
	Action            PrivilegedAccessGroupAction           `json:"action,omitempty"`
	ApprovalId        *string                               `json:"approvalId,omitempty"`
	CompletedDateTime *time.Time                            `json:"completedDateTime,omitempty"`
	CreatedDateTime   *time.Time                            `json:"createdDateTime,omitempty"`
	CustomData        *string                               `json:"customData,omitempty"`
	GroupId           *string                               `json:"groupId,omitempty"`
	IsValidationOnly  *bool                                 `json:"isValidationOnly,omitempty"`
	Justification     *string                               `json:"justification,omitempty"`
	PrincipalId       *string                               `json:"principalId,omitempty"`
	ScheduleInfo      *RequestSchedule                      `json:"scheduleInfo,omitempty"`
	Status            PrivilegedAccessGroupAssignmentStatus `json:"status,omitempty"`
	TargetScheduleId  *string                               `json:"targetScheduleId,omitempty"`
	TicketInfo        *TicketInfo                           `json:"ticketInfo,omitempty"`
}

type PrivilegedAccessGroupAssignmentScheduleRequestsClient added in v0.67.0

type PrivilegedAccessGroupAssignmentScheduleRequestsClient struct {
	BaseClient Client
}

func NewPrivilegedAccessGroupAssignmentScheduleRequestsClient added in v0.67.0

func NewPrivilegedAccessGroupAssignmentScheduleRequestsClient() *PrivilegedAccessGroupAssignmentScheduleRequestsClient

func (*PrivilegedAccessGroupAssignmentScheduleRequestsClient) Cancel added in v0.67.0

Cancel cancels a PrivilegedAccessGroupAssignmentScheduleRequest

func (*PrivilegedAccessGroupAssignmentScheduleRequestsClient) Create added in v0.67.0

Create creates a new PrivilegedAccessGroupAssignmentScheduleRequest.

func (*PrivilegedAccessGroupAssignmentScheduleRequestsClient) Get added in v0.67.0

Get retrieves a PrivilegedAccessGroupAssignmentScheduleRequest

func (*PrivilegedAccessGroupAssignmentScheduleRequestsClient) List added in v0.67.0

List retrieves a list of PrivilegedAccessGroupAssignmentScheduleRequests

type PrivilegedAccessGroupAssignmentStatus added in v0.67.0

type PrivilegedAccessGroupAssignmentStatus = string
const (
	PrivilegedAccessGroupAssignmentStatusCanceled                 PrivilegedAccessGroupAssignmentStatus = "Canceled"
	PrivilegedAccessGroupAssignmentStatusDenied                   PrivilegedAccessGroupAssignmentStatus = "Denied"
	PrivilegedAccessGroupAssignmentStatusFailed                   PrivilegedAccessGroupAssignmentStatus = "Failed"
	PrivilegedAccessGroupAssignmentStatusGranted                  PrivilegedAccessGroupAssignmentStatus = "Granted"
	PrivilegedAccessGroupAssignmentStatusPendingAdminDecision     PrivilegedAccessGroupAssignmentStatus = "PendingAdminDecision"
	PrivilegedAccessGroupAssignmentStatusPendingApproval          PrivilegedAccessGroupAssignmentStatus = "PendingApproval"
	PrivilegedAccessGroupAssignmentStatusPendingProvisioning      PrivilegedAccessGroupAssignmentStatus = "PendingProvisioning"
	PrivilegedAccessGroupAssignmentStatusPendingScheduledCreation PrivilegedAccessGroupAssignmentStatus = "PendingScheduleCreation"
	PrivilegedAccessGroupAssignmentStatusProvisioned              PrivilegedAccessGroupAssignmentStatus = "Provisioned"
	PrivilegedAccessGroupAssignmentStatusRevoked                  PrivilegedAccessGroupAssignmentStatus = "Revoked"
	PrivilegedAccessGroupAssignmentStatusScheduleCreated          PrivilegedAccessGroupAssignmentStatus = "ScheduleCreated"
)

type PrivilegedAccessGroupAssignmentType added in v0.67.0

type PrivilegedAccessGroupAssignmentType = string
const (
	PrivilegedAccessGroupAssignmentAssigned  PrivilegedAccessGroupAssignmentType = "assigned"
	PrivilegedAccessGroupAssignmentActivated PrivilegedAccessGroupAssignmentType = "activated"
	PrivilegedAccessGroupAssignmentUnknown   PrivilegedAccessGroupAssignmentType = "unknownFutureValue"
)

type PrivilegedAccessGroupEligibilitySchedule added in v0.67.0

type PrivilegedAccessGroupEligibilitySchedule struct {
	ID               *string                                `json:"id,omitempty"`
	AccessId         PrivilegedAccessGroupRelationship      `json:"accessId,omitempty"`
	CreatedDateTime  *time.Time                             `json:"createdDateTime,omitempty"`
	CreatedUsing     *string                                `json:"createdUsing,omitempty"`
	GroupId          *string                                `json:"groupId,omitempty"`
	MemberType       PrivilegedAccessGroupMemberType        `json:"memberType,omitempty"`
	ModifiedDateTime *time.Time                             `json:"modifiedDateTime,omitempty"`
	PrincipalId      *string                                `json:"principalId,omitempty"`
	ScheduleInfo     *RequestSchedule                       `json:"scheduleInfo,omitempty"`
	Status           PrivilegedAccessGroupEligibilityStatus `json:"status,omitempty"`
}

type PrivilegedAccessGroupEligibilityScheduleClient added in v0.67.0

type PrivilegedAccessGroupEligibilityScheduleClient struct {
	BaseClient Client
}

func NewPrivilegedAccessGroupEligibilityScheduleClient added in v0.67.0

func NewPrivilegedAccessGroupEligibilityScheduleClient() *PrivilegedAccessGroupEligibilityScheduleClient

func (*PrivilegedAccessGroupEligibilityScheduleClient) Get added in v0.67.0

Get retrieves a PrivilegedAccessGroupEligibility

func (*PrivilegedAccessGroupEligibilityScheduleClient) List added in v0.67.0

List retrieves a list of PrivilegedAccessGroupEligibilities

type PrivilegedAccessGroupEligibilityScheduleInstance added in v0.67.0

type PrivilegedAccessGroupEligibilityScheduleInstance struct {
	ID                    *string                           `json:"id,omitempty"`
	AccessId              PrivilegedAccessGroupRelationship `json:"accessId,omitempty"`
	EligibilityScheduleId *string                           `json:"eligibilityScheduleId,omitempty"`
	EndDateTime           *time.Time                        `json:"createdDateTime,omitempty"`
	GroupId               *string                           `json:"groupId,omitempty"`
	MemberType            PrivilegedAccessGroupMemberType   `json:"memberType,omitempty"`
	PrincipalId           *string                           `json:"principalId,omitempty"`
	StartDateTime         *time.Time                        `json:"startDateTime,omitempty"`
}

type PrivilegedAccessGroupEligibilityScheduleInstancesClient added in v0.67.0

type PrivilegedAccessGroupEligibilityScheduleInstancesClient struct {
	BaseClient Client
}

func NewPrivilegedAccessGroupEligibilityScheduleInstancesClient added in v0.67.0

func NewPrivilegedAccessGroupEligibilityScheduleInstancesClient() *PrivilegedAccessGroupEligibilityScheduleInstancesClient

func (*PrivilegedAccessGroupEligibilityScheduleInstancesClient) Get added in v0.67.0

Get retrieves a PrivilegedAccessGroupEligibilityScheduleInstance

func (*PrivilegedAccessGroupEligibilityScheduleInstancesClient) List added in v0.67.0

List retrieves a list of PrivilegedAccessGroupEligibilityScheduleInstances

type PrivilegedAccessGroupEligibilityScheduleRequest added in v0.67.0

type PrivilegedAccessGroupEligibilityScheduleRequest struct {
	ID                *string                                `json:"id,omitempty"`
	AccessId          PrivilegedAccessGroupRelationship      `json:"accessId,omitempty"`
	Action            PrivilegedAccessGroupAction            `json:"action,omitempty"`
	ApprovalId        *string                                `json:"approvalId,omitempty"`
	CompletedDateTime *time.Time                             `json:"completedDateTime,omitempty"`
	CreatedDateTime   *time.Time                             `json:"createdDateTime,omitempty"`
	CustomData        *string                                `json:"customData,omitempty"`
	GroupId           *string                                `json:"groupId,omitempty"`
	IsValidationOnly  *bool                                  `json:"isValidationOnly,omitempty"`
	Justification     *string                                `json:"justification,omitempty"`
	PrincipalId       *string                                `json:"principalId,omitempty"`
	ScheduleInfo      *RequestSchedule                       `json:"scheduleInfo,omitempty"`
	Status            PrivilegedAccessGroupEligibilityStatus `json:"status,omitempty"`
	TargetScheduleId  *string                                `json:"targetScheduleId,omitempty"`
	TicketInfo        *TicketInfo                            `json:"ticketInfo,omitempty"`
}

type PrivilegedAccessGroupEligibilityScheduleRequestsClient added in v0.67.0

type PrivilegedAccessGroupEligibilityScheduleRequestsClient struct {
	BaseClient Client
}

func NewPrivilegedAccessGroupEligibilityScheduleRequestsClient added in v0.67.0

func NewPrivilegedAccessGroupEligibilityScheduleRequestsClient() *PrivilegedAccessGroupEligibilityScheduleRequestsClient

func (*PrivilegedAccessGroupEligibilityScheduleRequestsClient) Cancel added in v0.67.0

Cancel cancels a PrivilegedAccessGroupEligibilityScheduleRequest

func (*PrivilegedAccessGroupEligibilityScheduleRequestsClient) Create added in v0.67.0

Create creates a new PrivilegedAccessGroupEligibilityScheduleRequest.

func (*PrivilegedAccessGroupEligibilityScheduleRequestsClient) Get added in v0.67.0

Get retrieves a PrivilegedAccessGroupEligibilityScheduleRequest

func (*PrivilegedAccessGroupEligibilityScheduleRequestsClient) List added in v0.67.0

List retrieves a list of PrivilegedAccessGroupEligibilityScheduleRequests

type PrivilegedAccessGroupEligibilityStatus added in v0.67.0

type PrivilegedAccessGroupEligibilityStatus = string
const (
	PrivilegedAccessGroupEligibilityStatusCanceled                 PrivilegedAccessGroupEligibilityStatus = "Canceled"
	PrivilegedAccessGroupEligibilityStatusDenied                   PrivilegedAccessGroupEligibilityStatus = "Denied"
	PrivilegedAccessGroupEligibilityStatusFailed                   PrivilegedAccessGroupEligibilityStatus = "Failed"
	PrivilegedAccessGroupEligibilityStatusGranted                  PrivilegedAccessGroupEligibilityStatus = "Granted"
	PrivilegedAccessGroupEligibilityStatusPendingAdminDecision     PrivilegedAccessGroupEligibilityStatus = "PendingAdminDecision"
	PrivilegedAccessGroupEligibilityStatusPendingApproval          PrivilegedAccessGroupEligibilityStatus = "PendingApproval"
	PrivilegedAccessGroupEligibilityStatusPendingProvisioning      PrivilegedAccessGroupEligibilityStatus = "PendingProvisioning"
	PrivilegedAccessGroupEligibilityStatusPendingScheduledCreation PrivilegedAccessGroupEligibilityStatus = "PendingScheduleCreation"
	PrivilegedAccessGroupEligibilityStatusProvisioned              PrivilegedAccessGroupEligibilityStatus = "Provisioned"
	PrivilegedAccessGroupEligibilityStatusRevoked                  PrivilegedAccessGroupEligibilityStatus = "Revoked"
	PrivilegedAccessGroupEligibilityStatusScheduleCreated          PrivilegedAccessGroupEligibilityStatus = "ScheduleCreated"
)

type PrivilegedAccessGroupMemberType added in v0.67.0

type PrivilegedAccessGroupMemberType = string
const (
	PrivilegedAccessGroupMemberDirect  PrivilegedAccessGroupMemberType = "direct"
	PrivilegedAccessGroupMemberGroup   PrivilegedAccessGroupMemberType = "group"
	PrivilegedAccessGroupMemberUnknown PrivilegedAccessGroupMemberType = "unknownFutureValue"
)

type PrivilegedAccessGroupRelationship added in v0.67.0

type PrivilegedAccessGroupRelationship = string
const (
	PrivilegedAccessGroupRelationshipOwner   PrivilegedAccessGroupRelationship = "owner"
	PrivilegedAccessGroupRelationshipMember  PrivilegedAccessGroupRelationship = "member"
	PrivilegedAccessGroupRelationshipUnknown PrivilegedAccessGroupRelationship = "unknownFutureValue"
)

type PublicClient

type PublicClient struct {
	RedirectUris *[]string `json:"redirectUris,omitempty"`
}

type PutHttpRequestInput

type PutHttpRequestInput struct {
	ConsistencyFailureFunc ConsistencyFailureFunc
	ContentType            string
	Body                   []byte
	OData                  odata.Query
	ValidStatusCodes       []int
	ValidStatusFunc        ValidStatusFunc
	Uri                    Uri
}

PutHttpRequestInput configures a PUT request.

func (PutHttpRequestInput) GetConsistencyFailureFunc added in v0.16.0

func (i PutHttpRequestInput) GetConsistencyFailureFunc() ConsistencyFailureFunc

GetConsistencyFailureFunc returns a function used to evaluate whether a failed request is due to eventual consistency and should be retried.

func (PutHttpRequestInput) GetContentType added in v0.29.0

func (i PutHttpRequestInput) GetContentType() string

GetContentType returns the content type for the request, defaults to application/json

func (PutHttpRequestInput) GetOData added in v0.32.0

func (i PutHttpRequestInput) GetOData() odata.Query

GetOData returns the OData request metadata

func (PutHttpRequestInput) GetValidStatusCodes

func (i PutHttpRequestInput) GetValidStatusCodes() []int

GetValidStatusCodes returns a []int of status codes considered valid for a PUT request.

func (PutHttpRequestInput) GetValidStatusFunc

func (i PutHttpRequestInput) GetValidStatusFunc() ValidStatusFunc

GetValidStatusFunc returns a function used to evaluate whether the response to a PUT request is considered valid.

type Recipient

type Recipient struct {
	EmailAddress *EmailAddress `json:"emailAddress,omitempty"`
}

type RecurrencePattern added in v0.56.0

type RecurrencePattern struct {
	DayOfMonth     *int                   `json:"dayOfMonth,omitempty"`
	Interval       *int                   `json:"interval,omitempty"`
	Month          *int                   `json:"month,omitempty"`
	Type           *RecurrencePatternType `json:"type,omitempty"`
	DaysOfWeek     *[]DaysOfWeekType      `json:"daysOfWeek,omitempty"`
	FirstDayOfWeek *FirstDayOfWeek        `json:"firstDayOfWeek,omitempty"`
	Index          *IndexType             `json:"index,omitempty"`
}

type RecurrencePatternType added in v0.56.0

type RecurrencePatternType = string
const (
	RecurrencePatternTypeDaily           RecurrencePatternType = "daily"
	RecurrencePatternTypeWeekly          RecurrencePatternType = "weekly"
	RecurrencePatternTypeAbsoluteMonthly RecurrencePatternType = "absoluteMonthly"
	RecurrencePatternTypeRelativeMonthly RecurrencePatternType = "relativeMonthly"
	RecurrencePatternTypeAbsoluteYearly  RecurrencePatternType = "absoluteYearly"
	RecurrencePatternTypeRelativeYearly  RecurrencePatternType = "relativeYearly"
)

type Ref added in v0.51.0

type Ref struct {
	ObjectUri *string `json:"@odata.id,omitempty"`
}

type RegistrationAuthMethod added in v0.24.0

type RegistrationAuthMethod = string
const (
	RegistrationAuthMethodEmail                RegistrationAuthMethod = "email"
	RegistrationAuthMethodMobilePhone          RegistrationAuthMethod = "mobilePhone"
	RegistrationAuthMethodOfficePhone          RegistrationAuthMethod = "officePhone"
	RegistrationAuthMethodSecurityQuestion     RegistrationAuthMethod = "securityQuestion"
	RegistrationAuthMethodAppNotification      RegistrationAuthMethod = "appNotification"
	RegistrationAuthMethodAppCode              RegistrationAuthMethod = "appCode"
	RegistrationAuthMethodAlternateMobilePhone RegistrationAuthMethod = "alternateMobilePhone"
	RegistrationAuthMethodFido                 RegistrationAuthMethod = "fido"
	RegistrationAuthMethodAppPassword          RegistrationAuthMethod = "appPassword"
	RegistrationAuthMethodUnknownFutureValue   RegistrationAuthMethod = "unknownFutureValue"
)

type RegistrationStatus added in v0.24.0

type RegistrationStatus = string
const (
	RegistrationStatusRegistered    RegistrationStatus = "registered"
	RegistrationStatusEnabled       RegistrationStatus = "enabled"
	RegistrationStatusCapable       RegistrationStatus = "capable"
	RegistrationStatusMfaRegistered RegistrationStatus = "mfaRegistered"
)

type ReportsClient added in v0.24.0

type ReportsClient struct {
	BaseClient Client
}

ReportsClient Client performs operations on reports.

func NewReportsClient added in v0.24.0

func NewReportsClient() *ReportsClient

NewReportsClient returns a new ReportsClient.

func (*ReportsClient) GetAuthenticationMethodsUsersRegisteredByFeature added in v0.24.0

func (c *ReportsClient) GetAuthenticationMethodsUsersRegisteredByFeature(ctx context.Context, query odata.Query) (*UserRegistrationFeatureSummary, int, error)

func (*ReportsClient) GetAuthenticationMethodsUsersRegisteredByMethod added in v0.24.0

func (c *ReportsClient) GetAuthenticationMethodsUsersRegisteredByMethod(ctx context.Context, query odata.Query) (*UserRegistrationMethodSummary, int, error)

func (*ReportsClient) GetCredentialUsageSummary added in v0.24.0

func (c *ReportsClient) GetCredentialUsageSummary(ctx context.Context, period CredentialUsageSummaryPeriod, query odata.Query) (*[]CredentialUsageSummary, int, error)

func (*ReportsClient) GetCredentialUserRegistrationCount added in v0.24.0

func (c *ReportsClient) GetCredentialUserRegistrationCount(ctx context.Context, query odata.Query) (*[]CredentialUserRegistrationCount, int, error)

func (*ReportsClient) GetCredentialUserRegistrationDetails added in v0.24.0

func (c *ReportsClient) GetCredentialUserRegistrationDetails(ctx context.Context, query odata.Query) (*[]CredentialUserRegistrationDetails, int, error)

func (*ReportsClient) GetUserCredentialUsageDetails added in v0.24.0

func (c *ReportsClient) GetUserCredentialUsageDetails(ctx context.Context, query odata.Query) (*[]UserCredentialUsageDetails, int, error)

type RequestMiddleware added in v0.23.0

type RequestMiddleware func(*http.Request) (*http.Request, error)

RequestMiddleware can manipulate or log a request before it is sent

type RequestSchedule added in v0.62.0

type RequestSchedule struct {
	StartDateTime *time.Time         `json:"startDateTime,omitempty"`
	Expiration    *ExpirationPattern `json:"expiration,omitempty"`
}

type RequestorSettings added in v0.31.0

type RequestorSettings struct {
	ScopeType         RequestorSettingsScopeType `json:"scopeType,omitempty"`
	AcceptRequests    *bool                      `json:"acceptRequests,omitempty"`
	AllowedRequestors *[]UserSet                 `json:"allowedRequestors,omitempty"`
}

type RequestorSettingsScopeType added in v0.31.0

type RequestorSettingsScopeType = string
const (
	RequestorSettingsScopeTypeAllConfiguredConnectedOrganizationSubjects RequestorSettingsScopeType = "AllConfiguredConnectedOrganizationSubjects"
	RequestorSettingsScopeTypeAllExistingConnectedOrganizationSubjects   RequestorSettingsScopeType = "AllExistingConnectedOrganizationSubjects"
	RequestorSettingsScopeTypeAllExistingDirectoryMemberUsers            RequestorSettingsScopeType = "AllExistingDirectoryMemberUsers"
	RequestorSettingsScopeTypeAllExistingDirectorySubjects               RequestorSettingsScopeType = "AllExistingDirectorySubjects"
	RequestorSettingsScopeTypeAllExternalSubjects                        RequestorSettingsScopeType = "AllExternalSubjects"
	RequestorSettingsScopeTypeNoSubjects                                 RequestorSettingsScopeType = "NoSubjects"
	RequestorSettingsScopeTypeSpecificConnectedOrganizationSubjects      RequestorSettingsScopeType = "SpecificConnectedOrganizationSubjects"
	RequestorSettingsScopeTypeSpecificDirectorySubjects                  RequestorSettingsScopeType = "SpecificDirectorySubjects"
)

type RequiredResourceAccess

type RequiredResourceAccess struct {
	ResourceAccess *[]ResourceAccess `json:"resourceAccess,omitempty"`
	ResourceAppId  *string           `json:"resourceAppId,omitempty"`
}

type ResourceAccess

type ResourceAccess struct {
	ID   *string            `json:"id,omitempty"`
	Type ResourceAccessType `json:"type,omitempty"`
}

type ResourceAccessType added in v0.12.0

type ResourceAccessType = string
const (
	ResourceAccessTypeRole  ResourceAccessType = "Role"
	ResourceAccessTypeScope ResourceAccessType = "Scope"
)

type ResponseMiddleware added in v0.23.0

type ResponseMiddleware func(*http.Request, *http.Response) (*http.Response, error)

ResponseMiddleware can manipulate or log a response before it is parsed and returned

type RoleAssignmentsClient added in v0.40.0

type RoleAssignmentsClient struct {
	BaseClient Client
}

RoleAssignmentsClient performs operations on RoleAssignments.

func NewRoleAssignmentsClient added in v0.40.0

func NewRoleAssignmentsClient() *RoleAssignmentsClient

NewRoleAssignmentsClient returns a new RoleAssignmentsClient

func (*RoleAssignmentsClient) Create added in v0.40.0

Create creates a new UnifiedRoleAssignment.

func (*RoleAssignmentsClient) Delete added in v0.40.0

func (c *RoleAssignmentsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a UnifiedRoleAssignment.

func (*RoleAssignmentsClient) Get added in v0.40.0

Get retrieves a UnifiedRoleAssignment

func (*RoleAssignmentsClient) List added in v0.40.0

List returns a list of RoleAssignments

type RoleDefinitionsClient added in v0.40.0

type RoleDefinitionsClient struct {
	BaseClient Client
}

RoleDefinitionsClient performs operations on RoleDefinitions.

func NewRoleDefinitionsClient added in v0.40.0

func NewRoleDefinitionsClient() *RoleDefinitionsClient

NewRoleDefinitionsClient returns a new RoleDefinitionsClient

func (*RoleDefinitionsClient) Create added in v0.40.0

Create creates a new UnifiedRoleDefinition.

func (*RoleDefinitionsClient) Delete added in v0.40.0

func (c *RoleDefinitionsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a UnifiedRoleDefinition.

func (*RoleDefinitionsClient) Get added in v0.40.0

Get retrieves a UnifiedRoleDefinition

func (*RoleDefinitionsClient) List added in v0.40.0

List returns a list of RoleDefinitions

func (*RoleDefinitionsClient) Update added in v0.40.0

func (c *RoleDefinitionsClient) Update(ctx context.Context, roleDefinition UnifiedRoleDefinition) (int, error)

Update amends an existing UnifiedRoleDefinition.

type RoleEligibilityScheduleRequestClient added in v0.62.0

type RoleEligibilityScheduleRequestClient struct {
	BaseClient Client
}

RoleEligibilityScheduleRequestClient performs operations on RoleEligibilityScheduleRequests.

func NewRoleEligibilityScheduleRequestClient added in v0.62.0

func NewRoleEligibilityScheduleRequestClient() *RoleEligibilityScheduleRequestClient

NewRoleEligibilityScheduleRequest returns a new RoleEligibilityScheduleRequestClient

func (*RoleEligibilityScheduleRequestClient) Cancel added in v0.62.0

Cancel revokes a granted UnifiedRoleEligibilityScheduleRequest

func (*RoleEligibilityScheduleRequestClient) Create added in v0.62.0

Create creates a new UnifiedRoleEligibilityScheduleRequest.

func (*RoleEligibilityScheduleRequestClient) Get added in v0.62.0

Get retrieves a UnifiedRoleEligibilityScheduleRequest

func (*RoleEligibilityScheduleRequestClient) List added in v0.62.0

List retrieves all UnifiedRoleEligibilityScheduleRequests.

type RoleManagementPolicyAssignmentClient added in v0.67.0

type RoleManagementPolicyAssignmentClient struct {
	BaseClient Client
}

func NewRoleManagementPolicyAssignmentClient added in v0.67.0

func NewRoleManagementPolicyAssignmentClient() *RoleManagementPolicyAssignmentClient

func (*RoleManagementPolicyAssignmentClient) Get added in v0.67.0

Get retrieves a UnifiedRoleManagementPolicy

func (*RoleManagementPolicyAssignmentClient) List added in v0.67.0

List retrieves a list of Role Management Policies

type RoleManagementPolicyClient added in v0.67.0

type RoleManagementPolicyClient struct {
	BaseClient Client
}

func NewRoleManagementPolicyClient added in v0.67.0

func NewRoleManagementPolicyClient() *RoleManagementPolicyClient

func (*RoleManagementPolicyClient) Get added in v0.67.0

Get retrieves a UnifiedRoleManagementPolicy

func (*RoleManagementPolicyClient) List added in v0.67.0

List retrieves a list of Role Management Policies

func (*RoleManagementPolicyClient) Update added in v0.67.0

Update amends an existing UnifiedRoleManagementPolicy.

type RoleManagementPolicyRuleClient added in v0.67.0

type RoleManagementPolicyRuleClient struct {
	BaseClient Client
}

func NewRoleManagementPolicyRuleClient added in v0.67.0

func NewRoleManagementPolicyRuleClient() *RoleManagementPolicyRuleClient

func (*RoleManagementPolicyRuleClient) Get added in v0.67.0

Get retrieves a UnifiedRoleManagementPolicyRule

func (*RoleManagementPolicyRuleClient) List added in v0.67.0

List retrieves a list of Rules from a Role Management Policy

func (*RoleManagementPolicyRuleClient) Update added in v0.67.0

Update amends an existing UnifiedRoleManagementPolicyRule.

type SamlSingleSignOnSettings

type SamlSingleSignOnSettings struct {
	RelayState *string `json:"relayState,omitempty"`
}

type SchemaExtension added in v0.19.0

type SchemaExtension struct {
	ID          *string                      `json:"id,omitempty"`
	Description *string                      `json:"description,omitempty"`
	Owner       *string                      `json:"owner,omitempty"`
	Properties  *[]ExtensionSchemaProperty   `json:"properties,omitempty"`
	TargetTypes *[]ExtensionSchemaTargetType `json:"targetTypes,omitempty"`
	Status      SchemaExtensionStatus        `json:"status,omitempty"`
}

type SchemaExtensionData added in v0.23.0

type SchemaExtensionData struct {
	ID         string
	Properties SchemaExtensionProperties
}

func (SchemaExtensionData) MarshalJSON added in v0.23.0

func (se SchemaExtensionData) MarshalJSON() ([]byte, error)

type SchemaExtensionMap added in v0.23.0

type SchemaExtensionMap map[string]interface{}

func (*SchemaExtensionMap) UnmarshalJSON added in v0.23.0

func (m *SchemaExtensionMap) UnmarshalJSON(data []byte) error

type SchemaExtensionProperties added in v0.23.0

type SchemaExtensionProperties interface {
	UnmarshalJSON([]byte) error
}

type SchemaExtensionStatus added in v0.23.0

type SchemaExtensionStatus = string
const (
	SchemaExtensionStatusInDevelopment SchemaExtensionStatus = "InDevelopment"
	SchemaExtensionStatusAvailable     SchemaExtensionStatus = "Available"
	SchemaExtensionStatusDeprecated    SchemaExtensionStatus = "Deprecated"
)

type SchemaExtensionsClient added in v0.19.0

type SchemaExtensionsClient struct {
	BaseClient Client
}

SchemaExtensionsClient performs operations on Schema Extensions.

func NewSchemaExtensionsClient added in v0.19.0

func NewSchemaExtensionsClient() *SchemaExtensionsClient

NewSchemaExtensionsClient returns a new SchemaExtensionsClient.

func (*SchemaExtensionsClient) Create added in v0.19.0

func (c *SchemaExtensionsClient) Create(ctx context.Context, schemaExtension SchemaExtension) (*SchemaExtension, int, error)

Create creates a new Schema Extension

func (*SchemaExtensionsClient) Delete added in v0.19.0

func (c *SchemaExtensionsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a schema extension.

func (*SchemaExtensionsClient) Get added in v0.19.0

Get retrieves a Schema Extension.

func (*SchemaExtensionsClient) List added in v0.19.0

List returns a list of Schema Extensions, optionally filtered using OData.

func (*SchemaExtensionsClient) Update added in v0.19.0

func (c *SchemaExtensionsClient) Update(ctx context.Context, schemaExtension SchemaExtension) (int, error)

Update amends an existing schema Extension.

type ScopedRoleMembership added in v0.36.0

type ScopedRoleMembership struct {
	AdministrativeUnitId *string   `json:"administrativeUnitId,omitempty"`
	Id                   *string   `json:"id,omitempty"`
	RoleId               *string   `json:"roleId,omitempty"`
	RoleMemberInfo       *Identity `json:"roleMemberInfo"`
}

type ServicePrincipal

type ServicePrincipal struct {
	DirectoryObject
	Owners                              *Owners                       `json:"owners@odata.bind,omitempty"`
	ClaimsMappingPolicies               *[]ClaimsMappingPolicy        `json:"claimsmappingpolicies@odata.bind,omitempty"`
	AccountEnabled                      *bool                         `json:"accountEnabled,omitempty"`
	AddIns                              *[]AddIn                      `json:"addIns,omitempty"`
	AlternativeNames                    *[]string                     `json:"alternativeNames,omitempty"`
	AppDisplayName                      *string                       `json:"appDisplayName,omitempty"`
	AppId                               *string                       `json:"appId,omitempty"`
	ApplicationTemplateId               *string                       `json:"applicationTemplateId,omitempty"`
	AppMetadata                         *ServicePrincipalAppMetadata  `json:"appMetadata,omitempty"`
	AppOwnerOrganizationId              *string                       `json:"appOwnerOrganizationId,omitempty"`
	AppRoleAssignmentRequired           *bool                         `json:"appRoleAssignmentRequired,omitempty"`
	AppRoles                            *[]AppRole                    `json:"appRoles,omitempty"`
	DeletedDateTime                     *time.Time                    `json:"deletedDateTime,omitempty"`
	Description                         *StringNullWhenEmpty          `json:"description,omitempty"`
	DisplayName                         *string                       `json:"displayName,omitempty"`
	Homepage                            *string                       `json:"homepage,omitempty"`
	Info                                *InformationalUrl             `json:"info,omitempty"`
	KeyCredentials                      *[]KeyCredential              `json:"keyCredentials,omitempty"`
	LoginUrl                            *StringNullWhenEmpty          `json:"loginUrl,omitempty"`
	LogoutUrl                           *string                       `json:"logoutUrl,omitempty"`
	Notes                               *StringNullWhenEmpty          `json:"notes,omitempty"`
	NotificationEmailAddresses          *[]string                     `json:"notificationEmailAddresses,omitempty"`
	OAuth2PermissionScopes              *[]PermissionScope            `json:"oauth2PermissionScopes,omitempty"`
	PasswordCredentials                 *[]PasswordCredential         `json:"passwordCredentials,omitempty"`
	PasswordSingleSignOnSettings        *PasswordSingleSignOnSettings `json:"passwordSingleSignOnSettings,omitempty"`
	PreferredSingleSignOnMode           *PreferredSingleSignOnMode    `json:"preferredSingleSignOnMode,omitempty"`
	PreferredTokenSigningKeyThumbprint  *StringNullWhenEmpty          `json:"preferredTokenSigningKeyThumbprint,omitempty"`
	PreferredTokenSigningKeyEndDateTime *time.Time                    `json:"preferredTokenSigningKeyEndDateTime,omitempty"`
	PublishedPermissionScopes           *[]PermissionScope            `json:"publishedPermissionScopes,omitempty"`
	ReplyUrls                           *[]string                     `json:"replyUrls,omitempty"`
	SamlMetadataUrl                     *StringNullWhenEmpty          `json:"samlMetadataUrl,omitempty"`
	SamlSingleSignOnSettings            *SamlSingleSignOnSettings     `json:"samlSingleSignOnSettings,omitempty"`
	ServicePrincipalNames               *[]string                     `json:"servicePrincipalNames,omitempty"`
	ServicePrincipalType                *string                       `json:"servicePrincipalType,omitempty"`
	SignInAudience                      *SignInAudience               `json:"signInAudience,omitempty"`
	Tags                                *[]string                     `json:"tags,omitempty"`
	TokenEncryptionKeyId                *string                       `json:"tokenEncryptionKeyId,omitempty"`
	TokenIssuancePolicies               *[]TokenIssuancePolicy        `json:"tokenIssuancePolicies@odata.bind,omitempty"`
	VerifiedPublisher                   *VerifiedPublisher            `json:"verifiedPublisher,omitempty"`
}

ServicePrincipal describes a Service Principal object.

func (*ServicePrincipal) UnmarshalJSON added in v0.24.0

func (s *ServicePrincipal) UnmarshalJSON(data []byte) error

type ServicePrincipalAppMetadata added in v0.64.0

type ServicePrincipalAppMetadata struct {
	Version *int              `json:"version,omitempty"`
	Data    *[]KeyValueObject `json:"data,omitempty"`
}

type ServicePrincipalsClient

type ServicePrincipalsClient struct {
	BaseClient Client
}

ServicePrincipalsClient performs operations on Service Principals.

func NewServicePrincipalsClient

func NewServicePrincipalsClient() *ServicePrincipalsClient

NewServicePrincipalsClient returns a new ServicePrincipalsClient.

func (*ServicePrincipalsClient) AddOwners

func (c *ServicePrincipalsClient) AddOwners(ctx context.Context, servicePrincipal *ServicePrincipal) (int, error)

AddOwners adds owners to a Service Principal. First populate the `owners` field, then call this method

func (*ServicePrincipalsClient) AddPassword added in v0.13.0

func (c *ServicePrincipalsClient) AddPassword(ctx context.Context, servicePrincipalId string, passwordCredential PasswordCredential) (*PasswordCredential, int, error)

AddPassword appends a new password credential to a Service Principal.

func (*ServicePrincipalsClient) AddTokenSigningCertificate added in v0.44.0

func (c *ServicePrincipalsClient) AddTokenSigningCertificate(ctx context.Context, servicePrincipalId string, keyCredential KeyCredential) (*KeyCredential, int, error)

AddTokenSigningCertificate appends a new self signed certificate (keys and password) to a Service Principal.

func (*ServicePrincipalsClient) AssignAppRoleForResource added in v0.14.0

func (c *ServicePrincipalsClient) AssignAppRoleForResource(ctx context.Context, principalId, resourceId, appRoleId string) (*AppRoleAssignment, int, error)

AssignAppRoleForResource assigns an app role for a resource service principal, to a user, group, or client service principal. To grant an app role assignment, you need three identifiers:

principalId: The id of the user, group or client servicePrincipal to which you are assigning the app role. resourceId: The id of the resource servicePrincipal which has defined the app role. appRoleId: The id of the appRole (defined on the resource service principal) to assign to a user, group, or service principal.

func (*ServicePrincipalsClient) AssignClaimsMappingPolicy added in v0.42.0

func (c *ServicePrincipalsClient) AssignClaimsMappingPolicy(ctx context.Context, servicePrincipal *ServicePrincipal) (int, error)

AssignClaimsMappingPolicy assigns a claimsMappingPolicy to a servicePrincipal

func (*ServicePrincipalsClient) AssignTokenIssuancePolicy added in v0.60.0

func (c *ServicePrincipalsClient) AssignTokenIssuancePolicy(ctx context.Context, servicePrincipalId string, policies *[]TokenIssuancePolicy) (int, error)

AssignTokenIssuancePolicy assigns tokenIssuancePolicies to a service principal

func (*ServicePrincipalsClient) Create

func (c *ServicePrincipalsClient) Create(ctx context.Context, servicePrincipal ServicePrincipal) (*ServicePrincipal, int, error)

Create creates a new Service Principal.

func (*ServicePrincipalsClient) Delete

func (c *ServicePrincipalsClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a Service Principal.

func (*ServicePrincipalsClient) Get

Get retrieves a Service Principal.

func (*ServicePrincipalsClient) GetOwner

func (c *ServicePrincipalsClient) GetOwner(ctx context.Context, servicePrincipalId, ownerId string) (*string, int, error)

GetOwner retrieves a single owner for the specified Service Principal. servicePrincipalId is the object ID of the service principal. ownerId is the object ID of the owning object.

func (*ServicePrincipalsClient) List

List returns a list of Service Principals, optionally queried using OData.

func (*ServicePrincipalsClient) ListAppRoleAssignments added in v0.14.0

func (c *ServicePrincipalsClient) ListAppRoleAssignments(ctx context.Context, resourceId string, query odata.Query) (*[]AppRoleAssignment, int, error)

ListAppRoleAssignments retrieves a list of appRoleAssignment that users, groups, or client service principals have been granted for the given resource service principal.

func (*ServicePrincipalsClient) ListClaimsMappingPolicy added in v0.42.0

func (c *ServicePrincipalsClient) ListClaimsMappingPolicy(ctx context.Context, id string) (*[]ClaimsMappingPolicy, int, error)

ListClaimsMappingPolicy retrieves the claimsMappingPolicies assigned to the specified Service Principal. id is the object ID of the service principal.

func (*ServicePrincipalsClient) ListGroupMemberships

func (c *ServicePrincipalsClient) ListGroupMemberships(ctx context.Context, id string, query odata.Query) (*[]Group, int, error)

ListGroupMemberships returns a list of Groups the Service Principal is member of, optionally queried using OData.

func (*ServicePrincipalsClient) ListOwnedObjects added in v0.13.0

func (c *ServicePrincipalsClient) ListOwnedObjects(ctx context.Context, id string) (*[]string, int, error)

ListOwnedObjects retrieves the owned objects of the specified Service Principal. id is the object ID of the service principal.

func (*ServicePrincipalsClient) ListOwners

func (c *ServicePrincipalsClient) ListOwners(ctx context.Context, id string) (*[]string, int, error)

ListOwners retrieves the owners of the specified Service Principal. id is the object ID of the service principal.

func (*ServicePrincipalsClient) ListTokenIssuancePolicy added in v0.60.0

func (c *ServicePrincipalsClient) ListTokenIssuancePolicy(ctx context.Context, servicePrincipalId string) (*[]TokenIssuancePolicy, int, error)

ListTokenIssuancePolicy retrieves the tokenIssuancePolicies assigned to the specified ServicePrincipal.

func (*ServicePrincipalsClient) RemoveAppRoleAssignment added in v0.14.0

func (c *ServicePrincipalsClient) RemoveAppRoleAssignment(ctx context.Context, resourceId, appRoleAssignmentId string) (int, error)

RemoveAppRoleAssignment deletes an appRoleAssignment that a user, group, or client service principal has been granted for a resource service principal.

func (*ServicePrincipalsClient) RemoveClaimsMappingPolicy added in v0.42.0

func (c *ServicePrincipalsClient) RemoveClaimsMappingPolicy(ctx context.Context, servicePrincipal *ServicePrincipal, policyIds *[]string) (int, error)

RemoveClaimsMappingPolicy removes a claimsMappingPolicy from a servicePrincipal

func (*ServicePrincipalsClient) RemoveOwners

func (c *ServicePrincipalsClient) RemoveOwners(ctx context.Context, servicePrincipalId string, ownerIds *[]string) (int, error)

RemoveOwners removes owners from a Service Principal. servicePrincipalId is the object ID of the service principal. ownerIds is a *[]string containing object IDs of owners to remove.

func (*ServicePrincipalsClient) RemovePassword added in v0.13.0

func (c *ServicePrincipalsClient) RemovePassword(ctx context.Context, servicePrincipalId string, keyId string) (int, error)

RemovePassword removes a password credential from a Service Principal.

func (*ServicePrincipalsClient) RemoveTokenIssuancePolicy added in v0.60.0

func (c *ServicePrincipalsClient) RemoveTokenIssuancePolicy(ctx context.Context, servicePrincipalId string, policyIds *[]string) (int, error)

RemoveTokenIssuancePolicy removes a tokenIssuancePolicy from a service principal

func (*ServicePrincipalsClient) SetPreferredTokenSigningKeyThumbprint added in v0.44.0

func (c *ServicePrincipalsClient) SetPreferredTokenSigningKeyThumbprint(ctx context.Context, servicePrincipalId string, thumbprint string) (int, error)

SetPreferredTokenSigningKeyThumbprint sets the field preferredTokenSigningKeyThumbprint for a Service Principal.

func (*ServicePrincipalsClient) Update

func (c *ServicePrincipalsClient) Update(ctx context.Context, servicePrincipal ServicePrincipal) (int, error)

Update amends an existing Service Principal.

type SignInActivity added in v0.19.0

type SignInActivity struct {
	LastSignInDateTime                *time.Time `json:"lastSignInDateTime,omitempty"`
	LastSignInRequestId               *string    `json:"lastSignInRequestId,omitempty"`
	LastNonInteractiveSignInDateTime  *time.Time `json:"lastNonInteractiveSignInDateTime,omitempty"`
	LastNonInteractiveSignInRequestId *string    `json:"lastNonInteractiveSignInRequestId,omitempty"`
}

type SignInAudience

type SignInAudience = string
const (
	SignInAudienceAzureADMyOrg                       SignInAudience = "AzureADMyOrg"
	SignInAudienceAzureADMultipleOrgs                SignInAudience = "AzureADMultipleOrgs"
	SignInAudienceAzureADandPersonalMicrosoftAccount SignInAudience = "AzureADandPersonalMicrosoftAccount"
	SignInAudiencePersonalMicrosoftAccount           SignInAudience = "PersonalMicrosoftAccount"
)

type SignInFrequencySessionControl added in v0.11.0

type SignInFrequencySessionControl struct {
	AuthenticationType *ConditionalAccessAuthenticationType `json:"authenticationType,omitempty"`
	FrequencyInterval  *ConditionalAccessFrequencyInterval  `json:"frequencyInterval,omitempty"`
	IsEnabled          *bool                                `json:"isEnabled,omitempty"`
	Type               *string                              `json:"type,omitempty"`
	Value              *int32                               `json:"value,omitempty"`
}

type SignInReport added in v0.18.0

type SignInReport struct {
	Id                               *string                           `json:"id,omitempty"`
	CreatedDateTime                  *time.Time                        `json:"createdDateTime,omitempty"`
	UserDisplayName                  *string                           `json:"userDisplayName,omitempty"`
	UserPrincipalName                *string                           `json:"userPrincipalName,omitempty"`
	UserId                           *string                           `json:"userId,omitempty"`
	AppId                            *string                           `json:"appId,omitempty"`
	AppDisplayName                   *string                           `json:"appDisplayName,omitempty"`
	IPAddress                        *string                           `json:"ipAddress,omitempty"`
	ClientAppUsed                    *string                           `json:"clientAppUsed,omitempty"`
	CorrelationId                    *string                           `json:"correlationId,omitempty"`
	ConditionalAccessStatus          *string                           `json:"conditionalAccessStatus,omitempty"`
	IsInteractive                    *bool                             `json:"isInteractive,omitempty"`
	RiskDetail                       *string                           `json:"riskDetail,omitempty"`
	RiskLevelAggregated              *string                           `json:"riskLevelAggregated,omitempty"`
	RiskLevelDuringSignIn            *string                           `json:"riskLevelDuringSignIn,omitempty"`
	RiskState                        *string                           `json:"riskState,omitempty"`
	RiskEventTypes                   *[]string                         `json:"riskEventTypes,omitempty"`
	ResourceDisplayName              *string                           `json:"resourceDisplayName,omitempty"`
	ResourceId                       *string                           `json:"resourceId,omitempty"`
	Status                           *Status                           `json:"status,omitempty"`
	DeviceDetail                     *DeviceDetail                     `json:"deviceDetail,omitempty"`
	Location                         *Location                         `json:"location,omitempty"`
	AppliedConditionalAccessPolicies *[]AppliedConditionalAccessPolicy `json:"appliedConditionalAccessPolicies,omitempty"`
}

type SignInReportsClient added in v0.18.0

type SignInReportsClient struct {
	BaseClient Client
}

SignInReports Client performs operations on Sign in reports.

func NewSignInReportsClient added in v0.35.0

func NewSignInReportsClient() *SignInReportsClient

NewSignInReportsClient returns a new SignInReportsClient.

func (*SignInReportsClient) Get added in v0.18.0

Get retrieves a Sign-in Report.

func (*SignInReportsClient) List added in v0.18.0

func (c *SignInReportsClient) List(ctx context.Context, query odata.Query) (*[]SignInReport, int, error)

List returns a list of Sign-in Reports, optionally queried using OData.

type SingleSignOnField

type SingleSignOnField struct {
	CustomizedLabel *string `json:"customizedLabel,omitempty"`
	DefaultLabel    *string `json:"defaultLabel,omitempty"`
	FieldId         *string `json:"fieldId,omitempty"`
	Type            *string `json:"type,omitempty"`
}

type Status added in v0.18.0

type Status struct {
	ErrorCode         *int32  `json:"errorCode,omitempty"`
	FailureReason     *string `json:"failureReason,omitempty"`
	AdditionalDetails *string `json:"additionalDetails,omitempty"`
}

type StringKeyLongValuePair added in v0.47.0

type StringKeyLongValuePair struct {
	Key   *string `json:"key,omitempty"`
	Value *int64  `json:"value,omitempty"`
}

type StringNullWhenEmpty added in v0.17.0

type StringNullWhenEmpty string

StringNullWhenEmpty is a string type that marshals its JSON representation as null when set to its zero value. Can be used with a pointer reference with the `omitempty` tag to omit a field when the pointer is nil, but send a JSON null value when the string is empty.

func NullableString added in v0.36.0

func NullableString(s StringNullWhenEmpty) *StringNullWhenEmpty

NullableString returns a pointer to a StringNullWhenEmpty for use in model structs

func (StringNullWhenEmpty) MarshalJSON added in v0.17.0

func (s StringNullWhenEmpty) MarshalJSON() ([]byte, error)

type SynchronizationJob added in v0.47.0

type SynchronizationJob struct {
	ID                         *string                       `json:"id,omitempty"`
	Schedule                   *SynchronizationSchedule      `json:"schedule,omitempty"`
	Status                     *SynchronizationStatus        `json:"status,omitempty"`
	SynchronizationJobSettings *[]SynchronizationJobKeyValue `json:"synchronizationJobSettings,omitempty"`
	TemplateId                 *string                       `json:"templateId,omitempty"`
}

type SynchronizationJobApplicationParameters added in v0.47.0

type SynchronizationJobApplicationParameters struct {
	RuleId   *string                      `json:"ruleId,omitempty"`
	Subjects *[]SynchronizationJobSubject `json:"subjects,omitempty"`
}

type SynchronizationJobClient added in v0.47.0

type SynchronizationJobClient struct {
	BaseClient Client
}

SynchronizationJobClient performs operations on SynchronizationJobs.

func NewSynchronizationJobClient added in v0.47.0

func NewSynchronizationJobClient() *SynchronizationJobClient

NewSynchronizationJobClient returns a new SynchronizationJobClient

func (*SynchronizationJobClient) Create added in v0.47.0

func (c *SynchronizationJobClient) Create(ctx context.Context, synchronizationJob SynchronizationJob, servicePrincipalId string) (*SynchronizationJob, int, error)

Creates a SynchronizationJob.

func (*SynchronizationJobClient) Delete added in v0.47.0

func (c *SynchronizationJobClient) Delete(ctx context.Context, id string, servicePrincipalId string) (int, error)

Delete

func (*SynchronizationJobClient) Get added in v0.47.0

func (c *SynchronizationJobClient) Get(ctx context.Context, id string, servicePrincipalId string) (*SynchronizationJob, int, error)

Get retrieves a SynchronizationJob

func (*SynchronizationJobClient) GetSecrets added in v0.47.0

func (c *SynchronizationJobClient) GetSecrets(ctx context.Context, servicePrincipalId string) (*SynchronizationSecret, int, error)

GetSecrets retrieves a SynchronizationSecret

func (*SynchronizationJobClient) List added in v0.47.0

func (c *SynchronizationJobClient) List(ctx context.Context, servicePrincipalId string) (*[]SynchronizationJob, int, error)

List returns a list of SynchronizationJobs

func (*SynchronizationJobClient) Pause added in v0.47.0

func (c *SynchronizationJobClient) Pause(ctx context.Context, id string, servicePrincipalId string) (int, error)

Pause

func (*SynchronizationJobClient) ProvisionOnDemand added in v0.47.0

func (c *SynchronizationJobClient) ProvisionOnDemand(ctx context.Context, id string, synchronizationJobProvisionOnDemand *SynchronizationJobProvisionOnDemand, servicePrincipalId string) (int, error)

Provision on demand

func (*SynchronizationJobClient) Restart added in v0.47.0

func (c *SynchronizationJobClient) Restart(ctx context.Context, id string, synchronizationJobRestartCriteria SynchronizationJobRestartCriteria, servicePrincipalId string) (int, error)

func (*SynchronizationJobClient) SetSecrets added in v0.47.0

func (c *SynchronizationJobClient) SetSecrets(ctx context.Context, synchronizationSecret SynchronizationSecret, servicePrincipalId string) (int, error)

Adds a SynchronizationSecrets.

func (*SynchronizationJobClient) Start added in v0.47.0

func (c *SynchronizationJobClient) Start(ctx context.Context, id string, servicePrincipalId string) (int, error)

Starts a SynchronizationJob.

func (*SynchronizationJobClient) ValidateCredentials added in v0.47.0

func (c *SynchronizationJobClient) ValidateCredentials(ctx context.Context, id string, synchronizationJobValidateCredentials *SynchronizationJobValidateCredentials, servicePrincipalId string) (int, error)

Validate credentials

type SynchronizationJobKeyValue added in v0.47.0

type SynchronizationJobKeyValue struct {
	Name  *string `json:"name,omitempty"`
	Value *string `json:"value,omitempty"`
}

type SynchronizationJobProvisionOnDemand added in v0.47.0

type SynchronizationJobProvisionOnDemand struct {
	Parameters *[]SynchronizationJobApplicationParameters `json:"parameters,omitempty"`
}

type SynchronizationJobRestartCriteria added in v0.47.0

type SynchronizationJobRestartCriteria struct {
	ResetScope *string `json:"resetScope,omitempty"`
}

type SynchronizationJobSubject added in v0.47.0

type SynchronizationJobSubject struct {
	ObjectId       *string `json:"objectId,omitempty"`
	ObjectTypeName *string `json:"objectTypeName,omitempty"`
}

type SynchronizationJobValidateCredentials added in v0.47.0

type SynchronizationJobValidateCredentials struct {
	UseSavedCredentials *bool                                      `json:"useSavedCredentials,omitempty"`
	Credentials         *[]SynchronizationSecretKeyStringValuePair `json:"credentials,omitempty"`
}

type SynchronizationProgress added in v0.47.0

type SynchronizationProgress struct {
	CompletedUnits              *int32     `json:"completedUnits,omitempty"`
	ProgressObservationDateTime *time.Time `json:"progressObservationDateTime,omitempty"`
	TotalUnits                  *int32     `json:"totalUnits,omitempty"`
	Units                       *string    `json:"units,omitempty"`
}

type SynchronizationQuarantine added in v0.47.0

type SynchronizationQuarantine struct {
	CurrentBegan *time.Time `json:"currentBegan,omitempty"`
	NextAttempt  *time.Time `json:"nextAttempt,omitempty"`
	Reason       *string    `json:"reason,omitempty"`
	SeriesBegan  *time.Time `json:"seriesBegan,omitempty"`
	SeriesCount  *int64     `json:"seriesCount,omitempty"`
}

type SynchronizationSchedule added in v0.47.0

type SynchronizationSchedule struct {
	Expiration *time.Time `json:"expiration,omitempty"`
	Interval   *string    `json:"interval,omitempty"`
	State      *string    `json:"state,omitempty"`
}

type SynchronizationSecret added in v0.47.0

type SynchronizationSecret struct {
	Credentials *[]SynchronizationSecretKeyStringValuePair `json:"value,omitempty"`
}

type SynchronizationSecretKeyStringValuePair added in v0.47.0

type SynchronizationSecretKeyStringValuePair struct {
	Key   *string `json:"key,omitempty"`
	Value *string `json:"value,omitempty"`
}

type SynchronizationStatus added in v0.47.0

type SynchronizationStatus struct {
	Code                               *string                       `json:"code,omitempty"`
	CountSuccssiveCompleteFailure      *int64                        `json:"countSuccessiveCompleteFailures,omitempty"`
	EscrowsPruned                      *bool                         `json:"escrowsPruned,omitempty"`
	LastExecution                      *SynchronizationTaskExecution `json:"lastExecution,omitempty"`
	LastSuccessfulExecution            *SynchronizationTaskExecution `json:"lastSuccessfulExecution,omitempty"`
	LastSuccessfulExecutionWithExports *SynchronizationTaskExecution `json:"lastSuccessfulExecutionWithExports,omitempty"`
	Progress                           *[]SynchronizationProgress    `json:"progress,omitempty"`
	Quarantine                         *SynchronizationQuarantine    `json:"quarantine,omitempty"`
	SteadyStateFirstAchievedTime       *time.Time                    `json:"steadyStateFirstAchievedTime,omitempty"`
	SteadyStateLastAchievedTime        *time.Time                    `json:"steadyStateLastAchievedTime,omitempty"`
	SynchronizedEntryCountByType       *[]StringKeyLongValuePair     `json:"synchronizedEntryCountByType,omitempty"`
}

type SynchronizationTaskExecution added in v0.47.0

type SynchronizationTaskExecution struct {
	ActivityIdentifier *string `json:"activityIdentifier,omitempty"`
	CountEntitled      *int64  `json:"countEntitled,omitempty"`
	State              *string `json:"state,omitempty"`
}

type TargetResource added in v0.18.0

type TargetResource struct {
	Id                 *string             `json:"id,omitempty"`
	DisplayName        *string             `json:"displayName,omitempty"`
	Type               *string             `json:"type,omitempty"`
	UserPrincipalName  *string             `json:"userPrincipalName,omitempty"`
	GroupType          *string             `json:"groupType,omitempty"`
	ModifiedProperties *[]ModifiedProperty `json:"modifiedProperties,omitempty"`
}

type TemporaryAccessPassAuthenticationMethod added in v0.25.0

type TemporaryAccessPassAuthenticationMethod struct {
	ID                    *string                `json:"id,omitempty"`
	TemporaryAccessPass   *string                `json:"temporaryAccessPass,omitempty"`
	CreatedDateTime       *time.Time             `json:"createdDateTime,omitempty"`
	StartDateTime         *time.Time             `json:"startDateTime,omitempty"`
	LifetimeInMinutes     *int32                 `json:"lifetimeInMinutes,omitempty"`
	IsUsableOnce          *bool                  `json:"isUsableOnce,omitempty"`
	IsUsable              *bool                  `json:"isUsable,omitempty"`
	MethodUsabilityReason *MethodUsabilityReason `json:"methodUsabilityReason,omitempty"`
}

type TermsOfUseAgreement added in v0.56.0

type TermsOfUseAgreement struct {
	ID                                *string                        `json:"id,omitempty"`
	DisplayName                       *string                        `json:"displayName,omitempty"`
	UserReacceptRequiredFrequency     *string                        `json:"userReacceptRequiredFrequency,omitempty"`
	IsViewingBeforeAcceptanceRequired *bool                          `json:"isViewingBeforeAcceptanceRequired,omitempty"`
	IsPerDeviceAcceptanceRequired     *bool                          `json:"isPerDeviceAcceptanceRequired,omitempty"`
	TermsExpiration                   *TermsOfUseAgreementExpiration `json:"termsExpiration,omitempty"` //For some reason this exports the Frequency both here and above AcceptanceExpirationFrequency Request separates them but response groups them. Anticipate this in Tests
	Files                             *[]TermsOfUseAgreementFile     `json:"files,omitempty"`
	File                              *TermsOfUseAgreementFile       `json:"file,omitempty"`
}

type TermsOfUseAgreementClient added in v0.56.0

type TermsOfUseAgreementClient struct {
	BaseClient Client
}

TermsOfUseAgreementClient performs operations on TermsOfUseAgreement.

func NewTermsOfUseAgreementClient added in v0.56.0

func NewTermsOfUseAgreementClient() *TermsOfUseAgreementClient

NewTermsOfUseAgreementClient returns a new TermsOfUseAgreementClient

func (*TermsOfUseAgreementClient) Create added in v0.56.0

Create creates a new TermsOfUse agreement.

func (*TermsOfUseAgreementClient) Delete added in v0.56.0

func (c *TermsOfUseAgreementClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a TermsOfUseAgreement agreement.

func (*TermsOfUseAgreementClient) Get added in v0.56.0

Get retrieves an TermsOfUseAgreement agreement.

func (*TermsOfUseAgreementClient) List added in v0.56.0

List returns a list of TermsOfUseAgreement agreements, optionally filtered using OData.

func (*TermsOfUseAgreementClient) Update added in v0.56.0

func (c *TermsOfUseAgreementClient) Update(ctx context.Context, termsOfUseAgreement TermsOfUseAgreement) (int, error)

Update amends an existing TermsOfUseAgreement agreement.

type TermsOfUseAgreementExpiration added in v0.56.0

type TermsOfUseAgreementExpiration struct {
	StartDateTime *time.Time `json:"startDateTime,omitempty"`
	Frequency     *string    `json:"frequency,omitempty"`
}

type TermsOfUseAgreementFile added in v0.56.0

type TermsOfUseAgreementFile struct {
	ID             *string                      `json:"id,omitempty"`
	DisplayName    *string                      `json:"displayName,omitempty"`
	FileName       *string                      `json:"fileName,omitempty"`
	Language       *string                      `json:"language,omitempty"`
	IsDefault      *bool                        `json:"isDefault,omitempty"`
	IsMajorVersion *bool                        `json:"isMajorVersion,omitempty"`
	FileData       *TermsOfUseAgreementFileData `json:"fileData,omitempty"`
}

type TermsOfUseAgreementFileData added in v0.56.0

type TermsOfUseAgreementFileData struct {
	//Data is within its own object for some reason
	Data *[]byte `json:"data,omitempty"`
}

type TicketInfo added in v0.62.0

type TicketInfo struct {
	TicketNumber *string `json:"ticketNumber,omitempty"`
	TicketSystem *string `json:"ticketSystem,omitempty"`
}

type TokenIssuancePolicy added in v0.60.0

type TokenIssuancePolicy struct {
	DirectoryObject
	Definition            *[]string `json:"definition,omitempty"`
	Description           *string   `json:"description,omitempty"`
	DisplayName           *string   `json:"displayName,omitempty"`
	IsOrganizationDefault *bool     `json:"isOrganizationDefault,omitempty"`
}

type TokenIssuancePolicyClient added in v0.60.0

type TokenIssuancePolicyClient struct {
	BaseClient Client
}

func NewTokenIssuancePolicyClient added in v0.60.0

func NewTokenIssuancePolicyClient() *TokenIssuancePolicyClient

NewTokenIssuancePolicyClient returns a new TokenIssuancePolicyClient

func (*TokenIssuancePolicyClient) Create added in v0.60.0

Create creates a new TokenIssuancePolicy.

func (*TokenIssuancePolicyClient) Delete added in v0.60.0

func (c *TokenIssuancePolicyClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a TokenIssuancePolicy.

func (*TokenIssuancePolicyClient) Get added in v0.60.0

Get retrieves a TokenIssuancePolicy.

func (*TokenIssuancePolicyClient) List added in v0.60.0

List returns a list of TokenIssuancePolicy, optionally queried using OData.

func (*TokenIssuancePolicyClient) Update added in v0.60.0

func (c *TokenIssuancePolicyClient) Update(ctx context.Context, tokenIssuancePolicy TokenIssuancePolicy) (int, error)

Update amends an existing TokenIssuancePolicy.

type UnifiedRoleAssignment added in v0.40.0

type UnifiedRoleAssignment struct {
	DirectoryObject

	AppScopeId       *string `json:"appScopeId,omitempty"`
	DirectoryScopeId *string `json:"directoryScopeId,omitempty"`
	PrincipalId      *string `json:"principalId,omitempty"`
	RoleDefinitionId *string `json:"roleDefinitionId,omitempty"`
}

type UnifiedRoleDefinition added in v0.40.0

type UnifiedRoleDefinition struct {
	DirectoryObject

	Description     *StringNullWhenEmpty     `json:"description,omitempty"`
	DisplayName     *string                  `json:"displayName,omitempty"`
	IsBuiltIn       *bool                    `json:"isBuiltIn,omitempty"`
	IsEnabled       *bool                    `json:"isEnabled,omitempty"`
	ResourceScopes  *[]string                `json:"resourceScopes,omitempty"`
	RolePermissions *[]UnifiedRolePermission `json:"rolePermissions,omitempty"`
	TemplateId      *string                  `json:"templateId,omitempty"`
	Version         *string                  `json:"version,omitempty"`
}

type UnifiedRoleEligibilityScheduleRequest added in v0.62.0

type UnifiedRoleEligibilityScheduleRequest struct {
	ID                *string                           `json:"id,omitempty"`
	Action            *UnifiedRoleScheduleRequestAction `json:"action,omitempty"`
	AppScopeID        *string                           `json:"appScopeId,omitempty"`
	ApprovalID        *string                           `json:"approvalId,omitempty"`
	CompletedDateTime *time.Time                        `json:"completedDateTime,omitempty"`
	CreatedDateTime   *time.Time                        `json:"createdDateTime,omitempty"`
	DirectoryScopeId  *string                           `json:"directoryScopeId,omitempty"`
	IsValidationOnly  *bool                             `json:"isValidationOnly,omitempty"`
	Justification     *string                           `json:"justification,omitempty"`
	PrincipalId       *string                           `json:"principalId,omitempty"`
	RoleDefinitionId  *string                           `json:"roleDefinitionId,omitempty"`
	ScheduleInfo      *RequestSchedule                  `json:"scheduleInfo,omitempty"`
	Status            *string                           `json:"status,omitempty"`
	TargetScheduleID  *string                           `json:"targetScheduleId,omitempty"`
	TicketInfo        *TicketInfo                       `json:"ticketInfo,omitempty"`
}

type UnifiedRoleManagementPolicy added in v0.67.0

type UnifiedRoleManagementPolicy struct {
	ID                    *string                            `json:"id,omitempty"`
	Description           *string                            `json:"description,omitempty"`
	DisplayName           *string                            `json:"displayName,omitempty"`
	EffectiveRules        *[]UnifiedRoleManagementPolicyRule `json:"effectiveRules,omitempty"`
	IsOrganizationDefault *bool                              `json:"isOrganizationDefault,omitempty"`
	LastModifiedBy        *Identity                          `json:"lastModifiedBy,omitempty"`
	LastModifiedDateTime  *time.Time                         `json:"lastModifiedDateTime,omitempty"`
	Rules                 *[]UnifiedRoleManagementPolicyRule `json:"rules,omitempty"`
	ScopeId               *string                            `json:"scopeId,omitempty"`
	ScopeType             UnifiedRoleManagementPolicyScope   `json:"scopeType,omitempty"`
}

type UnifiedRoleManagementPolicyAssignment added in v0.67.0

type UnifiedRoleManagementPolicyAssignment struct {
	ID               *string                          `json:"id,omitempty"`
	PolicyId         *string                          `json:"policyId,omitempty"`
	RoleDefinitionId *string                          `json:"roleDefinitionId,omitempty"`
	ScopeId          *string                          `json:"scopeId,omitempty"`
	ScopeType        UnifiedRoleManagementPolicyScope `json:"scopeType,omitempty"`
}

type UnifiedRoleManagementPolicyRule added in v0.67.0

type UnifiedRoleManagementPolicyRule struct {
	ID        *string                                `json:"id,omitempty"`
	ODataType *odata.Type                            `json:"@odata.type,omitempty"`
	Target    *UnifiedRoleManagementPolicyRuleTarget `json:"target,omitempty"`

	// unifiedRoleManagementPolicyApprovalRule
	Setting *ApprovalSettings `json:"setting,omitempty"`

	// unifiedRoleManagementPolicyAuthenticationContextRule
	ClaimValue *string `json:"claimValue,omitempty"`
	IsEnabled  *bool   `json:"isEnabled,omitempty"`

	// unifiedRoleManagementPolicyEnablementRule
	EnabledRules *[]string `json:"enabledRules,omitempty"`

	// unifiedRoleManagementPolicyExpirationRule
	IsExpirationRequired *bool   `json:"isExpirationRequired,omitempty"`
	MaximumDuration      *string `json:"maximumDuration,omitempty"`

	//
	IsDefaultRecipientsEnabled *bool                                                    `json:"isDefaultRecipientsEnabled,omitempty"`
	NotificationLevel          UnifiedRoleManagementPolicyRuleNotificationLevel         `json:"notificationLevel,omitempty"`
	NotificationRecipients     *[]string                                                `json:"notificationRecipients,omitempty"`
	NotificationType           UnifiedRoleManagementPolicyRuleNotificationType          `json:"notificationType,omitempty"`
	RecipientType              UnifiedRoleManagementPolicyRuleNotificationRecipientType `json:"recipientType,omitempty"`
}

type UnifiedRoleManagementPolicyRuleLevel added in v0.67.0

type UnifiedRoleManagementPolicyRuleLevel = string
const (
	UnifiedRoleManagementPolicyRuleLevelEligibility UnifiedRoleManagementPolicyRuleLevel = "Eligibility"
	UnifiedRoleManagementPolicyRuleLevelAssignment  UnifiedRoleManagementPolicyRuleLevel = "Assignment"
)

type UnifiedRoleManagementPolicyRuleNotificationLevel added in v0.67.0

type UnifiedRoleManagementPolicyRuleNotificationLevel = string
const (
	UnifiedRoleManagementPolicyRuleNotificationLevelNone     UnifiedRoleManagementPolicyRuleNotificationLevel = "None"
	UnifiedRoleManagementPolicyRuleNotificationLevelCritical UnifiedRoleManagementPolicyRuleNotificationLevel = "Critical"
	UnifiedRoleManagementPolicyRuleNotificationLevelAll      UnifiedRoleManagementPolicyRuleNotificationLevel = "All"
)

type UnifiedRoleManagementPolicyRuleNotificationRecipientType added in v0.67.0

type UnifiedRoleManagementPolicyRuleNotificationRecipientType = string
const (
	UnifiedRoleManagementPolicyRuleNotificationRecipientTypeRequestor UnifiedRoleManagementPolicyRuleNotificationRecipientType = "Requestor"
	UnifiedRoleManagementPolicyRuleNotificationRecipientTypeApprover  UnifiedRoleManagementPolicyRuleNotificationRecipientType = "Approver"
	UnifiedRoleManagementPolicyRuleNotificationRecipientTypeAdmin     UnifiedRoleManagementPolicyRuleNotificationRecipientType = "Admin"
)

type UnifiedRoleManagementPolicyRuleNotificationType added in v0.67.0

type UnifiedRoleManagementPolicyRuleNotificationType = string
const (
	UnifiedRoleManagementPolicyRuleNotificationTypeEmail UnifiedRoleManagementPolicyRuleNotificationType = "Email"
)

type UnifiedRoleManagementPolicyRuleOperation added in v0.67.0

type UnifiedRoleManagementPolicyRuleOperation = string
const (
	UnifiedRoleManagementPolicyRuleOperationAll        UnifiedRoleManagementPolicyRuleOperation = "All"
	UnifiedRoleManagementPolicyRuleOperationActivate   UnifiedRoleManagementPolicyRuleOperation = "Activate"
	UnifiedRoleManagementPolicyRuleOperationDeactivate UnifiedRoleManagementPolicyRuleOperation = "Deactivate"
	UnifiedRoleManagementPolicyRuleOperationAssign     UnifiedRoleManagementPolicyRuleOperation = "Assign"
	UnifiedRoleManagementPolicyRuleOperationUpdate     UnifiedRoleManagementPolicyRuleOperation = "Update"
	UnifiedRoleManagementPolicyRuleOperationRemove     UnifiedRoleManagementPolicyRuleOperation = "Remove"
	UnifiedRoleManagementPolicyRuleOperationExtend     UnifiedRoleManagementPolicyRuleOperation = "Extend"
	UnifiedRoleManagementPolicyRuleOperationRenew      UnifiedRoleManagementPolicyRuleOperation = "Renew"
)

type UnifiedRoleManagementPolicyRuleTarget added in v0.67.0

type UnifiedRoleManagementPolicyRuleTarget struct {
	Caller              UnifiedRoleManagementPolicyRuleTargetCallerType `json:"caller,omitempty"`
	EnforcedSettings    *[]string                                       `json:"enforcedSettings,omitempty"`
	InheritableSettings *[]string                                       `json:"inheritableSettings,omitempty"`
	Level               UnifiedRoleManagementPolicyRuleLevel            `json:"level,omitempty"`
	Operations          *[]UnifiedRoleManagementPolicyRuleOperation     `json:"operations,omitempty"`
}

type UnifiedRoleManagementPolicyRuleTargetCallerType added in v0.67.0

type UnifiedRoleManagementPolicyRuleTargetCallerType = string
const (
	UnifiedRoleManagementPolicyRuleTargetCallerTypeNone    UnifiedRoleManagementPolicyRuleTargetCallerType = "None"
	UnifiedRoleManagementPolicyRuleTargetCallerTypeAdmin   UnifiedRoleManagementPolicyRuleTargetCallerType = "Admin"
	UnifiedRoleManagementPolicyRuleTargetCallerTypeEndUser UnifiedRoleManagementPolicyRuleTargetCallerType = "EndUser"
)

type UnifiedRoleManagementPolicyScope added in v0.67.0

type UnifiedRoleManagementPolicyScope = string
const (
	UnifiedRoleManagementPolicyScopeDirectory     UnifiedRoleManagementPolicyScope = "Directory"
	UnifiedRoleManagementPolicyScopeDirectoryRole UnifiedRoleManagementPolicyScope = "DirectoryRole"
	UnifiedRoleManagementPolicyScopeGroup         UnifiedRoleManagementPolicyScope = "Group"
)

type UnifiedRolePermission added in v0.40.0

type UnifiedRolePermission struct {
	AllowedResourceActions  *[]string            `json:"allowedResourceActions,omitempty"`
	Condition               *StringNullWhenEmpty `json:"condition,omitempty"`
	ExcludedResourceActions *[]string            `json:"excludedResourceActions,omitempty"`
}

type UnifiedRoleScheduleRequestAction added in v0.62.0

type UnifiedRoleScheduleRequestAction = string
const (
	UnifiedRoleScheduleRequestActionAdminAssign        UnifiedRoleScheduleRequestAction = "adminAssign"
	UnifiedRoleScheduleRequestActionAdminExtend        UnifiedRoleScheduleRequestAction = "adminExtend"
	UnifiedRoleScheduleRequestActionAdminRemove        UnifiedRoleScheduleRequestAction = "adminRemove"
	UnifiedRoleScheduleRequestActionAdminRenew         UnifiedRoleScheduleRequestAction = "adminRenew"
	UnifiedRoleScheduleRequestActionAdminUpdate        UnifiedRoleScheduleRequestAction = "adminUpdate"
	UnifiedRoleScheduleRequestActionSelfActivate       UnifiedRoleScheduleRequestAction = "selfActivate"
	UnifiedRoleScheduleRequestActionSelfDeactivate     UnifiedRoleScheduleRequestAction = "selfDeactivate"
	UnifiedRoleScheduleRequestActionSelfExtend         UnifiedRoleScheduleRequestAction = "selfExtend"
	UnifiedRoleScheduleRequestActionSelfRenew          UnifiedRoleScheduleRequestAction = "selfRenew"
	UnifiedRoleScheduleRequestActionUnknownFutureValue UnifiedRoleScheduleRequestAction = "unknownFutureValue"
)

type Uri

type Uri struct {
	Entity string
	Params url.Values
}

Uri represents a Microsoft Graph endpoint.

type UsageAuthMethod added in v0.24.0

type UsageAuthMethod = string
const (
	UsageAuthMethodEmail                 UsageAuthMethod = "email"
	UsageAuthMethodMobileSMS             UsageAuthMethod = "mobileSMS"
	UsageAuthMethodMobileCall            UsageAuthMethod = "mobileCall"
	UsageAuthMethodOfficePhone           UsageAuthMethod = "officePhone"
	UsageAuthMethodSecurityQuestion      UsageAuthMethod = "securityQuestion"
	UsageAuthMethodAppNotification       UsageAuthMethod = "appNotification"
	UsageAuthMethodAppCode               UsageAuthMethod = "appCode"
	UsageAuthMethodAlternativeMobileCall UsageAuthMethod = "alternateMobileCall"
	UsageAuthMethodFido                  UsageAuthMethod = "fido"
	UsageAuthMethodAppPassword           UsageAuthMethod = "appPassword"
	UsageAuthMethodUnknownFutureValue    UsageAuthMethod = "unknownFutureValue"
)

type User

type User struct {
	DirectoryObject

	AboutMe                         *string                  `json:"aboutMe,omitempty"`
	AccountEnabled                  *bool                    `json:"accountEnabled,omitempty"`
	AgeGroup                        *AgeGroup                `json:"ageGroup,omitempty"`
	BusinessPhones                  *[]string                `json:"businessPhones,omitempty"`
	City                            *StringNullWhenEmpty     `json:"city,omitempty"`
	CompanyName                     *StringNullWhenEmpty     `json:"companyName,omitempty"`
	ConsentProvidedForMinor         *ConsentProvidedForMinor `json:"consentProvidedForMinor,omitempty"`
	Country                         *StringNullWhenEmpty     `json:"country,omitempty"`
	CreatedDateTime                 *time.Time               `json:"createdDateTime,omitempty"`
	CreationType                    *string                  `json:"creationType,omitempty"`
	DeletedDateTime                 *time.Time               `json:"deletedDateTime,omitempty"`
	Department                      *StringNullWhenEmpty     `json:"department,omitempty"`
	DisplayName                     *string                  `json:"displayName,omitempty"`
	EmployeeHireDate                *time.Time               `json:"employeeHireDate,omitempty"`
	EmployeeId                      *StringNullWhenEmpty     `json:"employeeId,omitempty"`
	EmployeeOrgData                 *EmployeeOrgData         `json:"employeeOrgData,omitempty"`
	EmployeeType                    *StringNullWhenEmpty     `json:"employeeType,omitempty"`
	ExternalUserState               *string                  `json:"externalUserState,omitempty"`
	FaxNumber                       *StringNullWhenEmpty     `json:"faxNumber,omitempty"`
	GivenName                       *StringNullWhenEmpty     `json:"givenName,omitempty"`
	ImAddresses                     *[]string                `json:"imAddresses,omitempty"`
	Interests                       *[]string                `json:"interests,omitempty"`
	IsManagementRestricted          *bool                    `json:"isManagementRestricted,omitempty"`
	IsResourceAccount               *bool                    `json:"isResourceAccount,omitempty"`
	JobTitle                        *StringNullWhenEmpty     `json:"jobTitle,omitempty"`
	Mail                            *StringNullWhenEmpty     `json:"mail,omitempty"`
	MailNickname                    *string                  `json:"mailNickname,omitempty"`
	MemberOf                        *[]DirectoryObject       `json:"memberOf,omitempty"`
	MobilePhone                     *StringNullWhenEmpty     `json:"mobilePhone,omitempty"`
	MySite                          *string                  `json:"mySite,omitempty"`
	OfficeLocation                  *StringNullWhenEmpty     `json:"officeLocation,omitempty"`
	OnPremisesDistinguishedName     *string                  `json:"onPremisesDistinguishedName,omitempty"`
	OnPremisesDomainName            *string                  `json:"onPremisesDomainName,omitempty"`
	OnPremisesImmutableId           *string                  `json:"onPremisesImmutableId,omitempty"`
	OnPremisesLastSyncDateTime      *string                  `json:"onPremisesLastSyncDateTime,omitempty"`
	OnPremisesSamAccountName        *string                  `json:"onPremisesSamAccountName,omitempty"`
	OnPremisesSecurityIdentifier    *string                  `json:"onPremisesSecurityIdentifier,omitempty"`
	OnPremisesSyncEnabled           *bool                    `json:"onPremisesSyncEnabled,omitempty"`
	OnPremisesUserPrincipalName     *string                  `json:"onPremisesUserPrincipalName,omitempty"`
	OtherMails                      *[]string                `json:"otherMails,omitempty"`
	PasswordPolicies                *StringNullWhenEmpty     `json:"passwordPolicies,omitempty"`
	PasswordProfile                 *UserPasswordProfile     `json:"passwordProfile,omitempty"`
	PastProjects                    *[]string                `json:"pastProjects,omitempty"`
	PostalCode                      *StringNullWhenEmpty     `json:"postalCode,omitempty"`
	PreferredDataLocation           *string                  `json:"preferredDataLocation,omitempty"`
	PreferredLanguage               *StringNullWhenEmpty     `json:"preferredLanguage,omitempty"`
	PreferredName                   *string                  `json:"preferredName,omitempty"`
	ProxyAddresses                  *[]string                `json:"proxyAddresses,omitempty"`
	RefreshTokensValidFromDateTime  *time.Time               `json:"refreshTokensValidFromDateTime,omitempty"`
	Responsibilities                *[]string                `json:"responsibilities,omitempty"`
	Schools                         *[]string                `json:"schools,omitempty"`
	ShowInAddressList               *bool                    `json:"showInAddressList,omitempty"`
	SignInActivity                  *SignInActivity          `json:"signInActivity,omitempty"`
	SignInSessionsValidFromDateTime *time.Time               `json:"signInSessionsValidFromDateTime,omitempty"`
	Skills                          *[]string                `json:"skills,omitempty"`
	State                           *StringNullWhenEmpty     `json:"state,omitempty"`
	StreetAddress                   *StringNullWhenEmpty     `json:"streetAddress,omitempty"`
	Surname                         *StringNullWhenEmpty     `json:"surname,omitempty"`
	UsageLocation                   *StringNullWhenEmpty     `json:"usageLocation,omitempty"`
	UserPrincipalName               *string                  `json:"userPrincipalName,omitempty"`
	UserType                        *string                  `json:"userType,omitempty"`

	SchemaExtensions *[]SchemaExtensionData `json:"-"`
}

User describes a User object.

func (User) MarshalJSON added in v0.23.0

func (u User) MarshalJSON() ([]byte, error)

func (*User) UnmarshalJSON added in v0.23.0

func (u *User) UnmarshalJSON(data []byte) error

type UserCredentialUsageDetails added in v0.24.0

type UserCredentialUsageDetails struct {
	AuthMethod        *UsageAuthMethod `json:"authMethod,omitempty"`
	EventDateTime     *time.Time       `json:"eventDateTime,omitempty"`
	FailureReason     *string          `json:"failureReason,omitempty"`
	Feature           *FeatureType     `json:"feature,omitempty"`
	ID                *string          `json:"id,omitempty"`
	IsSuccess         *bool            `json:"isSuccess,omitempty"`
	UserDisplayName   *string          `json:"userDisplayName,omitempty"`
	UserPrincipalName *string          `json:"userPrincipalName,omitempty"`
}

type UserFlowAttribute added in v0.48.0

type UserFlowAttribute struct {
	ID                    *string                    `json:"id,omitempty"`
	Description           *string                    `json:"description,omitempty"`
	DisplayName           *string                    `json:"displayName,omitempty"`
	UserFlowAttributeType *string                    `json:"userFlowAttributeType,omitempty"`
	DataType              *UserflowAttributeDataType `json:"dataType,omitempty"`
}

type UserFlowAttributesClient added in v0.48.0

type UserFlowAttributesClient struct {
	BaseClient Client
}

UserFlowAttributesClient performs operations on UserFlowAttributes.

func NewUserFlowAttributesClient added in v0.48.0

func NewUserFlowAttributesClient() *UserFlowAttributesClient

NewUserFlowAttributesClient returns a new UserFlowAttributesClient.

func (*UserFlowAttributesClient) Create added in v0.48.0

func (c *UserFlowAttributesClient) Create(ctx context.Context, userFlowAttribute UserFlowAttribute) (*UserFlowAttribute, int, error)

Create creates a new UserFlowAttribute.

func (*UserFlowAttributesClient) Delete added in v0.48.0

func (c *UserFlowAttributesClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a UserFlowAttribute.

func (*UserFlowAttributesClient) Get added in v0.48.0

Delete returns a UserFlowAttribute.

func (*UserFlowAttributesClient) List added in v0.48.0

List returns a list of UserFlowAttributes, optionally queried using OData.

func (*UserFlowAttributesClient) Update added in v0.48.0

func (c *UserFlowAttributesClient) Update(ctx context.Context, userflowAttribute UserFlowAttribute) (int, error)

Update amends an existing UserFlowAttribute.

type UserIdentity added in v0.18.0

type UserIdentity struct {
	DisplayName       *string `json:"displayName,omitempty"`
	Id                *string `json:"id,omitempty"`
	IPAddress         *string `json:"ipAddress,omitempty"`
	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
}

type UserPasswordProfile

type UserPasswordProfile struct {
	ForceChangePasswordNextSignIn        *bool   `json:"forceChangePasswordNextSignIn,omitempty"`
	ForceChangePasswordNextSignInWithMfa *bool   `json:"forceChangePasswordNextSignInWithMfa,omitempty"`
	Password                             *string `json:"password,omitempty"`
}

type UserRegistrationCount added in v0.24.0

type UserRegistrationCount struct {
	RegistrationStatus *RegistrationStatus `json:"registrationStatus,omitempty"`
	RegistrationCount  *int64              `json:"registrationCount,omitempty"`
}

type UserRegistrationFeatureCount added in v0.24.0

type UserRegistrationFeatureCount struct {
	Feature   *AuthenticationMethodFeature `json:"feature,omitempty"`
	UserCount *int64                       `json:"userCount"`
}

type UserRegistrationFeatureSummary added in v0.24.0

type UserRegistrationFeatureSummary struct {
	TotalUserCount                *int64                          `json:"totalUserCount,omitempty"`
	UserRegistrationFeatureCounts *[]UserRegistrationFeatureCount `json:"userRegistrationFeatureCounts"`
	UserRoles                     IncludedUserRoles               `json:"userRoles,omitempty"`
	UserTypes                     IncludedUserTypes               `json:"userTypes,omitempty"`
}

type UserRegistrationMethodCount added in v0.24.0

type UserRegistrationMethodCount struct {
	AuthenticationMethod *string `json:"authenticationMethod,omitempty"`
	UserCount            *int64  `json:"userCount,omitempty"`
}

type UserRegistrationMethodSummary added in v0.24.0

type UserRegistrationMethodSummary struct {
	TotalUserCount               *int64                         `json:"totalUserCount"`
	UserRegistrationMethodsCount *[]UserRegistrationMethodCount `json:"userRegistrationMethodCounts,omitempty"`
	UerRoles                     IncludedUserRoles              `json:"userRoles,omitempty"`
	UserTypes                    IncludedUserTypes              `json:"userTypes,omitempty"`
}

type UserSet added in v0.31.0

type UserSet struct {
	ODataType    *odata.Type `json:"@odata.type,omitempty"`
	IsBackup     *bool       `json:"isBackup,omitempty"`
	ID           *string     `json:"id,omitempty"`      // Either user or group ID
	GroupID      *string     `json:"groupId,omitempty"` // oData groupMembers
	UserID       *string     `json:"userId,omitempty"`  // oData singleUser
	Description  *string     `json:"description,omitempty"`
	ManagerLevel *int32      `json:"managerLevel,omitempty"`
}

type UserflowAttributeDataType added in v0.48.0

type UserflowAttributeDataType = string
const (
	UserflowAttributeDataTypeString           UserflowAttributeDataType = "string"
	UserflowAttributeDataTypeBoolean          UserflowAttributeDataType = "boolean"
	UserflowAttributeDataTypeInt64            UserflowAttributeDataType = "int64"
	UserflowAttributeDataTypeStringCollection UserflowAttributeDataType = "stringCollection"
	UserflowAttributeDataTypeDateTime         UserflowAttributeDataType = "dateTime"
)

type UsersClient

type UsersClient struct {
	BaseClient Client
}

UsersClient performs operations on Users.

func NewUsersClient

func NewUsersClient() *UsersClient

NewUsersClient returns a new UsersClient.

func (*UsersClient) AssignManager added in v0.32.0

func (c *UsersClient) AssignManager(ctx context.Context, id string, manager User) (int, error)

AssignManager assigns a user's manager.

func (*UsersClient) Create

func (c *UsersClient) Create(ctx context.Context, user User) (*User, int, error)

Create creates a new User.

func (*UsersClient) Delete

func (c *UsersClient) Delete(ctx context.Context, id string) (int, error)

Delete removes a User.

func (*UsersClient) DeleteManager added in v0.33.0

func (c *UsersClient) DeleteManager(ctx context.Context, id string) (int, error)

DeleteManager removes a user's manager assignment.

func (*UsersClient) DeletePermanently added in v0.15.0

func (c *UsersClient) DeletePermanently(ctx context.Context, id string) (int, error)

DeletePermanently removes a deleted User permanently.

func (*UsersClient) Get

func (c *UsersClient) Get(ctx context.Context, id string, query odata.Query) (*User, int, error)

Get retrieves a User.

func (*UsersClient) GetDeleted added in v0.14.0

func (c *UsersClient) GetDeleted(ctx context.Context, id string, query odata.Query) (*User, int, error)

GetDeleted retrieves a deleted User.

func (*UsersClient) GetManager added in v0.32.0

func (c *UsersClient) GetManager(ctx context.Context, id string) (*User, int, error)

GetManager retrieves an user or organizational contact assigned as the user's manager.

func (*UsersClient) GetWithSchemaExtensions added in v0.23.0

func (c *UsersClient) GetWithSchemaExtensions(ctx context.Context, id string, query odata.Query, schemaExtensions *[]SchemaExtensionData) (*User, int, error)

GetWithSchemaExtensions retrieves a User, including the values for any specified schema extensions

func (*UsersClient) List

func (c *UsersClient) List(ctx context.Context, query odata.Query) (*[]User, int, error)

List returns a list of Users, optionally queried using OData.

func (*UsersClient) ListDeleted added in v0.14.0

func (c *UsersClient) ListDeleted(ctx context.Context, query odata.Query) (*[]User, int, error)

ListDeleted retrieves a list of recently deleted users, optionally queried using OData.

func (*UsersClient) ListGroupMemberships

func (c *UsersClient) ListGroupMemberships(ctx context.Context, id string, query odata.Query) (*[]Group, int, error)

ListGroupMemberships returns a list of Groups the user is member of, optionally queried using OData.

func (*UsersClient) RestoreDeleted added in v0.17.0

func (c *UsersClient) RestoreDeleted(ctx context.Context, id string) (*User, int, error)

RestoreDeleted restores a recently deleted User.

func (*UsersClient) Sendmail added in v0.13.0

func (c *UsersClient) Sendmail(ctx context.Context, id string, message MailMessage) (int, error)

SendMail sends message specified in the request body. TODO: Needs testing with an O365 user principal

func (*UsersClient) Update

func (c *UsersClient) Update(ctx context.Context, user User) (int, error)

Update amends an existing User.

type ValidStatusFunc

type ValidStatusFunc func(*http.Response, *odata.OData) bool

ValidStatusFunc is a function that tests whether an HTTP response is considered valid for the particular request.

type VerifiedPublisher

type VerifiedPublisher struct {
	AddedDateTime       *time.Time `json:"addedDateTime,omitempty"`
	DisplayName         *string    `json:"displayName,omitempty"`
	VerifiedPublisherId *string    `json:"verifiedPublisherId,omitempty"`
}

type WindowsAutopilotDeploymentProfile added in v0.60.0

type WindowsAutopilotDeploymentProfile struct {
	ID                                     *string                                `json:"id,omitempty"`
	ODataType                              *odata.Type                            `json:"@odata.type,omitempty"`
	DisplayName                            *string                                `json:"displayName,omitempty"`
	Description                            *string                                `json:"description,omitempty"`
	Language                               *string                                `json:"language,omitempty"`
	CreatedDateTime                        *time.Time                             `json:"createdDateTime,omitempty"`
	LastModifiedDateTime                   *time.Time                             `json:"lastModifiedDateTime,omitempty"`
	OutOfBoxExperienceSettings             *OutOfBoxExperienceSettings            `json:"outOfBoxExperienceSettings,omitempty"`
	EnrollmentStatusScreenSettings         *WindowsEnrollmentStatusScreenSettings `json:"enrollmentStatusScreenSettings,omitempty"`
	ExtractHardwareHash                    *bool                                  `json:"extractHardwareHash,omitempty"`
	DeviceNameTemplate                     *string                                `json:"deviceNameTemplate,omitempty"`
	DeviceType                             *WindowsAutopilotDeviceType            `json:"deviceType,omitempty"`
	EnableWhiteGlove                       *bool                                  `json:"enableWhiteGlove,omitempty"`
	RoleScopeTagIds                        *[]string                              `json:"roleScopeTagIds,omitempty"`
	ManagementServiceAppId                 *string                                `json:"managementServiceAppId,omitempty"`
	HybridAzureADJoinSkipConnectivityCheck *bool                                  `json:"hybridAzureADJoinSkipConnectivityCheck,omitempty"`
}

type WindowsAutopilotDeploymentProfileAssignment added in v0.60.0

type WindowsAutopilotDeploymentProfileAssignment struct {
	ID       *string                                 `json:"id,omitempty"`
	Target   *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
	Source   *DeviceAndAppManagementAssignmentSource `json:"source,omitempty"`
	SourceId *string                                 `json:"sourceId,omitempty"`
}

type WindowsAutopilotDeploymentProfilesClient added in v0.60.0

type WindowsAutopilotDeploymentProfilesClient struct {
	BaseClient Client
}

func NewWindowsAutopilotDeploymentProfilesClient added in v0.60.0

func NewWindowsAutopilotDeploymentProfilesClient() *WindowsAutopilotDeploymentProfilesClient

NewWindowsAutopilotDeploymentProfilesClient returns a new WindowsAutopilotDeploymentProfilesClient.

func (*WindowsAutopilotDeploymentProfilesClient) Create added in v0.60.0

Create creates a new WindowsAutopilotDeploymentProfile.

func (*WindowsAutopilotDeploymentProfilesClient) Delete added in v0.60.0

Delete removes a WindowsAutopilotDeploymentProfile.

func (*WindowsAutopilotDeploymentProfilesClient) Get added in v0.60.0

Get retrieves a WindowsAutopilotDeploymentProfile.

func (*WindowsAutopilotDeploymentProfilesClient) List added in v0.60.0

List returns a list of Windows Autopilot Deployment Profiles, optionally queried using OData.

func (*WindowsAutopilotDeploymentProfilesClient) Update added in v0.60.0

Update amends an existing WindowsAutopilotDeploymentProfile.

type WindowsAutopilotDeviceIdentity added in v0.60.0

type WindowsAutopilotDeviceIdentity struct {
	ID                                        *string                                          `json:"id,omitempty"`
	DeploymentProfileAssignmentStatus         *DeploymentProfileAssignmentStatus               `json:"deploymentProfileAssignmentStatus,omitempty"`
	DeploymentProfileAssignmentDetailedStatus *WindowsAutopilotProfileAssignmentDetailedStatus `json:"deploymentProfileAssignmentDetailedStatus,omitempty"`
	DeploymentProfileAssignedDateTime         *time.Time                                       `json:"deploymentProfileAssignedDateTime,omitempty"`
	GroupTag                                  *string                                          `json:"groupTag,omitempty"`
	PurchaseOrderIdentifier                   *string                                          `json:"purchaseOrderIdentifier,omitempty"`
	SerialNumber                              *string                                          `json:"serialNumber,omitempty"`
	ProductKey                                *string                                          `json:"productKey,omitempty"`
	Manufacturer                              *string                                          `json:"manufacturer,omitempty"`
	Model                                     *string                                          `json:"model,omitempty"`
	EnrollmentState                           *EnrollmentState                                 `json:"enrollmentState,omitempty"`
	LastContactedDateTime                     *time.Time                                       `json:"lastContactedDateTime,omitempty"`
	AddressableUserName                       *string                                          `json:"addressableUserName,omitempty"`
	UserPrincipalName                         *string                                          `json:"userPrincipalName,omitempty"`
	ResourceName                              *string                                          `json:"resourceName,omitempty"`
	SkuNumber                                 *string                                          `json:"skuNumber,omitempty"`
	SystemFamily                              *string                                          `json:"systemFamily,omitempty"`
	AzureActiveDirectoryDeviceId              *string                                          `json:"azureActiveDirectoryDeviceId,omitempty"`
	AzureAdDeviceId                           *string                                          `json:"azureAdDeviceId,omitempty"`
	ManagedDeviceId                           *string                                          `json:"managedDeviceId,omitempty"`
	DisplayName                               *string                                          `json:"displayName,omitempty"`
	DeviceAccountUpn                          *string                                          `json:"deviceAccountUpn,omitempty"`
	DeviceAccountPassword                     *string                                          `json:"deviceAccountPassword,omitempty"`
	DeviceFriendlyName                        *string                                          `json:"deviceFriendlyName,omitempty"`
	RemediationState                          *WindowsAutopilotDeviceRemediationState          `json:"remediationState,omitempty"`
	RemediationStateLastModifiedDateTime      *time.Time                                       `json:"remediationStateLastModifiedDateTime,omitempty"`
}

type WindowsAutopilotDeviceRemediationState added in v0.60.0

type WindowsAutopilotDeviceRemediationState = string
const (
	WindowsAutopilotDeviceRemediationStateUnknown                      WindowsAutopilotDeviceRemediationState = "unknown"
	WindowsAutopilotDeviceRemediationStateNoRemediationRequired        WindowsAutopilotDeviceRemediationState = "noRemediationRequired"
	WindowsAutopilotDeviceRemediationStateAutomaticRemediationRequired WindowsAutopilotDeviceRemediationState = "automaticRemediationRequired"
	WindowsAutopilotDeviceRemediationStateManualRemediationRequired    WindowsAutopilotDeviceRemediationState = "manualRemediationRequired"
	WindowsAutopilotDeviceRemediationStateUnknownFutureValue           WindowsAutopilotDeviceRemediationState = "unknownFutureValue"
)

type WindowsAutopilotDeviceType added in v0.60.0

type WindowsAutopilotDeviceType = string
const (
	WindowsAutopilotDeviceTypeWindowsPc          WindowsAutopilotDeviceType = "windowsPc"
	WindowsAutopilotDeviceTypeSurfaceHub2        WindowsAutopilotDeviceType = "surfaceHub2"
	WindowsAutopilotDeviceTypeHoloLens           WindowsAutopilotDeviceType = "holoLens"
	WindowsAutopilotDeviceTypeSurfaceHub2S       WindowsAutopilotDeviceType = "surfaceHub2S"
	WindowsAutopilotDeviceTypeVirtualMachine     WindowsAutopilotDeviceType = "virtualMachine"
	WindowsAutopilotDeviceTypeUnknownFutureValue WindowsAutopilotDeviceType = "unknownFutureValue"
)

type WindowsAutopilotProfileAssignmentDetailedStatus added in v0.60.0

type WindowsAutopilotProfileAssignmentDetailedStatus = string
const (
	WindowsAutopilotProfileAssignmentDetailedStatusNone                            WindowsAutopilotProfileAssignmentDetailedStatus = "none"
	WindowsAutopilotProfileAssignmentDetailedStatusHardwareRequirementsNotMet      WindowsAutopilotProfileAssignmentDetailedStatus = "hardwareRequirementsNotMet"
	WindowsAutopilotProfileAssignmentDetailedStatusSurfaceHubProfileNotSupported   WindowsAutopilotProfileAssignmentDetailedStatus = "surfaceHubProfileNotSupported"
	WindowsAutopilotProfileAssignmentDetailedStatusHoloLensProfileNotSupported     WindowsAutopilotProfileAssignmentDetailedStatus = "holoLensProfileNotSupported"
	WindowsAutopilotProfileAssignmentDetailedStatusWindowsPcProfileNotSupported    WindowsAutopilotProfileAssignmentDetailedStatus = "windowsPcProfileNotSupported"
	WindowsAutopilotProfileAssignmentDetailedStatusSurfaceHub2SProfileNotSupported WindowsAutopilotProfileAssignmentDetailedStatus = "surfaceHub2SProfileNotSupported"
	WindowsAutopilotProfileAssignmentDetailedStatusUnknownFutureValue              WindowsAutopilotProfileAssignmentDetailedStatus = "unknownFutureValue"
)

type WindowsEnrollmentStatusScreenSettings added in v0.60.0

type WindowsEnrollmentStatusScreenSettings struct {
	HideInstallationProgress                         *bool   `json:"hideInstallationProgress,omitempty"`
	AllowDeviceUseBeforeProfileAndAppInstallComplete *bool   `json:"allowDeviceUseBeforeProfileAndAppInstallComplete,omitempty"`
	BlockDeviceSetupRetryByUser                      *bool   `json:"blockDeviceSetupRetryByUser,omitempty"`
	AllowLogCollectionOnInstallFailure               *bool   `json:"allowLogCollectionOnInstallFailure,omitempty"`
	CustomErrorMessage                               *string `json:"customErrorMessage,omitempty"`
	InstallProgressTimeoutInMinutes                  *int32  `json:"installProgressTimeoutInMinutes,omitempty"`
	AllowDeviceUseOnInstallFailure                   *bool   `json:"allowDeviceUseOnInstallFailure,omitempty"`
}

type WindowsHelloForBusinessAuthenticationMethod added in v0.25.0

type WindowsHelloForBusinessAuthenticationMethod struct {
	CreatedDateTime *time.Time                       `json:"createdDateTime,omitempty"`
	DisplayName     *string                          `json:"displayName,omitempty"`
	ID              *string                          `json:"id,omitempty"`
	KeyStrength     *AuthenticationMethodKeyStrength `json:"authenticationMethodKeyStrength,omitempty"`
}

type WindowsUserType added in v0.60.0

type WindowsUserType = string
const (
	WindowsUserTypeAdministrator WindowsUserType = "administrator"
	WindowsUserTypeStandard      WindowsUserType = "standard"
)

Source Files

Jump to

Keyboard shortcuts

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