models

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Oct 22, 2022 License: Apache-2.0 Imports: 0 Imported by: 21

Documentation

Overview

Package models has the structs representing definitions

Package models has the structs representing requests

Package models has the structs representing responses

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSConnection

type AWSConnection struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSConnectionLinks `json:"_links"`
	// The alias given to the account on AWS.
	AccountName *string `json:"account_name"`
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// Clumio AWS AccountId
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// Clumio AWS Region
	ClumioAwsRegion *string `json:"clumio_aws_region"`
	// The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection.
	// If this connection is deprecated to use unconsolidated configuration, then this field has a
	// value of `null`.
	Config *ConsolidatedConfig `json:"config"`
	// The status of the connection. Possible values include "connecting",
	// "connected", and "unlinked".
	ConnectionStatus *string `json:"connection_status"`
	// The timestamp of when the connection was created.
	CreatedTimestamp *string `json:"created_timestamp"`
	// An optional, user-provided description for this connection.
	Description *string `json:"description"`
	// The configuration of the Clumio Discover product for this connection.
	// If this connection is not configured for Clumio Discover, then this field has a
	// value of `null`.
	Discover *DiscoverConfig `json:"discover"`
	// The Clumio-assigned ID of the connection.
	Id *string `json:"id"`
	// K8S Namespace
	Namespace *string `json:"namespace"`
	// The Clumio-assigned ID of the organizational unit associated with the
	// AWS environment. If this parameter is not provided, then the value
	// defaults to the first organizational unit assigned to the requesting
	// user. For more information about organizational units, refer to the
	// Organizational-Units documentation.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The configuration of the Clumio Cloud Protect product for this connection.
	// If this connection is not configured for Clumio Cloud Protect, then this field has a
	// value of `null`.
	Protect *ProtectConfig `json:"protect"`
	// The asset types enabled for protect. This is only populated if "protect"
	// is enabled. Valid values are any of ["EBS", "RDS", "DynamoDB", "EC2MSSQL", "S3"].
	// EBS and RDS are mandatory datasources. (Deprecated)
	ProtectAssetTypesEnabled []*string `json:"protect_asset_types_enabled"`
	// The services to be enabled for this configuration. Valid values are
	// ["discover"], ["discover", "protect"]. This is only set when the
	// registration is created, the enabled services are obtained directly from
	// the installed template after that. (Deprecated as all connections will have
	// both discover and protect enabled)
	ServicesEnabled []*string `json:"services_enabled"`
	// The Amazon Resource Name of the installed CloudFormation stack in this AWS account
	StackArn *string `json:"stack_arn"`
	// The name given to the installed CloudFormation stack on AWS.
	StackName *string `json:"stack_name"`
	// The 36-character Clumio AWS integration ID token used to identify the
	// installation of the CloudFormation template on the account. This value
	// will be pasted into the ClumioToken field when creating the
	// CloudFormation stack.
	Token *string `json:"token"`
}

AWSConnection represents a custom type struct

type AWSConnectionLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeleteConnectionAws *HateoasLink `json:"delete-connection-aws"`
	// A resource-specific HATEOAS link.
	ReadOrganizationalUnit *HateoasLink `json:"read-organizational-unit"`
}

AWSConnectionLinks represents a custom type struct. URLs to pages related to the resource.

type AWSConnectionListEmbedded

type AWSConnectionListEmbedded struct {
	// TODO: Add struct field description
	Items []*AWSConnection `json:"items"`
}

AWSConnectionListEmbedded represents a custom type struct. Embedded responses related to the resource.

type AWSConnectionListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateAwsConnection *HateoasLink `json:"create-aws-connection"`
}

AWSConnectionListLinks represents a custom type struct. URLs to pages related to the resource.

type AWSEnvironment

type AWSEnvironment struct {
	// Embedded responses related to the resource.
	Embedded *AWSEnvironmentEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSEnvironmentLinks `json:"_links"`
	// The name given to the account.
	AccountName *string `json:"account_name"`
	// The AWS-assigned ID of the account associated with the environment.
	AccountNativeId *string `json:"account_native_id"`
	// The valid AWS availability zones for the environment. For example, `us_west-2a`.
	AwsAz []*string `json:"aws_az"`
	// The AWS region associated with the environment. For example, `us-west-2`.
	AwsRegion *string `json:"aws_region"`
	// The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection.
	// If this connection is deprecated to use unconsolidated configuration, then this field has a
	// value of `null`.
	Config *ConsolidatedConfig `json:"config"`
	// The Clumio-assigned ID of the connection associated with the environment.
	ConnectionId *string `json:"connection_id"`
	// The status of the connection to the environment, which is mediated by a CloudFormation stack.
	ConnectionStatus *string `json:"connection_status"`
	// The user-provided account description.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the environment.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the organizational unit associated with the environment.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The AWS services enabled for this environment. Possible values include "ebs", "rds" and "dynamodb".
	ServicesEnabled []*string `json:"services_enabled"`
	// The Clumio CloudFormation template version used to deploy the CloudFormation stack.
	TemplateVersion *int64 `json:"template_version"`
}

AWSEnvironment represents a custom type struct

type AWSEnvironmentEmbedded

type AWSEnvironmentEmbedded struct {
	// TODO: Add struct field description
	ReadAwsEnvironmentEbsVolumesComplianceStats interface{} `json:"read-aws-environment-ebs-volumes-compliance-stats"`
}

AWSEnvironmentEmbedded represents a custom type struct. Embedded responses related to the resource.

type AWSEnvironmentLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	ProtectEntities *HateoasLink `json:"protect-entities"`
	// A resource-specific HATEOAS link.
	ReadAwsEnvironmentEbsVolumesComplianceStats *HateoasLink `json:"read-aws-environment-ebs-volumes-compliance-stats"`
	// A resource-specific HATEOAS link.
	ReadOrganizationalUnit *HateoasLink `json:"read-organizational-unit"`
}

AWSEnvironmentLinks represents a custom type struct. URLs to pages related to the resource.

type AWSEnvironmentListEmbedded

type AWSEnvironmentListEmbedded struct {
	// TODO: Add struct field description
	Items []*AWSEnvironment `json:"items"`
}

AWSEnvironmentListEmbedded represents a custom type struct. Embedded responses related to the resource.

type AWSEnvironmentListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

AWSEnvironmentListLinks represents a custom type struct. URLs to pages related to the resource.

type AddBucketProtectionGroupV1Request added in v0.1.2

type AddBucketProtectionGroupV1Request struct {
	// TODO: Add struct field description
	BucketId *string `json:"bucket_id"`
}

AddBucketProtectionGroupV1Request represents a custom type struct

type AddBucketToProtectionGroupResponse added in v0.1.2

type AddBucketToProtectionGroupResponse struct {
	// The AWS-assigned ID of the account associated with the DynamoDB table.
	AccountNativeId *string `json:"account_native_id"`
	// Whether this bucket was added to this protection group by the bucket rule
	AddedByBucketRule *bool `json:"added_by_bucket_rule"`
	// Whether this bucket was added to this protection group by the user
	AddedByUser *bool `json:"added_by_user"`
	// The AWS region associated with the DynamoDB table.
	AwsRegion *string `json:"aws_region"`
	// The Clumio-assigned ID of the bucket
	BucketId *string `json:"bucket_id"`
	// The name of the bucket
	BucketName *string `json:"bucket_name"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The Clumio-assigned ID of the AWS environment associated with the protection group.
	EnvironmentId *string `json:"environment_id"`
	// The Clumio-assigned ID of the protection group
	GroupId *string `json:"group_id"`
	// The name of the protection group
	GroupName *string `json:"group_name"`
	// The Clumio-assigned ID that represents the bucket within the protection group.
	Id *string `json:"id"`
	// Determines whether the protection group bucket has been deleted
	IsDeleted *bool `json:"is_deleted"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// The Clumio-assigned ID of the organizational unit associated with the protection group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
}

AddBucketToProtectionGroupResponse represents a custom type struct for Success

type Alert

type Alert struct {
	// Embedded responses related to the resource.
	Embedded *AlertEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AlertLinks `json:"_links"`
	// The issue that generated the alert. Each cause belongs to an alert type.
	Cause *string `json:"cause"`
	// The timestamp of when the alert was cleared, either automatically by Clumio or manually by a Clumio user.
	// Represented in RFC-3339 format. If this alert has not been cleared, then this field has a value of `null`.
	ClearedTimestamp *string `json:"cleared_timestamp"`
	// The Clumio-assigned ID of the consolidated alert associated with this individual alert. Alerts are consolidated based on matching parent entity, alert type, and alert cause.
	ConsolidatedAlertId *string `json:"consolidated_alert_id"`
	// Additional information about the alert.
	Details *IndividualAlertDetails `json:"details"`
	// The Clumio-assigned ID of the individual alert.
	Id *string `json:"id"`
	// A record of user-provided information about the alert.
	Notes *string `json:"notes"`
	// The parent object of the primary entity associated with or affected by the alert. For example, "aws_environment" is the parent entity of primary entity "aws_ebs_volume".
	ParentEntity *AlertParentEntity `json:"parent_entity"`
	// The primary object associated with or affected by the alert. Examples of primary entities include "aws_connection", "aws_ebs_volume" and "vmware_vm".
	PrimaryEntity *AlertPrimaryEntity `json:"primary_entity"`
	// The number of times the alert has recurred for this primary entity.
	RaisedCount *uint64 `json:"raised_count"`
	// The timestamp of when the alert was raised. Represented in RFC-3339 format.
	RaisedTimestamp *string `json:"raised_timestamp"`
	// The alert severity level. Values include "error" and "warning".
	Severity *string `json:"severity"`
	// The individual alert status. An individual alert that is in "active" status is one that is still open and has yet to be addressed.
	// An individual alert that is in "cleared" status is one that has been cleared, either automatically by Clumio or manually by a Clumio user.
	Status *string `json:"status"`
	// TODO: Add struct field description
	Tags []*RestEntity `json:"tags"`
	// The general alert category. Some alert types may be associated with multiple causes.
	// Refer to the Alert Type table for a complete list of alert types.
	ClumioType *string `json:"type"`
	// The timestamp of when the alert was last updated. Represented in RFC-3339 format.
	// The alert is updated whenever there is a new occurrence of the same alert within the same entity.
	UpdatedTimestamp *string `json:"updated_timestamp"`
}

Alert represents a custom type struct

type AlertEmbedded

type AlertEmbedded struct {
	// Embeds the associated consolidated alert in the response.
	ReadConsolidatedAlert interface{} `json:"read-consolidated-alert"`
}

AlertEmbedded represents a custom type struct. Embedded responses related to the resource.

type AlertLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	ReadConsolidatedAlert *HateoasLink `json:"read-consolidated-alert"`
	// A resource-specific HATEOAS link.
	UpdateIndividualAlert *HateoasLink `json:"update-individual-alert"`
}

AlertLinks represents a custom type struct. URLs to pages related to the resource.

type AlertListEmbedded

type AlertListEmbedded struct {
	// TODO: Add struct field description
	Items []*Alert `json:"items"`
}

AlertListEmbedded represents a custom type struct. Embedded responses related to the resource.

type AlertListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

AlertListLinks represents a custom type struct. URLs to pages related to the resource.

type AlertParentEntity

type AlertParentEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

AlertParentEntity represents a custom type struct. The parent object of the primary entity associated with or affected by the alert. For example, "aws_environment" is the parent entity of primary entity "aws_ebs_volume".

type AlertPrimaryEntity

type AlertPrimaryEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

AlertPrimaryEntity represents a custom type struct. The primary object associated with or affected by the alert. Examples of primary entities include "aws_connection", "aws_ebs_volume" and "vmware_vm".

type AncestorRefModel

type AncestorRefModel struct {
	// A VMware-assigned ID for this ancestor.
	Id *string `json:"id"`
	// Determines whether this ancestor is a hidden root object. If `true`, this ancestor is a hidden root object.
	IsRoot *bool `json:"is_root"`
	// The name of the ancestor.
	Name *string `json:"name"`
	// The type of vCenter object that this ancestor represents. For example, a data center can be an ancestor of a data center folder.
	ClumioType *string `json:"type"`
}

AncestorRefModel represents a custom type struct

type AssignPolicyAction

type AssignPolicyAction struct {
	// The policy to be applied to the assets.
	PolicyId *string `json:"policy_id"`
}

AssignPolicyAction represents a custom type struct. Apply a policy to assets.

type AssignmentEntity

type AssignmentEntity struct {
	// A system-generated ID assigned of an entity being assigned or unassigned to a policy.
	Id *string `json:"id"`
	//
	// The type of an entity being associated or disassociated with a policy.
	// Valid primary entity types include the following:
	//
	// +---------------------+---------------------+
	// | Primary Entity Type |       Details       |
	// +=====================+=====================+
	// | aws_ebs_volume      | AWS EBS volume.     |
	// +---------------------+---------------------+
	// | aws_ec2_instance    | AWS EC2 instance.   |
	// +---------------------+---------------------+
	// | aws_rds_cluster     | AWS RDS cluster.    |
	// +---------------------+---------------------+
	// | aws_rds_instance    | AWS RDS instance.   |
	// +---------------------+---------------------+
	// | aws_dynamodb_table  | AWS DynamoDB table. |
	// +---------------------+---------------------+
	// | protection_group    | Protection group.   |
	// +---------------------+---------------------+
	//
	ClumioType *string `json:"type"`
}

AssignmentEntity represents a custom type struct

type AssignmentInputModel

type AssignmentInputModel struct {
	// The action to be executed by this request.
	// Possible values include "assign" and "unassign".
	Action *string `json:"action"`
	// TODO: Add struct field description
	Entity *AssignmentEntity `json:"entity"`
	// The Clumio-assigned ID of the policy to be applied to the requested entities.
	// If `action: assign`, then this parameter is required.
	// Otherwise, it must not be provided.
	PolicyId *string `json:"policy_id"`
}

AssignmentInputModel represents a custom type struct. The portion of the policy assignment used for updates/creations

type AuditParentEntity

type AuditParentEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

AuditParentEntity represents a custom type struct. The parent object of the primary entity associated with or affected by the audit. If the primary entity is not a vmware entity, this field will have a value of null For example, "vmware_vcenter" is the parent entity of primary entity "vmware_vm".

type AuditPrimaryEntity

type AuditPrimaryEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

AuditPrimaryEntity represents a custom type struct. The primary object associated with the audit event. Examples of primary entities include "aws_connection", "aws_ebs_volume" and "vmware_vm". In some cases like global settings, the primary entity may be null.

type AuditTrailListEmbedded

type AuditTrailListEmbedded struct {
	// TODO: Add struct field description
	Items []*AuditTrails `json:"items"`
}

AuditTrailListEmbedded represents a custom type struct. Embedded responses related to the resource.

type AuditTrailListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

AuditTrailListLinks represents a custom type struct. URLs to pages related to the resource.

type AuditTrails

type AuditTrails struct {
	// The action performed by the user.
	//
	// +------------------+-----------------------------------------------------------+
	// |      Action      |                          Details                          |
	// +==================+===========================================================+
	// | create           | Creating or adding new entities like new policy,          |
	// |                  | configuration, user, etc                                  |
	// +------------------+-----------------------------------------------------------+
	// | update           | Updating an existing entity like policy, settings,        |
	// |                  | passwords, etc                                            |
	// +------------------+-----------------------------------------------------------+
	// | delete           | Delete an existing entity like policy, settings, users,   |
	// |                  | etc                                                       |
	// +------------------+-----------------------------------------------------------+
	// | enable           | Enabling a feature like single sign on or multi factor    |
	// |                  | authentication settings                                   |
	// +------------------+-----------------------------------------------------------+
	// | disable          | Disabling features like single sign on or multi factor    |
	// |                  | authentication settings                                   |
	// +------------------+-----------------------------------------------------------+
	// | browse           | Browsing through entities in the system like mailboxes or |
	// |                  | backups, etc                                              |
	// +------------------+-----------------------------------------------------------+
	// | search           | Searching through entities in the system like mailboxes   |
	// |                  | or backups, etc                                           |
	// +------------------+-----------------------------------------------------------+
	// | login            | User logs in or tries to login                            |
	// +------------------+-----------------------------------------------------------+
	// | logout           | User explicitly logged out.                               |
	// +------------------+-----------------------------------------------------------+
	// | register         | When new registrations happen like new                    |
	// |                  | datasource registration or user registering for MFA       |
	// +------------------+-----------------------------------------------------------+
	// | unregister       | When unregistering like unregistering                     |
	// |                  | datasource or user unregistering MFA                      |
	// +------------------+-----------------------------------------------------------+
	// | apply            | Apply policy to protect entities, tags, etc               |
	// +------------------+-----------------------------------------------------------+
	// | remove           | Remove protection for entities, tags, etc                 |
	// +------------------+-----------------------------------------------------------+
	// | invite           | Inviting a user                                           |
	// +------------------+-----------------------------------------------------------+
	// | suspend          | Suspend an existing user                                  |
	// +------------------+-----------------------------------------------------------+
	// | full_restore     | Full restore of the VM, volume, mailbox, database or      |
	// |                  | other entities                                            |
	// +------------------+-----------------------------------------------------------+
	// | granular_restore | Restoring individual files, mails or records              |
	// +------------------+-----------------------------------------------------------+
	//
	Action *string `json:"action"`
	// The category of the auditable action performed by the user.
	//
	// +-------------------------+----------------------------------------------------+
	// |        Category         |                      Details                       |
	// +=========================+====================================================+
	// | authentication          | Activities related to Authentication               |
	// +-------------------------+----------------------------------------------------+
	// | data_source             | Data source changes                                |
	// +-------------------------+----------------------------------------------------+
	// | policy                  | Policy related actions                             |
	// +-------------------------+----------------------------------------------------+
	// | protection              | Applying and removing protection                   |
	// +-------------------------+----------------------------------------------------+
	// | restore                 | Restore related operations                         |
	// +-------------------------+----------------------------------------------------+
	// | tasks                   | Tasks                                              |
	// +-------------------------+----------------------------------------------------+
	// | backup                  | Backup related operations                          |
	// +-------------------------+----------------------------------------------------+
	// | users                   | User related operations                            |
	// +-------------------------+----------------------------------------------------+
	// | api_tokens              | API Token related operations like creating,        |
	// |                         | revoking or deleting tokens                        |
	// +-------------------------+----------------------------------------------------+
	// | kms_config              | Key Management Service(KMS) related operations     |
	// +-------------------------+----------------------------------------------------+
	// | sso                     | Single sign-on (SSO) related operations            |
	// +-------------------------+----------------------------------------------------+
	// | mfa                     | Multi Factor Authentication(MFA) related           |
	// |                         | operations                                         |
	// +-------------------------+----------------------------------------------------+
	// | reports                 | Reports related operations                         |
	// +-------------------------+----------------------------------------------------+
	// | alerts                  | Alerts related operations                          |
	// +-------------------------+----------------------------------------------------+
	// | cloud_connector         | Cloud connector related operations                 |
	// +-------------------------+----------------------------------------------------+
	// | cloudformation_template | Cloud Formation Template related operations        |
	// +-------------------------+----------------------------------------------------+
	// | bandwidth_config        | Bandwidth configuration related changes            |
	// +-------------------------+----------------------------------------------------+
	// | partner_ecosystem       | Changes to partner ecosystem                       |
	// +-------------------------+----------------------------------------------------+
	// | ecosystem_changes       | Changes in the ecosystem like adding or remvoings  |
	// |                         | VMs                                                |
	// +-------------------------+----------------------------------------------------+
	//
	Category *string `json:"category"`
	// Additional details about the activity provided in JSON format.
	Details *string `json:"details"`
	// The Clumio-assigned ID of the audit event.
	Id *string `json:"id"`
	// The interface used to make the request i.e. 'UI','API'
	ClumioInterface *string `json:"interface"`
	// The IP address from which the activity was requested.
	IpAddress *string `json:"ip_address"`
	// The parent object of the primary entity associated with or affected by the audit.
	// If the primary entity is not a vmware entity, this field will have a value of null
	// For example, "vmware_vcenter" is the parent entity of primary entity "vmware_vm".
	ParentEntity *AuditParentEntity `json:"parent_entity"`
	// The primary object associated with the audit event. Examples of primary entities
	// include "aws_connection", "aws_ebs_volume" and "vmware_vm". In some cases like
	// global settings, the primary entity may be null.
	PrimaryEntity *AuditPrimaryEntity `json:"primary_entity"`
	// The status of the performed action. 'success', 'failure', 'partial_success'
	Status *string `json:"status"`
	// The Timestamp of when the activity began. Represented in RFC-3339 format.
	Timestamp *string `json:"timestamp"`
	// The email address of the logged in user making the request.
	UserEmail *string `json:"user_email"`
}

AuditTrails represents a custom type struct

type AutoUserProvisioningRuleEmbedded added in v0.3.0

type AutoUserProvisioningRuleEmbedded struct {
	// Embeds the associated organizational units for the OU UUIDs in the response
	// if requested using the `embed` query parameter.
	ReadOrganizationalUnit interface{} `json:"read-organizational-unit"`
	// Embeds the associated role for the role UUID in the response if requested using the `embed` query parameter.
	ReadRole interface{} `json:"read-role"`
}

AutoUserProvisioningRuleEmbedded represents a custom type struct. Embedded responses related to the resource.

type AutoUserProvisioningRuleLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeleteAutoUserProvisioningRule *HateoasLink `json:"delete-auto-user-provisioning-rule"`
	// A resource-specific HATEOAS link.
	UpdateAutoUserProvisioningRule *HateoasLink `json:"update-auto-user-provisioning-rule"`
}

AutoUserProvisioningRuleLinks represents a custom type struct. URLs to pages related to the resource.

type AutoUserProvisioningRuleListEmbedded added in v0.3.0

type AutoUserProvisioningRuleListEmbedded struct {
	// AutoUserProvisioningRuleWithETag to support etag string to be calculated
	Items []*AutoUserProvisioningRuleWithETag `json:"items"`
}

AutoUserProvisioningRuleListEmbedded represents a custom type struct. Embedded responses related to the resource.

type AutoUserProvisioningRuleListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateAutoUserProvisioningRule *HateoasLink `json:"create-auto-user-provisioning-rule"`
}

AutoUserProvisioningRuleListLinks represents a custom type struct. URLs to pages related to the resource.

type AutoUserProvisioningRuleWithETag added in v0.3.0

type AutoUserProvisioningRuleWithETag struct {
	// Embedded responses related to the resource.
	Embedded *AutoUserProvisioningRuleEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningRuleLinks `json:"_links"`
	// The following table describes the possible conditions for a rule.
	//
	// +--------------------------+-------------------------+-------------------------+
	// |     Group Selection      |     Rule Condition      |       Description       |
	// +==========================+=========================+=========================+
	// | This group               |                         | User must belong to the |
	// |                          |                         | specified group.        |
	// |                          | {"user.groups":{"$eq":" |                         |
	// |                          | Admin"}}                |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ANY of these groups      |                         | User must belong to at  |
	// |                          |                         | least one of the        |
	// |                          | {"user.groups":{"$in":[ | specified groups.       |
	// |                          | "Admin", "Eng",         |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ALL of these groups      |                         | User must belong to all |
	// |                          |                         | the specified groups.   |
	// |                          | {"user.groups":{"$all": |                         |
	// |                          | ["Admin", "Eng",        |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS this      |                         | User's group must       |
	// | keyword                  |                         | contain the specified   |
	// |                          | {"user.groups":{"$conta | keyword.                |
	// |                          | ins":{"$in":["Admin"]}} |                         |
	// |                          | }                       |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ANY of    |                         | User's group must       |
	// | these keywords           |                         | contain at least one of |
	// |                          | {"user.groups":{"$conta | the specified keywords. |
	// |                          | ins":{"$in":["Admin",   |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ALL of    |                         | User's group must       |
	// | these keywords           |                         | contain all the         |
	// |                          | {"user.groups":{"$conta | specified keywords.     |
	// |                          | ins":{"$all":["Admin",  |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	//
	Condition *string `json:"condition"`
	// Unique name assigned to the rule.
	Name *string `json:"name"`
	// Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.
	Provision *RuleProvision `json:"provision"`
	// The Clumio-assigned ID of the rule.
	RuleId *string `json:"rule_id"`
}

AutoUserProvisioningRuleWithETag represents a custom type struct. AutoUserProvisioningRuleWithETag to support etag string to be calculated

type AutoUserProvisioningSettingLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	UpdateAutoUserProvisioningSetting *HateoasLink `json:"update-auto-user-provisioning-setting"`
}

AutoUserProvisioningSettingLinks represents a custom type struct. URLs to pages related to the resource.

type AwsDsGroupingCriteria

type AwsDsGroupingCriteria struct {
	// Determines whether or not this data group is editable. If false, then an
	// organizational unit uses this data group.
	// To edit this data group, all organizational units using it must be deleted.
	IsEditable *bool `json:"is_editable"`
	// The entity type used to group organizational units for AWS resources.
	//
	// +-----------------+-------------------------+
	// |   Entity Type   |         Details         |
	// +=================+=========================+
	// | aws_environment | AWS account and region. |
	// +-----------------+-------------------------+
	//
	ClumioType *string `json:"type"`
}

AwsDsGroupingCriteria represents a custom type struct. The entity type used to group organizational units for AWS resources.

type AwsTag

type AwsTag struct {
	// Embedded responses related to the resource.
	Embedded *AwsTagEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AwsTagLinks `json:"_links"`
	// The Clumio-assigned ID of the AWS tag.
	Id *string `json:"id"`
	// The AWS-assigned tag key.
	Key *string `json:"key"`
	// The Clumio-assigned ID of the AWS key.
	KeyId *string `json:"key_id"`
	// The Clumio-assigned ID of the organizational unit associated with the tag.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of the EBS volume. Possible values include "protected" and "unprotected".
	ProtectionStatus *string `json:"protection_status"`
	// The AWS-assigned tag value.
	Value *string `json:"value"`
}

AwsTag represents a custom type struct

type AwsTagCommonModel

type AwsTagCommonModel struct {
	// The AWS-assigned tag key.
	Key *string `json:"key"`
	// The AWS-assigned tag value.
	Value *string `json:"value"`
}

AwsTagCommonModel represents a custom type struct. A tag created through AWS Console which can be applied to EBS volumes.

type AwsTagEmbedded

type AwsTagEmbedded struct {
	// TODO: Add struct field description
	ReadAwsEnvironmentTagEbsVolumesComplianceStats interface{} `json:"read-aws-environment-tag-ebs-volumes-compliance-stats"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

AwsTagEmbedded represents a custom type struct. Embedded responses related to the resource.

type AwsTagLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A resource-specific HATEOAS link.
	ReadAwsEnvironmentTagEbsVolumesComplianceStats *HateoasLink `json:"read-aws-environment-tag-ebs-volumes-compliance-stats"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

AwsTagLinks represents a custom type struct. URLs to pages related to the resource.

type AwsTagListEmbedded

type AwsTagListEmbedded struct {
	// TODO: Add struct field description
	Items []*AwsTag `json:"items"`
}

AwsTagListEmbedded represents a custom type struct. Embedded responses related to the resource.

type AwsTagListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

AwsTagListLinks represents a custom type struct. URLs to pages related to the resource.

type AwsTagModel

type AwsTagModel struct {
	// The Clumio-assigned ID of the AWS tag.
	Id *string `json:"id"`
	// The AWS-assigned tag key.
	Key *string `json:"key"`
	// The Clumio-assigned ID of the AWS key.
	KeyId *string `json:"key_id"`
	// The AWS-assigned tag value.
	Value *string `json:"value"`
}

AwsTagModel represents a custom type struct. A tag created through AWS console which can be applied to EBS volumes.

type BackupSLA

type BackupSLA struct {
	// The retention time for this SLA. For example, to retain the backup for 1 month, set `unit="months"` and `value=1`.
	RetentionDuration *RetentionBackupSLAParam `json:"retention_duration"`
	// The minimum frequency between backups for this SLA. Also known as the recovery point objective (RPO) interval.
	// For example, to configure the minimum frequency between backups to be every 2 days, set `unit="days"` and `value=2`.
	// To configure the SLA for on-demand backups, set `unit="on_demand"` and leave the `value` field empty.
	RpoFrequency *RPOBackupSLAParam `json:"rpo_frequency"`
}

BackupSLA represents a custom type struct. backup_sla captures the SLA parameters backup_sla captures the SLA parameters

type BackupWindow

type BackupWindow struct {
	// The time when the backup window closes. Specify the end time in the format `hh:mm`, where `hh` represents the hour of the day and `mm` represents the minute of the day, based on a 24 hour clock. Leave empty if you do not want to specify an end time. If the backup window closes while a backup is in progress, the entire backup process is aborted. Clumio will perform the next backup when the backup window re-opens.
	EndTime *string `json:"end_time"`
	// The time when the backup window opens. Specify the start time in the format `hh:mm`, where `hh` represents the hour of the day and `mm` represents the minute of the day based on the 24 hour clock.
	StartTime *string `json:"start_time"`
}

BackupWindow represents a custom type struct. The start and end times for the customized backup window.

type Bucket added in v0.1.2

type Bucket struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *BucketLinks `json:"_links"`
	// The AWS-assigned ID of the account associated with the S3 bucket.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the S3 bucket.
	AwsRegion *string `json:"aws_region"`
	// The total size breakdown of S3 buckets in bytes per storage class. This parameter aggregates relevant fields from cloudwatch_metrics > size_bytes_per_storage_class
	BucketSizeBytesBreakdown *S3BucketsInventorySummaryBucketSizeBreakdown `json:"bucket_size_bytes_breakdown"`
	// The Cloudwatch metrics of the bucket.
	CloudwatchMetrics *S3CloudwatchMetrics `json:"cloudwatch_metrics"`
	// The timestamp of when the bucket was created. Represented in RFC-3339 format.
	CreationTimestamp *string `json:"creation_timestamp"`
	// The AWS encryption output of the bucket.
	EncryptionSetting *S3EncryptionOutput `json:"encryption_setting"`
	// The Clumio-assigned ID of the AWS environment associated with the S3 bucket.
	EnvironmentId *string `json:"environment_id"`
	// The EventBridge enablement state for the S3 bucket.
	EventBridgeEnabled *bool `json:"event_bridge_enabled"`
	// The Clumio-assigned ID of the bucket.
	Id *string `json:"id"`
	// The AWS-assigned name of the bucket.
	Name *string `json:"name"`
	// Number of objects in bucket.
	ObjectCount *int64 `json:"object_count"`
	// The Clumio-assigned ID of the organizational unit associated with the S3 bucket.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Protection group count reflects how many protection groups are linked to this
	// bucket.
	ProtectionGroupCount *int64 `json:"protection_group_count"`
	// The AWS replication output of the bucket.
	ReplicationSetting *S3ReplicationOutput `json:"replication_setting"`
	// Size of bucket in bytes.
	SizeBytes *int64 `json:"size_bytes"`
	// A tag created through AWS console which can be applied to EBS volumes.
	Tags []*AwsTagModel `json:"tags"`
	// The AWS versioning output of the bucket.
	VersioningSetting *S3VersioningOutput `json:"versioning_setting"`
}

Bucket represents a custom type struct

type BucketLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

BucketLinks represents a custom type struct. URLs to pages related to the resource.

type BucketListEmbedded added in v0.1.2

type BucketListEmbedded struct {
	// TODO: Add struct field description
	Items []*Bucket `json:"items"`
}

BucketListEmbedded represents a custom type struct. Embedded responses related to the resource.

type BucketListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

BucketListLinks represents a custom type struct. URLs to pages related to the resource.

type ChangePasswordV1Request

type ChangePasswordV1Request struct {
	// The user's current password.
	CurrentPassword *string `json:"current_password"`
	// The new password that is to replace the user's current password. Passwords must be between 14 and 64 characters
	// and include the following: one uppercase character, one lowercase character, one number, and one special character.
	// Spaces are not allowed.
	NewPassword *string `json:"new_password"`
}

ChangePasswordV1Request represents a custom type struct

type CloudConnectorCountByStatus

type CloudConnectorCountByStatus struct {
	// The number of degraded cloud connectors in this subgroup.
	Degraded *int64 `json:"degraded"`
	// The number of healthy cloud connectors in this subgroup.
	Healthy *int64 `json:"healthy"`
}

CloudConnectorCountByStatus represents a custom type struct. The number of cloud connectors in this subgroup, aggregated by their status.

type ComplianceStatsDeprecated

type ComplianceStatsDeprecated struct {
	// Compliant count.
	Compliant *uint32 `json:"COMPLIANT"`
	// Deactivated count.
	Deactivated *uint32 `json:"DEACTIVATED"`
	// Non-Compliant count.
	NonCompliant *uint32 `json:"NON_COMPLIANT"`
	// Seeding count.
	Seeding *uint32 `json:"SEEDING"`
	// Wait-for-seeding count.
	WaitForSeeding *uint32 `json:"WAIT_FOR_SEEDING"`
}

ComplianceStatsDeprecated represents a custom type struct. ComplianceStatsDeprecated denotes compliance metrics for all entities associated with a given type

type ComputeResourceEmbedded

type ComputeResourceEmbedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
	// Embeds the compliance statistics of VMs into each vCenter resource in the response, if requested using the `_embed` query parameter.
	ReadVmwareVcenterComputeResourceComplianceStats interface{} `json:"read-vmware-vcenter-compute-resource-compliance-stats"`
	// TODO: Add struct field description
	ReadVmwareVcenterComputeResourceConnectionStats interface{} `json:"read-vmware-vcenter-compute-resource-connection-stats"`
}

ComputeResourceEmbedded represents a custom type struct. Embedded responses related to the resource.

type ComputeResourceIDModel

type ComputeResourceIDModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the compute resource.
	Id *string `json:"id"`
}

ComputeResourceIDModel represents a custom type struct

type ComputeResourceLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to the compliance statistics of VMs in the folders and subfolders of this vCenter resource.
	ReadVmwareVcenterComputeResourceComplianceStats *ReadVCenterObjectProtectionStatsHateoasLink `json:"read-vmware-vcenter-compute-resource-compliance-stats"`
	// A resource-specific HATEOAS link.
	ReadVmwareVcenterComputeResourceConnectionStats *HateoasLink `json:"read-vmware-vcenter-compute-resource-connection-stats"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

ComputeResourceLinks represents a custom type struct. URLs to pages related to the resource.

type ConnectionRegion

type ConnectionRegion struct {
	// The Clumio-assigned ID of the connection.
	Id *string `json:"id"`
	// Boolean that notes which regions can be designated as targets
	IsDataPlaneRegion *bool `json:"is_data_plane_region"`
	// Name is a user friendly name of the AWS region.
	Name *string `json:"name"`
}

ConnectionRegion represents a custom type struct

type ConnectionRegionListEmbedded

type ConnectionRegionListEmbedded struct {
	// TODO: Add struct field description
	Items []*ConnectionRegion `json:"items"`
}

ConnectionRegionListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ConnectionRegionListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ConnectionRegionListLinks represents a custom type struct. URLs to pages related to the resource.

type ConsolidatedAlert

type ConsolidatedAlert struct {
	// URLs to pages related to the resource.
	Links *ConsolidatedAlertLinks `json:"_links"`
	// The number of currently active individual alerts associated with the consolidated alert.
	ActiveEntityCount *int64 `json:"active_entity_count"`
	// The issue that generated the alert. Each alert cause is associated with an alert type.
	Cause *string `json:"cause"`
	// The number of cleared individual alerts associated with the consolidated alert.
	ClearedEntityCount *int64 `json:"cleared_entity_count"`
	// The timestamp of when the consolidated alert was cleared, if ever. Represented in RFC-3339 format. If this alert has not been cleared, this field will have a value of `null`.
	// A consolidated alert goes into "cleared" status when all of its associated individual alerts are in "cleared" status or when a Clumio user manually clears it.
	ClearedTimestamp *string `json:"cleared_timestamp"`
	// Additional information about the consolidated alert.
	Details *ConsolidatedAlertDetails `json:"details"`
	// The Clumio-assigned ID of the consolidated alert.
	Id *string `json:"id"`
	// A record of user-provided information about the alert.
	Notes *string `json:"notes"`
	// The entity associated with or affected by the alert.
	ParentEntity *ConsolidatedAlertParentEntity `json:"parent_entity"`
	// The timestamp of when the consolidated alert was initially raised. Represented in RFC-3339 format.
	RaisedTimestamp *string `json:"raised_timestamp"`
	// The alert severity level. Values include "error" and "warning".
	Severity *string `json:"severity"`
	// The consolidated alert status. A consolidated alert is in "active" status if one or more of its associated individual alerts is in "active" status.
	// A consolidated alert goes into "cleared" status when all of its associated individual alerts are in "cleared" status or when a Clumio user manually clears it.
	Status *string `json:"status"`
	// The general alert category. An alert type may be associated with multiple alert causes. Examples of alert types include "tag_conflict" and "policy_violated".
	// Refer to the Alert Type table for a complete list of alert types.
	ClumioType *string `json:"type"`
	// The timestamp of when the consolidated alert was last updated. Represented in RFC-3339 format.
	// Raising a new individual alert will update its associated consolidated alert.
	UpdatedTimestamp *string `json:"updated_timestamp"`
}

ConsolidatedAlert represents a custom type struct

type ConsolidatedAlertDetails

type ConsolidatedAlertDetails struct {
	// A brief description of the condition that caused the alert. Examples include "Size Limit Exceeded" and "Insufficient Cloud Connector Capacity".
	Cause *string `json:"cause"`
	// The general alert category. Examples include "Policy Violated" and "Restore Failed".
	ClumioType *string `json:"type"`
}

ConsolidatedAlertDetails represents a custom type struct. Additional information about the consolidated alert.

type ConsolidatedAlertLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	UpdateConsolidatedAlert *HateoasLink `json:"update-consolidated-alert"`
}

ConsolidatedAlertLinks represents a custom type struct. URLs to pages related to the resource.

type ConsolidatedAlertListEmbedded

type ConsolidatedAlertListEmbedded struct {
	// TODO: Add struct field description
	Items []*ConsolidatedAlert `json:"items"`
}

ConsolidatedAlertListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ConsolidatedAlertListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ConsolidatedAlertListLinks represents a custom type struct. URLs to pages related to the resource.

type ConsolidatedAlertParentEntity

type ConsolidatedAlertParentEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

ConsolidatedAlertParentEntity represents a custom type struct. The entity associated with or affected by the alert.

type ConsolidatedConfig added in v0.2.5

type ConsolidatedConfig struct {
	// The asset types supported on the current version of the feature
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// TODO: Add struct field description
	Ebs *EbsAssetInfo `json:"ebs"`
	// The current version of the feature.
	InstalledTemplateVersion *string `json:"installed_template_version"`
	// TODO: Add struct field description
	Rds *RdsAssetInfo `json:"rds"`
}

ConsolidatedConfig represents a custom type struct. The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection. If this connection is deprecated to use unconsolidated configuration, then this field has a value of `null`.

type CreateAWSConnectionResponse

type CreateAWSConnectionResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSConnectionLinks `json:"_links"`
	// The alias given to the account on AWS.
	AccountName *string `json:"account_name"`
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// Clumio AWS AccountId
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// Clumio AWS Region
	ClumioAwsRegion *string `json:"clumio_aws_region"`
	// The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection.
	// If this connection is deprecated to use unconsolidated configuration, then this field has a
	// value of `null`.
	Config *ConsolidatedConfig `json:"config"`
	// The status of the connection. Possible values include "connecting",
	// "connected", and "unlinked".
	ConnectionStatus *string `json:"connection_status"`
	// The timestamp of when the connection was created.
	CreatedTimestamp *string `json:"created_timestamp"`
	// An optional, user-provided description for this connection.
	Description *string `json:"description"`
	// The configuration of the Clumio Discover product for this connection.
	// If this connection is not configured for Clumio Discover, then this field has a
	// value of `null`.
	Discover *DiscoverConfig `json:"discover"`
	// The Clumio-assigned ID of the connection.
	Id *string `json:"id"`
	// K8S Namespace
	Namespace *string `json:"namespace"`
	// The Clumio-assigned ID of the organizational unit associated with the
	// AWS environment. If this parameter is not provided, then the value
	// defaults to the first organizational unit assigned to the requesting
	// user. For more information about organizational units, refer to the
	// Organizational-Units documentation.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The configuration of the Clumio Cloud Protect product for this connection.
	// If this connection is not configured for Clumio Cloud Protect, then this field has a
	// value of `null`.
	Protect *ProtectConfig `json:"protect"`
	// The asset types enabled for protect. This is only populated if "protect"
	// is enabled. Valid values are any of ["EBS", "RDS", "DynamoDB", "EC2MSSQL", "S3"].
	// EBS and RDS are mandatory datasources. (Deprecated)
	ProtectAssetTypesEnabled []*string `json:"protect_asset_types_enabled"`
	// The services to be enabled for this configuration. Valid values are
	// ["discover"], ["discover", "protect"]. This is only set when the
	// registration is created, the enabled services are obtained directly from
	// the installed template after that. (Deprecated as all connections will have
	// both discover and protect enabled)
	ServicesEnabled []*string `json:"services_enabled"`
	// The Amazon Resource Name of the installed CloudFormation stack in this AWS account
	StackArn *string `json:"stack_arn"`
	// The name given to the installed CloudFormation stack on AWS.
	StackName *string `json:"stack_name"`
	// The 36-character Clumio AWS integration ID token used to identify the
	// installation of the CloudFormation template on the account. This value
	// will be pasted into the ClumioToken field when creating the
	// CloudFormation stack.
	Token *string `json:"token"`
}

CreateAWSConnectionResponse represents a custom type struct for Success

type CreateAWSTemplateResponse added in v0.2.5

type CreateAWSTemplateResponse struct {
	// The latest available URL for the template.
	AvailableTemplateUrl *string `json:"available_template_url"`
	// TODO: Add struct field description
	Config *TemplateConfiguration `json:"config"`
}

CreateAWSTemplateResponse represents a custom type struct for Success

type CreateAWSTemplateV2Response

type CreateAWSTemplateV2Response struct {
	// The latest available URL for the template.
	CloudformationUrl *string `json:"cloudformation_url"`
	// TODO: Add struct field description
	Config *TemplateConfigurationV2 `json:"config"`
	// The latest available URL for the terraform template.
	TerraformUrl *string `json:"terraform_url"`
}

CreateAWSTemplateV2Response represents a custom type struct for Success

type CreateAutoUserProvisioningRuleResponse added in v0.3.0

type CreateAutoUserProvisioningRuleResponse struct {
	// Embedded responses related to the resource.
	Embedded *AutoUserProvisioningRuleEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningRuleLinks `json:"_links"`
	// The following table describes the possible conditions for a rule.
	//
	// +--------------------------+-------------------------+-------------------------+
	// |     Group Selection      |     Rule Condition      |       Description       |
	// +==========================+=========================+=========================+
	// | This group               |                         | User must belong to the |
	// |                          |                         | specified group.        |
	// |                          | {"user.groups":{"$eq":" |                         |
	// |                          | Admin"}}                |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ANY of these groups      |                         | User must belong to at  |
	// |                          |                         | least one of the        |
	// |                          | {"user.groups":{"$in":[ | specified groups.       |
	// |                          | "Admin", "Eng",         |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ALL of these groups      |                         | User must belong to all |
	// |                          |                         | the specified groups.   |
	// |                          | {"user.groups":{"$all": |                         |
	// |                          | ["Admin", "Eng",        |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS this      |                         | User's group must       |
	// | keyword                  |                         | contain the specified   |
	// |                          | {"user.groups":{"$conta | keyword.                |
	// |                          | ins":{"$in":["Admin"]}} |                         |
	// |                          | }                       |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ANY of    |                         | User's group must       |
	// | these keywords           |                         | contain at least one of |
	// |                          | {"user.groups":{"$conta | the specified keywords. |
	// |                          | ins":{"$in":["Admin",   |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ALL of    |                         | User's group must       |
	// | these keywords           |                         | contain all the         |
	// |                          | {"user.groups":{"$conta | specified keywords.     |
	// |                          | ins":{"$all":["Admin",  |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	//
	Condition *string `json:"condition"`
	// Unique name assigned to the rule.
	Name *string `json:"name"`
	// Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.
	Provision *RuleProvision `json:"provision"`
	// The Clumio-assigned ID of the rule.
	RuleId *string `json:"rule_id"`
}

CreateAutoUserProvisioningRuleResponse represents a custom type struct for Success

type CreateAutoUserProvisioningRuleV1Request added in v0.3.0

type CreateAutoUserProvisioningRuleV1Request struct {
	// The following table describes the possible conditions for a rule.
	//
	// +--------------------------+-------------------------+-------------------------+
	// |     Group Selection      |     Rule Condition      |       Description       |
	// +==========================+=========================+=========================+
	// | This group               |                         | User must belong to the |
	// |                          |                         | specified group.        |
	// |                          | {"user.groups":{"$eq":" |                         |
	// |                          | Admin"}}                |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ANY of these groups      |                         | User must belong to at  |
	// |                          |                         | least one of the        |
	// |                          | {"user.groups":{"$in":[ | specified groups.       |
	// |                          | "Admin", "Eng",         |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ALL of these groups      |                         | User must belong to all |
	// |                          |                         | the specified groups.   |
	// |                          | {"user.groups":{"$all": |                         |
	// |                          | ["Admin", "Eng",        |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS this      |                         | User's group must       |
	// | keyword                  |                         | contain the specified   |
	// |                          | {"user.groups":{"$conta | keyword.                |
	// |                          | ins":{"$in":["Admin"]}} |                         |
	// |                          | }                       |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ANY of    |                         | User's group must       |
	// | these keywords           |                         | contain at least one of |
	// |                          | {"user.groups":{"$conta | the specified keywords. |
	// |                          | ins":{"$in":["Admin",   |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ALL of    |                         | User's group must       |
	// | these keywords           |                         | contain all the         |
	// |                          | {"user.groups":{"$conta | specified keywords.     |
	// |                          | ins":{"$all":["Admin",  |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	//
	Condition *string `json:"condition"`
	// Unique name assigned to the rule.
	Name *string `json:"name"`
	// Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.
	Provision *RuleProvision `json:"provision"`
}

CreateAutoUserProvisioningRuleV1Request represents a custom type struct

type CreateAwsConnectionTemplateV1Request added in v0.2.5

type CreateAwsConnectionTemplateV1Request struct {
	// TODO: Add struct field description
	Protect *ProtectTemplateConfig `json:"protect"`
}

CreateAwsConnectionTemplateV1Request represents a custom type struct. The body of the request.

type CreateAwsConnectionV1Request

type CreateAwsConnectionV1Request struct {
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// An optional, user-provided description for this connection.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the organizational unit associated with the
	// AWS environment. If this parameter is not provided, then the value
	// defaults to the first organizational unit assigned to the requesting
	// user. For more information about organizational units, refer to the
	// Organizational-Units documentation.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The asset types enabled for protect. This is only populated if "protect"
	// is enabled. Valid values are any of ["EBS", "RDS", "DynamoDB", "EC2MSSQL", "S3"].
	// EBS and RDS are mandatory datasources. (Deprecated)
	ProtectAssetTypesEnabled []*string `json:"protect_asset_types_enabled"`
	// The services to be enabled for this configuration. Valid values are
	// ["discover"], ["discover", "protect"]. This is only set when the
	// registration is created, the enabled services are obtained directly from
	// the installed template after that. (Deprecated as all connections will have
	// both discover and protect enabled)
	ServicesEnabled []*string `json:"services_enabled"`
}

CreateAwsConnectionV1Request represents a custom type struct. The body of the request.

type CreateBackupAwsEbsVolumeV1Request

type CreateBackupAwsEbsVolumeV1Request struct {
	// Settings for requesting on-demand backup directly
	Settings *OnDemandSetting `json:"settings"`
	// Performs the operation on the EBS volume with the specified Clumio-assigned ID.
	VolumeId *string `json:"volume_id"`
}

CreateBackupAwsEbsVolumeV1Request represents a custom type struct

type CreateBackupMssqlDatabaseV1Request

type CreateBackupMssqlDatabaseV1Request struct {
	// Performs the operation on the Mssql asset with the specified Clumio-assigned ID.
	AssetId *string `json:"asset_id"`
	// Settings for requesting on-demand backup directly
	Settings *OnDemandSetting `json:"settings"`
	// The type of the backup. Possible values - `mssql_database_backup`, `mssql_log_backup`.
	ClumioType *string `json:"type"`
}

CreateBackupMssqlDatabaseV1Request represents a custom type struct

type CreateBackupVmwareVmV1Request

type CreateBackupVmwareVmV1Request struct {
	// Settings for requesting on-demand backup directly
	Settings *OnDemandSetting `json:"settings"`
	// Performs the operation on a VM within the specified vCenter server.
	VcenterId *string `json:"vcenter_id"`
	// Performs the operation on the VM with the specified VMware-assigned Managed Object Reference (MoRef) ID.
	VmId *string `json:"vm_id"`
}

CreateBackupVmwareVmV1Request represents a custom type struct

type CreateConnectionTemplateV1Request

type CreateConnectionTemplateV1Request struct {
	// The asset types for which the template is to be generated. Possible
	// asset types are ["EBS", "RDS", "DynamoDB", "EC2MSSQL"].
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
}

CreateConnectionTemplateV1Request represents a custom type struct. The body of the request.

type CreateHcmHostResponse

type CreateHcmHostResponse struct {
	// TODO: Add struct field description
	Hosts []*Host `json:"hosts"`
}

CreateHcmHostResponse represents a custom type struct for Success

type CreateHostECCredentialsResponse

type CreateHostECCredentialsResponse struct {
	// URLs to pages related to the resource.
	Links *HostLinks `json:"_links"`
	// The edge connector credentials for the host. This token is required during the installation of the MSI.
	EdgeConnectorCredentials *string `json:"edge_connector_credentials"`
	// The user-provided endpoint used to connect the host.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the management group associated with the host.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the Host.
	Id *string `json:"id"`
	// The timestamp of the last successful heartbeat of this host. Represented in RFC-3339 format.
	LastHeartbeatTimestamp *string `json:"last_heartbeat_timestamp"`
	// Name of the Host.
	Name *string `json:"name"`
	// The connection status of the Host. Possible values include `connected`, `disconnected`, `connection_pending`, and `invalid_token`.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the management subgroup associated with the host.
	SubgroupId *string `json:"subgroup_id"`
	// The Clumio-assigned UUID of the host. This UUID is used for filtering hosts during list operations.
	Uuid *string `json:"uuid"`
}

CreateHostECCredentialsResponse represents a custom type struct for Success

type CreateMssqlDatabaseRestoreResponse

type CreateMssqlDatabaseRestoreResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
}

CreateMssqlDatabaseRestoreResponse represents a custom type struct for Success

type CreateMssqlHostConnectionCredentialsV1Request

type CreateMssqlHostConnectionCredentialsV1Request struct {
	// Performs the operation on a host within the specified endpoint.
	Endpoint *string `json:"endpoint"`
	// Performs the operation on a host within the specified group.
	GroupId *string `json:"group_id"`
	// Performs the operation on a host within the specified subgroup.
	SubgroupId *string `json:"subgroup_id"`
}

CreateMssqlHostConnectionCredentialsV1Request represents a custom type struct

type CreateMssqlHostConnectionsV1Request

type CreateMssqlHostConnectionsV1Request struct {
	// The fully-qualified domain names or IP addresses of hosts to be connected.
	Endpoints []*string `json:"endpoints"`
	// Performs the operation on a host within the specified management group.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the organizational unit associated with the Host.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Performs the operation on a host within the specified management subgroup.
	SubgroupId *string `json:"subgroup_id"`
}

CreateMssqlHostConnectionsV1Request represents a custom type struct

type CreateOrganizationalUnitResponse

type CreateOrganizationalUnitResponse struct {
	// Embedded responses related to the resource.
	Embedded *EntityGroupEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *OrganizationalUnitLinks `json:"_links"`
	// Number of immediate children of the organizational unit.
	ChildrenCount *int64 `json:"children_count"`
	// Datasource types configured in this organizational unit. Possible values include `aws`, `microsoft365`, `vmware`, or `mssql`.
	ConfiguredDatasourceTypes []*string `json:"configured_datasource_types"`
	// List of all recursive descendant organizational units of this OU.
	DescendantIds []*string `json:"descendant_ids"`
	// A description of the organizational unit.
	Description *string `json:"description"`
	// The Clumio assigned ID of the organizational unit.
	Id *string `json:"id"`
	// Unique name assigned to the organizational unit.
	Name *string `json:"name"`
	// The Clumio assigned ID of the parent organizational unit.
	// The parent organizational unit contains the entities in this organizational unit and can update this organizational unit.
	// If this organizational unit is the global organizational unit, then this field has a value of `null`.
	ParentId *string `json:"parent_id"`
	// Number of users to whom this organizational unit or any of its descendants have been assigned.
	UserCount *int64 `json:"user_count"`
	// Users IDs to whom the organizational unit has been assigned.
	// This attribute will be available when reading a single OU and not when listing OUs.
	Users []*string `json:"users"`
}

CreateOrganizationalUnitResponse represents a custom type struct for Success

type CreateOrganizationalUnitV1Request

type CreateOrganizationalUnitV1Request struct {
	// A description of the organizational unit.
	Description *string `json:"description"`
	// entityModel denotes the entityModel
	Entities []*EntityModel `json:"entities"`
	// Unique name assigned to the organizational unit.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the parent organizational unit under which the new organizational unit is to be created.
	ParentId *string `json:"parent_id"`
	// List of user ids to assign this organizational unit.
	Users []*string `json:"users"`
}

CreateOrganizationalUnitV1Request represents a custom type struct

type CreatePolicyDefinitionV1Request

type CreatePolicyDefinitionV1Request struct {
	// The status of the policy.
	// Refer to the Policy Activation Status table for a complete list of policy statuses.
	ActivationStatus *string `json:"activation_status"`
	// The created time of the policy in unix time.
	CreatedTime *int64 `json:"created_time"`
	// The user-provided name of the policy.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Operations []*PolicyOperation `json:"operations"`
	// The Clumio-assigned ID of the organizational unit associated with the policy.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The timezone for the policy.
	Timezone *string `json:"timezone"`
	// The updated time of the policy in unix time.
	UpdatedTime *int64 `json:"updated_time"`
}

CreatePolicyDefinitionV1Request represents a custom type struct

type CreatePolicyResponse

type CreatePolicyResponse struct {
	// If the `embed` query parameter is set, displays the responses of the related resource,
	// as defined by the embeddable link specified.
	Embedded *PolicyEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *PolicyLinks `json:"_links"`
	// The status of the policy.
	// Refer to the Policy Activation Status table for a complete list of policy statuses.
	ActivationStatus *string `json:"activation_status"`
	// The Clumio-assigned IDs of the organizational units to whom the policy has been assigned.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// The created time of the policy in unix time.
	CreatedTime *int64 `json:"created_time"`
	// The Clumio-assigned ID of the policy.
	Id *string `json:"id"`
	// The following table describes the possible lock statuses of a policy.
	//
	// +----------+-------------------------------------------------------------------+
	// |  Status  |                            Description                            |
	// +==========+===================================================================+
	// | unlocked | Policies are unlocked until an update or deletion task is queued. |
	// +----------+-------------------------------------------------------------------+
	// | updating | During a policy edit, concurrent edits or deletion requests will  |
	// |          | be rejected.                                                      |
	// +----------+-------------------------------------------------------------------+
	// | deleting | During policy deletion, concurrent edits or deletion requests     |
	// |          | will be rejected.                                                 |
	// +----------+-------------------------------------------------------------------+
	//
	LockStatus *string `json:"lock_status"`
	// The user-provided name of the policy.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Operations []*PolicyOperation `json:"operations"`
	// The Clumio-assigned ID of the organizational unit associated with the policy.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The timezone for the policy.
	Timezone *string `json:"timezone"`
	// The updated time of the policy in unix time.
	UpdatedTime *int64 `json:"updated_time"`
}

CreatePolicyResponse represents a custom type struct for Success

type CreatePolicyRuleV1Request

type CreatePolicyRuleV1Request struct {
	// An action to be applied subject to the rule criteria.
	Action *RuleAction `json:"action"`
	// The following table describes the possible conditions for a rule.
	//
	// +-----------------------+---------------------------+--------------------------+
	// |         Field         |      Rule Condition       |       Description        |
	// +=======================+===========================+==========================+
	// | aws_account_native_id | $eq, $in                  | Denotes the AWS account  |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$eq":"111111111111"}} |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$in":["111111111111", |
	// |                       |                           | "222222222222"]}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_region            | $eq, $in                  | Denotes the AWS region   |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$eq":"us |
	// |                       |                           | -west-2"}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$in":["u |
	// |                       |                           | s-west-2", "us-          |
	// |                       |                           | east-1"]}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_tag               | $eq, $in, $all, $contains | Denotes the AWS tag(s)   |
	// |                       |                           | to conditionalize on.    |
	// |                       |                           | Max 100 tags allowed in  |
	// |                       |                           | each rule                |
	// |                       |                           | and tag key can be upto  |
	// |                       |                           | 128 characters and value |
	// |                       |                           | can be upto 256          |
	// |                       |                           | characters long.         |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$eq":{"key" |
	// |                       |                           | :"Environment",          |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$in":[{"key |
	// |                       |                           | ":"Environment",         |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$all":[{"ke |
	// |                       |                           | y":"Environment",        |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$contains": |
	// |                       |                           | {"key":"Environment",    |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | entity_type           | $eq, $in                  | Denotes the AWS entity   |
	// |                       |                           | type to conditionalize   |
	// |                       |                           | on. (Required)           |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$eq":"a |
	// |                       |                           | ws_rds_instance"}}       |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$in":[" |
	// |                       |                           | aws_rds_instance",       |
	// |                       |                           | "aws_ebs_volume", "aws_e |
	// |                       |                           | c2_instance","aws_dynamo |
	// |                       |                           | db_table",               |
	// |                       |                           | "aws_rds_cluster"]}}     |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	//
	Condition *string `json:"condition"`
	// Name of the rule. Max 100 characters.
	Name *string `json:"name"`
	// A priority relative to other rules.
	Priority *RulePriority `json:"priority"`
}

CreatePolicyRuleV1Request represents a custom type struct

type CreateProtectionGroupResponse added in v0.1.2

type CreateProtectionGroupResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupVersionLinks `json:"_links"`
	// Number of buckets
	BucketCount *int64 `json:"bucket_count"`
	// The following table describes the possible conditions for a bucket to be
	// automatically added to a protection group.
	//
	// +---------+----------------+---------------------------------------------------+
	// |  Field  | Rule Condition |                    Description                    |
	// +=========+================+===================================================+
	// | aws_tag | $eq            | Denotes the AWS tag(s) to conditionalize on       |
	// |         |                |                                                   |
	// |         |                | {"aws_tag":{"$eq":{"key":"Environment",           |
	// |         |                | "value":"Prod"}}}                                 |
	// |         |                |                                                   |
	// |         |                |                                                   |
	// +---------+----------------+---------------------------------------------------+
	//
	BucketRule *string `json:"bucket_rule"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The user-assigned description of the protection group.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the protection group.
	Id *string `json:"id"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// Modified time of the protection group in RFC-3339 format.
	ModifiedTimestamp *string `json:"modified_timestamp"`
	// The user-assigned name of the protection group.
	Name *string `json:"name"`
	// ObjectFilter
	// defines which objects will be backed up.
	ObjectFilter *ObjectFilter `json:"object_filter"`
	// The Clumio-assigned ID of the organizational unit associated with the Protection Group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
	// Version of the protection group. The version number is incremented every time
	// a change is made to the protection group.
	Version *int64 `json:"version"`
}

CreateProtectionGroupResponse represents a custom type struct for Success

type CreateProtectionGroupV1Request added in v0.1.2

type CreateProtectionGroupV1Request struct {
	// The following table describes the possible conditions for a bucket to be
	// automatically added to a protection group.
	//
	// +---------+----------------+---------------------------------------------------+
	// |  Field  | Rule Condition |                    Description                    |
	// +=========+================+===================================================+
	// | aws_tag | $eq            | Denotes the AWS tag(s) to conditionalize on       |
	// |         |                |                                                   |
	// |         |                | {"aws_tag":{"$eq":{"key":"Environment",           |
	// |         |                | "value":"Prod"}}}                                 |
	// |         |                |                                                   |
	// |         |                |                                                   |
	// +---------+----------------+---------------------------------------------------+
	//
	BucketRule *string `json:"bucket_rule"`
	// The user-assigned description of the protection group.
	Description *string `json:"description"`
	// The user-assigned name of the protection group.
	Name *string `json:"name"`
	// ObjectFilter
	// defines which objects will be backed up.
	ObjectFilter *ObjectFilter `json:"object_filter"`
}

CreateProtectionGroupV1Request represents a custom type struct

type CreateReportDownloadResponse

type CreateReportDownloadResponse struct {
	// The Clumio-assigned ID of the task created by the request.
	// The progress of the task can be monitored using the
	// [`GET /tasks/{task_id}`](#operation/list-tasks) endpoint.
	TaskId *string `json:"task_id"`
}

CreateReportDownloadResponse represents a custom type struct for Success

type CreateReportDownloadV1Request

type CreateReportDownloadV1Request struct {
	// The name of the report. Field cannot be empty.
	FileName *string `json:"file_name"`
	//
	// +-------------------+------------------+-------------------+-------------------+
	// |       Field       | Filter Condition |    Report Type    |    Description    |
	// +===================+==================+===================+===================+
	// | backup_timestamp  | $gte, $lt, $eq   | Compliance        | Backup timestamp  |
	// |                   |                  |                   | denotes the time  |
	// |                   |                  |                   | filter for        |
	// |                   |                  |                   | Compliance        |
	// |                   |                  |                   | reports.          |
	// |                   |                  |                   | $gte and $lt      |
	// |                   |                  |                   | accept RFC-3999   |
	// |                   |                  |                   | timestamps and    |
	// |                   |                  |                   | $eq accepts a     |
	// |                   |                  |                   | unix timestamp    |
	// |                   |                  |                   | denoting the      |
	// |                   |                  |                   | offset from the   |
	// |                   |                  |                   | current time. $eq |
	// |                   |                  |                   | takes precedence  |
	// |                   |                  |                   | over both         |
	// |                   |                  |                   | $gte and $lt so   |
	// |                   |                  |                   | if $eq is used,   |
	// |                   |                  |                   | the backend will  |
	// |                   |                  |                   | use the relative  |
	// |                   |                  |                   | time              |
	// |                   |                  |                   | filter instead of |
	// |                   |                  |                   | absolute time     |
	// |                   |                  |                   | filters. For      |
	// |                   |                  |                   | example,          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | "filter":"{"backu |
	// |                   |                  |                   | p_timestamp":{"$e |
	// |                   |                  |                   | q":86400}}"       |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | activity_start_ti | $gte, $lt, $eq   | Activity          | Activity start    |
	// | mestamp           |                  |                   | timestamp denotes |
	// |                   |                  |                   | the time filter   |
	// |                   |                  |                   | for Activity      |
	// |                   |                  |                   | reports.          |
	// |                   |                  |                   | $gte and $lt      |
	// |                   |                  |                   | accept RFC-3999   |
	// |                   |                  |                   | timestamps and    |
	// |                   |                  |                   | $eq accepts a     |
	// |                   |                  |                   | unix timestamp    |
	// |                   |                  |                   | denoting the      |
	// |                   |                  |                   | offset from the   |
	// |                   |                  |                   | current time. $eq |
	// |                   |                  |                   | takes precedence  |
	// |                   |                  |                   | over both         |
	// |                   |                  |                   | $gte and $lt so   |
	// |                   |                  |                   | if $eq is used,   |
	// |                   |                  |                   | the backend will  |
	// |                   |                  |                   | use the relative  |
	// |                   |                  |                   | time filter       |
	// |                   |                  |                   | instead of        |
	// |                   |                  |                   | absolute time     |
	// |                   |                  |                   | filters.For       |
	// |                   |                  |                   | example,          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | "filter":"{"activ |
	// |                   |                  |                   | ity_start_timesta |
	// |                   |                  |                   | mp":{"$eq":86400} |
	// |                   |                  |                   | }"                |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | timestamp         | $gte, $lte, $eq  | Consumption       | timestamp denotes |
	// |                   |                  |                   | the time filter   |
	// |                   |                  |                   | for Consumption   |
	// |                   |                  |                   | reports.          |
	// |                   |                  |                   | $gte and $lte     |
	// |                   |                  |                   | accept RFC-3999   |
	// |                   |                  |                   | timestamps and    |
	// |                   |                  |                   | $eq accepts a     |
	// |                   |                  |                   | duration in       |
	// |                   |                  |                   | seconds           |
	// |                   |                  |                   | denoting the      |
	// |                   |                  |                   | offset from the   |
	// |                   |                  |                   | current time. $eq |
	// |                   |                  |                   | takes precedence  |
	// |                   |                  |                   | over both         |
	// |                   |                  |                   | $gte and $lte so  |
	// |                   |                  |                   | if $eq is used,   |
	// |                   |                  |                   | the backend will  |
	// |                   |                  |                   | use the relative  |
	// |                   |                  |                   | time filter       |
	// |                   |                  |                   | instead of        |
	// |                   |                  |                   | absolute time     |
	// |                   |                  |                   | filters.          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | "filter": "{\"tim |
	// |                   |                  |                   | estamp\":{\"$gte\ |
	// |                   |                  |                   | ":\"2022-07-      |
	// |                   |                  |                   | 27T14:35:33.735Z\ |
	// |                   |                  |                   | ",\"$lte\":\"2022 |
	// |                   |                  |                   | -08-              |
	// |                   |                  |                   | 03T14:35:33.735Z\ |
	// |                   |                  |                   | "}}"              |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | organizational_un | $in              | Consumption       | Organizational    |
	// | it_id             |                  |                   | Unit ID (OU ID)   |
	// |                   |                  |                   | filters the       |
	// |                   |                  |                   | consumption data  |
	// |                   |                  |                   | generated for the |
	// |                   |                  |                   | report to the     |
	// |                   |                  |                   | given OU IDs and  |
	// |                   |                  |                   | its children.     |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | "filter": "{\"org |
	// |                   |                  |                   | anizational_unit_ |
	// |                   |                  |                   | id\":{\"$in\":[\" |
	// |                   |                  |                   | 00000000-0000-    |
	// |                   |                  |                   | 0000-0000-        |
	// |                   |                  |                   | 000000000000\"]}} |
	// |                   |                  |                   | "                 |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | task              | $in              | Activity          |  Possible values  |
	// |                   |                  |                   | for task include  |
	// |                   |                  |                   | backup and        |
	// |                   |                  |                   | restore.          |
	// |                   |                  |                   | For example,      |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | "filter":"{"task" |
	// |                   |                  |                   | :{"$in":["ebs_inc |
	// |                   |                  |                   | remental_backup"] |
	// |                   |                  |                   | }}"               |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | status            | $in              | Activity,         |  Filter on        |
	// |                   |                  | Compliance        | compliance status |
	// |                   |                  |                   | of entity.        |
	// |                   |                  |                   | Possible values   |
	// |                   |                  |                   | for compliance    |
	// |                   |                  |                   | status            |
	// |                   |                  |                   | include compliant |
	// |                   |                  |                   | and non_compliant |
	// |                   |                  |                   | For example,      |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | "filter": "{"stat |
	// |                   |                  |                   | us":{"$in":["non_ |
	// |                   |                  |                   | compliant"]}}"    |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | primary_entity.id | $in              | Any               | The system-       |
	// |                   |                  |                   | generated IDs of  |
	// |                   |                  |                   | the primary       |
	// |                   |                  |                   | entities affected |
	// |                   |                  |                   | by the activity.  |
	// |                   |                  |                   | For example,      |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | filter={"primary_ |
	// |                   |                  |                   | entity.id":{"$in" |
	// |                   |                  |                   | :["9c2934fc-ff4d- |
	// |                   |                  |                   | 11e9-8e11-        |
	// |                   |                  |                   | 76706df7fe01"]}}  |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | primary_entity.ty | $eq              | Any               | The type of       |
	// | pe                |                  |                   | primary entities  |
	// |                   |                  |                   | affected by the   |
	// |                   |                  |                   | activity.         |
	// |                   |                  |                   | Examples of       |
	// |                   |                  |                   | primary entity    |
	// |                   |                  |                   | types include     |
	// |                   |                  |                   | "aws_ebs_volume", |
	// |                   |                  |                   | "vmware_vm",      |
	// |                   |                  |                   | "microsoft365_mai |
	// |                   |                  |                   | lbox". For        |
	// |                   |                  |                   | example,          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | filter={"primary_ |
	// |                   |                  |                   | entity.type":{"$i |
	// |                   |                  |                   | n":["aws_ebs_volu |
	// |                   |                  |                   | me"]}}            |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | primary_entity.va | $in              | Any               | The value or name |
	// | lue               |                  |                   | associated with   |
	// |                   |                  |                   | the primary       |
	// |                   |                  |                   | entities affected |
	// |                   |                  |                   | by                |
	// |                   |                  |                   | the compliance    |
	// |                   |                  |                   | event. For        |
	// |                   |                  |                   | example, the      |
	// |                   |                  |                   | primary entity    |
	// |                   |                  |                   | value associated  |
	// |                   |                  |                   | with              |
	// |                   |                  |                   | primary entity    |
	// |                   |                  |                   | type              |
	// |                   |                  |                   | "aws_ebs_volume"  |
	// |                   |                  |                   | is "vol-          |
	// |                   |                  |                   | 0a5f2e52d6decd664 |
	// |                   |                  |                   | " representing    |
	// |                   |                  |                   | the name of the   |
	// |                   |                  |                   | EBS volume. The   |
	// |                   |                  |                   | filter supports   |
	// |                   |                  |                   | substring search  |
	// |                   |                  |                   | for all           |
	// |                   |                  |                   | elements in the   |
	// |                   |                  |                   | array For         |
	// |                   |                  |                   | example,          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | filter={"primary_ |
	// |                   |                  |                   | entity.value":{"$ |
	// |                   |                  |                   | in":["vol-0a"]}}  |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | parent_entity.typ | $in              | Any               |  The types of the |
	// | e                 |                  |                   | parent entities   |
	// |                   |                  |                   | which are         |
	// |                   |                  |                   | associated        |
	// |                   |                  |                   | with the primary  |
	// |                   |                  |                   | entity affected   |
	// |                   |                  |                   | by the activity.  |
	// |                   |                  |                   | Examples of the   |
	// |                   |                  |                   | parent entity     |
	// |                   |                  |                   | types include     |
	// |                   |                  |                   | "vmware_vcenter", |
	// |                   |                  |                   | "aws_environment" |
	// |                   |                  |                   | , "microsoft365_d |
	// |                   |                  |                   | omain". For       |
	// |                   |                  |                   | example,          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | filter={"parent_e |
	// |                   |                  |                   | ntity.type":{"$in |
	// |                   |                  |                   | ":["aws_environme |
	// |                   |                  |                   | nt"]}}            |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	// | parent_entity.id  | $in              | Any               |                   |
	// |                   |                  |                   | The value or name |
	// |                   |                  |                   | associated with   |
	// |                   |                  |                   | the parent        |
	// |                   |                  |                   | entities affected |
	// |                   |                  |                   | by                |
	// |                   |                  |                   | the compliance    |
	// |                   |                  |                   | event. For        |
	// |                   |                  |                   | example, the      |
	// |                   |                  |                   | parent entity     |
	// |                   |                  |                   | value associated  |
	// |                   |                  |                   | with              |
	// |                   |                  |                   | primary entity    |
	// |                   |                  |                   | type              |
	// |                   |                  |                   | "aws_ebs_volume"  |
	// |                   |                  |                   | is                |
	// |                   |                  |                   | "891106093485/us- |
	// |                   |                  |                   | west-2"           |
	// |                   |                  |                   | representing      |
	// |                   |                  |                   | the name of the   |
	// |                   |                  |                   | AWS Account       |
	// |                   |                  |                   | Region. For       |
	// |                   |                  |                   | example,          |
	// |                   |                  |                   |                   |
	// |                   |                  |                   | filter={"parent_e |
	// |                   |                  |                   | ntity.id":{"$in": |
	// |                   |                  |                   | ["9c2934fc-ff4d-  |
	// |                   |                  |                   | 11e9-8e11-        |
	// |                   |                  |                   | 76706df7fe01"]}}  |
	// |                   |                  |                   |                   |
	// |                   |                  |                   |                   |
	// +-------------------+------------------+-------------------+-------------------+
	//
	// For more information about filtering, refer to the
	// Filtering section of this guide.
	// in: query
	Filter *string `json:"filter"`
	// The report type. Examples of report types include, "activity",
	// "compliance", "audit", and "consumption".
	ClumioType *string `json:"type"`
}

CreateReportDownloadV1Request represents a custom type struct

type CreateRuleResponse

type CreateRuleResponse struct {
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The Clumio-assigned ID of the preview generated by this request. Only valid if
	// `execution_type` is set to `dryrun`.
	PreviewId *string `json:"preview_id"`
	// A rule applies an action subject to a condition criteria.
	Rule *Rule `json:"rule"`
	// The Clumio-assigned ID of the task generated by this request.
	TaskId *string `json:"task_id"`
}

CreateRuleResponse represents a custom type struct for Success

type CreateUserResponse

type CreateUserResponse struct {
	// Embedded responses related to the resource.
	Embedded *UserEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *UserLinks `json:"_links"`
	// The list of organizational unit IDs assigned to the user.
	// This attribute will be available when reading a single user and not when listing users.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// Assigned Role for the user.
	AssignedRole *string `json:"assigned_role"`
	// The email address of the Clumio user.
	Email *string `json:"email"`
	// The first and last name of the Clumio user. The name appears in the User Management screen and is used to identify the user.
	FullName *string `json:"full_name"`
	// The Clumio-assigned ID of the Clumio user.
	Id *string `json:"id"`
	// The ID number of the user who sent the email invitation.
	Inviter *string `json:"inviter"`
	// Determines whether the user has activated their Clumio account.
	// If `true`, the user has activated the account.
	IsConfirmed *bool `json:"is_confirmed"`
	// Determines whether the user is enabled (in "Activated" or "Invited" status) in Clumio.
	// If `true`, the user is in "Activated" or "Invited" status in Clumio.
	// Users in "Activated" status can log in to Clumio.
	// Users in "Invited" status have been invited to log in to Clumio via an email invitation and the invitation
	// is pending acceptance from the user.
	// If `false`, the user has been manually suspended and cannot log in to Clumio
	// until another Clumio user reactivates the account.
	IsEnabled *bool `json:"is_enabled"`
	// The timestamp of when when the user was last active in the Clumio system. Represented in RFC-3339 format.
	LastActivityTimestamp *string `json:"last_activity_timestamp"`
	// The number of organizational units accessible to the user.
	OrganizationalUnitCount *int64 `json:"organizational_unit_count"`
}

CreateUserResponse represents a custom type struct for Success

type CreateUserV1Request

type CreateUserV1Request struct {
	// The Clumio-assigned ID of the role to assign to the user.
	// The available roles can be retrieved via the [GET /roles](#operation/list-roles) API.
	// When not set, the role is determined as follows
	//
	// +-------------+---------------------------+----------------+
	// |   Inviter   |       Assigned OUs        | Resulting Role |
	// +=============+===========================+================+
	// | Super Admin | Gloabl OU is assigned     | Super Admin    |
	// +-------------+---------------------------+----------------+
	// | Super Admin | Gloabl OU is not assigned | OU Admin       |
	// +-------------+---------------------------+----------------+
	// | OU Admin    | Any                       | OU Admin       |
	// +-------------+---------------------------+----------------+
	//
	AssignedRole *string `json:"assigned_role"`
	// The email address of the user to be added to Clumio.
	Email *string `json:"email"`
	// The full name of the user to be added to Clumio. For example, enter the user's first name and last name.
	// The name appears in the User Management screen and in the body of the email invitation.
	FullName *string `json:"full_name"`
	// The Clumio-assigned IDs of the organizational units to be assigned to the user.
	OrganizationalUnitIds []*string `json:"organizational_unit_ids"`
}

CreateUserV1Request represents a custom type struct

type CreateWalletResponse added in v0.2.7

type CreateWalletResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *WalletLinks `json:"_links"`
	// AWS Account ID associated with the wallet.
	AccountNativeId *string `json:"account_native_id"`
	// Version of the template available
	AvailableVersion *int64 `json:"available_version"`
	// Clumio AWS Account ID.
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// DeploymentURL is an (external) link to an AWS console page for quick-creation
	// of the stack.
	DeploymentUrl *string `json:"deployment_url"`
	// ErrorCode is a short string describing the error, if any.
	ErrorCode *string `json:"error_code"`
	// ErrorMessage is a longer description explaining the error, if any, and how to
	// fix it.
	ErrorMessage *string `json:"error_message"`
	// The Clumio-assigned ID of the wallet.
	Id *string `json:"id"`
	// The regions where the wallet is installed.
	InstalledRegions []*string `json:"installed_regions"`
	// TODO: Add struct field description
	KeyErrors map[string]*ErrorModel `json:"key_errors"`
	// RoleArn is the AWS Resource Name of the IAM Role created by the stack.
	RoleArn *string `json:"role_arn"`
	// The version of the stack used or being used.
	StackVersion *int64 `json:"stack_version"`
	// State describes the state of the wallet. Valid states are:
	// Waiting: The wallet has been created, but a stack hasn't been created. The
	// wallet can't be used in this state.
	// Enabled: The wallet has been created and a stack has been created for the
	// wallet. This is the normal expected state of a wallet in use.
	// Error:   The wallet is inaccessible. See ErrorCode and ErrorMessage fields for
	// additional details.
	State *string `json:"state"`
	// The supported regions for the wallet.
	SupportedRegions []*string `json:"supported_regions"`
	// TemplateURL is the URL to the CloudFormation template to be used to create the
	// CloudFormation stack.
	TemplateUrl *string `json:"template_url"`
	// Token is used to identify and authenticate the CloudFormation stack creation.
	Token *string `json:"token"`
}

CreateWalletResponse represents a custom type struct for Success

type CreateWalletV1Request added in v0.2.7

type CreateWalletV1Request struct {
	// AWS Account ID to associate with the wallet.
	AccountNativeId *string `json:"account_native_id"`
}

CreateWalletV1Request represents a custom type struct

type DataAccessObject

type DataAccessObject struct {
	// The details used to access the restored file if it was shared by direct download. If
	// the restored file was shared by email (and not by direct download), then this field
	// has a value of `null`.
	DirectDownload *DirectDownloadDataAccessObject `json:"direct_download"`
	// The details used to access the restored file, if it was shared by email. If the
	// restored file was shared by direct download (and not email), then this field has a
	// value of `null`.
	Email *EmailDownloadDataAccessObject `json:"email"`
}

DataAccessObject represents a custom type struct. Specifies information about the data-access method for accessing the restored file.

type DatabaseLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateBackupMssqlDatabase *HateoasLink `json:"create-backup-mssql-database"`
	// A resource-specific HATEOAS link.
	ListBackupMssqlDatabases *HateoasLink `json:"list-backup-mssql-databases"`
	// A resource-specific HATEOAS link.
	ReadManagementGroup *HateoasLink `json:"read-management-group"`
	// A resource-specific HATEOAS link.
	ReadManagementSubgroup *HateoasLink `json:"read-management-subgroup"`
}

DatabaseLinks represents a custom type struct. URLs to pages related to the resource.

type DatacenterEmbedded

type DatacenterEmbedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
	// Embeds the compliance statistics of VMs into each vCenter resource in the response, if requested using the `_embed` query parameter.
	ReadVmwareVcenterDatacenterComplianceStats interface{} `json:"read-vmware-vcenter-datacenter-compliance-stats"`
}

DatacenterEmbedded represents a custom type struct. Embedded responses related to the resource.

type DatacenterLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to the compliance statistics of VMs in the folders and subfolders of this vCenter resource.
	ReadVmwareVcenterDatacenterComplianceStats *ReadVCenterObjectProtectionStatsHateoasLink `json:"read-vmware-vcenter-datacenter-compliance-stats"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

DatacenterLinks represents a custom type struct. URLs to pages related to the resource.

type DatacenterListEmbedded

type DatacenterListEmbedded struct {
	// DatacenterWithETag to support etag string to be calculated
	Items []*DatacenterWithETag `json:"items"`
}

DatacenterListEmbedded represents a custom type struct. Embedded responses related to the resource.

type DatacenterListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

DatacenterListLinks represents a custom type struct. URLs to pages related to the resource.

type DatacenterWithETag

type DatacenterWithETag struct {
	// Embedded responses related to the resource.
	Embedded *DatacenterEmbedded `json:"_embedded"`
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *DatacenterLinks `json:"_links"`
	// TODO: Add struct field description
	AncestorRefs []*AncestorRefModel `json:"ancestor_refs"`
	// The data center folder in which the data center resides.
	DatacenterFolder *VMwareDatacenterFolderIDModel `json:"datacenter_folder"`
	// Determines whether compute resources exist directly under the hidden root compute resource folder. If `true`, then compute resources exist directly under the root compute resource folder.
	HasComputeResources *bool `json:"has_compute_resources"`
	// Determines whether VMs exist directly under the hidden root VM folder. If `true`, then VMs exist directly under the root VM folder.
	HasVmFolders *bool `json:"has_vm_folders"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
	// The VMware-assigned name of this data center.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the datacenter.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this data center. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
	// The hidden root compute resource folder of the data center.
	RootComputeResourceFolder *VMwareRootComputeResourceFolderIDModel `json:"root_compute_resource_folder"`
	// The hidden root virtual machine folder of the data center.
	RootVmFolder *VMwareRootVMFolderIDModel `json:"root_vm_folder"`
}

DatacenterWithETag represents a custom type struct. DatacenterWithETag to support etag string to be calculated

type DeleteBucketFromProtectionGroupResponse added in v0.1.2

type DeleteBucketFromProtectionGroupResponse struct {
	// The AWS-assigned ID of the account associated with the DynamoDB table.
	AccountNativeId *string `json:"account_native_id"`
	// Whether this bucket was added to this protection group by the bucket rule
	AddedByBucketRule *bool `json:"added_by_bucket_rule"`
	// Whether this bucket was added to this protection group by the user
	AddedByUser *bool `json:"added_by_user"`
	// The AWS region associated with the DynamoDB table.
	AwsRegion *string `json:"aws_region"`
	// The Clumio-assigned ID of the bucket
	BucketId *string `json:"bucket_id"`
	// The name of the bucket
	BucketName *string `json:"bucket_name"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The Clumio-assigned ID of the AWS environment associated with the protection group.
	EnvironmentId *string `json:"environment_id"`
	// The Clumio-assigned ID of the protection group
	GroupId *string `json:"group_id"`
	// The name of the protection group
	GroupName *string `json:"group_name"`
	// The Clumio-assigned ID that represents the bucket within the protection group.
	Id *string `json:"id"`
	// Determines whether the protection group bucket has been deleted
	IsDeleted *bool `json:"is_deleted"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// The Clumio-assigned ID of the organizational unit associated with the protection group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
}

DeleteBucketFromProtectionGroupResponse represents a custom type struct for Success

type DeleteHcmHostResponse

type DeleteHcmHostResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// TaskID for DeleteHostsReq
	TaskId *string `json:"task_id"`
}

DeleteHcmHostResponse represents a custom type struct for Success

type DeleteMssqlHostConnectionsV1Request

type DeleteMssqlHostConnectionsV1Request struct {
	// The endpoints of hosts to be deleted.
	Endpoints []*string `json:"endpoints"`
	// Performs the operation on a host within the specified management group.
	GroupId *string `json:"group_id"`
	// Performs the operation on a host within the specified management subgroup.
	SubgroupId *string `json:"subgroup_id"`
}

DeleteMssqlHostConnectionsV1Request represents a custom type struct

type DeleteOrganizationalUnitResponse

type DeleteOrganizationalUnitResponse struct {
	// Embedded responses related to the resource.
	Embedded *EntityGroupEmbedded `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
}

DeleteOrganizationalUnitResponse represents a custom type struct. Accepted

type DeletePolicyResponse added in v0.2.5

type DeletePolicyResponse struct {
	// The Clumio-assigned ID of the task generated by this request.
	TaskId *string `json:"task_id"`
}

DeletePolicyResponse represents a custom type struct for Success

type DeleteRuleResponse

type DeleteRuleResponse struct {
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The Clumio-assigned ID of the preview generated by this request. Only valid if
	// `execution_type` is set to `dryrun`.
	PreviewId *string `json:"preview_id"`
	// The Clumio-assigned ID of the task generated by this request.
	TaskId *string `json:"task_id"`
}

DeleteRuleResponse represents a custom type struct for Success

type DirectDownloadDataAccessObject

type DirectDownloadDataAccessObject struct {
	// The download link used to access the restored file through direct download.
	DownloadLink *string `json:"download_link"`
	// The email address of the user who initiated the file level restore.
	RetrievedBy *string `json:"retrieved_by"`
}

DirectDownloadDataAccessObject represents a custom type struct. The details used to access the restored file if it was shared by direct download. If the restored file was shared by email (and not by direct download), then this field has a value of `null`.

type Directory

type Directory struct {
	// URLs to pages related to the resource.
	Links *DirectoryLinks `json:"_links"`
	// The directory ID of the file. If the file is not a directory, then this field has
	// a value of `null`.
	DirectoryId *string `json:"directory_id"`
	// Determines whether or not this file is a directory. If true, then this file
	// is a directory.
	IsDirectory *bool `json:"is_directory"`
	// The timestamp of when this file was last modified.
	ModifiedTimestamp *string `json:"modified_timestamp"`
	// Name of this file.
	Name *string `json:"name"`
	// Size of this file, in bytes.
	Size *uint64 `json:"size"`
}

Directory represents a custom type struct

type DirectoryBrowseEmbedded

type DirectoryBrowseEmbedded struct {
	// TODO: Add struct field description
	Items []*Directory `json:"items"`
}

DirectoryBrowseEmbedded represents a custom type struct

type DirectoryBrowseLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

DirectoryBrowseLinks represents a custom type struct. URLs to pages related to the resource.

type DirectoryLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

DirectoryLinks represents a custom type struct. URLs to pages related to the resource.

type DiscoverConfig

type DiscoverConfig struct {
	// The asset types supported on the current version of the feature
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// The current version of the feature.
	InstalledTemplateVersion *string `json:"installed_template_version"`
}

DiscoverConfig represents a custom type struct. The configuration of the Clumio Discover product for this connection. If this connection is not configured for Clumio Discover, then this field has a value of `null`.

type DiscoverTemplateInfo

type DiscoverTemplateInfo struct {
	// The AWS asset types supported with the available version of the template.
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// The latest available URL for the template.
	AvailableTemplateUrl *string `json:"available_template_url"`
	// The latest available version for the template.
	AvailableTemplateVersion *string `json:"available_template_version"`
}

DiscoverTemplateInfo represents a custom type struct. The latest available CloudFormation template for Clumio Discover.

type DiscoverTemplateInfoV2

type DiscoverTemplateInfoV2 struct {
	// The AWS asset types supported with the available version of the template.
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// The latest available version for the template.
	AvailableTemplateVersion *string `json:"available_template_version"`
}

DiscoverTemplateInfoV2 represents a custom type struct

type EBS

type EBS struct {
	// Embedded responses related to the resource.
	Embedded *EbsVolumeEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *EbsVolumeLinks `json:"_links"`
	// The AWS-assigned ID of the account associated with the EBS volume.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS availability zone in which the EBS volume resides. For example,
	// `us-west-2a`.
	AwsAz *string `json:"aws_az"`
	// The AWS region associated with the EBS volume.
	AwsRegion *string `json:"aws_region"`
	// The compliance status of the protected EBS volume. Possible values include
	// "compliant" and "noncompliant". If the volume is not protected, then this field has
	// a value of `null`.
	ComplianceStatus *string `json:"compliance_status"`
	// The timestamp of when the volume was deleted. Represented in RFC-3339 format. If
	// this volume has not been deleted, then this field has a value of `null`.
	DeletionTimestamp *string `json:"deletion_timestamp"`
	// The Clumio-assigned ID of the policy directly assigned to the entity.
	DirectAssignmentPolicyId *string `json:"direct_assignment_policy_id"`
	// The Clumio-assigned ID of the AWS environment associated with the EBS volume.
	EnvironmentId *string `json:"environment_id"`
	// Determines whether the table has a direct assignment.
	HasDirectAssignment *bool `json:"has_direct_assignment"`
	// The Clumio-assigned ID of the EBS volume.
	Id *string `json:"id"`
	// Iops of the volume.
	Iops *int64 `json:"iops"`
	// Determines whether the EBS volume has been deleted. If `true`, the volume has been
	// deleted.
	IsDeleted *bool `json:"is_deleted"`
	// Determines whether the EBS volume is encrypted. If `true`, the volume is encrypted.
	IsEncrypted *bool `json:"is_encrypted"`
	// Determines whether the EBS volume is supported for backups.
	IsSupported *bool `json:"is_supported"`
	// The AWS-assigned ID of the KMS key encrypting the EBS volume. If the volume is
	// unencrypted, then this field has a value of `null`.
	KmsKeyNativeId *string `json:"kms_key_native_id"`
	// The timestamp of the most recent backup of the EBS volume. Represented in RFC-3339
	// format. If the volume has never been backed up, then this field has a value of
	// `null`.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// The timestamp of the most recent snapshot of the EBS volume taken as part of
	// Snapshot Manager. Represented in RFC-3339 format. If the volume has never been
	// snapshotted, then this field has a value of `null`.
	LastSnapshotTimestamp *string `json:"last_snapshot_timestamp"`
	// The AWS-assigned name of the EBS volume.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the EBS volume.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfoWithRule `json:"protection_info"`
	// The protection status of the EBS volume. Possible values include "protected",
	// "unprotected", and "unsupported". If the EBS volume does not support backups, then
	// this field has a value of `unsupported`. If the volume has been deleted, then this
	// field has a value of `null`.
	ProtectionStatus *string `json:"protection_status"`
	// The size of the EBS volume. Measured in bytes (B).
	Size *int64 `json:"size"`
	// A tag created through AWS console which can be applied to EBS volumes.
	Tags []*AwsTagModel `json:"tags"`
	// The type of EBS volume. Possible values include "gp2", "io1", "st1", "sc1", and
	// "standard".
	ClumioType *string `json:"type"`
	// The reason why protection is not available. If the volume is supported, then this
	// field has a value of `null`.
	UnsupportedReason *string `json:"unsupported_reason"`
	// The AWS-assigned ID of the EBS volume.
	VolumeNativeId *string `json:"volume_native_id"`
}

EBS represents a custom type struct

type EBSBackupAdvancedSetting added in v0.2.9

type EBSBackupAdvancedSetting struct {
	// TODO: Add struct field description
	BackupTier *string `json:"backup_tier"`
}

EBSBackupAdvancedSetting represents a custom type struct. Backup tier to store the backup in. Valid values are: “ for standard, `lite`

type EBSBackupLinksV1

type EBSBackupLinksV1 struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

EBSBackupLinksV1 represents a custom type struct. URLs to pages related to the resource.

type EBSBackupListEmbeddedV1

type EBSBackupListEmbeddedV1 struct {
	// TODO: Add struct field description
	Items []*EBSBackupV1 `json:"items"`
}

EBSBackupListEmbeddedV1 represents a custom type struct. Embedded responses related to the resource.

type EBSBackupListLinksV1

type EBSBackupListLinksV1 struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

EBSBackupListLinksV1 represents a custom type struct. URLs to pages related to the resource.

type EBSBackupV1

type EBSBackupV1 struct {
	// URLs to pages related to the resource.
	Links *EBSBackupLinksV1 `json:"_links"`
	// The AWS-assigned ID of the account associated with the backup.
	AccountNativeId *string `json:"account_native_id"`
	// The availability zone associated with the volume backup. For example, `us-west-2a`.
	AwsAz *string `json:"aws_az"`
	// The AWS region in which the volume backup resides. For example, `us-west-2`.
	AwsRegion *string `json:"aws_region"`
	// The reason that browsing is unavailable for the backup. Possible values include "file_limit_exceeded" and
	// "browsing_unavailable". If browse indexing is successful, then this field has a value of `null`.
	BrowsingFailedReason *string `json:"browsing_failed_reason"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The Clumio-assigned ID of the volume backup.
	Id *string `json:"id"`
	// Determines whether browsing is available for the backup. If `true`, then browsing is available for the backup.
	IsBrowsable *bool `json:"is_browsable"`
	// Determines whether the EBS volume backup is encrypted. If `true`, the volume backup is encrypted.
	IsEncrypted *bool `json:"is_encrypted"`
	// The AWS-assigned ID of the KMS key encrypting this EBS volume backup. If the volume is not encrypted, this field has a value of `null`.
	KmsKeyNativeId *string `json:"kms_key_native_id"`
	// The size of the volume backup. Measured in gigabytes (GB).
	Size *int64 `json:"size"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// A tag created through AWS Console which can be applied to EBS volumes.
	Tags []*AwsTagCommonModel `json:"tags"`
	// The volume type of the original EBS volume before backup. Possible values include `gp2`, `io1`, `st1`, `sc1`, `standard`.
	ClumioType *string `json:"type"`
	// The Clumio-assigned ID of the EBS volume associated with the volume backup.
	VolumeId *string `json:"volume_id"`
	// The AWS-assigned ID of the EBS volume associated with the volume backup.
	VolumeNativeId *string `json:"volume_native_id"`
}

EBSBackupV1 represents a custom type struct

type EBSRestoreSourceV1

type EBSRestoreSourceV1 struct {
	// The Clumio-assigned ID of the EBS volume backup to be restored. Use the [GET /backups/aws/ebs-volumes](#operation/list-aws-ebs-volumes) endpoint to fetch valid values.
	BackupId *string `json:"backup_id"`
}

EBSRestoreSourceV1 represents a custom type struct. The EBS volume backup to be restored.

type EBSRestoreTargetV1

type EBSRestoreTargetV1 struct {
	// The availability zone into which the EBS volume is restored. For example, `us-west-2a`.
	// Use the [GET /datasources/aws/environments](#operation/list-aws-environments) endpoint to fetch valid values.
	AwsAz *string `json:"aws_az"`
	// The Clumio-assigned ID of the AWS environment to be used as the restore destination. Use the [GET /datasources/aws/environments](#operation/list-aws-environments) endpoint to fetch valid values.
	EnvironmentId *string `json:"environment_id"`
	// The KMS encryption key ID used to encrypt the EBS volume data. The KMS encryption key ID is stored in the AWS cloud as part of your AWS account.
	KmsKeyNativeId *string `json:"kms_key_native_id"`
	// A tag created through AWS Console which can be applied to EBS volumes.
	Tags []*AwsTagCommonModel `json:"tags"`
}

EBSRestoreTargetV1 represents a custom type struct. The configuration of the EBS volume to be restored.

type EC2BackupAdvancedSetting added in v0.2.9

type EC2BackupAdvancedSetting struct {
	// TODO: Add struct field description
	BackupTier *string `json:"backup_tier"`
}

EC2BackupAdvancedSetting represents a custom type struct. Backup tier to store the backup in. Valid values are: “ for standard, `lite`

type EbsAssetInfo

type EbsAssetInfo struct {
	// The current version of the feature.
	InstalledTemplateVersion *string `json:"installed_template_version"`
}

EbsAssetInfo represents a custom type struct

type EbsTemplateInfo

type EbsTemplateInfo struct {
	// The latest available feature version for the asset.
	AvailableTemplateVersion *string `json:"available_template_version"`
}

EbsTemplateInfo represents a custom type struct

type EbsVolumeEmbedded

type EbsVolumeEmbedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

EbsVolumeEmbedded represents a custom type struct. Embedded responses related to the resource.

type EbsVolumeLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateBackupAwsEbsVolume *HateoasLink `json:"create-backup-aws-ebs-volume"`
	// A resource-specific HATEOAS link.
	ListBackupAwsEbsVolumes *HateoasLink `json:"list-backup-aws-ebs-volumes"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
}

EbsVolumeLinks represents a custom type struct. URLs to pages related to the resource.

type EbsVolumeListEmbedded

type EbsVolumeListEmbedded struct {
	// TODO: Add struct field description
	Items []*EBS `json:"items"`
}

EbsVolumeListEmbedded represents a custom type struct. Embedded responses related to the resource.

type EbsVolumeListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

EbsVolumeListLinks represents a custom type struct. URLs to pages related to the resource.

type EditProfileResponse

type EditProfileResponse struct {
	// Embedded responses related to the resource.
	Embedded *UserEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *UserLinks `json:"_links"`
	// The list of organizational unit IDs assigned to the user.
	// This attribute will be available when reading a single user and not when listing users.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// Assigned Role for the user.
	AssignedRole *string `json:"assigned_role"`
	// The email address of the Clumio user.
	Email *string `json:"email"`
	// The first and last name of the Clumio user. The name appears in the User Management screen and is used to identify the user.
	FullName *string `json:"full_name"`
	// The Clumio-assigned ID of the Clumio user.
	Id *string `json:"id"`
	// The ID number of the user who sent the email invitation.
	Inviter *string `json:"inviter"`
	// Determines whether the user has activated their Clumio account.
	// If `true`, the user has activated the account.
	IsConfirmed *bool `json:"is_confirmed"`
	// Determines whether the user is enabled (in "Activated" or "Invited" status) in Clumio.
	// If `true`, the user is in "Activated" or "Invited" status in Clumio.
	// Users in "Activated" status can log in to Clumio.
	// Users in "Invited" status have been invited to log in to Clumio via an email invitation and the invitation
	// is pending acceptance from the user.
	// If `false`, the user has been manually suspended and cannot log in to Clumio
	// until another Clumio user reactivates the account.
	IsEnabled *bool `json:"is_enabled"`
	// The timestamp of when when the user was last active in the Clumio system. Represented in RFC-3339 format.
	LastActivityTimestamp *string `json:"last_activity_timestamp"`
	// The number of organizational units accessible to the user.
	OrganizationalUnitCount *int64 `json:"organizational_unit_count"`
}

EditProfileResponse represents a custom type struct for Success

type EmailDownloadDataAccessObject

type EmailDownloadDataAccessObject struct {
	// The optional message that was sent as part of the email.
	EmailMessage *string `json:"email_message"`
	// The email address of the user who initiated the file level restore.
	RetrievedBy *string `json:"retrieved_by"`
	// The email address of the user who the file was retrieved for.
	RetrievedFor *string `json:"retrieved_for"`
}

EmailDownloadDataAccessObject represents a custom type struct. The details used to access the restored file, if it was shared by email. If the restored file was shared by direct download (and not email), then this field has a value of `null`.

type EmailDownloadDataAccessOption

type EmailDownloadDataAccessOption struct {
	// The email address of the user who will receive the download link to the restored
	// file.
	EmailAddress *string `json:"email_address"`
	// The optional message sent as part of the email.
	Message *string `json:"message"`
}

EmailDownloadDataAccessOption represents a custom type struct. Specifies a download link (accessible via email) as the restore target. If not specified, `target` defaults to `direct_download`. If you specify `email`, also send the user the passcode that gets generated from this request (see `passcode` in the response). After the user clicks the download link, they must enter the passcode to access the files.

type EntityGroupAssignmetUpdates

type EntityGroupAssignmetUpdates struct {
	// The Clumio-assigned IDs of the organizational units to be assigned to the user.
	Add []*string `json:"add"`
	// The Clumio-assigned IDs of the organizational units to be unassigned to the user.
	Remove []*string `json:"remove"`
}

EntityGroupAssignmetUpdates represents a custom type struct. Updates to the organizational unit assignments.

type EntityGroupEmbedded

type EntityGroupEmbedded struct {
	// Embeds the associated task of a resource in the response if requested using the `embed` query parameter.
	ReadTask interface{} `json:"read-task"`
}

EntityGroupEmbedded represents a custom type struct. Embedded responses related to the resource.

type EntityModel

type EntityModel struct {
	// The parent object of the primary entity associated with the organizational unit. For example, "vmware_vcenter" is the parent entity of primary entity "vmware_vm_folder".
	// The parent object is necessary for VMware entities and can be omitted for other data sources.
	ParentEntity *OrganizationalUnitParentEntity `json:"parent_entity"`
	// The primary object associated with the organizational unit. Examples of primary entities include "aws_environment" and "vmware_vm".
	PrimaryEntity *OrganizationalUnitPrimaryEntity `json:"primary_entity"`
}

EntityModel represents a custom type struct. entityModel denotes the entityModel

type Error

type Error struct {
	// TODO: Add struct field description
	Errors []*SingleErrorResponse `json:"errors"`
}

Error represents a custom type struct. Error

type ErrorModel added in v0.4.0

type ErrorModel struct {
	// ErrorCode is a short string describing the error, if any.
	ErrorCode *string `json:"error_code"`
	// ErrorMessage is a longer description explaining the error, if any, and how to
	// fix it.
	ErrorMessage *string `json:"error_message"`
}

ErrorModel represents a custom type struct

type FileDescriptor

type FileDescriptor struct {
	// The Clumio-assigned ID of the filesystem within which to restore the file. Use
	// [ GET /backups/files/search/{search_result_id}/versions](#operation/list-file-versions)
	// to fetch the value.
	FilesystemId *string `json:"filesystem_id"`
	// The path of the file to be restored. Use
	// [GET /backups/files/search](#operation/list-files) to fetch the value.
	Path *string `json:"path"`
}

FileDescriptor represents a custom type struct. Specifies a file/directory by providing path and file system.

type FileListResponse

type FileListResponse struct {
	// Embedded responses related to the resource.
	Embedded *FileVersionsListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *FileVersionsListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

FileListResponse represents a custom type struct for Success

type FileRestoreSource

type FileRestoreSource struct {
	// The Clumio-assigned ID of the backup containing the files you want to restore. Use
	// [ GET /backups/files/search/{search_result_id}/versions](#operation/list-file-versions)
	// to fetch the value.
	BackupId *string `json:"backup_id"`
	// Specifies a file/directory by providing path and file system.
	Files []*FileDescriptor `json:"files"`
}

FileRestoreSource represents a custom type struct. The files to be restored and from which backup they are to be restored from.

type FileRestoreTarget

type FileRestoreTarget struct {
	// Specifies the Clumio UI as the restore target for direct download. Optionally set
	// `direct_download: {}`. If a target is not specified, then `target` defaults to
	// `direct_download`.
	DirectDownload interface{} `json:"direct_download"`
	// Specifies a download link (accessible via email) as the restore target. If not
	// specified, `target` defaults to `direct_download`. If you specify `email`, also
	// send the user the passcode that gets generated from this request (see `passcode` in
	// the response). After the user clicks the download link, they must enter the
	// passcode to access the files.
	Email *EmailDownloadDataAccessOption `json:"email"`
}

FileRestoreTarget represents a custom type struct. The destination information for the file level restore, representing the access option for the restored file. Users can access the restored file by direct download or by email. The direct download (`direct_download`) option allows users to directly download the restored file from the Clumio UI. The email (`email`) option allows users to access the restored file using a downloadable link they receive by email. If a target is not specified, then `target` defaults to `direct_download`.

type FileSearchListEmbedded

type FileSearchListEmbedded struct {
	// TODO: Add struct field description
	Items []*FileSearchResult `json:"items"`
}

FileSearchListEmbedded represents a custom type struct. Embedded responses related to the resource.

type FileSearchListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

FileSearchListLinks represents a custom type struct. URLs to pages related to the resource.

type FileSearchResponse

type FileSearchResponse struct {
	// Embedded responses related to the resource.
	Embedded *FileSearchListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *FileSearchListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

FileSearchResponse represents a custom type struct for Success

type FileSearchResult

type FileSearchResult struct {
	// URLs to pages related to the resource.
	Links *ListFileVersionsHateoasLinks `json:"_links"`
	// The full file path.
	Path *string `json:"path"`
	// The Clumio-assigned ID representing a collection of one or more versions of the same
	// file backed up at different times. This ID cannot be used to restore the
	// file. To restore the file, use the
	// [GET /backups/files/search/{search_result_id}/versions](#operation/list-file-versions)
	// endpoint to retrieve particular versions of this file that can be restored.
	// Then, use the backup ID, filesystem ID, and file path as parameters for the
	// [POST /restores/files](#operation/restore-files) endpoint.
	SearchResultId *string `json:"search_result_id"`
}

FileSearchResult represents a custom type struct

type FileSystem

type FileSystem struct {
	// TODO: Add struct field description
	Links *HateoasCommonLinks `json:"_links"`
	// The amount of available memory on the filesystem in bytes. Does not include
	// reserved memory.
	Available *uint64 `json:"available"`
	// The filesystem UUID produced by the `lsblk` linux command. If this filesystem
	// was not given a UUID in the host environment, then this field has a value of
	// `null`.
	FilesystemNativeId *string `json:"filesystem_native_id"`
	// The Clumio-assigned ID of the filesystem.
	Id *string `json:"id"`
	// The reason why file indexing failed. If file indexing succeeded, then this field
	// has a value of `null`. Possible values include "unsupported" and "encrypted".
	IndexingFailedReason *string `json:"indexing_failed_reason"`
	// Determines whether the file system was encrypted.
	IsEncrypted *bool `json:"is_encrypted"`
	// Determines whether the file system has been indexed.
	// If `true`, file indexing completed successfully.
	IsIndexed *bool `json:"is_indexed"`
	// The location of this filesystem in the host environment. Only identifies mount
	// points that correspond to Windows drive letters. All other mount points are
	// identified by a '/'.
	MountPath *string `json:"mount_path"`
	// The number of files (including directories) indexed in the file system.
	NumFilesIndexed *int64 `json:"num_files_indexed"`
	// The total amount of memory available to the filesystem in bytes.
	Size *uint64 `json:"size"`
	// The type of the filesystem. This field is populated with values returned from
	// the lsblk command. Possible values include `ntfs`, `xfs`, and `ext3`.
	ClumioType *string `json:"type"`
	// The amount of memory used by the filesystem in bytes.
	Used *uint64 `json:"used"`
}

FileSystem represents a custom type struct

type FileSystemListEmbedded

type FileSystemListEmbedded struct {
	// TODO: Add struct field description
	Items []*FileSystem `json:"items"`
}

FileSystemListEmbedded represents a custom type struct. _embedded contains the list of items of a file_system list query

type FileSystemListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

FileSystemListLinks represents a custom type struct. _links provides URLs to related navigable pages of a file_system list query

type FileVersion

type FileVersion struct {
	// URLs to pages related to the resource.
	Links *FileVersionHateoas `json:"_links"`
	// The Clumio-assigned ID of the backup.
	BackupId *string `json:"backup_id"`
	// The Clumio-assigned ID of the filesystem within which to restore the file. Use
	// [ GET /backups/files/search/{search_result_id}/versions](#operation/list-file-versions)
	// to fetch the value.
	FilesystemId *string `json:"filesystem_id"`
	// The timestamp of the last time the file was modified. Represented in RFC-3339 format.
	ModifiedTimestamp *string `json:"modified_timestamp"`
	// The path of the file to be restored. Use
	// [GET /backups/files/search](#operation/list-files) to fetch the value.
	Path *string `json:"path"`
	// The size of the file in bytes.
	Size *int64 `json:"size"`
	// The timestamp of when the backup associated with this file started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
}

FileVersion represents a custom type struct

type FileVersionHateoas

type FileVersionHateoas struct {
	// A resource-specific HATEOAS link.
	RestoreFiles *HateoasLink `json:"restore-files"`
}

FileVersionHateoas represents a custom type struct. URLs to pages related to the resource.

type FileVersionsListEmbedded

type FileVersionsListEmbedded struct {
	// TODO: Add struct field description
	Items []*FileVersion `json:"items"`
}

FileVersionsListEmbedded represents a custom type struct. Embedded responses related to the resource.

type FileVersionsListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

FileVersionsListLinks represents a custom type struct. URLs to pages related to the resource.

type FolderEmbedded

type FolderEmbedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
	// Embeds the compliance statistics of VMs into each vCenter resource in the response, if requested using the `_embed` query parameter.
	ReadVmwareVcenterFolderComplianceStats interface{} `json:"read-vmware-vcenter-folder-compliance-stats"`
}

FolderEmbedded represents a custom type struct. Embedded responses related to the resource.

type FolderLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to the compliance statistics of VMs in the folders and subfolders of this vCenter resource.
	ReadVmwareVcenterFolderComplianceStats *ReadVCenterObjectProtectionStatsHateoasLink `json:"read-vmware-vcenter-folder-compliance-stats"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

FolderLinks represents a custom type struct. URLs to pages related to the resource.

type FolderListEmbedded

type FolderListEmbedded struct {
	// FolderWithETag to support etag string to be calculated
	Items []*FolderWithETag `json:"items"`
}

FolderListEmbedded represents a custom type struct. Embedded responses related to the resource.

type FolderListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

FolderListLinks represents a custom type struct. URLs to pages related to the resource.

type FolderWithETag

type FolderWithETag struct {
	// Embedded responses related to the resource.
	Embedded *FolderEmbedded `json:"_embedded"`
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *FolderLinks `json:"_links"`
	// The data center associated with this folder.
	Datacenter *VMwareVCenterFolderDatacenterModel `json:"datacenter"`
	// Count of all descendant folders inside this folder
	DescendantFolderCount *int64 `json:"descendant_folder_count"`
	// Determines whether the folder has direct child folders.
	HasChildFolders *bool `json:"has_child_folders"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
	// Determines whether the folder is a hidden root folder. If `true`, the folder is a hidden root folder.
	IsRoot *bool `json:"is_root"`
	// Determines whether the folder can be used as a restore destination. If `true`, the folder can be used as a restore destination, and backups can be restored to the folder.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of the folder.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the folder.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The parent folder under which this folder resides.
	ParentFolder *VMwareVCenterParentFolderModel `json:"parent_folder"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this folder. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
	// The folder type. Examples of folder types include "datacenter_folder" and "vm_folder". Refer to the Folder Type table for a complete list of folder types.
	ClumioType *string `json:"type"`
}

FolderWithETag represents a custom type struct. FolderWithETag to support etag string to be calculated

type GeneralSettingsLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	UpdateGeneralSettings *HateoasLink `json:"update-general-settings"`
}

GeneralSettingsLinks represents a custom type struct. URLs to pages related to the resource.

type HateoasCommonLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

HateoasCommonLinks represents a custom type struct

type HateoasFirstLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

HateoasFirstLink represents a custom type struct. The HATEOAS link to the first page of results.

type HateoasLastLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

HateoasLastLink represents a custom type struct. The HATEOAS link to the last page of results.

type HateoasLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

HateoasLink represents a custom type struct. A resource-specific HATEOAS link.

type HateoasNextLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

HateoasNextLink represents a custom type struct. The HATEOAS link to the next page of results.

type HateoasPrevLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

HateoasPrevLink represents a custom type struct. The HATEOAS link to the previous page of results.

type HateoasSelfLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

HateoasSelfLink represents a custom type struct. The HATEOAS link to this resource.

type Host

type Host struct {
	// URLs to pages related to the resource.
	Links *HostLinks `json:"_links"`
	// The endpoints discovered post the host connection of the host.
	DiscoveredEndpoints []*string `json:"discovered_endpoints"`
	// The Current MSI version of the edge connector installed in the host.
	EdgeConnectorVersion *string `json:"edge_connector_version"`
	// The user-provided endpoint used to connect the host.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the management group associated with the host.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the Host.
	Id *string `json:"id"`
	// The timestamp of the last successful heartbeat of this host. Represented in RFC-3339 format.
	LastHeartbeatTimestamp *string `json:"last_heartbeat_timestamp"`
	// Name of the Host.
	Name *string `json:"name"`
	// The operational status of the Host. Possible values include `upgrade_in_progress`, `upgrade_success`, `upgrade_failed`, `delete_in_progress`, `delete_failed`, `move_in_progress`, `move_succeeded` and `move_failed`.
	OperationalStatus *string `json:"operational_status"`
	// The connection status of the Host. Possible values include `connected`, `disconnected`, `connection_pending`, and `invalid_token`.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the subgroup associated with the host.
	SubgroupId *string `json:"subgroup_id"`
	// The Clumio-assigned UUID of the host. This UUID is used for filtering hosts during list operations.
	Uuid *string `json:"uuid"`
}

Host represents a custom type struct

type HostIDModel

type HostIDModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the host.
	Id *string `json:"id"`
}

HostIDModel represents a custom type struct

type HostLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

HostLinks represents a custom type struct. URLs to pages related to the resource.

type HostListEmbedded

type HostListEmbedded struct {
	// HostWithETag to support etag string to be calculated
	Items []*HostWithETag `json:"items"`
}

HostListEmbedded represents a custom type struct. Embedded responses related to the resource.

type HostListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

HostListLinks represents a custom type struct. URLs to pages related to the resource.

type HostWithETag

type HostWithETag struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *HostLinks `json:"_links"`
	// The VMware compute resource representing the host.
	ComputeResource *VMwareVCenterHostComputeResourceModel `json:"compute_resource"`
	// The connection state of the host as seen through the vCenter server. Examples include "connected", "disconnected", and "not_responding".
	ConnectionState *string `json:"connection_state"`
	// The data center in which the host resides.
	Datacenter *VMwareVCenterHostDatacenterModel `json:"datacenter"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the host.
	Id *string `json:"id"`
	// Determines whether the host has been placed in maintenance mode as seen through the vCenter server. If `true`, the host is in maintenance mode.
	IsInMaintenanceMode *bool `json:"is_in_maintenance_mode"`
	// Determines whether the host has been placed in quarantine mode as seen through the vCenter server. If `true`, the host is in quarantine mode.
	IsInQuarantineMode *bool `json:"is_in_quarantine_mode"`
	// Determines whether the host is a standalone host. If `true`, the host is a standalone host.
	IsStandalone *bool `json:"is_standalone"`
	// Determines whether the host can be used as a restore destination. If `true`, the host can be used as a restore destination and backups can be restored to the host.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of the host.
	Name *string `json:"name"`
	// The power state of the host as seen through the vCenter server. Examples include "powered_off", "powered_on", and "standby".
	PowerState *string `json:"power_state"`
}

HostWithETag represents a custom type struct. HostWithETag to support etag string to be calculated

type IndividualAlertDetails

type IndividualAlertDetails struct {
	// A brief description of the condition that caused the alert. Examples include "Size Limit Exceeded" and "Insufficient Cloud Connector Capacity".
	Cause *string `json:"cause"`
	// A detailed description of the alert, including the reason why the alert occurred
	// and the steps you must take to resolve the issue.
	Description *string `json:"description"`
	// The general alert category. Examples include "Policy Violated" and "Restore Failed".
	ClumioType *string `json:"type"`
	// Data specific to the alert generated. If the alert has no variables, then this
	// field has a value of `null`.
	Variables map[string]*string `json:"variables"`
}

IndividualAlertDetails represents a custom type struct. Additional information about the alert.

type InheritedFrom

type InheritedFrom struct {
	// The Clumio-assigned ID of the item.
	Id *string `json:"id"`
	// Name of the folder.
	Name *string `json:"name"`
	// VCenterObjectType denotes the VCenter object type
	Objecttype *string `json:"objectType"`
}

InheritedFrom represents a custom type struct

type ListAWSConnectionsResponse

type ListAWSConnectionsResponse struct {
	// Embedded responses related to the resource.
	Embedded *AWSConnectionListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSConnectionListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListAWSConnectionsResponse represents a custom type struct for Success

type ListAWSEnvironmentsResponse

type ListAWSEnvironmentsResponse struct {
	// Embedded responses related to the resource.
	Embedded *AWSEnvironmentListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSEnvironmentListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListAWSEnvironmentsResponse represents a custom type struct for Success

type ListAWSRegionsResponse

type ListAWSRegionsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ConnectionRegionListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ConnectionRegionListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListAWSRegionsResponse represents a custom type struct for Success

type ListAlertsResponse

type ListAlertsResponse struct {
	// Embedded responses related to the resource.
	Embedded *AlertListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AlertListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The sort order used in the request.
	SortApplied *string `json:"sort_applied"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListAlertsResponse represents a custom type struct for Success

type ListAuditTrailsResponse

type ListAuditTrailsResponse struct {
	// Embedded responses related to the resource.
	Embedded *AuditTrailListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AuditTrailListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListAuditTrailsResponse represents a custom type struct for Success

type ListAutoUserProvisioningRulesResponse added in v0.3.0

type ListAutoUserProvisioningRulesResponse struct {
	// Embedded responses related to the resource.
	Embedded *AutoUserProvisioningRuleListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningRuleListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListAutoUserProvisioningRulesResponse represents a custom type struct for Success

type ListAwsTagsResponse

type ListAwsTagsResponse struct {
	// Embedded responses related to the resource.
	Embedded *AwsTagListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AwsTagListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListAwsTagsResponse represents a custom type struct for Success

type ListBucketsResponse added in v0.1.2

type ListBucketsResponse struct {
	// Embedded responses related to the resource.
	Embedded *BucketListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *BucketListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListBucketsResponse represents a custom type struct for Success

type ListComputeResourcesResponse

type ListComputeResourcesResponse struct {
	// TODO: Add struct field description
	Computeresourcefolders []*VCenterFolder `json:"computeResourceFolders"`
	// TODO: Add struct field description
	Computeresources []*VCenterComputeResource `json:"computeResources"`
}

ListComputeResourcesResponse represents a custom type struct for Success

type ListConsolidatedAlertsResponse

type ListConsolidatedAlertsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ConsolidatedAlertListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ConsolidatedAlertListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListConsolidatedAlertsResponse represents a custom type struct for Success

type ListDatacentersResponse

type ListDatacentersResponse struct {
	// Embedded responses related to the resource.
	Embedded *DatacenterListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *DatacenterListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListDatacentersResponse represents a custom type struct for Success

type ListEBSBackupsResponseV1

type ListEBSBackupsResponseV1 struct {
	// Embedded responses related to the resource.
	Embedded *EBSBackupListEmbeddedV1 `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *EBSBackupListLinksV1 `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListEBSBackupsResponseV1 represents a custom type struct for Success

type ListEbsVolumesResponse

type ListEbsVolumesResponse struct {
	// Embedded responses related to the resource.
	Embedded *EbsVolumeListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *EbsVolumeListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListEbsVolumesResponse represents a custom type struct for Success

type ListFileSystemsResponse

type ListFileSystemsResponse struct {
	// _embedded contains the list of items of a file_system list query
	Embedded *FileSystemListEmbedded `json:"_embedded"`
	// _links provides URLs to related navigable pages of a file_system list query
	Links *FileSystemListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListFileSystemsResponse represents a custom type struct for Success

type ListFileVersionsHateoasLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

ListFileVersionsHateoasLink represents a custom type struct. A HATEOAS link to the file versions associated with this resource.

type ListFileVersionsHateoasLinks struct {
	// A HATEOAS link to the file versions associated with this resource.
	ListFileVersions *ListFileVersionsHateoasLink `json:"list-file-versions"`
}

ListFileVersionsHateoasLinks represents a custom type struct. URLs to pages related to the resource.

type ListFoldersResponse

type ListFoldersResponse struct {
	// Embedded responses related to the resource.
	Embedded *FolderListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *FolderListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListFoldersResponse represents a custom type struct for Success

type ListHcmHostsResponse

type ListHcmHostsResponse struct {
	// Embedded responses related to the resource.
	Embedded *HostListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *HostListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListHcmHostsResponse represents a custom type struct for Success

type ListHostsResponse

type ListHostsResponse struct {
	// Embedded responses related to the resource.
	Embedded *HostListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *HostListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListHostsResponse represents a custom type struct for Success

type ListManagementGroupsResponse

type ListManagementGroupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ManagementGroupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ManagementGroupListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The total count of groups upto 10. Any number of groups beyond 10 will
	// still be returned as 10.
	MinCount *int64 `json:"min_count"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListManagementGroupsResponse represents a custom type struct for Success

type ListMssqlAGsResponse

type ListMssqlAGsResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlAGListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlAGListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListMssqlAGsResponse represents a custom type struct for Success

type ListMssqlDatabaseBackupsResponse

type ListMssqlDatabaseBackupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabaseBackupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlDatabaseBackupListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListMssqlDatabaseBackupsResponse represents a custom type struct for Success

type ListMssqlDatabasePitrIntervalsResponse

type ListMssqlDatabasePitrIntervalsResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabasePitrIntervalListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlDatabasePitrIntervalListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListMssqlDatabasePitrIntervalsResponse represents a custom type struct. ListMssqlDatabasePitrIntervalsResponse represents the success response

type ListMssqlDatabasesResponse

type ListMssqlDatabasesResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabaseListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlDatabaseListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListMssqlDatabasesResponse represents a custom type struct for Success

type ListMssqlHostsResponse

type ListMssqlHostsResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlHostListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlHostListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListMssqlHostsResponse represents a custom type struct for Success

type ListMssqlInstancesResponse

type ListMssqlInstancesResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlInstanceListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlInstanceListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListMssqlInstancesResponse represents a custom type struct for Success

type ListOrganizationalUnitsResponse

type ListOrganizationalUnitsResponse struct {
	// Embedded responses related to the resource.
	Embedded *OrganizationalUnitListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *OrganizationalUnitListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListOrganizationalUnitsResponse represents a custom type struct for Success

type ListPoliciesResponse

type ListPoliciesResponse struct {
	// An array of embedded resources related to this resource.
	Embedded *PolicyListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *PolicyListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListPoliciesResponse represents a custom type struct for Success

type ListProtectionGroupBackupsResponse added in v0.2.5

type ListProtectionGroupBackupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ProtectionGroupBackupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupBackupListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListProtectionGroupBackupsResponse represents a custom type struct for Success

type ListProtectionGroupS3AssetBackupsResponse added in v0.2.5

type ListProtectionGroupS3AssetBackupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ProtectionGroupS3AssetBackupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupS3AssetBackupListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListProtectionGroupS3AssetBackupsResponse represents a custom type struct for Success

type ListProtectionGroupS3AssetsResponse added in v0.1.2

type ListProtectionGroupS3AssetsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ProtectionGroupBucketListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupBucketListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListProtectionGroupS3AssetsResponse represents a custom type struct for Success

type ListProtectionGroupsResponse added in v0.1.2

type ListProtectionGroupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ProtectionGroupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListProtectionGroupsResponse represents a custom type struct for Success

type ListReportDownloadsResponse

type ListReportDownloadsResponse struct {
	// _embedded contains the list of items of a list report CSV download query
	Embedded *ReportDownloadListEmbedded `json:"_embedded"`
	// _links provides URLs to related navigable pages of a list report CSV download query
	Links *ReportDownloadListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListReportDownloadsResponse represents a custom type struct for Success

type ListResourcePoolsResponse

type ListResourcePoolsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ResourcePoolListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ResourcePoolListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListResourcePoolsResponse represents a custom type struct for Success

type ListRolesResponse

type ListRolesResponse struct {
	// Embedded responses related to the resource.
	Embedded *RoleListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *RoleListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListRolesResponse represents a custom type struct for Success

type ListRulesResponse

type ListRulesResponse struct {
	// An array of embedded resources related to this resource.
	Embedded *RuleListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *RuleListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListRulesResponse represents a custom type struct for Success

type ListSubgroupsResponse

type ListSubgroupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *SubgroupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *SubgroupListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The total count of subgroups upto 20. Any number of subgroups beyond 20
	// will still be returned as 20.
	MinCount *int64 `json:"min_count"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListSubgroupsResponse represents a custom type struct for Success

type ListTagCategories2Response

type ListTagCategories2Response struct {
	// Embedded responses related to the resource
	Embedded *TagCategory2ListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource
	Links *TagCategory2ListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListTagCategories2Response represents a custom type struct for Success

type ListTagsResponse

type ListTagsResponse struct {
	// Embedded responses related to the resource.
	Embedded *Tag2ListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *Tag2ListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListTagsResponse represents a custom type struct for Success

type ListTasksResponse

type ListTasksResponse struct {
	// Embedded responses related to the resource.
	Embedded *TaskListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *TaskListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListTasksResponse represents a custom type struct for Success

type ListUsersResponse

type ListUsersResponse struct {
	// Embedded responses related to the resource.
	Embedded *UserListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *UserListHateoasLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListUsersResponse represents a custom type struct for Success

type ListVMBackupsResponse

type ListVMBackupsResponse struct {
	// Embedded responses related to the resource.
	Embedded *VMBackupListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VMBackupListHateoasLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListVMBackupsResponse represents a custom type struct for Success

type ListVMwareDatastoresResponse

type ListVMwareDatastoresResponse struct {
	// Embedded responses related to the resource.
	Embedded *VMwareDatastoreListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VMwareDatastoreListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListVMwareDatastoresResponse represents a custom type struct for Success

type ListVMwareVCenterNetworksResponse

type ListVMwareVCenterNetworksResponse struct {
	// Embedded responses related to the resource.
	Embedded *VMwareVCenterNetworkListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VMwareVCenterNetworkListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListVMwareVCenterNetworksResponse represents a custom type struct for Success

type ListVcentersResponse

type ListVcentersResponse struct {
	// Embedded responses related to the resource.
	Embedded *VcenterListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VcenterListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListVcentersResponse represents a custom type struct for Success

type ListVmsResponse

type ListVmsResponse struct {
	// Embedded responses related to the resource.
	Embedded *VmListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VmListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The filter used in the request. The filter includes both manually-specified and system-generated filters.
	FilterApplied *string `json:"filter_applied"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

ListVmsResponse represents a custom type struct for Success

type ListWalletsResponse added in v0.2.7

type ListWalletsResponse struct {
	// Embedded responses related to the resource.
	Embedded *WalletListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *WalletListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ListWalletsResponse represents a custom type struct for Success

type M365GroupingCriteria

type M365GroupingCriteria struct {
	// Determines whether or not this data group is editable. If false, then an
	// organizational unit uses this data group.
	// To edit this data group, all organizational units using it must be deleted.
	IsEditable *bool `json:"is_editable"`
	// The entity type used to group organizational units for Microsoft 365 resources.
	//
	// +---------------------+------------------------+
	// |     Entity Type     |        Details         |
	// +=====================+========================+
	// | microsoft365_domain | Microsoft 365 account. |
	// +---------------------+------------------------+
	// | microsoft365_group  | Microsoft 365 group.   |
	// +---------------------+------------------------+
	//
	ClumioType *string `json:"type"`
}

M365GroupingCriteria represents a custom type struct. The entity type used to group organizational units for Microsoft 365 resources.

type MSSQLDatabaseBackupAdvancedSetting added in v0.2.2

type MSSQLDatabaseBackupAdvancedSetting struct {
	// The alternative replica for MSSQL database backups. This setting only applies to Availability Group databases. Possible values include `"primary"`, `"sync_secondary"`, and `"stop"`. If `"stop"` is provided, then backups will not attempt to switch to a different replica when the preferred replica is unavailable. Otherwise, recurring backups will attempt to use either the primary replica or the secondary replica accordingly.
	AlternativeReplica *string `json:"alternative_replica"`
	// The primary preferred replica for MSSQL database backups. This setting only applies to Availability Group databases. Possible values include `"primary"` and `"sync_secondary"`. Recurring backup will first attempt to use either the primary replica or the secondary replica accordingly.
	PreferredReplica *string `json:"preferred_replica"`
}

MSSQLDatabaseBackupAdvancedSetting represents a custom type struct. Additional policy configuration settings for the `mssql_database_backup` operation. If this operation is not of type `mssql_database_backup`, then this field is omitted from the response.

type MSSQLLogBackupAdvancedSetting added in v0.2.2

type MSSQLLogBackupAdvancedSetting struct {
	// The alternative replica for MSSQL log backups. This setting only applies to Availability Group databases. Possible values include `"primary"`, `"sync_secondary"`, and `"stop"`. If `"stop"` is provided, then backups will not attempt to switch to a different replica when the preferred replica is unavailable. Otherwise, recurring backups will attempt to use either the primary replica or the secondary replica accordingly.
	AlternativeReplica *string `json:"alternative_replica"`
	// The primary preferred replica for MSSQL log backups. This setting only applies to Availability Group databases. Possible values include `"primary"` and `"sync_secondary"`. Recurring backup will first attempt to use either the primary replica or the secondary replica accordingly.
	PreferredReplica *string `json:"preferred_replica"`
}

MSSQLLogBackupAdvancedSetting represents a custom type struct. Additional policy configuration settings for the `mssql_log_backup` operation. If this operation is not of type `mssql_log_backup`, then this field is omitted from the response.

type ManagementGroup

type ManagementGroup struct {
	// URLs to pages related to the resource.
	Links *ManagementGroupLinks `json:"_links"`
	// The Clumio-assigned ID of the management group.
	Id *string `json:"id"`
	// The name of the management group.
	Name *string `json:"name"`
	// The type of the management group. Possible values include `on_prem`.
	ClumioType *string `json:"type"`
	// The Clumio-assigned ID of the vCenter server associated with the management group.
	// All management groups are associated with a vCenter server.
	VcenterId *string `json:"vcenter_id"`
}

ManagementGroup represents a custom type struct

type ManagementGroupLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	ListManagementSubgroups *HateoasLink `json:"list-management-subgroups"`
	// A resource-specific HATEOAS link.
	UpdateManagementGroup *HateoasLink `json:"update-management-group"`
}

ManagementGroupLinks represents a custom type struct. URLs to pages related to the resource.

type ManagementGroupListEmbedded

type ManagementGroupListEmbedded struct {
	// TODO: Add struct field description
	Items []*ManagementGroup `json:"items"`
}

ManagementGroupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ManagementGroupListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ManagementGroupListLinks represents a custom type struct. URLs to pages related to the resource.

type MoveHcmHostsResponse

type MoveHcmHostsResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MoveHostsLinks `json:"_links"`
	// TaskID for MoveHostsReq
	TaskId *string `json:"task_id"`
}

MoveHcmHostsResponse represents a custom type struct for Success

type MoveHostsLinks struct {
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

MoveHostsLinks represents a custom type struct. URLs to pages related to the resource.

type MoveHostsSource

type MoveHostsSource struct {
	// Endpoints of hosts to be deleted
	Endpoints []*string `json:"endpoints"`
	// Performs the operation on a host within the specified group id.
	GroupId *string `json:"group_id"`
	// Performs the operation on a host within the specified subgroup id.
	SubgroupId *string `json:"subgroup_id"`
}

MoveHostsSource represents a custom type struct. The hosts to be moved to a different management subgroup.

type MoveHostsTarget

type MoveHostsTarget struct {
	// Performs the operation on a host within the specified group id.
	GroupId *string `json:"group_id"`
	// Performs the operation on a host within the specified subgroup id.
	SubgroupId *string `json:"subgroup_id"`
}

MoveHostsTarget represents a custom type struct. The target configuration of the hosts to be moved.

type MoveMssqlHostConnectionsV1Request

type MoveMssqlHostConnectionsV1Request struct {
	// The hosts to be moved to a different management subgroup.
	Source *MoveHostsSource `json:"source"`
	// The target configuration of the hosts to be moved.
	Target *MoveHostsTarget `json:"target"`
}

MoveMssqlHostConnectionsV1Request represents a custom type struct

type MssqlAG

type MssqlAG struct {
	// MssqlAGEmbedded is embed of MSSQL Availability Groups
	// Embedded responses related to the resource.
	Embedded *MssqlAGEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlAGLinks `json:"_links"`
	// The Clumio-assigned ID of the availability group.
	Id *string `json:"id"`
	// The Microsoft SQL-assigned name of the availability group.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the availability group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The status of the availability group, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
}

MssqlAG represents a custom type struct

type MssqlAGEmbedded

type MssqlAGEmbedded struct {
	// availability group level stats contains compliant database stats
	GetMssqlAvailabilityGroupStats interface{} `json:"get-mssql-availability-group-stats"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

MssqlAGEmbedded represents a custom type struct. MssqlAGEmbedded is embed of MSSQL Availability Groups Embedded responses related to the resource.

type MssqlAGLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	GetMssqlAvailabilityGroupStats *HateoasLink `json:"get-mssql-availability-group-stats"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

MssqlAGLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlAGListEmbedded

type MssqlAGListEmbedded struct {
	// TODO: Add struct field description
	Items []*MssqlAG `json:"items"`
}

MssqlAGListEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlAGListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

MssqlAGListLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlDatabase

type MssqlDatabase struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabaseEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *DatabaseLinks `json:"_links"`
	// The Clumio-assigned ID of the availability group. It is null in case of a standalone database.
	AvailabilityGroupId *string `json:"availability_group_id"`
	// The Microsoft SQL assigned name of the availability group. It is null in case of a standalone database.
	AvailabilityGroupName *string `json:"availability_group_name"`
	// The policy compliance status of the resource. If the database is not protected,
	// then this field has a value of `null`. Refer to
	//
	// the Compliance Status table
	//
	// for a complete list of compliance statuses.
	ComplianceStatus *string `json:"compliance_status"`
	// The Clumio-assigned ID of the group to which the standalone database belongs, in case of an
	// availability group database it will be empty.
	GroupId *string `json:"group_id"`
	// The user-provided endpoint of the host containing the given database.
	HostEndpoint *string `json:"host_endpoint"`
	// The Clumio-assigned ID of the host containing the given database.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the Database.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the instance containing the given database.
	InstanceId *string `json:"instance_id"`
	// The name of the Microsoft SQL instance containing the given database.
	InstanceName *string `json:"instance_name"`
	// is_supported is true if Clumio supports backup of the database.
	IsSupported *bool `json:"is_supported"`
	// The timestamp of the last time this database was full backed up.
	// Represented in RFC-3339 format. If this database has never been backed up,
	// this field has a value of `null`.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// The timestamp of the last time this database was log backed up in Bulk Recovery Model.
	// Represented in RFC-3339 format. If this database has never been backed up,
	// this field has a value of `null`.
	LastBulkRecoveryModelLogBackupTimestamp *string `json:"last_bulk_recovery_model_log_backup_timestamp"`
	// The timestamp of the last time this database was log backed up in Full Recovery Model.
	// Represented in RFC-3339 format. If this database has never been backed up,
	// this field has a value of `null`.
	LastFullRecoveryModelLogBackupTimestamp *string `json:"last_full_recovery_model_log_backup_timestamp"`
	// The name of the Database.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the database.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// recovery_model is the recovery model of the database. Possible values include 'simple_recovery_model',
	// 'bulk_recovery_model', and 'full_recovery_model'.
	RecoveryModel *string `json:"recovery_model"`
	// The size of the Database.
	Size *float64 `json:"size"`
	// The status of the database, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
	// subgroup id is the id of the Subgroup where this database belongs, in case of AG database
	// it will be empty.
	SubgroupId *string `json:"subgroup_id"`
	// The type of the database. Possible values include 'availability_group_database' and 'standalone_database'.
	ClumioType *string `json:"type"`
	// unsupported_reason is the reason why Clumio doesn't support backup of such database,
	// possible values include 'filestream_enabled_database'.
	UnsupportedReason *string `json:"unsupported_reason"`
}

MssqlDatabase represents a custom type struct

type MssqlDatabaseBackup

type MssqlDatabaseBackup struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabaseBackupEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlDatabaseBackupLinks `json:"_links"`
	// TODO: Add struct field description
	DatabaseFiles []*MssqlDatabaseFile `json:"database_files"`
	// The Clumio-assigned ID of the database associated with this backup.
	DatabaseId *string `json:"database_id"`
	// The Microsoft SQL database engine at the time of backup.
	Engine *string `json:"engine"`
	// The Microsoft SQL database engine version at the time of backup.
	EngineVersion *string `json:"engine_version"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The Clumio-assigned ID of the management group associated with the database at the time of backup.
	GroupId *string `json:"group_id"`
	// The user-provided endpoint of the host containing the given database at the time of backup.
	HostEndpoint *string `json:"host_endpoint"`
	// The Clumio-assigned ID of the host associated with the database at the time of backup.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the backup.
	Id *string `json:"id"`
	// The Clumio-assigned instance id at the time of backup.
	InstanceId *string `json:"instance_id"`
	// The instance name at the time of backup.
	InstanceName *string `json:"instance_name"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The Clumio-assigned ID of the management subgroup associated with the database at the time of backup.
	SubgroupId *string `json:"subgroup_id"`
	// The type of backup. Possible values include `mssql_database_backup`, `mssql_log_backup_full_recovery_model` and `mssql_log_backup_bulk_logged_model`.
	ClumioType *string `json:"type"`
}

MssqlDatabaseBackup represents a custom type struct

type MssqlDatabaseBackupEmbedded

type MssqlDatabaseBackupEmbedded struct {
	// Embeds details about the management group if requested using the `embed` query.
	ReadManagementGroup interface{} `json:"read-management-group"`
	// Embeds details about the management subgroup if requested using the `embed` query.
	ReadManagementSubgroup interface{} `json:"read-management-subgroup"`
}

MssqlDatabaseBackupEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlDatabaseBackupLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	ReadManagementGroup *HateoasLink `json:"read-management-group"`
	// A resource-specific HATEOAS link.
	ReadManagementSubgroup *HateoasLink `json:"read-management-subgroup"`
	// A resource-specific HATEOAS link.
	RestoreMssqlDatabase *HateoasLink `json:"restore-mssql-database"`
}

MssqlDatabaseBackupLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlDatabaseBackupListEmbedded

type MssqlDatabaseBackupListEmbedded struct {
	// TODO: Add struct field description
	Items []*MssqlDatabaseBackup `json:"items"`
}

MssqlDatabaseBackupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlDatabaseBackupListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

MssqlDatabaseBackupListLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlDatabaseEmbedded

type MssqlDatabaseEmbedded struct {
	// Embeds details about the management group if requested using the `embed` query.
	ReadManagementGroup interface{} `json:"read-management-group"`
	// Embeds details about the management subgroup if requested using the `embed` query.
	ReadManagementSubgroup interface{} `json:"read-management-subgroup"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

MssqlDatabaseEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlDatabaseFile

type MssqlDatabaseFile struct {
	// The name of the database file.
	Name *string `json:"name"`
	// The type of the database file. Possible values include sql_row_file and sql_log_file.
	ClumioType *string `json:"type"`
}

MssqlDatabaseFile represents a custom type struct

type MssqlDatabaseListEmbedded

type MssqlDatabaseListEmbedded struct {
	// TODO: Add struct field description
	Items []*MssqlDatabase `json:"items"`
}

MssqlDatabaseListEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlDatabaseListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateMssqlHostConnections *HateoasLink `json:"create-mssql-host-connections"`
}

MssqlDatabaseListLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlDatabasePitrInterval

type MssqlDatabasePitrInterval struct {
	// End timestamp of the interval. Represented in RFC-3339 format.
	EndTimestamp *string `json:"end_timestamp"`
	// Start timestamp of the interval. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
}

MssqlDatabasePitrInterval represents a custom type struct

type MssqlDatabasePitrIntervalListEmbedded

type MssqlDatabasePitrIntervalListEmbedded struct {
	// TODO: Add struct field description
	Items []*MssqlDatabasePitrInterval `json:"items"`
}

MssqlDatabasePitrIntervalListEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlDatabasePitrIntervalListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

MssqlDatabasePitrIntervalListLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlHost

type MssqlHost struct {
	// Embedded responses related to the resource.
	Embedded *MssqlHostEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlHostLinks `json:"_links"`
	// The user-provided endpoint of the host containing the given database.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the management group to which the host belongs.
	GroupId *string `json:"group_id"`
	// Determines whether or not an availability group is present in the host.
	HasAssociatedAvailabilityGroup *bool `json:"has_associated_availability_group"`
	// The Clumio-assigned ID of the Host.
	Id *string `json:"id"`
	// The number of instances present in the host.
	InstanceCount *int64 `json:"instance_count"`
	// The Clumio-assigned ID of the organizational unit associated with the host.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The status of the Host, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the management subgroup to which the host belongs.
	SubgroupId *string `json:"subgroup_id"`
}

MssqlHost represents a custom type struct

type MssqlHostEmbedded

type MssqlHostEmbedded struct {
	// host level stats
	GetMssqlHostStats interface{} `json:"get-mssql-host-stats"`
	// Embeds details about the management group if requested using the `embed` query.
	ReadManagementGroup interface{} `json:"read-management-group"`
	// Embeds details about the management subgroup if requested using the `embed` query.
	ReadManagementSubgroup interface{} `json:"read-management-subgroup"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

MssqlHostEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlHostLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	GetMssqlHostStats *HateoasLink `json:"get-mssql-host-stats"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A resource-specific HATEOAS link.
	ReadManagementGroup *HateoasLink `json:"read-management-group"`
	// A resource-specific HATEOAS link.
	ReadManagementSubgroup *HateoasLink `json:"read-management-subgroup"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

MssqlHostLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlHostListEmbedded

type MssqlHostListEmbedded struct {
	// TODO: Add struct field description
	Items []*MssqlHost `json:"items"`
}

MssqlHostListEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlHostListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateMssqlHostConnections *HateoasLink `json:"create-mssql-host-connections"`
}

MssqlHostListLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlInstance

type MssqlInstance struct {
	// Embedded responses related to the resource.
	Embedded *MssqlInstanceEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlInstanceLinks `json:"_links"`
	// The Clumio-assigned ID of the management group to which the host belongs.
	GroupId *string `json:"group_id"`
	// The boolean value represents if availability group is present in the instance.
	HasAssociatedAvailabilityGroup *bool `json:"has_associated_availability_group"`
	// The user-provided endpoint of the host containing the given database.
	HostEndpoint *string `json:"host_endpoint"`
	// The Clumio-assigned ID of the host, containing the instance.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the Instance.
	Id *string `json:"id"`
	// The Microsoft SQL assigned name of the instance.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the instance.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Product Version of the instance.
	ProductVersion *string `json:"product_version"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The Microsoft SQL assigned server name of the instance.
	ServerName *string `json:"server_name"`
	// The status of the Instance, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the management subgroup to which the host belongs.
	SubgroupId *string `json:"subgroup_id"`
}

MssqlInstance represents a custom type struct

type MssqlInstanceEmbedded

type MssqlInstanceEmbedded struct {
	// TODO: Add struct field description
	GetMssqlInstanceStats interface{} `json:"get-mssql-instance-stats"`
	// Embeds details about the management group if requested using the `embed` query.
	ReadManagementGroup interface{} `json:"read-management-group"`
	// Embeds details about the management subgroup if requested using the `embed` query.
	ReadManagementSubgroup interface{} `json:"read-management-subgroup"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

MssqlInstanceEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlInstanceLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	GetMssqlInstanceStats *HateoasLink `json:"get-mssql-instance-stats"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A resource-specific HATEOAS link.
	ReadManagementGroup *HateoasLink `json:"read-management-group"`
	// A resource-specific HATEOAS link.
	ReadManagementSubgroup *HateoasLink `json:"read-management-subgroup"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

MssqlInstanceLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlInstanceListEmbedded

type MssqlInstanceListEmbedded struct {
	// TODO: Add struct field description
	Items []*MssqlInstance `json:"items"`
}

MssqlInstanceListEmbedded represents a custom type struct. Embedded responses related to the resource.

type MssqlInstanceListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

MssqlInstanceListLinks represents a custom type struct. URLs to pages related to the resource.

type MssqlPITROptions

type MssqlPITROptions struct {
	// The Clumio-assigned ID of the MSSQL database to be restored.
	// Use the [GET /datasources/mssql/databases](#operation/list-mssql-databases)
	// endpoint to fetch valid values.
	DatabaseId *string `json:"database_id"`
	// The point in time to be restored in RFC-3339 format.
	Timestamp *string `json:"timestamp"`
}

MssqlPITROptions represents a custom type struct. A database and a point-in-time to be restored. Only one of `backup` or `pitr` should be specified.

type MssqlRestoreFromBackupOptions

type MssqlRestoreFromBackupOptions struct {
	// The Clumio-assigned ID of the backup to be restored.
	// Use the [GET /backups/mssql/databases](#operation/list-backup-mssql-databases)
	// endpoint to fetch valid values.
	BackupId *string `json:"backup_id"`
}

MssqlRestoreFromBackupOptions represents a custom type struct. The MSSQL database backup to be restored. Only one of `backup` or `pitr` should be specified.

type MssqlRestoreSource

type MssqlRestoreSource struct {
	// The MSSQL database backup to be restored. Only one of `backup` or `pitr`
	// should be specified.
	Backup *MssqlRestoreFromBackupOptions `json:"backup"`
	// A database and a point-in-time to be restored. Only one of `backup` or
	// `pitr` should be specified.
	Pitr *MssqlPITROptions `json:"pitr"`
}

MssqlRestoreSource represents a custom type struct. The MSSQL database backup to be restored. Only one of `backup` or `pitr` should be set.

type MssqlRestoreTarget

type MssqlRestoreTarget struct {
	// The target location within the instance to restore data files. For example,
	// `C:\\Programe Files\clumio\restored-data-files\`. If this field is empty, we
	// will restore data files into the same location as the source database.
	DataFilesPath *string `json:"data_files_path"`
	// The user-assigned name of the database.
	DatabaseName *string `json:"database_name"`
	// The Clumio-assigned ID of the instance to restore the database into.
	// Use the [GET /datasources/mssql/instances](#operation/list-mssql-instances) to fetch valid values.
	InstanceId *string `json:"instance_id"`
	// The target location within the instance to restore log files. For example,
	// `C:\\Programe Files\clumio\restored-log-files\`. If this field is empty, we
	// will restore log files into the same location as the source database.
	LogFilesPath *string `json:"log_files_path"`
}

MssqlRestoreTarget represents a custom type struct. The configuration of the MSSQL database to which the data has to be restored.

type OUGroupingCriteria

type OUGroupingCriteria struct {
	// The entity type used to group organizational units for AWS resources.
	Aws *AwsDsGroupingCriteria `json:"aws"`
	// The entity type used to group organizational units for Microsoft 365 resources.
	Microsoft365 *M365GroupingCriteria `json:"microsoft365"`
	// The entity type used to group organizational units for VMware resources.
	Vmware *VMwareDsGroupingCriteria `json:"vmware"`
}

OUGroupingCriteria represents a custom type struct. The grouping criteria for each datasource type. These can only be edited for datasource types which do not have any organizational units configured.

type ObjectFilter added in v0.1.2

type ObjectFilter struct {
	// Whether to back up only the latest object version.
	LatestVersionOnly *bool `json:"latest_version_only"`
	// PrefixFilter
	PrefixFilters []*PrefixFilter `json:"prefix_filters"`
	// Storage class to include in the backup. If not specified, then all objects across all storage
	// classes will be backed up. Valid values are: `S3 Standard`, `S3 Standard-IA`,
	// `S3 Intelligent-Tiering`, `S3 One Zone-IA`, `S3 Glacier` and `S3 Glacier Deep Archive`.
	StorageClasses []*string `json:"storage_classes"`
}

ObjectFilter represents a custom type struct. ObjectFilter defines which objects will be backed up.

type OnDemandMssqlBackupResponse

type OnDemandMssqlBackupResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
}

OnDemandMssqlBackupResponse represents a custom type struct for Success

type OnDemandSetting added in v0.2.8

type OnDemandSetting struct {
	// Additional operation-specific policy settings. For operation types which do not support additional settings, this field is `null`.
	AdvancedSettings *PolicyAdvancedSettings `json:"advanced_settings"`
	// Specifies the destination vault for AWS backups.
	BackupAwsRegion *string `json:"backup_aws_region"`
	// The retention time for this SLA. For example, to retain the backup for 1 month, set `unit="months"` and `value=1`.
	RetentionDuration *RetentionBackupSLAParam `json:"retention_duration"`
}

OnDemandSetting represents a custom type struct. Settings for requesting on-demand backup directly

type OrganizationalUnitLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeleteOrganizationalUnit *HateoasLink `json:"delete-organizational-unit"`
	// A resource-specific HATEOAS link.
	PatchOrganizationalUnit *HateoasLink `json:"patch-organizational-unit"`
	// A resource-specific HATEOAS link.
	ReadTask *HateoasLink `json:"read-task"`
}

OrganizationalUnitLinks represents a custom type struct. URLs to pages related to the resource.

type OrganizationalUnitListEmbedded

type OrganizationalUnitListEmbedded struct {
	// OrganizationalUnitWithETag to support etag string to be calculated
	Items []*OrganizationalUnitWithETag `json:"items"`
}

OrganizationalUnitListEmbedded represents a custom type struct. Embedded responses related to the resource.

type OrganizationalUnitListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

OrganizationalUnitListLinks represents a custom type struct. URLs to pages related to the resource.

type OrganizationalUnitParentEntity

type OrganizationalUnitParentEntity struct {
	// The Clumio assigned ID of the entity.
	Id *string `json:"id"`
	// The entity type.
	ClumioType *string `json:"type"`
}

OrganizationalUnitParentEntity represents a custom type struct. The parent object of the primary entity associated with the organizational unit. For example, "vmware_vcenter" is the parent entity of primary entity "vmware_vm_folder". The parent object is necessary for VMware entities and can be omitted for other data sources.

type OrganizationalUnitPrimaryEntity

type OrganizationalUnitPrimaryEntity struct {
	// The Clumio assigned ID of the entity.
	Id *string `json:"id"`
	// The entity type.
	ClumioType *string `json:"type"`
}

OrganizationalUnitPrimaryEntity represents a custom type struct. The primary object associated with the organizational unit. Examples of primary entities include "aws_environment" and "vmware_vm".

type OrganizationalUnitWithETag

type OrganizationalUnitWithETag struct {
	// Embedded responses related to the resource.
	Embedded *EntityGroupEmbedded `json:"_embedded"`
	// ETag value
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *OrganizationalUnitLinks `json:"_links"`
	// Number of immediate children of the organizational unit.
	ChildrenCount *int64 `json:"children_count"`
	// Datasource types configured in this organizational unit. Possible values include `aws`, `microsoft365`, `vmware`, or `mssql`.
	ConfiguredDatasourceTypes []*string `json:"configured_datasource_types"`
	// List of all recursive descendant organizational units of this OU.
	DescendantIds []*string `json:"descendant_ids"`
	// A description of the organizational unit.
	Description *string `json:"description"`
	// The Clumio assigned ID of the organizational unit.
	Id *string `json:"id"`
	// Unique name assigned to the organizational unit.
	Name *string `json:"name"`
	// The Clumio assigned ID of the parent organizational unit.
	// The parent organizational unit contains the entities in this organizational unit and can update this organizational unit.
	// If this organizational unit is the global organizational unit, then this field has a value of `null`.
	ParentId *string `json:"parent_id"`
	// Number of users to whom this organizational unit or any of its descendants have been assigned.
	UserCount *int64 `json:"user_count"`
	// Users IDs to whom the organizational unit has been assigned.
	// This attribute will be available when reading a single OU and not when listing OUs.
	Users []*string `json:"users"`
}

OrganizationalUnitWithETag represents a custom type struct. OrganizationalUnitWithETag to support etag string to be calculated

type PatchGeneralSettingsResponseV2

type PatchGeneralSettingsResponseV2 struct {
	// URLs to pages related to the resource.
	Links *GeneralSettingsLinks `json:"_links"`
	// The length of time before a user is logged out of the Clumio system due to inactivity. Measured in seconds.
	// The valid range is between `600` seconds (10 minutes) and `3600` seconds (60 minutes).
	// If not configured, the value defaults to `900` seconds (15 minutes).
	AutoLogoutDuration *int64 `json:"auto_logout_duration"`
	// The designated range of IP addresses that are allowed to access the Clumio REST API.
	// API requests that originate from outside this list will be blocked.
	// The IP address of the server from which this request is being made must be in this list; otherwise, the request will fail.
	// Set the parameter to individual IP addresses and/or a range of IP addresses in CIDR notation.
	// For example, `["193.168.1.0/24", "193.172.1.1"]`.
	// If not configured, the value defaults to ["0.0.0.0/0"] meaning all addresses will be allowed.
	IpAllowlist []*string `json:"ip_allowlist"`
	// The grouping criteria for each datasource type.
	// These can only be edited for datasource types which do not have any
	// organizational units configured.
	OrganizationalUnitDataGroups *OUGroupingCriteria `json:"organizational_unit_data_groups"`
	// The length of time a user password is valid before it must be changed. Measured in seconds.
	// The valid range is between `2592000` seconds (30 days) and `15552000` seconds (180 days).
	// If not configured, the value defaults to `7776000` seconds (90 days).
	PasswordExpirationDuration *int64 `json:"password_expiration_duration"`
}

PatchGeneralSettingsResponseV2 represents a custom type struct for Success

type PatchOrganizationalUnitResponse

type PatchOrganizationalUnitResponse struct {
	// Embedded responses related to the resource.
	Embedded *EntityGroupEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *OrganizationalUnitLinks `json:"_links"`
	// Number of immediate children of the organizational unit.
	ChildrenCount *int64 `json:"children_count"`
	// Datasource types configured in this organizational unit. Possible values include `aws`, `microsoft365`, `vmware`, or `mssql`.
	ConfiguredDatasourceTypes []*string `json:"configured_datasource_types"`
	// List of all recursive descendant organizational units of this OU.
	DescendantIds []*string `json:"descendant_ids"`
	// A description of the organizational unit.
	Description *string `json:"description"`
	// The Clumio assigned ID of the organizational unit.
	Id *string `json:"id"`
	// Unique name assigned to the organizational unit.
	Name *string `json:"name"`
	// The Clumio assigned ID of the parent organizational unit.
	// The parent organizational unit contains the entities in this organizational unit and can update this organizational unit.
	// If this organizational unit is the global organizational unit, then this field has a value of `null`.
	ParentId *string `json:"parent_id"`
	// Number of users to whom this organizational unit or any of its descendants have been assigned.
	UserCount *int64 `json:"user_count"`
	// Users IDs to whom the organizational unit has been assigned.
	// This attribute will be available when reading a single OU and not when listing OUs.
	Users []*string `json:"users"`
}

PatchOrganizationalUnitResponse represents a custom type struct. Accepted

type PatchOrganizationalUnitV1Request

type PatchOrganizationalUnitV1Request struct {
	// A description of the organizational unit.
	Description *string `json:"description"`
	// Updates to the entities in the organizational unit.
	Entities *UpdateEntities `json:"entities"`
	// Unique name assigned to the organizational unit.
	Name *string `json:"name"`
	// Updates to the user assignments.
	Users *UpdateUserAssignments `json:"users"`
}

PatchOrganizationalUnitV1Request represents a custom type struct

type PermissionModel

type PermissionModel struct {
	// Description of the permission.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the permission.
	Id *string `json:"id"`
	// Name of the permission.
	// The following table lists the supported permissions for a role:
	//
	// +----------------------------------------------------+-------------------------+
	// |                  Permission Name                   | Full/Partial Applicable |
	// +====================================================+=========================+
	// | Policy Management                                  | Yes                     |
	// +----------------------------------------------------+-------------------------+
	// | Data Source Management                             | Yes                     |
	// +----------------------------------------------------+-------------------------+
	// | Perform Backup (Scheduled or On-demand)            | Yes                     |
	// +----------------------------------------------------+-------------------------+
	// | Regular Restore                                    | No                      |
	// +----------------------------------------------------+-------------------------+
	// | Redirected Granular Restore (things like GRR &     | Yes                     |
	// | content download)                                  |                         |
	// +----------------------------------------------------+-------------------------+
	// | Dashboards & Reports                               | Yes                     |
	// +----------------------------------------------------+-------------------------+
	// | Some Admin Functions (User mgmt, SSO/MFA, IP       | No                      |
	// | Allow, Password expiry, OU, KMS)                   |                         |
	// +----------------------------------------------------+-------------------------+
	// | Other Admin Functions (API Tokens, Tasks, Alerts   | Yes                     |
	// | and Audit Logs)                                    |                         |
	// +----------------------------------------------------+-------------------------+
	//
	Name *string `json:"name"`
}

PermissionModel represents a custom type struct

type Policy

type Policy struct {
	// If the `embed` query parameter is set, displays the responses of the related resource,
	// as defined by the embeddable link specified.
	Embedded *PolicyEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *PolicyLinks `json:"_links"`
	// The status of the policy.
	// Refer to the Policy Activation Status table for a complete list of policy statuses.
	ActivationStatus *string `json:"activation_status"`
	// The Clumio-assigned IDs of the organizational units to whom the policy has been assigned.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// The created time of the policy in unix time.
	CreatedTime *int64 `json:"created_time"`
	// The Clumio-assigned ID of the policy.
	Id *string `json:"id"`
	// The following table describes the possible lock statuses of a policy.
	//
	// +----------+-------------------------------------------------------------------+
	// |  Status  |                            Description                            |
	// +==========+===================================================================+
	// | unlocked | Policies are unlocked until an update or deletion task is queued. |
	// +----------+-------------------------------------------------------------------+
	// | updating | During a policy edit, concurrent edits or deletion requests will  |
	// |          | be rejected.                                                      |
	// +----------+-------------------------------------------------------------------+
	// | deleting | During policy deletion, concurrent edits or deletion requests     |
	// |          | will be rejected.                                                 |
	// +----------+-------------------------------------------------------------------+
	//
	LockStatus *string `json:"lock_status"`
	// The user-provided name of the policy.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Operations []*PolicyOperation `json:"operations"`
	// The Clumio-assigned ID of the organizational unit associated with the policy.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The timezone for the policy.
	Timezone *string `json:"timezone"`
	// The updated time of the policy in unix time.
	UpdatedTime *int64 `json:"updated_time"`
}

Policy represents a custom type struct

type PolicyAdvancedSettings added in v0.2.2

type PolicyAdvancedSettings struct {
	// Backup tier to store the backup in. Valid values are: “ for standard, `lite`
	AwsEbsVolumeBackup *EBSBackupAdvancedSetting `json:"aws_ebs_volume_backup"`
	// Backup tier to store the backup in. Valid values are: “ for standard, `lite`
	AwsEc2InstanceBackup *EC2BackupAdvancedSetting `json:"aws_ec2_instance_backup"`
	// Additional policy configuration settings for the `mssql_database_backup` operation. If this operation is not of type `mssql_database_backup`, then this field is omitted from the response.
	Ec2MssqlDatabaseBackup *MSSQLDatabaseBackupAdvancedSetting `json:"ec2_mssql_database_backup"`
	// Additional policy configuration settings for the `mssql_log_backup` operation. If this operation is not of type `mssql_log_backup`, then this field is omitted from the response.
	Ec2MssqlLogBackup *MSSQLLogBackupAdvancedSetting `json:"ec2_mssql_log_backup"`
	// Additional policy configuration settings for the `mssql_database_backup` operation. If this operation is not of type `mssql_database_backup`, then this field is omitted from the response.
	MssqlDatabaseBackup *MSSQLDatabaseBackupAdvancedSetting `json:"mssql_database_backup"`
	// Additional policy configuration settings for the `mssql_log_backup` operation. If this operation is not of type `mssql_log_backup`, then this field is omitted from the response.
	MssqlLogBackup *MSSQLLogBackupAdvancedSetting `json:"mssql_log_backup"`
	// Additional policy configuration settings for the `protection_group_backup` operation. If this operation is not of type `protection_group_backup`, then this field is omitted from the response.
	ProtectionGroupBackup *ProtectionGroupBackupAdvancedSetting `json:"protection_group_backup"`
}

PolicyAdvancedSettings represents a custom type struct. Additional operation-specific policy settings. For operation types which do not support additional settings, this field is `null`.

type PolicyEmbedded

type PolicyEmbedded struct {
	// Embeds the EBS compliance statistics into the response.
	ReadPolicyAwsEbsVolumesComplianceStats interface{} `json:"read-policy-aws-ebs-volumes-compliance-stats"`
	// Embeds the VM compliance statisticss into the response.
	ReadPolicyVmwareVmsComplianceStats interface{} `json:"read-policy-vmware-vms-compliance-stats"`
}

PolicyEmbedded represents a custom type struct. If the `embed` query parameter is set, displays the responses of the related resource, as defined by the embeddable link specified.

type PolicyLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeletePolicyDefinition *HateoasLink `json:"delete-policy-definition"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A resource-specific HATEOAS link.
	ReadPolicyAwsEbsVolumesComplianceStats *HateoasLink `json:"read-policy-aws-ebs-volumes-compliance-stats"`
	// A resource-specific HATEOAS link.
	ReadPolicyVmwareVmsComplianceStats *HateoasLink `json:"read-policy-vmware-vms-compliance-stats"`
	// A resource-specific HATEOAS link.
	UpdatePolicyDefinition *HateoasLink `json:"update-policy-definition"`
}

PolicyLinks represents a custom type struct. URLs to pages related to the resource.

type PolicyListEmbedded

type PolicyListEmbedded struct {
	// TODO: Add struct field description
	Items []*Policy `json:"items"`
}

PolicyListEmbedded represents a custom type struct. An array of embedded resources related to this resource.

type PolicyListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreatePolicyDefinition *HateoasLink `json:"create-policy-definition"`
}

PolicyListLinks represents a custom type struct. URLs to pages related to the resource.

type PolicyOperation

type PolicyOperation struct {
	// Determines whether the protection policy should take action now or during the specified backup window.
	// If set to `immediate`, Clumio starts the backup process right away. If set to `window`, Clumio starts the backup process when the backup window (`backup_window`) opens.
	// If set to `window` and `operation in ("aws_rds_resource_aws_snapshot", "mssql_log_backup", "ec2_mssql_log_backup")`,
	// the backup window will not be determined by Clumio's backup window.
	ActionSetting *string `json:"action_setting"`
	// Additional operation-specific policy settings. For operation types which do not support additional settings, this field is `null`.
	AdvancedSettings *PolicyAdvancedSettings `json:"advanced_settings"`
	// The start and end times for the customized backup window.
	BackupWindow *BackupWindow `json:"backup_window"`
	// The start and end times for the customized backup window.
	BackupWindowTz *BackupWindow `json:"backup_window_tz"`
	// The next start time of this operation in unix time.
	NextStartTime *int64 `json:"next_start_time"`
	// The previous start time of this operation in unix time.
	PreviousStartTime *int64 `json:"previous_start_time"`
	// backup_sla captures the SLA parameters
	// backup_sla captures the SLA parameters
	Slas []*BackupSLA `json:"slas"`
	// The operation to be performed for this SLA set. Each SLA set corresponds to one and only one operation.
	// Refer to the Policy Operation table for a complete list of policy operations.
	ClumioType *string `json:"type"`
}

PolicyOperation represents a custom type struct

type PostProcessAwsConnectionV1Request

type PostProcessAwsConnectionV1Request struct {
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// ClumioEventPubId is the Clumio Event Pub SNS topic ID.
	ClumioEventPubId *string `json:"clumio_event_pub_id"`
	// Configuration represents the AWS connection configuration in json string format
	Configuration *string `json:"configuration"`
	// Properties is a key value map meant to be used for passing additional information
	// like resource IDs/ARNs.
	Properties map[string]*string `json:"properties"`
	// RequestType indicates whether this is a Create, Update or Delete request
	RequestType *string `json:"request_type"`
	// RoleArn is the ARN of the ClumioIAMRole created in the customer account
	RoleArn *string `json:"role_arn"`
	// Role External Id is the unique string passed while creating the AWS resources .
	RoleExternalId *string `json:"role_external_id"`
	// The 36-character Clumio AWS integration ID token used to identify the
	// installation of the CloudFormation/Terraform template on the account.
	Token *string `json:"token"`
}

PostProcessAwsConnectionV1Request represents a custom type struct. The body of the request.

type PostProcessKmsV1Request added in v0.2.7

type PostProcessKmsV1Request struct {
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// Whether the CMK was created or an existing CMK was used.
	CreatedMultiRegionCmk *bool `json:"created_multi_region_cmk"`
	// The multi-region CMK Key ID.
	MultiRegionCmkKeyId *string `json:"multi_region_cmk_key_id"`
	// Indicates whether this is a Create, Update or Delete request.
	RequestType *string `json:"request_type"`
	// The ARN of the role.
	RoleArn *string `json:"role_arn"`
	// The external ID to use with the role.
	RoleExternalId *string `json:"role_external_id"`
	// The ID of the role.
	RoleId *string `json:"role_id"`
	// The 36-character Clumio AWS integration ID token used to identify the
	// installation of the CloudFormation/Terraform template on the account.
	Token *string `json:"token"`
	// The cloudformation/terraform template version used.
	Version *uint64 `json:"version"`
}

PostProcessKmsV1Request represents a custom type struct. The body of the request.

type PrefixFilter added in v0.1.2

type PrefixFilter struct {
	// List of subprefixes to exclude from the prefix.
	ExcludedSubPrefixes []*string `json:"excluded_sub_prefixes"`
	// Prefix to include.
	Prefix *string `json:"prefix"`
}

PrefixFilter represents a custom type struct. PrefixFilter

type ProtectConfig

type ProtectConfig struct {
	// The asset types supported on the current version of the feature
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// TODO: Add struct field description
	Ebs *EbsAssetInfo `json:"ebs"`
	// The current version of the feature.
	InstalledTemplateVersion *string `json:"installed_template_version"`
	// TODO: Add struct field description
	Rds *RdsAssetInfo `json:"rds"`
}

ProtectConfig represents a custom type struct. The configuration of the Clumio Cloud Protect product for this connection. If this connection is not configured for Clumio Cloud Protect, then this field has a value of `null`.

type ProtectEntitiesHateoasLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

ProtectEntitiesHateoasLink represents a custom type struct. A HATEOAS link to protect the entities.

type ProtectTemplateConfig

type ProtectTemplateConfig struct {
	// The asset types for which the template is to be generated. Possible
	// asset types are ["EBS", "RDS", "DynamoDB", "EC2MSSQL"].
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
}

ProtectTemplateConfig represents a custom type struct

type ProtectTemplateInfo

type ProtectTemplateInfo struct {
	// The AWS asset types supported with the available version of the template.
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// The latest available URL for the template.
	AvailableTemplateUrl *string `json:"available_template_url"`
	// The latest available version for the template.
	AvailableTemplateVersion *string `json:"available_template_version"`
	// TODO: Add struct field description
	Ebs *EbsTemplateInfo `json:"ebs"`
	// TODO: Add struct field description
	Rds *RdsTemplateInfo `json:"rds"`
}

ProtectTemplateInfo represents a custom type struct. The latest available CloudFormation template for Clumio Cloud Protect.

type ProtectTemplateInfoV2

type ProtectTemplateInfoV2 struct {
	// The AWS asset types supported with the available version of the template.
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// The latest available version for the template.
	AvailableTemplateVersion *string `json:"available_template_version"`
	// TODO: Add struct field description
	Ebs *EbsTemplateInfo `json:"ebs"`
	// TODO: Add struct field description
	Rds *RdsTemplateInfo `json:"rds"`
}

ProtectTemplateInfoV2 represents a custom type struct

type ProtectedStatsDeprecated

type ProtectedStatsDeprecated struct {
	// ComplianceStatsDeprecated denotes compliance metrics for all entities associated with a given type
	Protected *ComplianceStatsDeprecated `json:"protected"`
	// Unprotected count.
	Unprotected *uint32 `json:"unprotected"`
}

ProtectedStatsDeprecated represents a custom type struct. ProtectedStatsDeprecated contains the compliance stats for policies which are protected along with the unprotected policies count

type ProtectionComplianceStatsWithSeeding added in v0.1.2

type ProtectionComplianceStatsWithSeeding struct {
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ProtectionComplianceStatsWithSeeding represents a custom type struct. The compliance statistics of workloads associated with this entity.

type ProtectionGroup added in v0.1.2

type ProtectionGroup struct {
	// Embedded responses related to the resource.
	Embedded *ProtectionGroupEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupLinks `json:"_links"`
	// Number of buckets
	BucketCount *int64 `json:"bucket_count"`
	// The following table describes the possible conditions for a bucket to be
	// automatically added to a protection group.
	//
	// +---------+----------------+---------------------------------------------------+
	// |  Field  | Rule Condition |                    Description                    |
	// +=========+================+===================================================+
	// | aws_tag | $eq            | Denotes the AWS tag(s) to conditionalize on       |
	// |         |                |                                                   |
	// |         |                | {"aws_tag":{"$eq":{"key":"Environment",           |
	// |         |                | "value":"Prod"}}}                                 |
	// |         |                |                                                   |
	// |         |                |                                                   |
	// +---------+----------------+---------------------------------------------------+
	//
	BucketRule *string `json:"bucket_rule"`
	// The compliance statistics of workloads associated with this entity.
	ComplianceStats *ProtectionComplianceStatsWithSeeding `json:"compliance_stats"`
	// The compliance status of the protected protection group. Possible values include
	// "compliant" and "noncompliant". If the table is not protected, then this field has
	// a value of `null`.
	ComplianceStatus *string `json:"compliance_status"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The user-assigned description of the protection group.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the protection group.
	Id *string `json:"id"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// Modified time of the protection group in RFC-3339 format.
	ModifiedTimestamp *string `json:"modified_timestamp"`
	// The user-assigned name of the protection group.
	Name *string `json:"name"`
	// ObjectFilter
	// defines which objects will be backed up.
	ObjectFilter *ObjectFilter `json:"object_filter"`
	// The Clumio-assigned ID of the organizational unit associated with the Protection Group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfoWithRule `json:"protection_info"`
	// The protection status of the protection group. Possible values include "protected",
	// "unprotected", and "unsupported". If the protection group does not support backups, then
	// this field has a value of `unsupported`.
	ProtectionStatus *string `json:"protection_status"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
	// Version of the protection group. The version number is incremented every time
	// a change is made to the protection group.
	Version *int64 `json:"version"`
}

ProtectionGroup represents a custom type struct

type ProtectionGroupBackup added in v0.2.5

type ProtectionGroupBackup struct {
	// URLs to pages related to the resource.
	Links *ProtectionGroupBackupLinks `json:"_links"`
	// The number of objects in the protection group that were successfully backed up.
	BackedUpObjectCount *int64 `json:"backed_up_object_count"`
	// The total size in bytes of objects in the protection group that were
	// successfully backed up.
	BackedUpSizeBytes *int64 `json:"backed_up_size_bytes"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The number of objects in the protection group that failed to be backed up.
	FailedObjectCount *int64 `json:"failed_object_count"`
	// The total size in bytes of objects in the protection group that failed
	// to be backed up.
	FailedSizeBytes *int64 `json:"failed_size_bytes"`
	// The Clumio-assigned ID of the protection group backup.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the protection group.
	ProtectionGroupId *string `json:"protection_group_id"`
	// The user-assigned name of the protection group.
	ProtectionGroupName *string `json:"protection_group_name"`
	// The version of the protection group at the time the backup was taken.
	ProtectionGroupVersion *int64 `json:"protection_group_version"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The type of backup. Possible values include `protection_group_backup`.
	ClumioType *string `json:"type"`
}

ProtectionGroupBackup represents a custom type struct

type ProtectionGroupBackupAdvancedSetting added in v0.2.2

type ProtectionGroupBackupAdvancedSetting struct {
	// Backup tier to store the backup in. Valid values are: `cold`, `frozen`
	BackupTier *string `json:"backup_tier"`
}

ProtectionGroupBackupAdvancedSetting represents a custom type struct. Additional policy configuration settings for the `protection_group_backup` operation. If this operation is not of type `protection_group_backup`, then this field is omitted from the response.

type ProtectionGroupBackupLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupBackupLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupBackupListEmbedded added in v0.2.5

type ProtectionGroupBackupListEmbedded struct {
	// TODO: Add struct field description
	Items []*ProtectionGroupBackup `json:"items"`
}

ProtectionGroupBackupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ProtectionGroupBackupListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupBackupListLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupBucket added in v0.1.2

type ProtectionGroupBucket struct {
	// TODO: Add struct field description
	Embedded *ProtectionGroupBucketEmbedded `json:"_embedded"`
	// TODO: Add struct field description
	Links *ProtectionGroupBucketLinks `json:"_links"`
	// The AWS-assigned ID of the account associated with the DynamoDB table.
	AccountNativeId *string `json:"account_native_id"`
	// Whether this bucket was added to this protection group by the bucket rule
	AddedByBucketRule *bool `json:"added_by_bucket_rule"`
	// Whether this bucket was added to this protection group by the user
	AddedByUser *bool `json:"added_by_user"`
	// The AWS region associated with the DynamoDB table.
	AwsRegion *string `json:"aws_region"`
	// The Clumio-assigned ID of the bucket
	BucketId *string `json:"bucket_id"`
	// The name of the bucket
	BucketName *string `json:"bucket_name"`
	// The compliance status of the protected protection group. Possible values include
	// "compliant" and "noncompliant". If the table is not protected, then this field has
	// a value of `null`.
	ComplianceStatus *string `json:"compliance_status"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The Clumio-assigned ID of the AWS environment associated with the protection group.
	EnvironmentId *string `json:"environment_id"`
	// The Clumio-assigned ID of the protection group
	GroupId *string `json:"group_id"`
	// The name of the protection group
	GroupName *string `json:"group_name"`
	// The Clumio-assigned ID that represents the bucket within the protection group.
	Id *string `json:"id"`
	// Determines whether the protection group bucket has been deleted
	IsDeleted *bool `json:"is_deleted"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// The Clumio-assigned ID of the organizational unit associated with the protection group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfoWithRule `json:"protection_info"`
	// The protection status of the protection group. Possible values include "protected",
	// "unprotected", and "unsupported". If the protection group does not support backups, then
	// this field has a value of `unsupported`.
	ProtectionStatus *string `json:"protection_status"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
}

ProtectionGroupBucket represents a custom type struct

type ProtectionGroupBucketEmbedded added in v0.1.2

type ProtectionGroupBucketEmbedded struct {
	// This embed is for internal use only since an embed results in additional HTTP
	// calls. "embeds" can affect the performance of "list" API calls as an embed is
	// processed once per item in the result list.
	ReadOrganizationalUnit interface{} `json:"read-organizational-unit"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

ProtectionGroupBucketEmbedded represents a custom type struct

type ProtectionGroupBucketLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeleteBucketProtectionGroup *HateoasLink `json:"delete-bucket-protection-group"`
	// A resource-specific HATEOAS link.
	ReadOrganizationalUnit *HateoasLink `json:"read-organizational-unit"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
}

ProtectionGroupBucketLinks represents a custom type struct

type ProtectionGroupBucketListEmbedded added in v0.1.2

type ProtectionGroupBucketListEmbedded struct {
	// TODO: Add struct field description
	Items []*ProtectionGroupBucket `json:"items"`
}

ProtectionGroupBucketListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ProtectionGroupBucketListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupBucketListLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupEmbedded added in v0.1.2

type ProtectionGroupEmbedded struct {
	// This embed is for internal use only since an embed results in additional HTTP
	// calls. "embeds" can affect the performance of "list" API calls as an embed is
	// processed once per item in the result list.
	ReadOrganizationalUnit interface{} `json:"read-organizational-unit"`
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

ProtectionGroupEmbedded represents a custom type struct. Embedded responses related to the resource.

type ProtectionGroupLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	AddBucketProtectionGroup *HateoasLink `json:"add-bucket-protection-group"`
	// A resource-specific HATEOAS link.
	DeleteBucketProtectionGroup *HateoasLink `json:"delete-bucket-protection-group"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A resource-specific HATEOAS link.
	ReadOrganizationalUnit *HateoasLink `json:"read-organizational-unit"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
	// A resource-specific HATEOAS link.
	UpdateProtectionGroup *HateoasLink `json:"update-protection-group"`
}

ProtectionGroupLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupListEmbedded added in v0.1.2

type ProtectionGroupListEmbedded struct {
	// TODO: Add struct field description
	Items []*ProtectionGroup `json:"items"`
}

ProtectionGroupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ProtectionGroupListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupListLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupRestoreSource added in v0.2.5

type ProtectionGroupRestoreSource struct {
	// The Clumio-assigned ID of the protection group backup to be restored. Use the
	// [GET /backups/protection-groups](#operation/list-backup-protection-groups)
	// endpoint to fetch valid values.
	BackupId *string `json:"backup_id"`
	// Search for or restore only objects that pass the source object filter.
	ObjectFilters *SourceObjectFilters `json:"object_filters"`
	// A list of Clumio-assigned IDs of protection group S3 assets, representing the
	// buckets within the protection group to restore from. Use the
	// [GET /datasources/protection-groups/s3-assets](#operation/list-protection-group-s3-assets)
	// endpoint to fetch valid values.
	ProtectionGroupS3AssetIds []*string `json:"protection_group_s3_asset_ids"`
}

ProtectionGroupRestoreSource represents a custom type struct. The parameters for initiating a protection group restore from a backup.

type ProtectionGroupRestoreTarget added in v0.2.5

type ProtectionGroupRestoreTarget struct {
	// The Clumio-assigned ID of the bucket to which the backup must be restored.
	// Use the [GET /datasources/aws/s3-buckets](#operation/list-aws-s3-buckets) endpoint
	// to fetch valid values.
	BucketId *string `json:"bucket_id"`
	// The Clumio-assigned ID of the AWS environment to be used as the restore destination.
	// Use the [GET /datasources/aws/s3-buckets/{bucket_id}](#operation/read-aws-s3-bucket) endpoint
	// to fetch the environment ID for a bucket.
	EnvironmentId *string `json:"environment_id"`
	// If overwrite is set to true, we will overwrite an object if it exists. If it's set to false,
	// then we will fail the restore if an object already exists. The default value is false.
	Overwrite *bool `json:"overwrite"`
	// Prefix to restore the objects under. If more than one bucket is restored, the
	// bucket name will be appended to the prefix.
	Prefix *string `json:"prefix"`
	// Storage class for restored objects. Valid values are: `S3 Standard`, `S3 Standard-IA`,
	// `S3 Intelligent-Tiering` and `S3 One Zone-IA`.
	StorageClass *string `json:"storage_class"`
	// A tag created through AWS Console which can be applied to EBS volumes.
	Tags []*AwsTagCommonModel `json:"tags"`
}

ProtectionGroupRestoreTarget represents a custom type struct. The destination where the protection group will be restored.

type ProtectionGroupS3AssetBackup added in v0.2.5

type ProtectionGroupS3AssetBackup struct {
	// URLs to pages related to the resource.
	Links *ProtectionGroupS3AssetBackupLinks `json:"_links"`
	// The number of objects in the protection group S3 asset that were successfully backed up.
	BackedUpObjectCount *uint64 `json:"backed_up_object_count"`
	// The total size in bytes of objects in the protection group S3 asset that were
	// successfully backed up.
	BackedUpSizeBytes *uint64 `json:"backed_up_size_bytes"`
	// The Clumio-assigned ID of the bucket.
	BucketId *string `json:"bucket_id"`
	// The name of the bucket.
	BucketName *string `json:"bucket_name"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The number of objects in the protection group S3 asset that failed to be backed up.
	FailedObjectCount *uint64 `json:"failed_object_count"`
	// The total size in bytes of objects in the protection group S3 asset that failed
	// to be backed up.
	FailedSizeBytes *uint64 `json:"failed_size_bytes"`
	// The Clumio-assigned ID of the protection group S3 asset backup.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the protection group.
	ProtectionGroupId *string `json:"protection_group_id"`
	// The Clumio-assigned ID of the protection group S3 asset.
	ProtectionGroupS3AssetId *string `json:"protection_group_s3_asset_id"`
	// The version of the protection group at the time the backup was taken.
	ProtectionGroupVersion *int64 `json:"protection_group_version"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The type of backup. Possible values include `protection_group_s3_asset_backup`.
	ClumioType *string `json:"type"`
}

ProtectionGroupS3AssetBackup represents a custom type struct

type ProtectionGroupS3AssetBackupLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupS3AssetBackupLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupS3AssetBackupListEmbedded added in v0.2.5

type ProtectionGroupS3AssetBackupListEmbedded struct {
	// TODO: Add struct field description
	Items []*ProtectionGroupS3AssetBackup `json:"items"`
}

ProtectionGroupS3AssetBackupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ProtectionGroupS3AssetBackupListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupS3AssetBackupListLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionGroupS3AssetRestoreSource added in v0.2.5

type ProtectionGroupS3AssetRestoreSource struct {
	// The Clumio-assigned ID of the protection group S3 asset backup to be restored. Use the
	// [GET /backups/protection-groups/s3-assets](#operation/list-backup-protection-group-s3-assets)
	// endpoint to fetch valid values.
	BackupId *string `json:"backup_id"`
	// Search for or restore only objects that pass the source object filter.
	ObjectFilters *SourceObjectFilters `json:"object_filters"`
}

ProtectionGroupS3AssetRestoreSource represents a custom type struct. The parameters for initiating a protection group S3 asset restore from a backup.

type ProtectionGroupVersionLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ProtectionGroupVersionLinks represents a custom type struct. URLs to pages related to the resource.

type ProtectionInfo

type ProtectionInfo struct {
	// The ID of the entity from which protection was inherited.
	// If protection was not inherited, then this field has a value of `null`.
	InheritingEntityId *string `json:"inheriting_entity_id"`
	// The type of entity from which protection was inherited.
	// If protection was not inherited, then this field has a value of `null`.
	// Entities from which protection can be inherited include the following:
	//
	// +--------------------------------+---------------------------------+
	// |     Inheriting Entity Type     |             Details             |
	// +================================+=================================+
	// | aws_tag                        | AWS tag.                        |
	// +--------------------------------+---------------------------------+
	// | vmware_vm_folder               | VMware VM folder.               |
	// +--------------------------------+---------------------------------+
	// | vmware_datacenter              | VMware data center.             |
	// +--------------------------------+---------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.      |
	// +--------------------------------+---------------------------------+
	// | vmware_tag                     | VMware tag.                     |
	// +--------------------------------+---------------------------------+
	// | vmware_category                | VMware tag category.            |
	// +--------------------------------+---------------------------------+
	// | vmware_compute_resource        | VMware compute resource.        |
	// +--------------------------------+---------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder. |
	// +--------------------------------+---------------------------------+
	//
	InheritingEntityType *string `json:"inheriting_entity_type"`
	// A system-generated ID assigned to the policy protecting this resource.
	PolicyId *string `json:"policy_id"`
}

ProtectionInfo represents a custom type struct. The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.

type ProtectionInfoDeprecated

type ProtectionInfoDeprecated struct {
	// TODO: Add struct field description
	Inheritedfrom *InheritedFrom `json:"inheritedFrom"`
	// PolicyID for the policy.
	Policyid *string `json:"policyId"`
}

ProtectionInfoDeprecated represents a custom type struct

type ProtectionInfoWithRule

type ProtectionInfoWithRule struct {
	// The ID of the entity from which protection was inherited.
	// If protection was not inherited, then this field has a value of `null`.
	InheritingEntityId *string `json:"inheriting_entity_id"`
	// The type of entity from which protection was inherited.
	// If protection was not inherited, then this field has a value of `null`.
	// Entities from which protection can be inherited include the following:
	//
	// +--------------------------------+---------------------------------+
	// |     Inheriting Entity Type     |             Details             |
	// +================================+=================================+
	// | aws_tag                        | AWS tag.                        |
	// +--------------------------------+---------------------------------+
	// | vmware_vm_folder               | VMware VM folder.               |
	// +--------------------------------+---------------------------------+
	// | vmware_datacenter              | VMware data center.             |
	// +--------------------------------+---------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.      |
	// +--------------------------------+---------------------------------+
	// | vmware_tag                     | VMware tag.                     |
	// +--------------------------------+---------------------------------+
	// | vmware_category                | VMware tag category.            |
	// +--------------------------------+---------------------------------+
	// | vmware_compute_resource        | VMware compute resource.        |
	// +--------------------------------+---------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder. |
	// +--------------------------------+---------------------------------+
	//
	InheritingEntityType *string `json:"inheriting_entity_type"`
	// A system-generated ID assigned to the policy protecting this resource.
	PolicyId *string `json:"policy_id"`
}

ProtectionInfoWithRule represents a custom type struct. The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.

type RPOBackupSLAParam

type RPOBackupSLAParam struct {
	// The measurement unit of the SLA parameter. Values include `hours`, `days`, `months`, and `years`.
	Unit *string `json:"unit"`
	// The measurement value of the SLA parameter.
	Value *int64 `json:"value"`
}

RPOBackupSLAParam represents a custom type struct. The minimum frequency between backups for this SLA. Also known as the recovery point objective (RPO) interval. For example, to configure the minimum frequency between backups to be every 2 days, set `unit="days"` and `value=2`. To configure the SLA for on-demand backups, set `unit="on_demand"` and leave the `value` field empty.

type RdsAssetInfo

type RdsAssetInfo struct {
	// The current version of the feature.
	InstalledTemplateVersion *string `json:"installed_template_version"`
}

RdsAssetInfo represents a custom type struct

type RdsTemplateInfo

type RdsTemplateInfo struct {
	// The latest available feature version for the asset.
	AvailableTemplateVersion *string `json:"available_template_version"`
}

RdsTemplateInfo represents a custom type struct

type ReadAWSConnectionResponse

type ReadAWSConnectionResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSConnectionLinks `json:"_links"`
	// The alias given to the account on AWS.
	AccountName *string `json:"account_name"`
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// Clumio AWS AccountId
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// Clumio AWS Region
	ClumioAwsRegion *string `json:"clumio_aws_region"`
	// The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection.
	// If this connection is deprecated to use unconsolidated configuration, then this field has a
	// value of `null`.
	Config *ConsolidatedConfig `json:"config"`
	// The status of the connection. Possible values include "connecting",
	// "connected", and "unlinked".
	ConnectionStatus *string `json:"connection_status"`
	// The timestamp of when the connection was created.
	CreatedTimestamp *string `json:"created_timestamp"`
	// An optional, user-provided description for this connection.
	Description *string `json:"description"`
	// The configuration of the Clumio Discover product for this connection.
	// If this connection is not configured for Clumio Discover, then this field has a
	// value of `null`.
	Discover *DiscoverConfig `json:"discover"`
	// The Clumio-assigned ID of the connection.
	Id *string `json:"id"`
	// K8S Namespace
	Namespace *string `json:"namespace"`
	// The Clumio-assigned ID of the organizational unit associated with the
	// AWS environment. If this parameter is not provided, then the value
	// defaults to the first organizational unit assigned to the requesting
	// user. For more information about organizational units, refer to the
	// Organizational-Units documentation.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The configuration of the Clumio Cloud Protect product for this connection.
	// If this connection is not configured for Clumio Cloud Protect, then this field has a
	// value of `null`.
	Protect *ProtectConfig `json:"protect"`
	// The asset types enabled for protect. This is only populated if "protect"
	// is enabled. Valid values are any of ["EBS", "RDS", "DynamoDB", "EC2MSSQL", "S3"].
	// EBS and RDS are mandatory datasources. (Deprecated)
	ProtectAssetTypesEnabled []*string `json:"protect_asset_types_enabled"`
	// The services to be enabled for this configuration. Valid values are
	// ["discover"], ["discover", "protect"]. This is only set when the
	// registration is created, the enabled services are obtained directly from
	// the installed template after that. (Deprecated as all connections will have
	// both discover and protect enabled)
	ServicesEnabled []*string `json:"services_enabled"`
	// The Amazon Resource Name of the installed CloudFormation stack in this AWS account
	StackArn *string `json:"stack_arn"`
	// The name given to the installed CloudFormation stack on AWS.
	StackName *string `json:"stack_name"`
	// The 36-character Clumio AWS integration ID token used to identify the
	// installation of the CloudFormation template on the account. This value
	// will be pasted into the ClumioToken field when creating the
	// CloudFormation stack.
	Token *string `json:"token"`
}

ReadAWSConnectionResponse represents a custom type struct for Success

type ReadAWSEnvironmentResponse

type ReadAWSEnvironmentResponse struct {
	// Embedded responses related to the resource.
	Embedded *AWSEnvironmentEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSEnvironmentLinks `json:"_links"`
	// The name given to the account.
	AccountName *string `json:"account_name"`
	// The AWS-assigned ID of the account associated with the environment.
	AccountNativeId *string `json:"account_native_id"`
	// The valid AWS availability zones for the environment. For example, `us_west-2a`.
	AwsAz []*string `json:"aws_az"`
	// The AWS region associated with the environment. For example, `us-west-2`.
	AwsRegion *string `json:"aws_region"`
	// The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection.
	// If this connection is deprecated to use unconsolidated configuration, then this field has a
	// value of `null`.
	Config *ConsolidatedConfig `json:"config"`
	// The Clumio-assigned ID of the connection associated with the environment.
	ConnectionId *string `json:"connection_id"`
	// The status of the connection to the environment, which is mediated by a CloudFormation stack.
	ConnectionStatus *string `json:"connection_status"`
	// The user-provided account description.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the environment.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the organizational unit associated with the environment.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The AWS services enabled for this environment. Possible values include "ebs", "rds" and "dynamodb".
	ServicesEnabled []*string `json:"services_enabled"`
	// The Clumio CloudFormation template version used to deploy the CloudFormation stack.
	TemplateVersion *int64 `json:"template_version"`
}

ReadAWSEnvironmentResponse represents a custom type struct for Success

type ReadAWSTemplatesResponse

type ReadAWSTemplatesResponse struct {
	// The latest available CloudFormation template for Clumio Discover.
	Discover *DiscoverTemplateInfo `json:"discover"`
	// The latest available CloudFormation template for Clumio Cloud Protect.
	Protect *ProtectTemplateInfo `json:"protect"`
}

ReadAWSTemplatesResponse represents a custom type struct for Success

type ReadAWSTemplatesV2Response

type ReadAWSTemplatesV2Response struct {
	// TODO: Add struct field description
	Config *TemplateConfigurationV2 `json:"config"`
}

ReadAWSTemplatesV2Response represents a custom type struct for Success

type ReadAlertResponse

type ReadAlertResponse struct {
	// Embedded responses related to the resource.
	Embedded *AlertEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AlertLinks `json:"_links"`
	// The issue that generated the alert. Each cause belongs to an alert type.
	Cause *string `json:"cause"`
	// The timestamp of when the alert was cleared, either automatically by Clumio or manually by a Clumio user.
	// Represented in RFC-3339 format. If this alert has not been cleared, then this field has a value of `null`.
	ClearedTimestamp *string `json:"cleared_timestamp"`
	// The Clumio-assigned ID of the consolidated alert associated with this individual alert. Alerts are consolidated based on matching parent entity, alert type, and alert cause.
	ConsolidatedAlertId *string `json:"consolidated_alert_id"`
	// Additional information about the alert.
	Details *IndividualAlertDetails `json:"details"`
	// The Clumio-assigned ID of the individual alert.
	Id *string `json:"id"`
	// A record of user-provided information about the alert.
	Notes *string `json:"notes"`
	// The parent object of the primary entity associated with or affected by the alert. For example, "aws_environment" is the parent entity of primary entity "aws_ebs_volume".
	ParentEntity *AlertParentEntity `json:"parent_entity"`
	// The primary object associated with or affected by the alert. Examples of primary entities include "aws_connection", "aws_ebs_volume" and "vmware_vm".
	PrimaryEntity *AlertPrimaryEntity `json:"primary_entity"`
	// The number of times the alert has recurred for this primary entity.
	RaisedCount *uint64 `json:"raised_count"`
	// The timestamp of when the alert was raised. Represented in RFC-3339 format.
	RaisedTimestamp *string `json:"raised_timestamp"`
	// The alert severity level. Values include "error" and "warning".
	Severity *string `json:"severity"`
	// The individual alert status. An individual alert that is in "active" status is one that is still open and has yet to be addressed.
	// An individual alert that is in "cleared" status is one that has been cleared, either automatically by Clumio or manually by a Clumio user.
	Status *string `json:"status"`
	// TODO: Add struct field description
	Tags []*RestEntity `json:"tags"`
	// The general alert category. Some alert types may be associated with multiple causes.
	// Refer to the Alert Type table for a complete list of alert types.
	ClumioType *string `json:"type"`
	// The timestamp of when the alert was last updated. Represented in RFC-3339 format.
	// The alert is updated whenever there is a new occurrence of the same alert within the same entity.
	UpdatedTimestamp *string `json:"updated_timestamp"`
}

ReadAlertResponse represents a custom type struct for Success

type ReadAutoUserProvisioningRuleResponse added in v0.3.0

type ReadAutoUserProvisioningRuleResponse struct {
	// Embedded responses related to the resource.
	Embedded *AutoUserProvisioningRuleEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningRuleLinks `json:"_links"`
	// The following table describes the possible conditions for a rule.
	//
	// +--------------------------+-------------------------+-------------------------+
	// |     Group Selection      |     Rule Condition      |       Description       |
	// +==========================+=========================+=========================+
	// | This group               |                         | User must belong to the |
	// |                          |                         | specified group.        |
	// |                          | {"user.groups":{"$eq":" |                         |
	// |                          | Admin"}}                |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ANY of these groups      |                         | User must belong to at  |
	// |                          |                         | least one of the        |
	// |                          | {"user.groups":{"$in":[ | specified groups.       |
	// |                          | "Admin", "Eng",         |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ALL of these groups      |                         | User must belong to all |
	// |                          |                         | the specified groups.   |
	// |                          | {"user.groups":{"$all": |                         |
	// |                          | ["Admin", "Eng",        |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS this      |                         | User's group must       |
	// | keyword                  |                         | contain the specified   |
	// |                          | {"user.groups":{"$conta | keyword.                |
	// |                          | ins":{"$in":["Admin"]}} |                         |
	// |                          | }                       |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ANY of    |                         | User's group must       |
	// | these keywords           |                         | contain at least one of |
	// |                          | {"user.groups":{"$conta | the specified keywords. |
	// |                          | ins":{"$in":["Admin",   |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ALL of    |                         | User's group must       |
	// | these keywords           |                         | contain all the         |
	// |                          | {"user.groups":{"$conta | specified keywords.     |
	// |                          | ins":{"$all":["Admin",  |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	//
	Condition *string `json:"condition"`
	// Unique name assigned to the rule.
	Name *string `json:"name"`
	// Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.
	Provision *RuleProvision `json:"provision"`
	// The Clumio-assigned ID of the rule.
	RuleId *string `json:"rule_id"`
}

ReadAutoUserProvisioningRuleResponse represents a custom type struct for Success

type ReadAutoUserProvisioningSettingResponse added in v0.3.0

type ReadAutoUserProvisioningSettingResponse struct {
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningSettingLinks `json:"_links"`
	// Whether auto user provisioning is enabled or not.
	IsEnabled *bool `json:"is_enabled"`
}

ReadAutoUserProvisioningSettingResponse represents a custom type struct for Success

type ReadAwsTagResponse

type ReadAwsTagResponse struct {
	// Embedded responses related to the resource.
	Embedded *AwsTagEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AwsTagLinks `json:"_links"`
	// The Clumio-assigned ID of the AWS tag.
	Id *string `json:"id"`
	// The AWS-assigned tag key.
	Key *string `json:"key"`
	// The Clumio-assigned ID of the AWS key.
	KeyId *string `json:"key_id"`
	// The Clumio-assigned ID of the organizational unit associated with the tag.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of the EBS volume. Possible values include "protected" and "unprotected".
	ProtectionStatus *string `json:"protection_status"`
	// The AWS-assigned tag value.
	Value *string `json:"value"`
}

ReadAwsTagResponse represents a custom type struct for Success

type ReadBucketResponse added in v0.1.2

type ReadBucketResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *BucketLinks `json:"_links"`
	// The AWS-assigned ID of the account associated with the S3 bucket.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the S3 bucket.
	AwsRegion *string `json:"aws_region"`
	// The total size breakdown of S3 buckets in bytes per storage class. This parameter aggregates relevant fields from cloudwatch_metrics > size_bytes_per_storage_class
	BucketSizeBytesBreakdown *S3BucketsInventorySummaryBucketSizeBreakdown `json:"bucket_size_bytes_breakdown"`
	// The Cloudwatch metrics of the bucket.
	CloudwatchMetrics *S3CloudwatchMetrics `json:"cloudwatch_metrics"`
	// The timestamp of when the bucket was created. Represented in RFC-3339 format.
	CreationTimestamp *string `json:"creation_timestamp"`
	// The AWS encryption output of the bucket.
	EncryptionSetting *S3EncryptionOutput `json:"encryption_setting"`
	// The Clumio-assigned ID of the AWS environment associated with the S3 bucket.
	EnvironmentId *string `json:"environment_id"`
	// The EventBridge enablement state for the S3 bucket.
	EventBridgeEnabled *bool `json:"event_bridge_enabled"`
	// The Clumio-assigned ID of the bucket.
	Id *string `json:"id"`
	// The AWS-assigned name of the bucket.
	Name *string `json:"name"`
	// Number of objects in bucket.
	ObjectCount *int64 `json:"object_count"`
	// The Clumio-assigned ID of the organizational unit associated with the S3 bucket.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Protection group count reflects how many protection groups are linked to this
	// bucket.
	ProtectionGroupCount *int64 `json:"protection_group_count"`
	// The AWS replication output of the bucket.
	ReplicationSetting *S3ReplicationOutput `json:"replication_setting"`
	// Size of bucket in bytes.
	SizeBytes *int64 `json:"size_bytes"`
	// A tag created through AWS console which can be applied to EBS volumes.
	Tags []*AwsTagModel `json:"tags"`
	// The AWS versioning output of the bucket.
	VersioningSetting *S3VersioningOutput `json:"versioning_setting"`
}

ReadBucketResponse represents a custom type struct for Success

type ReadComputeResourceResponse

type ReadComputeResourceResponse struct {
	// Embedded responses related to the resource.
	Embedded *ComputeResourceEmbedded `json:"_embedded"`
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *ComputeResourceLinks `json:"_links"`
	// The compute resource folder in which the compute resource resides.
	ComputeResourceFolder *VMwareVCenterComputeResourceFolderModel `json:"compute_resource_folder"`
	// The data center associated with this compute resource.
	Datacenter *VMwareVCenterComputeResourceDatacenterModel `json:"datacenter"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the compute resource.
	Id *string `json:"id"`
	// Determines whether the compute resource is a cluster. If `true`, then the compute resource is a cluster.
	IsCluster *bool `json:"is_cluster"`
	// Determines whether the compute resource has Distributed Resource Scheduler (DRS) enabled. If this field and `"is_cluster":true`, then DRS is enabled in the compute resource cluster.
	IsDrsEnabled *bool `json:"is_drs_enabled"`
	// The VMware-assigned name of the compute resource.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the compute resource.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this compute resource. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
}

ReadComputeResourceResponse represents a custom type struct for Success

type ReadConsolidatedAlertResponse

type ReadConsolidatedAlertResponse struct {
	// URLs to pages related to the resource.
	Links *ConsolidatedAlertLinks `json:"_links"`
	// The number of currently active individual alerts associated with the consolidated alert.
	ActiveEntityCount *int64 `json:"active_entity_count"`
	// The issue that generated the alert. Each alert cause is associated with an alert type.
	Cause *string `json:"cause"`
	// The number of cleared individual alerts associated with the consolidated alert.
	ClearedEntityCount *int64 `json:"cleared_entity_count"`
	// The timestamp of when the consolidated alert was cleared, if ever. Represented in RFC-3339 format. If this alert has not been cleared, this field will have a value of `null`.
	// A consolidated alert goes into "cleared" status when all of its associated individual alerts are in "cleared" status or when a Clumio user manually clears it.
	ClearedTimestamp *string `json:"cleared_timestamp"`
	// Additional information about the consolidated alert.
	Details *ConsolidatedAlertDetails `json:"details"`
	// The Clumio-assigned ID of the consolidated alert.
	Id *string `json:"id"`
	// A record of user-provided information about the alert.
	Notes *string `json:"notes"`
	// The entity associated with or affected by the alert.
	ParentEntity *ConsolidatedAlertParentEntity `json:"parent_entity"`
	// The timestamp of when the consolidated alert was initially raised. Represented in RFC-3339 format.
	RaisedTimestamp *string `json:"raised_timestamp"`
	// The alert severity level. Values include "error" and "warning".
	Severity *string `json:"severity"`
	// The consolidated alert status. A consolidated alert is in "active" status if one or more of its associated individual alerts is in "active" status.
	// A consolidated alert goes into "cleared" status when all of its associated individual alerts are in "cleared" status or when a Clumio user manually clears it.
	Status *string `json:"status"`
	// The general alert category. An alert type may be associated with multiple alert causes. Examples of alert types include "tag_conflict" and "policy_violated".
	// Refer to the Alert Type table for a complete list of alert types.
	ClumioType *string `json:"type"`
	// The timestamp of when the consolidated alert was last updated. Represented in RFC-3339 format.
	// Raising a new individual alert will update its associated consolidated alert.
	UpdatedTimestamp *string `json:"updated_timestamp"`
}

ReadConsolidatedAlertResponse represents a custom type struct for Success

type ReadDatacenterResponse

type ReadDatacenterResponse struct {
	// Embedded responses related to the resource.
	Embedded *DatacenterEmbedded `json:"_embedded"`
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *DatacenterLinks `json:"_links"`
	// TODO: Add struct field description
	AncestorRefs []*AncestorRefModel `json:"ancestor_refs"`
	// The data center folder in which the data center resides.
	DatacenterFolder *VMwareDatacenterFolderIDModel `json:"datacenter_folder"`
	// Determines whether compute resources exist directly under the hidden root compute resource folder. If `true`, then compute resources exist directly under the root compute resource folder.
	HasComputeResources *bool `json:"has_compute_resources"`
	// Determines whether VMs exist directly under the hidden root VM folder. If `true`, then VMs exist directly under the root VM folder.
	HasVmFolders *bool `json:"has_vm_folders"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
	// The VMware-assigned name of this data center.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the datacenter.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this data center. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
	// The hidden root compute resource folder of the data center.
	RootComputeResourceFolder *VMwareRootComputeResourceFolderIDModel `json:"root_compute_resource_folder"`
	// The hidden root virtual machine folder of the data center.
	RootVmFolder *VMwareRootVMFolderIDModel `json:"root_vm_folder"`
}

ReadDatacenterResponse represents a custom type struct for Success

type ReadDirectoryResponse

type ReadDirectoryResponse struct {
	// TODO: Add struct field description
	Embedded *DirectoryBrowseEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *DirectoryBrowseLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page token used to get this response.
	Start *string `json:"start"`
}

ReadDirectoryResponse represents a custom type struct for Success

type ReadEBSBackupResponseV1

type ReadEBSBackupResponseV1 struct {
	// URLs to pages related to the resource.
	Links *EBSBackupLinksV1 `json:"_links"`
	// The AWS-assigned ID of the account associated with the backup.
	AccountNativeId *string `json:"account_native_id"`
	// The availability zone associated with the volume backup. For example, `us-west-2a`.
	AwsAz *string `json:"aws_az"`
	// The AWS region in which the volume backup resides. For example, `us-west-2`.
	AwsRegion *string `json:"aws_region"`
	// The reason that browsing is unavailable for the backup. Possible values include "file_limit_exceeded" and
	// "browsing_unavailable". If browse indexing is successful, then this field has a value of `null`.
	BrowsingFailedReason *string `json:"browsing_failed_reason"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The Clumio-assigned ID of the volume backup.
	Id *string `json:"id"`
	// Determines whether browsing is available for the backup. If `true`, then browsing is available for the backup.
	IsBrowsable *bool `json:"is_browsable"`
	// Determines whether the EBS volume backup is encrypted. If `true`, the volume backup is encrypted.
	IsEncrypted *bool `json:"is_encrypted"`
	// The AWS-assigned ID of the KMS key encrypting this EBS volume backup. If the volume is not encrypted, this field has a value of `null`.
	KmsKeyNativeId *string `json:"kms_key_native_id"`
	// The size of the volume backup. Measured in gigabytes (GB).
	Size *int64 `json:"size"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// A tag created through AWS Console which can be applied to EBS volumes.
	Tags []*AwsTagCommonModel `json:"tags"`
	// The volume type of the original EBS volume before backup. Possible values include `gp2`, `io1`, `st1`, `sc1`, `standard`.
	ClumioType *string `json:"type"`
	// The Clumio-assigned ID of the EBS volume associated with the volume backup.
	VolumeId *string `json:"volume_id"`
	// The AWS-assigned ID of the EBS volume associated with the volume backup.
	VolumeNativeId *string `json:"volume_native_id"`
}

ReadEBSBackupResponseV1 represents a custom type struct for Success

type ReadEbsTagComplianceStatsResponse

type ReadEbsTagComplianceStatsResponse struct {
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ReadEbsTagComplianceStatsResponse represents a custom type struct for Success

type ReadEbsVolumeResponse

type ReadEbsVolumeResponse struct {
	// Embedded responses related to the resource.
	Embedded *EbsVolumeEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *EbsVolumeLinks `json:"_links"`
	// The AWS-assigned ID of the account associated with the EBS volume.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS availability zone in which the EBS volume resides. For example,
	// `us-west-2a`.
	AwsAz *string `json:"aws_az"`
	// The AWS region associated with the EBS volume.
	AwsRegion *string `json:"aws_region"`
	// The compliance status of the protected EBS volume. Possible values include
	// "compliant" and "noncompliant". If the volume is not protected, then this field has
	// a value of `null`.
	ComplianceStatus *string `json:"compliance_status"`
	// The timestamp of when the volume was deleted. Represented in RFC-3339 format. If
	// this volume has not been deleted, then this field has a value of `null`.
	DeletionTimestamp *string `json:"deletion_timestamp"`
	// The Clumio-assigned ID of the policy directly assigned to the entity.
	DirectAssignmentPolicyId *string `json:"direct_assignment_policy_id"`
	// The Clumio-assigned ID of the AWS environment associated with the EBS volume.
	EnvironmentId *string `json:"environment_id"`
	// Determines whether the table has a direct assignment.
	HasDirectAssignment *bool `json:"has_direct_assignment"`
	// The Clumio-assigned ID of the EBS volume.
	Id *string `json:"id"`
	// Iops of the volume.
	Iops *int64 `json:"iops"`
	// Determines whether the EBS volume has been deleted. If `true`, the volume has been
	// deleted.
	IsDeleted *bool `json:"is_deleted"`
	// Determines whether the EBS volume is encrypted. If `true`, the volume is encrypted.
	IsEncrypted *bool `json:"is_encrypted"`
	// Determines whether the EBS volume is supported for backups.
	IsSupported *bool `json:"is_supported"`
	// The AWS-assigned ID of the KMS key encrypting the EBS volume. If the volume is
	// unencrypted, then this field has a value of `null`.
	KmsKeyNativeId *string `json:"kms_key_native_id"`
	// The timestamp of the most recent backup of the EBS volume. Represented in RFC-3339
	// format. If the volume has never been backed up, then this field has a value of
	// `null`.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// The timestamp of the most recent snapshot of the EBS volume taken as part of
	// Snapshot Manager. Represented in RFC-3339 format. If the volume has never been
	// snapshotted, then this field has a value of `null`.
	LastSnapshotTimestamp *string `json:"last_snapshot_timestamp"`
	// The AWS-assigned name of the EBS volume.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the EBS volume.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfoWithRule `json:"protection_info"`
	// The protection status of the EBS volume. Possible values include "protected",
	// "unprotected", and "unsupported". If the EBS volume does not support backups, then
	// this field has a value of `unsupported`. If the volume has been deleted, then this
	// field has a value of `null`.
	ProtectionStatus *string `json:"protection_status"`
	// The size of the EBS volume. Measured in bytes (B).
	Size *int64 `json:"size"`
	// A tag created through AWS console which can be applied to EBS volumes.
	Tags []*AwsTagModel `json:"tags"`
	// The type of EBS volume. Possible values include "gp2", "io1", "st1", "sc1", and
	// "standard".
	ClumioType *string `json:"type"`
	// The reason why protection is not available. If the volume is supported, then this
	// field has a value of `null`.
	UnsupportedReason *string `json:"unsupported_reason"`
	// The AWS-assigned ID of the EBS volume.
	VolumeNativeId *string `json:"volume_native_id"`
}

ReadEbsVolumeResponse represents a custom type struct for Success

type ReadFileSystemResponse

type ReadFileSystemResponse struct {
	// TODO: Add struct field description
	Links *HateoasCommonLinks `json:"_links"`
	// The amount of available memory on the filesystem in bytes. Does not include
	// reserved memory.
	Available *uint64 `json:"available"`
	// The filesystem UUID produced by the `lsblk` linux command. If this filesystem
	// was not given a UUID in the host environment, then this field has a value of
	// `null`.
	FilesystemNativeId *string `json:"filesystem_native_id"`
	// The Clumio-assigned ID of the filesystem.
	Id *string `json:"id"`
	// The reason why file indexing failed. If file indexing succeeded, then this field
	// has a value of `null`. Possible values include "unsupported" and "encrypted".
	IndexingFailedReason *string `json:"indexing_failed_reason"`
	// Determines whether the file system was encrypted.
	IsEncrypted *bool `json:"is_encrypted"`
	// Determines whether the file system has been indexed.
	// If `true`, file indexing completed successfully.
	IsIndexed *bool `json:"is_indexed"`
	// The location of this filesystem in the host environment. Only identifies mount
	// points that correspond to Windows drive letters. All other mount points are
	// identified by a '/'.
	MountPath *string `json:"mount_path"`
	// The number of files (including directories) indexed in the file system.
	NumFilesIndexed *int64 `json:"num_files_indexed"`
	// The total amount of memory available to the filesystem in bytes.
	Size *uint64 `json:"size"`
	// The type of the filesystem. This field is populated with values returned from
	// the lsblk command. Possible values include `ntfs`, `xfs`, and `ext3`.
	ClumioType *string `json:"type"`
	// The amount of memory used by the filesystem in bytes.
	Used *uint64 `json:"used"`
}

ReadFileSystemResponse represents a custom type struct for Success

type ReadFolderResponse

type ReadFolderResponse struct {
	// Embedded responses related to the resource.
	Embedded *FolderEmbedded `json:"_embedded"`
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *FolderLinks `json:"_links"`
	// The data center associated with this folder.
	Datacenter *VMwareVCenterFolderDatacenterModel `json:"datacenter"`
	// Count of all descendant folders inside this folder
	DescendantFolderCount *int64 `json:"descendant_folder_count"`
	// Determines whether the folder has direct child folders.
	HasChildFolders *bool `json:"has_child_folders"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
	// Determines whether the folder is a hidden root folder. If `true`, the folder is a hidden root folder.
	IsRoot *bool `json:"is_root"`
	// Determines whether the folder can be used as a restore destination. If `true`, the folder can be used as a restore destination, and backups can be restored to the folder.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of the folder.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the folder.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The parent folder under which this folder resides.
	ParentFolder *VMwareVCenterParentFolderModel `json:"parent_folder"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this folder. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
	// The folder type. Examples of folder types include "datacenter_folder" and "vm_folder". Refer to the Folder Type table for a complete list of folder types.
	ClumioType *string `json:"type"`
}

ReadFolderResponse represents a custom type struct for Success

type ReadGeneralSettingsResponseV2

type ReadGeneralSettingsResponseV2 struct {
	// URLs to pages related to the resource.
	Links *GeneralSettingsLinks `json:"_links"`
	// The length of time before a user is logged out of the Clumio system due to inactivity. Measured in seconds.
	// The valid range is between `600` seconds (10 minutes) and `3600` seconds (60 minutes).
	// If not configured, the value defaults to `900` seconds (15 minutes).
	AutoLogoutDuration *int64 `json:"auto_logout_duration"`
	// The designated range of IP addresses that are allowed to access the Clumio REST API.
	// API requests that originate from outside this list will be blocked.
	// The IP address of the server from which this request is being made must be in this list; otherwise, the request will fail.
	// Set the parameter to individual IP addresses and/or a range of IP addresses in CIDR notation.
	// For example, `["193.168.1.0/24", "193.172.1.1"]`.
	// If not configured, the value defaults to ["0.0.0.0/0"] meaning all addresses will be allowed.
	IpAllowlist []*string `json:"ip_allowlist"`
	// The grouping criteria for each datasource type.
	// These can only be edited for datasource types which do not have any
	// organizational units configured.
	OrganizationalUnitDataGroups *OUGroupingCriteria `json:"organizational_unit_data_groups"`
	// The length of time a user password is valid before it must be changed. Measured in seconds.
	// The valid range is between `2592000` seconds (30 days) and `15552000` seconds (180 days).
	// If not configured, the value defaults to `7776000` seconds (90 days).
	PasswordExpirationDuration *int64 `json:"password_expiration_duration"`
}

ReadGeneralSettingsResponseV2 represents a custom type struct for Success

type ReadHcmHostResponse

type ReadHcmHostResponse struct {
	// URLs to pages related to the resource.
	Links *HostLinks `json:"_links"`
	// The endpoints discovered post the host connection of the host.
	DiscoveredEndpoints []*string `json:"discovered_endpoints"`
	// The Current MSI version of the edge connector installed in the host.
	EdgeConnectorVersion *string `json:"edge_connector_version"`
	// The user-provided endpoint used to connect the host.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the management group associated with the host.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the Host.
	Id *string `json:"id"`
	// The timestamp of the last successful heartbeat of this host. Represented in RFC-3339 format.
	LastHeartbeatTimestamp *string `json:"last_heartbeat_timestamp"`
	// Name of the Host.
	Name *string `json:"name"`
	// The operational status of the Host. Possible values include `upgrade_in_progress`, `upgrade_success`, `upgrade_failed`, `delete_in_progress`, `delete_failed`, `move_in_progress`, `move_succeeded` and `move_failed`.
	OperationalStatus *string `json:"operational_status"`
	// The connection status of the Host. Possible values include `connected`, `disconnected`, `connection_pending`, and `invalid_token`.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the subgroup associated with the host.
	SubgroupId *string `json:"subgroup_id"`
	// The Clumio-assigned UUID of the host. This UUID is used for filtering hosts during list operations.
	Uuid *string `json:"uuid"`
}

ReadHcmHostResponse represents a custom type struct for Success

type ReadHostResponse

type ReadHostResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *HostLinks `json:"_links"`
	// The VMware compute resource representing the host.
	ComputeResource *VMwareVCenterHostComputeResourceModel `json:"compute_resource"`
	// The connection state of the host as seen through the vCenter server. Examples include "connected", "disconnected", and "not_responding".
	ConnectionState *string `json:"connection_state"`
	// The data center in which the host resides.
	Datacenter *VMwareVCenterHostDatacenterModel `json:"datacenter"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the host.
	Id *string `json:"id"`
	// Determines whether the host has been placed in maintenance mode as seen through the vCenter server. If `true`, the host is in maintenance mode.
	IsInMaintenanceMode *bool `json:"is_in_maintenance_mode"`
	// Determines whether the host has been placed in quarantine mode as seen through the vCenter server. If `true`, the host is in quarantine mode.
	IsInQuarantineMode *bool `json:"is_in_quarantine_mode"`
	// Determines whether the host is a standalone host. If `true`, the host is a standalone host.
	IsStandalone *bool `json:"is_standalone"`
	// Determines whether the host can be used as a restore destination. If `true`, the host can be used as a restore destination and backups can be restored to the host.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of the host.
	Name *string `json:"name"`
	// The power state of the host as seen through the vCenter server. Examples include "powered_off", "powered_on", and "standby".
	PowerState *string `json:"power_state"`
}

ReadHostResponse represents a custom type struct for Success

type ReadManagementGroupResponse

type ReadManagementGroupResponse struct {
	// URLs to pages related to the resource.
	Links *ManagementGroupLinks `json:"_links"`
	// Determines whether backups are allowed to occur across different subgroups or cloud connectors.
	BackupAcrossSubgroups *bool `json:"backup_across_subgroups"`
	// The Clumio-assigned ID of the management group.
	Id *string `json:"id"`
	// The name of the management group.
	Name *string `json:"name"`
	// The type of the management group. Possible values include `on_prem`.
	ClumioType *string `json:"type"`
	// The Clumio-assigned ID of the vCenter server associated with the management group.
	// All management groups are associated with a vCenter server.
	VcenterId *string `json:"vcenter_id"`
}

ReadManagementGroupResponse represents a custom type struct for Success

type ReadMssqlAGResponse

type ReadMssqlAGResponse struct {
	// MssqlAGEmbedded is embed of MSSQL Availability Groups
	// Embedded responses related to the resource.
	Embedded *MssqlAGEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlAGLinks `json:"_links"`
	// The Clumio-assigned ID of the availability group.
	Id *string `json:"id"`
	// The Microsoft SQL-assigned name of the availability group.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the availability group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The status of the availability group, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
}

ReadMssqlAGResponse represents a custom type struct for Success

type ReadMssqlDatabaseBackupResponse

type ReadMssqlDatabaseBackupResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabaseBackupEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlDatabaseBackupLinks `json:"_links"`
	// TODO: Add struct field description
	DatabaseFiles []*MssqlDatabaseFile `json:"database_files"`
	// The Clumio-assigned ID of the database associated with this backup.
	DatabaseId *string `json:"database_id"`
	// The Microsoft SQL database engine at the time of backup.
	Engine *string `json:"engine"`
	// The Microsoft SQL database engine version at the time of backup.
	EngineVersion *string `json:"engine_version"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The Clumio-assigned ID of the management group associated with the database at the time of backup.
	GroupId *string `json:"group_id"`
	// The user-provided endpoint of the host containing the given database at the time of backup.
	HostEndpoint *string `json:"host_endpoint"`
	// The Clumio-assigned ID of the host associated with the database at the time of backup.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the backup.
	Id *string `json:"id"`
	// The Clumio-assigned instance id at the time of backup.
	InstanceId *string `json:"instance_id"`
	// The instance name at the time of backup.
	InstanceName *string `json:"instance_name"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The Clumio-assigned ID of the management subgroup associated with the database at the time of backup.
	SubgroupId *string `json:"subgroup_id"`
	// The type of backup. Possible values include `mssql_database_backup`, `mssql_log_backup_full_recovery_model` and `mssql_log_backup_bulk_logged_model`.
	ClumioType *string `json:"type"`
}

ReadMssqlDatabaseBackupResponse represents a custom type struct for Success

type ReadMssqlDatabaseResponse

type ReadMssqlDatabaseResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlDatabaseEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *DatabaseLinks `json:"_links"`
	// The Clumio-assigned ID of the availability group. It is null in case of a standalone database.
	AvailabilityGroupId *string `json:"availability_group_id"`
	// The Microsoft SQL assigned name of the availability group. It is null in case of a standalone database.
	AvailabilityGroupName *string `json:"availability_group_name"`
	// The policy compliance status of the resource. If the database is not protected,
	// then this field has a value of `null`. Refer to
	//
	// the Compliance Status table
	//
	// for a complete list of compliance statuses.
	ComplianceStatus *string `json:"compliance_status"`
	// The Clumio-assigned ID of the group to which the standalone database belongs, in case of an
	// availability group database it will be empty.
	GroupId *string `json:"group_id"`
	// The user-provided endpoint of the host containing the given database.
	HostEndpoint *string `json:"host_endpoint"`
	// The Clumio-assigned ID of the host containing the given database.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the Database.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the instance containing the given database.
	InstanceId *string `json:"instance_id"`
	// The name of the Microsoft SQL instance containing the given database.
	InstanceName *string `json:"instance_name"`
	// is_supported is true if Clumio supports backup of the database.
	IsSupported *bool `json:"is_supported"`
	// The timestamp of the last time this database was full backed up.
	// Represented in RFC-3339 format. If this database has never been backed up,
	// this field has a value of `null`.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// The timestamp of the last time this database was log backed up in Bulk Recovery Model.
	// Represented in RFC-3339 format. If this database has never been backed up,
	// this field has a value of `null`.
	LastBulkRecoveryModelLogBackupTimestamp *string `json:"last_bulk_recovery_model_log_backup_timestamp"`
	// The timestamp of the last time this database was log backed up in Full Recovery Model.
	// Represented in RFC-3339 format. If this database has never been backed up,
	// this field has a value of `null`.
	LastFullRecoveryModelLogBackupTimestamp *string `json:"last_full_recovery_model_log_backup_timestamp"`
	// The name of the Database.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the database.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// recovery_model is the recovery model of the database. Possible values include 'simple_recovery_model',
	// 'bulk_recovery_model', and 'full_recovery_model'.
	RecoveryModel *string `json:"recovery_model"`
	// The size of the Database.
	Size *float64 `json:"size"`
	// The status of the database, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
	// subgroup id is the id of the Subgroup where this database belongs, in case of AG database
	// it will be empty.
	SubgroupId *string `json:"subgroup_id"`
	// The type of the database. Possible values include 'availability_group_database' and 'standalone_database'.
	ClumioType *string `json:"type"`
	// unsupported_reason is the reason why Clumio doesn't support backup of such database,
	// possible values include 'filestream_enabled_database'.
	UnsupportedReason *string `json:"unsupported_reason"`
}

ReadMssqlDatabaseResponse represents a custom type struct for Success

type ReadMssqlHostResponse

type ReadMssqlHostResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlHostEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlHostLinks `json:"_links"`
	// The user-provided endpoint of the host containing the given database.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the management group to which the host belongs.
	GroupId *string `json:"group_id"`
	// Determines whether or not an availability group is present in the host.
	HasAssociatedAvailabilityGroup *bool `json:"has_associated_availability_group"`
	// The Clumio-assigned ID of the Host.
	Id *string `json:"id"`
	// The number of instances present in the host.
	InstanceCount *int64 `json:"instance_count"`
	// The Clumio-assigned ID of the organizational unit associated with the host.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The status of the Host, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the management subgroup to which the host belongs.
	SubgroupId *string `json:"subgroup_id"`
}

ReadMssqlHostResponse represents a custom type struct for Success

type ReadMssqlInstanceResponse

type ReadMssqlInstanceResponse struct {
	// Embedded responses related to the resource.
	Embedded *MssqlInstanceEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *MssqlInstanceLinks `json:"_links"`
	// The Clumio-assigned ID of the management group to which the host belongs.
	GroupId *string `json:"group_id"`
	// The boolean value represents if availability group is present in the instance.
	HasAssociatedAvailabilityGroup *bool `json:"has_associated_availability_group"`
	// The user-provided endpoint of the host containing the given database.
	HostEndpoint *string `json:"host_endpoint"`
	// The Clumio-assigned ID of the host, containing the instance.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the Instance.
	Id *string `json:"id"`
	// The Microsoft SQL assigned name of the instance.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the instance.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Product Version of the instance.
	ProductVersion *string `json:"product_version"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The Microsoft SQL assigned server name of the instance.
	ServerName *string `json:"server_name"`
	// The status of the Instance, Possible values include 'active' and 'inactive'.
	Status *string `json:"status"`
	// The Clumio-assigned ID of the management subgroup to which the host belongs.
	SubgroupId *string `json:"subgroup_id"`
}

ReadMssqlInstanceResponse represents a custom type struct for Success

type ReadOrganizationalUnitResponse

type ReadOrganizationalUnitResponse struct {
	// Embedded responses related to the resource.
	Embedded *EntityGroupEmbedded `json:"_embedded"`
	// ETag value
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *OrganizationalUnitLinks `json:"_links"`
	// Number of immediate children of the organizational unit.
	ChildrenCount *int64 `json:"children_count"`
	// Datasource types configured in this organizational unit. Possible values include `aws`, `microsoft365`, `vmware`, or `mssql`.
	ConfiguredDatasourceTypes []*string `json:"configured_datasource_types"`
	// List of all recursive descendant organizational units of this OU.
	DescendantIds []*string `json:"descendant_ids"`
	// A description of the organizational unit.
	Description *string `json:"description"`
	// The Clumio assigned ID of the organizational unit.
	Id *string `json:"id"`
	// Unique name assigned to the organizational unit.
	Name *string `json:"name"`
	// The Clumio assigned ID of the parent organizational unit.
	// The parent organizational unit contains the entities in this organizational unit and can update this organizational unit.
	// If this organizational unit is the global organizational unit, then this field has a value of `null`.
	ParentId *string `json:"parent_id"`
	// Number of users to whom this organizational unit or any of its descendants have been assigned.
	UserCount *int64 `json:"user_count"`
	// Users IDs to whom the organizational unit has been assigned.
	// This attribute will be available when reading a single OU and not when listing OUs.
	Users []*string `json:"users"`
}

ReadOrganizationalUnitResponse represents a custom type struct for Success

type ReadPolicyDefinitionHateoasLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

ReadPolicyDefinitionHateoasLink represents a custom type struct. A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.

type ReadPolicyResponse

type ReadPolicyResponse struct {
	// If the `embed` query parameter is set, displays the responses of the related resource,
	// as defined by the embeddable link specified.
	Embedded *PolicyEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *PolicyLinks `json:"_links"`
	// The status of the policy.
	// Refer to the Policy Activation Status table for a complete list of policy statuses.
	ActivationStatus *string `json:"activation_status"`
	// The Clumio-assigned IDs of the organizational units to whom the policy has been assigned.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// The created time of the policy in unix time.
	CreatedTime *int64 `json:"created_time"`
	// The Clumio-assigned ID of the policy.
	Id *string `json:"id"`
	// The following table describes the possible lock statuses of a policy.
	//
	// +----------+-------------------------------------------------------------------+
	// |  Status  |                            Description                            |
	// +==========+===================================================================+
	// | unlocked | Policies are unlocked until an update or deletion task is queued. |
	// +----------+-------------------------------------------------------------------+
	// | updating | During a policy edit, concurrent edits or deletion requests will  |
	// |          | be rejected.                                                      |
	// +----------+-------------------------------------------------------------------+
	// | deleting | During policy deletion, concurrent edits or deletion requests     |
	// |          | will be rejected.                                                 |
	// +----------+-------------------------------------------------------------------+
	//
	LockStatus *string `json:"lock_status"`
	// The user-provided name of the policy.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Operations []*PolicyOperation `json:"operations"`
	// The Clumio-assigned ID of the organizational unit associated with the policy.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The timezone for the policy.
	Timezone *string `json:"timezone"`
	// The updated time of the policy in unix time.
	UpdatedTime *int64 `json:"updated_time"`
}

ReadPolicyResponse represents a custom type struct for Success

type ReadProtectionGroupBackupResponse added in v0.2.5

type ReadProtectionGroupBackupResponse struct {
	// URLs to pages related to the resource.
	Links *ProtectionGroupBackupLinks `json:"_links"`
	// The number of objects in the protection group that were successfully backed up.
	BackedUpObjectCount *int64 `json:"backed_up_object_count"`
	// The total size in bytes of objects in the protection group that were
	// successfully backed up.
	BackedUpSizeBytes *int64 `json:"backed_up_size_bytes"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The number of objects in the protection group that failed to be backed up.
	FailedObjectCount *int64 `json:"failed_object_count"`
	// The total size in bytes of objects in the protection group that failed
	// to be backed up.
	FailedSizeBytes *int64 `json:"failed_size_bytes"`
	// The Clumio-assigned ID of the protection group backup.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the protection group.
	ProtectionGroupId *string `json:"protection_group_id"`
	// The user-assigned name of the protection group.
	ProtectionGroupName *string `json:"protection_group_name"`
	// The version of the protection group at the time the backup was taken.
	ProtectionGroupVersion *int64 `json:"protection_group_version"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The type of backup. Possible values include `protection_group_backup`.
	ClumioType *string `json:"type"`
}

ReadProtectionGroupBackupResponse represents a custom type struct for Success

type ReadProtectionGroupResponse added in v0.1.2

type ReadProtectionGroupResponse struct {
	// Embedded responses related to the resource.
	Embedded *ProtectionGroupEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupLinks `json:"_links"`
	// Number of buckets
	BucketCount *int64 `json:"bucket_count"`
	// The following table describes the possible conditions for a bucket to be
	// automatically added to a protection group.
	//
	// +---------+----------------+---------------------------------------------------+
	// |  Field  | Rule Condition |                    Description                    |
	// +=========+================+===================================================+
	// | aws_tag | $eq            | Denotes the AWS tag(s) to conditionalize on       |
	// |         |                |                                                   |
	// |         |                | {"aws_tag":{"$eq":{"key":"Environment",           |
	// |         |                | "value":"Prod"}}}                                 |
	// |         |                |                                                   |
	// |         |                |                                                   |
	// +---------+----------------+---------------------------------------------------+
	//
	BucketRule *string `json:"bucket_rule"`
	// The compliance statistics of workloads associated with this entity.
	ComplianceStats *ProtectionComplianceStatsWithSeeding `json:"compliance_stats"`
	// The compliance status of the protected protection group. Possible values include
	// "compliant" and "noncompliant". If the table is not protected, then this field has
	// a value of `null`.
	ComplianceStatus *string `json:"compliance_status"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The user-assigned description of the protection group.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the protection group.
	Id *string `json:"id"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// Modified time of the protection group in RFC-3339 format.
	ModifiedTimestamp *string `json:"modified_timestamp"`
	// The user-assigned name of the protection group.
	Name *string `json:"name"`
	// ObjectFilter
	// defines which objects will be backed up.
	ObjectFilter *ObjectFilter `json:"object_filter"`
	// The Clumio-assigned ID of the organizational unit associated with the Protection Group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfoWithRule `json:"protection_info"`
	// The protection status of the protection group. Possible values include "protected",
	// "unprotected", and "unsupported". If the protection group does not support backups, then
	// this field has a value of `unsupported`.
	ProtectionStatus *string `json:"protection_status"`
	// The list of AWS regions that this protection group is linked to
	Regions []*string `json:"regions"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
	// Version of the protection group. The version number is incremented every time
	// a change is made to the protection group.
	Version *int64 `json:"version"`
}

ReadProtectionGroupResponse represents a custom type struct for Success

type ReadProtectionGroupS3AssetBackupResponse added in v0.2.5

type ReadProtectionGroupS3AssetBackupResponse struct {
	// URLs to pages related to the resource.
	Links *ProtectionGroupS3AssetBackupLinks `json:"_links"`
	// The number of objects in the protection group S3 asset that were successfully backed up.
	BackedUpObjectCount *uint64 `json:"backed_up_object_count"`
	// The total size in bytes of objects in the protection group S3 asset that were
	// successfully backed up.
	BackedUpSizeBytes *uint64 `json:"backed_up_size_bytes"`
	// The Clumio-assigned ID of the bucket.
	BucketId *string `json:"bucket_id"`
	// The name of the bucket.
	BucketName *string `json:"bucket_name"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The number of objects in the protection group S3 asset that failed to be backed up.
	FailedObjectCount *uint64 `json:"failed_object_count"`
	// The total size in bytes of objects in the protection group S3 asset that failed
	// to be backed up.
	FailedSizeBytes *uint64 `json:"failed_size_bytes"`
	// The Clumio-assigned ID of the protection group S3 asset backup.
	Id *string `json:"id"`
	// The Clumio-assigned ID of the protection group.
	ProtectionGroupId *string `json:"protection_group_id"`
	// The Clumio-assigned ID of the protection group S3 asset.
	ProtectionGroupS3AssetId *string `json:"protection_group_s3_asset_id"`
	// The version of the protection group at the time the backup was taken.
	ProtectionGroupVersion *int64 `json:"protection_group_version"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The type of backup. Possible values include `protection_group_s3_asset_backup`.
	ClumioType *string `json:"type"`
}

ReadProtectionGroupS3AssetBackupResponse represents a custom type struct for Success

type ReadProtectionGroupS3AssetResponse added in v0.1.2

type ReadProtectionGroupS3AssetResponse struct {
	// TODO: Add struct field description
	Embedded *ProtectionGroupBucketEmbedded `json:"_embedded"`
	// TODO: Add struct field description
	Links *ProtectionGroupBucketLinks `json:"_links"`
	// The AWS-assigned ID of the account associated with the DynamoDB table.
	AccountNativeId *string `json:"account_native_id"`
	// Whether this bucket was added to this protection group by the bucket rule
	AddedByBucketRule *bool `json:"added_by_bucket_rule"`
	// Whether this bucket was added to this protection group by the user
	AddedByUser *bool `json:"added_by_user"`
	// The AWS region associated with the DynamoDB table.
	AwsRegion *string `json:"aws_region"`
	// The Clumio-assigned ID of the bucket
	BucketId *string `json:"bucket_id"`
	// The name of the bucket
	BucketName *string `json:"bucket_name"`
	// The compliance status of the protected protection group. Possible values include
	// "compliant" and "noncompliant". If the table is not protected, then this field has
	// a value of `null`.
	ComplianceStatus *string `json:"compliance_status"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The Clumio-assigned ID of the AWS environment associated with the protection group.
	EnvironmentId *string `json:"environment_id"`
	// The Clumio-assigned ID of the protection group
	GroupId *string `json:"group_id"`
	// The name of the protection group
	GroupName *string `json:"group_name"`
	// The Clumio-assigned ID that represents the bucket within the protection group.
	Id *string `json:"id"`
	// Determines whether the protection group bucket has been deleted
	IsDeleted *bool `json:"is_deleted"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// The Clumio-assigned ID of the organizational unit associated with the protection group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfoWithRule `json:"protection_info"`
	// The protection status of the protection group. Possible values include "protected",
	// "unprotected", and "unsupported". If the protection group does not support backups, then
	// this field has a value of `unsupported`.
	ProtectionStatus *string `json:"protection_status"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
}

ReadProtectionGroupS3AssetResponse represents a custom type struct for Success

type ReadResourcePoolResponse

type ReadResourcePoolResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *ResourcePoolLinks `json:"_links"`
	// The compute resource that the resource pool comprises.
	ComputeResource *VMwareResourcePoolComputeResourceModel `json:"compute_resource"`
	// The data center in which the resource pool resides.
	Datacenter *ResourcePoolDatacenterModel `json:"datacenter"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the resource pool.
	Id *string `json:"id"`
	// Determines whether the resource pool is the default, hidden resource pool.
	IsRoot *bool `json:"is_root"`
	// Determines whether the resource pool can be used as a restore destination. If `true`, the resource pool can be used as a restore destination and backups can be restored to the resource pool.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of the resource pool.
	Name *string `json:"name"`
	// The vCenter object that is the parent of the resource pool.
	Parent *VMwareResourcePoolParentModel `json:"parent"`
}

ReadResourcePoolResponse represents a custom type struct for Success

type ReadRoleResponse

type ReadRoleResponse struct {
	// ETag value
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *RoleLinks `json:"_links"`
	// A description of the role.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the role.
	Id *string `json:"id"`
	// Unique name assigned to the role.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Permissions []*PermissionModel `json:"permissions"`
	// Number of users to whom the role has been assigned.
	UserCount *int64 `json:"user_count"`
}

ReadRoleResponse represents a custom type struct for Success

type ReadRuleResponse

type ReadRuleResponse struct {
	// Embedded responses related to the resource.
	Embedded *RuleEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *RuleLinks `json:"_links"`
	// An action to be applied subject to the rule criteria.
	Action *RuleAction `json:"action"`
	// The following table describes the possible conditions for a rule.
	//
	// +-----------------------+---------------------------+--------------------------+
	// |         Field         |      Rule Condition       |       Description        |
	// +=======================+===========================+==========================+
	// | aws_account_native_id | $eq, $in                  | Denotes the AWS account  |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$eq":"111111111111"}} |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$in":["111111111111", |
	// |                       |                           | "222222222222"]}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_region            | $eq, $in                  | Denotes the AWS region   |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$eq":"us |
	// |                       |                           | -west-2"}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$in":["u |
	// |                       |                           | s-west-2", "us-          |
	// |                       |                           | east-1"]}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_tag               | $eq, $in, $all, $contains | Denotes the AWS tag(s)   |
	// |                       |                           | to conditionalize on.    |
	// |                       |                           | Max 100 tags allowed in  |
	// |                       |                           | each rule                |
	// |                       |                           | and tag key can be upto  |
	// |                       |                           | 128 characters and value |
	// |                       |                           | can be upto 256          |
	// |                       |                           | characters long.         |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$eq":{"key" |
	// |                       |                           | :"Environment",          |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$in":[{"key |
	// |                       |                           | ":"Environment",         |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$all":[{"ke |
	// |                       |                           | y":"Environment",        |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$contains": |
	// |                       |                           | {"key":"Environment",    |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | entity_type           | $eq, $in                  | Denotes the AWS entity   |
	// |                       |                           | type to conditionalize   |
	// |                       |                           | on. (Required)           |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$eq":"a |
	// |                       |                           | ws_rds_instance"}}       |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$in":[" |
	// |                       |                           | aws_rds_instance",       |
	// |                       |                           | "aws_ebs_volume", "aws_e |
	// |                       |                           | c2_instance","aws_dynamo |
	// |                       |                           | db_table",               |
	// |                       |                           | "aws_rds_cluster"]}}     |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	//
	Condition *string `json:"condition"`
	// The Clumio-assigned ID of the policy rule.
	Id *string `json:"id"`
	// Name of the rule. Max 100 characters.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit (OU) to which the policy rule belongs.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// A priority relative to other rules.
	Priority *RulePriority `json:"priority"`
}

ReadRuleResponse represents a custom type struct for Success

type ReadSubgroupResponse

type ReadSubgroupResponse struct {
	// URLs to pages related to the resource.
	Links *SubgroupLinks `json:"_links"`
	// The number of cloud connectors in this subgroup, aggregated by their status.
	CloudConnectorCountByStatus *CloudConnectorCountByStatus `json:"cloud_connector_count_by_status"`
	// The overall health of cloud connectors in this subgroup. Possible values include: 'healthy', indicating
	// that all cloud connectors in the subgroup are connected; 'degraded' indicating that one or more cloud
	// connectors in the subgroup have connection issues; `none`, indicating that no cloud connectors are in the subgroup.
	CloudConnectorStatus *string `json:"cloud_connector_status"`
	// The Clumio-assigned ID of the management group associated with this subgroup.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the management subgroup.
	Id *string `json:"id"`
	// The name of the management subgroup.
	Name *string `json:"name"`
}

ReadSubgroupResponse represents a custom type struct for Success

type ReadTagCategory2Response

type ReadTagCategory2Response struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource
	Links *TagCategory2Links `json:"_links"`
	// A description of the tag category.
	Description *string `json:"description"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag category.
	Id *string `json:"id"`
	// The VMware-assigned name of the tag category.
	Name *string `json:"name"`
	// The number of tags in the tag category.
	NumberOfTags *int32 `json:"number_of_tags"`
	// The Clumio-assigned ID of the organizational unit associated with the tag category.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
}

ReadTagCategory2Response represents a custom type struct for Success

type ReadTagResponse

type ReadTagResponse struct {
	// Embedded responses related to the resource.
	Embedded *Tag2Embedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *Tag2Links `json:"_links"`
	// The tag category associated with the tag.
	Category *TagParentCategoryModel `json:"category"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag.
	Id *string `json:"id"`
	// The VMware-assigned name of the tag.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the tag.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this tag. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
}

ReadTagResponse represents a custom type struct for Success

type ReadTaskHateoasLinks struct {
	// Embeds the associated task of a resource in the response if requested using the `embed` query parameter.
	ReadTask interface{} `json:"read-task"`
}

ReadTaskHateoasLinks represents a custom type struct. Embedded responses related to the resource.

type ReadTaskResponse

type ReadTaskResponse struct {
	// URLs to pages related to the resource.
	Links *TaskLinks `json:"_links"`
	// The task category. Examples of task types include "backup", "restore", "snapshot", and "system".
	//
	// +-------------------+----------------------------------------------------------+
	// |     Category      |                       Description                        |
	// +===================+==========================================================+
	// | backup            | Encompasses all modes of backups. This does not include  |
	// |                   | in-account snapshots.                                    |
	// +-------------------+----------------------------------------------------------+
	// | restore           | Encompasses all modes of restores. This does not include |
	// |                   | restores of in-account snapshots.                        |
	// +-------------------+----------------------------------------------------------+
	// | snapshot          | Encompasses all modes of in-account snapshots.           |
	// +-------------------+----------------------------------------------------------+
	// | snapshot_restore  | Encompasses all modes of snapshot restores.              |
	// +-------------------+----------------------------------------------------------+
	// | system            | Encompasses a variety of system-initiated tasks, such as |
	// |                   | aws_rds_backup_target_setup and                          |
	// |                   | aws_ec2_instance_backup_indexing.                        |
	// +-------------------+----------------------------------------------------------+
	// | report_generation | Encompasses task types which generate reports, such as   |
	// |                   | activity_report_file_download.                           |
	// +-------------------+----------------------------------------------------------+
	// | management        | Encompasses user-initiated tasks which manage Clumio     |
	// |                   | resources, such as organizational_unit_update and        |
	// |                   | policy_update.                                           |
	// +-------------------+----------------------------------------------------------+
	//
	Category *string `json:"category"`
	// The timestamp of when the task was created. Represented in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The timestamp of when the task ended. If this task has not yet ended,
	// then this field has a value of `null`. Represented in RFC-3339 format.
	EndTimestamp *string `json:"end_timestamp"`
	// The task genre. A genre is a high-level collection of task categories.
	//
	// +----------------+-------------------------------------------------------------+
	// |     Genre      |                         Description                         |
	// +================+=============================================================+
	// | operational    | Encompasses all backup, restore, snapshot, and              |
	// |                | snapshot_restore tasks.                                     |
	// +----------------+-------------------------------------------------------------+
	// | administrative | Encompasses management, system, and report_generation       |
	// |                | tasks.                                                      |
	// +----------------+-------------------------------------------------------------+
	//
	Genre *string `json:"genre"`
	// The Clumio-assigned ID of the task.
	Id *string `json:"id"`
	// Determines whether or not this task can be aborted.
	// A task can be aborted if its status is either "queued" or "in_progress".
	// Tasks of certain types including
	// "vmware_vm_backup_indexing" and "aws_ebs_volume_backup_indexing" cannot be aborted.
	IsAbortable *bool `json:"is_abortable"`
	// The parent entity associated with the task.
	ParentEntity *TaskParentEntity `json:"parent_entity"`
	// The primary entity associated with the task.
	PrimaryEntity *TaskPrimaryEntity `json:"primary_entity"`
	// The percentage progress of task completion. Measured as an integer value between 0 and 100.
	ProgressPercentage *int64 `json:"progress_percentage"`
	// The timestamp of when the task started. If this task has not started yet,
	// then this field has a value of `null`. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The task status. Examples of task statuses include, "queued", "in_progress", and "completed".
	// Refer to the Task Status table for a complete list of task statuses.
	Status *string `json:"status"`
	// The task type. Examples of task types include "vm_backup_seeding", "ebs_indexing", and "file_restore".
	// Refer to the Task Type table for a complete list of task types.
	ClumioType *string `json:"type"`
}

ReadTaskResponse represents a custom type struct for Success

type ReadUserResponse

type ReadUserResponse struct {
	// Embedded responses related to the resource.
	Embedded *UserEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *UserLinks `json:"_links"`
	// The list of organizational unit IDs assigned to the user.
	// This attribute will be available when reading a single user and not when listing users.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// Assigned Role for the user.
	AssignedRole *string `json:"assigned_role"`
	// The email address of the Clumio user.
	Email *string `json:"email"`
	// The first and last name of the Clumio user. The name appears in the User Management screen and is used to identify the user.
	FullName *string `json:"full_name"`
	// The Clumio-assigned ID of the Clumio user.
	Id *string `json:"id"`
	// The ID number of the user who sent the email invitation.
	Inviter *string `json:"inviter"`
	// Determines whether the user has activated their Clumio account.
	// If `true`, the user has activated the account.
	IsConfirmed *bool `json:"is_confirmed"`
	// Determines whether the user is enabled (in "Activated" or "Invited" status) in Clumio.
	// If `true`, the user is in "Activated" or "Invited" status in Clumio.
	// Users in "Activated" status can log in to Clumio.
	// Users in "Invited" status have been invited to log in to Clumio via an email invitation and the invitation
	// is pending acceptance from the user.
	// If `false`, the user has been manually suspended and cannot log in to Clumio
	// until another Clumio user reactivates the account.
	IsEnabled *bool `json:"is_enabled"`
	// The timestamp of when when the user was last active in the Clumio system. Represented in RFC-3339 format.
	LastActivityTimestamp *string `json:"last_activity_timestamp"`
	// The number of organizational units accessible to the user.
	OrganizationalUnitCount *int64 `json:"organizational_unit_count"`
}

ReadUserResponse represents a custom type struct for Success

type ReadVCenterObjectProtectionStatsHateoasLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

ReadVCenterObjectProtectionStatsHateoasLink represents a custom type struct. A HATEOAS link to the compliance statistics of VMs in the folders and subfolders of this vCenter resource.

type ReadVMBackupResponse

type ReadVMBackupResponse struct {
	// URLs to pages related to the resource.
	Links *VMBackupHateoasLinks `json:"_links"`
	// The reason that browsing is unavailable for the backup. Possible values include "file_limit_exceeded" and
	// "browsing_unavailable". If browse indexing is successful, then this field has a value of `null`.
	BrowsingFailedReason *string `json:"browsing_failed_reason"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center
	// associated with this backup.
	DatacenterId *string `json:"datacenter_id"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the
	// host associated with this backup.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the backup.
	Id *string `json:"id"`
	// Determines whether browsing is available for the backup. If `true`, then browsing is available for the backup.
	IsBrowsable *bool `json:"is_browsable"`
	// TODO: Add struct field description
	Nics []*VMNicBackupModel `json:"nics"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the resource pool
	// associated with this backup.
	ResourcePoolId *string `json:"resource_pool_id"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// VMTagWithCategoryModel
	// A tag associated with the VM.
	Tags []*VMTagWithCategoryModel `json:"tags"`
	// The IP address or FQDN of the vCenter server associated with this backup.
	// If a backup was initiated before 2020-06-30, when this field was introduced,
	// then this field has a value of `null`.
	VcenterEndpoint *string `json:"vcenter_endpoint"`
	// The Clumio-assigned ID of the vCenter associated with this backup.
	VcenterId *string `json:"vcenter_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the
	// VM folder associated with this backup.
	VmFolderId *string `json:"vm_folder_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the
	// VM associated with this backup.
	VmId *string `json:"vm_id"`
	// The name of the virtual machine associated with this backup.
	VmName *string `json:"vm_name"`
}

ReadVMBackupResponse represents a custom type struct for Success

type ReadVMwareComputeResourceStatsResponse

type ReadVMwareComputeResourceStatsResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareComputeResourceComplianceStatsLinks `json:"_links"`
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ReadVMwareComputeResourceStatsResponse represents a custom type struct for Success

type ReadVMwareDatacenterStatsResponse

type ReadVMwareDatacenterStatsResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareDatacenterStatsLinks `json:"_links"`
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ReadVMwareDatacenterStatsResponse represents a custom type struct for Success

type ReadVMwareDatastoreResponse

type ReadVMwareDatastoreResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareDatastoreLinks `json:"_links"`
	// TODO: Add struct field description
	ComputeResources []*ComputeResourceIDModel `json:"compute_resources"`
	// The data center in which this datastore resides.
	Datacenter *VMwareVCenterDatastoreDatacenterModel `json:"datacenter"`
	// VMwareVCenterDatastoreFolderModel
	// The datastore folder in which this datastore resides.
	DatastoreFolder *VMwareVCenterDatastoreFolderModel `json:"datastore_folder"`
	// The file system format used for the datastore. Refer to the Supported Datastore Types section for a complete list of datastore types.
	DatastoreType *string `json:"datastore_type"`
	// TODO: Add struct field description
	Hosts []*HostIDModel `json:"hosts"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the datastore.
	Id *string `json:"id"`
	// Determines whether the datastore is shared across multiple hosts. If `true`, the datastore is a multi-host datastore.
	IsMultiHost *bool `json:"is_multi_host"`
	// Determines whether the datastore can be used as a restore destination. If `true`, the datastore can be used as a restore destination and backups can be restored to the datastore.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of this datastore.
	Name *string `json:"name"`
}

ReadVMwareDatastoreResponse represents a custom type struct for Success

type ReadVMwareFolderStatsResponse

type ReadVMwareFolderStatsResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareFolderStatsLinks `json:"_links"`
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ReadVMwareFolderStatsResponse represents a custom type struct for Success

type ReadVMwareTagStatsResponse

type ReadVMwareTagStatsResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareTagStatsLinks `json:"_links"`
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ReadVMwareTagStatsResponse represents a custom type struct for Success

type ReadVMwareVCenterNetworkResponse

type ReadVMwareVCenterNetworkResponse struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareVCenterNetworkLinks `json:"_links"`
	// The data center associated with this network.
	Datacenter *VMwareVCenterNetworkDatacenterModel `json:"datacenter"`
	// The VMware-assigned ID of this network.
	Id *string `json:"id"`
	// Determines whether VMs can be connected to the network. If `true`, VMs can be connected to the network.
	IsSupported *bool `json:"is_supported"`
	// The name of this network.
	Name *string `json:"name"`
	// The network folder associated with this network.
	NetworkFolder *VMwareVCenterNetworkFolderModel `json:"network_folder"`
}

ReadVMwareVCenterNetworkResponse represents a custom type struct for Success

type ReadVMwareVCenterProtectionStatsLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ReadVMwareVCenterProtectionStatsLinks represents a custom type struct. URLs to pages related to the resource.

type ReadVMwareVCenterProtectionStatsResponse

type ReadVMwareVCenterProtectionStatsResponse struct {
	// URLs to pages related to the resource.
	Links *ReadVMwareVCenterProtectionStatsLinks `json:"_links"`
	// The total number of compliant entities.
	CompliantCount *int64 `json:"compliant_count"`
	// The total number of entities associated with deactivated policies.
	DeactivatedCount *int64 `json:"deactivated_count"`
	// Determines whether one or more entities is currently seeding or waiting for seeding.
	// If set to `true`, at least one entity is currently seeding or waiting for seeding.
	HasSeedingEntities *bool `json:"has_seeding_entities"`
	// The total number of non-compliant entities.
	NonCompliantCount *int64 `json:"non_compliant_count"`
	// The number of entities with protection applied.
	ProtectedCount *int64 `json:"protected_count"`
	// The number of entities without protection applied.
	UnprotectedCount *int64 `json:"unprotected_count"`
}

ReadVMwareVCenterProtectionStatsResponse represents a custom type struct for Success

type ReadVcenterResponse

type ReadVcenterResponse struct {
	// Embedded responses related to the resource.
	Embedded *VcenterEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VcenterLinks `json:"_links"`
	// The region to which data is backed-up to for the vCenter server. If the vCenter server's back up region is unavailable, this field has a value of `unavailable`. Refer to the Back up Regions table for a complete list of back up regions.
	BackupRegion *string `json:"backup_region"`
	// The URL at which the Clumio Cloud Connector for this vCenter server can be downloaded.
	CloudConnectorDownloadUrl *string `json:"cloud_connector_download_url"`
	// The IP address or FQDN of the vCenter server.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the vCenter server.
	Id *string `json:"id"`
	// The IP address or FQDN of the vCenter server.
	// This field has been replaced by the `endpoint` field
	// and is being retained for backward compatibility reasons.
	IpAddress *string `json:"ip_address"`
	// The Clumio-assigned ID of the organizational unit associated with the vCenter.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The connection status of the Clumio Cloud Connector. Examples include "pending", "connected", "disconnected", "invalid_credentials", "partial", and "unavailable".
	Status *string `json:"status"`
	// The type of vCenter server. If the vCenter server's type is unavailable, this field has a value of `unavailable`. Refer to the vCenter Types table for a complete list of vCenter types.
	ClumioType *string `json:"type"`
	// The token given to the Clumio Cloud Connectors to identify the vCenter server.
	VcenterToken *string `json:"vcenter_token"`
}

ReadVcenterResponse represents a custom type struct for Success

type ReadVmResponse

type ReadVmResponse struct {
	// Embedded responses related to the resource.
	Embedded *VmEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VmLinks `json:"_links"`
	// The policy compliance status of the resource. If the VM is deleted or unprotected, then this field has a value of `null`. Refer to the Compliance Status table for a complete list of compliance statuses.
	ComplianceStatus *string `json:"compliance_status"`
	// The compute resource from which the VM draws. If the VM is deleted, then `compute_resource.id` has a value of `null`.
	ComputeResource *VMComputeResourceModel `json:"compute_resource"`
	// The compute resource folder associated with this VM. If the VM is deleted, then this field has a value of `null`.
	ComputeResourceFolder *VMComputeResourceFolderModel `json:"compute_resource_folder"`
	// The data center in which the VM resides. If the VM is deleted, then `datacenter.id` has a value of `null`.
	Datacenter *VMDatacenterModel `json:"datacenter"`
	// The data center folder associated with this VM. If the VM is deleted, then this field has a value of `null`.
	DatacenterFolder *VMDatacenterFolderModel `json:"datacenter_folder"`
	// The host on which the VM resides. If the VM is deleted, then `host.id` and `host.is_standalone` have values of `null`. The `host.name` field may also have a value of `null`.
	Host *VMHostModel `json:"host"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the VM.
	// VMs from different vCenters may have the same VMware-assigned ID.
	Id *string `json:"id"`
	// Determines whether the VM is deleted. If `true`, the VM is deleted.
	IsDeleted *bool `json:"is_deleted"`
	// Determines whether the VM is supported for backups. If `true`, the VM is supported for backups.
	IsSupported *bool `json:"is_supported"`
	// The timestamp of when the VM was last
	// backed up. If this VM has not been backed up, then this field has a value of `null`.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// The name of the virtual machine.
	Name *string `json:"name"`
	// The network interface card (NIC) attached to the VM.
	Nics []*VMNicModel `json:"nics"`
	// The Clumio-assigned ID of the organizational unit associated with the VM.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of the resource. If the VM has been deleted, then this field has a value of `null`. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
	// The resource pool from which the VM draws. If the VM is deleted, then `resource_pool.id` and `resource_pool.is_root` have values of `null`.
	ResourcePool *VMResourcePoolModel `json:"resource_pool"`
	// VMTagWithCategoryModel
	// A tag associated with the VM.
	Tags []*VMTagWithCategoryModel `json:"tags"`
	// The reason why the VM cannot be supported. If the VM is supported, then this field has a value of `null`.
	UnsupportedReason *string `json:"unsupported_reason"`
	// The Clumio-assigned ID of the VM.
	// Use this parameter in the [GET /backups/files/search](#operation/list-files) endpoint
	// to search for files in backups of this VM.
	Uuid *string `json:"uuid"`
	// The VM folder containing the VM. If the VM is deleted, then `vm_folder.id` has a value of `null`.
	VmFolder *VMFolderModel `json:"vm_folder"`
}

ReadVmResponse represents a custom type struct for Success

type ReadWalletResponse added in v0.2.7

type ReadWalletResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *WalletLinks `json:"_links"`
	// AWS Account ID associated with the wallet.
	AccountNativeId *string `json:"account_native_id"`
	// Version of the template available
	AvailableVersion *int64 `json:"available_version"`
	// Clumio AWS Account ID.
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// DeploymentURL is an (external) link to an AWS console page for quick-creation
	// of the stack.
	DeploymentUrl *string `json:"deployment_url"`
	// ErrorCode is a short string describing the error, if any.
	ErrorCode *string `json:"error_code"`
	// ErrorMessage is a longer description explaining the error, if any, and how to
	// fix it.
	ErrorMessage *string `json:"error_message"`
	// The Clumio-assigned ID of the wallet.
	Id *string `json:"id"`
	// The regions where the wallet is installed.
	InstalledRegions []*string `json:"installed_regions"`
	// TODO: Add struct field description
	KeyErrors map[string]*ErrorModel `json:"key_errors"`
	// RoleArn is the AWS Resource Name of the IAM Role created by the stack.
	RoleArn *string `json:"role_arn"`
	// The version of the stack used or being used.
	StackVersion *int64 `json:"stack_version"`
	// State describes the state of the wallet. Valid states are:
	// Waiting: The wallet has been created, but a stack hasn't been created. The
	// wallet can't be used in this state.
	// Enabled: The wallet has been created and a stack has been created for the
	// wallet. This is the normal expected state of a wallet in use.
	// Error:   The wallet is inaccessible. See ErrorCode and ErrorMessage fields for
	// additional details.
	State *string `json:"state"`
	// The supported regions for the wallet.
	SupportedRegions []*string `json:"supported_regions"`
	// TemplateURL is the URL to the CloudFormation template to be used to create the
	// CloudFormation stack.
	TemplateUrl *string `json:"template_url"`
	// Token is used to identify and authenticate the CloudFormation stack creation.
	Token *string `json:"token"`
}

ReadWalletResponse represents a custom type struct for Success

type RefreshWalletResponse added in v0.2.7

type RefreshWalletResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *WalletLinks `json:"_links"`
	// AWS Account ID associated with the wallet.
	AccountNativeId *string `json:"account_native_id"`
	// Version of the template available
	AvailableVersion *int64 `json:"available_version"`
	// Clumio AWS Account ID.
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// DeploymentURL is an (external) link to an AWS console page for quick-creation
	// of the stack.
	DeploymentUrl *string `json:"deployment_url"`
	// ErrorCode is a short string describing the error, if any.
	ErrorCode *string `json:"error_code"`
	// ErrorMessage is a longer description explaining the error, if any, and how to
	// fix it.
	ErrorMessage *string `json:"error_message"`
	// The Clumio-assigned ID of the wallet.
	Id *string `json:"id"`
	// The regions where the wallet is installed.
	InstalledRegions []*string `json:"installed_regions"`
	// TODO: Add struct field description
	KeyErrors map[string]*ErrorModel `json:"key_errors"`
	// RoleArn is the AWS Resource Name of the IAM Role created by the stack.
	RoleArn *string `json:"role_arn"`
	// The version of the stack used or being used.
	StackVersion *int64 `json:"stack_version"`
	// State describes the state of the wallet. Valid states are:
	// Waiting: The wallet has been created, but a stack hasn't been created. The
	// wallet can't be used in this state.
	// Enabled: The wallet has been created and a stack has been created for the
	// wallet. This is the normal expected state of a wallet in use.
	// Error:   The wallet is inaccessible. See ErrorCode and ErrorMessage fields for
	// additional details.
	State *string `json:"state"`
	// The supported regions for the wallet.
	SupportedRegions []*string `json:"supported_regions"`
	// TemplateURL is the URL to the CloudFormation template to be used to create the
	// CloudFormation stack.
	TemplateUrl *string `json:"template_url"`
	// Token is used to identify and authenticate the CloudFormation stack creation.
	Token *string `json:"token"`
}

RefreshWalletResponse represents a custom type struct for Success

type ReportDownload

type ReportDownload struct {
	// The link to the actual CSV report.
	DownloadLink *string `json:"download_link"`
	// The time when the request was completed.
	EndTimestamp *string `json:"end_timestamp"`
	// The time when this report CSV will expire and not be available for download.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The name of CSV file.
	FileName *string `json:"file_name"`
	// The filters applied to the report when download was initiated.
	Filters *string `json:"filters"`
	// TODO: Add struct field description
	Id *string `json:"id"`
	// The time when the request was made.
	StartTimestamp *string `json:"start_timestamp"`
	// The Clumio-assigned ID of the task which generated the restored file.
	TaskId *string `json:"task_id"`
	// The type of report this CSV Download is associated with.
	// The possible values include "activity" and "compliance".
	ClumioType *string `json:"type"`
}

ReportDownload represents a custom type struct

type ReportDownloadListEmbedded

type ReportDownloadListEmbedded struct {
	// TODO: Add struct field description
	Items []*ReportDownload `json:"items"`
}

ReportDownloadListEmbedded represents a custom type struct. _embedded contains the list of items of a list report CSV download query

type ReportDownloadListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ReportDownloadListLinks represents a custom type struct. _links provides URLs to related navigable pages of a list report CSV download query

type ResourcePoolDatacenterModel

type ResourcePoolDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
}

ResourcePoolDatacenterModel represents a custom type struct. The data center in which the resource pool resides.

type ResourcePoolLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ResourcePoolLinks represents a custom type struct. URLs to pages related to the resource.

type ResourcePoolListEmbedded

type ResourcePoolListEmbedded struct {
	// ResourcePoolWithETag to support etag string to be calculated
	Items []*ResourcePoolWithETag `json:"items"`
}

ResourcePoolListEmbedded represents a custom type struct. Embedded responses related to the resource.

type ResourcePoolListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

ResourcePoolListLinks represents a custom type struct. URLs to pages related to the resource.

type ResourcePoolWithETag

type ResourcePoolWithETag struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *ResourcePoolLinks `json:"_links"`
	// The compute resource that the resource pool comprises.
	ComputeResource *VMwareResourcePoolComputeResourceModel `json:"compute_resource"`
	// The data center in which the resource pool resides.
	Datacenter *ResourcePoolDatacenterModel `json:"datacenter"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the resource pool.
	Id *string `json:"id"`
	// Determines whether the resource pool is the default, hidden resource pool.
	IsRoot *bool `json:"is_root"`
	// Determines whether the resource pool can be used as a restore destination. If `true`, the resource pool can be used as a restore destination and backups can be restored to the resource pool.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of the resource pool.
	Name *string `json:"name"`
	// The vCenter object that is the parent of the resource pool.
	Parent *VMwareResourcePoolParentModel `json:"parent"`
}

ResourcePoolWithETag represents a custom type struct. ResourcePoolWithETag to support etag string to be calculated

type RestEntity

type RestEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

RestEntity represents a custom type struct

type RestoreAwsEbsVolumeV1Request

type RestoreAwsEbsVolumeV1Request struct {
	// The EBS volume backup to be restored.
	Source *EBSRestoreSourceV1 `json:"source"`
	// The configuration of the EBS volume to be restored.
	Target *EBSRestoreTargetV1 `json:"target"`
}

RestoreAwsEbsVolumeV1Request represents a custom type struct

type RestoreFileResponse

type RestoreFileResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The Clumio-assigned ID of the restored file.
	Id *string `json:"id"`
	// passcode that the end-user must use to access the restored
	// file, in the case the restored file was emailed to the end-user as part
	// of transparent data access.
	Passcode *string `json:"passcode"`
}

RestoreFileResponse represents a custom type struct for Success

type RestoreFilesV1Request

type RestoreFilesV1Request struct {
	// The files to be restored and from which backup they are to be restored from.
	Source *FileRestoreSource `json:"source"`
	// The destination information for the file level restore, representing the access option
	// for the restored file. Users can access the restored file by direct download or by
	// email. The direct download (`direct_download`) option allows users to directly download
	// the restored file from the Clumio UI. The email (`email`) option allows users to access
	// the restored file using a downloadable link they receive by email. If a target is not
	// specified, then `target` defaults to `direct_download`.
	Target *FileRestoreTarget `json:"target"`
}

RestoreFilesV1Request represents a custom type struct

type RestoreMssqlDatabaseV1Request

type RestoreMssqlDatabaseV1Request struct {
	// The MSSQL database backup to be restored. Only one of `backup` or `pitr`
	// should be set.
	Source *MssqlRestoreSource `json:"source"`
	// The configuration of the MSSQL database to which the data has to be restored.
	Target *MssqlRestoreTarget `json:"target"`
}

RestoreMssqlDatabaseV1Request represents a custom type struct

type RestoreProtectionGroupResponse added in v0.2.5

type RestoreProtectionGroupResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
}

RestoreProtectionGroupResponse represents a custom type struct for Success

type RestoreProtectionGroupS3AssetResponse added in v0.2.5

type RestoreProtectionGroupS3AssetResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
}

RestoreProtectionGroupS3AssetResponse represents a custom type struct for Success

type RestoreProtectionGroupS3AssetV1Request added in v0.2.5

type RestoreProtectionGroupS3AssetV1Request struct {
	// The parameters for initiating a protection group S3 asset restore from a backup.
	Source *ProtectionGroupS3AssetRestoreSource `json:"source"`
	// The destination where the protection group will be restored.
	Target *ProtectionGroupRestoreTarget `json:"target"`
}

RestoreProtectionGroupS3AssetV1Request represents a custom type struct

type RestoreProtectionGroupV1Request added in v0.2.5

type RestoreProtectionGroupV1Request struct {
	// The parameters for initiating a protection group restore from a backup.
	Source *ProtectionGroupRestoreSource `json:"source"`
	// The destination where the protection group will be restored.
	Target *ProtectionGroupRestoreTarget `json:"target"`
}

RestoreProtectionGroupV1Request represents a custom type struct

type RestoreVMwareVMResponse

type RestoreVMwareVMResponse struct {
	// Embedded responses related to the resource.
	Embedded *ReadTaskHateoasLinks `json:"_embedded"`
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The Clumio-assigned ID of the task created by this restore request. The progress of the task can be monitored using the `GET /tasks/{task_id}` endpoint.
	TaskId *string `json:"task_id"`
}

RestoreVMwareVMResponse represents a custom type struct for Success

type RestoreVmwareVmV1Request

type RestoreVmwareVmV1Request struct {
	// Additional VM restore options.
	Options *VMRestoreOptions `json:"options"`
	// The VM backup to be restored.
	Source *VMRestoreSource `json:"source"`
	// The configuration of the VM to be restored.
	Target *VMRestoreTarget `json:"target"`
}

RestoreVmwareVmV1Request represents a custom type struct

type RestoredFileInfo

type RestoredFileInfo struct {
	// Specifies information about the data-access method for accessing the restored
	// file.
	AccessMethods []*DataAccessObject `json:"access_methods"`
	// The Clumio-assigned ID of the backup associated with this restored file.
	BackupId *string `json:"backup_id"`
	// The timestamp of the when the backup associated with this file started.
	// Represented in RFC-3339 format.
	BackupTimestamp *string `json:"backup_timestamp"`
	// The timestamp of when the restored file will expire. Represented in RFC-3339
	// format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The Clumio-assigned ID of the restored file.
	Id *string `json:"id"`
	// The Clumio-assigned name of the restored file.
	Name *string `json:"name"`
	// The size of the restored file. Measured in bytes (B).
	Size *int64 `json:"size"`
	// The Clumio-assigned ID of the task which generated the restored file.
	TaskId *string `json:"task_id"`
}

RestoredFileInfo represents a custom type struct

type RestoredFilesListEmbedded

type RestoredFilesListEmbedded struct {
	// TODO: Add struct field description
	Items []*RestoredFileInfo `json:"items"`
}

RestoredFilesListEmbedded represents a custom type struct. Embedded responses related to the resource.

type RestoredFilesListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

RestoredFilesListLinks represents a custom type struct. URLs to pages related to the resource.

type RestoredFilesResponse

type RestoredFilesResponse struct {
	// Embedded responses related to the resource.
	Embedded *RestoredFilesListEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *RestoredFilesListLinks `json:"_links"`
	// The number of items listed on the current page.
	CurrentCount *int64 `json:"current_count"`
	// The maximum number of items displayed per page in the response.
	Limit *int64 `json:"limit"`
	// The page number used to get this response.
	// Pages are indexed starting from 1 (i.e., `"start": "1"`).
	Start *string `json:"start"`
	// The total number of items, summed across all pages.
	TotalCount *int64 `json:"total_count"`
	// The total number of pages of results.
	TotalPagesCount *int64 `json:"total_pages_count"`
}

RestoredFilesResponse represents a custom type struct for Success

type RetentionBackupSLAParam

type RetentionBackupSLAParam struct {
	// The measurement unit of the SLA parameter. Values include `hours`, `days`, `months`, and `years`.
	Unit *string `json:"unit"`
	// The measurement value of the SLA parameter.
	Value *int64 `json:"value"`
}

RetentionBackupSLAParam represents a custom type struct. The retention time for this SLA. For example, to retain the backup for 1 month, set `unit="months"` and `value=1`.

type RoleLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

RoleLinks represents a custom type struct. URLs to pages related to the resource.

type RoleListEmbedded

type RoleListEmbedded struct {
	// RoleWithETag to support etag string to be calculated
	Items []*RoleWithETag `json:"items"`
}

RoleListEmbedded represents a custom type struct. Embedded responses related to the resource.

type RoleListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

RoleListLinks represents a custom type struct. URLs to pages related to the resource.

type RoleWithETag

type RoleWithETag struct {
	// ETag value
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *RoleLinks `json:"_links"`
	// A description of the role.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the role.
	Id *string `json:"id"`
	// Unique name assigned to the role.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Permissions []*PermissionModel `json:"permissions"`
	// Number of users to whom the role has been assigned.
	UserCount *int64 `json:"user_count"`
}

RoleWithETag represents a custom type struct. RoleWithETag to support etag string to be calculated

type Rule

type Rule struct {
	// Embedded responses related to the resource.
	Embedded *RuleEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *RuleLinks `json:"_links"`
	// An action to be applied subject to the rule criteria.
	Action *RuleAction `json:"action"`
	// The following table describes the possible conditions for a rule.
	//
	// +-----------------------+---------------------------+--------------------------+
	// |         Field         |      Rule Condition       |       Description        |
	// +=======================+===========================+==========================+
	// | aws_account_native_id | $eq, $in                  | Denotes the AWS account  |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$eq":"111111111111"}} |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$in":["111111111111", |
	// |                       |                           | "222222222222"]}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_region            | $eq, $in                  | Denotes the AWS region   |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$eq":"us |
	// |                       |                           | -west-2"}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$in":["u |
	// |                       |                           | s-west-2", "us-          |
	// |                       |                           | east-1"]}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_tag               | $eq, $in, $all, $contains | Denotes the AWS tag(s)   |
	// |                       |                           | to conditionalize on.    |
	// |                       |                           | Max 100 tags allowed in  |
	// |                       |                           | each rule                |
	// |                       |                           | and tag key can be upto  |
	// |                       |                           | 128 characters and value |
	// |                       |                           | can be upto 256          |
	// |                       |                           | characters long.         |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$eq":{"key" |
	// |                       |                           | :"Environment",          |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$in":[{"key |
	// |                       |                           | ":"Environment",         |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$all":[{"ke |
	// |                       |                           | y":"Environment",        |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$contains": |
	// |                       |                           | {"key":"Environment",    |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | entity_type           | $eq, $in                  | Denotes the AWS entity   |
	// |                       |                           | type to conditionalize   |
	// |                       |                           | on. (Required)           |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$eq":"a |
	// |                       |                           | ws_rds_instance"}}       |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$in":[" |
	// |                       |                           | aws_rds_instance",       |
	// |                       |                           | "aws_ebs_volume", "aws_e |
	// |                       |                           | c2_instance","aws_dynamo |
	// |                       |                           | db_table",               |
	// |                       |                           | "aws_rds_cluster"]}}     |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	//
	Condition *string `json:"condition"`
	// The Clumio-assigned ID of the policy rule.
	Id *string `json:"id"`
	// Name of the rule. Max 100 characters.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit (OU) to which the policy rule belongs.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// A priority relative to other rules.
	Priority *RulePriority `json:"priority"`
}

Rule represents a custom type struct. A rule applies an action subject to a condition criteria.

type RuleAction

type RuleAction struct {
	// Apply a policy to assets.
	AssignPolicy *AssignPolicyAction `json:"assign_policy"`
}

RuleAction represents a custom type struct. An action to be applied subject to the rule criteria.

type RuleEmbedded

type RuleEmbedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

RuleEmbedded represents a custom type struct. Embedded responses related to the resource.

type RuleLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeletePolicyRule *HateoasLink `json:"delete-policy-rule"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A resource-specific HATEOAS link.
	UpdatePolicyRule *HateoasLink `json:"update-policy-rule"`
}

RuleLinks represents a custom type struct. URLs to pages related to the resource.

type RuleListEmbedded

type RuleListEmbedded struct {
	// A rule applies an action subject to a condition criteria.
	Items []*Rule `json:"items"`
}

RuleListEmbedded represents a custom type struct. An array of embedded resources related to this resource.

type RuleListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreatePolicyRule *HateoasLink `json:"create-policy-rule"`
}

RuleListLinks represents a custom type struct. URLs to pages related to the resource.

type RulePriority

type RulePriority struct {
	// The rule ID before which this rule should be inserted.
	BeforeRuleId *string `json:"before_rule_id"`
}

RulePriority represents a custom type struct. A priority relative to other rules.

type RuleProvision added in v0.3.0

type RuleProvision struct {
	// The Clumio-assigned IDs of the organizational units to be assigned to the user.
	// Use the [GET /organizational-units](#operation/list-organizational-units) endpoint to fetch valid values.
	OrganizationalUnitIds []*string `json:"organizational_unit_ids"`
	// The Clumio-assigned ID of the role to be assigned to the user.
	// Use the [GET /roles](#operation/list-roles) endpoint to fetch valid values.
	RoleId *string `json:"role_id"`
}

RuleProvision represents a custom type struct. Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.

type S3AccessControlTranslation added in v0.2.2

type S3AccessControlTranslation struct {
	// Specifies the replica ownership.
	Owner *string `json:"owner"`
}

S3AccessControlTranslation represents a custom type struct. A container for information about access control for replicas.

type S3BucketSizeRes added in v0.2.1

type S3BucketSizeRes struct {
	// Size of Deep Archive Object Overhead in bytes.
	DeepArchiveObjectOverhead *int64 `json:"deep_archive_object_overhead"`
	// Timestamp when CloudWatch reported the Deep Archive Object Overhead size.
	DeepArchiveObjectOverheadRetrievedTime *string `json:"deep_archive_object_overhead_retrieved_time"`
	// Size of Deep Archive S3 Object Overhead in bytes.
	DeepArchiveS3ObjectOverhead *int64 `json:"deep_archive_s3_object_overhead"`
	// Timestamp when CloudWatch reported the Deep Archive S3 Object Overhead size.
	DeepArchiveS3ObjectOverheadRetrievedTime *string `json:"deep_archive_s3_object_overhead_retrieved_time"`
	// Size of Deep Archive Staging Storage objects in bytes.
	DeepArchiveStagingStorage *int64 `json:"deep_archive_staging_storage"`
	// Timestamp when CloudWatch reported the Deep Archive Staging Storage objects size.
	DeepArchiveStagingStorageRetrievedTime *string `json:"deep_archive_staging_storage_retrieved_time"`
	// Size of Deep Archive Storage objects in bytes.
	DeepArchiveStorage *int64 `json:"deep_archive_storage"`
	// Timestamp when CloudWatch reported the Deep Archive Storage objects size.
	DeepArchiveStorageRetrievedTime *string `json:"deep_archive_storage_retrieved_time"`
	// Size of Glacier Instant Retrieval Storage objects in bytes.
	GlacierInstantRetrievalStorage *int64 `json:"glacier_instant_retrieval_storage"`
	// Timestamp when CloudWatch reported the Glacier Instant Retrieval Storage objects size.
	GlacierInstantRetrievalStorageRetrievedTime *string `json:"glacier_instant_retrieval_storage_retrieved_time"`
	// Size of Glacier Object Overhead in bytes.
	GlacierObjectOverhead *int64 `json:"glacier_object_overhead"`
	// Timestamp when CloudWatch reported the Glacier Object Overhead size.
	GlacierObjectOverheadRetrievedTime *string `json:"glacier_object_overhead_retrieved_time"`
	// Size of Glacier S3 Object Overhead in bytes.
	GlacierS3ObjectOverhead *int64 `json:"glacier_s3_object_overhead"`
	// Timestamp when CloudWatch reported the Glacier S3 Object Overhead size.
	GlacierS3ObjectOverheadRetrievedTime *string `json:"glacier_s3_object_overhead_retrieved_time"`
	// Size of Glacier Staging Storage objects in bytes.
	GlacierStagingStorage *int64 `json:"glacier_staging_storage"`
	// Timestamp when CloudWatch reported the Glacier Staging Storage objects size.
	GlacierStagingStorageRetrievedTime *string `json:"glacier_staging_storage_retrieved_time"`
	// Size of Glacier Storage objects in bytes.
	GlacierStorage *int64 `json:"glacier_storage"`
	// Timestamp when CloudWatch reported the Glacier Storage objects size.
	GlacierStorageRetrievedTime *string `json:"glacier_storage_retrieved_time"`
	// Size of Intelligent-Tiering AA Storage objects in bytes.
	IntelligentTieringAaStorage *int64 `json:"intelligent_tiering_aa_storage"`
	// Timestamp when CloudWatch reported the Intelligent-Tiering AA Storage objects size.
	IntelligentTieringAaStorageRetrievedTime *string `json:"intelligent_tiering_aa_storage_retrieved_time"`
	// Size of Intelligent-Tiering AIA Storage objects in bytes.
	IntelligentTieringAiaStorage *int64 `json:"intelligent_tiering_aia_storage"`
	// Timestamp when CloudWatch reported the Intelligent-Tiering AIA Storage objects size.
	IntelligentTieringAiaStorageRetrievedTime *string `json:"intelligent_tiering_aia_storage_retrieved_time"`
	// Size of Intelligent-Tiering DAA Storage objects in bytes.
	IntelligentTieringDaaStorage *int64 `json:"intelligent_tiering_daa_storage"`
	// Timestamp when CloudWatch reported the Intelligent-Tiering DAA Storage objects size.
	IntelligentTieringDaaStorageRetrievedTime *string `json:"intelligent_tiering_daa_storage_retrieved_time"`
	// Size of Intelligent-Tiering FA Storage objects in bytes.
	IntelligentTieringFaStorage *int64 `json:"intelligent_tiering_fa_storage"`
	// Timestamp when CloudWatch reported the Intelligent-Tiering FA Storage objects size.
	IntelligentTieringFaStorageRetrievedTime *string `json:"intelligent_tiering_fa_storage_retrieved_time"`
	// Size of Intelligent-Tiering IA Storage objects in bytes.
	IntelligentTieringIaStorage *int64 `json:"intelligent_tiering_ia_storage"`
	// Timestamp when CloudWatch reported the Intelligent-Tiering IA Storage objects size.
	IntelligentTieringIaStorageRetrievedTime *string `json:"intelligent_tiering_ia_storage_retrieved_time"`
	// Size of OneZone IA Overhead in bytes.
	OneZoneIaSizeOverhead *int64 `json:"one_zone_ia_size_overhead"`
	// Timestamp when CloudWatch reported the OneZone IA Overhead size.
	OneZoneIaSizeOverheadRetrievedTime *string `json:"one_zone_ia_size_overhead_retrieved_time"`
	// Size of OneZone IA Storage objects in bytes.
	OneZoneIaStorage *int64 `json:"one_zone_ia_storage"`
	// Timestamp when CloudWatch reported the OneZone IA Storage objects size.
	OneZoneIaStorageRetrievedTime *string `json:"one_zone_ia_storage_retrieved_time"`
	// Size of Reduced Redundancy Storage objects in bytes.
	ReducedRedundancyStorage *int64 `json:"reduced_redundancy_storage"`
	// Timestamp when CloudWatch reported the Reduced Redundancy Storage objects size.
	ReducedRedundancyStorageRetrievedTime *string `json:"reduced_redundancy_storage_retrieved_time"`
	// Size of Standard IA Object Overhead in bytes.
	StandardIaObjectOverhead *int64 `json:"standard_ia_object_overhead"`
	// Timestamp when CloudWatch reported the Standard IA Object Overhead size.
	StandardIaObjectOverheadRetrievedTime *string `json:"standard_ia_object_overhead_retrieved_time"`
	// Size of Standard IA Overhead in bytes.
	StandardIaSizeOverhead *int64 `json:"standard_ia_size_overhead"`
	// Timestamp when CloudWatch reported the Standard IA Overhead size.
	StandardIaSizeOverheadRetrievedTime *string `json:"standard_ia_size_overhead_retrieved_time"`
	// Size of Standard IA Storage objects in bytes.
	StandardIaStorage *int64 `json:"standard_ia_storage"`
	// Timestamp when CloudWatch reported the Standard IA Storage objects size.
	StandardIaStorageRetrievedTime *string `json:"standard_ia_storage_retrieved_time"`
	// Size of Standard Storage objects in bytes.
	StandardStorage *int64 `json:"standard_storage"`
	// Timestamp when CloudWatch reported the Standard Storage objects size.
	StandardStorageRetrievedTime *string `json:"standard_storage_retrieved_time"`
}

S3BucketSizeRes represents a custom type struct. The size breakdown in bytes with timestamps of a bucket per storage class.

type S3BucketsInventorySummaryBucketSizeBreakdown added in v0.2.5

type S3BucketsInventorySummaryBucketSizeBreakdown struct {
	// Size of Glacier Deep Archive Storage in bytes.
	GlacierDeepArchiveStorageBytes *int64 `json:"glacier_deep_archive_storage_bytes"`
	// Size of Glacier Flexible Retrieval Storage in bytes.
	GlacierFlexibleRetrievalStorageBytes *int64 `json:"glacier_flexible_retrieval_storage_bytes"`
	// Size of Glacier Instant Retrieval Storage in bytes.
	GlacierInstantRetrievalStorageBytes *int64 `json:"glacier_instant_retrieval_storage_bytes"`
	// Size of Intelligent-Tiering Storage objects in bytes.
	IntelligentTieringStorageBytes *int64 `json:"intelligent_tiering_storage_bytes"`
	// Size of OneZone-IA Storage in bytes.
	OneZoneIaStorageBytes *int64 `json:"one_zone_ia_storage_bytes"`
	// Size of Reduced Redundancy Storage in bytes.
	ReducedRedundancyStorageBytes *int64 `json:"reduced_redundancy_storage_bytes"`
	// Size of Standard-IA Storage in bytes.
	StandardIaStorageBytes *int64 `json:"standard_ia_storage_bytes"`
	// Size of Standard Storage in bytes.
	StandardStorageBytes *int64 `json:"standard_storage_bytes"`
}

S3BucketsInventorySummaryBucketSizeBreakdown represents a custom type struct. The total size breakdown of S3 buckets in bytes per storage class. This parameter aggregates relevant fields from cloudwatch_metrics > size_bytes_per_storage_class

type S3CloudwatchMetrics added in v0.2.1

type S3CloudwatchMetrics struct {
	// The average size of object in bucket.
	AverageObjectSizeBytes *float64 `json:"average_object_size_bytes"`
	// Timestamp when average size of the bucket is calculated.
	AverageObjectSizeBytesTime *string `json:"average_object_size_bytes_time"`
	// Number of objects in bucket.
	ObjectCount *int64 `json:"object_count"`
	// Timestamp when CloudWatch reported the bucket object count.
	ObjectCountRetrievedTime *string `json:"object_count_retrieved_time"`
	// Size of bucket in bytes.
	SizeBytes *int64 `json:"size_bytes"`
	// The size breakdown in bytes with timestamps of a bucket per storage class.
	SizeBytesPerStorageClass *S3BucketSizeRes `json:"size_bytes_per_storage_class"`
	// Timestamp when CloudWatch reported the bucket size.
	SizeBytesRetrievedTime *string `json:"size_bytes_retrieved_time"`
}

S3CloudwatchMetrics represents a custom type struct. The Cloudwatch metrics of the bucket.

type S3DeleteMarkerReplication added in v0.2.2

type S3DeleteMarkerReplication struct {
	// Indicates whether to replicate delete markers.
	Status *string `json:"status"`
}

S3DeleteMarkerReplication represents a custom type struct. Specifies whether Amazon S3 replicates delete markers.

type S3Destination added in v0.2.2

type S3Destination struct {
	// A container for information about access control for replicas.
	AccessControlTranslation *S3AccessControlTranslation `json:"access_control_translation"`
	// Destination bucket owner account ID.
	Account *string `json:"account"`
	// The Amazon Resource Name (ARN) of the bucket where
	// you want Amazon S3 to store the results.
	Bucket *string `json:"bucket"`
	// Specifies encryption-related information for an Amazon S3 bucket
	// that is a destination for replicated objects.
	EncryptionConfiguration *S3EncryptionConfiguration `json:"encryption_configuration"`
	// A container specifying replication metrics-related settings
	// enabling replication metrics and events.
	Metrics *S3Metrics `json:"metrics"`
	// A container specifying S3 Replication Time Control (S3 RTC)
	// related information.
	ReplicationTime *S3ReplicationTime `json:"replication_time"`
	// The storage class to use when replicating objects.
	StorageClass *string `json:"storage_class"`
}

S3Destination represents a custom type struct. Specifies information about where to publish analysis or configuration results.

type S3EncryptionConfiguration added in v0.2.2

type S3EncryptionConfiguration struct {
	// Specifies the ID (Key ARN or Alias ARN) of the customer managed
	// AWS KMS key stored in AWS Key Management Service (KMS) for the
	// destination bucket.
	ReplicaKmsKeyId *string `json:"replica_kms_key_id"`
}

S3EncryptionConfiguration represents a custom type struct. Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.

type S3EncryptionOutput added in v0.2.2

type S3EncryptionOutput struct {
	// Specifies the default server-side-encryption configuration.
	ServerSideEncryptionConfiguration *S3ServerSideEncryptionConfiguration `json:"server_side_encryption_configuration"`
}

S3EncryptionOutput represents a custom type struct. The AWS encryption output of the bucket.

type S3ExistingObjectReplication added in v0.2.2

type S3ExistingObjectReplication struct {
	// Specifies whether the existing object replication is enabled.
	Status *string `json:"status"`
}

S3ExistingObjectReplication represents a custom type struct. Configuration to replicate existing source bucket objects.

type S3Metrics added in v0.2.2

type S3Metrics struct {
	// A container specifying the time value for S3 Replication Time
	// Control (S3 RTC) and replication metrics EventThreshold.
	EventThreshold *S3ReplicationTimeValue `json:"event_threshold"`
	// Specifies whether the replication metrics are enabled.
	Status *string `json:"status"`
}

S3Metrics represents a custom type struct. A container specifying replication metrics-related settings enabling replication metrics and events.

type S3ReplicaModifications added in v0.2.2

type S3ReplicaModifications struct {
	// Specifies whether Amazon S3 replicates modifications on replicas.
	Status *string `json:"status"`
}

S3ReplicaModifications represents a custom type struct. A filter that you can specify for selection for modifications on replicas.

type S3ReplicationConfiguration added in v0.2.2

type S3ReplicationConfiguration struct {
	// The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM)
	// role that Amazon S3 assumes when replicating objects.
	Role *string `json:"role"`
	// Specifies which Amazon S3 objects to replicate and where to store the replicas.
	Rules []*S3ReplicationRule `json:"rules"`
}

S3ReplicationConfiguration represents a custom type struct. A container for replication rules with a maximum size of 2MB and a maximum of 1,000 rules.

type S3ReplicationOutput added in v0.2.2

type S3ReplicationOutput struct {
	// A container for replication rules with a maximum size
	// of 2MB and a maximum of 1,000 rules.
	ReplicationConfiguration *S3ReplicationConfiguration `json:"replication_configuration"`
}

S3ReplicationOutput represents a custom type struct. The AWS replication output of the bucket.

type S3ReplicationRule added in v0.2.2

type S3ReplicationRule struct {
	// Specifies whether Amazon S3 replicates delete markers.
	DeleteMarkerReplication *S3DeleteMarkerReplication `json:"delete_marker_replication"`
	// Specifies information about where to publish analysis or configuration results.
	Destination *S3Destination `json:"destination"`
	// Configuration to replicate existing source bucket objects.
	ExistingObjectReplication *S3ExistingObjectReplication `json:"existing_object_replication"`
	// A filter that identifies the subset of objects
	// to which the replication rule applies.
	Filter *S3ReplicationRuleFilter `json:"filter"`
	// A unique identifier for the rule (max 255 characters).
	Id *string `json:"id"`
	// The priority indicates which rule has precedence whenever
	// two or more replication rules conflict.
	Priority *int64 `json:"priority"`
	// A container that describes additional filters for identifying
	// the source objects that you want to replicate.
	SourceSelectionCriteria *S3SourceSelectionCriteria `json:"source_selection_criteria"`
	// Specifies whether the rule is enabled.
	Status *string `json:"status"`
}

S3ReplicationRule represents a custom type struct. Specifies which Amazon S3 objects to replicate and where to store the replicas.

type S3ReplicationRuleAndOperator added in v0.2.2

type S3ReplicationRuleAndOperator struct {
	// An object key name prefix that identifies
	// the subset of objects to which the rule applies.
	Prefix *string `json:"prefix"`
	// A container of a key value name pair.
	Tags []*S3Tag `json:"tags"`
}

S3ReplicationRuleAndOperator represents a custom type struct. A container for specifying rule filters. The filters determine the subset of objects to which the rule applies.

type S3ReplicationRuleFilter added in v0.2.2

type S3ReplicationRuleFilter struct {
	// A container for specifying rule filters. The filters
	// determine the subset of objects to which the rule applies.
	And *S3ReplicationRuleAndOperator `json:"and"`
	// An object key name prefix that identifies the
	// subset of objects to which the rule applies.
	Prefix *string `json:"prefix"`
	// A container of a key value name pair.
	Tag *S3Tag `json:"tag"`
}

S3ReplicationRuleFilter represents a custom type struct. A filter that identifies the subset of objects to which the replication rule applies.

type S3ReplicationTime added in v0.2.2

type S3ReplicationTime struct {
	// Specifies whether the replication time is enabled.
	Status *string `json:"status"`
	// A container specifying the time value for S3 Replication Time
	// Control (S3 RTC) and replication metrics EventThreshold.
	Time *S3ReplicationTimeValue `json:"time"`
}

S3ReplicationTime represents a custom type struct. A container specifying S3 Replication Time Control (S3 RTC) related information.

type S3ReplicationTimeValue added in v0.2.2

type S3ReplicationTimeValue struct {
	// Contains an integer specifying time in minutes.
	Minutes *int64 `json:"minutes"`
}

S3ReplicationTimeValue represents a custom type struct. A container specifying the time value for S3 Replication Time Control (S3 RTC) and replication metrics EventThreshold.

type S3ServerSideEncryptionByDefault added in v0.2.2

type S3ServerSideEncryptionByDefault struct {
	// AWS Key Management Service (KMS) customer AWS KMS key ID to use for the default encryption.
	KmsMasterKeyId *string `json:"kms_master_key_id"`
	// Server-side encryption algorithm to use for the default encryption.
	SseAlgorithm *string `json:"sse_algorithm"`
}

S3ServerSideEncryptionByDefault represents a custom type struct. Describes the default server-side encryption to apply to new objects in the bucket.

type S3ServerSideEncryptionConfiguration added in v0.2.2

type S3ServerSideEncryptionConfiguration struct {
	// Specifies the default server-side encryption configuration.
	Rules []*S3ServerSideEncryptionRule `json:"rules"`
}

S3ServerSideEncryptionConfiguration represents a custom type struct. Specifies the default server-side-encryption configuration.

type S3ServerSideEncryptionRule added in v0.2.2

type S3ServerSideEncryptionRule struct {
	// Describes the default server-side encryption to apply to new objects in the bucket.
	ApplyServerSideEncryptionByDefault *S3ServerSideEncryptionByDefault `json:"apply_server_side_encryption_by_default"`
	// Specifies whether Amazon S3 should use an S3 Bucket Key with server-side
	// encryption using KMS (SSE-KMS) for new objects in the bucket.
	BucketKeyEnabled *bool `json:"bucket_key_enabled"`
}

S3ServerSideEncryptionRule represents a custom type struct. Specifies the default server-side encryption configuration.

type S3SourceSelectionCriteria added in v0.2.2

type S3SourceSelectionCriteria struct {
	// A filter that you can specify for selection for modifications on replicas.
	ReplicaModifications *S3ReplicaModifications `json:"replica_modifications"`
	// A container for filter information for the selection of
	// S3 objects encrypted with AWS KMS.
	SseKmsEncryptedObjects *S3SseKmsEncryptedObjects `json:"sse_kms_encrypted_objects"`
}

S3SourceSelectionCriteria represents a custom type struct. A container that describes additional filters for identifying the source objects that you want to replicate.

type S3SseKmsEncryptedObjects added in v0.2.2

type S3SseKmsEncryptedObjects struct {
	// Specifies whether Amazon S3 replicates objects created with server-side
	// encryption using an AWS KMS key stored in AWS Key Management Service.
	Status *string `json:"status"`
}

S3SseKmsEncryptedObjects represents a custom type struct. A container for filter information for the selection of S3 objects encrypted with AWS KMS.

type S3Tag added in v0.2.2

type S3Tag struct {
	// Name of the object key.
	Key *string `json:"key"`
	// Value of the tag.
	Value *string `json:"value"`
}

S3Tag represents a custom type struct. A container of a key value name pair.

type S3VersioningOutput added in v0.2.2

type S3VersioningOutput struct {
	// Specifies whether MFA delete is enabled in the bucket versioning configuration.
	MfaDelete *string `json:"mfa_delete"`
	// The versioning state of the bucket.
	Status *string `json:"status"`
}

S3VersioningOutput represents a custom type struct. The AWS versioning output of the bucket.

type SetAssignmentsResponse

type SetAssignmentsResponse struct {
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The Clumio-assigned ID of the task generated by this request.
	TaskId *string `json:"task_id"`
}

SetAssignmentsResponse represents a custom type struct for Success

type SetBucketPropertiesResponse added in v0.4.0

type SetBucketPropertiesResponse struct {
	// TODO: Add struct field description
	Links *SetBucketPropertiesResponseLinks `json:"_links"`
}

SetBucketPropertiesResponse represents a custom type struct. Accepted

type SetBucketPropertiesResponseLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

SetBucketPropertiesResponseLinks represents a custom type struct

type SetBucketPropertiesV1Request added in v0.4.0

type SetBucketPropertiesV1Request struct {
	// True if enabling the bucket for continuous backup, false if disabling
	EventBridgeEnabled *bool `json:"event_bridge_enabled"`
}

SetBucketPropertiesV1Request represents a custom type struct. The set of properties that are being updated for the given bucket.

type SetPolicyAssignmentsV1Request

type SetPolicyAssignmentsV1Request struct {
	// The portion of the policy assignment used for updates/creations
	Items []*AssignmentInputModel `json:"items"`
}

SetPolicyAssignmentsV1Request represents a custom type struct

type SingleErrorResponse

type SingleErrorResponse struct {
	// TODO: Add struct field description
	ErrorCode *uint32 `json:"error_code"`
	// The reason for the error.
	ErrorMessage *string `json:"error_message"`
}

SingleErrorResponse represents a custom type struct

type SourceObjectFilters added in v0.2.5

type SourceObjectFilters struct {
	// Filter for objects with this etag.
	Etag *string `json:"etag"`
	// If set to true, filter for latest versions only. Otherwise all versions will
	// be returned.
	LatestVersionOnly *bool `json:"latest_version_only"`
	// Filter for objects with at most this size in bytes.
	MaxObjectSizeBytes *int64 `json:"max_object_size_bytes"`
	// Filter for objects with at least this size in bytes.
	MinObjectSizeBytes *int64 `json:"min_object_size_bytes"`
	// Filter for objects whose key contains this string.
	ObjectKeyContains *string `json:"object_key_contains"`
	// Filter for objects whose key matches this string.
	ObjectKeyMatches *string `json:"object_key_matches"`
	// Filter for objects that start with this key prefix.
	ObjectKeyPrefix *string `json:"object_key_prefix"`
	// Filter for objects that end with this key suffix.
	ObjectKeySuffix *string `json:"object_key_suffix"`
	// Storage class to include in the restore. If not specified, then all objects across all storage
	// classes will be restored. Valid values are: `S3 Standard`, `S3 Standard-IA`, `S3 Intelligent-Tiering`
	// and `S3 One Zone-IA`.
	StorageClasses []*string `json:"storage_classes"`
	// Filter for objects with this version ID.
	VersionId *string `json:"version_id"`
}

SourceObjectFilters represents a custom type struct. Search for or restore only objects that pass the source object filter.

type Subgroup

type Subgroup struct {
	// URLs to pages related to the resource.
	Links *SubgroupLinks `json:"_links"`
	// The number of cloud connectors in this subgroup, aggregated by their status.
	CloudConnectorCountByStatus *CloudConnectorCountByStatus `json:"cloud_connector_count_by_status"`
	// The overall health of cloud connectors in this subgroup. Possible values include: 'healthy', indicating
	// that all cloud connectors in the subgroup are connected; 'degraded' indicating that one or more cloud
	// connectors in the subgroup have connection issues; `none`, indicating that no cloud connectors are in the subgroup.
	CloudConnectorStatus *string `json:"cloud_connector_status"`
	// The Clumio-assigned ID of the management group associated with this subgroup.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the management subgroup.
	Id *string `json:"id"`
	// The name of the management subgroup.
	Name *string `json:"name"`
}

Subgroup represents a custom type struct

type SubgroupLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	ListMssqlHostConnections *HateoasLink `json:"list-mssql-host-connections"`
}

SubgroupLinks represents a custom type struct. URLs to pages related to the resource.

type SubgroupListEmbedded

type SubgroupListEmbedded struct {
	// TODO: Add struct field description
	Items []*Subgroup `json:"items"`
}

SubgroupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type SubgroupListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

SubgroupListLinks represents a custom type struct. URLs to pages related to the resource.

type Tag2

type Tag2 struct {
	// Embedded responses related to the resource.
	Embedded *Tag2Embedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *Tag2Links `json:"_links"`
	// The tag category associated with the tag.
	Category *TagParentCategoryModel `json:"category"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag.
	Id *string `json:"id"`
	// The VMware-assigned name of the tag.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the tag.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of this tag. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
}

Tag2 represents a custom type struct

type Tag2Embedded

type Tag2Embedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
	// Embeds the compliance statistics of VMs into each vCenter resource in the response, if requested using the `_embed` query parameter.
	ReadVmwareVcenterTagComplianceStats interface{} `json:"read-vmware-vcenter-tag-compliance-stats"`
}

Tag2Embedded represents a custom type struct. Embedded responses related to the resource.

type Tag2Links struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to the compliance statistics of VMs in the folders and subfolders of this vCenter resource.
	ReadVmwareVcenterTagComplianceStats *ReadVCenterObjectProtectionStatsHateoasLink `json:"read-vmware-vcenter-tag-compliance-stats"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

Tag2Links represents a custom type struct. URLs to pages related to the resource.

type Tag2ListEmbedded

type Tag2ListEmbedded struct {
	// TODO: Add struct field description
	Items []*Tag2 `json:"items"`
}

Tag2ListEmbedded represents a custom type struct. Embedded responses related to the resource.

type Tag2ListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

Tag2ListLinks represents a custom type struct. URLs to pages related to the resource.

type TagCategory2Links struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

TagCategory2Links represents a custom type struct. URLs to pages related to the resource

type TagCategory2ListEmbedded

type TagCategory2ListEmbedded struct {
	// TagCategory2WithETag to support etag string to be calculated
	Items []*TagCategory2WithETag `json:"items"`
}

TagCategory2ListEmbedded represents a custom type struct. Embedded responses related to the resource

type TagCategory2ListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

TagCategory2ListLinks represents a custom type struct. URLs to pages related to the resource

type TagCategory2WithETag

type TagCategory2WithETag struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource
	Links *TagCategory2Links `json:"_links"`
	// A description of the tag category.
	Description *string `json:"description"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag category.
	Id *string `json:"id"`
	// The VMware-assigned name of the tag category.
	Name *string `json:"name"`
	// The number of tags in the tag category.
	NumberOfTags *int32 `json:"number_of_tags"`
	// The Clumio-assigned ID of the organizational unit associated with the tag category.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
}

TagCategory2WithETag represents a custom type struct. TagCategory2WithETag to support etag string to be calculated

type TagParentCategoryModel

type TagParentCategoryModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag category.
	Id *string `json:"id"`
	// The VMware-assigned name of the tag category.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the tag category.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
}

TagParentCategoryModel represents a custom type struct. The tag category associated with the tag.

type Task

type Task struct {
	// URLs to pages related to the resource.
	Links *TaskLinks `json:"_links"`
	// The task category. Examples of task types include "backup", "restore", "snapshot", and "system".
	//
	// +-------------------+----------------------------------------------------------+
	// |     Category      |                       Description                        |
	// +===================+==========================================================+
	// | backup            | Encompasses all modes of backups. This does not include  |
	// |                   | in-account snapshots.                                    |
	// +-------------------+----------------------------------------------------------+
	// | restore           | Encompasses all modes of restores. This does not include |
	// |                   | restores of in-account snapshots.                        |
	// +-------------------+----------------------------------------------------------+
	// | snapshot          | Encompasses all modes of in-account snapshots.           |
	// +-------------------+----------------------------------------------------------+
	// | snapshot_restore  | Encompasses all modes of snapshot restores.              |
	// +-------------------+----------------------------------------------------------+
	// | system            | Encompasses a variety of system-initiated tasks, such as |
	// |                   | aws_rds_backup_target_setup and                          |
	// |                   | aws_ec2_instance_backup_indexing.                        |
	// +-------------------+----------------------------------------------------------+
	// | report_generation | Encompasses task types which generate reports, such as   |
	// |                   | activity_report_file_download.                           |
	// +-------------------+----------------------------------------------------------+
	// | management        | Encompasses user-initiated tasks which manage Clumio     |
	// |                   | resources, such as organizational_unit_update and        |
	// |                   | policy_update.                                           |
	// +-------------------+----------------------------------------------------------+
	//
	Category *string `json:"category"`
	// The timestamp of when the task was created. Represented in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The timestamp of when the task ended. If this task has not yet ended,
	// then this field has a value of `null`. Represented in RFC-3339 format.
	EndTimestamp *string `json:"end_timestamp"`
	// The task genre. A genre is a high-level collection of task categories.
	//
	// +----------------+-------------------------------------------------------------+
	// |     Genre      |                         Description                         |
	// +================+=============================================================+
	// | operational    | Encompasses all backup, restore, snapshot, and              |
	// |                | snapshot_restore tasks.                                     |
	// +----------------+-------------------------------------------------------------+
	// | administrative | Encompasses management, system, and report_generation       |
	// |                | tasks.                                                      |
	// +----------------+-------------------------------------------------------------+
	//
	Genre *string `json:"genre"`
	// The Clumio-assigned ID of the task.
	Id *string `json:"id"`
	// Determines whether or not this task can be aborted.
	// A task can be aborted if its status is either "queued" or "in_progress".
	// Tasks of certain types including
	// "vmware_vm_backup_indexing" and "aws_ebs_volume_backup_indexing" cannot be aborted.
	IsAbortable *bool `json:"is_abortable"`
	// The parent entity associated with the task.
	ParentEntity *TaskParentEntity `json:"parent_entity"`
	// The primary entity associated with the task.
	PrimaryEntity *TaskPrimaryEntity `json:"primary_entity"`
	// The percentage progress of task completion. Measured as an integer value between 0 and 100.
	ProgressPercentage *int64 `json:"progress_percentage"`
	// The timestamp of when the task started. If this task has not started yet,
	// then this field has a value of `null`. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The task status. Examples of task statuses include, "queued", "in_progress", and "completed".
	// Refer to the Task Status table for a complete list of task statuses.
	Status *string `json:"status"`
	// The task type. Examples of task types include "vm_backup_seeding", "ebs_indexing", and "file_restore".
	// Refer to the Task Type table for a complete list of task types.
	ClumioType *string `json:"type"`
}

Task represents a custom type struct

type TaskLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	ReadOrganizationalUnit *HateoasLink `json:"read-organizational-unit"`
	// A resource-specific HATEOAS link.
	UpdateTask *HateoasLink `json:"update-task"`
}

TaskLinks represents a custom type struct. URLs to pages related to the resource.

type TaskListEmbedded

type TaskListEmbedded struct {
	// TODO: Add struct field description
	Items []*Task `json:"items"`
}

TaskListEmbedded represents a custom type struct. Embedded responses related to the resource.

type TaskListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

TaskListLinks represents a custom type struct. URLs to pages related to the resource.

type TaskParentEntity

type TaskParentEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

TaskParentEntity represents a custom type struct. The parent entity associated with the task.

type TaskPrimaryEntity

type TaskPrimaryEntity struct {
	// A system-generated ID assigned to this entity.
	Id *string `json:"id"`
	// The following table describes the entity types that Clumio supports.
	//
	// +--------------------------------+---------------------------------------------+
	// |          Entity Type           |                   Details                   |
	// +================================+=============================================+
	// | vmware_vcenter                 | VMware vCenter.                             |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm                      | VMware virtual machine.                     |
	// +--------------------------------+---------------------------------------------+
	// | vmware_vm_folder               | VMware VM folder.                           |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter              | VMware data center.                         |
	// +--------------------------------+---------------------------------------------+
	// | vmware_datacenter_folder       | VMware data center folder.                  |
	// +--------------------------------+---------------------------------------------+
	// | vmware_tag                     | VMware tag.                                 |
	// +--------------------------------+---------------------------------------------+
	// | vmware_category                | VMware tag category.                        |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource        | VMware compute resource.                    |
	// +--------------------------------+---------------------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder.             |
	// +--------------------------------+---------------------------------------------+
	// | aws_ebs_volume                 | AWS EBS volume.                             |
	// +--------------------------------+---------------------------------------------+
	// | aws_connection                 | AWS connection mediated by a CloudFormation |
	// |                                | stack.                                      |
	// +--------------------------------+---------------------------------------------+
	// | aws_environment                | AWS environment specified by an             |
	// |                                | account/region pair.                        |
	// +--------------------------------+---------------------------------------------+
	// | aws_tag                        | AWS tag.                                    |
	// +--------------------------------+---------------------------------------------+
	// | aws_cmk                        | AWS Customer Master Key used to encrypt     |
	// |                                | data.                                       |
	// +--------------------------------+---------------------------------------------+
	//
	ClumioType *string `json:"type"`
	// A system-generated value assigned to the entity. For example, if the primary entity type is "vmware_vm" for a virtual machine, then the value is the name of the VM.
	Value *string `json:"value"`
}

TaskPrimaryEntity represents a custom type struct. The primary entity associated with the task.

type TemplateConfiguration

type TemplateConfiguration struct {
	// TODO: Add struct field description
	Discover *DiscoverTemplateInfoV2 `json:"discover"`
	// TODO: Add struct field description
	Protect *ProtectTemplateInfoV2 `json:"protect"`
}

TemplateConfiguration represents a custom type struct

type TemplateConfigurationV2 added in v0.2.5

type TemplateConfigurationV2 struct {
	// The AWS asset types supported with the available version of the template.
	AssetTypesEnabled []*string `json:"asset_types_enabled"`
	// The latest available version for the template.
	AvailableTemplateVersion *string `json:"available_template_version"`
	// TODO: Add struct field description
	Ebs *EbsTemplateInfo `json:"ebs"`
	// TODO: Add struct field description
	Rds *RdsTemplateInfo `json:"rds"`
}

TemplateConfigurationV2 represents a custom type struct

type UnprotectEntitiesHateoasLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

UnprotectEntitiesHateoasLink represents a custom type struct. A HATEOAS link to unprotect the entities.

type UpdateAWSConnectionResponse

type UpdateAWSConnectionResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AWSConnectionLinks `json:"_links"`
	// The alias given to the account on AWS.
	AccountName *string `json:"account_name"`
	// The AWS-assigned ID of the account associated with the connection.
	AccountNativeId *string `json:"account_native_id"`
	// The AWS region associated with the connection. For example, `us-east-1`.
	AwsRegion *string `json:"aws_region"`
	// Clumio AWS AccountId
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// Clumio AWS Region
	ClumioAwsRegion *string `json:"clumio_aws_region"`
	// The consolidated configuration of the Clumio Cloud Protect and Clumio Cloud Discover products for this connection.
	// If this connection is deprecated to use unconsolidated configuration, then this field has a
	// value of `null`.
	Config *ConsolidatedConfig `json:"config"`
	// The status of the connection. Possible values include "connecting",
	// "connected", and "unlinked".
	ConnectionStatus *string `json:"connection_status"`
	// The timestamp of when the connection was created.
	CreatedTimestamp *string `json:"created_timestamp"`
	// An optional, user-provided description for this connection.
	Description *string `json:"description"`
	// The configuration of the Clumio Discover product for this connection.
	// If this connection is not configured for Clumio Discover, then this field has a
	// value of `null`.
	Discover *DiscoverConfig `json:"discover"`
	// The Clumio-assigned ID of the connection.
	Id *string `json:"id"`
	// K8S Namespace
	Namespace *string `json:"namespace"`
	// The Clumio-assigned ID of the organizational unit associated with the
	// AWS environment. If this parameter is not provided, then the value
	// defaults to the first organizational unit assigned to the requesting
	// user. For more information about organizational units, refer to the
	// Organizational-Units documentation.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The configuration of the Clumio Cloud Protect product for this connection.
	// If this connection is not configured for Clumio Cloud Protect, then this field has a
	// value of `null`.
	Protect *ProtectConfig `json:"protect"`
	// The asset types enabled for protect. This is only populated if "protect"
	// is enabled. Valid values are any of ["EBS", "RDS", "DynamoDB", "EC2MSSQL", "S3"].
	// EBS and RDS are mandatory datasources. (Deprecated)
	ProtectAssetTypesEnabled []*string `json:"protect_asset_types_enabled"`
	// The services to be enabled for this configuration. Valid values are
	// ["discover"], ["discover", "protect"]. This is only set when the
	// registration is created, the enabled services are obtained directly from
	// the installed template after that. (Deprecated as all connections will have
	// both discover and protect enabled)
	ServicesEnabled []*string `json:"services_enabled"`
	// The Amazon Resource Name of the installed CloudFormation stack in this AWS account
	StackArn *string `json:"stack_arn"`
	// The name given to the installed CloudFormation stack on AWS.
	StackName *string `json:"stack_name"`
	// The 36-character Clumio AWS integration ID token used to identify the
	// installation of the CloudFormation template on the account. This value
	// will be pasted into the ClumioToken field when creating the
	// CloudFormation stack.
	Token *string `json:"token"`
}

UpdateAWSConnectionResponse represents a custom type struct for Success

type UpdateAlertResponse

type UpdateAlertResponse struct {
	// Embedded responses related to the resource.
	Embedded *AlertEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AlertLinks `json:"_links"`
	// The issue that generated the alert. Each cause belongs to an alert type.
	Cause *string `json:"cause"`
	// The timestamp of when the alert was cleared, either automatically by Clumio or manually by a Clumio user.
	// Represented in RFC-3339 format. If this alert has not been cleared, then this field has a value of `null`.
	ClearedTimestamp *string `json:"cleared_timestamp"`
	// The Clumio-assigned ID of the consolidated alert associated with this individual alert. Alerts are consolidated based on matching parent entity, alert type, and alert cause.
	ConsolidatedAlertId *string `json:"consolidated_alert_id"`
	// Additional information about the alert.
	Details *IndividualAlertDetails `json:"details"`
	// The Clumio-assigned ID of the individual alert.
	Id *string `json:"id"`
	// A record of user-provided information about the alert.
	Notes *string `json:"notes"`
	// The parent object of the primary entity associated with or affected by the alert. For example, "aws_environment" is the parent entity of primary entity "aws_ebs_volume".
	ParentEntity *AlertParentEntity `json:"parent_entity"`
	// The primary object associated with or affected by the alert. Examples of primary entities include "aws_connection", "aws_ebs_volume" and "vmware_vm".
	PrimaryEntity *AlertPrimaryEntity `json:"primary_entity"`
	// The number of times the alert has recurred for this primary entity.
	RaisedCount *uint64 `json:"raised_count"`
	// The timestamp of when the alert was raised. Represented in RFC-3339 format.
	RaisedTimestamp *string `json:"raised_timestamp"`
	// The alert severity level. Values include "error" and "warning".
	Severity *string `json:"severity"`
	// The individual alert status. An individual alert that is in "active" status is one that is still open and has yet to be addressed.
	// An individual alert that is in "cleared" status is one that has been cleared, either automatically by Clumio or manually by a Clumio user.
	Status *string `json:"status"`
	// TODO: Add struct field description
	Tags []*RestEntity `json:"tags"`
	// The general alert category. Some alert types may be associated with multiple causes.
	// Refer to the Alert Type table for a complete list of alert types.
	ClumioType *string `json:"type"`
	// The timestamp of when the alert was last updated. Represented in RFC-3339 format.
	// The alert is updated whenever there is a new occurrence of the same alert within the same entity.
	UpdatedTimestamp *string `json:"updated_timestamp"`
}

UpdateAlertResponse represents a custom type struct for Success

type UpdateAutoUserProvisioningRuleResponse added in v0.3.0

type UpdateAutoUserProvisioningRuleResponse struct {
	// Embedded responses related to the resource.
	Embedded *AutoUserProvisioningRuleEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningRuleLinks `json:"_links"`
	// The following table describes the possible conditions for a rule.
	//
	// +--------------------------+-------------------------+-------------------------+
	// |     Group Selection      |     Rule Condition      |       Description       |
	// +==========================+=========================+=========================+
	// | This group               |                         | User must belong to the |
	// |                          |                         | specified group.        |
	// |                          | {"user.groups":{"$eq":" |                         |
	// |                          | Admin"}}                |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ANY of these groups      |                         | User must belong to at  |
	// |                          |                         | least one of the        |
	// |                          | {"user.groups":{"$in":[ | specified groups.       |
	// |                          | "Admin", "Eng",         |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ALL of these groups      |                         | User must belong to all |
	// |                          |                         | the specified groups.   |
	// |                          | {"user.groups":{"$all": |                         |
	// |                          | ["Admin", "Eng",        |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS this      |                         | User's group must       |
	// | keyword                  |                         | contain the specified   |
	// |                          | {"user.groups":{"$conta | keyword.                |
	// |                          | ins":{"$in":["Admin"]}} |                         |
	// |                          | }                       |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ANY of    |                         | User's group must       |
	// | these keywords           |                         | contain at least one of |
	// |                          | {"user.groups":{"$conta | the specified keywords. |
	// |                          | ins":{"$in":["Admin",   |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ALL of    |                         | User's group must       |
	// | these keywords           |                         | contain all the         |
	// |                          | {"user.groups":{"$conta | specified keywords.     |
	// |                          | ins":{"$all":["Admin",  |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	//
	Condition *string `json:"condition"`
	// Unique name assigned to the rule.
	Name *string `json:"name"`
	// Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.
	Provision *RuleProvision `json:"provision"`
	// The Clumio-assigned ID of the rule.
	RuleId *string `json:"rule_id"`
}

UpdateAutoUserProvisioningRuleResponse represents a custom type struct for Success

type UpdateAutoUserProvisioningRuleV1Request added in v0.3.0

type UpdateAutoUserProvisioningRuleV1Request struct {
	// The following table describes the possible conditions for a rule.
	//
	// +--------------------------+-------------------------+-------------------------+
	// |     Group Selection      |     Rule Condition      |       Description       |
	// +==========================+=========================+=========================+
	// | This group               |                         | User must belong to the |
	// |                          |                         | specified group.        |
	// |                          | {"user.groups":{"$eq":" |                         |
	// |                          | Admin"}}                |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ANY of these groups      |                         | User must belong to at  |
	// |                          |                         | least one of the        |
	// |                          | {"user.groups":{"$in":[ | specified groups.       |
	// |                          | "Admin", "Eng",         |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | ALL of these groups      |                         | User must belong to all |
	// |                          |                         | the specified groups.   |
	// |                          | {"user.groups":{"$all": |                         |
	// |                          | ["Admin", "Eng",        |                         |
	// |                          | "Sales"]}}              |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS this      |                         | User's group must       |
	// | keyword                  |                         | contain the specified   |
	// |                          | {"user.groups":{"$conta | keyword.                |
	// |                          | ins":{"$in":["Admin"]}} |                         |
	// |                          | }                       |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ANY of    |                         | User's group must       |
	// | these keywords           |                         | contain at least one of |
	// |                          | {"user.groups":{"$conta | the specified keywords. |
	// |                          | ins":{"$in":["Admin",   |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	// | Group CONTAINS ALL of    |                         | User's group must       |
	// | these keywords           |                         | contain all the         |
	// |                          | {"user.groups":{"$conta | specified keywords.     |
	// |                          | ins":{"$all":["Admin",  |                         |
	// |                          | "Eng", "Sales"]}}}      |                         |
	// |                          |                         |                         |
	// |                          |                         |                         |
	// +--------------------------+-------------------------+-------------------------+
	//
	Condition *string `json:"condition"`
	// Unique name assigned to the rule.
	Name *string `json:"name"`
	// Specifies the role and the organizational units to be assigned to the user subject to the rule criteria.
	Provision *RuleProvision `json:"provision"`
}

UpdateAutoUserProvisioningRuleV1Request represents a custom type struct

type UpdateAutoUserProvisioningSettingResponse added in v0.3.0

type UpdateAutoUserProvisioningSettingResponse struct {
	// URLs to pages related to the resource.
	Links *AutoUserProvisioningSettingLinks `json:"_links"`
	// Whether auto user provisioning is enabled or not.
	IsEnabled *bool `json:"is_enabled"`
}

UpdateAutoUserProvisioningSettingResponse represents a custom type struct for Success

type UpdateAutoUserProvisioningSettingV1Request added in v0.3.0

type UpdateAutoUserProvisioningSettingV1Request struct {
	// Whether auto user provisioning is enabled or not.
	IsEnabled *bool `json:"is_enabled"`
}

UpdateAutoUserProvisioningSettingV1Request represents a custom type struct

type UpdateAwsConnectionV1Request

type UpdateAwsConnectionV1Request struct {
	// An optional, user-provided description for this connection.
	Description *string `json:"description"`
}

UpdateAwsConnectionV1Request represents a custom type struct

type UpdateConsolidatedAlertResponse

type UpdateConsolidatedAlertResponse struct {
	// URLs to pages related to the resource.
	Links *ConsolidatedAlertLinks `json:"_links"`
	// The number of currently active individual alerts associated with the consolidated alert.
	ActiveEntityCount *int64 `json:"active_entity_count"`
	// The issue that generated the alert. Each alert cause is associated with an alert type.
	Cause *string `json:"cause"`
	// The number of cleared individual alerts associated with the consolidated alert.
	ClearedEntityCount *int64 `json:"cleared_entity_count"`
	// The timestamp of when the consolidated alert was cleared, if ever. Represented in RFC-3339 format. If this alert has not been cleared, this field will have a value of `null`.
	// A consolidated alert goes into "cleared" status when all of its associated individual alerts are in "cleared" status or when a Clumio user manually clears it.
	ClearedTimestamp *string `json:"cleared_timestamp"`
	// Additional information about the consolidated alert.
	Details *ConsolidatedAlertDetails `json:"details"`
	// The Clumio-assigned ID of the consolidated alert.
	Id *string `json:"id"`
	// A record of user-provided information about the alert.
	Notes *string `json:"notes"`
	// The entity associated with or affected by the alert.
	ParentEntity *ConsolidatedAlertParentEntity `json:"parent_entity"`
	// The timestamp of when the consolidated alert was initially raised. Represented in RFC-3339 format.
	RaisedTimestamp *string `json:"raised_timestamp"`
	// The alert severity level. Values include "error" and "warning".
	Severity *string `json:"severity"`
	// The consolidated alert status. A consolidated alert is in "active" status if one or more of its associated individual alerts is in "active" status.
	// A consolidated alert goes into "cleared" status when all of its associated individual alerts are in "cleared" status or when a Clumio user manually clears it.
	Status *string `json:"status"`
	// The general alert category. An alert type may be associated with multiple alert causes. Examples of alert types include "tag_conflict" and "policy_violated".
	// Refer to the Alert Type table for a complete list of alert types.
	ClumioType *string `json:"type"`
	// The timestamp of when the consolidated alert was last updated. Represented in RFC-3339 format.
	// Raising a new individual alert will update its associated consolidated alert.
	UpdatedTimestamp *string `json:"updated_timestamp"`
}

UpdateConsolidatedAlertResponse represents a custom type struct for Success

type UpdateConsolidatedAlertV1Request

type UpdateConsolidatedAlertV1Request struct {
	// A record of user-provided information about the alert. The note must be less than 1024 characters in length. Adding a new note overwrites any existing notes.
	Notes *string `json:"notes"`
	// Manually clears an active alert. To clear the active alert, set the parameter to "cleared". Once an alert is cleared,
	// the status of the alert changes from "active" to "cleared".
	// If the alert is already in "cleared" status, this action is ignored.
	// An alert that is in "cleared" status cannot be changed to "active" status.
	Status *string `json:"status"`
}

UpdateConsolidatedAlertV1Request represents a custom type struct

type UpdateEntities

type UpdateEntities struct {
	// entityModel denotes the entityModel
	Add []*EntityModel `json:"add"`
	// entityModel denotes the entityModel
	Remove []*EntityModel `json:"remove"`
}

UpdateEntities represents a custom type struct. Updates to the entities in the organizational unit.

type UpdateGeneralSettingsV2Request

type UpdateGeneralSettingsV2Request struct {
	// The length of time before a user is logged out of the Clumio system due to inactivity. Measured in seconds.
	// The valid range is between `600` seconds (10 minutes) and `3600` seconds (60 minutes).
	// If not configured, the value defaults to `900` seconds (15 minutes).
	AutoLogoutDuration *int64 `json:"auto_logout_duration"`
	// The designated range of IP addresses that are allowed to access the Clumio REST API.
	// API requests that originate from outside this list will be blocked.
	// The IP address of the server from which this request is being made must be in this list; otherwise, the request will fail.
	// Set the parameter to individual IP addresses and/or a range of IP addresses in CIDR notation.
	// For example, `["193.168.1.0/24", "193.172.1.1"]`.
	// If not configured, the value defaults to ["0.0.0.0/0"] meaning all addresses will be allowed.
	IpAllowlist []*string `json:"ip_allowlist"`
	// The grouping criteria for each datasource type.
	// These can only be edited for datasource types which do not have any
	// organizational units configured.
	OrganizationalUnitDataGroups *OUGroupingCriteria `json:"organizational_unit_data_groups"`
	// The length of time a user password is valid before it must be changed. Measured in seconds.
	// The valid range is between `2592000` seconds (30 days) and `15552000` seconds (180 days).
	// If not configured, the value defaults to `7776000` seconds (90 days).
	PasswordExpirationDuration *int64 `json:"password_expiration_duration"`
}

UpdateGeneralSettingsV2Request represents a custom type struct

type UpdateIndividualAlertV1Request

type UpdateIndividualAlertV1Request struct {
	// A record of information about the alert. The note must be less than 1024 characters in length. Adding a new note overwrites any existing notes.
	Notes *string `json:"notes"`
	// Manually clears an active alert. To clear the alert, set to "cleared"`". Once an alert is cleared,
	// the status of the alert changes from "active" to "cleared".
	// If the alert is already in "cleared" status, this action is ignored.
	// An alert that is in "cleared" status cannot be changed to "active" status.
	Status *string `json:"status"`
}

UpdateIndividualAlertV1Request represents a custom type struct

type UpdateManagementGroupResponse

type UpdateManagementGroupResponse struct {
	// URLs to pages related to the resource.
	Links *ManagementGroupLinks `json:"_links"`
	// The Clumio-assigned ID of the management group.
	Id *string `json:"id"`
	// The name of the management group.
	Name *string `json:"name"`
	// The type of the management group. Possible values include `on_prem`.
	ClumioType *string `json:"type"`
	// The Clumio-assigned ID of the vCenter server associated with the management group.
	// All management groups are associated with a vCenter server.
	VcenterId *string `json:"vcenter_id"`
}

UpdateManagementGroupResponse represents a custom type struct for Success

type UpdateManagementGroupV1Request

type UpdateManagementGroupV1Request struct {
	// Determines whether backups are allowed to occur across different subgroups or cloud connectors.
	BackupAcrossSubgroups *bool `json:"backup_across_subgroups"`
	// The name of the management group.
	Name *string `json:"name"`
}

UpdateManagementGroupV1Request represents a custom type struct

type UpdateManagementSubgroupV1Request

type UpdateManagementSubgroupV1Request struct {
	// The name of the management subgroup.
	Name *string `json:"name"`
}

UpdateManagementSubgroupV1Request represents a custom type struct

type UpdatePolicyDefinitionV1Request

type UpdatePolicyDefinitionV1Request struct {
	// The status of the policy.
	// Refer to the Policy Activation Status table for a complete list of policy statuses.
	ActivationStatus *string `json:"activation_status"`
	// The created time of the policy in unix time.
	CreatedTime *int64 `json:"created_time"`
	// The user-provided name of the policy.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Operations []*PolicyOperation `json:"operations"`
	// The Clumio-assigned ID of the organizational unit associated with the policy.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The timezone for the policy.
	Timezone *string `json:"timezone"`
	// The updated time of the policy in unix time.
	UpdatedTime *int64 `json:"updated_time"`
}

UpdatePolicyDefinitionV1Request represents a custom type struct

type UpdatePolicyResponse

type UpdatePolicyResponse struct {
	// If the `embed` query parameter is set, displays the responses of the related resource,
	// as defined by the embeddable link specified.
	Embedded *PolicyEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *PolicyLinks `json:"_links"`
	// The status of the policy.
	// Refer to the Policy Activation Status table for a complete list of policy statuses.
	ActivationStatus *string `json:"activation_status"`
	// The Clumio-assigned IDs of the organizational units to whom the policy has been assigned.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// The created time of the policy in unix time.
	CreatedTime *int64 `json:"created_time"`
	// The Clumio-assigned ID of the policy.
	Id *string `json:"id"`
	// The following table describes the possible lock statuses of a policy.
	//
	// +----------+-------------------------------------------------------------------+
	// |  Status  |                            Description                            |
	// +==========+===================================================================+
	// | unlocked | Policies are unlocked until an update or deletion task is queued. |
	// +----------+-------------------------------------------------------------------+
	// | updating | During a policy edit, concurrent edits or deletion requests will  |
	// |          | be rejected.                                                      |
	// +----------+-------------------------------------------------------------------+
	// | deleting | During policy deletion, concurrent edits or deletion requests     |
	// |          | will be rejected.                                                 |
	// +----------+-------------------------------------------------------------------+
	//
	LockStatus *string `json:"lock_status"`
	// The user-provided name of the policy.
	Name *string `json:"name"`
	// TODO: Add struct field description
	Operations []*PolicyOperation `json:"operations"`
	// The Clumio-assigned ID of the organizational unit associated with the policy.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The Clumio-assigned ID of the task generated by this request.
	TaskId *string `json:"task_id"`
	// The timezone for the policy.
	Timezone *string `json:"timezone"`
	// The updated time of the policy in unix time.
	UpdatedTime *int64 `json:"updated_time"`
}

UpdatePolicyResponse represents a custom type struct for Success

type UpdatePolicyRuleV1Request

type UpdatePolicyRuleV1Request struct {
	// An action to be applied subject to the rule criteria.
	Action *RuleAction `json:"action"`
	// The following table describes the possible conditions for a rule.
	//
	// +-----------------------+---------------------------+--------------------------+
	// |         Field         |      Rule Condition       |       Description        |
	// +=======================+===========================+==========================+
	// | aws_account_native_id | $eq, $in                  | Denotes the AWS account  |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$eq":"111111111111"}} |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_account_native_id" |
	// |                       |                           | :{"$in":["111111111111", |
	// |                       |                           | "222222222222"]}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_region            | $eq, $in                  | Denotes the AWS region   |
	// |                       |                           | to conditionalize on     |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$eq":"us |
	// |                       |                           | -west-2"}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_region":{"$in":["u |
	// |                       |                           | s-west-2", "us-          |
	// |                       |                           | east-1"]}}               |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | aws_tag               | $eq, $in, $all, $contains | Denotes the AWS tag(s)   |
	// |                       |                           | to conditionalize on.    |
	// |                       |                           | Max 100 tags allowed in  |
	// |                       |                           | each rule                |
	// |                       |                           | and tag key can be upto  |
	// |                       |                           | 128 characters and value |
	// |                       |                           | can be upto 256          |
	// |                       |                           | characters long.         |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$eq":{"key" |
	// |                       |                           | :"Environment",          |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$in":[{"key |
	// |                       |                           | ":"Environment",         |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$all":[{"ke |
	// |                       |                           | y":"Environment",        |
	// |                       |                           | "value":"Prod"},         |
	// |                       |                           | {"key":"Hello",          |
	// |                       |                           | "value":"World"}]}}      |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"aws_tag":{"$contains": |
	// |                       |                           | {"key":"Environment",    |
	// |                       |                           | "value":"Prod"}}}        |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	// | entity_type           | $eq, $in                  | Denotes the AWS entity   |
	// |                       |                           | type to conditionalize   |
	// |                       |                           | on. (Required)           |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$eq":"a |
	// |                       |                           | ws_rds_instance"}}       |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// |                       |                           | {"entity_type":{"$in":[" |
	// |                       |                           | aws_rds_instance",       |
	// |                       |                           | "aws_ebs_volume", "aws_e |
	// |                       |                           | c2_instance","aws_dynamo |
	// |                       |                           | db_table",               |
	// |                       |                           | "aws_rds_cluster"]}}     |
	// |                       |                           |                          |
	// |                       |                           |                          |
	// +-----------------------+---------------------------+--------------------------+
	//
	Condition *string `json:"condition"`
	// Name of the rule. Max 100 characters.
	Name *string `json:"name"`
	// A priority relative to other rules.
	Priority *RulePriority `json:"priority"`
}

UpdatePolicyRuleV1Request represents a custom type struct

type UpdateProtectionGroupResponse added in v0.1.2

type UpdateProtectionGroupResponse struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *ProtectionGroupVersionLinks `json:"_links"`
	// Number of buckets
	BucketCount *int64 `json:"bucket_count"`
	// The following table describes the possible conditions for a bucket to be
	// automatically added to a protection group.
	//
	// +---------+----------------+---------------------------------------------------+
	// |  Field  | Rule Condition |                    Description                    |
	// +=========+================+===================================================+
	// | aws_tag | $eq            | Denotes the AWS tag(s) to conditionalize on       |
	// |         |                |                                                   |
	// |         |                | {"aws_tag":{"$eq":{"key":"Environment",           |
	// |         |                | "value":"Prod"}}}                                 |
	// |         |                |                                                   |
	// |         |                |                                                   |
	// +---------+----------------+---------------------------------------------------+
	//
	BucketRule *string `json:"bucket_rule"`
	// Creation time of the protection group in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The user-assigned description of the protection group.
	Description *string `json:"description"`
	// The Clumio-assigned ID of the protection group.
	Id *string `json:"id"`
	// Time of the last backup in RFC-3339 format.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// Time of the last successful continuous backup in RFC-3339 format.
	LastContinuousBackupTimestamp *string `json:"last_continuous_backup_timestamp"`
	// Time of the last discover sync in RFC-3339 format.
	LastDiscoverSyncTimestamp *string `json:"last_discover_sync_timestamp"`
	// Modified time of the protection group in RFC-3339 format.
	ModifiedTimestamp *string `json:"modified_timestamp"`
	// The user-assigned name of the protection group.
	Name *string `json:"name"`
	// ObjectFilter
	// defines which objects will be backed up.
	ObjectFilter *ObjectFilter `json:"object_filter"`
	// The Clumio-assigned ID of the organizational unit associated with the Protection Group.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// Cumulative count of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpObjectCount *int64 `json:"total_backed_up_object_count"`
	// Cumulative size of all unexpired objects in each backup (any new or updated since
	// the last backup) that have been backed up as part of this protection group
	TotalBackedUpSizeBytes *int64 `json:"total_backed_up_size_bytes"`
	// Version of the protection group. The version number is incremented every time
	// a change is made to the protection group.
	Version *int64 `json:"version"`
}

UpdateProtectionGroupResponse represents a custom type struct for Success

type UpdateProtectionGroupV1Request added in v0.1.2

type UpdateProtectionGroupV1Request struct {
	// The following table describes the possible conditions for a bucket to be
	// automatically added to a protection group.
	//
	// +---------+----------------+---------------------------------------------------+
	// |  Field  | Rule Condition |                    Description                    |
	// +=========+================+===================================================+
	// | aws_tag | $eq            | Denotes the AWS tag(s) to conditionalize on       |
	// |         |                |                                                   |
	// |         |                | {"aws_tag":{"$eq":{"key":"Environment",           |
	// |         |                | "value":"Prod"}}}                                 |
	// |         |                |                                                   |
	// |         |                |                                                   |
	// +---------+----------------+---------------------------------------------------+
	//
	BucketRule *string `json:"bucket_rule"`
	// The user-assigned description of the protection group.
	Description *string `json:"description"`
	// The user-assigned name of the protection group.
	Name *string `json:"name"`
	// ObjectFilter
	// defines which objects will be backed up.
	ObjectFilter *ObjectFilter `json:"object_filter"`
}

UpdateProtectionGroupV1Request represents a custom type struct

type UpdateRuleResponse

type UpdateRuleResponse struct {
	// Embedded responses related to the resource.
	Links *ReadTaskHateoasLinks `json:"_links"`
	// The Clumio-assigned ID of the preview generated by this request. Only valid if
	// `execution_type` is set to `dryrun`.
	PreviewId *string `json:"preview_id"`
	// A rule applies an action subject to a condition criteria.
	Rule *Rule `json:"rule"`
	// The Clumio-assigned ID of the task generated by this request.
	TaskId *string `json:"task_id"`
}

UpdateRuleResponse represents a custom type struct for Success

type UpdateSubgroupResponse

type UpdateSubgroupResponse struct {
	// URLs to pages related to the resource.
	Links *SubgroupLinks `json:"_links"`
	// The number of cloud connectors in this subgroup, aggregated by their status.
	CloudConnectorCountByStatus *CloudConnectorCountByStatus `json:"cloud_connector_count_by_status"`
	// The overall health of cloud connectors in this subgroup. Possible values include: 'healthy', indicating
	// that all cloud connectors in the subgroup are connected; 'degraded' indicating that one or more cloud
	// connectors in the subgroup have connection issues; `none`, indicating that no cloud connectors are in the subgroup.
	CloudConnectorStatus *string `json:"cloud_connector_status"`
	// The Clumio-assigned ID of the management group associated with this subgroup.
	GroupId *string `json:"group_id"`
	// The Clumio-assigned ID of the management subgroup.
	Id *string `json:"id"`
	// The name of the management subgroup.
	Name *string `json:"name"`
}

UpdateSubgroupResponse represents a custom type struct for Success

type UpdateTaskResponse

type UpdateTaskResponse struct {
	// URLs to pages related to the resource.
	Links *TaskLinks `json:"_links"`
	// The task category. Examples of task types include "backup", "restore", "snapshot", and "system".
	//
	// +-------------------+----------------------------------------------------------+
	// |     Category      |                       Description                        |
	// +===================+==========================================================+
	// | backup            | Encompasses all modes of backups. This does not include  |
	// |                   | in-account snapshots.                                    |
	// +-------------------+----------------------------------------------------------+
	// | restore           | Encompasses all modes of restores. This does not include |
	// |                   | restores of in-account snapshots.                        |
	// +-------------------+----------------------------------------------------------+
	// | snapshot          | Encompasses all modes of in-account snapshots.           |
	// +-------------------+----------------------------------------------------------+
	// | snapshot_restore  | Encompasses all modes of snapshot restores.              |
	// +-------------------+----------------------------------------------------------+
	// | system            | Encompasses a variety of system-initiated tasks, such as |
	// |                   | aws_rds_backup_target_setup and                          |
	// |                   | aws_ec2_instance_backup_indexing.                        |
	// +-------------------+----------------------------------------------------------+
	// | report_generation | Encompasses task types which generate reports, such as   |
	// |                   | activity_report_file_download.                           |
	// +-------------------+----------------------------------------------------------+
	// | management        | Encompasses user-initiated tasks which manage Clumio     |
	// |                   | resources, such as organizational_unit_update and        |
	// |                   | policy_update.                                           |
	// +-------------------+----------------------------------------------------------+
	//
	Category *string `json:"category"`
	// The timestamp of when the task was created. Represented in RFC-3339 format.
	CreatedTimestamp *string `json:"created_timestamp"`
	// The timestamp of when the task ended. If this task has not yet ended,
	// then this field has a value of `null`. Represented in RFC-3339 format.
	EndTimestamp *string `json:"end_timestamp"`
	// The task genre. A genre is a high-level collection of task categories.
	//
	// +----------------+-------------------------------------------------------------+
	// |     Genre      |                         Description                         |
	// +================+=============================================================+
	// | operational    | Encompasses all backup, restore, snapshot, and              |
	// |                | snapshot_restore tasks.                                     |
	// +----------------+-------------------------------------------------------------+
	// | administrative | Encompasses management, system, and report_generation       |
	// |                | tasks.                                                      |
	// +----------------+-------------------------------------------------------------+
	//
	Genre *string `json:"genre"`
	// The Clumio-assigned ID of the task.
	Id *string `json:"id"`
	// Determines whether or not this task can be aborted.
	// A task can be aborted if its status is either "queued" or "in_progress".
	// Tasks of certain types including
	// "vmware_vm_backup_indexing" and "aws_ebs_volume_backup_indexing" cannot be aborted.
	IsAbortable *bool `json:"is_abortable"`
	// The parent entity associated with the task.
	ParentEntity *TaskParentEntity `json:"parent_entity"`
	// The primary entity associated with the task.
	PrimaryEntity *TaskPrimaryEntity `json:"primary_entity"`
	// The percentage progress of task completion. Measured as an integer value between 0 and 100.
	ProgressPercentage *int64 `json:"progress_percentage"`
	// The timestamp of when the task started. If this task has not started yet,
	// then this field has a value of `null`. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// The task status. Examples of task statuses include, "queued", "in_progress", and "completed".
	// Refer to the Task Status table for a complete list of task statuses.
	Status *string `json:"status"`
	// The task type. Examples of task types include "vm_backup_seeding", "ebs_indexing", and "file_restore".
	// Refer to the Task Type table for a complete list of task types.
	ClumioType *string `json:"type"`
}

UpdateTaskResponse represents a custom type struct for Success

type UpdateTaskV1Request

type UpdateTaskV1Request struct {
	// The task status. Set this parameter to `aborting` to abort a task
	// that is in queue ("queued") or in progress ("in_progress").
	// Tasks with other statuses cannot be aborted.
	Status *string `json:"status"`
}

UpdateTaskV1Request represents a custom type struct

type UpdateUserAssignments

type UpdateUserAssignments struct {
	// List of user ids to assign this organizational unit.
	Add []*string `json:"add"`
	// List of user ids to un-assign this organizational unit.
	Remove []*string `json:"remove"`
}

UpdateUserAssignments represents a custom type struct. Updates to the user assignments.

type UpdateUserProfileV1Request

type UpdateUserProfileV1Request struct {
	// The full name of the user that is to replace the existing full name.
	// For example, enter the user's first name and last name.
	FullName *string `json:"full_name"`
}

UpdateUserProfileV1Request represents a custom type struct

type UpdateUserResponse

type UpdateUserResponse struct {
	// Embedded responses related to the resource.
	Embedded *UserEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *UserLinks `json:"_links"`
	// The list of organizational unit IDs assigned to the user.
	// This attribute will be available when reading a single user and not when listing users.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// Assigned Role for the user.
	AssignedRole *string `json:"assigned_role"`
	// The email address of the Clumio user.
	Email *string `json:"email"`
	// The first and last name of the Clumio user. The name appears in the User Management screen and is used to identify the user.
	FullName *string `json:"full_name"`
	// The Clumio-assigned ID of the Clumio user.
	Id *string `json:"id"`
	// The ID number of the user who sent the email invitation.
	Inviter *string `json:"inviter"`
	// Determines whether the user has activated their Clumio account.
	// If `true`, the user has activated the account.
	IsConfirmed *bool `json:"is_confirmed"`
	// Determines whether the user is enabled (in "Activated" or "Invited" status) in Clumio.
	// If `true`, the user is in "Activated" or "Invited" status in Clumio.
	// Users in "Activated" status can log in to Clumio.
	// Users in "Invited" status have been invited to log in to Clumio via an email invitation and the invitation
	// is pending acceptance from the user.
	// If `false`, the user has been manually suspended and cannot log in to Clumio
	// until another Clumio user reactivates the account.
	IsEnabled *bool `json:"is_enabled"`
	// The timestamp of when when the user was last active in the Clumio system. Represented in RFC-3339 format.
	LastActivityTimestamp *string `json:"last_activity_timestamp"`
	// The number of organizational units accessible to the user.
	OrganizationalUnitCount *int64 `json:"organizational_unit_count"`
}

UpdateUserResponse represents a custom type struct for Success

type UpdateUserV1Request

type UpdateUserV1Request struct {
	// Updates the role assigned to the user.
	// The available roles can be retrieved via the [GET /roles](#operation/list-roles) API.
	AssignedRole *string `json:"assigned_role"`
	// The full name of the user that is to replace the existing full name.
	// For example, enter the user's first name and last name.
	FullName *string `json:"full_name"`
	// If `true`, enables a user who has been disabled from Clumio,
	// returning the user to its previous "Activated" or "Invited" status. If `false`, disables a user from Clumio.
	// The user will not be able log in to Clumio until another Clumio user re-enables the account.
	IsEnabled *bool `json:"is_enabled"`
	// Updates to the organizational unit assignments.
	OrganizationalUnitAssignmentUpdates *EntityGroupAssignmetUpdates `json:"organizational_unit_assignment_updates"`
}

UpdateUserV1Request represents a custom type struct

type UserEmbedded

type UserEmbedded struct {
	// A description of the role.
	Description *string `json:"description"`
	// Unique name assigned to the role.
	Name *string `json:"name"`
}

UserEmbedded represents a custom type struct. Embedded responses related to the resource.

type UserHateoas

type UserHateoas struct {
	// Embedded responses related to the resource.
	Embedded *UserEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *UserLinks `json:"_links"`
	// The list of organizational unit IDs assigned to the user.
	// This attribute will be available when reading a single user and not when listing users.
	AssignedOrganizationalUnitIds []*string `json:"assigned_organizational_unit_ids"`
	// Assigned Role for the user.
	AssignedRole *string `json:"assigned_role"`
	// The email address of the Clumio user.
	Email *string `json:"email"`
	// The first and last name of the Clumio user. The name appears in the User Management screen and is used to identify the user.
	FullName *string `json:"full_name"`
	// The Clumio-assigned ID of the Clumio user.
	Id *string `json:"id"`
	// The ID number of the user who sent the email invitation.
	Inviter *string `json:"inviter"`
	// Determines whether the user has activated their Clumio account.
	// If `true`, the user has activated the account.
	IsConfirmed *bool `json:"is_confirmed"`
	// Determines whether the user is enabled (in "Activated" or "Invited" status) in Clumio.
	// If `true`, the user is in "Activated" or "Invited" status in Clumio.
	// Users in "Activated" status can log in to Clumio.
	// Users in "Invited" status have been invited to log in to Clumio via an email invitation and the invitation
	// is pending acceptance from the user.
	// If `false`, the user has been manually suspended and cannot log in to Clumio
	// until another Clumio user reactivates the account.
	IsEnabled *bool `json:"is_enabled"`
	// The timestamp of when when the user was last active in the Clumio system. Represented in RFC-3339 format.
	LastActivityTimestamp *string `json:"last_activity_timestamp"`
	// The number of organizational units accessible to the user.
	OrganizationalUnitCount *int64 `json:"organizational_unit_count"`
}

UserHateoas represents a custom type struct

type UserLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeleteUser *HateoasLink `json:"delete-user"`
	// A resource-specific HATEOAS link.
	UpdateUser *HateoasLink `json:"update-user"`
}

UserLinks represents a custom type struct. URLs to pages related to the resource.

type UserListEmbedded

type UserListEmbedded struct {
	// TODO: Add struct field description
	Items []*UserHateoas `json:"items"`
}

UserListEmbedded represents a custom type struct. Embedded responses related to the resource.

type UserListHateoasLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateUser *HateoasLink `json:"create-user"`
}

UserListHateoasLinks represents a custom type struct. URLs to pages related to the resource.

type VCenterComputeResource

type VCenterComputeResource struct {
	// URLs to pages related to the resource.
	Links *VCenterComputeResourceLinks `json:"_links"`
	// The Clumio-assigned ID of the item.
	Id *string `json:"id"`
	// IsCluster denotes whether the compute resource is a cluster.
	Iscluster *bool `json:"isCluster"`
	// IsDrsEnabled denotes whether the compute resource has DRS enabled.
	// NOTE: This is only applicable if "IsCluster" is true.
	Isdrsenabled *bool `json:"isDrsEnabled"`
	// The name of the compute resource.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the compute resource.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// TODO: Add struct field description
	Protectioninfo *ProtectionInfoDeprecated `json:"protectionInfo"`
	// ProtectedStatsDeprecated contains the compliance stats for policies which are protected along with
	// the unprotected policies count
	Vmstats *ProtectedStatsDeprecated `json:"vmStats"`
}

VCenterComputeResource represents a custom type struct

type VCenterComputeResourceLinks struct {
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

VCenterComputeResourceLinks represents a custom type struct. URLs to pages related to the resource.

type VCenterFolder

type VCenterFolder struct {
	// URLs to pages related to the resource.
	Links *VCenterFolderLinks `json:"_links"`
	// HasChildGroups denotes whether direct child folders exist.
	Haschildgroups *bool `json:"hasChildGroups"`
	// The Clumio-assigned ID of the item.
	Id *string `json:"id"`
	// IsRoot denotes whether this folder is a root (hidden) folder.
	Isroot *bool `json:"isRoot"`
	// Name of the folder.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the folder.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// TODO: Add struct field description
	Protectioninfo *ProtectionInfoDeprecated `json:"protectionInfo"`
	// ProtectedStatsDeprecated contains the compliance stats for policies which are protected along with
	// the unprotected policies count
	Vmstats *ProtectedStatsDeprecated `json:"vmStats"`
}

VCenterFolder represents a custom type struct

type VCenterFolderLinks struct {
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

VCenterFolderLinks represents a custom type struct. URLs to pages related to the resource.

type VMBackupHateoas

type VMBackupHateoas struct {
	// URLs to pages related to the resource.
	Links *VMBackupHateoasLinks `json:"_links"`
	// The reason that browsing is unavailable for the backup. Possible values include "file_limit_exceeded" and
	// "browsing_unavailable". If browse indexing is successful, then this field has a value of `null`.
	BrowsingFailedReason *string `json:"browsing_failed_reason"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center
	// associated with this backup.
	DatacenterId *string `json:"datacenter_id"`
	// The timestamp of when this backup expires. Represented in RFC-3339 format.
	ExpirationTimestamp *string `json:"expiration_timestamp"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the
	// host associated with this backup.
	HostId *string `json:"host_id"`
	// The Clumio-assigned ID of the backup.
	Id *string `json:"id"`
	// Determines whether browsing is available for the backup. If `true`, then browsing is available for the backup.
	IsBrowsable *bool `json:"is_browsable"`
	// TODO: Add struct field description
	Nics []*VMNicBackupModel `json:"nics"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the resource pool
	// associated with this backup.
	ResourcePoolId *string `json:"resource_pool_id"`
	// The timestamp of when this backup started. Represented in RFC-3339 format.
	StartTimestamp *string `json:"start_timestamp"`
	// VMTagWithCategoryModel
	// A tag associated with the VM.
	Tags []*VMTagWithCategoryModel `json:"tags"`
	// The IP address or FQDN of the vCenter server associated with this backup.
	// If a backup was initiated before 2020-06-30, when this field was introduced,
	// then this field has a value of `null`.
	VcenterEndpoint *string `json:"vcenter_endpoint"`
	// The Clumio-assigned ID of the vCenter associated with this backup.
	VcenterId *string `json:"vcenter_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the
	// VM folder associated with this backup.
	VmFolderId *string `json:"vm_folder_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the
	// VM associated with this backup.
	VmId *string `json:"vm_id"`
	// The name of the virtual machine associated with this backup.
	VmName *string `json:"vm_name"`
}

VMBackupHateoas represents a custom type struct

type VMBackupHateoasLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	RestoreVmwareVm *HateoasLink `json:"restore-vmware-vm"`
}

VMBackupHateoasLinks represents a custom type struct. URLs to pages related to the resource.

type VMBackupListEmbedded

type VMBackupListEmbedded struct {
	// TODO: Add struct field description
	Items []*VMBackupHateoas `json:"items"`
}

VMBackupListEmbedded represents a custom type struct. Embedded responses related to the resource.

type VMBackupListHateoasLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMBackupListHateoasLinks represents a custom type struct. URLs to pages related to the resource.

type VMComputeResourceFolderModel

type VMComputeResourceFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMComputeResourceFolderModel represents a custom type struct. The compute resource folder associated with this VM. If the VM is deleted, then this field has a value of `null`.

type VMComputeResourceModel

type VMComputeResourceModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the compute resource.
	Id *string `json:"id"`
	// The VMware-assigned name of the compute resource.
	Name *string `json:"name"`
}

VMComputeResourceModel represents a custom type struct. The compute resource from which the VM draws. If the VM is deleted, then `compute_resource.id` has a value of `null`.

type VMDatacenterFolderModel

type VMDatacenterFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMDatacenterFolderModel represents a custom type struct. The data center folder associated with this VM. If the VM is deleted, then this field has a value of `null`.

type VMDatacenterModel

type VMDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
	// The VMware-assigned name of this data center.
	Name *string `json:"name"`
}

VMDatacenterModel represents a custom type struct. The data center in which the VM resides. If the VM is deleted, then `datacenter.id` has a value of `null`.

type VMFolderModel

type VMFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
	// The VMware-assigned name of the folder.
	Name *string `json:"name"`
}

VMFolderModel represents a custom type struct. The VM folder containing the VM. If the VM is deleted, then `vm_folder.id` has a value of `null`.

type VMHostModel

type VMHostModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the host.
	Id *string `json:"id"`
	// Determines whether the host is a standalone host. If `true`, the host is a standalone host.
	IsStandalone *bool `json:"is_standalone"`
	// The VMware-assigned name of the host.
	Name *string `json:"name"`
}

VMHostModel represents a custom type struct. The host on which the VM resides. If the VM is deleted, then `host.id` and `host.is_standalone` have values of `null`. The `host.name` field may also have a value of `null`.

type VMNicBackupModel

type VMNicBackupModel struct {
	// Determines whether the NIC was connected to the network at the time of backup. If `true`, the NIC was connected to the network at the time of backup.
	IsConnected *bool `json:"is_connected"`
	// The media access control (MAC) address assigned to the NIC. The MAC address is assigned through the vSphere client.
	MacAddress *string `json:"mac_address"`
	// The network to which the NIC was attached.
	NetworkId *string `json:"network_id"`
}

VMNicBackupModel represents a custom type struct

type VMNicModel

type VMNicModel struct {
	// The MAC address of the NIC.
	MacAddress *string `json:"mac_address"`
	// The network associated with this NIC.
	Network *VMNicNetworkModel `json:"network"`
}

VMNicModel represents a custom type struct. The network interface card (NIC) attached to the VM.

type VMNicNetworkModel

type VMNicNetworkModel struct {
	// The VMware-assigned ID of this network.
	Id *string `json:"id"`
}

VMNicNetworkModel represents a custom type struct. The network associated with this NIC.

type VMNicRestore

type VMNicRestore struct {
	// The unique media access control (MAC) address assigned to the network interface card (NIC). The MAC address is assigned through the vSphere client.
	MacAddress *string `json:"mac_address"`
	// The network connection for the virtual NIC. The NIC is configured in the vSphere client. Use the [GET /datasources/vmware/vcenters/{vcenter_id}/networks](#operation/list-vmware-vcenter-networks) endpoint to fetch valid values.
	NetworkId *string `json:"network_id"`
	// Determines whether the restored VM should automatically connect to the specified network after a restore.
	// If `true`, the restored VM will automatically connect to the specified network after a restore.
	ShouldConnect *bool `json:"should_connect"`
}

VMNicRestore represents a custom type struct

type VMResourcePoolModel

type VMResourcePoolModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the resource pool.
	Id *string `json:"id"`
	// Determines whether the resource pool is the default, hidden resource pool.
	IsRoot *bool `json:"is_root"`
	// The VMware-assigned name of the resource pool.
	Name *string `json:"name"`
}

VMResourcePoolModel represents a custom type struct. The resource pool from which the VM draws. If the VM is deleted, then `resource_pool.id` and `resource_pool.is_root` have values of `null`.

type VMRestoreOptions

type VMRestoreOptions struct {
	// Determines whether a VM rapid recovery should be attempted or not.
	// As a part of the rapid recovery, by default the Clumio backup service
	// attempts the following Reverse Change Block Tracking (RCBT) operation. It
	// retrieves the blocks changed since the backup was taken and applies them
	// into a clone of the original VM to rollback the VM to the previous point
	// in time. As a result typically it is much faster to restore a VM using
	// rapid recovery RCBT. However if the clone operation is not desired to be
	// performed for some reason, then rapid recovery RCBT can be turned off
	// using this field.
	// It is applicable to both in-place restore and restore to a new VM.
	// If it is not set, then the behavior is same as setting it to true.
	// If true or unset, rapid recovery is attempted first. If rapid recovery
	// fails, then a full VM restore is performed.
	// If false, rapid recovery is not attempted.
	AttemptRapidRecovery *bool `json:"attempt_rapid_recovery"`
	// Determines whether to preserve the original data by cloning the existing
	// VM before performing an in-place restore.
	// If `"restore_in_place":false`, then this parameter is ignored.
	// If true, the original data is preserved by creating a clone of the VM.
	// If false, a clone is not created. The original data in the source VM may
	// get over-written by the restored data.
	CloneSourceVm *bool `json:"clone_source_vm"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the VMFS
	// datastore to be used as the destination for the cloned VM.
	// Use the [GET /datasources/vmware/vcenters/{vcenter_id}/datastores](#operation/list-vmware-vcenter-datastores) endpoint to fetch valid values.
	// This field is required only if `"clone_source_vm":true`.
	ClonedVmDatastoreId *string `json:"cloned_vm_datastore_id"`
	// The name given to the cloned VM (see clone_source_vm parameter).
	// The VM name cannot exceed 80 characters in length and must follow VMware
	// VM naming conventions.
	// This field is required only if `"clone_source_vm":true`.
	ClonedVmName *string `json:"cloned_vm_name"`
	// Determines whether the restore should overwrite the existing VM i.e.
	// perform an in-place restore or create a new VM for restore.
	// If true, the existing VM is used for the restore. In this case if the VM
	// is already deleted, the restore will fail.
	// If false, a new VM is created for the restore. In this case if the VM
	// is already deleted, the restore will still proceed.
	RestoreInPlace *bool `json:"restore_in_place"`
}

VMRestoreOptions represents a custom type struct. Additional VM restore options.

type VMRestoreSource

type VMRestoreSource struct {
	// The Clumio-assigned ID of the backup to be restored. Use the [GET /backups/vmware/vms](#operation/list-backup-vmware-vms) endpoint to fetch valid values.
	BackupId *string `json:"backup_id"`
}

VMRestoreSource represents a custom type struct. The VM backup to be restored.

type VMRestoreTag

type VMRestoreTag struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag.
	TagId *string `json:"tag_id"`
}

VMRestoreTag represents a custom type struct

type VMRestoreTarget

type VMRestoreTarget struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center to be used as the restore destination. Use the [GET /datasources/vmware/vcenters/{vcenter_id}/datacenters](#operation/list-vmware-vcenter-datacenters) endpoint to fetch valid values.
	DatacenterId *string `json:"datacenter_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the VMFS datastore to be used as the restore destination. Use the [GET /datasources/vmware/vcenters/{vcenter_id}/datastores](#operation/list-vmware-vcenter-datastores) endpoint to fetch valid values.
	// While performing an in-place restore, this parameter is optional.
	// If `"options.restore_in_place":false`, then this parameter is required.
	DatastoreId *string `json:"datastore_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the vSphere host to be used as the restore destination. Use the [GET /datasources/vmware/vcenters/{vcenter_id}/hosts](#operation/list-vmware-vcenter-hosts) endpoint to fetch valid values.
	// If provided, the specified host (`host_id`) must belong to a compute resource that is the parent of the specified resource pool (`resource_pool_id`).
	// If not provided, the VMware Distributed Resource Scheduler (DRS) will automatically select a host that belongs to a compute resource that is the parent of the specified resource pool (`resource_pool_id`).
	HostId *string `json:"host_id"`
	// TODO: Add struct field description
	NetworkOptions []*VMNicRestore `json:"network_options"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the VM folder to be used as the restore destination. Use the [GET /datasources/vmware/vcenters/{vcenter_id}/folders](#operation/list-vmware-vcenter-folders) endpoint to fetch valid values.
	ParentVmFolderId *string `json:"parent_vm_folder_id"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the resource pool to be used as the restore destination. Use the [GET /datasources/vmware/vcenters/{vcenter_id}/resource-pools](#operation/list-vmware-vcenter-resource-pools) endpoint to fetch valid values.
	ResourcePoolId *string `json:"resource_pool_id"`
	// Determines whether the VM should remain powered on after the restore. If `true`, the VM will remain powered on after the restore. Users may choose to power off a VM to change the network configurations.
	ShouldPowerOn *bool `json:"should_power_on"`
	// TODO: Add struct field description
	Tags []*VMRestoreTag `json:"tags"`
	// The Clumio-assigned ID of the vCenter to be used as the restore destination.
	VcenterId *string `json:"vcenter_id"`
	// The name given to the restored VM. The VM name cannot exceed 80 characters in length and must follow VMware VM naming conventions.
	VmName *string `json:"vm_name"`
}

VMRestoreTarget represents a custom type struct. The configuration of the VM to be restored.

type VMTagWithCategoryModel

type VMTagWithCategoryModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag category.
	CategoryId *string `json:"category_id"`
	// The VMware-assigned name of the tag category.
	CategoryName *string `json:"category_name"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the tag.
	Id *string `json:"id"`
	// The VMware-assigned name of the tag.
	Name *string `json:"name"`
	// The Clumio-assigned ID of the organizational unit associated with the tag.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
}

VMTagWithCategoryModel represents a custom type struct. VMTagWithCategoryModel A tag associated with the VM.

type VMwareComputeResourceComplianceStatsLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareComputeResourceComplianceStatsLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareDatacenterFolderIDModel

type VMwareDatacenterFolderIDModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareDatacenterFolderIDModel represents a custom type struct. The data center folder in which the data center resides.

type VMwareDatacenterStatsLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareDatacenterStatsLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareDatastoreLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareDatastoreLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareDatastoreListEmbedded

type VMwareDatastoreListEmbedded struct {
	// VMwareDatastoreWithETag to support etag string to be calculated
	Items []*VMwareDatastoreWithETag `json:"items"`
}

VMwareDatastoreListEmbedded represents a custom type struct. Embedded responses related to the resource.

type VMwareDatastoreListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareDatastoreListLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareDatastoreWithETag

type VMwareDatastoreWithETag struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareDatastoreLinks `json:"_links"`
	// TODO: Add struct field description
	ComputeResources []*ComputeResourceIDModel `json:"compute_resources"`
	// The data center in which this datastore resides.
	Datacenter *VMwareVCenterDatastoreDatacenterModel `json:"datacenter"`
	// VMwareVCenterDatastoreFolderModel
	// The datastore folder in which this datastore resides.
	DatastoreFolder *VMwareVCenterDatastoreFolderModel `json:"datastore_folder"`
	// The file system format used for the datastore. Refer to the Supported Datastore Types section for a complete list of datastore types.
	DatastoreType *string `json:"datastore_type"`
	// TODO: Add struct field description
	Hosts []*HostIDModel `json:"hosts"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the datastore.
	Id *string `json:"id"`
	// Determines whether the datastore is shared across multiple hosts. If `true`, the datastore is a multi-host datastore.
	IsMultiHost *bool `json:"is_multi_host"`
	// Determines whether the datastore can be used as a restore destination. If `true`, the datastore can be used as a restore destination and backups can be restored to the datastore.
	IsSupported *bool `json:"is_supported"`
	// The VMware-assigned name of this datastore.
	Name *string `json:"name"`
}

VMwareDatastoreWithETag represents a custom type struct. VMwareDatastoreWithETag to support etag string to be calculated

type VMwareDsGroupingCriteria

type VMwareDsGroupingCriteria struct {
	// Determines whether or not this data group is editable. If false, then an
	// organizational unit uses this data group.
	// To edit this data group, all organizational units using it must be deleted.
	IsEditable *bool `json:"is_editable"`
	// The entity type used to group organizational units for VMware resources.
	//
	// +--------------------------------+---------------------------------+
	// |         vmware_vcenter         |         VMware vCenter.         |
	// +================================+=================================+
	// | vmware_vm_folder               | VMware VM folder.               |
	// +--------------------------------+---------------------------------+
	// | vmware_datacenter_folder       | VMware datacenter folder.       |
	// +--------------------------------+---------------------------------+
	// | vmware_compute_resource_folder | VMware compute resource folder. |
	// +--------------------------------+---------------------------------+
	// | vmware_datacenter              | VMware datacenter.              |
	// +--------------------------------+---------------------------------+
	// | vmware_compute_resource        | VMware compute resource.        |
	// +--------------------------------+---------------------------------+
	// | vmware_vm                      | VMware VM.                      |
	// +--------------------------------+---------------------------------+
	// | vmware_tag                     | VMware tag.                     |
	// +--------------------------------+---------------------------------+
	//
	ClumioType *string `json:"type"`
}

VMwareDsGroupingCriteria represents a custom type struct. The entity type used to group organizational units for VMware resources.

type VMwareFolderStatsLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareFolderStatsLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareResourcePoolComputeResourceModel

type VMwareResourcePoolComputeResourceModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the compute resource.
	Id *string `json:"id"`
}

VMwareResourcePoolComputeResourceModel represents a custom type struct. The compute resource that the resource pool comprises.

type VMwareResourcePoolParentModel

type VMwareResourcePoolParentModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the vCenter object.
	Id *string `json:"id"`
}

VMwareResourcePoolParentModel represents a custom type struct. The vCenter object that is the parent of the resource pool.

type VMwareRootComputeResourceFolderIDModel

type VMwareRootComputeResourceFolderIDModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareRootComputeResourceFolderIDModel represents a custom type struct. The hidden root compute resource folder of the data center.

type VMwareRootVMFolderIDModel

type VMwareRootVMFolderIDModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareRootVMFolderIDModel represents a custom type struct. The hidden root virtual machine folder of the data center.

type VMwareTagStatsLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareTagStatsLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareVCenterComputeResourceDatacenterModel

type VMwareVCenterComputeResourceDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
	// The VMware-assigned name of this data center.
	Name *string `json:"name"`
}

VMwareVCenterComputeResourceDatacenterModel represents a custom type struct. The data center associated with this compute resource.

type VMwareVCenterComputeResourceFolderModel

type VMwareVCenterComputeResourceFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareVCenterComputeResourceFolderModel represents a custom type struct. The compute resource folder in which the compute resource resides.

type VMwareVCenterDatastoreDatacenterModel

type VMwareVCenterDatastoreDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
}

VMwareVCenterDatastoreDatacenterModel represents a custom type struct. The data center in which this datastore resides.

type VMwareVCenterDatastoreFolderModel

type VMwareVCenterDatastoreFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareVCenterDatastoreFolderModel represents a custom type struct. VMwareVCenterDatastoreFolderModel The datastore folder in which this datastore resides.

type VMwareVCenterFolderDatacenterModel

type VMwareVCenterFolderDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
}

VMwareVCenterFolderDatacenterModel represents a custom type struct. The data center associated with this folder.

type VMwareVCenterHostComputeResourceModel

type VMwareVCenterHostComputeResourceModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the compute resource.
	Id *string `json:"id"`
}

VMwareVCenterHostComputeResourceModel represents a custom type struct. The VMware compute resource representing the host.

type VMwareVCenterHostDatacenterModel

type VMwareVCenterHostDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
}

VMwareVCenterHostDatacenterModel represents a custom type struct. The data center in which the host resides.

type VMwareVCenterNetworkDatacenterModel

type VMwareVCenterNetworkDatacenterModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the data center.
	Id *string `json:"id"`
}

VMwareVCenterNetworkDatacenterModel represents a custom type struct. The data center associated with this network.

type VMwareVCenterNetworkFolderModel

type VMwareVCenterNetworkFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareVCenterNetworkFolderModel represents a custom type struct. The network folder associated with this network.

type VMwareVCenterNetworkLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareVCenterNetworkLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareVCenterNetworkListEmbedded

type VMwareVCenterNetworkListEmbedded struct {
	// VMwareVCenterNetworkWithETag to support etag string to be calculated.
	Items []*VMwareVCenterNetworkWithETag `json:"items"`
}

VMwareVCenterNetworkListEmbedded represents a custom type struct. Embedded responses related to the resource.

type VMwareVCenterNetworkListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VMwareVCenterNetworkListLinks represents a custom type struct. URLs to pages related to the resource.

type VMwareVCenterNetworkWithETag

type VMwareVCenterNetworkWithETag struct {
	// The ETag value.
	Etag *string `json:"_etag"`
	// URLs to pages related to the resource.
	Links *VMwareVCenterNetworkLinks `json:"_links"`
	// The data center associated with this network.
	Datacenter *VMwareVCenterNetworkDatacenterModel `json:"datacenter"`
	// The VMware-assigned ID of this network.
	Id *string `json:"id"`
	// Determines whether VMs can be connected to the network. If `true`, VMs can be connected to the network.
	IsSupported *bool `json:"is_supported"`
	// The name of this network.
	Name *string `json:"name"`
	// The network folder associated with this network.
	NetworkFolder *VMwareVCenterNetworkFolderModel `json:"network_folder"`
}

VMwareVCenterNetworkWithETag represents a custom type struct. VMwareVCenterNetworkWithETag to support etag string to be calculated.

type VMwareVCenterParentFolderModel

type VMwareVCenterParentFolderModel struct {
	// The VMware-assigned Managed Object Reference (MoRef) ID of the folder.
	Id *string `json:"id"`
}

VMwareVCenterParentFolderModel represents a custom type struct. The parent folder under which this folder resides.

type Vcenter

type Vcenter struct {
	// Embedded responses related to the resource.
	Embedded *VcenterEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VcenterLinks `json:"_links"`
	// The region to which data is backed-up to for the vCenter server. If the vCenter server's back up region is unavailable, this field has a value of `unavailable`. Refer to the Back up Regions table for a complete list of back up regions.
	BackupRegion *string `json:"backup_region"`
	// The URL at which the Clumio Cloud Connector for this vCenter server can be downloaded.
	CloudConnectorDownloadUrl *string `json:"cloud_connector_download_url"`
	// The IP address or FQDN of the vCenter server.
	Endpoint *string `json:"endpoint"`
	// The Clumio-assigned ID of the vCenter server.
	Id *string `json:"id"`
	// The IP address or FQDN of the vCenter server.
	// This field has been replaced by the `endpoint` field
	// and is being retained for backward compatibility reasons.
	IpAddress *string `json:"ip_address"`
	// The Clumio-assigned ID of the organizational unit associated with the vCenter.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The connection status of the Clumio Cloud Connector. Examples include "pending", "connected", "disconnected", "invalid_credentials", "partial", and "unavailable".
	Status *string `json:"status"`
	// The type of vCenter server. If the vCenter server's type is unavailable, this field has a value of `unavailable`. Refer to the vCenter Types table for a complete list of vCenter types.
	ClumioType *string `json:"type"`
	// The token given to the Clumio Cloud Connectors to identify the vCenter server.
	VcenterToken *string `json:"vcenter_token"`
}

Vcenter represents a custom type struct

type VcenterEmbedded

type VcenterEmbedded struct {
	// Embeds the compliance statistics of VMs into each vCenter resource in the response, if requested using the `_embed` query parameter.
	ReadVmwareVcenterComplianceStats interface{} `json:"read-vmware-vcenter-compliance-stats"`
}

VcenterEmbedded represents a custom type struct. Embedded responses related to the resource.

type VcenterLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A HATEOAS link to the compliance statistics of VMs in the folders and subfolders of this vCenter resource.
	ReadVmwareVcenterComplianceStats *ReadVCenterObjectProtectionStatsHateoasLink `json:"read-vmware-vcenter-compliance-stats"`
}

VcenterLinks represents a custom type struct. URLs to pages related to the resource.

type VcenterListEmbedded

type VcenterListEmbedded struct {
	// TODO: Add struct field description
	Items []*Vcenter `json:"items"`
}

VcenterListEmbedded represents a custom type struct. Embedded responses related to the resource.

type VcenterListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VcenterListLinks represents a custom type struct. URLs to pages related to the resource.

type Vm

type Vm struct {
	// Embedded responses related to the resource.
	Embedded *VmEmbedded `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *VmLinks `json:"_links"`
	// The policy compliance status of the resource. If the VM is deleted or unprotected, then this field has a value of `null`. Refer to the Compliance Status table for a complete list of compliance statuses.
	ComplianceStatus *string `json:"compliance_status"`
	// The compute resource from which the VM draws. If the VM is deleted, then `compute_resource.id` has a value of `null`.
	ComputeResource *VMComputeResourceModel `json:"compute_resource"`
	// The compute resource folder associated with this VM. If the VM is deleted, then this field has a value of `null`.
	ComputeResourceFolder *VMComputeResourceFolderModel `json:"compute_resource_folder"`
	// The data center in which the VM resides. If the VM is deleted, then `datacenter.id` has a value of `null`.
	Datacenter *VMDatacenterModel `json:"datacenter"`
	// The data center folder associated with this VM. If the VM is deleted, then this field has a value of `null`.
	DatacenterFolder *VMDatacenterFolderModel `json:"datacenter_folder"`
	// The host on which the VM resides. If the VM is deleted, then `host.id` and `host.is_standalone` have values of `null`. The `host.name` field may also have a value of `null`.
	Host *VMHostModel `json:"host"`
	// The VMware-assigned Managed Object Reference (MoRef) ID of the VM.
	// VMs from different vCenters may have the same VMware-assigned ID.
	Id *string `json:"id"`
	// Determines whether the VM is deleted. If `true`, the VM is deleted.
	IsDeleted *bool `json:"is_deleted"`
	// Determines whether the VM is supported for backups. If `true`, the VM is supported for backups.
	IsSupported *bool `json:"is_supported"`
	// The timestamp of when the VM was last
	// backed up. If this VM has not been backed up, then this field has a value of `null`.
	LastBackupTimestamp *string `json:"last_backup_timestamp"`
	// The name of the virtual machine.
	Name *string `json:"name"`
	// The network interface card (NIC) attached to the VM.
	Nics []*VMNicModel `json:"nics"`
	// The Clumio-assigned ID of the organizational unit associated with the VM.
	OrganizationalUnitId *string `json:"organizational_unit_id"`
	// The protection policy applied to this resource. If the resource is not protected, then this field has a value of `null`.
	ProtectionInfo *ProtectionInfo `json:"protection_info"`
	// The protection status of the resource. If the VM has been deleted, then this field has a value of `null`. Refer to the Protection Status table for a complete list of protection statuses.
	ProtectionStatus *string `json:"protection_status"`
	// The resource pool from which the VM draws. If the VM is deleted, then `resource_pool.id` and `resource_pool.is_root` have values of `null`.
	ResourcePool *VMResourcePoolModel `json:"resource_pool"`
	// VMTagWithCategoryModel
	// A tag associated with the VM.
	Tags []*VMTagWithCategoryModel `json:"tags"`
	// The reason why the VM cannot be supported. If the VM is supported, then this field has a value of `null`.
	UnsupportedReason *string `json:"unsupported_reason"`
	// The Clumio-assigned ID of the VM.
	// Use this parameter in the [GET /backups/files/search](#operation/list-files) endpoint
	// to search for files in backups of this VM.
	Uuid *string `json:"uuid"`
	// The VM folder containing the VM. If the VM is deleted, then `vm_folder.id` has a value of `null`.
	VmFolder *VMFolderModel `json:"vm_folder"`
}

Vm represents a custom type struct

type VmComputeResourceLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

VmComputeResourceLink represents a custom type struct. A HATEOAS link to the compute resource from which this VM draws from. Will be omitted for deleted VMs.

type VmDatacenterLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

VmDatacenterLink represents a custom type struct. A HATEOAS link to the data center in which this VM resides. Will be omitted for deleted VMs.

type VmEmbedded

type VmEmbedded struct {
	// Embeds the associated policy of a protected resource in the response if requested using the `embed` query parameter. Unprotected resources will not have an associated policy.
	ReadPolicyDefinition interface{} `json:"read-policy-definition"`
}

VmEmbedded represents a custom type struct. Embedded responses related to the resource.

type VmFolderLink struct {
	// The URI for the referenced operation.
	Href *string `json:"href"`
	// Determines whether the "href" link is a URI template. If set to `true`, the "href" link is a URI template.
	Templated *bool `json:"templated"`
	// The HTTP method to be used with the "href" link for the referenced operation.
	ClumioType *string `json:"type"`
}

VmFolderLink represents a custom type struct. A HATEOAS link to the VM folder in which this VM resides. Will be omitted for deleted VMs.

type VmLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	CreateBackupVmwareVm *HateoasLink `json:"create-backup-vmware-vm"`
	// A resource-specific HATEOAS link.
	ListBackupVmwareVms *HateoasLink `json:"list-backup-vmware-vms"`
	// A resource-specific HATEOAS link.
	ListRestoredFiles *HateoasLink `json:"list-restored-files"`
	// A HATEOAS link to protect the entities.
	ProtectEntities *ProtectEntitiesHateoasLink `json:"protect-entities"`
	// A HATEOAS link to the policy protecting this resource. Will be omitted for unprotected entities.
	ReadPolicyDefinition *ReadPolicyDefinitionHateoasLink `json:"read-policy-definition"`
	// A HATEOAS link to the compute resource from which this VM draws from. Will be omitted for deleted VMs.
	ReadVmwareVcenterComputeResource *VmComputeResourceLink `json:"read-vmware-vcenter-compute-resource"`
	// A HATEOAS link to the data center in which this VM resides. Will be omitted for deleted VMs.
	ReadVmwareVcenterDatacenter *VmDatacenterLink `json:"read-vmware-vcenter-datacenter"`
	// A HATEOAS link to the VM folder in which this VM resides. Will be omitted for deleted VMs.
	ReadVmwareVcenterFolder *VmFolderLink `json:"read-vmware-vcenter-folder"`
	// A HATEOAS link to unprotect the entities.
	UnprotectEntities *UnprotectEntitiesHateoasLink `json:"unprotect-entities"`
}

VmLinks represents a custom type struct. URLs to pages related to the resource.

type VmListEmbedded

type VmListEmbedded struct {
	// TODO: Add struct field description
	Items []*Vm `json:"items"`
}

VmListEmbedded represents a custom type struct. Embedded responses related to the resource.

type VmListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

VmListLinks represents a custom type struct. URLs to pages related to the resource.

type Wallet added in v0.2.7

type Wallet struct {
	// Embedded responses related to the resource.
	Embedded interface{} `json:"_embedded"`
	// URLs to pages related to the resource.
	Links *WalletLinks `json:"_links"`
	// AWS Account ID associated with the wallet.
	AccountNativeId *string `json:"account_native_id"`
	// Version of the template available
	AvailableVersion *int64 `json:"available_version"`
	// Clumio AWS Account ID.
	ClumioAwsAccountId *string `json:"clumio_aws_account_id"`
	// DeploymentURL is an (external) link to an AWS console page for quick-creation
	// of the stack.
	DeploymentUrl *string `json:"deployment_url"`
	// ErrorCode is a short string describing the error, if any.
	ErrorCode *string `json:"error_code"`
	// ErrorMessage is a longer description explaining the error, if any, and how to
	// fix it.
	ErrorMessage *string `json:"error_message"`
	// The Clumio-assigned ID of the wallet.
	Id *string `json:"id"`
	// The regions where the wallet is installed.
	InstalledRegions []*string `json:"installed_regions"`
	// TODO: Add struct field description
	KeyErrors map[string]*ErrorModel `json:"key_errors"`
	// RoleArn is the AWS Resource Name of the IAM Role created by the stack.
	RoleArn *string `json:"role_arn"`
	// The version of the stack used or being used.
	StackVersion *int64 `json:"stack_version"`
	// State describes the state of the wallet. Valid states are:
	// Waiting: The wallet has been created, but a stack hasn't been created. The
	// wallet can't be used in this state.
	// Enabled: The wallet has been created and a stack has been created for the
	// wallet. This is the normal expected state of a wallet in use.
	// Error:   The wallet is inaccessible. See ErrorCode and ErrorMessage fields for
	// additional details.
	State *string `json:"state"`
	// The supported regions for the wallet.
	SupportedRegions []*string `json:"supported_regions"`
	// TemplateURL is the URL to the CloudFormation template to be used to create the
	// CloudFormation stack.
	TemplateUrl *string `json:"template_url"`
	// Token is used to identify and authenticate the CloudFormation stack creation.
	Token *string `json:"token"`
}

Wallet represents a custom type struct

type WalletLinks struct {
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
	// A resource-specific HATEOAS link.
	DeleteWallet *HateoasLink `json:"delete-wallet"`
	// A resource-specific HATEOAS link.
	ListWalletKeys *HateoasLink `json:"list-wallet-keys"`
	// A resource-specific HATEOAS link.
	RefreshWallet *HateoasLink `json:"refresh-wallet"`
}

WalletLinks represents a custom type struct. URLs to pages related to the resource.

type WalletListEmbedded added in v0.2.7

type WalletListEmbedded struct {
	// TODO: Add struct field description
	Items []*Wallet `json:"items"`
}

WalletListEmbedded represents a custom type struct. Embedded responses related to the resource.

type WalletListLinks struct {
	// The HATEOAS link to the first page of results.
	First *HateoasFirstLink `json:"_first"`
	// The HATEOAS link to the last page of results.
	Last *HateoasLastLink `json:"_last"`
	// The HATEOAS link to the next page of results.
	Next *HateoasNextLink `json:"_next"`
	// The HATEOAS link to the previous page of results.
	Prev *HateoasPrevLink `json:"_prev"`
	// The HATEOAS link to this resource.
	Self *HateoasSelfLink `json:"_self"`
}

WalletListLinks represents a custom type struct. URLs to pages related to the resource.

Jump to

Keyboard shortcuts

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