shared

package
v3.2.1 Latest Latest
Warning

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

Go to latest
Published: Sep 11, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Access

type Access struct {
	// # Access Level Object
	// ### Description
	// The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access
	// level is a `AccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.
	AccessLevel *ResourceAccessLevel `json:"access_level,omitempty"`
	// The ID of the entity being accessed.
	EntityID string `json:"entity_id"`
	// The type of an entity.
	EntityType EntityTypeEnum `json:"entity_type"`
	// The day and time the principal's access will expire.
	ExpirationDate *time.Time `json:"expiration_date,omitempty"`
	// The principal has direct access to this entity (vs. inherited access).
	HasDirectAccess bool `json:"has_direct_access"`
	// The number of ways in which the principal has access to this entity (directly and inherited).
	NumAccessPaths int `json:"num_access_paths"`
	// The ID of the principal with access.
	PrincipalID string `json:"principal_id"`
	// The type of an entity.
	PrincipalType EntityTypeEnum `json:"principal_type"`
}

# Access Object ### Description The `Access` object is used to represent a principal's access to an entity, either directly or inherited.

### Usage Example Fetch from the `LIST ResourceNonHumanIdentities` endpoint.

func (*Access) GetAccessLevel

func (o *Access) GetAccessLevel() *ResourceAccessLevel

func (*Access) GetEntityID

func (o *Access) GetEntityID() string

func (*Access) GetEntityType

func (o *Access) GetEntityType() EntityTypeEnum

func (*Access) GetExpirationDate

func (o *Access) GetExpirationDate() *time.Time

func (*Access) GetHasDirectAccess

func (o *Access) GetHasDirectAccess() bool

func (*Access) GetNumAccessPaths

func (o *Access) GetNumAccessPaths() int

func (*Access) GetPrincipalID

func (o *Access) GetPrincipalID() string

func (*Access) GetPrincipalType

func (o *Access) GetPrincipalType() EntityTypeEnum

func (Access) MarshalJSON

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

func (*Access) UnmarshalJSON

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

type AccessList

type AccessList struct {
	Results []Access `json:"results,omitempty"`
}

func (*AccessList) GetResults

func (o *AccessList) GetResults() []Access

type AccessRule

type AccessRule struct {
	// The ID of the owner of the group.
	AdminOwnerID string `json:"admin_owner_id"`
	// A description of the group.
	Description string `json:"description"`
	// The ID (group ID) of the access rule.
	ID string `json:"access_rule_id"`
	// The name of the access rule.
	Name        string      `json:"name"`
	RuleClauses RuleClauses `json:"ruleClauses"`
	// The status of the access rule.
	Status Status `json:"status"`
}

AccessRule - # Access Rule Object ### Description The `AccessRule` object is used to represent an access rule configuration.

### Usage Example Get access rule configurations from the `GET Access Rule Configs` endpoint.

func (*AccessRule) GetAdminOwnerID

func (o *AccessRule) GetAdminOwnerID() string

func (*AccessRule) GetDescription

func (o *AccessRule) GetDescription() string

func (*AccessRule) GetID

func (o *AccessRule) GetID() string

func (*AccessRule) GetName

func (o *AccessRule) GetName() string

func (*AccessRule) GetRuleClauses

func (o *AccessRule) GetRuleClauses() RuleClauses

func (*AccessRule) GetStatus

func (o *AccessRule) GetStatus() Status

type ActiveDirectoryGroup

type ActiveDirectoryGroup struct {
	// The id of the Google group.
	GroupID string `json:"group_id"`
}

ActiveDirectoryGroup - Remote info for Active Directory group.

func (*ActiveDirectoryGroup) GetGroupID

func (o *ActiveDirectoryGroup) GetGroupID() string

type App

type App struct {
	// The ID of the owner of the app.
	AdminOwnerID string `json:"admin_owner_id"`
	// A description of the app.
	Description string `json:"description"`
	// The ID of the app.
	ID string `json:"app_id"`
	// The name of the app.
	Name string `json:"name"`
	// The type of an app.
	Type string `json:"app_type"`
	// Validation checks of an apps' configuration and permissions.
	Validations []AppValidation `json:"validations,omitempty"`
}

# App Object ### Description The `App` object is used to represent an app to an application.

### Usage Example List from the `GET Apps` endpoint.

func (*App) GetAdminOwnerID

func (o *App) GetAdminOwnerID() string

func (*App) GetDescription

func (o *App) GetDescription() string

func (*App) GetID

func (o *App) GetID() string

func (*App) GetName

func (o *App) GetName() string

func (*App) GetType

func (o *App) GetType() string

func (*App) GetValidations

func (o *App) GetValidations() []AppValidation

type AppTypeEnum

type AppTypeEnum string

AppTypeEnum - The type of an app.

const (
	AppTypeEnumActiveDirectory AppTypeEnum = "ACTIVE_DIRECTORY"
	AppTypeEnumAzureAd         AppTypeEnum = "AZURE_AD"
	AppTypeEnumAws             AppTypeEnum = "AWS"
	AppTypeEnumAwsSso          AppTypeEnum = "AWS_SSO"
	AppTypeEnumCustom          AppTypeEnum = "CUSTOM"
	AppTypeEnumDuo             AppTypeEnum = "DUO"
	AppTypeEnumGcp             AppTypeEnum = "GCP"
	AppTypeEnumGitHub          AppTypeEnum = "GIT_HUB"
	AppTypeEnumGitLab          AppTypeEnum = "GIT_LAB"
	AppTypeEnumGoogleGroups    AppTypeEnum = "GOOGLE_GROUPS"
	AppTypeEnumGoogleWorkspace AppTypeEnum = "GOOGLE_WORKSPACE"
	AppTypeEnumLdap            AppTypeEnum = "LDAP"
	AppTypeEnumMariadb         AppTypeEnum = "MARIADB"
	AppTypeEnumMongo           AppTypeEnum = "MONGO"
	AppTypeEnumMongoAtlas      AppTypeEnum = "MONGO_ATLAS"
	AppTypeEnumMysql           AppTypeEnum = "MYSQL"
	AppTypeEnumOktaDirectory   AppTypeEnum = "OKTA_DIRECTORY"
	AppTypeEnumOpal            AppTypeEnum = "OPAL"
	AppTypeEnumPagerduty       AppTypeEnum = "PAGERDUTY"
	AppTypeEnumSalesforce      AppTypeEnum = "SALESFORCE"
	AppTypeEnumTailscale       AppTypeEnum = "TAILSCALE"
	AppTypeEnumTeleport        AppTypeEnum = "TELEPORT"
	AppTypeEnumWorkday         AppTypeEnum = "WORKDAY"
)

func (AppTypeEnum) ToPointer

func (e AppTypeEnum) ToPointer() *AppTypeEnum

func (*AppTypeEnum) UnmarshalJSON

func (e *AppTypeEnum) UnmarshalJSON(data []byte) error

type AppValidation

type AppValidation struct {
	// Extra details regarding the validation. Could be an error message or restrictions on permissions.
	Details *string `json:"details,omitempty"`
	// The key of the app validation. These are not unique IDs between runs.
	Key string `json:"key"`
	// The human-readable description of whether the validation has the permissions.
	Name any `json:"name"`
	// The severity of an app validation.
	Severity AppValidationSeverityEnum `json:"severity"`
	// The status of an app validation.
	Status AppValidationStatusEnum `json:"status"`
	// The date and time the app validation was last run.
	UpdatedAt time.Time `json:"updated_at"`
	// The reason for needing the validation.
	UsageReason *string `json:"usage_reason,omitempty"`
}

AppValidation - # App validation object ### Description The `AppValidation` object is used to represent a validation check of an apps' configuration and permissions.

### Usage Example List from the `GET Apps` endpoint.

func (*AppValidation) GetDetails

func (o *AppValidation) GetDetails() *string

func (*AppValidation) GetKey

func (o *AppValidation) GetKey() string

func (*AppValidation) GetName

func (o *AppValidation) GetName() any

func (*AppValidation) GetSeverity

func (o *AppValidation) GetSeverity() AppValidationSeverityEnum

func (*AppValidation) GetStatus

func (o *AppValidation) GetStatus() AppValidationStatusEnum

func (*AppValidation) GetUpdatedAt

func (o *AppValidation) GetUpdatedAt() time.Time

func (*AppValidation) GetUsageReason

func (o *AppValidation) GetUsageReason() *string

func (AppValidation) MarshalJSON

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

func (*AppValidation) UnmarshalJSON

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

type AppValidationSeverityEnum

type AppValidationSeverityEnum string

AppValidationSeverityEnum - The severity of an app validation.

const (
	AppValidationSeverityEnumCritical AppValidationSeverityEnum = "CRITICAL"
	AppValidationSeverityEnumHigh     AppValidationSeverityEnum = "HIGH"
	AppValidationSeverityEnumMedium   AppValidationSeverityEnum = "MEDIUM"
	AppValidationSeverityEnumLow      AppValidationSeverityEnum = "LOW"
)

func (AppValidationSeverityEnum) ToPointer

func (*AppValidationSeverityEnum) UnmarshalJSON

func (e *AppValidationSeverityEnum) UnmarshalJSON(data []byte) error

type AppValidationStatusEnum

type AppValidationStatusEnum string

AppValidationStatusEnum - The status of an app validation.

const (
	AppValidationStatusEnumSuccess AppValidationStatusEnum = "SUCCESS"
	AppValidationStatusEnumFailed  AppValidationStatusEnum = "FAILED"
)

func (AppValidationStatusEnum) ToPointer

func (*AppValidationStatusEnum) UnmarshalJSON

func (e *AppValidationStatusEnum) UnmarshalJSON(data []byte) error

type AppsList

type AppsList struct {
	Apps []App `json:"apps"`
}

AppsList - A list of apps.

func (*AppsList) GetApps

func (o *AppsList) GetApps() []App

type AwsAccount

type AwsAccount struct {
	// The id of the AWS account.
	AccountID string `json:"account_id"`
	// The id of the AWS organizational unit. Required only if customer has OUs enabled.
	OrganizationalUnitID *string `json:"organizational_unit_id,omitempty"`
}

AwsAccount - Remote info for AWS account.

func (*AwsAccount) GetAccountID

func (o *AwsAccount) GetAccountID() string

func (*AwsAccount) GetOrganizationalUnitID

func (o *AwsAccount) GetOrganizationalUnitID() *string

type AwsEc2Instance

type AwsEc2Instance struct {
	// The id of the AWS account. Required for AWS Organizations.
	AccountID *string `json:"account_id,omitempty"`
	// The instanceId of the EC2 instance.
	InstanceID string `json:"instance_id"`
	// The region of the EC2 instance.
	Region string `json:"region"`
}

AwsEc2Instance - Remote info for AWS EC2 instance.

func (*AwsEc2Instance) GetAccountID

func (o *AwsEc2Instance) GetAccountID() *string

func (*AwsEc2Instance) GetInstanceID

func (o *AwsEc2Instance) GetInstanceID() string

func (*AwsEc2Instance) GetRegion

func (o *AwsEc2Instance) GetRegion() string

type AwsEksCluster

type AwsEksCluster struct {
	// The id of the AWS account. Required for AWS Organizations.
	AccountID *string `json:"account_id,omitempty"`
	// The ARN of the EKS cluster.
	Arn string `json:"arn"`
}

AwsEksCluster - Remote info for AWS EKS cluster.

func (*AwsEksCluster) GetAccountID

func (o *AwsEksCluster) GetAccountID() *string

func (*AwsEksCluster) GetArn

func (o *AwsEksCluster) GetArn() string

type AwsIamRole

type AwsIamRole struct {
	// The id of the AWS account. Required for AWS Organizations.
	AccountID *string `json:"account_id,omitempty"`
	// The ARN of the IAM role.
	Arn string `json:"arn"`
}

AwsIamRole - Remote info for AWS IAM role.

func (*AwsIamRole) GetAccountID

func (o *AwsIamRole) GetAccountID() *string

func (*AwsIamRole) GetArn

func (o *AwsIamRole) GetArn() string

type AwsOrganizationalUnit

type AwsOrganizationalUnit struct {
	// The id of the AWS organizational unit that is being created.
	OrganizationalUnitID string `json:"organizational_unit_id"`
	// The id of the parent organizational unit.
	ParentID *string `json:"parent_id,omitempty"`
}

AwsOrganizationalUnit - Remote info for AWS organizational unit.

func (*AwsOrganizationalUnit) GetOrganizationalUnitID

func (o *AwsOrganizationalUnit) GetOrganizationalUnitID() string

func (*AwsOrganizationalUnit) GetParentID

func (o *AwsOrganizationalUnit) GetParentID() *string

type AwsPermissionSet

type AwsPermissionSet struct {
	// The ID of an AWS account to which this permission set is provisioned.
	AccountID string `json:"account_id"`
	// The ARN of the permission set.
	Arn string `json:"arn"`
}

AwsPermissionSet - Remote info for AWS Identity Center permission set.

func (*AwsPermissionSet) GetAccountID

func (o *AwsPermissionSet) GetAccountID() string

func (*AwsPermissionSet) GetArn

func (o *AwsPermissionSet) GetArn() string

type AwsRdsInstance

type AwsRdsInstance struct {
	// The id of the AWS account. Required for AWS Organizations.
	AccountID *string `json:"account_id,omitempty"`
	// The instanceId of the RDS instance.
	InstanceID string `json:"instance_id"`
	// The region of the RDS instance.
	Region string `json:"region"`
	// The resourceId of the RDS instance.
	ResourceID string `json:"resource_id"`
}

AwsRdsInstance - Remote info for AWS RDS instance.

func (*AwsRdsInstance) GetAccountID

func (o *AwsRdsInstance) GetAccountID() *string

func (*AwsRdsInstance) GetInstanceID

func (o *AwsRdsInstance) GetInstanceID() string

func (*AwsRdsInstance) GetRegion

func (o *AwsRdsInstance) GetRegion() string

func (*AwsRdsInstance) GetResourceID

func (o *AwsRdsInstance) GetResourceID() string

type AzureAdMicrosoft365Group

type AzureAdMicrosoft365Group struct {
	// The id of the Microsoft Entra ID Microsoft 365 group.
	GroupID string `json:"group_id"`
}

AzureAdMicrosoft365Group - Remote info for Microsoft Entra ID Microsoft 365 group.

func (*AzureAdMicrosoft365Group) GetGroupID

func (o *AzureAdMicrosoft365Group) GetGroupID() string

type AzureAdSecurityGroup

type AzureAdSecurityGroup struct {
	// The id of the Microsoft Entra ID Security group.
	GroupID string `json:"group_id"`
}

AzureAdSecurityGroup - Remote info for Microsoft Entra ID Security group.

func (*AzureAdSecurityGroup) GetGroupID

func (o *AzureAdSecurityGroup) GetGroupID() string

type Bundle

type Bundle struct {
	// The ID of the owner of the bundle.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// The ID of the bundle.
	BundleID *string `json:"bundle_id,omitempty"`
	// The creation timestamp of the bundle, in ISO 8601 format
	CreatedAt *time.Time `json:"created_at,omitempty"`
	// The description of the bundle.
	Description *string `json:"description,omitempty"`
	// The name of the bundle.
	Name *string `json:"name,omitempty"`
	// The total number of groups in the bundle.
	TotalNumGroups *int64 `json:"total_num_groups,omitempty"`
	// The total number of items in the bundle.
	TotalNumItems *int64 `json:"total_num_items,omitempty"`
	// The total number of resources in the bundle.
	TotalNumResources *int64 `json:"total_num_resources,omitempty"`
	// The last updated timestamp of the bundle, in ISO 8601 format
	UpdatedAt *time.Time `json:"updated_at,omitempty"`
}

func (*Bundle) GetAdminOwnerID

func (o *Bundle) GetAdminOwnerID() *string

func (*Bundle) GetBundleID

func (o *Bundle) GetBundleID() *string

func (*Bundle) GetCreatedAt

func (o *Bundle) GetCreatedAt() *time.Time

func (*Bundle) GetDescription

func (o *Bundle) GetDescription() *string

func (*Bundle) GetName

func (o *Bundle) GetName() *string

func (*Bundle) GetTotalNumGroups

func (o *Bundle) GetTotalNumGroups() *int64

func (*Bundle) GetTotalNumItems

func (o *Bundle) GetTotalNumItems() *int64

func (*Bundle) GetTotalNumResources

func (o *Bundle) GetTotalNumResources() *int64

func (*Bundle) GetUpdatedAt

func (o *Bundle) GetUpdatedAt() *time.Time

func (Bundle) MarshalJSON

func (b Bundle) MarshalJSON() ([]byte, error)

func (*Bundle) UnmarshalJSON

func (b *Bundle) UnmarshalJSON(data []byte) error

type BundleGroup

type BundleGroup struct {
	// The access level of the group within a bundle.
	AccessLevelName *string `json:"access_level_name,omitempty"`
	// The remote ID of the access level of the group within a bundle.
	AccessLevelRemoteID *string `json:"access_level_remote_id,omitempty"`
	// The ID of the bundle containing the group.
	BundleID *string `json:"bundle_id,omitempty"`
	// The ID of the group within a bundle.
	GroupID *string `json:"group_id,omitempty"`
}

func (*BundleGroup) GetAccessLevelName

func (o *BundleGroup) GetAccessLevelName() *string

func (*BundleGroup) GetAccessLevelRemoteID

func (o *BundleGroup) GetAccessLevelRemoteID() *string

func (*BundleGroup) GetBundleID

func (o *BundleGroup) GetBundleID() *string

func (*BundleGroup) GetGroupID

func (o *BundleGroup) GetGroupID() *string

type BundleInput

type BundleInput struct {
	// The ID of the owner of the bundle.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// The description of the bundle.
	Description *string `json:"description,omitempty"`
	// The name of the bundle.
	Name *string `json:"name,omitempty"`
}

func (*BundleInput) GetAdminOwnerID

func (o *BundleInput) GetAdminOwnerID() *string

func (*BundleInput) GetDescription

func (o *BundleInput) GetDescription() *string

func (*BundleInput) GetName

func (o *BundleInput) GetName() *string

type BundleResource

type BundleResource struct {
	// The access level of the resource within a bundle.
	AccessLevelName *string `json:"access_level_name,omitempty"`
	// The remote ID of the access level of the resource within a bundle.
	AccessLevelRemoteID *string `json:"access_level_remote_id,omitempty"`
	// The ID of the bundle containing the resource.
	BundleID *string `json:"bundle_id,omitempty"`
	// The ID of the resource within a bundle.
	ResourceID *string `json:"resource_id,omitempty"`
}

func (*BundleResource) GetAccessLevelName

func (o *BundleResource) GetAccessLevelName() *string

func (*BundleResource) GetAccessLevelRemoteID

func (o *BundleResource) GetAccessLevelRemoteID() *string

func (*BundleResource) GetBundleID

func (o *BundleResource) GetBundleID() *string

func (*BundleResource) GetResourceID

func (o *BundleResource) GetResourceID() *string

type Condition

type Condition struct {
	// The list of group IDs to match.
	GroupIds []string `json:"group_ids"`
	// The list of role remote IDs to match.
	RoleRemoteIds []string `json:"role_remote_ids"`
}

func (*Condition) GetGroupIds

func (o *Condition) GetGroupIds() []string

func (*Condition) GetRoleRemoteIds

func (o *Condition) GetRoleRemoteIds() []string

func (Condition) MarshalJSON

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

func (*Condition) UnmarshalJSON

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

type ConfigurationTemplate

type ConfigurationTemplate struct {
	// The ID of the owner of the configuration template.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// The IDs of the break glass users linked to the configuration template.
	BreakGlassUserIds []string `json:"break_glass_user_ids,omitempty"`
	// The ID of the configuration template.
	ConfigurationTemplateID *string `json:"configuration_template_id,omitempty"`
	// Custom request notification sent upon request approval for this configuration template.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// The IDs of the audit message channels linked to the configuration template.
	LinkedAuditMessageChannelIds []string `json:"linked_audit_message_channel_ids,omitempty"`
	// The IDs of the on-call schedules linked to the configuration template.
	MemberOnCallScheduleIds []string `json:"member_oncall_schedule_ids,omitempty"`
	// The name of the configuration template.
	Name *string `json:"name,omitempty"`
	// The ID of the request configuration linked to the configuration template.
	RequestConfigurationID *string `json:"request_configuration_id,omitempty"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this configuration template.
	RequireMfaToApprove *bool `json:"require_mfa_to_approve,omitempty"`
	// A bool representing whether or not to require MFA to connect to resources associated with this configuration template.
	RequireMfaToConnect *bool `json:"require_mfa_to_connect,omitempty"`
	// Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.
	TicketPropagation *TicketPropagationConfiguration `json:"ticket_propagation,omitempty"`
	// Visibility infomation of an entity.
	Visibility *VisibilityInfo `json:"visibility,omitempty"`
}

ConfigurationTemplate - # Configuration Template Object ### Description The `ConfigurationTemplate` object is used to represent a configuration template.

### Usage Example Returned from the `GET Configuration Templates` endpoint.

func (*ConfigurationTemplate) GetAdminOwnerID

func (o *ConfigurationTemplate) GetAdminOwnerID() *string

func (*ConfigurationTemplate) GetBreakGlassUserIds

func (o *ConfigurationTemplate) GetBreakGlassUserIds() []string

func (*ConfigurationTemplate) GetConfigurationTemplateID

func (o *ConfigurationTemplate) GetConfigurationTemplateID() *string

func (*ConfigurationTemplate) GetCustomRequestNotification

func (o *ConfigurationTemplate) GetCustomRequestNotification() *string

func (*ConfigurationTemplate) GetLinkedAuditMessageChannelIds

func (o *ConfigurationTemplate) GetLinkedAuditMessageChannelIds() []string

func (*ConfigurationTemplate) GetMemberOnCallScheduleIds added in v3.2.0

func (o *ConfigurationTemplate) GetMemberOnCallScheduleIds() []string

func (*ConfigurationTemplate) GetName

func (o *ConfigurationTemplate) GetName() *string

func (*ConfigurationTemplate) GetRequestConfigurationID

func (o *ConfigurationTemplate) GetRequestConfigurationID() *string

func (*ConfigurationTemplate) GetRequireMfaToApprove

func (o *ConfigurationTemplate) GetRequireMfaToApprove() *bool

func (*ConfigurationTemplate) GetRequireMfaToConnect

func (o *ConfigurationTemplate) GetRequireMfaToConnect() *bool

func (*ConfigurationTemplate) GetTicketPropagation

func (o *ConfigurationTemplate) GetTicketPropagation() *TicketPropagationConfiguration

func (*ConfigurationTemplate) GetVisibility

func (o *ConfigurationTemplate) GetVisibility() *VisibilityInfo

type CreateBundleInfo

type CreateBundleInfo struct {
	// The ID of the bundle's admin owner.
	AdminOwnerID string `json:"admin_owner_id"`
	// A brief description of the bundle.
	Description *string `json:"description,omitempty"`
	// The name of the bundle.
	Name string `json:"name"`
}

# CreateBundleInfo Object ### Description The `CreateBundleInfo` object is used to store creation info for a bundle.

### Usage Example Use in the `POST Bundles` endpoint.

func (*CreateBundleInfo) GetAdminOwnerID

func (o *CreateBundleInfo) GetAdminOwnerID() string

func (*CreateBundleInfo) GetDescription

func (o *CreateBundleInfo) GetDescription() *string

func (*CreateBundleInfo) GetName

func (o *CreateBundleInfo) GetName() string

type CreateConfigurationTemplateInfo

type CreateConfigurationTemplateInfo struct {
	// The ID of the owner of the configuration template.
	AdminOwnerID string `json:"admin_owner_id"`
	// The IDs of the break glass users linked to the configuration template.
	BreakGlassUserIds []string `json:"break_glass_user_ids,omitempty"`
	// Custom request notification sent upon request approval for this configuration template.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// The IDs of the audit message channels linked to the configuration template.
	LinkedAuditMessageChannelIds []string `json:"linked_audit_message_channel_ids,omitempty"`
	// The IDs of the on-call schedules linked to the configuration template.
	MemberOnCallScheduleIds []string `json:"member_oncall_schedule_ids"`
	// The name of the configuration template.
	Name string `json:"name"`
	// The request configuration list of the configuration template. If not provided, the default request configuration will be used.
	RequestConfigurations []RequestConfiguration `json:"request_configurations,omitempty"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this configuration template.
	RequireMfaToApprove *bool `default:"false" json:"require_mfa_to_approve"`
	// A bool representing whether or not to require MFA to connect to resources associated with this configuration template.
	RequireMfaToConnect bool `json:"require_mfa_to_connect"`
	// Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.
	TicketPropagation *TicketPropagationConfiguration `json:"ticket_propagation,omitempty"`
	// Visibility infomation of an entity.
	Visibility VisibilityInfo `json:"visibility"`
}

# CreateConfigurationTemplateInfo Object ### Description The `CreateConfigurationTemplateInfo` object is used to store creation info for a configuration template.

### Usage Example Use in the `POST Configuration Templates` endpoint.

func (*CreateConfigurationTemplateInfo) GetAdminOwnerID

func (o *CreateConfigurationTemplateInfo) GetAdminOwnerID() string

func (*CreateConfigurationTemplateInfo) GetBreakGlassUserIds

func (o *CreateConfigurationTemplateInfo) GetBreakGlassUserIds() []string

func (*CreateConfigurationTemplateInfo) GetCustomRequestNotification

func (o *CreateConfigurationTemplateInfo) GetCustomRequestNotification() *string

func (*CreateConfigurationTemplateInfo) GetLinkedAuditMessageChannelIds

func (o *CreateConfigurationTemplateInfo) GetLinkedAuditMessageChannelIds() []string

func (*CreateConfigurationTemplateInfo) GetMemberOnCallScheduleIds added in v3.2.0

func (o *CreateConfigurationTemplateInfo) GetMemberOnCallScheduleIds() []string

func (*CreateConfigurationTemplateInfo) GetName

func (*CreateConfigurationTemplateInfo) GetRequestConfigurations

func (o *CreateConfigurationTemplateInfo) GetRequestConfigurations() []RequestConfiguration

func (*CreateConfigurationTemplateInfo) GetRequireMfaToApprove

func (o *CreateConfigurationTemplateInfo) GetRequireMfaToApprove() *bool

func (*CreateConfigurationTemplateInfo) GetRequireMfaToConnect

func (o *CreateConfigurationTemplateInfo) GetRequireMfaToConnect() bool

func (*CreateConfigurationTemplateInfo) GetTicketPropagation

func (*CreateConfigurationTemplateInfo) GetVisibility

func (CreateConfigurationTemplateInfo) MarshalJSON

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

func (*CreateConfigurationTemplateInfo) UnmarshalJSON

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

type CreateGroupBindingInfo

type CreateGroupBindingInfo struct {
	// The list of groups.
	Groups []Groups `json:"groups"`
	// The ID of the source group.
	SourceGroupID string `json:"source_group_id"`
}

# CreateGroupBindingInfo Object ### Description The `CreateGroupBindingInfo` object is used as an input to the CreateGroupBinding API.

func (*CreateGroupBindingInfo) GetGroups

func (o *CreateGroupBindingInfo) GetGroups() []Groups

func (*CreateGroupBindingInfo) GetSourceGroupID

func (o *CreateGroupBindingInfo) GetSourceGroupID() string

type CreateGroupInfo

type CreateGroupInfo struct {
	// The ID of the app for the group.
	AppID string `json:"app_id"`
	// Custom request notification sent upon request approval.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// A description of the remote group.
	Description *string `json:"description,omitempty"`
	// The type of the group.
	GroupType GroupTypeEnum `json:"group_type"`
	// The name of the remote group.
	Name string `json:"name"`
	// Information that defines the remote group. This replaces the deprecated remote_id and metadata fields.
	RemoteInfo              *GroupRemoteInfo     `json:"remote_info,omitempty"`
	RiskSensitivityOverride *RiskSensitivityEnum `json:"risk_sensitivity_override,omitempty"`
}

# CreateGroupInfo Object ### Description The `CreateGroupInfo` object is used to store creation info for a group.

### Usage Example Use in the `POST Groups` endpoint.

func (*CreateGroupInfo) GetAppID

func (o *CreateGroupInfo) GetAppID() string

func (*CreateGroupInfo) GetCustomRequestNotification

func (o *CreateGroupInfo) GetCustomRequestNotification() *string

func (*CreateGroupInfo) GetDescription

func (o *CreateGroupInfo) GetDescription() *string

func (*CreateGroupInfo) GetGroupType

func (o *CreateGroupInfo) GetGroupType() GroupTypeEnum

func (*CreateGroupInfo) GetName

func (o *CreateGroupInfo) GetName() string

func (*CreateGroupInfo) GetRemoteInfo

func (o *CreateGroupInfo) GetRemoteInfo() *GroupRemoteInfo

func (*CreateGroupInfo) GetRiskSensitivityOverride

func (o *CreateGroupInfo) GetRiskSensitivityOverride() *RiskSensitivityEnum

type CreateMessageChannelInfo

type CreateMessageChannelInfo struct {
	// The remote ID of the message channel
	RemoteID string `json:"remote_id"`
	// The third party provider of the message channel.
	ThirdPartyProvider MessageChannelProviderEnum `json:"third_party_provider"`
}

# CreateMessageChannelInfo Object ### Description The `CreateMessageChannelInfo` object is used to describe the message channel object to be created.

func (*CreateMessageChannelInfo) GetRemoteID

func (o *CreateMessageChannelInfo) GetRemoteID() string

func (*CreateMessageChannelInfo) GetThirdPartyProvider

func (o *CreateMessageChannelInfo) GetThirdPartyProvider() MessageChannelProviderEnum

type CreateOnCallScheduleInfo

type CreateOnCallScheduleInfo struct {
	// The remote ID of the on call schedule
	RemoteID string `json:"remote_id"`
	// The third party provider of the on call schedule.
	ThirdPartyProvider OnCallScheduleProviderEnum `json:"third_party_provider"`
}

# CreateOnCallScheduleInfo Object ### Description The `CreateOnCallScheduleInfo` object is used to describe the on call schedule object to be created.

func (*CreateOnCallScheduleInfo) GetRemoteID

func (o *CreateOnCallScheduleInfo) GetRemoteID() string

func (*CreateOnCallScheduleInfo) GetThirdPartyProvider

func (o *CreateOnCallScheduleInfo) GetThirdPartyProvider() OnCallScheduleProviderEnum

type CreateOwnerInfo

type CreateOwnerInfo struct {
	// The amount of time (in minutes) before the next reviewer is notified. Use 0 to remove escalation policy.
	AccessRequestEscalationPeriod *int64 `json:"access_request_escalation_period,omitempty"`
	// A description of the owner.
	Description *string `json:"description,omitempty"`
	// The name of the owner.
	Name string `json:"name"`
	// The message channel id for the reviewer channel.
	ReviewerMessageChannelID *string `json:"reviewer_message_channel_id,omitempty"`
	// Sync this owner's user list with a source group.
	SourceGroupID *string `json:"source_group_id,omitempty"`
	// Users to add to the created owner. If setting a source_group_id this list must be empty.
	UserIds []string `json:"user_ids"`
}

# CreateOwnerInfo Object ### Description The `CreateOwnerInfo` object is used to store creation info for an owner.

### Usage Example Use in the `POST Owners` endpoint.

func (*CreateOwnerInfo) GetAccessRequestEscalationPeriod

func (o *CreateOwnerInfo) GetAccessRequestEscalationPeriod() *int64

func (*CreateOwnerInfo) GetDescription

func (o *CreateOwnerInfo) GetDescription() *string

func (*CreateOwnerInfo) GetName

func (o *CreateOwnerInfo) GetName() string

func (*CreateOwnerInfo) GetReviewerMessageChannelID

func (o *CreateOwnerInfo) GetReviewerMessageChannelID() *string

func (*CreateOwnerInfo) GetSourceGroupID

func (o *CreateOwnerInfo) GetSourceGroupID() *string

func (*CreateOwnerInfo) GetUserIds

func (o *CreateOwnerInfo) GetUserIds() []string

type CreateRequestInfo

type CreateRequestInfo struct {
	CustomMetadata []CustomMetadata `json:"custom_metadata,omitempty"`
	// The duration of the request in minutes. -1 represents an indefinite duration
	DurationMinutes int64                     `json:"duration_minutes"`
	Groups          []CreateRequestInfoGroups `json:"groups"`
	Reason          string                    `json:"reason"`
	Resources       []Resources               `json:"resources"`
	SupportTicket   *SupportTicket            `json:"support_ticket,omitempty"`
	// The ID of the group the request is for.  Should not be specified if target_user_id is specified.
	TargetGroupID *string `json:"target_group_id,omitempty"`
	// The ID of the user to be granted access. Should not be specified if target_group_id is specified.
	TargetUserID *string `json:"target_user_id,omitempty"`
}

CreateRequestInfo - All the information needed for creating a request

func (*CreateRequestInfo) GetCustomMetadata

func (o *CreateRequestInfo) GetCustomMetadata() []CustomMetadata

func (*CreateRequestInfo) GetDurationMinutes

func (o *CreateRequestInfo) GetDurationMinutes() int64

func (*CreateRequestInfo) GetGroups

func (o *CreateRequestInfo) GetGroups() []CreateRequestInfoGroups

func (*CreateRequestInfo) GetReason

func (o *CreateRequestInfo) GetReason() string

func (*CreateRequestInfo) GetResources

func (o *CreateRequestInfo) GetResources() []Resources

func (*CreateRequestInfo) GetSupportTicket

func (o *CreateRequestInfo) GetSupportTicket() *SupportTicket

func (*CreateRequestInfo) GetTargetGroupID

func (o *CreateRequestInfo) GetTargetGroupID() *string

func (*CreateRequestInfo) GetTargetUserID

func (o *CreateRequestInfo) GetTargetUserID() *string

type CreateRequestInfoGroups

type CreateRequestInfoGroups struct {
	// The ID of the access level requested on the remote system.
	AccessLevelName *string `json:"access_level_name,omitempty"`
	// The ID of the access level requested on the remote system.
	AccessLevelRemoteID *string `json:"access_level_remote_id,omitempty"`
	// The ID of the group requested. Should not be specified if resource_id is specified.
	ID string `json:"id"`
}

func (*CreateRequestInfoGroups) GetAccessLevelName

func (o *CreateRequestInfoGroups) GetAccessLevelName() *string

func (*CreateRequestInfoGroups) GetAccessLevelRemoteID

func (o *CreateRequestInfoGroups) GetAccessLevelRemoteID() *string

func (*CreateRequestInfoGroups) GetID

func (o *CreateRequestInfoGroups) GetID() string

type CreateResourceInfo

type CreateResourceInfo struct {
	// The ID of the app for the resource.
	AppID string `json:"app_id"`
	// Custom request notification sent upon request approval.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// A description of the remote resource.
	Description *string `json:"description,omitempty"`
	// The name of the remote resource.
	Name string `json:"name"`
	// Information that defines the remote resource. This replaces the deprecated remote_id and metadata fields.
	RemoteInfo *ResourceRemoteInfo `json:"remote_info,omitempty"`
	// The type of the resource.
	ResourceType            ResourceTypeEnum     `json:"resource_type"`
	RiskSensitivityOverride *RiskSensitivityEnum `json:"risk_sensitivity_override,omitempty"`
}

# CreateResourceInfo Object ### Description The `CreateResourceInfo` object is used to store creation info for a resource.

### Usage Example Use in the `POST Resources` endpoint.

func (*CreateResourceInfo) GetAppID

func (o *CreateResourceInfo) GetAppID() string

func (*CreateResourceInfo) GetCustomRequestNotification

func (o *CreateResourceInfo) GetCustomRequestNotification() *string

func (*CreateResourceInfo) GetDescription

func (o *CreateResourceInfo) GetDescription() *string

func (*CreateResourceInfo) GetName

func (o *CreateResourceInfo) GetName() string

func (*CreateResourceInfo) GetRemoteInfo

func (o *CreateResourceInfo) GetRemoteInfo() *ResourceRemoteInfo

func (*CreateResourceInfo) GetResourceType

func (o *CreateResourceInfo) GetResourceType() ResourceTypeEnum

func (*CreateResourceInfo) GetRiskSensitivityOverride

func (o *CreateResourceInfo) GetRiskSensitivityOverride() *RiskSensitivityEnum

type CreateTagInfo

type CreateTagInfo struct {
	// The key of the tag to create.
	Key string `json:"tag_key"`
	// The value of the tag to create.
	Value *string `json:"tag_value,omitempty"`
}

# CreateTagInfo Object ### Description The `CreateTagInfo` object is used to represent configuration for a new tag.

### Usage Example Use in the `POST Tag` endpoint.

func (*CreateTagInfo) GetKey

func (o *CreateTagInfo) GetKey() string

func (*CreateTagInfo) GetValue

func (o *CreateTagInfo) GetValue() *string

type CreateUARInfo

type CreateUARInfo struct {
	// The last day for reviewers to complete their access reviews.
	Deadline time.Time `json:"deadline"`
	// The name of the UAR.
	Name                   string  `json:"name"`
	ReminderIncludeManager *bool   `json:"reminder_include_manager,omitempty"`
	ReminderSchedule       []int64 `json:"reminder_schedule,omitempty"`
	// A policy for auto-assigning reviewers. If auto-assignment is on, specific assignments can still be manually adjusted after the access review is started. Default is Manually.
	ReviewerAssignmentPolicy UARReviewerAssignmentPolicyEnum `json:"reviewer_assignment_policy"`
	// A bool representing whether to present a warning when a user is the only reviewer for themself. Default is False.
	SelfReviewAllowed bool `json:"self_review_allowed"`
	// A bool representing whether to send a notification to reviewers when they're assigned a new review. Default is False.
	SendReviewerAssignmentNotification bool `json:"send_reviewer_assignment_notification"`
	// The time zone name (as defined by the IANA Time Zone database) used in the access review deadline and exported audit report. Default is America/Los_Angeles.
	TimeZone string `json:"time_zone"`
	// If set, the access review will only contain resources and groups that match at least one of the filters in scope.
	UarScope *UARScope `json:"uar_scope,omitempty"`
}

CreateUARInfo - Information needed to start a user access review.

func (*CreateUARInfo) GetDeadline

func (o *CreateUARInfo) GetDeadline() time.Time

func (*CreateUARInfo) GetName

func (o *CreateUARInfo) GetName() string

func (*CreateUARInfo) GetReminderIncludeManager

func (o *CreateUARInfo) GetReminderIncludeManager() *bool

func (*CreateUARInfo) GetReminderSchedule

func (o *CreateUARInfo) GetReminderSchedule() []int64

func (*CreateUARInfo) GetReviewerAssignmentPolicy

func (o *CreateUARInfo) GetReviewerAssignmentPolicy() UARReviewerAssignmentPolicyEnum

func (*CreateUARInfo) GetSelfReviewAllowed

func (o *CreateUARInfo) GetSelfReviewAllowed() bool

func (*CreateUARInfo) GetSendReviewerAssignmentNotification

func (o *CreateUARInfo) GetSendReviewerAssignmentNotification() bool

func (*CreateUARInfo) GetTimeZone

func (o *CreateUARInfo) GetTimeZone() string

func (*CreateUARInfo) GetUarScope

func (o *CreateUARInfo) GetUarScope() *UARScope

func (CreateUARInfo) MarshalJSON

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

func (*CreateUARInfo) UnmarshalJSON

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

type CustomConnector

type CustomConnector struct {
	// A bool representing whether or not the resource can have usage data.
	CanHaveUsageEvents bool `json:"can_have_usage_events"`
	// The id of the resource in the end system
	RemoteResourceID string `json:"remote_resource_id"`
}

CustomConnector - Remote info for a custom connector resource.

func (*CustomConnector) GetCanHaveUsageEvents

func (o *CustomConnector) GetCanHaveUsageEvents() bool

func (*CustomConnector) GetRemoteResourceID

func (o *CustomConnector) GetRemoteResourceID() string

type CustomMetadata

type CustomMetadata struct {
	Name string `json:"name"`
	// The type of the custom request field.
	Type  RequestTemplateCustomFieldTypeEnum `json:"type"`
	Value string                             `json:"value"`
}

func (*CustomMetadata) GetName

func (o *CustomMetadata) GetName() string

func (*CustomMetadata) GetType

func (*CustomMetadata) GetValue

func (o *CustomMetadata) GetValue() string

type DatastaxAstraRole added in v3.2.1

type DatastaxAstraRole struct {
	// The id of the role.
	RoleID string `json:"role_id"`
}

DatastaxAstraRole - Remote info for an Astra role.

func (*DatastaxAstraRole) GetRoleID added in v3.2.1

func (o *DatastaxAstraRole) GetRoleID() string

type DuoGroup

type DuoGroup struct {
	// The id of the Duo Security group.
	GroupID string `json:"group_id"`
}

DuoGroup - Remote info for Duo Security group.

func (*DuoGroup) GetGroupID

func (o *DuoGroup) GetGroupID() string

type EntityTypeEnum

type EntityTypeEnum string

EntityTypeEnum - The type of an entity.

const (
	EntityTypeEnumGroup    EntityTypeEnum = "GROUP"
	EntityTypeEnumResource EntityTypeEnum = "RESOURCE"
	EntityTypeEnumUser     EntityTypeEnum = "USER"
)

func (EntityTypeEnum) ToPointer

func (e EntityTypeEnum) ToPointer() *EntityTypeEnum

func (*EntityTypeEnum) UnmarshalJSON

func (e *EntityTypeEnum) UnmarshalJSON(data []byte) error

type Event

type Event struct {
	// The email of the actor user.
	ActorEmail *string `json:"actor_email,omitempty"`
	// The IP address of the event actor.
	ActorIPAddress *string `json:"actor_ip_address,omitempty"`
	// The name of the actor user.
	ActorName any `json:"actor_name"`
	// The ID of the actor user.
	ActorUserID string `json:"actor_user_id"`
	// The name of the API token used to create the event.
	APITokenName *string `json:"api_token_name,omitempty"`
	// The preview of the API token used to create the event.
	APITokenPreview *string `json:"api_token_preview,omitempty"`
	// The day and time the event was created.
	CreatedAt time.Time `json:"created_at"`
	// The ID of the event.
	EventID string `json:"event_id"`
	// The event type.
	EventType string     `json:"event_type"`
	SubEvents []SubEvent `json:"sub_events,omitempty"`
}

# Event Object ### Description The `Event` object is used to represent an event.

### Usage Example Fetch from the `LIST Events` endpoint.

func (*Event) GetAPITokenName

func (o *Event) GetAPITokenName() *string

func (*Event) GetAPITokenPreview

func (o *Event) GetAPITokenPreview() *string

func (*Event) GetActorEmail

func (o *Event) GetActorEmail() *string

func (*Event) GetActorIPAddress

func (o *Event) GetActorIPAddress() *string

func (*Event) GetActorName

func (o *Event) GetActorName() any

func (*Event) GetActorUserID

func (o *Event) GetActorUserID() string

func (*Event) GetCreatedAt

func (o *Event) GetCreatedAt() time.Time

func (*Event) GetEventID

func (o *Event) GetEventID() string

func (*Event) GetEventType

func (o *Event) GetEventType() string

func (*Event) GetSubEvents

func (o *Event) GetSubEvents() []SubEvent

func (Event) MarshalJSON

func (e Event) MarshalJSON() ([]byte, error)

func (*Event) UnmarshalJSON

func (e *Event) UnmarshalJSON(data []byte) error

type FieldValue

type FieldValue struct {
	Str     *string `queryParam:"inline" name:"field_value"`
	Boolean *bool   `queryParam:"inline" name:"field_value"`

	Type FieldValueType
}

func CreateFieldValueBoolean

func CreateFieldValueBoolean(boolean bool) FieldValue

func CreateFieldValueStr

func CreateFieldValueStr(str string) FieldValue

func (FieldValue) MarshalJSON

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

func (*FieldValue) UnmarshalJSON

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

type FieldValueType

type FieldValueType string
const (
	FieldValueTypeStr     FieldValueType = "str"
	FieldValueTypeBoolean FieldValueType = "boolean"
)

type FilterOperator

type FilterOperator string

FilterOperator - Specifies whether entities must match all (AND) or any (OR) of the filters.

const (
	FilterOperatorAny FilterOperator = "ANY"
	FilterOperatorAll FilterOperator = "ALL"
)

func (FilterOperator) ToPointer

func (e FilterOperator) ToPointer() *FilterOperator

func (*FilterOperator) UnmarshalJSON

func (e *FilterOperator) UnmarshalJSON(data []byte) error

type GcpBigQueryDataset

type GcpBigQueryDataset struct {
	// The id of the dataset.
	DatasetID string `json:"dataset_id"`
	// The id of the project the dataset is in.
	ProjectID string `json:"project_id"`
}

GcpBigQueryDataset - Remote info for GCP BigQuery Dataset.

func (*GcpBigQueryDataset) GetDatasetID

func (o *GcpBigQueryDataset) GetDatasetID() string

func (*GcpBigQueryDataset) GetProjectID

func (o *GcpBigQueryDataset) GetProjectID() string

type GcpBigQueryTable

type GcpBigQueryTable struct {
	// The id of the dataset the table is in.
	DatasetID string `json:"dataset_id"`
	// The id of the project the table is in.
	ProjectID string `json:"project_id"`
	// The id of the table.
	TableID string `json:"table_id"`
}

GcpBigQueryTable - Remote info for GCP BigQuery Table.

func (*GcpBigQueryTable) GetDatasetID

func (o *GcpBigQueryTable) GetDatasetID() string

func (*GcpBigQueryTable) GetProjectID

func (o *GcpBigQueryTable) GetProjectID() string

func (*GcpBigQueryTable) GetTableID

func (o *GcpBigQueryTable) GetTableID() string

type GcpBucket

type GcpBucket struct {
	// The id of the bucket.
	BucketID string `json:"bucket_id"`
}

GcpBucket - Remote info for GCP bucket.

func (*GcpBucket) GetBucketID

func (o *GcpBucket) GetBucketID() string

type GcpComputeInstance

type GcpComputeInstance struct {
	// The id of the instance.
	InstanceID string `json:"instance_id"`
	// The id of the project the instance is in.
	ProjectID string `json:"project_id"`
	// The zone the instance is in.
	Zone string `json:"zone"`
}

GcpComputeInstance - Remote info for GCP compute instance.

func (*GcpComputeInstance) GetInstanceID

func (o *GcpComputeInstance) GetInstanceID() string

func (*GcpComputeInstance) GetProjectID

func (o *GcpComputeInstance) GetProjectID() string

func (*GcpComputeInstance) GetZone

func (o *GcpComputeInstance) GetZone() string

type GcpFolder

type GcpFolder struct {
	// The id of the folder.
	FolderID string `json:"folder_id"`
}

GcpFolder - Remote info for GCP folder.

func (*GcpFolder) GetFolderID

func (o *GcpFolder) GetFolderID() string

type GcpGkeCluster

type GcpGkeCluster struct {
	// The name of the GKE cluster.
	ClusterName string `json:"cluster_name"`
}

GcpGkeCluster - Remote info for GCP GKE cluster.

func (*GcpGkeCluster) GetClusterName

func (o *GcpGkeCluster) GetClusterName() string

type GcpOrganization

type GcpOrganization struct {
	// The id of the organization.
	OrganizationID string `json:"organization_id"`
}

GcpOrganization - Remote info for GCP organization.

func (*GcpOrganization) GetOrganizationID

func (o *GcpOrganization) GetOrganizationID() string

type GcpProject

type GcpProject struct {
	// The id of the project.
	ProjectID string `json:"project_id"`
}

GcpProject - Remote info for GCP project.

func (*GcpProject) GetProjectID

func (o *GcpProject) GetProjectID() string

type GcpSQLInstance

type GcpSQLInstance struct {
	// The id of the SQL instance.
	InstanceID string `json:"instance_id"`
	// The id of the project the instance is in.
	ProjectID string `json:"project_id"`
}

GcpSQLInstance - Remote info for GCP SQL instance.

func (*GcpSQLInstance) GetInstanceID

func (o *GcpSQLInstance) GetInstanceID() string

func (*GcpSQLInstance) GetProjectID

func (o *GcpSQLInstance) GetProjectID() string

type GcpServiceAccount

type GcpServiceAccount struct {
	// The email of the service account.
	Email string `json:"email"`
	// The id of the project the service account is in.
	ProjectID string `json:"project_id"`
	// The id of the service account.
	ServiceAccountID string `json:"service_account_id"`
}

GcpServiceAccount - Remote info for a GCP service account.

func (*GcpServiceAccount) GetEmail

func (o *GcpServiceAccount) GetEmail() string

func (*GcpServiceAccount) GetProjectID

func (o *GcpServiceAccount) GetProjectID() string

func (*GcpServiceAccount) GetServiceAccountID

func (o *GcpServiceAccount) GetServiceAccountID() string

type GithubOrgRole added in v3.1.2

type GithubOrgRole struct {
	// The id of the role.
	RoleID string `json:"role_id"`
}

GithubOrgRole - Remote info for GitHub organization role.

func (*GithubOrgRole) GetRoleID added in v3.1.2

func (o *GithubOrgRole) GetRoleID() string

type GithubRepo

type GithubRepo struct {
	// The name of the repository.
	RepoName string `json:"repo_name"`
}

GithubRepo - Remote info for GitHub repository.

func (*GithubRepo) GetRepoName

func (o *GithubRepo) GetRepoName() string

type GithubTeam

type GithubTeam struct {
	// The slug of the GitHub team.
	TeamSlug string `json:"team_slug"`
}

GithubTeam - Remote info for GitHub team.

func (*GithubTeam) GetTeamSlug

func (o *GithubTeam) GetTeamSlug() string

type GitlabGroup

type GitlabGroup struct {
	// The id of the Gitlab group.
	GroupID string `json:"group_id"`
}

GitlabGroup - Remote info for Gitlab group.

func (*GitlabGroup) GetGroupID

func (o *GitlabGroup) GetGroupID() string

type GitlabProject

type GitlabProject struct {
	// The id of the project.
	ProjectID string `json:"project_id"`
}

GitlabProject - Remote info for Gitlab project.

func (*GitlabProject) GetProjectID

func (o *GitlabProject) GetProjectID() string

type GoogleGroup

type GoogleGroup struct {
	// The id of the Google group.
	GroupID string `json:"group_id"`
}

GoogleGroup - Remote info for Google group.

func (*GoogleGroup) GetGroupID

func (o *GoogleGroup) GetGroupID() string

type GoogleWorkspaceRole

type GoogleWorkspaceRole struct {
	// The id of the role.
	RoleID string `json:"role_id"`
}

GoogleWorkspaceRole - Remote info for GCP workspace role.

func (*GoogleWorkspaceRole) GetRoleID

func (o *GoogleWorkspaceRole) GetRoleID() string

type Group

type Group struct {
	// The ID of the owner of the group.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// The ID of the group's app.
	AppID *string `json:"app_id,omitempty"`
	// Custom request notification sent to the requester when the request is approved.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// A description of the group.
	Description *string `json:"description,omitempty"`
	// The duration for which access can be extended (in minutes). Set to 0 to disable extensions. When > 0, extensions are enabled for the specified duration.
	ExtensionsDurationInMinutes *int64 `json:"extensions_duration_in_minutes,omitempty"`
	// The ID of the associated group binding.
	GroupBindingID *string `json:"group_binding_id,omitempty"`
	// A list of User IDs for the group leaders of the group
	GroupLeaderUserIds []string `json:"group_leader_user_ids,omitempty"`
	// The type of the group.
	GroupType *GroupTypeEnum `json:"group_type,omitempty"`
	// The ID of the group.
	ID string `json:"group_id"`
	// Represents a sync task that has been completed, either successfully or with errors.
	LastSuccessfulSync *SyncTask `json:"last_successful_sync,omitempty"`
	// The name of the group.
	Name *string `json:"name,omitempty"`
	// Information that defines the remote group. This replaces the deprecated remote_id and metadata fields.
	RemoteInfo *GroupRemoteInfo `json:"remote_info,omitempty"`
	// The name of the remote.
	RemoteName *string `json:"remote_name,omitempty"`
	// A list of request configurations for this group.
	RequestConfigurations []RequestConfiguration `json:"request_configurations,omitempty"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this group.
	RequireMfaToApprove *bool `default:"false" json:"require_mfa_to_approve"`
	// The risk sensitivity level for the group. When an override is set, this field will match that.
	RiskSensitivity         *RiskSensitivity         `json:"risk_sensitivity,omitempty"`
	RiskSensitivityOverride *RiskSensitivityOverride `json:"risk_sensitivity_override,omitempty"`
}

# Group Object ### Description The `Group` object is used to represent a group.

### Usage Example Update from the `UPDATE Groups` endpoint.

func (*Group) GetAdminOwnerID

func (o *Group) GetAdminOwnerID() *string

func (*Group) GetAppID

func (o *Group) GetAppID() *string

func (*Group) GetCustomRequestNotification

func (o *Group) GetCustomRequestNotification() *string

func (*Group) GetDescription

func (o *Group) GetDescription() *string

func (*Group) GetExtensionsDurationInMinutes added in v3.2.0

func (o *Group) GetExtensionsDurationInMinutes() *int64

func (*Group) GetGroupBindingID

func (o *Group) GetGroupBindingID() *string

func (*Group) GetGroupLeaderUserIds

func (o *Group) GetGroupLeaderUserIds() []string

func (*Group) GetGroupType

func (o *Group) GetGroupType() *GroupTypeEnum

func (*Group) GetID

func (o *Group) GetID() string

func (*Group) GetLastSuccessfulSync added in v3.1.1

func (o *Group) GetLastSuccessfulSync() *SyncTask

func (*Group) GetName

func (o *Group) GetName() *string

func (*Group) GetRemoteInfo

func (o *Group) GetRemoteInfo() *GroupRemoteInfo

func (*Group) GetRemoteName

func (o *Group) GetRemoteName() *string

func (*Group) GetRequestConfigurations

func (o *Group) GetRequestConfigurations() []RequestConfiguration

func (*Group) GetRequireMfaToApprove

func (o *Group) GetRequireMfaToApprove() *bool

func (*Group) GetRiskSensitivity

func (o *Group) GetRiskSensitivity() *RiskSensitivity

func (*Group) GetRiskSensitivityOverride

func (o *Group) GetRiskSensitivityOverride() *RiskSensitivityOverride

func (Group) MarshalJSON

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

func (*Group) UnmarshalJSON

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

type GroupAccessLevel

type GroupAccessLevel struct {
	// The human-readable name of the access level.
	AccessLevelName string `json:"access_level_name"`
	// The machine-readable identifier of the access level.
	AccessLevelRemoteID string `json:"access_level_remote_id"`
}

GroupAccessLevel - # Access Level Object ### Description The `GroupAccessLevel` object is used to represent the level of access that a user has to a group or a group has to a group. The "default" access level is a `GroupAccessLevel` object whose fields are all empty strings.

### Usage Example View the `GroupAccessLevel` of a group/user or group/group pair to see the level of access granted to the group.

func (*GroupAccessLevel) GetAccessLevelName

func (o *GroupAccessLevel) GetAccessLevelName() string

func (*GroupAccessLevel) GetAccessLevelRemoteID

func (o *GroupAccessLevel) GetAccessLevelRemoteID() string

type GroupBinding

type GroupBinding struct {
	// The date the group binding was created.
	CreatedAt time.Time `json:"created_at"`
	// The ID of the user that created the group binding.
	CreatedByID string `json:"created_by_id"`
	// The ID of the group binding.
	GroupBindingID string `json:"group_binding_id"`
	// The list of groups.
	Groups []GroupBindingGroup `json:"groups"`
	// The ID of the source group.
	SourceGroupID string `json:"source_group_id"`
}

GroupBinding - # Group Binding Object ### Description The `GroupBinding` object is used to represent a group binding.

### Usage Example Get group bindings from the `GET Group Bindings` endpoint.

func (*GroupBinding) GetCreatedAt

func (o *GroupBinding) GetCreatedAt() time.Time

func (*GroupBinding) GetCreatedByID

func (o *GroupBinding) GetCreatedByID() string

func (*GroupBinding) GetGroupBindingID

func (o *GroupBinding) GetGroupBindingID() string

func (*GroupBinding) GetGroups

func (o *GroupBinding) GetGroups() []GroupBindingGroup

func (*GroupBinding) GetSourceGroupID

func (o *GroupBinding) GetSourceGroupID() string

func (GroupBinding) MarshalJSON

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

func (*GroupBinding) UnmarshalJSON

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

type GroupBindingGroup

type GroupBindingGroup struct {
	// The ID of the group.
	GroupID string `json:"group_id"`
	// The type of the group.
	GroupType GroupTypeEnum `json:"group_type"`
}

GroupBindingGroup - # Group Binding Group Object ### Description The `GroupBindingGroup` object is used to represent a group binding group.

### Usage Example Get group binding groups from the `GET Group Bindings` endpoint.

func (*GroupBindingGroup) GetGroupID

func (o *GroupBindingGroup) GetGroupID() string

func (*GroupBindingGroup) GetGroupType

func (o *GroupBindingGroup) GetGroupType() GroupTypeEnum

type GroupContainingGroup

type GroupContainingGroup struct {
	// The groupID of the containing group.
	ContainingGroupID string `json:"containing_group_id"`
}

# GroupContainingGroup Object ### Description The `GroupContainingGroup` object is used to represent a relationship between a group and a group.

func (*GroupContainingGroup) GetContainingGroupID

func (o *GroupContainingGroup) GetContainingGroupID() string

type GroupRemoteInfo

type GroupRemoteInfo struct {
	// Remote info for Active Directory group.
	ActiveDirectoryGroup *ActiveDirectoryGroup `json:"active_directory_group,omitempty"`
	// Remote info for Microsoft Entra ID Microsoft 365 group.
	AzureAdMicrosoft365Group *AzureAdMicrosoft365Group `json:"azure_ad_microsoft_365_group,omitempty"`
	// Remote info for Microsoft Entra ID Security group.
	AzureAdSecurityGroup *AzureAdSecurityGroup `json:"azure_ad_security_group,omitempty"`
	// Remote info for Duo Security group.
	DuoGroup *DuoGroup `json:"duo_group,omitempty"`
	// Remote info for GitHub team.
	GithubTeam *GithubTeam `json:"github_team,omitempty"`
	// Remote info for Gitlab group.
	GitlabGroup *GitlabGroup `json:"gitlab_group,omitempty"`
	// Remote info for Google group.
	GoogleGroup *GoogleGroup `json:"google_group,omitempty"`
	// Remote info for LDAP group.
	LdapGroup *LdapGroup `json:"ldap_group,omitempty"`
	// Remote info for Okta Directory group.
	OktaGroup *OktaGroup `json:"okta_group,omitempty"`
	// Remote info for Okta Directory group rule.
	OktaGroupRule *OktaGroupRule `json:"okta_group_rule,omitempty"`
	// Remote info for Snowflake role.
	SnowflakeRole *SnowflakeRole `json:"snowflake_role,omitempty"`
	// Remote info for Workday User Security group.
	WorkdayUserSecurityGroup *WorkdayUserSecurityGroup `json:"workday_user_security_group,omitempty"`
}

GroupRemoteInfo - Information that defines the remote group. This replaces the deprecated remote_id and metadata fields.

func (*GroupRemoteInfo) GetActiveDirectoryGroup

func (o *GroupRemoteInfo) GetActiveDirectoryGroup() *ActiveDirectoryGroup

func (*GroupRemoteInfo) GetAzureAdMicrosoft365Group

func (o *GroupRemoteInfo) GetAzureAdMicrosoft365Group() *AzureAdMicrosoft365Group

func (*GroupRemoteInfo) GetAzureAdSecurityGroup

func (o *GroupRemoteInfo) GetAzureAdSecurityGroup() *AzureAdSecurityGroup

func (*GroupRemoteInfo) GetDuoGroup

func (o *GroupRemoteInfo) GetDuoGroup() *DuoGroup

func (*GroupRemoteInfo) GetGithubTeam

func (o *GroupRemoteInfo) GetGithubTeam() *GithubTeam

func (*GroupRemoteInfo) GetGitlabGroup

func (o *GroupRemoteInfo) GetGitlabGroup() *GitlabGroup

func (*GroupRemoteInfo) GetGoogleGroup

func (o *GroupRemoteInfo) GetGoogleGroup() *GoogleGroup

func (*GroupRemoteInfo) GetLdapGroup

func (o *GroupRemoteInfo) GetLdapGroup() *LdapGroup

func (*GroupRemoteInfo) GetOktaGroup

func (o *GroupRemoteInfo) GetOktaGroup() *OktaGroup

func (*GroupRemoteInfo) GetOktaGroupRule

func (o *GroupRemoteInfo) GetOktaGroupRule() *OktaGroupRule

func (*GroupRemoteInfo) GetSnowflakeRole

func (o *GroupRemoteInfo) GetSnowflakeRole() *SnowflakeRole

func (*GroupRemoteInfo) GetWorkdayUserSecurityGroup

func (o *GroupRemoteInfo) GetWorkdayUserSecurityGroup() *WorkdayUserSecurityGroup

type GroupResource

type GroupResource struct {
	// # Access Level Object
	// ### Description
	// The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access
	// level is a `AccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.
	AccessLevel ResourceAccessLevel `json:"access_level"`
	// The ID of the group.
	GroupID string `json:"group_id"`
	// The ID of the resource.
	ResourceID string `json:"resource_id"`
}

# GroupResource Object ### Description The `GroupResource` object is used to represent a relationship between a group and a resource.

func (*GroupResource) GetAccessLevel

func (o *GroupResource) GetAccessLevel() ResourceAccessLevel

func (*GroupResource) GetGroupID

func (o *GroupResource) GetGroupID() string

func (*GroupResource) GetResourceID

func (o *GroupResource) GetResourceID() string

type GroupResourceList

type GroupResourceList struct {
	GroupResources []GroupResource `json:"group_resources"`
}

func (*GroupResourceList) GetGroupResources

func (o *GroupResourceList) GetGroupResources() []GroupResource

type GroupTypeEnum

type GroupTypeEnum string

GroupTypeEnum - The type of the group.

const (
	GroupTypeEnumActiveDirectoryGroup     GroupTypeEnum = "ACTIVE_DIRECTORY_GROUP"
	GroupTypeEnumAwsSsoGroup              GroupTypeEnum = "AWS_SSO_GROUP"
	GroupTypeEnumDatabricksAccountGroup   GroupTypeEnum = "DATABRICKS_ACCOUNT_GROUP"
	GroupTypeEnumDuoGroup                 GroupTypeEnum = "DUO_GROUP"
	GroupTypeEnumGitHubTeam               GroupTypeEnum = "GIT_HUB_TEAM"
	GroupTypeEnumGitLabGroup              GroupTypeEnum = "GIT_LAB_GROUP"
	GroupTypeEnumGoogleGroupsGroup        GroupTypeEnum = "GOOGLE_GROUPS_GROUP"
	GroupTypeEnumGoogleGroupsGkeGroup     GroupTypeEnum = "GOOGLE_GROUPS_GKE_GROUP"
	GroupTypeEnumLdapGroup                GroupTypeEnum = "LDAP_GROUP"
	GroupTypeEnumOktaGroup                GroupTypeEnum = "OKTA_GROUP"
	GroupTypeEnumOktaGroupRule            GroupTypeEnum = "OKTA_GROUP_RULE"
	GroupTypeEnumTailscaleGroup           GroupTypeEnum = "TAILSCALE_GROUP"
	GroupTypeEnumOpalGroup                GroupTypeEnum = "OPAL_GROUP"
	GroupTypeEnumOpalAccessRule           GroupTypeEnum = "OPAL_ACCESS_RULE"
	GroupTypeEnumAzureAdSecurityGroup     GroupTypeEnum = "AZURE_AD_SECURITY_GROUP"
	GroupTypeEnumAzureAdMicrosoft365Group GroupTypeEnum = "AZURE_AD_MICROSOFT_365_GROUP"
	GroupTypeEnumConnectorGroup           GroupTypeEnum = "CONNECTOR_GROUP"
	GroupTypeEnumSnowflakeRole            GroupTypeEnum = "SNOWFLAKE_ROLE"
	GroupTypeEnumWorkdayUserSecurityGroup GroupTypeEnum = "WORKDAY_USER_SECURITY_GROUP"
)

func (GroupTypeEnum) ToPointer

func (e GroupTypeEnum) ToPointer() *GroupTypeEnum

func (*GroupTypeEnum) UnmarshalJSON

func (e *GroupTypeEnum) UnmarshalJSON(data []byte) error

type GroupUser

type GroupUser struct {
	// # Access Level Object
	// ### Description
	// The `GroupAccessLevel` object is used to represent the level of access that a user has to a group or a group has to a group. The "default" access
	// level is a `GroupAccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `GroupAccessLevel` of a group/user or group/group pair to see the level of access granted to the group.
	AccessLevel *GroupAccessLevel `json:"access_level,omitempty"`
	// The user's email.
	Email string `json:"email"`
	// The day and time the user's access will expire.
	ExpirationDate *time.Time `json:"expiration_date,omitempty"`
	// The user's full name.
	FullName string `json:"full_name"`
	// The ID of the group.
	GroupID string `json:"group_id"`
	// The state of whether the push action was propagated to the remote system. If this is null, the access was synced from the remote system.
	PropagationStatus *PropagationStatus `json:"propagation_status,omitempty"`
	// The ID of the user.
	UserID string `json:"user_id"`
}

GroupUser - # Group Access User Object ### Description The `GroupAccessUser` object is used to represent a user with access to a group.

### Usage Example Fetch from the `LIST GroupUsers` endpoint.

func (*GroupUser) GetAccessLevel

func (o *GroupUser) GetAccessLevel() *GroupAccessLevel

func (*GroupUser) GetEmail

func (o *GroupUser) GetEmail() string

func (*GroupUser) GetExpirationDate

func (o *GroupUser) GetExpirationDate() *time.Time

func (*GroupUser) GetFullName

func (o *GroupUser) GetFullName() string

func (*GroupUser) GetGroupID

func (o *GroupUser) GetGroupID() string

func (*GroupUser) GetPropagationStatus

func (o *GroupUser) GetPropagationStatus() *PropagationStatus

func (*GroupUser) GetUserID

func (o *GroupUser) GetUserID() string

func (GroupUser) MarshalJSON

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

func (*GroupUser) UnmarshalJSON

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

type GroupUserList

type GroupUserList struct {
	Results []GroupUser `json:"results,omitempty"`
}

func (*GroupUserList) GetResults

func (o *GroupUserList) GetResults() []GroupUser

type GroupVisibility

type GroupVisibility string

GroupVisibility - Specifies what users can see during an Access Review

const (
	GroupVisibilityStrict                 GroupVisibility = "STRICT"
	GroupVisibilityViewVisibleAndAssigned GroupVisibility = "VIEW_VISIBLE_AND_ASSIGNED"
	GroupVisibilityViewAll                GroupVisibility = "VIEW_ALL"
)

func (GroupVisibility) ToPointer

func (e GroupVisibility) ToPointer() *GroupVisibility

func (*GroupVisibility) UnmarshalJSON

func (e *GroupVisibility) UnmarshalJSON(data []byte) error

type Groups

type Groups struct {
	// The ID of the group.
	GroupID string `json:"group_id"`
}

func (*Groups) GetGroupID

func (o *Groups) GetGroupID() string

type IdpGroupMapping

type IdpGroupMapping struct {
	// The alias of the group.
	Alias *string `json:"alias,omitempty"`
	// The ID of the group.
	GroupID string `json:"group_id"`
	// A bool representing whether or not the group is hidden from the end user.
	HiddenFromEndUser bool `json:"hidden_from_end_user"`
}

IdpGroupMapping - Information about a group mapping.

func (*IdpGroupMapping) GetAlias

func (o *IdpGroupMapping) GetAlias() *string

func (*IdpGroupMapping) GetGroupID

func (o *IdpGroupMapping) GetGroupID() string

func (*IdpGroupMapping) GetHiddenFromEndUser

func (o *IdpGroupMapping) GetHiddenFromEndUser() bool

type IdpGroupMappingList

type IdpGroupMappingList struct {
	Mappings []IdpGroupMapping `json:"mappings"`
}

func (*IdpGroupMappingList) GetMappings

func (o *IdpGroupMappingList) GetMappings() []IdpGroupMapping

type LdapGroup

type LdapGroup struct {
	// The id of the LDAP group.
	GroupID string `json:"group_id"`
}

LdapGroup - Remote info for LDAP group.

func (*LdapGroup) GetGroupID

func (o *LdapGroup) GetGroupID() string

type MessageChannel

type MessageChannel struct {
	// The ID of the message channel.
	ID string `json:"message_channel_id"`
	// A bool representing whether or not the message channel is private.
	IsPrivate *bool `json:"is_private,omitempty"`
	// The name of the message channel.
	Name *string `json:"name,omitempty"`
	// The remote ID of the message channel
	RemoteID *string `json:"remote_id,omitempty"`
	// The third party provider of the message channel.
	ThirdPartyProvider *MessageChannelProviderEnum `json:"third_party_provider,omitempty"`
}

# MessageChannel Object ### Description The `MessageChannel` object is used to represent a message channel.

### Usage Example Update a groups message channel from the `UPDATE Groups` endpoint.

func (*MessageChannel) GetID

func (o *MessageChannel) GetID() string

func (*MessageChannel) GetIsPrivate

func (o *MessageChannel) GetIsPrivate() *bool

func (*MessageChannel) GetName

func (o *MessageChannel) GetName() *string

func (*MessageChannel) GetRemoteID

func (o *MessageChannel) GetRemoteID() *string

func (*MessageChannel) GetThirdPartyProvider

func (o *MessageChannel) GetThirdPartyProvider() *MessageChannelProviderEnum

type MessageChannelIDList

type MessageChannelIDList struct {
	MessageChannelIds []string `json:"message_channel_ids"`
}

MessageChannelIDList - A list of message channel IDs.

func (*MessageChannelIDList) GetMessageChannelIds

func (o *MessageChannelIDList) GetMessageChannelIds() []string

func (MessageChannelIDList) MarshalJSON

func (m MessageChannelIDList) MarshalJSON() ([]byte, error)

func (*MessageChannelIDList) UnmarshalJSON

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

type MessageChannelList

type MessageChannelList struct {
	Channels []MessageChannel `json:"channels"`
}

func (*MessageChannelList) GetChannels

func (o *MessageChannelList) GetChannels() []MessageChannel

type MessageChannelProviderEnum

type MessageChannelProviderEnum string

MessageChannelProviderEnum - The third party provider of the message channel.

const (
	MessageChannelProviderEnumSlack MessageChannelProviderEnum = "SLACK"
)

func (MessageChannelProviderEnum) ToPointer

func (*MessageChannelProviderEnum) UnmarshalJSON

func (e *MessageChannelProviderEnum) UnmarshalJSON(data []byte) error

type OktaApp

type OktaApp struct {
	// The id of the app.
	AppID string `json:"app_id"`
}

OktaApp - Remote info for Okta directory app.

func (*OktaApp) GetAppID

func (o *OktaApp) GetAppID() string

type OktaCustomRole

type OktaCustomRole struct {
	// The id of the custom role.
	RoleID string `json:"role_id"`
}

OktaCustomRole - Remote info for Okta directory custom role.

func (*OktaCustomRole) GetRoleID

func (o *OktaCustomRole) GetRoleID() string

type OktaGroup

type OktaGroup struct {
	// The id of the Okta Directory group.
	GroupID string `json:"group_id"`
}

OktaGroup - Remote info for Okta Directory group.

func (*OktaGroup) GetGroupID

func (o *OktaGroup) GetGroupID() string

type OktaGroupRule

type OktaGroupRule struct {
	// The id of the Okta group rule.
	RuleID string `json:"rule_id"`
}

OktaGroupRule - Remote info for Okta Directory group rule.

func (*OktaGroupRule) GetRuleID

func (o *OktaGroupRule) GetRuleID() string

type OktaStandardRole

type OktaStandardRole struct {
	// The type of the standard role.
	RoleType string `json:"role_type"`
}

OktaStandardRole - Remote info for Okta directory standard role.

func (*OktaStandardRole) GetRoleType

func (o *OktaStandardRole) GetRoleType() string

type OnCallSchedule

type OnCallSchedule struct {
	// The ID of the on-call schedule.
	ID *string `json:"on_call_schedule_id,omitempty"`
	// The name of the on call schedule.
	Name *string `json:"name,omitempty"`
	// The remote ID of the on call schedule
	RemoteID *string `json:"remote_id,omitempty"`
	// The third party provider of the on call schedule.
	ThirdPartyProvider *OnCallScheduleProviderEnum `json:"third_party_provider,omitempty"`
}

# OnCallSchedule Object ### Description The `OnCallSchedule` object is used to represent an on call schedule.

### Usage Example Update a groups on call schedule from the `UPDATE Groups` endpoint.

func (*OnCallSchedule) GetID

func (o *OnCallSchedule) GetID() *string

func (*OnCallSchedule) GetName

func (o *OnCallSchedule) GetName() *string

func (*OnCallSchedule) GetRemoteID

func (o *OnCallSchedule) GetRemoteID() *string

func (*OnCallSchedule) GetThirdPartyProvider

func (o *OnCallSchedule) GetThirdPartyProvider() *OnCallScheduleProviderEnum

type OnCallScheduleIDList

type OnCallScheduleIDList struct {
	OnCallScheduleIds []string `json:"on_call_schedule_ids"`
}

OnCallScheduleIDList - A list of on call schedule Opal UUIDs. To get the matching remote IDs, use the /on-call-schedules endpoints.

func (*OnCallScheduleIDList) GetOnCallScheduleIds

func (o *OnCallScheduleIDList) GetOnCallScheduleIds() []string

func (OnCallScheduleIDList) MarshalJSON

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

func (*OnCallScheduleIDList) UnmarshalJSON

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

type OnCallScheduleList

type OnCallScheduleList struct {
	OnCallSchedules []OnCallSchedule `json:"on_call_schedules"`
}

func (*OnCallScheduleList) GetOnCallSchedules

func (o *OnCallScheduleList) GetOnCallSchedules() []OnCallSchedule

type OnCallScheduleProviderEnum

type OnCallScheduleProviderEnum string

OnCallScheduleProviderEnum - The third party provider of the on call schedule.

const (
	OnCallScheduleProviderEnumOpsgenie  OnCallScheduleProviderEnum = "OPSGENIE"
	OnCallScheduleProviderEnumPagerDuty OnCallScheduleProviderEnum = "PAGER_DUTY"
)

func (OnCallScheduleProviderEnum) ToPointer

func (*OnCallScheduleProviderEnum) UnmarshalJSON

func (e *OnCallScheduleProviderEnum) UnmarshalJSON(data []byte) error

type Operator

type Operator string

Operator - The operator of the reviewer stage. Admin and manager approval are also treated as reviewers.

const (
	OperatorAnd Operator = "AND"
	OperatorOr  Operator = "OR"
)

func (Operator) ToPointer

func (e Operator) ToPointer() *Operator

func (*Operator) UnmarshalJSON

func (e *Operator) UnmarshalJSON(data []byte) error

type Owner

type Owner struct {
	// The amount of time (in minutes) before the next reviewer is notified. Use 0 to remove escalation policy.
	AccessRequestEscalationPeriod *int64 `json:"access_request_escalation_period,omitempty"`
	// A description of the owner.
	Description *string `json:"description,omitempty"`
	// The ID of the owner.
	ID string `json:"owner_id"`
	// The name of the owner.
	Name                     *string `json:"name,omitempty"`
	ReviewerMessageChannelID *string `json:"reviewer_message_channel_id,omitempty"`
	SourceGroupID            *string `json:"source_group_id,omitempty"`
}

# Owner Object ### Description The `Owner` object is used to represent an owner.

func (*Owner) GetAccessRequestEscalationPeriod

func (o *Owner) GetAccessRequestEscalationPeriod() *int64

func (*Owner) GetDescription

func (o *Owner) GetDescription() *string

func (*Owner) GetID

func (o *Owner) GetID() string

func (*Owner) GetName

func (o *Owner) GetName() *string

func (*Owner) GetReviewerMessageChannelID

func (o *Owner) GetReviewerMessageChannelID() *string

func (*Owner) GetSourceGroupID

func (o *Owner) GetSourceGroupID() *string

type PageInfo

type PageInfo struct {
	// The cursor to continue pagination forwards
	EndCursor string `json:"endCursor"`
	// Whether there are more items after the end cursor
	HasNextPage bool `json:"hasNextPage"`
	// Whether there are more items before the start cursor
	HasPreviousPage bool `json:"hasPreviousPage"`
	// The cursor to continue pagination backwards
	StartCursor string `json:"startCursor"`
}

func (*PageInfo) GetEndCursor

func (o *PageInfo) GetEndCursor() string

func (*PageInfo) GetHasNextPage

func (o *PageInfo) GetHasNextPage() bool

func (*PageInfo) GetHasPreviousPage

func (o *PageInfo) GetHasPreviousPage() bool

func (*PageInfo) GetStartCursor

func (o *PageInfo) GetStartCursor() string

type PagerdutyRole

type PagerdutyRole struct {
	// The name of the role.
	RoleName string `json:"role_name"`
}

PagerdutyRole - Remote info for Pagerduty role.

func (*PagerdutyRole) GetRoleName

func (o *PagerdutyRole) GetRoleName() string

type PaginatedBundleGroupList

type PaginatedBundleGroupList struct {
	BundleGroups []BundleGroup `json:"bundle_groups"`
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	// The total number of items in the result set.
	TotalCount *int64 `json:"total_count,omitempty"`
}

func (*PaginatedBundleGroupList) GetBundleGroups

func (o *PaginatedBundleGroupList) GetBundleGroups() []BundleGroup

func (*PaginatedBundleGroupList) GetNext

func (o *PaginatedBundleGroupList) GetNext() *string

func (*PaginatedBundleGroupList) GetPrevious

func (o *PaginatedBundleGroupList) GetPrevious() *string

func (*PaginatedBundleGroupList) GetTotalCount

func (o *PaginatedBundleGroupList) GetTotalCount() *int64

type PaginatedBundleList

type PaginatedBundleList struct {
	Bundles []Bundle `json:"bundles"`
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	// The total number of items in the result set.
	TotalCount *int64 `json:"total_count,omitempty"`
}

func (*PaginatedBundleList) GetBundles

func (o *PaginatedBundleList) GetBundles() []Bundle

func (*PaginatedBundleList) GetNext

func (o *PaginatedBundleList) GetNext() *string

func (*PaginatedBundleList) GetPrevious

func (o *PaginatedBundleList) GetPrevious() *string

func (*PaginatedBundleList) GetTotalCount

func (o *PaginatedBundleList) GetTotalCount() *int64

type PaginatedBundleResourceList

type PaginatedBundleResourceList struct {
	BundleResources []BundleResource `json:"bundle_resources"`
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	// The total number of items in the result set.
	TotalCount *int64 `json:"total_count,omitempty"`
}

func (*PaginatedBundleResourceList) GetBundleResources

func (o *PaginatedBundleResourceList) GetBundleResources() []BundleResource

func (*PaginatedBundleResourceList) GetNext

func (o *PaginatedBundleResourceList) GetNext() *string

func (*PaginatedBundleResourceList) GetPrevious

func (o *PaginatedBundleResourceList) GetPrevious() *string

func (*PaginatedBundleResourceList) GetTotalCount

func (o *PaginatedBundleResourceList) GetTotalCount() *int64

type PaginatedConfigurationTemplateList

type PaginatedConfigurationTemplateList struct {
	Results []ConfigurationTemplate `json:"results,omitempty"`
}

# PaginatedConfigurationTemplateList Object ### Description The `PaginatedConfigurationTemplateList` object is used to store a list of configuration templates.

### Usage Example Returned from the `GET Configuration Templates` endpoint.

func (*PaginatedConfigurationTemplateList) GetResults

type PaginatedEventList

type PaginatedEventList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	Results  []Event `json:"results,omitempty"`
}

func (*PaginatedEventList) GetNext

func (o *PaginatedEventList) GetNext() *string

func (*PaginatedEventList) GetPrevious

func (o *PaginatedEventList) GetPrevious() *string

func (*PaginatedEventList) GetResults

func (o *PaginatedEventList) GetResults() []Event

type PaginatedGroupBindingsList

type PaginatedGroupBindingsList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string        `json:"previous,omitempty"`
	Results  []GroupBinding `json:"results"`
}

func (*PaginatedGroupBindingsList) GetNext

func (o *PaginatedGroupBindingsList) GetNext() *string

func (*PaginatedGroupBindingsList) GetPrevious

func (o *PaginatedGroupBindingsList) GetPrevious() *string

func (*PaginatedGroupBindingsList) GetResults

func (o *PaginatedGroupBindingsList) GetResults() []GroupBinding

type PaginatedGroupsList

type PaginatedGroupsList struct {
	Results []Group `json:"results"`
}

func (*PaginatedGroupsList) GetResults

func (o *PaginatedGroupsList) GetResults() []Group

type PaginatedOwnersList

type PaginatedOwnersList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	Results  []Owner `json:"results"`
}

func (*PaginatedOwnersList) GetNext

func (o *PaginatedOwnersList) GetNext() *string

func (*PaginatedOwnersList) GetPrevious

func (o *PaginatedOwnersList) GetPrevious() *string

func (*PaginatedOwnersList) GetResults

func (o *PaginatedOwnersList) GetResults() []Owner

type PaginatedRemoteUsersList added in v3.1.1

type PaginatedRemoteUsersList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string      `json:"previous,omitempty"`
	Results  []RemoteUser `json:"results"`
}

func (*PaginatedRemoteUsersList) GetNext added in v3.1.1

func (o *PaginatedRemoteUsersList) GetNext() *string

func (*PaginatedRemoteUsersList) GetPrevious added in v3.1.1

func (o *PaginatedRemoteUsersList) GetPrevious() *string

func (*PaginatedRemoteUsersList) GetResults added in v3.1.1

func (o *PaginatedRemoteUsersList) GetResults() []RemoteUser

type PaginatedResourcesList

type PaginatedResourcesList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string    `json:"previous,omitempty"`
	Results  []Resource `json:"results"`
}

func (*PaginatedResourcesList) GetNext

func (o *PaginatedResourcesList) GetNext() *string

func (*PaginatedResourcesList) GetPrevious

func (o *PaginatedResourcesList) GetPrevious() *string

func (*PaginatedResourcesList) GetResults

func (o *PaginatedResourcesList) GetResults() []Resource

type PaginatedTagsList

type PaginatedTagsList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	Results  []Tag   `json:"results"`
}

func (*PaginatedTagsList) GetNext

func (o *PaginatedTagsList) GetNext() *string

func (*PaginatedTagsList) GetPrevious

func (o *PaginatedTagsList) GetPrevious() *string

func (*PaginatedTagsList) GetResults

func (o *PaginatedTagsList) GetResults() []Tag

type PaginatedUARsList

type PaginatedUARsList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	Results  []Uar   `json:"results"`
}

PaginatedUARsList - A list of UARs.

func (*PaginatedUARsList) GetNext

func (o *PaginatedUARsList) GetNext() *string

func (*PaginatedUARsList) GetPrevious

func (o *PaginatedUARsList) GetPrevious() *string

func (*PaginatedUARsList) GetResults

func (o *PaginatedUARsList) GetResults() []Uar

type PaginatedUsersList

type PaginatedUsersList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string `json:"previous,omitempty"`
	Results  []User  `json:"results"`
}

func (*PaginatedUsersList) GetNext

func (o *PaginatedUsersList) GetNext() *string

func (*PaginatedUsersList) GetPrevious

func (o *PaginatedUsersList) GetPrevious() *string

func (*PaginatedUsersList) GetResults

func (o *PaginatedUsersList) GetResults() []User

type PropagationStatus

type PropagationStatus struct {
	// The status of whether the user has been synced to the group or resource in the remote system.
	Status PropagationStatusEnum `json:"status"`
}

PropagationStatus - The state of whether the push action was propagated to the remote system. If this is null, the access was synced from the remote system.

func (*PropagationStatus) GetStatus

type PropagationStatusEnum

type PropagationStatusEnum string

PropagationStatusEnum - The status of whether the user has been synced to the group or resource in the remote system.

const (
	PropagationStatusEnumSuccess                           PropagationStatusEnum = "SUCCESS"
	PropagationStatusEnumErrRemoteInternalError            PropagationStatusEnum = "ERR_REMOTE_INTERNAL_ERROR"
	PropagationStatusEnumErrRemoteUserNotFound             PropagationStatusEnum = "ERR_REMOTE_USER_NOT_FOUND"
	PropagationStatusEnumErrRemoteUserNotLinked            PropagationStatusEnum = "ERR_REMOTE_USER_NOT_LINKED"
	PropagationStatusEnumErrRemoteResourceNotFound         PropagationStatusEnum = "ERR_REMOTE_RESOURCE_NOT_FOUND"
	PropagationStatusEnumErrRemoteThrottle                 PropagationStatusEnum = "ERR_REMOTE_THROTTLE"
	PropagationStatusEnumErrNotAuthorizedToQueryResource   PropagationStatusEnum = "ERR_NOT_AUTHORIZED_TO_QUERY_RESOURCE"
	PropagationStatusEnumErrRemoteProvisioningViaIdpFailed PropagationStatusEnum = "ERR_REMOTE_PROVISIONING_VIA_IDP_FAILED"
	PropagationStatusEnumErrIdpEmailUpdateConflict         PropagationStatusEnum = "ERR_IDP_EMAIL_UPDATE_CONFLICT"
	PropagationStatusEnumErrTimeout                        PropagationStatusEnum = "ERR_TIMEOUT"
	PropagationStatusEnumErrUnknown                        PropagationStatusEnum = "ERR_UNKNOWN"
	PropagationStatusEnumErrOpalInternalError              PropagationStatusEnum = "ERR_OPAL_INTERNAL_ERROR"
	PropagationStatusEnumErrOrgReadOnly                    PropagationStatusEnum = "ERR_ORG_READ_ONLY"
	PropagationStatusEnumErrOperationUnsupported           PropagationStatusEnum = "ERR_OPERATION_UNSUPPORTED"
	PropagationStatusEnumPending                           PropagationStatusEnum = "PENDING"
	PropagationStatusEnumPendingManualPropagation          PropagationStatusEnum = "PENDING_MANUAL_PROPAGATION"
	PropagationStatusEnumPendingTicketCreation             PropagationStatusEnum = "PENDING_TICKET_CREATION"
	PropagationStatusEnumErrTicketCreationSkipped          PropagationStatusEnum = "ERR_TICKET_CREATION_SKIPPED"
	PropagationStatusEnumErrDryRunModeEnabled              PropagationStatusEnum = "ERR_DRY_RUN_MODE_ENABLED"
	PropagationStatusEnumErrHrIdpProviderNotLinked         PropagationStatusEnum = "ERR_HR_IDP_PROVIDER_NOT_LINKED"
	PropagationStatusEnumErrRemoteUnrecoverableError       PropagationStatusEnum = "ERR_REMOTE_UNRECOVERABLE_ERROR"
)

func (PropagationStatusEnum) ToPointer

func (*PropagationStatusEnum) UnmarshalJSON

func (e *PropagationStatusEnum) UnmarshalJSON(data []byte) error

type RemoteUser added in v3.1.1

type RemoteUser struct {
	// The ID of the remote user.
	RemoteID string `json:"remote_id"`
	// The third party provider of the remote user.
	ThirdPartyProvider ThirdPartyProviderEnum `json:"third_party_provider"`
	// The ID of the user.
	UserID string `json:"user_id"`
}

# RemoteUser Object ### Description The `RemoteUser` object is used to represent a remote user.

func (*RemoteUser) GetRemoteID added in v3.1.1

func (o *RemoteUser) GetRemoteID() string

func (*RemoteUser) GetThirdPartyProvider added in v3.1.1

func (o *RemoteUser) GetThirdPartyProvider() ThirdPartyProviderEnum

func (*RemoteUser) GetUserID added in v3.1.1

func (o *RemoteUser) GetUserID() string

type Request

type Request struct {
	// The date and time the request was created.
	CreatedAt time.Time `json:"created_at"`
	// The responses given to the custom fields associated to the request
	CustomFieldsResponses []RequestCustomFieldResponse `json:"custom_fields_responses,omitempty"`
	// The duration of the request in minutes.
	DurationMinutes *int64 `json:"duration_minutes,omitempty"`
	// The unique identifier of the request.
	ID string `json:"id"`
	// The reason for the request.
	Reason string `json:"reason"`
	// The list of targets for the request.
	RequestedItemsList []RequestedItem `json:"requested_items_list,omitempty"`
	// The unique identifier of the user who created the request.
	RequesterID string `json:"requester_id"`
	// The stages configuration for a request item
	Stages *RequestItemStages `json:"stages,omitempty"`
	// # Request Status
	// ### Description
	// The `RequestStatus` enum is used to represent the status of a request.
	//
	// ### Usage Example
	// Returned from the `GET Requests` endpoint.
	Status RequestStatusEnum `json:"status"`
	// The unique identifier of the group who is the target of the request.
	TargetGroupID *string `json:"target_group_id,omitempty"`
	// The unique identifier of the user who is the target of the request.
	TargetUserID *string `json:"target_user_id,omitempty"`
	// The date and time the request was last updated.
	UpdatedAt time.Time `json:"updated_at"`
}

# Request Object ### Description The `Request` object is used to represent a request.

### Usage Example Returned from the `GET Requests` endpoint.

func (*Request) GetCreatedAt

func (o *Request) GetCreatedAt() time.Time

func (*Request) GetCustomFieldsResponses

func (o *Request) GetCustomFieldsResponses() []RequestCustomFieldResponse

func (*Request) GetDurationMinutes

func (o *Request) GetDurationMinutes() *int64

func (*Request) GetID

func (o *Request) GetID() string

func (*Request) GetReason

func (o *Request) GetReason() string

func (*Request) GetRequestedItemsList

func (o *Request) GetRequestedItemsList() []RequestedItem

func (*Request) GetRequesterID

func (o *Request) GetRequesterID() string

func (*Request) GetStages

func (o *Request) GetStages() *RequestItemStages

func (*Request) GetStatus

func (o *Request) GetStatus() RequestStatusEnum

func (*Request) GetTargetGroupID

func (o *Request) GetTargetGroupID() *string

func (*Request) GetTargetUserID

func (o *Request) GetTargetUserID() *string

func (*Request) GetUpdatedAt

func (o *Request) GetUpdatedAt() time.Time

func (Request) MarshalJSON

func (r Request) MarshalJSON() ([]byte, error)

func (*Request) UnmarshalJSON

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

type RequestApprovalEnum added in v3.1.4

type RequestApprovalEnum string

RequestApprovalEnum - The decision level for the approval

const (
	RequestApprovalEnumRegular RequestApprovalEnum = "REGULAR"
	RequestApprovalEnumAdmin   RequestApprovalEnum = "ADMIN"
)

func (RequestApprovalEnum) ToPointer added in v3.1.4

func (*RequestApprovalEnum) UnmarshalJSON added in v3.1.4

func (e *RequestApprovalEnum) UnmarshalJSON(data []byte) error

type RequestConfiguration

type RequestConfiguration struct {
	// A bool representing whether or not to allow requests for this resource.
	AllowRequests bool `json:"allow_requests"`
	// A bool representing whether or not to automatically approve requests for this resource.
	AutoApproval bool       `json:"auto_approval"`
	Condition    *Condition `json:"condition,omitempty"`
	// The duration for which access can be extended (in minutes). Set to 0 to disable extensions. When > 0, extensions are enabled for the specified duration.
	ExtensionsDurationInMinutes *int64 `json:"extensions_duration_in_minutes,omitempty"`
	// The maximum duration for which the resource can be requested (in minutes).
	MaxDuration *int64 `json:"max_duration_minutes,omitempty"`
	// The priority of the request configuration.
	Priority int64 `json:"priority"`
	// The recommended duration for which the resource should be requested (in minutes). -1 represents an indefinite duration.
	RecommendedDuration *int64 `json:"recommended_duration_minutes,omitempty"`
	// The ID of the associated request template.
	RequestTemplateID *string `json:"request_template_id,omitempty"`
	// A bool representing whether or not to require MFA for requesting access to this resource.
	RequireMfaToRequest bool `json:"require_mfa_to_request"`
	// A bool representing whether or not access requests to the resource require an access ticket.
	RequireSupportTicket bool `json:"require_support_ticket"`
	// The list of reviewer stages for the request configuration.
	ReviewerStages []ReviewerStage `json:"reviewer_stages,omitempty"`
}

RequestConfiguration - # Request Configuration Object ### Description The `RequestConfiguration` object is used to represent a request configuration.

### Usage Example Returned from the `GET Request Configurations` endpoint.

func (*RequestConfiguration) GetAllowRequests

func (o *RequestConfiguration) GetAllowRequests() bool

func (*RequestConfiguration) GetAutoApproval

func (o *RequestConfiguration) GetAutoApproval() bool

func (*RequestConfiguration) GetCondition

func (o *RequestConfiguration) GetCondition() *Condition

func (*RequestConfiguration) GetExtensionsDurationInMinutes added in v3.2.0

func (o *RequestConfiguration) GetExtensionsDurationInMinutes() *int64

func (*RequestConfiguration) GetMaxDuration

func (o *RequestConfiguration) GetMaxDuration() *int64

func (*RequestConfiguration) GetPriority

func (o *RequestConfiguration) GetPriority() int64

func (*RequestConfiguration) GetRecommendedDuration

func (o *RequestConfiguration) GetRecommendedDuration() *int64

func (*RequestConfiguration) GetRequestTemplateID

func (o *RequestConfiguration) GetRequestTemplateID() *string

func (*RequestConfiguration) GetRequireMfaToRequest

func (o *RequestConfiguration) GetRequireMfaToRequest() bool

func (*RequestConfiguration) GetRequireSupportTicket

func (o *RequestConfiguration) GetRequireSupportTicket() bool

func (*RequestConfiguration) GetReviewerStages

func (o *RequestConfiguration) GetReviewerStages() []ReviewerStage

type RequestConnection

type RequestConnection struct {
	Edges    []RequestEdge `json:"edges"`
	PageInfo PageInfo      `json:"pageInfo"`
	// The total number of items available
	TotalCount int64 `json:"totalCount"`
}

func (*RequestConnection) GetEdges

func (o *RequestConnection) GetEdges() []RequestEdge

func (*RequestConnection) GetPageInfo

func (o *RequestConnection) GetPageInfo() PageInfo

func (*RequestConnection) GetTotalCount

func (o *RequestConnection) GetTotalCount() int64

type RequestCustomFieldResponse

type RequestCustomFieldResponse struct {
	FieldName string `json:"field_name"`
	// The type of the custom request field.
	FieldType  RequestTemplateCustomFieldTypeEnum `json:"field_type"`
	FieldValue FieldValue                         `json:"field_value"`
}

func (*RequestCustomFieldResponse) GetFieldName

func (o *RequestCustomFieldResponse) GetFieldName() string

func (*RequestCustomFieldResponse) GetFieldType

func (*RequestCustomFieldResponse) GetFieldValue

func (o *RequestCustomFieldResponse) GetFieldValue() FieldValue

type RequestEdge

type RequestEdge struct {
	// The cursor for this request edge
	Cursor string `json:"cursor"`
	// # Request Object
	// ### Description
	// The `Request` object is used to represent a request.
	//
	// ### Usage Example
	// Returned from the `GET Requests` endpoint.
	Node Request `json:"node"`
}

func (*RequestEdge) GetCursor

func (o *RequestEdge) GetCursor() string

func (*RequestEdge) GetNode

func (o *RequestEdge) GetNode() Request

type RequestItemStages

type RequestItemStages struct {
	// The name of the requested item
	RequestedItemName string `json:"requestedItemName"`
	// The name of the requested role
	RequestedRoleName *string `json:"requestedRoleName,omitempty"`
	// The stages of review for this request
	Stages []RequestStage `json:"stages"`
}

RequestItemStages - The stages configuration for a request item

func (*RequestItemStages) GetRequestedItemName

func (o *RequestItemStages) GetRequestedItemName() string

func (*RequestItemStages) GetRequestedRoleName

func (o *RequestItemStages) GetRequestedRoleName() *string

func (*RequestItemStages) GetStages

func (o *RequestItemStages) GetStages() []RequestStage

type RequestList

type RequestList struct {
	// The cursor to use in the next request to get the next page of results.
	Cursor *string `json:"cursor,omitempty"`
	// The list of requests.
	Requests []Request `json:"requests,omitempty"`
}

RequestList - # Request List ### Description The `RequestList` object is used to represent a list of requests.

### Usage Example Returned from the `GET Requests` endpoint.

func (*RequestList) GetCursor

func (o *RequestList) GetCursor() *string

func (*RequestList) GetRequests

func (o *RequestList) GetRequests() []Request

type RequestReviewer

type RequestReviewer struct {
	// The unique identifier of the reviewer
	ID string `json:"id"`
	// The status of this reviewer's review
	Status RequestReviewerStatus `json:"status"`
}

RequestReviewer - A reviewer in a request stage

func (*RequestReviewer) GetID

func (o *RequestReviewer) GetID() string

func (*RequestReviewer) GetStatus

func (o *RequestReviewer) GetStatus() RequestReviewerStatus

type RequestReviewerStatus

type RequestReviewerStatus string

RequestReviewerStatus - The status of this reviewer's review

const (
	RequestReviewerStatusPending  RequestReviewerStatus = "PENDING"
	RequestReviewerStatusApproved RequestReviewerStatus = "APPROVED"
	RequestReviewerStatusRejected RequestReviewerStatus = "REJECTED"
)

func (RequestReviewerStatus) ToPointer

func (*RequestReviewerStatus) UnmarshalJSON

func (e *RequestReviewerStatus) UnmarshalJSON(data []byte) error

type RequestStage

type RequestStage struct {
	// The operator to apply to reviewers in a stage
	Operator ReviewStageOperator `json:"operator"`
	// The reviewers for this stage
	Reviewers []RequestReviewer `json:"reviewers"`
	// The stage number
	Stage int64 `json:"stage"`
}

RequestStage - A stage in the request review process

func (*RequestStage) GetOperator

func (o *RequestStage) GetOperator() ReviewStageOperator

func (*RequestStage) GetReviewers

func (o *RequestStage) GetReviewers() []RequestReviewer

func (*RequestStage) GetStage

func (o *RequestStage) GetStage() int64

type RequestStatusEnum

type RequestStatusEnum string

RequestStatusEnum - # Request Status ### Description The `RequestStatus` enum is used to represent the status of a request.

### Usage Example Returned from the `GET Requests` endpoint.

const (
	RequestStatusEnumPending  RequestStatusEnum = "PENDING"
	RequestStatusEnumApproved RequestStatusEnum = "APPROVED"
	RequestStatusEnumDenied   RequestStatusEnum = "DENIED"
	RequestStatusEnumCanceled RequestStatusEnum = "CANCELED"
)

func (RequestStatusEnum) ToPointer

func (e RequestStatusEnum) ToPointer() *RequestStatusEnum

func (*RequestStatusEnum) UnmarshalJSON

func (e *RequestStatusEnum) UnmarshalJSON(data []byte) error

type RequestTemplateCustomFieldTypeEnum

type RequestTemplateCustomFieldTypeEnum string

RequestTemplateCustomFieldTypeEnum - The type of the custom request field.

const (
	RequestTemplateCustomFieldTypeEnumShortText   RequestTemplateCustomFieldTypeEnum = "SHORT_TEXT"
	RequestTemplateCustomFieldTypeEnumLongText    RequestTemplateCustomFieldTypeEnum = "LONG_TEXT"
	RequestTemplateCustomFieldTypeEnumBoolean     RequestTemplateCustomFieldTypeEnum = "BOOLEAN"
	RequestTemplateCustomFieldTypeEnumMultiChoice RequestTemplateCustomFieldTypeEnum = "MULTI_CHOICE"
)

func (RequestTemplateCustomFieldTypeEnum) ToPointer

func (*RequestTemplateCustomFieldTypeEnum) UnmarshalJSON

func (e *RequestTemplateCustomFieldTypeEnum) UnmarshalJSON(data []byte) error

type RequestedItem

type RequestedItem struct {
	// The name of the access level requested.
	AccessLevelName *string `json:"access_level_name,omitempty"`
	// The ID of the access level requested on the remote system.
	AccessLevelRemoteID *string `json:"access_level_remote_id,omitempty"`
	// The ID of the group requested.
	GroupID *string `json:"group_id,omitempty"`
	// The name of the target.
	Name *string `json:"name,omitempty"`
	// The ID of the target on the remote system.
	RemoteID *string `json:"remote_id,omitempty"`
	// The name of the target on the remote system.
	RemoteName *string `json:"remote_name,omitempty"`
	// The ID of the resource requested.
	ResourceID *string `json:"resource_id,omitempty"`
}

RequestedItem - # Requested Item Object ### Description The `RequestedItem` object is used to represent a request target item.

### Usage Example Returned from the `GET Requests` endpoint.

func (*RequestedItem) GetAccessLevelName

func (o *RequestedItem) GetAccessLevelName() *string

func (*RequestedItem) GetAccessLevelRemoteID

func (o *RequestedItem) GetAccessLevelRemoteID() *string

func (*RequestedItem) GetGroupID

func (o *RequestedItem) GetGroupID() *string

func (*RequestedItem) GetName

func (o *RequestedItem) GetName() *string

func (*RequestedItem) GetRemoteID

func (o *RequestedItem) GetRemoteID() *string

func (*RequestedItem) GetRemoteName

func (o *RequestedItem) GetRemoteName() *string

func (*RequestedItem) GetResourceID

func (o *RequestedItem) GetResourceID() *string

type Resource

type Resource struct {
	// The ID of the owner of the resource.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// List of resource IDs that are ancestors of this resource.
	AncestorResourceIds []string `json:"ancestor_resource_ids,omitempty"`
	// The ID of the app.
	AppID *string `json:"app_id,omitempty"`
	// Custom request notification sent upon request approval.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// List of resource IDs that are descendants of this resource.
	DescendantResourceIds []string `json:"descendant_resource_ids,omitempty"`
	// A description of the resource.
	Description *string `json:"description,omitempty"`
	// The duration for which access can be extended (in minutes). Set to 0 to disable extensions. When > 0, extensions are enabled for the specified duration.
	ExtensionsDurationInMinutes *int64 `json:"extensions_duration_in_minutes,omitempty"`
	// The ID of the resource.
	ID string `json:"resource_id"`
	// Represents a sync task that has been completed, either successfully or with errors.
	LastSuccessfulSync *SyncTask `json:"last_successful_sync,omitempty"`
	// The name of the resource.
	Name *string `json:"name,omitempty"`
	// The ID of the parent resource.
	ParentResourceID *string `json:"parent_resource_id,omitempty"`
	// Information that defines the remote resource. This replaces the deprecated remote_id and metadata fields.
	RemoteInfo *ResourceRemoteInfo `json:"remote_info,omitempty"`
	// A list of configurations for requests to this resource.
	RequestConfigurations []RequestConfiguration `json:"request_configurations,omitempty"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this resource.
	RequireMfaToApprove *bool `default:"false" json:"require_mfa_to_approve"`
	// A bool representing whether or not to require MFA to connect to this resource.
	RequireMfaToConnect *bool `json:"require_mfa_to_connect,omitempty"`
	// The type of the resource.
	ResourceType *ResourceTypeEnum `json:"resource_type,omitempty"`
	// The risk sensitivity level for the resource. When an override is set, this field will match that.
	RiskSensitivity         *ResourceRiskSensitivity         `json:"risk_sensitivity,omitempty"`
	RiskSensitivityOverride *ResourceRiskSensitivityOverride `json:"risk_sensitivity_override,omitempty"`
	// Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.
	TicketPropagation *TicketPropagationConfiguration `json:"ticket_propagation,omitempty"`
}

# Resource Object ### Description The `Resource` object is used to represent a resource.

### Usage Example Update from the `UPDATE Resources` endpoint.

func (*Resource) GetAdminOwnerID

func (o *Resource) GetAdminOwnerID() *string

func (*Resource) GetAncestorResourceIds

func (o *Resource) GetAncestorResourceIds() []string

func (*Resource) GetAppID

func (o *Resource) GetAppID() *string

func (*Resource) GetCustomRequestNotification

func (o *Resource) GetCustomRequestNotification() *string

func (*Resource) GetDescendantResourceIds

func (o *Resource) GetDescendantResourceIds() []string

func (*Resource) GetDescription

func (o *Resource) GetDescription() *string

func (*Resource) GetExtensionsDurationInMinutes added in v3.2.0

func (o *Resource) GetExtensionsDurationInMinutes() *int64

func (*Resource) GetID

func (o *Resource) GetID() string

func (*Resource) GetLastSuccessfulSync added in v3.1.1

func (o *Resource) GetLastSuccessfulSync() *SyncTask

func (*Resource) GetName

func (o *Resource) GetName() *string

func (*Resource) GetParentResourceID

func (o *Resource) GetParentResourceID() *string

func (*Resource) GetRemoteInfo

func (o *Resource) GetRemoteInfo() *ResourceRemoteInfo

func (*Resource) GetRequestConfigurations

func (o *Resource) GetRequestConfigurations() []RequestConfiguration

func (*Resource) GetRequireMfaToApprove

func (o *Resource) GetRequireMfaToApprove() *bool

func (*Resource) GetRequireMfaToConnect

func (o *Resource) GetRequireMfaToConnect() *bool

func (*Resource) GetResourceType

func (o *Resource) GetResourceType() *ResourceTypeEnum

func (*Resource) GetRiskSensitivity

func (o *Resource) GetRiskSensitivity() *ResourceRiskSensitivity

func (*Resource) GetRiskSensitivityOverride

func (o *Resource) GetRiskSensitivityOverride() *ResourceRiskSensitivityOverride

func (*Resource) GetTicketPropagation

func (o *Resource) GetTicketPropagation() *TicketPropagationConfiguration

func (Resource) MarshalJSON

func (r Resource) MarshalJSON() ([]byte, error)

func (*Resource) UnmarshalJSON

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

type ResourceAccessLevel

type ResourceAccessLevel struct {
	// The human-readable name of the access level.
	AccessLevelName string `json:"access_level_name"`
	// The machine-readable identifier of the access level.
	AccessLevelRemoteID string `json:"access_level_remote_id"`
}

ResourceAccessLevel - # Access Level Object ### Description The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access level is a `AccessLevel` object whose fields are all empty strings.

### Usage Example View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.

func (*ResourceAccessLevel) GetAccessLevelName

func (o *ResourceAccessLevel) GetAccessLevelName() string

func (*ResourceAccessLevel) GetAccessLevelRemoteID

func (o *ResourceAccessLevel) GetAccessLevelRemoteID() string

type ResourceAccessUser

type ResourceAccessUser struct {
	// # Access Level Object
	// ### Description
	// The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access
	// level is a `AccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.
	AccessLevel ResourceAccessLevel `json:"access_level"`
	// The user's email.
	Email string `json:"email"`
	// The day and time the user's access will expire.
	ExpirationDate *time.Time `json:"expiration_date,omitempty"`
	// The user's full name.
	FullName string `json:"full_name"`
	// The user has direct access to this resources (vs. indirectly, like through a group).
	HasDirectAccess bool `json:"has_direct_access"`
	// The number of ways in which the user has access through this resource (directly and indirectly).
	NumAccessPaths int `json:"num_access_paths"`
	// The state of whether the push action was propagated to the remote system. If this is null, the access was synced from the remote system.
	PropagationStatus *PropagationStatus `json:"propagation_status,omitempty"`
	// The ID of the resource.
	ResourceID string `json:"resource_id"`
	// The ID of the user.
	UserID string `json:"user_id"`
}

ResourceAccessUser - # Resource Access User Object ### Description The `ResourceAccessUser` object is used to represent a user with access to a resource, either directly or indirectly through group(s).

### Usage Example Fetch from the `LIST ResourceUsers` endpoint.

func (*ResourceAccessUser) GetAccessLevel

func (o *ResourceAccessUser) GetAccessLevel() ResourceAccessLevel

func (*ResourceAccessUser) GetEmail

func (o *ResourceAccessUser) GetEmail() string

func (*ResourceAccessUser) GetExpirationDate

func (o *ResourceAccessUser) GetExpirationDate() *time.Time

func (*ResourceAccessUser) GetFullName

func (o *ResourceAccessUser) GetFullName() string

func (*ResourceAccessUser) GetHasDirectAccess

func (o *ResourceAccessUser) GetHasDirectAccess() bool

func (*ResourceAccessUser) GetNumAccessPaths

func (o *ResourceAccessUser) GetNumAccessPaths() int

func (*ResourceAccessUser) GetPropagationStatus

func (o *ResourceAccessUser) GetPropagationStatus() *PropagationStatus

func (*ResourceAccessUser) GetResourceID

func (o *ResourceAccessUser) GetResourceID() string

func (*ResourceAccessUser) GetUserID

func (o *ResourceAccessUser) GetUserID() string

func (ResourceAccessUser) MarshalJSON

func (r ResourceAccessUser) MarshalJSON() ([]byte, error)

func (*ResourceAccessUser) UnmarshalJSON

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

type ResourceAccessUserList

type ResourceAccessUserList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string              `json:"previous,omitempty"`
	Results  []ResourceAccessUser `json:"results,omitempty"`
}

func (*ResourceAccessUserList) GetNext added in v3.1.4

func (o *ResourceAccessUserList) GetNext() *string

func (*ResourceAccessUserList) GetPrevious added in v3.1.4

func (o *ResourceAccessUserList) GetPrevious() *string

func (*ResourceAccessUserList) GetResults

func (o *ResourceAccessUserList) GetResults() []ResourceAccessUser

type ResourceNHI

type ResourceNHI struct {
	// # Access Level Object
	// ### Description
	// The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access
	// level is a `AccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.
	AccessLevel *ResourceAccessLevel `json:"access_level,omitempty"`
	// The day and time the non-human identity's access will expire.
	ExpirationDate *time.Time `json:"expiration_date,omitempty"`
	// The resource ID of the non-human identity.
	NonHumanIdentityID string `json:"non_human_identity_id"`
	// The ID of the resource.
	ResourceID string `json:"resource_id"`
}

ResourceNHI - # Resource Non-Human Identity Direct Access Object ### Description This object is used to represent a non-human identity with direct access to a resource.

func (*ResourceNHI) GetAccessLevel

func (o *ResourceNHI) GetAccessLevel() *ResourceAccessLevel

func (*ResourceNHI) GetExpirationDate

func (o *ResourceNHI) GetExpirationDate() *time.Time

func (*ResourceNHI) GetNonHumanIdentityID

func (o *ResourceNHI) GetNonHumanIdentityID() string

func (*ResourceNHI) GetResourceID

func (o *ResourceNHI) GetResourceID() string

func (ResourceNHI) MarshalJSON

func (r ResourceNHI) MarshalJSON() ([]byte, error)

func (*ResourceNHI) UnmarshalJSON

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

type ResourceRemoteInfo

type ResourceRemoteInfo struct {
	// Remote info for AWS account.
	AwsAccount *AwsAccount `json:"aws_account,omitempty"`
	// Remote info for AWS EC2 instance.
	AwsEc2Instance *AwsEc2Instance `json:"aws_ec2_instance,omitempty"`
	// Remote info for AWS EKS cluster.
	AwsEksCluster *AwsEksCluster `json:"aws_eks_cluster,omitempty"`
	// Remote info for AWS IAM role.
	AwsIamRole *AwsIamRole `json:"aws_iam_role,omitempty"`
	// Remote info for AWS organizational unit.
	AwsOrganizationalUnit *AwsOrganizationalUnit `json:"aws_organizational_unit,omitempty"`
	// Remote info for AWS Identity Center permission set.
	AwsPermissionSet *AwsPermissionSet `json:"aws_permission_set,omitempty"`
	// Remote info for AWS RDS instance.
	AwsRdsInstance *AwsRdsInstance `json:"aws_rds_instance,omitempty"`
	// Remote info for a custom connector resource.
	CustomConnector *CustomConnector `json:"custom_connector,omitempty"`
	// Remote info for an Astra role.
	DatastaxAstraRole *DatastaxAstraRole `json:"datastax_astra_role,omitempty"`
	// Remote info for GCP BigQuery Dataset.
	GcpBigQueryDataset *GcpBigQueryDataset `json:"gcp_big_query_dataset,omitempty"`
	// Remote info for GCP BigQuery Table.
	GcpBigQueryTable *GcpBigQueryTable `json:"gcp_big_query_table,omitempty"`
	// Remote info for GCP bucket.
	GcpBucket *GcpBucket `json:"gcp_bucket,omitempty"`
	// Remote info for GCP compute instance.
	GcpComputeInstance *GcpComputeInstance `json:"gcp_compute_instance,omitempty"`
	// Remote info for GCP folder.
	GcpFolder *GcpFolder `json:"gcp_folder,omitempty"`
	// Remote info for GCP GKE cluster.
	GcpGkeCluster *GcpGkeCluster `json:"gcp_gke_cluster,omitempty"`
	// Remote info for GCP organization.
	GcpOrganization *GcpOrganization `json:"gcp_organization,omitempty"`
	// Remote info for GCP project.
	GcpProject *GcpProject `json:"gcp_project,omitempty"`
	// Remote info for a GCP service account.
	GcpServiceAccount *GcpServiceAccount `json:"gcp_service_account,omitempty"`
	// Remote info for GCP SQL instance.
	GcpSQLInstance *GcpSQLInstance `json:"gcp_sql_instance,omitempty"`
	// Remote info for GitHub organization role.
	GithubOrgRole *GithubOrgRole `json:"github_org_role,omitempty"`
	// Remote info for GitHub repository.
	GithubRepo *GithubRepo `json:"github_repo,omitempty"`
	// Remote info for Gitlab project.
	GitlabProject *GitlabProject `json:"gitlab_project,omitempty"`
	// Remote info for GCP workspace role.
	GoogleWorkspaceRole *GoogleWorkspaceRole `json:"google_workspace_role,omitempty"`
	// Remote info for Okta directory app.
	OktaApp *OktaApp `json:"okta_app,omitempty"`
	// Remote info for Okta directory custom role.
	OktaCustomRole *OktaCustomRole `json:"okta_custom_role,omitempty"`
	// Remote info for Okta directory standard role.
	OktaStandardRole *OktaStandardRole `json:"okta_standard_role,omitempty"`
	// Remote info for Pagerduty role.
	PagerdutyRole *PagerdutyRole `json:"pagerduty_role,omitempty"`
	// Remote info for Salesforce permission set.
	SalesforcePermissionSet *SalesforcePermissionSet `json:"salesforce_permission_set,omitempty"`
	// Remote info for Salesforce profile.
	SalesforceProfile *SalesforceProfile `json:"salesforce_profile,omitempty"`
	// Remote info for Salesforce role.
	SalesforceRole *SalesforceRole `json:"salesforce_role,omitempty"`
	// Remote info for Teleport role.
	TeleportRole *TeleportRole `json:"teleport_role,omitempty"`
}

ResourceRemoteInfo - Information that defines the remote resource. This replaces the deprecated remote_id and metadata fields.

func (*ResourceRemoteInfo) GetAwsAccount

func (o *ResourceRemoteInfo) GetAwsAccount() *AwsAccount

func (*ResourceRemoteInfo) GetAwsEc2Instance

func (o *ResourceRemoteInfo) GetAwsEc2Instance() *AwsEc2Instance

func (*ResourceRemoteInfo) GetAwsEksCluster

func (o *ResourceRemoteInfo) GetAwsEksCluster() *AwsEksCluster

func (*ResourceRemoteInfo) GetAwsIamRole

func (o *ResourceRemoteInfo) GetAwsIamRole() *AwsIamRole

func (*ResourceRemoteInfo) GetAwsOrganizationalUnit

func (o *ResourceRemoteInfo) GetAwsOrganizationalUnit() *AwsOrganizationalUnit

func (*ResourceRemoteInfo) GetAwsPermissionSet

func (o *ResourceRemoteInfo) GetAwsPermissionSet() *AwsPermissionSet

func (*ResourceRemoteInfo) GetAwsRdsInstance

func (o *ResourceRemoteInfo) GetAwsRdsInstance() *AwsRdsInstance

func (*ResourceRemoteInfo) GetCustomConnector

func (o *ResourceRemoteInfo) GetCustomConnector() *CustomConnector

func (*ResourceRemoteInfo) GetDatastaxAstraRole added in v3.2.1

func (o *ResourceRemoteInfo) GetDatastaxAstraRole() *DatastaxAstraRole

func (*ResourceRemoteInfo) GetGcpBigQueryDataset

func (o *ResourceRemoteInfo) GetGcpBigQueryDataset() *GcpBigQueryDataset

func (*ResourceRemoteInfo) GetGcpBigQueryTable

func (o *ResourceRemoteInfo) GetGcpBigQueryTable() *GcpBigQueryTable

func (*ResourceRemoteInfo) GetGcpBucket

func (o *ResourceRemoteInfo) GetGcpBucket() *GcpBucket

func (*ResourceRemoteInfo) GetGcpComputeInstance

func (o *ResourceRemoteInfo) GetGcpComputeInstance() *GcpComputeInstance

func (*ResourceRemoteInfo) GetGcpFolder

func (o *ResourceRemoteInfo) GetGcpFolder() *GcpFolder

func (*ResourceRemoteInfo) GetGcpGkeCluster

func (o *ResourceRemoteInfo) GetGcpGkeCluster() *GcpGkeCluster

func (*ResourceRemoteInfo) GetGcpOrganization

func (o *ResourceRemoteInfo) GetGcpOrganization() *GcpOrganization

func (*ResourceRemoteInfo) GetGcpProject

func (o *ResourceRemoteInfo) GetGcpProject() *GcpProject

func (*ResourceRemoteInfo) GetGcpSQLInstance

func (o *ResourceRemoteInfo) GetGcpSQLInstance() *GcpSQLInstance

func (*ResourceRemoteInfo) GetGcpServiceAccount

func (o *ResourceRemoteInfo) GetGcpServiceAccount() *GcpServiceAccount

func (*ResourceRemoteInfo) GetGithubOrgRole added in v3.1.2

func (o *ResourceRemoteInfo) GetGithubOrgRole() *GithubOrgRole

func (*ResourceRemoteInfo) GetGithubRepo

func (o *ResourceRemoteInfo) GetGithubRepo() *GithubRepo

func (*ResourceRemoteInfo) GetGitlabProject

func (o *ResourceRemoteInfo) GetGitlabProject() *GitlabProject

func (*ResourceRemoteInfo) GetGoogleWorkspaceRole

func (o *ResourceRemoteInfo) GetGoogleWorkspaceRole() *GoogleWorkspaceRole

func (*ResourceRemoteInfo) GetOktaApp

func (o *ResourceRemoteInfo) GetOktaApp() *OktaApp

func (*ResourceRemoteInfo) GetOktaCustomRole

func (o *ResourceRemoteInfo) GetOktaCustomRole() *OktaCustomRole

func (*ResourceRemoteInfo) GetOktaStandardRole

func (o *ResourceRemoteInfo) GetOktaStandardRole() *OktaStandardRole

func (*ResourceRemoteInfo) GetPagerdutyRole

func (o *ResourceRemoteInfo) GetPagerdutyRole() *PagerdutyRole

func (*ResourceRemoteInfo) GetSalesforcePermissionSet

func (o *ResourceRemoteInfo) GetSalesforcePermissionSet() *SalesforcePermissionSet

func (*ResourceRemoteInfo) GetSalesforceProfile

func (o *ResourceRemoteInfo) GetSalesforceProfile() *SalesforceProfile

func (*ResourceRemoteInfo) GetSalesforceRole

func (o *ResourceRemoteInfo) GetSalesforceRole() *SalesforceRole

func (*ResourceRemoteInfo) GetTeleportRole

func (o *ResourceRemoteInfo) GetTeleportRole() *TeleportRole

type ResourceRiskSensitivity

type ResourceRiskSensitivity string

ResourceRiskSensitivity - The risk sensitivity level for the resource. When an override is set, this field will match that.

const (
	ResourceRiskSensitivityUnknown  ResourceRiskSensitivity = "UNKNOWN"
	ResourceRiskSensitivityCritical ResourceRiskSensitivity = "CRITICAL"
	ResourceRiskSensitivityHigh     ResourceRiskSensitivity = "HIGH"
	ResourceRiskSensitivityMedium   ResourceRiskSensitivity = "MEDIUM"
	ResourceRiskSensitivityLow      ResourceRiskSensitivity = "LOW"
	ResourceRiskSensitivityNone     ResourceRiskSensitivity = "NONE"
)

func (ResourceRiskSensitivity) ToPointer

func (*ResourceRiskSensitivity) UnmarshalJSON

func (e *ResourceRiskSensitivity) UnmarshalJSON(data []byte) error

type ResourceRiskSensitivityOverride

type ResourceRiskSensitivityOverride string

ResourceRiskSensitivityOverride - Indicates the level of potential impact misuse or unauthorized access may incur.

const (
	ResourceRiskSensitivityOverrideUnknown  ResourceRiskSensitivityOverride = "UNKNOWN"
	ResourceRiskSensitivityOverrideCritical ResourceRiskSensitivityOverride = "CRITICAL"
	ResourceRiskSensitivityOverrideHigh     ResourceRiskSensitivityOverride = "HIGH"
	ResourceRiskSensitivityOverrideMedium   ResourceRiskSensitivityOverride = "MEDIUM"
	ResourceRiskSensitivityOverrideLow      ResourceRiskSensitivityOverride = "LOW"
	ResourceRiskSensitivityOverrideNone     ResourceRiskSensitivityOverride = "NONE"
)

func (ResourceRiskSensitivityOverride) ToPointer

func (*ResourceRiskSensitivityOverride) UnmarshalJSON

func (e *ResourceRiskSensitivityOverride) UnmarshalJSON(data []byte) error

type ResourceTypeEnum

type ResourceTypeEnum string

ResourceTypeEnum - The type of the resource.

const (
	ResourceTypeEnumAwsIamRole                        ResourceTypeEnum = "AWS_IAM_ROLE"
	ResourceTypeEnumAwsEc2Instance                    ResourceTypeEnum = "AWS_EC2_INSTANCE"
	ResourceTypeEnumAwsEksCluster                     ResourceTypeEnum = "AWS_EKS_CLUSTER"
	ResourceTypeEnumAwsRdsPostgresCluster             ResourceTypeEnum = "AWS_RDS_POSTGRES_CLUSTER"
	ResourceTypeEnumAwsRdsPostgresInstance            ResourceTypeEnum = "AWS_RDS_POSTGRES_INSTANCE"
	ResourceTypeEnumAwsRdsMysqlCluster                ResourceTypeEnum = "AWS_RDS_MYSQL_CLUSTER"
	ResourceTypeEnumAwsRdsMysqlInstance               ResourceTypeEnum = "AWS_RDS_MYSQL_INSTANCE"
	ResourceTypeEnumAwsAccount                        ResourceTypeEnum = "AWS_ACCOUNT"
	ResourceTypeEnumAwsSsoPermissionSet               ResourceTypeEnum = "AWS_SSO_PERMISSION_SET"
	ResourceTypeEnumAwsOrganizationalUnit             ResourceTypeEnum = "AWS_ORGANIZATIONAL_UNIT"
	ResourceTypeEnumAzureManagementGroup              ResourceTypeEnum = "AZURE_MANAGEMENT_GROUP"
	ResourceTypeEnumAzureResourceGroup                ResourceTypeEnum = "AZURE_RESOURCE_GROUP"
	ResourceTypeEnumAzureSubscription                 ResourceTypeEnum = "AZURE_SUBSCRIPTION"
	ResourceTypeEnumAzureVirtualMachine               ResourceTypeEnum = "AZURE_VIRTUAL_MACHINE"
	ResourceTypeEnumAzureStorageAccount               ResourceTypeEnum = "AZURE_STORAGE_ACCOUNT"
	ResourceTypeEnumAzureStorageContainer             ResourceTypeEnum = "AZURE_STORAGE_CONTAINER"
	ResourceTypeEnumAzureSQLServer                    ResourceTypeEnum = "AZURE_SQL_SERVER"
	ResourceTypeEnumAzureSQLManagedInstance           ResourceTypeEnum = "AZURE_SQL_MANAGED_INSTANCE"
	ResourceTypeEnumAzureSQLDatabase                  ResourceTypeEnum = "AZURE_SQL_DATABASE"
	ResourceTypeEnumAzureSQLManagedDatabase           ResourceTypeEnum = "AZURE_SQL_MANAGED_DATABASE"
	ResourceTypeEnumAzureUserAssignedManagedIdentity  ResourceTypeEnum = "AZURE_USER_ASSIGNED_MANAGED_Identity"
	ResourceTypeEnumAzureEntraIDRole                  ResourceTypeEnum = "AZURE_ENTRA_ID_ROLE"
	ResourceTypeEnumAzureEnterpriseApp                ResourceTypeEnum = "AZURE_ENTERPRISE_APP"
	ResourceTypeEnumCustom                            ResourceTypeEnum = "CUSTOM"
	ResourceTypeEnumCustomConnector                   ResourceTypeEnum = "CUSTOM_CONNECTOR"
	ResourceTypeEnumDatabricksAccountServicePrincipal ResourceTypeEnum = "DATABRICKS_ACCOUNT_SERVICE_PRINCIPAL"
	ResourceTypeEnumGcpOrganization                   ResourceTypeEnum = "GCP_ORGANIZATION"
	ResourceTypeEnumGcpBucket                         ResourceTypeEnum = "GCP_BUCKET"
	ResourceTypeEnumGcpComputeInstance                ResourceTypeEnum = "GCP_COMPUTE_INSTANCE"
	ResourceTypeEnumGcpFolder                         ResourceTypeEnum = "GCP_FOLDER"
	ResourceTypeEnumGcpGkeCluster                     ResourceTypeEnum = "GCP_GKE_CLUSTER"
	ResourceTypeEnumGcpProject                        ResourceTypeEnum = "GCP_PROJECT"
	ResourceTypeEnumGcpCloudSQLPostgresInstance       ResourceTypeEnum = "GCP_CLOUD_SQL_POSTGRES_INSTANCE"
	ResourceTypeEnumGcpCloudSQLMysqlInstance          ResourceTypeEnum = "GCP_CLOUD_SQL_MYSQL_INSTANCE"
	ResourceTypeEnumGcpBigQueryDataset                ResourceTypeEnum = "GCP_BIG_QUERY_DATASET"
	ResourceTypeEnumGcpBigQueryTable                  ResourceTypeEnum = "GCP_BIG_QUERY_TABLE"
	ResourceTypeEnumGcpServiceAccount                 ResourceTypeEnum = "GCP_SERVICE_ACCOUNT"
	ResourceTypeEnumGitHubRepo                        ResourceTypeEnum = "GIT_HUB_REPO"
	ResourceTypeEnumGitHubOrgRole                     ResourceTypeEnum = "GIT_HUB_ORG_ROLE"
	ResourceTypeEnumGitLabProject                     ResourceTypeEnum = "GIT_LAB_PROJECT"
	ResourceTypeEnumGoogleWorkspaceRole               ResourceTypeEnum = "GOOGLE_WORKSPACE_ROLE"
	ResourceTypeEnumMongoInstance                     ResourceTypeEnum = "MONGO_INSTANCE"
	ResourceTypeEnumMongoAtlasInstance                ResourceTypeEnum = "MONGO_ATLAS_INSTANCE"
	ResourceTypeEnumOktaApp                           ResourceTypeEnum = "OKTA_APP"
	ResourceTypeEnumOktaRole                          ResourceTypeEnum = "OKTA_ROLE"
	ResourceTypeEnumOpalRole                          ResourceTypeEnum = "OPAL_ROLE"
	ResourceTypeEnumOpalScopedRole                    ResourceTypeEnum = "OPAL_SCOPED_ROLE"
	ResourceTypeEnumPagerdutyRole                     ResourceTypeEnum = "PAGERDUTY_ROLE"
	ResourceTypeEnumTailscaleSSH                      ResourceTypeEnum = "TAILSCALE_SSH"
	ResourceTypeEnumSalesforcePermissionSet           ResourceTypeEnum = "SALESFORCE_PERMISSION_SET"
	ResourceTypeEnumSalesforceProfile                 ResourceTypeEnum = "SALESFORCE_PROFILE"
	ResourceTypeEnumSalesforceRole                    ResourceTypeEnum = "SALESFORCE_ROLE"
	ResourceTypeEnumSnowflakeDatabase                 ResourceTypeEnum = "SNOWFLAKE_DATABASE"
	ResourceTypeEnumSnowflakeSchema                   ResourceTypeEnum = "SNOWFLAKE_SCHEMA"
	ResourceTypeEnumSnowflakeTable                    ResourceTypeEnum = "SNOWFLAKE_TABLE"
	ResourceTypeEnumWorkdayRole                       ResourceTypeEnum = "WORKDAY_ROLE"
	ResourceTypeEnumMysqlInstance                     ResourceTypeEnum = "MYSQL_INSTANCE"
	ResourceTypeEnumMariadbInstance                   ResourceTypeEnum = "MARIADB_INSTANCE"
	ResourceTypeEnumPostgresInstance                  ResourceTypeEnum = "POSTGRES_INSTANCE"
	ResourceTypeEnumTeleportRole                      ResourceTypeEnum = "TELEPORT_ROLE"
	ResourceTypeEnumIlevelAdvancedRole                ResourceTypeEnum = "ILEVEL_ADVANCED_ROLE"
	ResourceTypeEnumDatastaxAstraRole                 ResourceTypeEnum = "DATASTAX_ASTRA_ROLE"
)

func (ResourceTypeEnum) ToPointer

func (e ResourceTypeEnum) ToPointer() *ResourceTypeEnum

func (*ResourceTypeEnum) UnmarshalJSON

func (e *ResourceTypeEnum) UnmarshalJSON(data []byte) error

type ResourceUserAccessStatus

type ResourceUserAccessStatus struct {
	// # Access Level Object
	// ### Description
	// The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access
	// level is a `AccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.
	AccessLevel *ResourceAccessLevel `json:"access_level,omitempty"`
	// The day and time the user's access will expire.
	ExpirationDate *time.Time `json:"expiration_date,omitempty"`
	// The ID of the resource.
	ResourceID string `json:"resource_id"`
	// The status of the user's access to the resource.
	Status ResourceUserAccessStatusEnum `json:"status"`
	// The ID of the user.
	UserID string `json:"user_id"`
}

ResourceUserAccessStatus - # AccessStatus Object ### Description The `AccessStatus` object is used to represent the user's access to the resource.

### Usage Example View the `AccessStatus` for a resource/user pair to determine if the user has access to the resource.

func (*ResourceUserAccessStatus) GetAccessLevel

func (o *ResourceUserAccessStatus) GetAccessLevel() *ResourceAccessLevel

func (*ResourceUserAccessStatus) GetExpirationDate

func (o *ResourceUserAccessStatus) GetExpirationDate() *time.Time

func (*ResourceUserAccessStatus) GetResourceID

func (o *ResourceUserAccessStatus) GetResourceID() string

func (*ResourceUserAccessStatus) GetStatus

func (*ResourceUserAccessStatus) GetUserID

func (o *ResourceUserAccessStatus) GetUserID() string

func (ResourceUserAccessStatus) MarshalJSON

func (r ResourceUserAccessStatus) MarshalJSON() ([]byte, error)

func (*ResourceUserAccessStatus) UnmarshalJSON

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

type ResourceUserAccessStatusEnum

type ResourceUserAccessStatusEnum string

ResourceUserAccessStatusEnum - The status of the user's access to the resource.

const (
	ResourceUserAccessStatusEnumAuthorized   ResourceUserAccessStatusEnum = "AUTHORIZED"
	ResourceUserAccessStatusEnumRequested    ResourceUserAccessStatusEnum = "REQUESTED"
	ResourceUserAccessStatusEnumUnauthorized ResourceUserAccessStatusEnum = "UNAUTHORIZED"
)

func (ResourceUserAccessStatusEnum) ToPointer

func (*ResourceUserAccessStatusEnum) UnmarshalJSON

func (e *ResourceUserAccessStatusEnum) UnmarshalJSON(data []byte) error

type ResourceWithAccessLevel

type ResourceWithAccessLevel struct {
	// The ID of the resource.
	AccessLevelRemoteID *string `json:"access_level_remote_id,omitempty"`
	// The ID of the resource.
	ResourceID string `json:"resource_id"`
}

ResourceWithAccessLevel - Information about a resource and corresponding access level

func (*ResourceWithAccessLevel) GetAccessLevelRemoteID

func (o *ResourceWithAccessLevel) GetAccessLevelRemoteID() *string

func (*ResourceWithAccessLevel) GetResourceID

func (o *ResourceWithAccessLevel) GetResourceID() string

type Resources

type Resources struct {
	// The ID of the access level requested on the remote system.
	AccessLevelName *string `json:"access_level_name,omitempty"`
	// The ID of the access level requested on the remote system.
	AccessLevelRemoteID *string `json:"access_level_remote_id,omitempty"`
	// The ID of the resource requested. Should not be specified if group_id is specified.
	ID *string `json:"id,omitempty"`
}

func (*Resources) GetAccessLevelName

func (o *Resources) GetAccessLevelName() *string

func (*Resources) GetAccessLevelRemoteID

func (o *Resources) GetAccessLevelRemoteID() *string

func (*Resources) GetID

func (o *Resources) GetID() *string

type ReviewStageOperator

type ReviewStageOperator string

ReviewStageOperator - The operator to apply to reviewers in a stage

const (
	ReviewStageOperatorAnd ReviewStageOperator = "AND"
	ReviewStageOperatorOr  ReviewStageOperator = "OR"
)

func (ReviewStageOperator) ToPointer

func (*ReviewStageOperator) UnmarshalJSON

func (e *ReviewStageOperator) UnmarshalJSON(data []byte) error

type ReviewerIDList

type ReviewerIDList struct {
	ReviewerIds []string `json:"reviewer_ids"`
}

ReviewerIDList - A list of reviewer IDs.

func (*ReviewerIDList) GetReviewerIds

func (o *ReviewerIDList) GetReviewerIds() []string

type ReviewerStage

type ReviewerStage struct {
	// The operator of the reviewer stage. Admin and manager approval are also treated as reviewers.
	Operator *Operator `default:"AND" json:"operator"`
	OwnerIds []string  `json:"owner_ids"`
	// Whether this reviewer stage should require admin approval.
	RequireAdminApproval *bool `default:"false" json:"require_admin_approval"`
	// Whether this reviewer stage should require manager approval.
	RequireManagerApproval *bool `default:"false" json:"require_manager_approval"`
}

ReviewerStage - A reviewer stage.

func (*ReviewerStage) GetOperator

func (o *ReviewerStage) GetOperator() *Operator

func (*ReviewerStage) GetOwnerIds

func (o *ReviewerStage) GetOwnerIds() []string

func (*ReviewerStage) GetRequireAdminApproval

func (o *ReviewerStage) GetRequireAdminApproval() *bool

func (*ReviewerStage) GetRequireManagerApproval

func (o *ReviewerStage) GetRequireManagerApproval() *bool

func (ReviewerStage) MarshalJSON

func (r ReviewerStage) MarshalJSON() ([]byte, error)

func (*ReviewerStage) UnmarshalJSON

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

type ReviewerStageList

type ReviewerStageList struct {
	// A list of reviewer stages.
	Stages []ReviewerStage `json:"stages"`
}

func (*ReviewerStageList) GetStages

func (o *ReviewerStageList) GetStages() []ReviewerStage

type RiskSensitivity

type RiskSensitivity string

RiskSensitivity - The risk sensitivity level for the group. When an override is set, this field will match that.

const (
	RiskSensitivityUnknown  RiskSensitivity = "UNKNOWN"
	RiskSensitivityCritical RiskSensitivity = "CRITICAL"
	RiskSensitivityHigh     RiskSensitivity = "HIGH"
	RiskSensitivityMedium   RiskSensitivity = "MEDIUM"
	RiskSensitivityLow      RiskSensitivity = "LOW"
	RiskSensitivityNone     RiskSensitivity = "NONE"
)

func (RiskSensitivity) ToPointer

func (e RiskSensitivity) ToPointer() *RiskSensitivity

func (*RiskSensitivity) UnmarshalJSON

func (e *RiskSensitivity) UnmarshalJSON(data []byte) error

type RiskSensitivityEnum

type RiskSensitivityEnum string

RiskSensitivityEnum - Indicates the level of potential impact misuse or unauthorized access may incur.

const (
	RiskSensitivityEnumUnknown  RiskSensitivityEnum = "UNKNOWN"
	RiskSensitivityEnumCritical RiskSensitivityEnum = "CRITICAL"
	RiskSensitivityEnumHigh     RiskSensitivityEnum = "HIGH"
	RiskSensitivityEnumMedium   RiskSensitivityEnum = "MEDIUM"
	RiskSensitivityEnumLow      RiskSensitivityEnum = "LOW"
	RiskSensitivityEnumNone     RiskSensitivityEnum = "NONE"
)

func (RiskSensitivityEnum) ToPointer

func (*RiskSensitivityEnum) UnmarshalJSON

func (e *RiskSensitivityEnum) UnmarshalJSON(data []byte) error

type RiskSensitivityOverride

type RiskSensitivityOverride string

RiskSensitivityOverride - Indicates the level of potential impact misuse or unauthorized access may incur.

const (
	RiskSensitivityOverrideUnknown  RiskSensitivityOverride = "UNKNOWN"
	RiskSensitivityOverrideCritical RiskSensitivityOverride = "CRITICAL"
	RiskSensitivityOverrideHigh     RiskSensitivityOverride = "HIGH"
	RiskSensitivityOverrideMedium   RiskSensitivityOverride = "MEDIUM"
	RiskSensitivityOverrideLow      RiskSensitivityOverride = "LOW"
	RiskSensitivityOverrideNone     RiskSensitivityOverride = "NONE"
)

func (RiskSensitivityOverride) ToPointer

func (*RiskSensitivityOverride) UnmarshalJSON

func (e *RiskSensitivityOverride) UnmarshalJSON(data []byte) error

type RolePermissionNameEnum

type RolePermissionNameEnum string

RolePermissionNameEnum - The name of the role permission.

const (
	RolePermissionNameEnumRead                      RolePermissionNameEnum = "READ"
	RolePermissionNameEnumReadAssignments           RolePermissionNameEnum = "READ_ASSIGNMENTS"
	RolePermissionNameEnumCreate                    RolePermissionNameEnum = "CREATE"
	RolePermissionNameEnumImport                    RolePermissionNameEnum = "IMPORT"
	RolePermissionNameEnumExport                    RolePermissionNameEnum = "EXPORT"
	RolePermissionNameEnumSync                      RolePermissionNameEnum = "SYNC"
	RolePermissionNameEnumDelete                    RolePermissionNameEnum = "DELETE"
	RolePermissionNameEnumReadSettings              RolePermissionNameEnum = "READ_SETTINGS"
	RolePermissionNameEnumEditTags                  RolePermissionNameEnum = "EDIT_TAGS"
	RolePermissionNameEnumEditSettings              RolePermissionNameEnum = "EDIT_SETTINGS"
	RolePermissionNameEnumEditSyncSettings          RolePermissionNameEnum = "EDIT_SYNC_SETTINGS"
	RolePermissionNameEnumEditAssignments           RolePermissionNameEnum = "EDIT_ASSIGNMENTS"
	RolePermissionNameEnumEditRequestConfigurations RolePermissionNameEnum = "EDIT_REQUEST_CONFIGURATIONS"
	RolePermissionNameEnumEditEventStream           RolePermissionNameEnum = "EDIT_EVENT_STREAM"
	RolePermissionNameEnumAssignUarReviewers        RolePermissionNameEnum = "ASSIGN_UAR_REVIEWERS"
	RolePermissionNameEnumSendReminders             RolePermissionNameEnum = "SEND_REMINDERS"
	RolePermissionNameEnumStop                      RolePermissionNameEnum = "STOP"
	RolePermissionNameEnumRequestOnBehalf           RolePermissionNameEnum = "REQUEST_ON_BEHALF"
	RolePermissionNameEnumResetMfa                  RolePermissionNameEnum = "RESET_MFA"
)

func (RolePermissionNameEnum) ToPointer

func (*RolePermissionNameEnum) UnmarshalJSON

func (e *RolePermissionNameEnum) UnmarshalJSON(data []byte) error

type RolePermissionTargetTypeEnum

type RolePermissionTargetTypeEnum string

RolePermissionTargetTypeEnum - The type of the target for the role permission.

const (
	RolePermissionTargetTypeEnumResource     RolePermissionTargetTypeEnum = "RESOURCE"
	RolePermissionTargetTypeEnumConnection   RolePermissionTargetTypeEnum = "CONNECTION"
	RolePermissionTargetTypeEnumGroup        RolePermissionTargetTypeEnum = "GROUP"
	RolePermissionTargetTypeEnumBundle       RolePermissionTargetTypeEnum = "BUNDLE"
	RolePermissionTargetTypeEnumUser         RolePermissionTargetTypeEnum = "USER"
	RolePermissionTargetTypeEnumAccessReview RolePermissionTargetTypeEnum = "ACCESS_REVIEW"
)

func (RolePermissionTargetTypeEnum) ToPointer

func (*RolePermissionTargetTypeEnum) UnmarshalJSON

func (e *RolePermissionTargetTypeEnum) UnmarshalJSON(data []byte) error

type RuleClauses

type RuleClauses struct {
	Unless *RuleConjunction `json:"unless,omitempty"`
	When   RuleConjunction  `json:"when"`
}

func (*RuleClauses) GetUnless

func (o *RuleClauses) GetUnless() *RuleConjunction

func (*RuleClauses) GetWhen

func (o *RuleClauses) GetWhen() RuleConjunction

type RuleConjunction

type RuleConjunction struct {
	Clauses []RuleDisjunction `json:"clauses"`
}

func (*RuleConjunction) GetClauses

func (o *RuleConjunction) GetClauses() []RuleDisjunction

type RuleDisjunction

type RuleDisjunction struct {
	Selectors []TagSelector `json:"selectors"`
}

func (*RuleDisjunction) GetSelectors

func (o *RuleDisjunction) GetSelectors() []TagSelector

type SalesforcePermissionSet

type SalesforcePermissionSet struct {
	// The id of the permission set.
	PermissionSetID string `json:"permission_set_id"`
}

SalesforcePermissionSet - Remote info for Salesforce permission set.

func (*SalesforcePermissionSet) GetPermissionSetID

func (o *SalesforcePermissionSet) GetPermissionSetID() string

type SalesforceProfile

type SalesforceProfile struct {
	// The id of the permission set.
	ProfileID string `json:"profile_id"`
	// The id of the user license.
	UserLicenseID string `json:"user_license_id"`
}

SalesforceProfile - Remote info for Salesforce profile.

func (*SalesforceProfile) GetProfileID

func (o *SalesforceProfile) GetProfileID() string

func (*SalesforceProfile) GetUserLicenseID

func (o *SalesforceProfile) GetUserLicenseID() string

type SalesforceRole

type SalesforceRole struct {
	// The id of the role.
	RoleID string `json:"role_id"`
}

SalesforceRole - Remote info for Salesforce role.

func (*SalesforceRole) GetRoleID

func (o *SalesforceRole) GetRoleID() string

type ScopedRolePermission

type ScopedRolePermission struct {
	AllowAll bool `json:"allow_all"`
	// The name of the role permission.
	PermissionName RolePermissionNameEnum `json:"permission_name"`
	// The IDs of the entities that this permission applies to. If empty of missing, the permission will have untargeted scope.
	TargetIds []string `json:"target_ids,omitempty"`
	// The type of the target for the role permission.
	TargetType RolePermissionTargetTypeEnum `json:"target_type"`
}

func (*ScopedRolePermission) GetAllowAll

func (o *ScopedRolePermission) GetAllowAll() bool

func (*ScopedRolePermission) GetPermissionName

func (o *ScopedRolePermission) GetPermissionName() RolePermissionNameEnum

func (*ScopedRolePermission) GetTargetIds

func (o *ScopedRolePermission) GetTargetIds() []string

func (*ScopedRolePermission) GetTargetType

type ScopedRolePermissionList

type ScopedRolePermissionList struct {
	Permissions []ScopedRolePermission `json:"permissions"`
}

func (*ScopedRolePermissionList) GetPermissions

func (o *ScopedRolePermissionList) GetPermissions() []ScopedRolePermission

type Security

type Security struct {
	BearerAuth string `security:"scheme,type=http,subtype=bearer,name=Authorization"`
}

func (*Security) GetBearerAuth

func (o *Security) GetBearerAuth() string

type Session

type Session struct {
	// # Access Level Object
	// ### Description
	// The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access
	// level is a `AccessLevel` object whose fields are all empty strings.
	//
	// ### Usage Example
	// View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.
	AccessLevel ResourceAccessLevel `json:"access_level"`
	// The ID of the connection.
	ConnectionID string `json:"connection_id"`
	// The day and time the user's access will expire.
	ExpirationDate time.Time `json:"expiration_date"`
	// The ID of the resource.
	ResourceID string `json:"resource_id"`
	// The ID of the user.
	UserID string `json:"user_id"`
}

# Session Object ### Description The `Session` object is used to represent an access session. Some resources can be accessed temporarily via a time-bounded session.

### Usage Example Fetch from the `LIST Sessions` endpoint.

func (*Session) GetAccessLevel

func (o *Session) GetAccessLevel() ResourceAccessLevel

func (*Session) GetConnectionID

func (o *Session) GetConnectionID() string

func (*Session) GetExpirationDate

func (o *Session) GetExpirationDate() time.Time

func (*Session) GetResourceID

func (o *Session) GetResourceID() string

func (*Session) GetUserID

func (o *Session) GetUserID() string

func (Session) MarshalJSON

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

func (*Session) UnmarshalJSON

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

type SessionsList

type SessionsList struct {
	// The cursor with which to continue pagination if additional result pages exist.
	Next *string `json:"next,omitempty"`
	// The cursor used to obtain the current result page.
	Previous *string   `json:"previous,omitempty"`
	Results  []Session `json:"results,omitempty"`
}

func (*SessionsList) GetNext

func (o *SessionsList) GetNext() *string

func (*SessionsList) GetPrevious

func (o *SessionsList) GetPrevious() *string

func (*SessionsList) GetResults

func (o *SessionsList) GetResults() []Session

type SnowflakeRole

type SnowflakeRole struct {
	// The id of the Snowflake role.
	RoleID string `json:"role_id"`
}

SnowflakeRole - Remote info for Snowflake role.

func (*SnowflakeRole) GetRoleID

func (o *SnowflakeRole) GetRoleID() string

type Status

type Status string

Status - The status of the access rule.

const (
	StatusActive Status = "ACTIVE"
	StatusPaused Status = "PAUSED"
)

func (Status) ToPointer

func (e Status) ToPointer() *Status

func (*Status) UnmarshalJSON

func (e *Status) UnmarshalJSON(data []byte) error

type SubEvent

type SubEvent struct {
	AdditionalProperties any `additionalProperties:"true" json:"-"`
	// The subevent type.
	SubEventType string `json:"sub_event_type"`
}

SubEvent - # Sub event Object ### Description The `SubEvent` object is used to represent a subevent.

### Usage Example Fetch from the `LIST Events` endpoint.

func (*SubEvent) GetAdditionalProperties

func (o *SubEvent) GetAdditionalProperties() any

func (*SubEvent) GetSubEventType

func (o *SubEvent) GetSubEventType() string

func (SubEvent) MarshalJSON

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

func (*SubEvent) UnmarshalJSON

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

type SupportTicket

type SupportTicket struct {
	Identifier string `json:"identifier"`
	RemoteID   string `json:"remote_id"`
	// The third party ticketing platform provider.
	TicketingProvider TicketingProviderEnum `json:"ticketing_provider"`
	URL               string                `json:"url"`
}

func (*SupportTicket) GetIdentifier

func (o *SupportTicket) GetIdentifier() string

func (*SupportTicket) GetRemoteID

func (o *SupportTicket) GetRemoteID() string

func (*SupportTicket) GetTicketingProvider

func (o *SupportTicket) GetTicketingProvider() TicketingProviderEnum

func (*SupportTicket) GetURL

func (o *SupportTicket) GetURL() string

type SyncError

type SyncError struct {
	// The ID of the app that the error occured for.
	AppID *string `json:"app_id,omitempty"`
	// The error message associated with the sync error.
	ErrorMessage string `json:"error_message"`
	// The time when this error was first seen.
	FirstSeen time.Time `json:"first_seen"`
	// The time when this error was most recently seen.
	LastSeen time.Time `json:"last_seen"`
}

# SyncError Object ### Description The `SyncError` object is used to represent a sync error.

### Usage Example List from the `GET Sync Errors` endpoint.

func (*SyncError) GetAppID

func (o *SyncError) GetAppID() *string

func (*SyncError) GetErrorMessage

func (o *SyncError) GetErrorMessage() string

func (*SyncError) GetFirstSeen

func (o *SyncError) GetFirstSeen() time.Time

func (*SyncError) GetLastSeen

func (o *SyncError) GetLastSeen() time.Time

func (SyncError) MarshalJSON

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

func (*SyncError) UnmarshalJSON

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

type SyncErrorList

type SyncErrorList struct {
	SyncErrors []SyncError `json:"sync_errors"`
}

func (*SyncErrorList) GetSyncErrors

func (o *SyncErrorList) GetSyncErrors() []SyncError

type SyncTask added in v3.1.1

type SyncTask struct {
	// The time when the sync task was completed.
	CompletedAt time.Time `json:"completed_at"`
	// The ID of the sync task.
	ID string `json:"id"`
}

SyncTask - Represents a sync task that has been completed, either successfully or with errors.

func (*SyncTask) GetCompletedAt added in v3.1.1

func (o *SyncTask) GetCompletedAt() time.Time

func (*SyncTask) GetID added in v3.1.1

func (o *SyncTask) GetID() string

func (SyncTask) MarshalJSON added in v3.1.1

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

func (*SyncTask) UnmarshalJSON added in v3.1.1

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

type Tag

type Tag struct {
	// The date the tag was created.
	CreatedAt *time.Time `json:"created_at,omitempty"`
	// The ID of the tag.
	ID string `json:"tag_id"`
	// The key of the tag.
	Key *string `json:"key,omitempty"`
	// The date the tag was last updated.
	UpdatedAt *time.Time `json:"updated_at,omitempty"`
	// The ID of the user that created the tag.
	UserCreatorID *string `json:"user_creator_id,omitempty"`
	// The value of the tag.
	Value *string `json:"value,omitempty"`
}

# Tag Object ### Description The `Tag` object is used to represent a tag.

### Usage Example Get tags from the `GET Tag` endpoint.

func (*Tag) GetCreatedAt

func (o *Tag) GetCreatedAt() *time.Time

func (*Tag) GetID

func (o *Tag) GetID() string

func (*Tag) GetKey

func (o *Tag) GetKey() *string

func (*Tag) GetUpdatedAt

func (o *Tag) GetUpdatedAt() *time.Time

func (*Tag) GetUserCreatorID

func (o *Tag) GetUserCreatorID() *string

func (*Tag) GetValue

func (o *Tag) GetValue() *string

func (Tag) MarshalJSON

func (t Tag) MarshalJSON() ([]byte, error)

func (*Tag) UnmarshalJSON

func (t *Tag) UnmarshalJSON(data []byte) error

type TagFilter

type TagFilter struct {
	// The key of the tag.
	Key string `json:"key"`
	// The value of the tag.
	Value *string `json:"value,omitempty"`
}

TagFilter - A tag filter defined by the tags key and value.

func (*TagFilter) GetKey

func (o *TagFilter) GetKey() string

func (*TagFilter) GetValue

func (o *TagFilter) GetValue() *string

type TagSelector

type TagSelector struct {
	ConnectionID string `json:"connection_id"`
	Key          string `json:"key"`
	Value        string `json:"value"`
}

func (*TagSelector) GetConnectionID

func (o *TagSelector) GetConnectionID() string

func (*TagSelector) GetKey

func (o *TagSelector) GetKey() string

func (*TagSelector) GetValue

func (o *TagSelector) GetValue() string

type TagsList

type TagsList struct {
	Tags []Tag `json:"tags"`
}

func (*TagsList) GetTags

func (o *TagsList) GetTags() []Tag

type TeleportRole

type TeleportRole struct {
	// The name role.
	RoleName string `json:"role_name"`
}

TeleportRole - Remote info for Teleport role.

func (*TeleportRole) GetRoleName

func (o *TeleportRole) GetRoleName() string

type ThirdPartyProviderEnum added in v3.1.1

type ThirdPartyProviderEnum string

ThirdPartyProviderEnum - The third party provider of the remote user.

const (
	ThirdPartyProviderEnumAuth0            ThirdPartyProviderEnum = "AUTH0"
	ThirdPartyProviderEnumSlack            ThirdPartyProviderEnum = "SLACK"
	ThirdPartyProviderEnumGoogleChat       ThirdPartyProviderEnum = "GOOGLE_CHAT"
	ThirdPartyProviderEnumJira             ThirdPartyProviderEnum = "JIRA"
	ThirdPartyProviderEnumLinear           ThirdPartyProviderEnum = "LINEAR"
	ThirdPartyProviderEnumServiceNow       ThirdPartyProviderEnum = "SERVICE_NOW"
	ThirdPartyProviderEnumPagerDuty        ThirdPartyProviderEnum = "PAGER_DUTY"
	ThirdPartyProviderEnumOpsgenie         ThirdPartyProviderEnum = "OPSGENIE"
	ThirdPartyProviderEnumGitHub           ThirdPartyProviderEnum = "GIT_HUB"
	ThirdPartyProviderEnumGitLab           ThirdPartyProviderEnum = "GIT_LAB"
	ThirdPartyProviderEnumGitLabConnection ThirdPartyProviderEnum = "GIT_LAB_CONNECTION"
	ThirdPartyProviderEnumTeleport         ThirdPartyProviderEnum = "TELEPORT"
)

func (ThirdPartyProviderEnum) ToPointer added in v3.1.1

func (*ThirdPartyProviderEnum) UnmarshalJSON added in v3.1.1

func (e *ThirdPartyProviderEnum) UnmarshalJSON(data []byte) error

type TicketPropagationConfiguration

type TicketPropagationConfiguration struct {
	EnabledOnGrant      bool    `json:"enabled_on_grant"`
	EnabledOnRevocation bool    `json:"enabled_on_revocation"`
	TicketProjectID     *string `json:"ticket_project_id,omitempty"`
	// The third party ticketing platform provider.
	TicketProvider *TicketingProviderEnum `json:"ticket_provider,omitempty"`
}

TicketPropagationConfiguration - Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.

func (*TicketPropagationConfiguration) GetEnabledOnGrant

func (o *TicketPropagationConfiguration) GetEnabledOnGrant() bool

func (*TicketPropagationConfiguration) GetEnabledOnRevocation

func (o *TicketPropagationConfiguration) GetEnabledOnRevocation() bool

func (*TicketPropagationConfiguration) GetTicketProjectID

func (o *TicketPropagationConfiguration) GetTicketProjectID() *string

func (*TicketPropagationConfiguration) GetTicketProvider

func (o *TicketPropagationConfiguration) GetTicketProvider() *TicketingProviderEnum

type TicketingProviderEnum

type TicketingProviderEnum string

TicketingProviderEnum - The third party ticketing platform provider.

const (
	TicketingProviderEnumJira       TicketingProviderEnum = "JIRA"
	TicketingProviderEnumLinear     TicketingProviderEnum = "LINEAR"
	TicketingProviderEnumServiceNow TicketingProviderEnum = "SERVICE_NOW"
)

func (TicketingProviderEnum) ToPointer

func (*TicketingProviderEnum) UnmarshalJSON

func (e *TicketingProviderEnum) UnmarshalJSON(data []byte) error

type UARReviewerAssignmentPolicyEnum

type UARReviewerAssignmentPolicyEnum string

UARReviewerAssignmentPolicyEnum - A policy for auto-assigning reviewers. If auto-assignment is on, specific assignments can still be manually adjusted after the access review is started. Default is Manually.

const (
	UARReviewerAssignmentPolicyEnumManually          UARReviewerAssignmentPolicyEnum = "MANUALLY"
	UARReviewerAssignmentPolicyEnumByOwningTeamAdmin UARReviewerAssignmentPolicyEnum = "BY_OWNING_TEAM_ADMIN"
	UARReviewerAssignmentPolicyEnumByManager         UARReviewerAssignmentPolicyEnum = "BY_MANAGER"
)

func (UARReviewerAssignmentPolicyEnum) ToPointer

func (*UARReviewerAssignmentPolicyEnum) UnmarshalJSON

func (e *UARReviewerAssignmentPolicyEnum) UnmarshalJSON(data []byte) error

type UARScope

type UARScope struct {
	// This access review will include resources and groups who are owned by one of the owners corresponding to the given IDs.
	Admins []string `json:"admins,omitempty"`
	// This access review will include items in the specified applications
	Apps []string `json:"apps,omitempty"`
	// This access review will include resources and groups with ids in the given strings.
	Entities []string `json:"entities,omitempty"`
	// Specifies whether entities must match all (AND) or any (OR) of the filters.
	FilterOperator *FilterOperator `json:"filter_operator,omitempty"`
	// This access review will include items of the specified group types
	GroupTypes []GroupTypeEnum `json:"group_types,omitempty"`
	// Specifies what users can see during an Access Review
	GroupVisibility      *GroupVisibility `json:"group_visibility,omitempty"`
	IncludeGroupBindings *bool            `json:"include_group_bindings,omitempty"`
	// This access review will include resources and groups whose name contains one of the given strings.
	Names []string `json:"names,omitempty"`
	// This access review will include items of the specified resource types
	ResourceTypes []ResourceTypeEnum `json:"resource_types,omitempty"`
	// This access review will include resources and groups who are tagged with one of the given tags.
	Tags []TagFilter `json:"tags,omitempty"`
	// The access review will only include the following users. If any users are selected, any entity filters will be applied to only the entities that the selected users have access to.
	Users []string `json:"users,omitempty"`
}

UARScope - If set, the access review will only contain resources and groups that match at least one of the filters in scope.

func (*UARScope) GetAdmins

func (o *UARScope) GetAdmins() []string

func (*UARScope) GetApps

func (o *UARScope) GetApps() []string

func (*UARScope) GetEntities

func (o *UARScope) GetEntities() []string

func (*UARScope) GetFilterOperator

func (o *UARScope) GetFilterOperator() *FilterOperator

func (*UARScope) GetGroupTypes

func (o *UARScope) GetGroupTypes() []GroupTypeEnum

func (*UARScope) GetGroupVisibility

func (o *UARScope) GetGroupVisibility() *GroupVisibility

func (*UARScope) GetIncludeGroupBindings

func (o *UARScope) GetIncludeGroupBindings() *bool

func (*UARScope) GetNames

func (o *UARScope) GetNames() []string

func (*UARScope) GetResourceTypes

func (o *UARScope) GetResourceTypes() []ResourceTypeEnum

func (*UARScope) GetTags

func (o *UARScope) GetTags() []TagFilter

func (*UARScope) GetUsers

func (o *UARScope) GetUsers() []string

type Uar

type Uar struct {
	// The last day for reviewers to complete their access reviews.
	Deadline time.Time `json:"deadline"`
	// The name of the UAR.
	Name string `json:"name"`
	// A policy for auto-assigning reviewers. If auto-assignment is on, specific assignments can still be manually adjusted after the access review is started. Default is Manually.
	ReviewerAssignmentPolicy UARReviewerAssignmentPolicyEnum `json:"reviewer_assignment_policy"`
	// A bool representing whether to present a warning when a user is the only reviewer for themself. Default is False.
	SelfReviewAllowed bool `json:"self_review_allowed"`
	// A bool representing whether to send a notification to reviewers when they're assigned a new review. Default is False.
	SendReviewerAssignmentNotification bool `json:"send_reviewer_assignment_notification"`
	// The time zone name (as defined by the IANA Time Zone database) used in the access review deadline and exported audit report. Default is America/Los_Angeles.
	TimeZone string `json:"time_zone"`
	// The ID of the UAR.
	UarID string `json:"uar_id"`
	// If set, the access review will only contain resources and groups that match at least one of the filters in scope.
	UarScope *UARScope `json:"uar_scope,omitempty"`
}

Uar - A user access review.

func (*Uar) GetDeadline

func (o *Uar) GetDeadline() time.Time

func (*Uar) GetName

func (o *Uar) GetName() string

func (*Uar) GetReviewerAssignmentPolicy

func (o *Uar) GetReviewerAssignmentPolicy() UARReviewerAssignmentPolicyEnum

func (*Uar) GetSelfReviewAllowed

func (o *Uar) GetSelfReviewAllowed() bool

func (*Uar) GetSendReviewerAssignmentNotification

func (o *Uar) GetSendReviewerAssignmentNotification() bool

func (*Uar) GetTimeZone

func (o *Uar) GetTimeZone() string

func (*Uar) GetUarID

func (o *Uar) GetUarID() string

func (*Uar) GetUarScope

func (o *Uar) GetUarScope() *UARScope

func (Uar) MarshalJSON

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

func (*Uar) UnmarshalJSON

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

type UpdateAccessRuleInfo

type UpdateAccessRuleInfo struct {
	// The ID of the owner of the group.
	AdminOwnerID string `json:"admin_owner_id"`
	// A description of the group.
	Description string `json:"description"`
	// The name of the access rule.
	Name        string      `json:"name"`
	RuleClauses RuleClauses `json:"ruleClauses"`
	// The status of the access rule.
	Status UpdateAccessRuleInfoStatus `json:"status"`
}

# UpdateAccessRuleInfo Object ### Description The `UpdateAccessRuleInfo` object is used as an input to the UpdateAccessRule and CreateAccessRule API.

func (*UpdateAccessRuleInfo) GetAdminOwnerID

func (o *UpdateAccessRuleInfo) GetAdminOwnerID() string

func (*UpdateAccessRuleInfo) GetDescription

func (o *UpdateAccessRuleInfo) GetDescription() string

func (*UpdateAccessRuleInfo) GetName

func (o *UpdateAccessRuleInfo) GetName() string

func (*UpdateAccessRuleInfo) GetRuleClauses

func (o *UpdateAccessRuleInfo) GetRuleClauses() RuleClauses

func (*UpdateAccessRuleInfo) GetStatus

type UpdateAccessRuleInfoStatus

type UpdateAccessRuleInfoStatus string

UpdateAccessRuleInfoStatus - The status of the access rule.

const (
	UpdateAccessRuleInfoStatusActive UpdateAccessRuleInfoStatus = "ACTIVE"
	UpdateAccessRuleInfoStatusPaused UpdateAccessRuleInfoStatus = "PAUSED"
)

func (UpdateAccessRuleInfoStatus) ToPointer

func (*UpdateAccessRuleInfoStatus) UnmarshalJSON

func (e *UpdateAccessRuleInfoStatus) UnmarshalJSON(data []byte) error

type UpdateConfigurationTemplateInfo

type UpdateConfigurationTemplateInfo struct {
	// The ID of the owner of the configuration template.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// The IDs of the break glass users linked to the configuration template.
	BreakGlassUserIds []string `json:"break_glass_user_ids,omitempty"`
	// The ID of the configuration template.
	ConfigurationTemplateID string `json:"configuration_template_id"`
	// Custom request notification sent upon request approval for this configuration template.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// The IDs of the audit message channels linked to the configuration template.
	LinkedAuditMessageChannelIds []string `json:"linked_audit_message_channel_ids,omitempty"`
	// The IDs of the on-call schedules linked to the configuration template.
	MemberOnCallScheduleIds []string `json:"member_oncall_schedule_ids,omitempty"`
	// The name of the configuration template.
	Name *string `json:"name,omitempty"`
	// The request configuration list linked to the configuration template.
	RequestConfigurations []RequestConfiguration `json:"request_configurations,omitempty"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this configuration template.
	RequireMfaToApprove *bool `json:"require_mfa_to_approve,omitempty"`
	// A bool representing whether or not to require MFA to connect to resources associated with this configuration template.
	RequireMfaToConnect *bool `json:"require_mfa_to_connect,omitempty"`
	// Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.
	TicketPropagation *TicketPropagationConfiguration `json:"ticket_propagation,omitempty"`
	// Visibility infomation of an entity.
	Visibility *VisibilityInfo `json:"visibility,omitempty"`
}

# UpdateConfigurationTemplateInfo Object ### Description The `ConfigurationTemplate` object is used to represent an update to a configuration template.

### Usage Example Use in the `PUT Configuration Templates` endpoint.

func (*UpdateConfigurationTemplateInfo) GetAdminOwnerID

func (o *UpdateConfigurationTemplateInfo) GetAdminOwnerID() *string

func (*UpdateConfigurationTemplateInfo) GetBreakGlassUserIds

func (o *UpdateConfigurationTemplateInfo) GetBreakGlassUserIds() []string

func (*UpdateConfigurationTemplateInfo) GetConfigurationTemplateID

func (o *UpdateConfigurationTemplateInfo) GetConfigurationTemplateID() string

func (*UpdateConfigurationTemplateInfo) GetCustomRequestNotification

func (o *UpdateConfigurationTemplateInfo) GetCustomRequestNotification() *string

func (*UpdateConfigurationTemplateInfo) GetLinkedAuditMessageChannelIds

func (o *UpdateConfigurationTemplateInfo) GetLinkedAuditMessageChannelIds() []string

func (*UpdateConfigurationTemplateInfo) GetMemberOnCallScheduleIds added in v3.2.0

func (o *UpdateConfigurationTemplateInfo) GetMemberOnCallScheduleIds() []string

func (*UpdateConfigurationTemplateInfo) GetName

func (*UpdateConfigurationTemplateInfo) GetRequestConfigurations

func (o *UpdateConfigurationTemplateInfo) GetRequestConfigurations() []RequestConfiguration

func (*UpdateConfigurationTemplateInfo) GetRequireMfaToApprove

func (o *UpdateConfigurationTemplateInfo) GetRequireMfaToApprove() *bool

func (*UpdateConfigurationTemplateInfo) GetRequireMfaToConnect

func (o *UpdateConfigurationTemplateInfo) GetRequireMfaToConnect() *bool

func (*UpdateConfigurationTemplateInfo) GetTicketPropagation

func (*UpdateConfigurationTemplateInfo) GetVisibility

func (o *UpdateConfigurationTemplateInfo) GetVisibility() *VisibilityInfo

type UpdateGroupBindingInfo

type UpdateGroupBindingInfo struct {
	// The ID of the group binding.
	GroupBindingID string `json:"group_binding_id"`
	// The list of groups.
	Groups []UpdateGroupBindingInfoGroups `json:"groups"`
	// The ID of the source group.
	SourceGroupID string `json:"source_group_id"`
}

# UpdateGroupBindingInfo Object ### Description The `UpdateGroupBindingInfo` object is used as an input to the UpdateGroupBinding API.

func (*UpdateGroupBindingInfo) GetGroupBindingID

func (o *UpdateGroupBindingInfo) GetGroupBindingID() string

func (*UpdateGroupBindingInfo) GetGroups

func (*UpdateGroupBindingInfo) GetSourceGroupID

func (o *UpdateGroupBindingInfo) GetSourceGroupID() string

type UpdateGroupBindingInfoGroups

type UpdateGroupBindingInfoGroups struct {
	// The ID of the group.
	GroupID string `json:"group_id"`
}

func (*UpdateGroupBindingInfoGroups) GetGroupID

func (o *UpdateGroupBindingInfoGroups) GetGroupID() string

type UpdateGroupBindingInfoList

type UpdateGroupBindingInfoList struct {
	// A list of group bindings with information to update.
	GroupBindings []UpdateGroupBindingInfo `json:"group_bindings"`
}

func (*UpdateGroupBindingInfoList) GetGroupBindings

func (o *UpdateGroupBindingInfoList) GetGroupBindings() []UpdateGroupBindingInfo

type UpdateGroupInfo

type UpdateGroupInfo struct {
	// The ID of the owner of the group.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// Custom request notification sent to the requester when the request is approved.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// A description of the group.
	Description *string `json:"description,omitempty"`
	// The duration for which access can be extended (in minutes).
	ExtensionsDurationInMinutes *int64 `json:"extensions_duration_in_minutes,omitempty"`
	// A list of User IDs for the group leaders of the group
	GroupLeaderUserIds []string `json:"group_leader_user_ids,omitempty"`
	// The ID of the group.
	ID string `json:"group_id"`
	// The name of the group.
	Name *string `json:"name,omitempty"`
	// The request configuration list of the configuration template. If not provided, the default request configuration will be used.
	RequestConfigurations []RequestConfiguration `json:"request_configurations"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this group.
	RequireMfaToApprove     *bool                `default:"false" json:"require_mfa_to_approve"`
	RiskSensitivityOverride *RiskSensitivityEnum `json:"risk_sensitivity_override,omitempty"`
}

# UpdateGroupInfo Object ### Description The `UpdateGroupInfo` object is used as an input to the UpdateGroup API.

func (*UpdateGroupInfo) GetAdminOwnerID

func (o *UpdateGroupInfo) GetAdminOwnerID() *string

func (*UpdateGroupInfo) GetCustomRequestNotification

func (o *UpdateGroupInfo) GetCustomRequestNotification() *string

func (*UpdateGroupInfo) GetDescription

func (o *UpdateGroupInfo) GetDescription() *string

func (*UpdateGroupInfo) GetExtensionsDurationInMinutes added in v3.2.0

func (o *UpdateGroupInfo) GetExtensionsDurationInMinutes() *int64

func (*UpdateGroupInfo) GetGroupLeaderUserIds

func (o *UpdateGroupInfo) GetGroupLeaderUserIds() []string

func (*UpdateGroupInfo) GetID

func (o *UpdateGroupInfo) GetID() string

func (*UpdateGroupInfo) GetName

func (o *UpdateGroupInfo) GetName() *string

func (*UpdateGroupInfo) GetRequestConfigurations

func (o *UpdateGroupInfo) GetRequestConfigurations() []RequestConfiguration

func (*UpdateGroupInfo) GetRequireMfaToApprove

func (o *UpdateGroupInfo) GetRequireMfaToApprove() *bool

func (*UpdateGroupInfo) GetRiskSensitivityOverride

func (o *UpdateGroupInfo) GetRiskSensitivityOverride() *RiskSensitivityEnum

func (UpdateGroupInfo) MarshalJSON

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

func (*UpdateGroupInfo) UnmarshalJSON

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

type UpdateGroupInfoList

type UpdateGroupInfoList struct {
	// A list of groups with information to update.
	Groups []UpdateGroupInfo `json:"groups"`
}

func (*UpdateGroupInfoList) GetGroups

func (o *UpdateGroupInfoList) GetGroups() []UpdateGroupInfo

type UpdateGroupResourcesInfo

type UpdateGroupResourcesInfo struct {
	Resources []ResourceWithAccessLevel `json:"resources"`
}

func (*UpdateGroupResourcesInfo) GetResources

type UpdateOwnerInfo

type UpdateOwnerInfo struct {
	// The amount of time (in minutes) before the next reviewer is notified. Use 0 to remove escalation policy.
	AccessRequestEscalationPeriod *int64 `json:"access_request_escalation_period,omitempty"`
	// A description of the owner.
	Description *string `json:"description,omitempty"`
	// The ID of the owner.
	ID string `json:"owner_id"`
	// The name of the owner.
	Name *string `json:"name,omitempty"`
	// The message channel id for the reviewer channel. Use "" to remove an existing message channel.
	ReviewerMessageChannelID *string `json:"reviewer_message_channel_id,omitempty"`
	// Sync this owner's user list with a source group. Use "" to remove an existing source group.
	SourceGroupID *string `json:"source_group_id,omitempty"`
}

# UpdateOwnerInfo Object ### Description The `UpdateOwnerInfo` object is used as an input to the UpdateOwner API.

func (*UpdateOwnerInfo) GetAccessRequestEscalationPeriod

func (o *UpdateOwnerInfo) GetAccessRequestEscalationPeriod() *int64

func (*UpdateOwnerInfo) GetDescription

func (o *UpdateOwnerInfo) GetDescription() *string

func (*UpdateOwnerInfo) GetID

func (o *UpdateOwnerInfo) GetID() string

func (*UpdateOwnerInfo) GetName

func (o *UpdateOwnerInfo) GetName() *string

func (*UpdateOwnerInfo) GetReviewerMessageChannelID

func (o *UpdateOwnerInfo) GetReviewerMessageChannelID() *string

func (*UpdateOwnerInfo) GetSourceGroupID

func (o *UpdateOwnerInfo) GetSourceGroupID() *string

type UpdateOwnerInfoList

type UpdateOwnerInfoList struct {
	// A list of owners with information to update.
	Owners []UpdateOwnerInfo `json:"owners"`
}

func (*UpdateOwnerInfoList) GetOwners

func (o *UpdateOwnerInfoList) GetOwners() []UpdateOwnerInfo

type UpdateResourceInfo

type UpdateResourceInfo struct {
	// The ID of the owner of the resource.
	AdminOwnerID *string `json:"admin_owner_id,omitempty"`
	// Custom request notification sent upon request approval.
	CustomRequestNotification *string `json:"custom_request_notification,omitempty"`
	// A description of the resource.
	Description *string `json:"description,omitempty"`
	// The duration for which access can be extended (in minutes).
	ExtensionsDurationInMinutes *int64 `json:"extensions_duration_in_minutes,omitempty"`
	// The ID of the resource.
	ID string `json:"resource_id"`
	// The name of the resource.
	Name *string `json:"name,omitempty"`
	// A list of configurations for requests to this resource. If not provided, the default request configuration will be used.
	RequestConfigurations []RequestConfiguration `json:"request_configurations"`
	// A bool representing whether or not to require MFA for reviewers to approve requests for this resource.
	RequireMfaToApprove *bool `default:"false" json:"require_mfa_to_approve"`
	// A bool representing whether or not to require MFA to connect to this resource.
	RequireMfaToConnect     *bool                `json:"require_mfa_to_connect,omitempty"`
	RiskSensitivityOverride *RiskSensitivityEnum `json:"risk_sensitivity_override,omitempty"`
	// Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.
	TicketPropagation *TicketPropagationConfiguration `json:"ticket_propagation,omitempty"`
}

# UpdateResourceInfo Object ### Description The `UpdateResourceInfo` object is used as an input to the UpdateResource API.

func (*UpdateResourceInfo) GetAdminOwnerID

func (o *UpdateResourceInfo) GetAdminOwnerID() *string

func (*UpdateResourceInfo) GetCustomRequestNotification

func (o *UpdateResourceInfo) GetCustomRequestNotification() *string

func (*UpdateResourceInfo) GetDescription

func (o *UpdateResourceInfo) GetDescription() *string

func (*UpdateResourceInfo) GetExtensionsDurationInMinutes added in v3.2.0

func (o *UpdateResourceInfo) GetExtensionsDurationInMinutes() *int64

func (*UpdateResourceInfo) GetID

func (o *UpdateResourceInfo) GetID() string

func (*UpdateResourceInfo) GetName

func (o *UpdateResourceInfo) GetName() *string

func (*UpdateResourceInfo) GetRequestConfigurations

func (o *UpdateResourceInfo) GetRequestConfigurations() []RequestConfiguration

func (*UpdateResourceInfo) GetRequireMfaToApprove

func (o *UpdateResourceInfo) GetRequireMfaToApprove() *bool

func (*UpdateResourceInfo) GetRequireMfaToConnect

func (o *UpdateResourceInfo) GetRequireMfaToConnect() *bool

func (*UpdateResourceInfo) GetRiskSensitivityOverride

func (o *UpdateResourceInfo) GetRiskSensitivityOverride() *RiskSensitivityEnum

func (*UpdateResourceInfo) GetTicketPropagation

func (o *UpdateResourceInfo) GetTicketPropagation() *TicketPropagationConfiguration

func (UpdateResourceInfo) MarshalJSON

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

func (*UpdateResourceInfo) UnmarshalJSON

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

type UpdateResourceInfoList

type UpdateResourceInfoList struct {
	// A list of resources with information to update.
	Resources []UpdateResourceInfo `json:"resources"`
}

func (*UpdateResourceInfoList) GetResources

func (o *UpdateResourceInfoList) GetResources() []UpdateResourceInfo

type User

type User struct {
	// The email of the user.
	Email string `json:"email"`
	// The first name of the user.
	FirstName string `json:"first_name"`
	// User status pulled from an HR/IDP provider.
	HrIdpStatus *UserHrIdpStatusEnum `json:"hr_idp_status,omitempty"`
	// The ID of the user.
	ID string `json:"user_id"`
	// The last name of the user.
	LastName string `json:"last_name"`
	// The full name of the user.
	Name string `json:"full_name"`
	// The user's position.
	Position string `json:"position"`
}

# User Object ### Description The `User` object is used to represent a user.

### Usage Example Fetch from the `LIST Sessions` endpoint.

func (*User) GetEmail

func (o *User) GetEmail() string

func (*User) GetFirstName

func (o *User) GetFirstName() string

func (*User) GetHrIdpStatus

func (o *User) GetHrIdpStatus() *UserHrIdpStatusEnum

func (*User) GetID

func (o *User) GetID() string

func (*User) GetLastName

func (o *User) GetLastName() string

func (*User) GetName

func (o *User) GetName() string

func (*User) GetPosition

func (o *User) GetPosition() string

type UserHrIdpStatusEnum

type UserHrIdpStatusEnum string

UserHrIdpStatusEnum - User status pulled from an HR/IDP provider.

const (
	UserHrIdpStatusEnumActive        UserHrIdpStatusEnum = "ACTIVE"
	UserHrIdpStatusEnumSuspended     UserHrIdpStatusEnum = "SUSPENDED"
	UserHrIdpStatusEnumDeprovisioned UserHrIdpStatusEnum = "DEPROVISIONED"
	UserHrIdpStatusEnumDeleted       UserHrIdpStatusEnum = "DELETED"
	UserHrIdpStatusEnumNotFound      UserHrIdpStatusEnum = "NOT_FOUND"
)

func (UserHrIdpStatusEnum) ToPointer

func (*UserHrIdpStatusEnum) UnmarshalJSON

func (e *UserHrIdpStatusEnum) UnmarshalJSON(data []byte) error

type UserIDList

type UserIDList struct {
	UserIds []string `json:"user_ids"`
}

UserIDList - A list of user IDs.

func (*UserIDList) GetUserIds

func (o *UserIDList) GetUserIds() []string

type UserList

type UserList struct {
	Users []User `json:"users"`
}

UserList - A list of users.

func (*UserList) GetUsers

func (o *UserList) GetUsers() []User

type VisibilityInfo

type VisibilityInfo struct {
	// The visibility level of the entity.
	Visibility         VisibilityTypeEnum `json:"visibility"`
	VisibilityGroupIds []string           `json:"visibility_group_ids"`
}

VisibilityInfo - Visibility infomation of an entity.

func (*VisibilityInfo) GetVisibility

func (o *VisibilityInfo) GetVisibility() VisibilityTypeEnum

func (*VisibilityInfo) GetVisibilityGroupIds

func (o *VisibilityInfo) GetVisibilityGroupIds() []string

func (VisibilityInfo) MarshalJSON

func (v VisibilityInfo) MarshalJSON() ([]byte, error)

func (*VisibilityInfo) UnmarshalJSON

func (v *VisibilityInfo) UnmarshalJSON(data []byte) error

type VisibilityTypeEnum

type VisibilityTypeEnum string

VisibilityTypeEnum - The visibility level of the entity.

const (
	VisibilityTypeEnumGlobal  VisibilityTypeEnum = "GLOBAL"
	VisibilityTypeEnumLimited VisibilityTypeEnum = "LIMITED"
)

func (VisibilityTypeEnum) ToPointer

func (e VisibilityTypeEnum) ToPointer() *VisibilityTypeEnum

func (*VisibilityTypeEnum) UnmarshalJSON

func (e *VisibilityTypeEnum) UnmarshalJSON(data []byte) error

type WorkdayUserSecurityGroup

type WorkdayUserSecurityGroup struct {
	// The id of the Workday User Security group.
	GroupID string `json:"group_id"`
}

WorkdayUserSecurityGroup - Remote info for Workday User Security group.

func (*WorkdayUserSecurityGroup) GetGroupID

func (o *WorkdayUserSecurityGroup) GetGroupID() string

Source Files

Jump to

Keyboard shortcuts

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