Documentation
¶
Index ¶
- Constants
- Variables
- func ErrHasStatus(err error, code ...int) bool
- func FormatConfigPath(path string) (string, error)
- func IsNotFound(err error) bool
- func Pointer[T any](value T) *T
- type APIError
- type APIErrorReason
- type Account
- type AccountAgreements
- type AccountAgreementsUpdateOptions
- type AccountAvailability
- type AccountAvailabilityPagedResponsedeprecated
- type AccountBetaProgram
- type AccountBetaProgramCreateOpts
- type AccountBetasPagedResponsedeprecated
- type AccountMaintenance
- type AccountServiceTransfer
- type AccountServiceTransferEntity
- type AccountServiceTransferRequestOptions
- type AccountServiceTransferStatus
- type AccountSettings
- type AccountSettingsUpdateOptions
- type AccountTransfer
- type AccountTransferRegion
- type AccountUpdateOptions
- type AllocateReserveIPOptions
- type BetaProgram
- type BetaProgramPagedResponsedeprecated
- type ChildAccount
- type ChildAccountToken
- type Client
- func (c *Client) AcceptAccountServiceTransfer(ctx context.Context, token string) error
- func (c *Client) AcknowledgeAccountAgreements(ctx context.Context, opts AccountAgreementsUpdateOptions) error
- func (c *Client) AddInstanceIPAddress(ctx context.Context, linodeID int, public bool) (*InstanceIP, error)
- func (c *Client) AddPaymentMethod(ctx context.Context, opts PaymentMethodCreateOptions) error
- func (c *Client) AddPromoCode(ctx context.Context, opts PromoCodeCreateOptions) (*Promotion, error)
- func (c *Client) AddRetryCondition(retryCondition RetryConditional) *Client
- func (c *Client) AllocateReserveIP(ctx context.Context, opts AllocateReserveIPOptions) (*InstanceIP, error)
- func (c *Client) AppendInstanceConfigInterface(ctx context.Context, linodeID int, configID int, ...) (*InstanceConfigInterface, error)
- func (c *Client) AssignInstanceReservedIP(ctx context.Context, linodeID int, opts InstanceReserveIPOptions) (*InstanceIP, error)
- func (c *Client) AssignPlacementGroupLinodes(ctx context.Context, id int, options PlacementGroupAssignOptions) (*PlacementGroup, error)
- func (c *Client) AttachVolume(ctx context.Context, volumeID int, opts *VolumeAttachOptions) (*Volume, error)
- func (c *Client) BootInstance(ctx context.Context, linodeID int, configID int) error
- func (c *Client) CancelAccountServiceTransfer(ctx context.Context, token string) error
- func (c *Client) CancelInstanceBackups(ctx context.Context, linodeID int) error
- func (c *Client) CancelObjectStorage(ctx context.Context) error
- func (c *Client) CloneDomain(ctx context.Context, domainID int, opts DomainCloneOptions) (*Domain, error)
- func (c *Client) CloneInstance(ctx context.Context, linodeID int, opts InstanceCloneOptions) (*Instance, error)
- func (c *Client) CloneInstanceDisk(ctx context.Context, linodeID, diskID int, opts InstanceDiskCloneOptions) (*InstanceDisk, error)
- func (c *Client) CloneVolume(ctx context.Context, volumeID int, label string) (*Volume, error)
- func (c *Client) ConfirmTwoFactor(ctx context.Context, opts ConfirmTwoFactorOptions) (*ConfirmTwoFactorResponse, error)
- func (c *Client) CreateChildAccountToken(ctx context.Context, euuid string) (*ChildAccountToken, error)
- func (c *Client) CreateDomain(ctx context.Context, opts DomainCreateOptions) (*Domain, error)
- func (c *Client) CreateDomainRecord(ctx context.Context, domainID int, opts DomainRecordCreateOptions) (*DomainRecord, error)
- func (c *Client) CreateFirewall(ctx context.Context, opts FirewallCreateOptions) (*Firewall, error)
- func (c *Client) CreateFirewallDevice(ctx context.Context, firewallID int, opts FirewallDeviceCreateOptions) (*FirewallDevice, error)
- func (c *Client) CreateIPv6Range(ctx context.Context, opts IPv6RangeCreateOptions) (*IPv6Range, error)
- func (c *Client) CreateImage(ctx context.Context, opts ImageCreateOptions) (*Image, error)
- func (c *Client) CreateImageUpload(ctx context.Context, opts ImageCreateUploadOptions) (*Image, string, error)
- func (c *Client) CreateInstance(ctx context.Context, opts InstanceCreateOptions) (*Instance, error)
- func (c *Client) CreateInstanceConfig(ctx context.Context, linodeID int, opts InstanceConfigCreateOptions) (*InstanceConfig, error)
- func (c *Client) CreateInstanceDisk(ctx context.Context, linodeID int, opts InstanceDiskCreateOptions) (*InstanceDisk, error)
- func (c *Client) CreateInstanceSnapshot(ctx context.Context, linodeID int, label string) (*InstanceSnapshot, error)
- func (c *Client) CreateLKECluster(ctx context.Context, opts LKEClusterCreateOptions) (*LKECluster, error)
- func (c *Client) CreateLKEClusterPool(ctx context.Context, clusterID int, createOpts LKEClusterPoolCreateOptions) (*LKEClusterPool, error)deprecated
- func (c *Client) CreateLKENodePool(ctx context.Context, clusterID int, opts LKENodePoolCreateOptions) (*LKENodePool, error)
- func (c *Client) CreateLongviewClient(ctx context.Context, opts LongviewClientCreateOptions) (*LongviewClient, error)
- func (c *Client) CreateMySQLDatabase(ctx context.Context, opts MySQLCreateOptions) (*MySQLDatabase, error)
- func (c *Client) CreateMySQLDatabaseBackup(ctx context.Context, databaseID int, opts MySQLBackupCreateOptions) error
- func (c *Client) CreateNodeBalancer(ctx context.Context, opts NodeBalancerCreateOptions) (*NodeBalancer, error)
- func (c *Client) CreateNodeBalancerConfig(ctx context.Context, nodebalancerID int, opts NodeBalancerConfigCreateOptions) (*NodeBalancerConfig, error)
- func (c *Client) CreateNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, ...) (*NodeBalancerNode, error)
- func (c *Client) CreateOAuthClient(ctx context.Context, opts OAuthClientCreateOptions) (*OAuthClient, error)
- func (c *Client) CreateObjectStorageBucket(ctx context.Context, opts ObjectStorageBucketCreateOptions) (*ObjectStorageBucket, error)
- func (c *Client) CreateObjectStorageKey(ctx context.Context, opts ObjectStorageKeyCreateOptions) (*ObjectStorageKey, error)
- func (c *Client) CreateObjectStorageObjectURL(ctx context.Context, objectID, label string, ...) (*ObjectStorageObjectURL, error)
- func (c *Client) CreatePayment(ctx context.Context, opts PaymentCreateOptions) (*Payment, error)
- func (c *Client) CreatePlacementGroup(ctx context.Context, options PlacementGroupCreateOptions) (*PlacementGroup, error)
- func (c *Client) CreatePostgresDatabase(ctx context.Context, opts PostgresCreateOptions) (*PostgresDatabase, error)
- func (c *Client) CreatePostgresDatabaseBackup(ctx context.Context, databaseID int, opts PostgresBackupCreateOptions) error
- func (c *Client) CreateSSHKey(ctx context.Context, opts SSHKeyCreateOptions) (*SSHKey, error)
- func (c *Client) CreateStackscript(ctx context.Context, opts StackscriptCreateOptions) (*Stackscript, error)
- func (c *Client) CreateTag(ctx context.Context, opts TagCreateOptions) (*Tag, error)
- func (c *Client) CreateToken(ctx context.Context, opts TokenCreateOptions) (*Token, error)
- func (c *Client) CreateTwoFactorSecret(ctx context.Context) (*TwoFactorSecret, error)
- func (c *Client) CreateUser(ctx context.Context, opts UserCreateOptions) (*User, error)
- func (c *Client) CreateVPC(ctx context.Context, opts VPCCreateOptions) (*VPC, error)
- func (c *Client) CreateVPCSubnet(ctx context.Context, opts VPCSubnetCreateOptions, vpcID int) (*VPCSubnet, error)
- func (c *Client) CreateVolume(ctx context.Context, opts VolumeCreateOptions) (*Volume, error)
- func (c *Client) DeleteDomain(ctx context.Context, domainID int) error
- func (c *Client) DeleteDomainRecord(ctx context.Context, domainID int, recordID int) error
- func (c *Client) DeleteFirewall(ctx context.Context, firewallID int) error
- func (c *Client) DeleteFirewallDevice(ctx context.Context, firewallID, deviceID int) error
- func (c *Client) DeleteIPv6Range(ctx context.Context, ipRange string) error
- func (c *Client) DeleteImage(ctx context.Context, imageID string) error
- func (c *Client) DeleteInstance(ctx context.Context, linodeID int) error
- func (c *Client) DeleteInstanceConfig(ctx context.Context, linodeID int, configID int) error
- func (c *Client) DeleteInstanceConfigInterface(ctx context.Context, linodeID int, configID int, interfaceID int) error
- func (c *Client) DeleteInstanceDisk(ctx context.Context, linodeID int, diskID int) error
- func (c *Client) DeleteInstanceIPAddress(ctx context.Context, linodeID int, ipAddress string) error
- func (c *Client) DeleteLKECluster(ctx context.Context, clusterID int) error
- func (c *Client) DeleteLKEClusterControlPlaneACL(ctx context.Context, clusterID int) error
- func (c *Client) DeleteLKEClusterKubeconfig(ctx context.Context, clusterID int) error
- func (c *Client) DeleteLKEClusterPool(ctx context.Context, clusterID, id int) errordeprecated
- func (c *Client) DeleteLKEClusterPoolNode(ctx context.Context, clusterID int, id string) errordeprecated
- func (c *Client) DeleteLKEClusterServiceToken(ctx context.Context, clusterID int) error
- func (c *Client) DeleteLKENodePool(ctx context.Context, clusterID, poolID int) error
- func (c *Client) DeleteLKENodePoolNode(ctx context.Context, clusterID int, nodeID string) error
- func (c *Client) DeleteLongviewClient(ctx context.Context, clientID int) error
- func (c *Client) DeleteMySQLDatabase(ctx context.Context, databaseID int) error
- func (c *Client) DeleteNodeBalancer(ctx context.Context, nodebalancerID int) error
- func (c *Client) DeleteNodeBalancerConfig(ctx context.Context, nodebalancerID int, configID int) error
- func (c *Client) DeleteNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, nodeID int) error
- func (c *Client) DeleteOAuthClient(ctx context.Context, clientID string) error
- func (c *Client) DeleteObjectStorageBucket(ctx context.Context, clusterOrRegionID, label string) error
- func (c *Client) DeleteObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string) error
- func (c *Client) DeleteObjectStorageKey(ctx context.Context, keyID int) error
- func (c *Client) DeletePaymentMethod(ctx context.Context, paymentMethodID int) error
- func (c *Client) DeletePhoneNumber(ctx context.Context) error
- func (c *Client) DeletePlacementGroup(ctx context.Context, id int) error
- func (c *Client) DeletePostgresDatabase(ctx context.Context, databaseID int) error
- func (c *Client) DeleteProfileApp(ctx context.Context, appID int) error
- func (c *Client) DeleteProfileDevice(ctx context.Context, deviceID int) error
- func (c *Client) DeleteReservedIPAddress(ctx context.Context, ipAddress string) error
- func (c *Client) DeleteSSHKey(ctx context.Context, keyID int) error
- func (c *Client) DeleteStackscript(ctx context.Context, scriptID int) error
- func (c *Client) DeleteTag(ctx context.Context, label string) error
- func (c *Client) DeleteToken(ctx context.Context, tokenID int) error
- func (c *Client) DeleteUser(ctx context.Context, userID string) error
- func (c *Client) DeleteVPC(ctx context.Context, vpcID int) error
- func (c *Client) DeleteVPCSubnet(ctx context.Context, vpcID int, subnetID int) error
- func (c *Client) DeleteVolume(ctx context.Context, volumeID int) error
- func (c *Client) DetachVolume(ctx context.Context, volumeID int) error
- func (c *Client) DisableTwoFactor(ctx context.Context) error
- func (c *Client) EnableInstanceBackups(ctx context.Context, linodeID int) error
- func (c *Client) GetAccount(ctx context.Context) (*Account, error)
- func (c *Client) GetAccountAgreements(ctx context.Context) (*AccountAgreements, error)
- func (c *Client) GetAccountAvailability(ctx context.Context, regionID string) (*AccountAvailability, error)
- func (c *Client) GetAccountBetaProgram(ctx context.Context, betaID string) (*AccountBetaProgram, error)
- func (c *Client) GetAccountServiceTransfer(ctx context.Context, token string) (*AccountServiceTransfer, error)
- func (c *Client) GetAccountSettings(ctx context.Context) (*AccountSettings, error)
- func (c *Client) GetAccountTransfer(ctx context.Context) (*AccountTransfer, error)
- func (c *Client) GetBetaProgram(ctx context.Context, betaID string) (*BetaProgram, error)
- func (c *Client) GetChildAccount(ctx context.Context, euuid string) (*ChildAccount, error)
- func (c *Client) GetDatabaseEngine(ctx context.Context, _ *ListOptions, engineID string) (*DatabaseEngine, error)
- func (c *Client) GetDatabaseType(ctx context.Context, _ *ListOptions, typeID string) (*DatabaseType, error)
- func (c *Client) GetDomain(ctx context.Context, domainID int) (*Domain, error)
- func (c *Client) GetDomainRecord(ctx context.Context, domainID int, recordID int) (*DomainRecord, error)
- func (c *Client) GetDomainZoneFile(ctx context.Context, domainID int) (*DomainZoneFile, error)
- func (c *Client) GetEvent(ctx context.Context, eventID int) (*Event, error)
- func (c *Client) GetFirewall(ctx context.Context, firewallID int) (*Firewall, error)
- func (c *Client) GetFirewallDevice(ctx context.Context, firewallID, deviceID int) (*FirewallDevice, error)
- func (c *Client) GetFirewallRules(ctx context.Context, firewallID int) (*FirewallRuleSet, error)
- func (c *Client) GetIPAddress(ctx context.Context, id string) (*InstanceIP, error)
- func (c *Client) GetIPv6Pool(ctx context.Context, id string) (*IPv6Range, error)
- func (c *Client) GetIPv6Range(ctx context.Context, ipRange string) (*IPv6Range, error)
- func (c *Client) GetImage(ctx context.Context, imageID string) (*Image, error)
- func (c *Client) GetInstance(ctx context.Context, linodeID int) (*Instance, error)
- func (c *Client) GetInstanceBackups(ctx context.Context, linodeID int) (*InstanceBackupsResponse, error)
- func (c *Client) GetInstanceConfig(ctx context.Context, linodeID int, configID int) (*InstanceConfig, error)
- func (c *Client) GetInstanceConfigInterface(ctx context.Context, linodeID int, configID int, interfaceID int) (*InstanceConfigInterface, error)
- func (c *Client) GetInstanceDisk(ctx context.Context, linodeID int, diskID int) (*InstanceDisk, error)
- func (c *Client) GetInstanceIPAddress(ctx context.Context, linodeID int, ipaddress string) (*InstanceIP, error)
- func (c *Client) GetInstanceIPAddresses(ctx context.Context, linodeID int) (*InstanceIPAddressResponse, error)
- func (c *Client) GetInstanceSnapshot(ctx context.Context, linodeID int, snapshotID int) (*InstanceSnapshot, error)
- func (c *Client) GetInstanceStats(ctx context.Context, linodeID int) (*InstanceStats, error)
- func (c *Client) GetInstanceStatsByDate(ctx context.Context, linodeID int, year int, month int) (*InstanceStats, error)
- func (c *Client) GetInstanceTransfer(ctx context.Context, linodeID int) (*InstanceTransfer, error)
- func (c *Client) GetInstanceTransferMonthly(ctx context.Context, linodeID, year, month int) (*MonthlyInstanceTransferStats, error)
- func (c *Client) GetInvoice(ctx context.Context, invoiceID int) (*Invoice, error)
- func (c *Client) GetKernel(ctx context.Context, kernelID string) (*LinodeKernel, error)
- func (c *Client) GetLKECluster(ctx context.Context, clusterID int) (*LKECluster, error)
- func (c *Client) GetLKEClusterControlPlaneACL(ctx context.Context, clusterID int) (*LKEClusterControlPlaneACLResponse, error)
- func (c *Client) GetLKEClusterDashboard(ctx context.Context, clusterID int) (*LKEClusterDashboard, error)
- func (c *Client) GetLKEClusterKubeconfig(ctx context.Context, clusterID int) (*LKEClusterKubeconfig, error)
- func (c *Client) GetLKEClusterPool(ctx context.Context, clusterID, id int) (*LKEClusterPool, error)deprecated
- func (c *Client) GetLKENodePool(ctx context.Context, clusterID, poolID int) (*LKENodePool, error)
- func (c *Client) GetLKENodePoolNode(ctx context.Context, clusterID int, nodeID string) (*LKENodePoolLinode, error)
- func (c *Client) GetLKEVersion(ctx context.Context, version string) (*LKEVersion, error)
- func (c *Client) GetLogin(ctx context.Context, loginID int) (*Login, error)
- func (c *Client) GetLongviewClient(ctx context.Context, clientID int) (*LongviewClient, error)
- func (c *Client) GetLongviewPlan(ctx context.Context) (*LongviewPlan, error)
- func (c *Client) GetLongviewSubscription(ctx context.Context, templateID string) (*LongviewSubscription, error)
- func (c *Client) GetMySQLDatabase(ctx context.Context, databaseID int) (*MySQLDatabase, error)
- func (c *Client) GetMySQLDatabaseBackup(ctx context.Context, databaseID int, backupID int) (*MySQLDatabaseBackup, error)
- func (c *Client) GetMySQLDatabaseCredentials(ctx context.Context, databaseID int) (*MySQLDatabaseCredential, error)
- func (c *Client) GetMySQLDatabaseSSL(ctx context.Context, databaseID int) (*MySQLDatabaseSSL, error)
- func (c *Client) GetNodeBalancer(ctx context.Context, nodebalancerID int) (*NodeBalancer, error)
- func (c *Client) GetNodeBalancerConfig(ctx context.Context, nodebalancerID int, configID int) (*NodeBalancerConfig, error)
- func (c *Client) GetNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, nodeID int) (*NodeBalancerNode, error)
- func (c *Client) GetNodeBalancerStats(ctx context.Context, nodebalancerID int) (*NodeBalancerStats, error)
- func (c *Client) GetOAuthClient(ctx context.Context, clientID string) (*OAuthClient, error)
- func (c *Client) GetObjectStorageBucket(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucket, error)
- func (c *Client) GetObjectStorageBucketAccess(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucketAccess, error)
- func (c *Client) GetObjectStorageBucketAccessV2(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucketAccessV2, error)
- func (c *Client) GetObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string) (*ObjectStorageBucketCert, error)
- func (c *Client) GetObjectStorageBucketCertV2(ctx context.Context, clusterOrRegionID, bucket string) (*ObjectStorageBucketCertV2, error)
- func (c *Client) GetObjectStorageCluster(ctx context.Context, clusterID string) (*ObjectStorageCluster, error)deprecated
- func (c *Client) GetObjectStorageKey(ctx context.Context, keyID int) (*ObjectStorageKey, error)
- func (c *Client) GetObjectStorageObjectACLConfig(ctx context.Context, objectID, label, object string) (*ObjectStorageObjectACLConfig, error)deprecated
- func (c *Client) GetObjectStorageObjectACLConfigV2(ctx context.Context, objectID, label, object string) (*ObjectStorageObjectACLConfigV2, error)
- func (c *Client) GetObjectStorageTransfer(ctx context.Context) (*ObjectStorageTransfer, error)
- func (c *Client) GetPayment(ctx context.Context, paymentID int) (*Payment, error)
- func (c *Client) GetPaymentMethod(ctx context.Context, paymentMethodID int) (*PaymentMethod, error)
- func (c *Client) GetPlacementGroup(ctx context.Context, id int) (*PlacementGroup, error)
- func (c *Client) GetPollDelay() time.Duration
- func (c *Client) GetPostgresDatabase(ctx context.Context, databaseID int) (*PostgresDatabase, error)
- func (c *Client) GetPostgresDatabaseBackup(ctx context.Context, databaseID int, backupID int) (*PostgresDatabaseBackup, error)
- func (c *Client) GetPostgresDatabaseCredentials(ctx context.Context, databaseID int) (*PostgresDatabaseCredential, error)
- func (c *Client) GetPostgresDatabaseSSL(ctx context.Context, databaseID int) (*PostgresDatabaseSSL, error)
- func (c *Client) GetProfile(ctx context.Context) (*Profile, error)
- func (c *Client) GetProfileApp(ctx context.Context, appID int) (*ProfileApp, error)
- func (c *Client) GetProfileDevice(ctx context.Context, deviceID int) (*ProfileDevice, error)
- func (c *Client) GetProfileLogin(ctx context.Context, id int) (*ProfileLogin, error)
- func (c *Client) GetProfilePreferences(ctx context.Context) (*ProfilePreferences, error)
- func (c *Client) GetRegion(ctx context.Context, regionID string) (*Region, error)
- func (c *Client) GetRegionAvailability(ctx context.Context, regionID string) (*RegionAvailability, error)
- func (c *Client) GetReservedIPAddress(ctx context.Context, ipAddress string) (*InstanceIP, error)
- func (c *Client) GetSSHKey(ctx context.Context, keyID int) (*SSHKey, error)
- func (c *Client) GetStackscript(ctx context.Context, scriptID int) (*Stackscript, error)
- func (c *Client) GetTicket(ctx context.Context, ticketID int) (*Ticket, error)
- func (c *Client) GetToken(ctx context.Context, tokenID int) (*Token, error)
- func (c *Client) GetType(ctx context.Context, typeID string) (*LinodeType, error)
- func (c *Client) GetUser(ctx context.Context, userID string) (*User, error)
- func (c *Client) GetUserGrants(ctx context.Context, username string) (*UserGrants, error)
- func (c *Client) GetVLANIPAMAddress(ctx context.Context, linodeID int, vlanLabel string) (string, error)
- func (c *Client) GetVPC(ctx context.Context, vpcID int) (*VPC, error)
- func (c *Client) GetVPCSubnet(ctx context.Context, vpcID int, subnetID int) (*VPCSubnet, error)
- func (c *Client) GetVolume(ctx context.Context, volumeID int) (*Volume, error)
- func (c *Client) GrantsList(ctx context.Context) (*GrantsListResponse, error)
- func (c *Client) ImportDomain(ctx context.Context, opts DomainImportOptions) (*Domain, error)
- func (c *Client) InstancesAssignIPs(ctx context.Context, opts LinodesAssignIPsOptions) error
- func (c *Client) InvalidateCache()
- func (c *Client) InvalidateCacheEndpoint(endpoint string) error
- func (c *Client) JoinBetaProgram(ctx context.Context, opts AccountBetaProgramCreateOpts) (*AccountBetaProgram, error)
- func (c *Client) ListAccountAvailabilities(ctx context.Context, opts *ListOptions) ([]AccountAvailability, error)
- func (c *Client) ListAccountBetaPrograms(ctx context.Context, opts *ListOptions) ([]AccountBetaProgram, error)
- func (c *Client) ListAccountServiceTransfer(ctx context.Context, opts *ListOptions) ([]AccountServiceTransfer, error)
- func (c *Client) ListAllVPCIPAddresses(ctx context.Context, opts *ListOptions) ([]VPCIP, error)
- func (c *Client) ListBetaPrograms(ctx context.Context, opts *ListOptions) ([]BetaProgram, error)
- func (c *Client) ListChildAccounts(ctx context.Context, opts *ListOptions) ([]ChildAccount, error)
- func (c *Client) ListDatabaseEngines(ctx context.Context, opts *ListOptions) ([]DatabaseEngine, error)
- func (c *Client) ListDatabaseTypes(ctx context.Context, opts *ListOptions) ([]DatabaseType, error)
- func (c *Client) ListDatabases(ctx context.Context, opts *ListOptions) ([]Database, error)
- func (c *Client) ListDomainRecords(ctx context.Context, domainID int, opts *ListOptions) ([]DomainRecord, error)
- func (c *Client) ListDomains(ctx context.Context, opts *ListOptions) ([]Domain, error)
- func (c *Client) ListEvents(ctx context.Context, opts *ListOptions) ([]Event, error)
- func (c *Client) ListFirewallDevices(ctx context.Context, firewallID int, opts *ListOptions) ([]FirewallDevice, error)
- func (c *Client) ListFirewalls(ctx context.Context, opts *ListOptions) ([]Firewall, error)
- func (c *Client) ListIPAddresses(ctx context.Context, opts *ListOptions) ([]InstanceIP, error)
- func (c *Client) ListIPv6Pools(ctx context.Context, opts *ListOptions) ([]IPv6Range, error)
- func (c *Client) ListIPv6Ranges(ctx context.Context, opts *ListOptions) ([]IPv6Range, error)
- func (c *Client) ListImages(ctx context.Context, opts *ListOptions) ([]Image, error)
- func (c *Client) ListInstanceConfigInterfaces(ctx context.Context, linodeID int, configID int) ([]InstanceConfigInterface, error)
- func (c *Client) ListInstanceConfigs(ctx context.Context, linodeID int, opts *ListOptions) ([]InstanceConfig, error)
- func (c *Client) ListInstanceDisks(ctx context.Context, linodeID int, opts *ListOptions) ([]InstanceDisk, error)
- func (c *Client) ListInstanceFirewalls(ctx context.Context, linodeID int, opts *ListOptions) ([]Firewall, error)
- func (c *Client) ListInstanceNodeBalancers(ctx context.Context, linodeID int, opts *ListOptions) ([]NodeBalancer, error)
- func (c *Client) ListInstanceVolumes(ctx context.Context, linodeID int, opts *ListOptions) ([]Volume, error)
- func (c *Client) ListInstances(ctx context.Context, opts *ListOptions) ([]Instance, error)
- func (c *Client) ListInvoiceItems(ctx context.Context, invoiceID int, opts *ListOptions) ([]InvoiceItem, error)
- func (c *Client) ListInvoices(ctx context.Context, opts *ListOptions) ([]Invoice, error)
- func (c *Client) ListKernels(ctx context.Context, opts *ListOptions) ([]LinodeKernel, error)
- func (c *Client) ListLKEClusterAPIEndpoints(ctx context.Context, clusterID int, opts *ListOptions) ([]LKEClusterAPIEndpoint, error)
- func (c *Client) ListLKEClusterPools(ctx context.Context, clusterID int, opts *ListOptions) ([]LKEClusterPool, error)deprecated
- func (c *Client) ListLKEClusters(ctx context.Context, opts *ListOptions) ([]LKECluster, error)
- func (c *Client) ListLKENodePools(ctx context.Context, clusterID int, opts *ListOptions) ([]LKENodePool, error)
- func (c *Client) ListLKETypes(ctx context.Context, opts *ListOptions) ([]LKEType, error)
- func (c *Client) ListLKEVersions(ctx context.Context, opts *ListOptions) ([]LKEVersion, error)
- func (c *Client) ListLogins(ctx context.Context, opts *ListOptions) ([]Login, error)
- func (c *Client) ListLongviewClients(ctx context.Context, opts *ListOptions) ([]LongviewClient, error)
- func (c *Client) ListLongviewSubscriptions(ctx context.Context, opts *ListOptions) ([]LongviewSubscription, error)
- func (c *Client) ListMaintenances(ctx context.Context, opts *ListOptions) ([]AccountMaintenance, error)
- func (c *Client) ListMySQLDatabaseBackups(ctx context.Context, databaseID int, opts *ListOptions) ([]MySQLDatabaseBackup, error)
- func (c *Client) ListMySQLDatabases(ctx context.Context, opts *ListOptions) ([]MySQLDatabase, error)
- func (c *Client) ListNetworkTransferPrices(ctx context.Context, opts *ListOptions) ([]NetworkTransferPrice, error)
- func (c *Client) ListNodeBalancerConfigs(ctx context.Context, nodebalancerID int, opts *ListOptions) ([]NodeBalancerConfig, error)
- func (c *Client) ListNodeBalancerFirewalls(ctx context.Context, nodebalancerID int, opts *ListOptions) ([]Firewall, error)
- func (c *Client) ListNodeBalancerNodes(ctx context.Context, nodebalancerID int, configID int, opts *ListOptions) ([]NodeBalancerNode, error)
- func (c *Client) ListNodeBalancerTypes(ctx context.Context, opts *ListOptions) ([]NodeBalancerType, error)
- func (c *Client) ListNodeBalancers(ctx context.Context, opts *ListOptions) ([]NodeBalancer, error)
- func (c *Client) ListNotifications(ctx context.Context, opts *ListOptions) ([]Notification, error)
- func (c *Client) ListOAuthClients(ctx context.Context, opts *ListOptions) ([]OAuthClient, error)
- func (c *Client) ListObjectStorageBucketContents(ctx context.Context, clusterOrRegionID, label string, ...) (*ObjectStorageBucketContent, error)
- func (c *Client) ListObjectStorageBuckets(ctx context.Context, opts *ListOptions) ([]ObjectStorageBucket, error)
- func (c *Client) ListObjectStorageBucketsInCluster(ctx context.Context, opts *ListOptions, clusterOrRegionID string) ([]ObjectStorageBucket, error)
- func (c *Client) ListObjectStorageClusters(ctx context.Context, opts *ListOptions) ([]ObjectStorageCluster, error)
- func (c *Client) ListObjectStorageEndpoints(ctx context.Context, opts *ListOptions) ([]ObjectStorageEndpoint, error)
- func (c *Client) ListObjectStorageKeys(ctx context.Context, opts *ListOptions) ([]ObjectStorageKey, error)
- func (c *Client) ListPaymentMethods(ctx context.Context, opts *ListOptions) ([]PaymentMethod, error)
- func (c *Client) ListPayments(ctx context.Context, opts *ListOptions) ([]Payment, error)
- func (c *Client) ListPlacementGroups(ctx context.Context, options *ListOptions) ([]PlacementGroup, error)
- func (c *Client) ListPostgresDatabaseBackups(ctx context.Context, databaseID int, opts *ListOptions) ([]PostgresDatabaseBackup, error)
- func (c *Client) ListPostgresDatabases(ctx context.Context, opts *ListOptions) ([]PostgresDatabase, error)
- func (c *Client) ListProfileApps(ctx context.Context, opts *ListOptions) ([]ProfileApp, error)
- func (c *Client) ListProfileDevices(ctx context.Context, opts *ListOptions) ([]ProfileDevice, error)
- func (c *Client) ListProfileLogins(ctx context.Context, opts *ListOptions) ([]ProfileLogin, error)
- func (c *Client) ListRegions(ctx context.Context, opts *ListOptions) ([]Region, error)
- func (c *Client) ListRegionsAvailability(ctx context.Context, opts *ListOptions) ([]RegionAvailability, error)
- func (c *Client) ListReservedIPAddresses(ctx context.Context, opts *ListOptions) ([]InstanceIP, error)
- func (c *Client) ListSSHKeys(ctx context.Context, opts *ListOptions) ([]SSHKey, error)
- func (c *Client) ListStackscripts(ctx context.Context, opts *ListOptions) ([]Stackscript, error)
- func (c *Client) ListTaggedObjects(ctx context.Context, label string, opts *ListOptions) (TaggedObjectList, error)
- func (c *Client) ListTags(ctx context.Context, opts *ListOptions) ([]Tag, error)
- func (c *Client) ListTickets(ctx context.Context, opts *ListOptions) ([]Ticket, error)
- func (c *Client) ListTokens(ctx context.Context, opts *ListOptions) ([]Token, error)
- func (c *Client) ListTypes(ctx context.Context, opts *ListOptions) ([]LinodeType, error)
- func (c *Client) ListUsers(ctx context.Context, opts *ListOptions) ([]User, error)
- func (c *Client) ListVLANs(ctx context.Context, opts *ListOptions) ([]VLAN, error)
- func (c *Client) ListVPCIPAddresses(ctx context.Context, vpcID int, opts *ListOptions) ([]VPCIP, error)
- func (c *Client) ListVPCSubnets(ctx context.Context, vpcID int, opts *ListOptions) ([]VPCSubnet, error)
- func (c *Client) ListVPCs(ctx context.Context, opts *ListOptions) ([]VPC, error)
- func (c *Client) ListVolumeTypes(ctx context.Context, opts *ListOptions) ([]VolumeType, error)
- func (c *Client) ListVolumes(ctx context.Context, opts *ListOptions) ([]Volume, error)
- func (c *Client) LoadConfig(options *LoadConfigOptions) error
- func (c *Client) MarkEventRead(ctx context.Context, event *Event) error
- func (c *Client) MarkEventsSeen(ctx context.Context, event *Event) error
- func (c *Client) MigrateInstance(ctx context.Context, linodeID int, opts InstanceMigrateOptions) error
- func (c *Client) MutateInstance(ctx context.Context, id int) errordeprecated
- func (client Client) NewEventPoller(ctx context.Context, id any, entityType EntityType, action EventAction) (*EventPoller, error)
- func (client Client) NewEventPollerWithSecondary(ctx context.Context, id any, primaryEntityType EntityType, secondaryID int, ...) (*EventPoller, error)
- func (client Client) NewEventPollerWithoutEntity(entityType EntityType, action EventAction) (*EventPoller, error)
- func (c *Client) OnAfterResponse(m func(response *Response) error)
- func (c *Client) OnBeforeRequest(m func(request *Request) error)
- func (c *Client) PasswordResetInstanceDisk(ctx context.Context, linodeID int, diskID int, password string) error
- func (c *Client) PatchMySQLDatabase(ctx context.Context, databaseID int) error
- func (c *Client) PatchPostgresDatabase(ctx context.Context, databaseID int) error
- func (c *Client) R(ctx context.Context) *resty.Request
- func (c *Client) RebootInstance(ctx context.Context, linodeID int, configID int) error
- func (c *Client) RebuildInstance(ctx context.Context, linodeID int, opts InstanceRebuildOptions) (*Instance, error)
- func (c *Client) RebuildNodeBalancerConfig(ctx context.Context, nodeBalancerID int, configID int, ...) (*NodeBalancerConfig, error)
- func (c *Client) RecycleLKEClusterNodes(ctx context.Context, clusterID int) error
- func (c *Client) RecycleLKENodePool(ctx context.Context, clusterID, poolID int) error
- func (c *Client) RecycleLKENodePoolNode(ctx context.Context, clusterID int, nodeID string) error
- func (c *Client) RegenerateLKECluster(ctx context.Context, clusterID int, opts LKEClusterRegenerateOptions) (*LKECluster, error)
- func (c *Client) RenameInstance(ctx context.Context, linodeID int, label string) (*Instance, error)
- func (c *Client) RenameInstanceConfig(ctx context.Context, linodeID int, configID int, label string) (*InstanceConfig, error)
- func (c *Client) RenameInstanceDisk(ctx context.Context, linodeID int, diskID int, label string) (*InstanceDisk, error)
- func (c *Client) ReorderInstanceConfigInterfaces(ctx context.Context, linodeID int, configID int, ...) error
- func (c *Client) ReplicateImage(ctx context.Context, imageID string, opts ImageReplicateOptions) (*Image, error)
- func (c *Client) RequestAccountServiceTransfer(ctx context.Context, opts AccountServiceTransferRequestOptions) (*AccountServiceTransfer, error)
- func (c *Client) RescueInstance(ctx context.Context, linodeID int, opts InstanceRescueOptions) error
- func (c *Client) ReserveIPAddress(ctx context.Context, opts ReserveIPOptions) (*InstanceIP, error)
- func (c *Client) ResetInstancePassword(ctx context.Context, linodeID int, opts InstancePasswordResetOptions) error
- func (c *Client) ResetMySQLDatabaseCredentials(ctx context.Context, databaseID int) error
- func (c *Client) ResetOAuthClientSecret(ctx context.Context, clientID string) (*OAuthClient, error)
- func (c *Client) ResetPostgresDatabaseCredentials(ctx context.Context, databaseID int) error
- func (c *Client) ResizeInstance(ctx context.Context, linodeID int, opts InstanceResizeOptions) error
- func (c *Client) ResizeInstanceDisk(ctx context.Context, linodeID int, diskID int, size int) error
- func (c *Client) ResizeVolume(ctx context.Context, volumeID int, size int) error
- func (c *Client) RestoreInstanceBackup(ctx context.Context, linodeID int, backupID int, opts RestoreInstanceOptions) error
- func (c *Client) RestoreMySQLDatabaseBackup(ctx context.Context, databaseID int, backupID int) error
- func (c *Client) RestorePostgresDatabaseBackup(ctx context.Context, databaseID int, backupID int) error
- func (c *Client) SecurityQuestionsAnswer(ctx context.Context, opts SecurityQuestionsAnswerOptions) error
- func (c *Client) SecurityQuestionsList(ctx context.Context) (*SecurityQuestionsListResponse, error)
- func (c *Client) SendPhoneNumberVerificationCode(ctx context.Context, opts SendPhoneNumberVerificationCodeOptions) error
- func (c *Client) SetAPIVersion(apiVersion string) *Client
- func (c *Client) SetBaseURL(baseURL string) *Client
- func (c *Client) SetDebug(debug bool) *Client
- func (c *Client) SetDefaultPaymentMethod(ctx context.Context, paymentMethodID int) error
- func (c *Client) SetGlobalCacheExpiration(expiryTime time.Duration)
- func (c *Client) SetHeader(name, value string)
- func (c *Client) SetLogger(logger Logger) *Client
- func (c *Client) SetPollDelay(delay time.Duration) *Client
- func (c *Client) SetRetries() *Client
- func (c *Client) SetRetryAfter(callback RetryAfter) *Client
- func (c *Client) SetRetryCount(count int) *Client
- func (c *Client) SetRetryMaxWaitTime(maxWaitTime time.Duration) *Client
- func (c *Client) SetRetryWaitTime(minWaitTime time.Duration) *Client
- func (c *Client) SetRootCertificate(path string) *Client
- func (c *Client) SetToken(token string) *Client
- func (c *Client) SetUserAgent(ua string) *Client
- func (c *Client) ShareIPAddresses(ctx context.Context, opts IPAddressesShareOptions) error
- func (c *Client) ShutdownInstance(ctx context.Context, id int) error
- func (c *Client) UnassignPlacementGroupLinodes(ctx context.Context, id int, options PlacementGroupUnAssignOptions) (*PlacementGroup, error)
- func (c *Client) UpdateAccount(ctx context.Context, opts AccountUpdateOptions) (*Account, error)
- func (c *Client) UpdateAccountSettings(ctx context.Context, opts AccountSettingsUpdateOptions) (*AccountSettings, error)
- func (c *Client) UpdateDomain(ctx context.Context, domainID int, opts DomainUpdateOptions) (*Domain, error)
- func (c *Client) UpdateDomainRecord(ctx context.Context, domainID int, recordID int, ...) (*DomainRecord, error)
- func (c *Client) UpdateFirewall(ctx context.Context, firewallID int, opts FirewallUpdateOptions) (*Firewall, error)
- func (c *Client) UpdateFirewallRules(ctx context.Context, firewallID int, rules FirewallRuleSet) (*FirewallRuleSet, error)
- func (c *Client) UpdateIPAddress(ctx context.Context, id string, opts IPAddressUpdateOptions) (*InstanceIP, error)
- func (c *Client) UpdateIPAddressV2(ctx context.Context, address string, opts IPAddressUpdateOptionsV2) (*InstanceIP, error)
- func (c *Client) UpdateImage(ctx context.Context, imageID string, opts ImageUpdateOptions) (*Image, error)
- func (c *Client) UpdateInstance(ctx context.Context, linodeID int, opts InstanceUpdateOptions) (*Instance, error)
- func (c *Client) UpdateInstanceConfig(ctx context.Context, linodeID int, configID int, ...) (*InstanceConfig, error)
- func (c *Client) UpdateInstanceConfigInterface(ctx context.Context, linodeID int, configID int, interfaceID int, ...) (*InstanceConfigInterface, error)
- func (c *Client) UpdateInstanceDisk(ctx context.Context, linodeID int, diskID int, opts InstanceDiskUpdateOptions) (*InstanceDisk, error)
- func (c *Client) UpdateInstanceIPAddress(ctx context.Context, linodeID int, ipAddress string, ...) (*InstanceIP, error)
- func (c *Client) UpdateLKECluster(ctx context.Context, clusterID int, opts LKEClusterUpdateOptions) (*LKECluster, error)
- func (c *Client) UpdateLKEClusterControlPlaneACL(ctx context.Context, clusterID int, ...) (*LKEClusterControlPlaneACLResponse, error)
- func (c *Client) UpdateLKEClusterPool(ctx context.Context, clusterID, id int, updateOpts LKEClusterPoolUpdateOptions) (*LKEClusterPool, error)deprecated
- func (c *Client) UpdateLKENodePool(ctx context.Context, clusterID, poolID int, opts LKENodePoolUpdateOptions) (*LKENodePool, error)
- func (c *Client) UpdateLongviewClient(ctx context.Context, clientID int, opts LongviewClientUpdateOptions) (*LongviewClient, error)
- func (c *Client) UpdateLongviewPlan(ctx context.Context, opts LongviewPlanUpdateOptions) (*LongviewPlan, error)
- func (c *Client) UpdateMySQLDatabase(ctx context.Context, databaseID int, opts MySQLUpdateOptions) (*MySQLDatabase, error)
- func (c *Client) UpdateNodeBalancer(ctx context.Context, nodebalancerID int, opts NodeBalancerUpdateOptions) (*NodeBalancer, error)
- func (c *Client) UpdateNodeBalancerConfig(ctx context.Context, nodebalancerID int, configID int, ...) (*NodeBalancerConfig, error)
- func (c *Client) UpdateNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, nodeID int, ...) (*NodeBalancerNode, error)
- func (c *Client) UpdateOAuthClient(ctx context.Context, clientID string, opts OAuthClientUpdateOptions) (*OAuthClient, error)
- func (c *Client) UpdateObjectStorageBucketAccess(ctx context.Context, clusterOrRegionID, label string, ...) error
- func (c *Client) UpdateObjectStorageKey(ctx context.Context, keyID int, opts ObjectStorageKeyUpdateOptions) (*ObjectStorageKey, error)
- func (c *Client) UpdateObjectStorageObjectACLConfig(ctx context.Context, objectID, label string, ...) (*ObjectStorageObjectACLConfig, error)deprecated
- func (c *Client) UpdateObjectStorageObjectACLConfigV2(ctx context.Context, objectID, label string, ...) (*ObjectStorageObjectACLConfigV2, error)
- func (c *Client) UpdatePlacementGroup(ctx context.Context, id int, options PlacementGroupUpdateOptions) (*PlacementGroup, error)
- func (c *Client) UpdatePostgresDatabase(ctx context.Context, databaseID int, opts PostgresUpdateOptions) (*PostgresDatabase, error)
- func (c *Client) UpdateProfile(ctx context.Context, opts ProfileUpdateOptions) (*Profile, error)
- func (c *Client) UpdateProfilePreferences(ctx context.Context, opts ProfilePreferences) (*ProfilePreferences, error)
- func (c *Client) UpdateSSHKey(ctx context.Context, keyID int, opts SSHKeyUpdateOptions) (*SSHKey, error)
- func (c *Client) UpdateStackscript(ctx context.Context, scriptID int, opts StackscriptUpdateOptions) (*Stackscript, error)
- func (c *Client) UpdateToken(ctx context.Context, tokenID int, opts TokenUpdateOptions) (*Token, error)
- func (c *Client) UpdateUser(ctx context.Context, userID string, opts UserUpdateOptions) (*User, error)
- func (c *Client) UpdateUserGrants(ctx context.Context, username string, opts UserGrantsUpdateOptions) (*UserGrants, error)
- func (c *Client) UpdateVPC(ctx context.Context, vpcID int, opts VPCUpdateOptions) (*VPC, error)
- func (c *Client) UpdateVPCSubnet(ctx context.Context, vpcID int, subnetID int, opts VPCSubnetUpdateOptions) (*VPCSubnet, error)
- func (c *Client) UpdateVolume(ctx context.Context, volumeID int, opts VolumeUpdateOptions) (*Volume, error)
- func (c *Client) UpgradeInstance(ctx context.Context, linodeID int, opts InstanceUpgradeOptions) error
- func (c *Client) UploadImage(ctx context.Context, opts ImageUploadOptions) (*Image, error)
- func (c *Client) UploadImageToURL(ctx context.Context, uploadURL string, image io.Reader) error
- func (c *Client) UploadObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string, ...) (*ObjectStorageBucketCert, error)
- func (c *Client) UploadObjectStorageBucketCertV2(ctx context.Context, clusterOrRegionID, bucket string, ...) (*ObjectStorageBucketCertV2, error)
- func (c *Client) UseCache(value bool)
- func (c *Client) UseProfile(name string) error
- func (c *Client) UseURL(apiURL string) (*Client, error)
- func (c *Client) VerifyPhoneNumber(ctx context.Context, opts VerifyPhoneNumberOptions) error
- func (client Client) WaitForDatabaseStatus(ctx context.Context, dbID int, dbEngine DatabaseEngineType, ...) error
- func (client Client) WaitForEventFinished(ctx context.Context, id any, entityType EntityType, action EventAction, ...) (*Event, error)
- func (client Client) WaitForImageRegionStatus(ctx context.Context, imageID, region string, status ImageRegionStatus) (*Image, error)
- func (client Client) WaitForImageStatus(ctx context.Context, imageID string, status ImageStatus, timeoutSeconds int) (*Image, error)
- func (client Client) WaitForInstanceDiskStatus(ctx context.Context, instanceID int, diskID int, status DiskStatus, ...) (*InstanceDisk, error)
- func (client Client) WaitForInstanceStatus(ctx context.Context, instanceID int, status InstanceStatus, timeoutSeconds int) (*Instance, error)
- func (client Client) WaitForLKEClusterConditions(ctx context.Context, clusterID int, options LKEClusterPollOptions, ...) error
- func (client Client) WaitForLKEClusterStatus(ctx context.Context, clusterID int, status LKEClusterStatus, ...) (*LKECluster, error)
- func (client Client) WaitForMySQLDatabaseBackup(ctx context.Context, dbID int, label string, timeoutSeconds int) (*MySQLDatabaseBackup, error)
- func (client Client) WaitForPostgresDatabaseBackup(ctx context.Context, dbID int, label string, timeoutSeconds int) (*PostgresDatabaseBackup, error)
- func (client Client) WaitForResourceFree(ctx context.Context, entityType EntityType, entityID any, timeoutSeconds int) error
- func (client Client) WaitForSnapshotStatus(ctx context.Context, instanceID int, snapshotID int, ...) (*InstanceSnapshot, error)
- func (client Client) WaitForVolumeLinodeID(ctx context.Context, volumeID int, linodeID *int, timeoutSeconds int) (*Volume, error)
- func (client Client) WaitForVolumeStatus(ctx context.Context, volumeID int, status VolumeStatus, timeoutSeconds int) (*Volume, error)
- type ClusterConditionFunc
- type ClusterConditionOptions
- type ClusterPrice
- type Comp
- type ConfigAlgorithm
- type ConfigCheck
- type ConfigCipher
- type ConfigInterfacePurpose
- type ConfigProfile
- type ConfigProtocol
- type ConfigProxyProtocol
- type ConfigStickiness
- type ConfirmTwoFactorOptions
- type ConfirmTwoFactorResponse
- type CreditCard
- type Database
- type DatabaseDayOfWeek
- type DatabaseEngine
- type DatabaseEngineType
- type DatabaseEnginesPagedResponsedeprecated
- type DatabaseFork
- type DatabaseHost
- type DatabaseMaintenanceFrequency
- type DatabaseMaintenanceWindow
- type DatabaseMaintenanceWindowPending
- type DatabaseMemberType
- type DatabasePlatform
- type DatabaseStatus
- type DatabaseType
- type DatabaseTypeEngine
- type DatabaseTypeEngineMap
- type DatabaseTypesPagedResponsedeprecated
- type DatabasesPagedResponsedeprecated
- type DevicesCreationOptions
- type DiskFilesystem
- type DiskStatus
- type Domain
- type DomainCloneOptions
- type DomainCreateOptions
- type DomainImportOptions
- type DomainRecord
- type DomainRecordCreateOptions
- type DomainRecordType
- type DomainRecordUpdateOptions
- type DomainRecordsPagedResponsedeprecated
- type DomainStatus
- type DomainType
- type DomainUpdateOptions
- type DomainZoneFile
- type DomainsPagedResponsedeprecated
- type Entity
- type EntityType
- type EntityUserGrant
- type EnvDefaults
- type Error
- type Event
- type EventAction
- type EventEntity
- type EventPoller
- type EventStatus
- type EventsPagedResponsedeprecated
- type Filter
- type FilterNode
- type FilterOperator
- type Firewall
- type FirewallCreateOptions
- type FirewallDevice
- type FirewallDeviceCreateOptions
- type FirewallDeviceEntity
- type FirewallDeviceType
- type FirewallDevicesPagedResponsedeprecated
- type FirewallRule
- type FirewallRuleSet
- type FirewallStatus
- type FirewallUpdateOptions
- type FirewallsPagedResponsedeprecated
- type GlobalUserGrants
- type GrantPermissionLevel
- type GrantedEntity
- type GrantsListResponse
- type IPAddressUpdateOptions
- type IPAddressUpdateOptionsV2
- type IPAddressesPagedResponsedeprecated
- type IPAddressesShareOptions
- type IPv6PoolsPagedResponsedeprecated
- type IPv6Range
- type IPv6RangeCreateOptions
- type IPv6RangesPagedResponsedeprecated
- type Image
- type ImageCreateOptions
- type ImageCreateUploadOptions
- type ImageCreateUploadResponse
- type ImageRegion
- type ImageRegionStatus
- type ImageReplicateOptions
- type ImageStatus
- type ImageUpdateOptions
- type ImageUploadOptions
- type ImagesPagedResponsedeprecated
- type Instance
- type InstanceAlert
- type InstanceBackup
- type InstanceBackupSnapshotResponse
- type InstanceBackupsResponse
- type InstanceCloneOptions
- type InstanceConfig
- type InstanceConfigCreateOptions
- type InstanceConfigDevice
- type InstanceConfigDeviceMap
- type InstanceConfigHelpers
- type InstanceConfigInterface
- type InstanceConfigInterfaceCreateOptions
- type InstanceConfigInterfaceUpdateOptions
- type InstanceConfigInterfacesReorderOptions
- type InstanceConfigUpdateOptions
- type InstanceConfigsPagedResponsedeprecated
- type InstanceCreateOptions
- type InstanceCreatePlacementGroupOptions
- type InstanceDisk
- type InstanceDiskCloneOptions
- type InstanceDiskCreateOptions
- type InstanceDiskEncryption
- type InstanceDiskUpdateOptions
- type InstanceDisksPagedResponsedeprecated
- type InstanceFirewallsPagedResponsedeprecated
- type InstanceIP
- type InstanceIPAddressResponse
- type InstanceIPNAT1To1
- type InstanceIPType
- type InstanceIPv4Response
- type InstanceIPv6Response
- type InstanceMetadataOptions
- type InstanceMigrateOptions
- type InstanceMigrationType
- type InstancePasswordResetOptions
- type InstancePlacementGroup
- type InstanceRebuildOptions
- type InstanceRescueOptions
- type InstanceReserveIPOptions
- type InstanceResizeOptions
- type InstanceSnapshot
- type InstanceSnapshotDisk
- type InstanceSnapshotStatus
- type InstanceSpec
- type InstanceStats
- type InstanceStatsData
- type InstanceStatus
- type InstanceTransfer
- type InstanceUpdateOptions
- type InstanceUpgradeOptions
- type InstanceVolumesPagedResponsedeprecated
- type InstancesPagedResponsedeprecated
- type Invoice
- type InvoiceItem
- type InvoiceItemsPagedResponsedeprecated
- type InvoiceTaxSummary
- type InvoicesPagedResponsedeprecated
- type LKECluster
- type LKEClusterAPIEndpoint
- type LKEClusterAPIEndpointsPagedResponsedeprecated
- type LKEClusterControlPlane
- type LKEClusterControlPlaneACL
- type LKEClusterControlPlaneACLAddresses
- type LKEClusterControlPlaneACLAddressesOptions
- type LKEClusterControlPlaneACLOptions
- type LKEClusterControlPlaneACLResponse
- type LKEClusterControlPlaneACLUpdateOptions
- type LKEClusterControlPlaneOptions
- type LKEClusterCreateOptions
- type LKEClusterDashboard
- type LKEClusterKubeconfig
- type LKEClusterPollOptions
- type LKEClusterPooldeprecated
- type LKEClusterPoolAutoscalerdeprecated
- type LKEClusterPoolCreateOptionsdeprecated
- type LKEClusterPoolDiskdeprecated
- type LKEClusterPoolLinodedeprecated
- type LKEClusterPoolUpdateOptionsdeprecated
- type LKEClusterPoolsPagedResponsedeprecated
- type LKEClusterRegenerateOptions
- type LKEClusterStatus
- type LKEClusterUpdateOptions
- type LKEClustersPagedResponsedeprecated
- type LKELinodeStatus
- type LKENodePool
- type LKENodePoolAutoscaler
- type LKENodePoolCreateOptions
- type LKENodePoolDisk
- type LKENodePoolLabels
- type LKENodePoolLinode
- type LKENodePoolTaint
- type LKENodePoolTaintEffect
- type LKENodePoolUpdateOptions
- type LKENodePoolsPagedResponsedeprecated
- type LKEType
- type LKETypePrice
- type LKETypeRegionPrice
- type LKEVersion
- type LKEVersionsPagedResponsedeprecated
- type LastLogin
- type LinodeAddons
- type LinodeBackupsAddon
- type LinodeIPAssignment
- type LinodeKernel
- type LinodeKernelsPagedResponsedeprecated
- type LinodePrice
- type LinodeRegionPrice
- type LinodeType
- type LinodeTypeClass
- type LinodeTypesPagedResponsedeprecated
- type LinodesAssignIPsOptions
- type LishAuthMethod
- type ListIPAddressesQuery
- type ListOptions
- type LoadConfigOptions
- type Logger
- type Login
- type LoginsPagedResponsedeprecated
- type LongviewClient
- type LongviewClientCreateOptions
- type LongviewClientUpdateOptions
- type LongviewClientsPagedResponsedeprecated
- type LongviewPlan
- type LongviewPlanUpdateOptions
- type LongviewSubscription
- type LongviewSubscriptionsPagedResponsedeprecated
- type MonthlyInstanceTransferStats
- type MySQLBackupCreateOptions
- type MySQLCreateOptions
- type MySQLDatabase
- type MySQLDatabaseBackup
- type MySQLDatabaseBackupsPagedResponsedeprecated
- type MySQLDatabaseCredential
- type MySQLDatabaseMaintenanceWindow
- type MySQLDatabaseSSL
- type MySQLDatabaseTarget
- type MySQLDatabasesPagedResponsedeprecated
- type MySQLUpdateOptions
- type NetworkAddresses
- type NetworkProtocol
- type NetworkTransferPrice
- type NetworkTransferTypePrice
- type NetworkTransferTypeRegionPrice
- type NodeBalancer
- type NodeBalancerConfig
- type NodeBalancerConfigCreateOptions
- type NodeBalancerConfigRebuildNodeOptions
- type NodeBalancerConfigRebuildOptions
- type NodeBalancerConfigUpdateOptions
- type NodeBalancerConfigsPagedResponsedeprecated
- type NodeBalancerCreateOptions
- type NodeBalancerFirewallsPagedResponsedeprecated
- type NodeBalancerNode
- type NodeBalancerNodeCreateOptions
- type NodeBalancerNodeStatus
- type NodeBalancerNodeUpdateOptions
- type NodeBalancerNodesPagedResponsedeprecated
- type NodeBalancerStats
- type NodeBalancerStatsData
- type NodeBalancerTransfer
- type NodeBalancerType
- type NodeBalancerTypePrice
- type NodeBalancerTypeRegionPrice
- type NodeBalancerUpdateOptions
- type NodeBalancersPagedResponsedeprecated
- type NodeMode
- type Notification
- type NotificationEntity
- type NotificationSeverity
- type NotificationType
- type NotificationsPagedResponsedeprecated
- type OAuthClient
- type OAuthClientCreateOptions
- type OAuthClientStatus
- type OAuthClientUpdateOptions
- type OAuthClientsPagedResponsedeprecated
- type ObjectStorageACL
- type ObjectStorageBucket
- type ObjectStorageBucketAccess
- type ObjectStorageBucketAccessV2
- type ObjectStorageBucketCertdeprecated
- type ObjectStorageBucketCertUploadOptions
- type ObjectStorageBucketCertV2
- type ObjectStorageBucketContent
- type ObjectStorageBucketContentData
- type ObjectStorageBucketCreateOptions
- type ObjectStorageBucketListContentsParams
- type ObjectStorageBucketUpdateAccessOptions
- type ObjectStorageBucketsPagedResponsedeprecated
- type ObjectStorageCluster
- type ObjectStorageClustersPagedResponsedeprecated
- type ObjectStorageEndpoint
- type ObjectStorageEndpointType
- type ObjectStorageKey
- type ObjectStorageKeyBucketAccess
- type ObjectStorageKeyCreateOptions
- type ObjectStorageKeyRegion
- type ObjectStorageKeyUpdateOptions
- type ObjectStorageKeysPagedResponsedeprecated
- type ObjectStorageObjectACLConfigdeprecated
- type ObjectStorageObjectACLConfigUpdateOptions
- type ObjectStorageObjectACLConfigV2
- type ObjectStorageObjectURL
- type ObjectStorageObjectURLCreateOptions
- type ObjectStorageTransfer
- type PageOptions
- type PagedResponse
- type Payment
- type PaymentCreateOptions
- type PaymentMethod
- type PaymentMethodCreateOptions
- type PaymentMethodCreateOptionsData
- type PaymentMethodDataCreditCard
- type PaymentMethodDataGooglePay
- type PaymentMethodDataPaypal
- type PaymentsPagedResponsedeprecated
- type PlacementGroup
- type PlacementGroupAssignOptions
- type PlacementGroupCreateOptions
- type PlacementGroupMember
- type PlacementGroupMigrationInstance
- type PlacementGroupMigrations
- type PlacementGroupPolicy
- type PlacementGroupType
- type PlacementGroupUnAssignOptions
- type PlacementGroupUpdateOptions
- type PostgresBackupCreateOptions
- type PostgresCommitType
- type PostgresCreateOptions
- type PostgresDatabase
- type PostgresDatabaseBackup
- type PostgresDatabaseBackupsPagedResponsedeprecated
- type PostgresDatabaseCredential
- type PostgresDatabaseSSL
- type PostgresDatabaseTarget
- type PostgresDatabasesPagedResponsedeprecated
- type PostgresReplicationType
- type PostgresUpdateOptions
- type Profile
- type ProfileApp
- type ProfileDevice
- type ProfileLogin
- type ProfileLoginsPagedResponsedeprecated
- type ProfilePreferences
- type ProfileReferrals
- type ProfileUpdateOptions
- type PromoCodeCreateOptions
- type Promotion
- type Region
- type RegionAvailability
- type RegionPlacementGroupLimits
- type RegionResolvers
- type RegionsAvailabilityPagedResponsedeprecated
- type RegionsPagedResponsedeprecated
- type Request
- type RequestParams
- type ReserveIPOptions
- type Response
- type RestoreInstanceOptions
- type RetryAfter
- type RetryConditional
- type SSHKey
- type SSHKeyCreateOptions
- type SSHKeyUpdateOptions
- type SSHKeysPagedResponsedeprecated
- type SecurityQuestion
- type SecurityQuestionsAnswerOptions
- type SecurityQuestionsAnswerQuestion
- type SecurityQuestionsListResponse
- type SendPhoneNumberVerificationCodeOptions
- type SortedObjects
- type Stackscript
- type StackscriptCreateOptions
- type StackscriptUDF
- type StackscriptUpdateOptions
- type StackscriptsPagedResponsedeprecated
- type StatsIO
- type StatsNet
- type StatsTraffic
- type Tag
- type TagCreateOptions
- type TaggedObject
- type TaggedObjectList
- type TaggedObjectsPagedResponsedeprecated
- type TagsPagedResponsedeprecated
- type Ticket
- type TicketEntity
- type TicketStatus
- type TicketsPagedResponsedeprecated
- type Token
- type TokenCreateOptions
- type TokenUpdateOptions
- type TokensPagedResponsedeprecated
- type TwoFactorSecret
- type User
- type UserCreateOptions
- type UserGrants
- type UserGrantsUpdateOptions
- type UserType
- type UserUpdateOptions
- type UsersPagedResponsedeprecated
- type VLAN
- type VPC
- type VPCCreateOptions
- type VPCIP
- type VPCIPv4
- type VPCSubnet
- type VPCSubnetCreateOptions
- type VPCSubnetLinode
- type VPCSubnetLinodeInterface
- type VPCSubnetUpdateOptions
- type VPCSubnetsPagedResponsedeprecated
- type VPCUpdateOptions
- type VPCsPagedResponsedeprecated
- type VerifyPhoneNumberOptions
- type Volume
- type VolumeAttachOptions
- type VolumeCreateOptions
- type VolumeStatus
- type VolumeType
- type VolumeTypePrice
- type VolumeTypeRegionPrice
- type VolumeUpdateOptions
- type VolumesPagedResponsedeprecated
Constants ¶
const ( // APIConfigEnvVar environment var to get path to Linode config APIConfigEnvVar = "LINODE_CONFIG" // APIConfigProfileEnvVar specifies the profile to use when loading from a Linode config APIConfigProfileEnvVar = "LINODE_PROFILE" // APIHost Linode API hostname APIHost = "api.linode.com" // APIHostVar environment var to check for alternate API URL APIHostVar = "LINODE_URL" // APIHostCert environment var containing path to CA cert to validate against. // Note that the custom CA cannot be configured together with a custom HTTP Transport. APIHostCert = "LINODE_CA" // APIVersion Linode API version APIVersion = "v4" // APIVersionVar environment var to check for alternate API Version APIVersionVar = "LINODE_API_VERSION" // APIProto connect to API with http(s) APIProto = "https" // APIEnvVar environment var to check for API token APIEnvVar = "LINODE_TOKEN" // APISecondsPerPoll how frequently to poll for new Events or Status in WaitFor functions APISecondsPerPoll = 3 // Maximum wait time for retries APIRetryMaxWaitTime = time.Duration(30) * time.Second APIDefaultCacheExpiration = time.Minute * 15 )
const ( ErrorUnsupported = iota // ErrorFromString is the Code identifying Errors created by string types ErrorFromString // ErrorFromError is the Code identifying Errors created by error types ErrorFromError // ErrorFromStringer is the Code identifying Errors created by fmt.Stringer types ErrorFromStringer )
const ( CapabilityACLB string = "Akamai Cloud Load Balancer" CapabilityBackups string = "Backups" CapabilityBareMetal string = "Bare Metal" CapabilityBlockStorage string = "Block Storage" CapabilityBlockStorageEncryption string = "Block Storage Encryption" CapabilityBlockStorageMigrations string = "Block Storage Migrations" CapabilityCloudFirewall string = "Cloud Firewall" CapabilityDBAAS string = "Managed Databases" CapabilityDiskEncryption string = "Disk Encryption" CapabilityEdgePlans string = "Edge Plans" CapabilityGPU string = "GPU Linodes" CapabilityKubernetesEnterprise string = "Kubernetes Enterprise" CapabilityLKE string = "Kubernetes" CapabilityLKEControlPlaneACL string = "LKE Network Access Control List (IP ACL)" CapabilityLinodes string = "Linodes" CapabilityLkeHaControlPlanes string = "LKE HA Control Planes" CapabilityMachineImages string = "Machine Images" CapabilityMetadata string = "Metadata" CapabilityNodeBalancers string = "NodeBalancers" CapabilityObjectStorage string = "Object Storage" CapabilityObjectStorageAccessKeyRegions string = "Object Storage Access Key Regions" CapabilityObjectStorageEndpointTypes string = "Object Storage Endpoint Types" CapabilityPlacementGroup string = "Placement Group" CapabilityPremiumPlans string = "Premium Plans" CapabilityQuadraT1UVPU string = "NETINT Quadra T1U" CapabilitySupportTicketSeverity string = "Support Ticket Severity" CapabilityVPCs string = "VPCs" CapabilityVPCsExtra string = "VPCs Extra" CapabilityVlans string = "Vlans" // Deprecated: CapabilityObjectStorageRegions constant has been // renamed to `CapabilityObjectStorageAccessKeyRegions`. CapabilityObjectStorageRegions string = CapabilityObjectStorageAccessKeyRegions )
This is an enumeration of Capabilities Linode offers that can be referenced through the user-facing parts of the application. Defined as strings rather than a custom type to avoid breaking change. Can be changed in the potential v2 version.
const (
DefaultConfigProfile = "default"
)
Variables ¶
var ( Version = "dev" // DefaultUserAgent is the default User-Agent sent in HTTP request headers DefaultUserAgent string )
var DefaultConfigPaths = []string{
"%s/.config/linode",
"%s/.config/linode-cli",
}
Functions ¶
func ErrHasStatus ¶ added in v1.31.0
ErrHasStatus checks if err is an error from the Linode API, and whether it contains the given HTTP status code. More than one status code may be given. If len(code) == 0, err is nil or is not a Error, ErrHasStatus will return false.
func FormatConfigPath ¶ added in v1.7.0
func IsNotFound ¶ added in v1.31.0
IsNotFound indicates if err indicates a 404 Not Found error from the Linode API.
Types ¶
type APIError ¶
type APIError struct {
Errors []APIErrorReason `json:"errors"`
}
APIError is the error-set returned by the Linode API when presented with an invalid request
type APIErrorReason ¶
APIErrorReason is an individual invalid request message returned by the Linode API
func (APIErrorReason) Error ¶
func (r APIErrorReason) Error() string
func (APIErrorReason) String ¶ added in v1.39.0
func (r APIErrorReason) String() string
String returns the error reason in a formatted string
type Account ¶
type Account struct { FirstName string `json:"first_name"` LastName string `json:"last_name"` Email string `json:"email"` Company string `json:"company"` Address1 string `json:"address_1"` Address2 string `json:"address_2"` Balance float32 `json:"balance"` BalanceUninvoiced float32 `json:"balance_uninvoiced"` City string `json:"city"` State string `json:"state"` Zip string `json:"zip"` Country string `json:"country"` TaxID string `json:"tax_id"` Phone string `json:"phone"` CreditCard *CreditCard `json:"credit_card"` EUUID string `json:"euuid"` BillingSource string `json:"billing_source"` Capabilities []string `json:"capabilities"` ActiveSince *time.Time `json:"active_since"` ActivePromotions []Promotion `json:"active_promotions"` }
Account associated with the token in use.
func (Account) GetUpdateOptions ¶ added in v1.43.0
func (i Account) GetUpdateOptions() (o AccountUpdateOptions)
GetUpdateOptions converts an Account to AccountUpdateOptions for use in UpdateAccount
func (*Account) UnmarshalJSON ¶ added in v1.35.0
UnmarshalJSON implements the json.Unmarshaler interface
type AccountAgreements ¶ added in v1.43.0
type AccountAgreements struct { EUModel bool `json:"eu_model"` MasterServiceAgreement bool `json:"master_service_agreement"` PrivacyPolicy bool `json:"privacy_policy"` }
AccountAgreements represents the agreements and their acceptance status for an Account
func (AccountAgreements) GetUpdateOptions ¶ added in v1.43.0
func (i AccountAgreements) GetUpdateOptions() (o AccountAgreementsUpdateOptions)
GetUpdateOptions converts an AccountAgreements to AccountAgreementsUpdateOptions for use in UpdateAccountAgreements
type AccountAgreementsUpdateOptions ¶ added in v1.43.0
type AccountAgreementsUpdateOptions struct { EUModel bool `json:"eu_model,omitempty"` MasterServiceAgreement bool `json:"master_service_agreement,omitempty"` PrivacyPolicy bool `json:"privacy_policy,omitempty"` }
AccountAgreementsUpdateOptions fields are those accepted by UpdateAccountAgreements
type AccountAvailability ¶ added in v1.26.0
type AccountAvailability struct { // region id Region string `json:"region"` Unavailable []string `json:"unavailable"` // the available resources in a region to the customer Available []string `json:"available"` }
AccountAvailability returns the resources availability in a region to an account.
type AccountAvailabilityPagedResponse
deprecated
added in
v1.26.0
type AccountAvailabilityPagedResponse legacyPagedResponse[AccountAvailability]
Deprecated: AccountAvailabilityPagedResponse exists for historical compatibility and should not be used.
type AccountBetaProgram ¶ added in v1.21.0
type AccountBetaProgram struct { Label string `json:"label"` ID string `json:"id"` Description string `json:"description"` Started *time.Time `json:"-"` Ended *time.Time `json:"-"` // Date the account was enrolled in the beta program Enrolled *time.Time `json:"-"` }
The details and enrollment information of a Beta program that an account is enrolled in.
func (*AccountBetaProgram) UnmarshalJSON ¶ added in v1.21.0
func (cBeta *AccountBetaProgram) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type AccountBetaProgramCreateOpts ¶ added in v1.21.0
type AccountBetaProgramCreateOpts struct {
ID string `json:"id"`
}
AccountBetaProgramCreateOpts fields are those accepted by JoinBetaProgram
type AccountBetasPagedResponse
deprecated
added in
v1.21.0
type AccountBetasPagedResponse legacyPagedResponse[AccountBetaProgram]
Deprecated: AccountBetasPagedResponse exists for historical compatibility and should not be used.
type AccountMaintenance ¶ added in v1.43.0
type AccountMaintenance struct { Entity *Entity `json:"entity"` Reason string `json:"reason"` Status string `json:"status"` Type string `json:"type"` When *time.Time `json:"when"` }
AccountMaintenance represents a Maintenance object for any entity a user has permissions to view
func (*AccountMaintenance) UnmarshalJSON ¶ added in v1.43.0
func (accountMaintenance *AccountMaintenance) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type AccountServiceTransfer ¶ added in v1.44.0
type AccountServiceTransfer struct { Created *time.Time `json:"-"` Entities AccountServiceTransferEntity `json:"entities"` Expiry *time.Time `json:"-"` IsSender bool `json:"is_sender"` Status AccountServiceTransferStatus `json:"status"` Token string `json:"token"` Updated *time.Time `json:"-"` }
AccountServiceTransfer represents a request to transfer a service on an Account
func (*AccountServiceTransfer) UnmarshalJSON ¶ added in v1.44.0
func (ast *AccountServiceTransfer) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type AccountServiceTransferEntity ¶ added in v1.44.0
type AccountServiceTransferEntity struct {
Linodes []int `json:"linodes"`
}
AccountServiceTransferEntity represents a collection of the services to include in a transfer request, separated by type. Note: At this time, only Linodes can be transferred.
type AccountServiceTransferRequestOptions ¶ added in v1.44.0
type AccountServiceTransferRequestOptions struct {
Entities AccountServiceTransferEntity `json:"entities"`
}
type AccountServiceTransferStatus ¶ added in v1.44.0
type AccountServiceTransferStatus string
AccountServiceTransferStatus constants start with AccountServiceTransfer and include Linode API Account Service Transfer Status values.
const ( AccountServiceTransferAccepted AccountServiceTransferStatus = "accepted" AccountServiceTransferCanceled AccountServiceTransferStatus = "canceled" AccountServiceTransferCompleted AccountServiceTransferStatus = "completed" AccountServiceTransferFailed AccountServiceTransferStatus = "failed" AccountServiceTransferPending AccountServiceTransferStatus = "pending" AccountServiceTransferStale AccountServiceTransferStatus = "stale" )
AccountServiceTransferStatus constants reflect the current status of an AccountServiceTransfer
type AccountSettings ¶ added in v0.8.0
type AccountSettings struct { // The default backups enrollment status for all new Linodes for all users on the account. When enabled, backups are mandatory per instance. BackupsEnabled bool `json:"backups_enabled"` // Wether or not Linode Managed service is enabled for the account. Managed bool `json:"managed"` // Wether or not the Network Helper is enabled for all new Linode Instance Configs on the account. NetworkHelper bool `json:"network_helper"` // A plan name like "longview-3"..."longview-100", or a nil value for to cancel any existing subscription plan. LongviewSubscription *string `json:"longview_subscription"` // A string like "disabled", "suspended", or "active" describing the status of this account’s Object Storage service enrollment. ObjectStorage *string `json:"object_storage"` }
AccountSettings are the account wide flags or plans that effect new resources
type AccountSettingsUpdateOptions ¶ added in v0.8.0
type AccountSettingsUpdateOptions struct { // The default backups enrollment status for all new Linodes for all users on the account. When enabled, backups are mandatory per instance. BackupsEnabled *bool `json:"backups_enabled,omitempty"` // A plan name like "longview-3"..."longview-100", or a nil value for to cancel any existing subscription plan. // Deprecated: Use PUT /longview/plan instead to update the LongviewSubscription LongviewSubscription *string `json:"longview_subscription,omitempty"` // The default network helper setting for all new Linodes and Linode Configs for all users on the account. NetworkHelper *bool `json:"network_helper,omitempty"` }
AccountSettingsUpdateOptions are the updateable account wide flags or plans that effect new resources.
type AccountTransfer ¶ added in v1.23.0
type AccountTransfer struct { Billable int `json:"billable"` Quota int `json:"quota"` Used int `json:"used"` RegionTransfers []AccountTransferRegion `json:"region_transfers"` }
AccountTransfer represents an Account's network utilization for the current month.
type AccountTransferRegion ¶ added in v1.23.0
type AccountTransferRegion struct { ID string `json:"id"` Billable int `json:"billable"` Quota int `json:"quota"` Used int `json:"used"` }
AccountTransferRegion represents an Account's network utilization for the current month in a given region.
type AccountUpdateOptions ¶ added in v1.43.0
type AccountUpdateOptions struct { Address1 string `json:"address_1,omitempty"` Address2 string `json:"address_2,omitempty"` City string `json:"city,omitempty"` Company string `json:"company,omitempty"` Country string `json:"country,omitempty"` Email string `json:"email,omitempty"` FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` Phone string `json:"phone,omitempty"` State string `json:"state,omitempty"` TaxID string `json:"tax_id,omitempty"` Zip string `json:"zip,omitempty"` }
AccountUpdateOptions fields are those accepted by UpdateAccount
type AllocateReserveIPOptions ¶ added in v1.44.0
type BetaProgram ¶ added in v1.21.0
type BetaProgram struct { Label string `json:"label"` ID string `json:"id"` Description string `json:"description"` // Start date of the beta program. Started *time.Time `json:"-"` // End date of the beta program. Ended *time.Time `json:"-"` // Greenlight is a program that allows customers to gain access to // certain beta programs and to collect direct feedback from those customers. GreenlightOnly bool `json:"greenlight_only"` // Link to product marketing page for the beta program. MoreInfo string `json:"more_info"` }
Beta Program is a new product or service that is not generally available to all Akamai customers. Users must enroll into a beta in order to access the functionality.
func (*BetaProgram) UnmarshalJSON ¶ added in v1.21.0
func (beta *BetaProgram) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type BetaProgramPagedResponse
deprecated
added in
v1.36.2
type BetaProgramPagedResponse legacyPagedResponse[BetaProgram]
Deprecated: BetaProgramPagedResponse exists for historical compatibility and should not be used.
type ChildAccount ¶ added in v1.35.0
type ChildAccount = Account
ChildAccount represents an account under the current account. NOTE: This is an alias to prevent any future breaking changes.
type ChildAccountToken ¶ added in v1.35.0
type ChildAccountToken = Token
ChildAccountToken represents a short-lived token created using the CreateChildAccountToken(...) function. NOTE: This is an alias to prevent any future breaking changes.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is a wrapper around the Resty client
func NewClientFromEnv ¶ added in v1.7.0
NewClientFromEnv creates a Client and initializes it with values from the LINODE_CONFIG file and the LINODE_TOKEN environment variable.
func (*Client) AcceptAccountServiceTransfer ¶ added in v1.44.0
AcceptAccountServiceTransfer accepts an AccountServiceTransfer for the provided token to receive the services included in the transfer to the Account.
func (*Client) AcknowledgeAccountAgreements ¶ added in v1.43.0
func (c *Client) AcknowledgeAccountAgreements(ctx context.Context, opts AccountAgreementsUpdateOptions) error
AcknowledgeAccountAgreements acknowledges account agreements for the Account
func (*Client) AddInstanceIPAddress ¶
func (c *Client) AddInstanceIPAddress(ctx context.Context, linodeID int, public bool) (*InstanceIP, error)
AddInstanceIPAddress adds a public or private IP to a Linode instance
func (*Client) AddPaymentMethod ¶ added in v1.43.0
func (c *Client) AddPaymentMethod(ctx context.Context, opts PaymentMethodCreateOptions) error
AddPaymentMethod adds the provided payment method to the account
func (*Client) AddPromoCode ¶ added in v1.43.0
AddPromoCode adds the provided promo code to the account
func (*Client) AddRetryCondition ¶ added in v1.4.1
func (c *Client) AddRetryCondition(retryCondition RetryConditional) *Client
AddRetryCondition adds a RetryConditional function to the Client
func (*Client) AllocateReserveIP ¶ added in v1.44.0
func (c *Client) AllocateReserveIP(ctx context.Context, opts AllocateReserveIPOptions) (*InstanceIP, error)
AllocateReserveIP allocates a new IPv4 address to the Account, with the option to reserve it and optionally assign it to a Linode.
func (*Client) AppendInstanceConfigInterface ¶ added in v1.25.0
func (c *Client) AppendInstanceConfigInterface( ctx context.Context, linodeID int, configID int, opts InstanceConfigInterfaceCreateOptions, ) (*InstanceConfigInterface, error)
func (*Client) AssignInstanceReservedIP ¶ added in v1.42.0
func (c *Client) AssignInstanceReservedIP(ctx context.Context, linodeID int, opts InstanceReserveIPOptions) (*InstanceIP, error)
Function to add additional reserved IPV4 addresses to an existing linode
func (*Client) AssignPlacementGroupLinodes ¶ added in v1.36.0
func (c *Client) AssignPlacementGroupLinodes( ctx context.Context, id int, options PlacementGroupAssignOptions, ) (*PlacementGroup, error)
AssignPlacementGroupLinodes assigns the specified Linodes to the given placement group.
func (*Client) AttachVolume ¶
func (c *Client) AttachVolume(ctx context.Context, volumeID int, opts *VolumeAttachOptions) (*Volume, error)
AttachVolume attaches a volume to a Linode instance
func (*Client) BootInstance ¶
BootInstance will boot a Linode instance A configID of 0 will cause Linode to choose the last/best config
func (*Client) CancelAccountServiceTransfer ¶ added in v1.44.0
CancelAccountServiceTransfer cancels the AccountServiceTransfer for the provided token.
func (*Client) CancelInstanceBackups ¶ added in v0.2.0
CancelInstanceBackups Cancels backups for the specified Linode.
func (*Client) CancelObjectStorage ¶ added in v1.6.0
CancelObjectStorage cancels and removes all object storage from the Account
func (*Client) CloneDomain ¶ added in v1.44.0
func (c *Client) CloneDomain(ctx context.Context, domainID int, opts DomainCloneOptions) (*Domain, error)
CloneDomain clones a Domain and all associated DNS records from a Domain that is registered in Linode's DNS manager.
func (*Client) CloneInstance ¶
func (c *Client) CloneInstance(ctx context.Context, linodeID int, opts InstanceCloneOptions) (*Instance, error)
CloneInstance clone an existing Instances Disks and Configuration profiles to another Linode Instance
func (*Client) CloneInstanceDisk ¶ added in v1.43.0
func (c *Client) CloneInstanceDisk(ctx context.Context, linodeID, diskID int, opts InstanceDiskCloneOptions) (*InstanceDisk, error)
CloneInstanceDisk clones the given InstanceDisk for the given Instance
func (*Client) CloneVolume ¶
CloneVolume clones a Linode volume
func (*Client) ConfirmTwoFactor ¶ added in v1.9.0
func (c *Client) ConfirmTwoFactor(ctx context.Context, opts ConfirmTwoFactorOptions) (*ConfirmTwoFactorResponse, error)
ConfirmTwoFactor confirms that you can successfully generate Two Factor codes and enables TFA on your Account.
func (*Client) CreateChildAccountToken ¶ added in v1.35.0
func (c *Client) CreateChildAccountToken(ctx context.Context, euuid string) (*ChildAccountToken, error)
CreateChildAccountToken creates a short-lived token that can be used to access the Linode API under a child account. The attributes of this token are not currently configurable. NOTE: Parent/Child related features may not be generally available.
func (*Client) CreateDomain ¶
CreateDomain creates a Domain
func (*Client) CreateDomainRecord ¶ added in v0.1.1
func (c *Client) CreateDomainRecord(ctx context.Context, domainID int, opts DomainRecordCreateOptions) (*DomainRecord, error)
CreateDomainRecord creates a DomainRecord
func (*Client) CreateFirewall ¶ added in v0.13.1
CreateFirewall creates a single Firewall with at least one set of inbound or outbound rules
func (*Client) CreateFirewallDevice ¶ added in v0.16.0
func (c *Client) CreateFirewallDevice(ctx context.Context, firewallID int, opts FirewallDeviceCreateOptions) (*FirewallDevice, error)
AddFirewallDevice associates a Device with a given Firewall
func (*Client) CreateIPv6Range ¶ added in v1.3.0
func (c *Client) CreateIPv6Range(ctx context.Context, opts IPv6RangeCreateOptions) (*IPv6Range, error)
CreateIPv6Range creates an IPv6 Range and assigns it based on the provided Linode or route target IPv6 SLAAC address.
func (*Client) CreateImage ¶ added in v0.2.0
CreateImage creates an Image.
func (*Client) CreateImageUpload ¶ added in v0.28.2
func (c *Client) CreateImageUpload(ctx context.Context, opts ImageCreateUploadOptions) (*Image, string, error)
CreateImageUpload creates an Image and an upload URL.
func (*Client) CreateInstance ¶
CreateInstance creates a Linode instance
func (*Client) CreateInstanceConfig ¶
func (c *Client) CreateInstanceConfig(ctx context.Context, linodeID int, opts InstanceConfigCreateOptions) (*InstanceConfig, error)
CreateInstanceConfig creates a new InstanceConfig for the given Instance
func (*Client) CreateInstanceDisk ¶
func (c *Client) CreateInstanceDisk(ctx context.Context, linodeID int, opts InstanceDiskCreateOptions) (*InstanceDisk, error)
CreateInstanceDisk creates a new InstanceDisk for the given Instance
func (*Client) CreateInstanceSnapshot ¶ added in v0.2.0
func (c *Client) CreateInstanceSnapshot(ctx context.Context, linodeID int, label string) (*InstanceSnapshot, error)
CreateInstanceSnapshot Creates or Replaces the snapshot Backup of a Linode. If a previous snapshot exists for this Linode, it will be deleted.
func (*Client) CreateLKECluster ¶ added in v0.13.0
func (c *Client) CreateLKECluster(ctx context.Context, opts LKEClusterCreateOptions) (*LKECluster, error)
CreateLKECluster creates a LKECluster
func (*Client) CreateLKEClusterPool
deprecated
added in
v0.13.0
func (c *Client) CreateLKEClusterPool(ctx context.Context, clusterID int, createOpts LKEClusterPoolCreateOptions) (*LKEClusterPool, error)
Deprecated: CreateLKEClusterPool creates a LKEClusterPool
func (*Client) CreateLKENodePool ¶ added in v1.3.0
func (c *Client) CreateLKENodePool(ctx context.Context, clusterID int, opts LKENodePoolCreateOptions) (*LKENodePool, error)
CreateLKENodePool creates a LKENodePool
func (*Client) CreateLongviewClient ¶ added in v1.14.0
func (c *Client) CreateLongviewClient(ctx context.Context, opts LongviewClientCreateOptions) (*LongviewClient, error)
CreateLongviewClient creates a Longview Client
func (*Client) CreateMySQLDatabase ¶ added in v1.4.0
func (c *Client) CreateMySQLDatabase(ctx context.Context, opts MySQLCreateOptions) (*MySQLDatabase, error)
CreateMySQLDatabase creates a new MySQL Database using the createOpts as configuration, returns the new MySQL Database
func (*Client) CreateMySQLDatabaseBackup ¶ added in v1.6.0
func (c *Client) CreateMySQLDatabaseBackup(ctx context.Context, databaseID int, opts MySQLBackupCreateOptions) error
CreateMySQLDatabaseBackup creates a snapshot for the given MySQL database Deprecated: CreateMySQLDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) CreateNodeBalancer ¶
func (c *Client) CreateNodeBalancer(ctx context.Context, opts NodeBalancerCreateOptions) (*NodeBalancer, error)
CreateNodeBalancer creates a NodeBalancer
func (*Client) CreateNodeBalancerConfig ¶
func (c *Client) CreateNodeBalancerConfig(ctx context.Context, nodebalancerID int, opts NodeBalancerConfigCreateOptions) (*NodeBalancerConfig, error)
CreateNodeBalancerConfig creates a NodeBalancerConfig
func (*Client) CreateNodeBalancerNode ¶
func (c *Client) CreateNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, opts NodeBalancerNodeCreateOptions) (*NodeBalancerNode, error)
CreateNodeBalancerNode creates a NodeBalancerNode
func (*Client) CreateOAuthClient ¶ added in v0.8.0
func (c *Client) CreateOAuthClient(ctx context.Context, opts OAuthClientCreateOptions) (*OAuthClient, error)
CreateOAuthClient creates an OAuthClient
func (*Client) CreateObjectStorageBucket ¶ added in v0.11.0
func (c *Client) CreateObjectStorageBucket(ctx context.Context, opts ObjectStorageBucketCreateOptions) (*ObjectStorageBucket, error)
CreateObjectStorageBucket creates an ObjectStorageBucket
func (*Client) CreateObjectStorageKey ¶ added in v0.11.0
func (c *Client) CreateObjectStorageKey(ctx context.Context, opts ObjectStorageKeyCreateOptions) (*ObjectStorageKey, error)
CreateObjectStorageKey creates a ObjectStorageKey
func (*Client) CreateObjectStorageObjectURL ¶ added in v0.24.1
func (c *Client) CreateObjectStorageObjectURL(ctx context.Context, objectID, label string, opts ObjectStorageObjectURLCreateOptions) (*ObjectStorageObjectURL, error)
func (*Client) CreatePayment ¶ added in v0.8.0
CreatePayment creates a Payment
func (*Client) CreatePlacementGroup ¶ added in v1.36.0
func (c *Client) CreatePlacementGroup( ctx context.Context, options PlacementGroupCreateOptions, ) (*PlacementGroup, error)
CreatePlacementGroup creates a placement group with the specified options.
func (*Client) CreatePostgresDatabase ¶ added in v1.8.0
func (c *Client) CreatePostgresDatabase(ctx context.Context, opts PostgresCreateOptions) (*PostgresDatabase, error)
CreatePostgresDatabase creates a new Postgres Database using the createOpts as configuration, returns the new Postgres Database
func (*Client) CreatePostgresDatabaseBackup ¶ added in v1.8.0
func (c *Client) CreatePostgresDatabaseBackup(ctx context.Context, databaseID int, opts PostgresBackupCreateOptions) error
CreatePostgresDatabaseBackup creates a snapshot for the given Postgres database Deprecated: CreatePostgresDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) CreateSSHKey ¶ added in v0.5.0
CreateSSHKey creates a SSHKey
func (*Client) CreateStackscript ¶
func (c *Client) CreateStackscript(ctx context.Context, opts StackscriptCreateOptions) (*Stackscript, error)
CreateStackscript creates a StackScript
func (*Client) CreateToken ¶ added in v0.6.0
CreateToken creates a Token
func (*Client) CreateTwoFactorSecret ¶ added in v1.9.0
func (c *Client) CreateTwoFactorSecret(ctx context.Context) (*TwoFactorSecret, error)
CreateTwoFactorSecret generates a Two Factor secret for your User.
func (*Client) CreateUser ¶ added in v0.6.0
CreateUser creates a User. The email address must be confirmed before the User account can be accessed.
func (*Client) CreateVPCSubnet ¶ added in v1.25.0
func (*Client) CreateVolume ¶
CreateVolume creates a Linode Volume
func (*Client) DeleteDomain ¶
DeleteDomain deletes the Domain with the specified id
func (*Client) DeleteDomainRecord ¶ added in v0.1.1
DeleteDomainRecord deletes the DomainRecord with the specified id
func (*Client) DeleteFirewall ¶ added in v0.13.1
DeleteFirewall deletes a single Firewall with the provided ID
func (*Client) DeleteFirewallDevice ¶ added in v0.16.0
DeleteFirewallDevice disassociates a Device with a given Firewall
func (*Client) DeleteIPv6Range ¶ added in v1.3.0
DeleteIPv6Range deletes an IPv6 Range.
func (*Client) DeleteImage ¶ added in v0.2.0
DeleteImage deletes the Image with the specified id.
func (*Client) DeleteInstance ¶
DeleteInstance deletes a Linode instance
func (*Client) DeleteInstanceConfig ¶
DeleteInstanceConfig deletes a Linode InstanceConfig
func (*Client) DeleteInstanceConfigInterface ¶ added in v1.25.0
func (*Client) DeleteInstanceDisk ¶
DeleteInstanceDisk deletes a Linode Instance Disk
func (*Client) DeleteInstanceIPAddress ¶ added in v0.24.4
func (*Client) DeleteLKECluster ¶ added in v0.13.0
DeleteLKECluster deletes the LKECluster with the specified id
func (*Client) DeleteLKEClusterControlPlaneACL ¶ added in v1.34.0
DeleteLKEClusterControlPlaneACL deletes the ACL configuration for the given cluster's control plane.
func (*Client) DeleteLKEClusterKubeconfig ¶ added in v1.43.0
DeleteLKEClusterKubeconfig deletes the Kubeconfig for the LKE Cluster specified
func (*Client) DeleteLKEClusterServiceToken ¶ added in v1.15.0
DeleteLKEClusterServiceToken deletes and regenerate the service account token for a Cluster.
func (*Client) DeleteLKENodePool ¶ added in v1.3.0
DeleteLKENodePool deletes the LKENodePool with the specified id
func (*Client) DeleteLKENodePoolNode ¶ added in v1.3.0
DeleteLKENodePoolNode deletes a given node from a node pool
func (*Client) DeleteLongviewClient ¶ added in v1.14.0
DeleteLongviewClient deletes a Longview Client
func (*Client) DeleteMySQLDatabase ¶ added in v1.4.0
DeleteMySQLDatabase deletes an existing MySQL Database with the given id
func (*Client) DeleteNodeBalancer ¶
DeleteNodeBalancer deletes the NodeBalancer with the specified id
func (*Client) DeleteNodeBalancerConfig ¶
func (c *Client) DeleteNodeBalancerConfig(ctx context.Context, nodebalancerID int, configID int) error
DeleteNodeBalancerConfig deletes the NodeBalancerConfig with the specified id
func (*Client) DeleteNodeBalancerNode ¶
func (c *Client) DeleteNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, nodeID int) error
DeleteNodeBalancerNode deletes the NodeBalancerNode with the specified id
func (*Client) DeleteOAuthClient ¶ added in v0.8.0
DeleteOAuthClient deletes the OAuthClient with the specified id
func (*Client) DeleteObjectStorageBucket ¶ added in v0.11.0
func (c *Client) DeleteObjectStorageBucket(ctx context.Context, clusterOrRegionID, label string) error
DeleteObjectStorageBucket deletes the ObjectStorageBucket with the specified label
func (*Client) DeleteObjectStorageBucketCert ¶ added in v0.21.2
func (c *Client) DeleteObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string) error
DeleteObjectStorageBucketCert deletes an ObjectStorageBucketCert
func (*Client) DeleteObjectStorageKey ¶ added in v0.11.0
DeleteObjectStorageKey deletes the ObjectStorageKey with the specified id
func (*Client) DeletePaymentMethod ¶ added in v1.43.0
DeletePaymentMethod deletes the payment method with the provided ID
func (*Client) DeletePhoneNumber ¶ added in v1.9.0
DeletePhoneNumber deletes the verified phone number for the User making this request.
func (*Client) DeletePlacementGroup ¶ added in v1.36.0
DeletePlacementGroup deletes a placement group with the specified ID.
func (*Client) DeletePostgresDatabase ¶ added in v1.8.0
DeletePostgresDatabase deletes an existing Postgres Database with the given id
func (*Client) DeleteProfileApp ¶ added in v1.44.0
DeleteProfileApp revokes the given ProfileApp's access to the account
func (*Client) DeleteProfileDevice ¶ added in v1.44.0
DeleteProfileDevice revokes the given ProfileDevice's status as a trusted device
func (*Client) DeleteReservedIPAddress ¶ added in v1.41.0
DeleteReservedIPAddress deletes a reserved IP address NOTE: Reserved IP feature may not currently be available to all users.
func (*Client) DeleteSSHKey ¶ added in v0.5.0
DeleteSSHKey deletes the SSHKey with the specified id
func (*Client) DeleteStackscript ¶
DeleteStackscript deletes the StackScript with the specified id
func (*Client) DeleteToken ¶ added in v0.6.0
DeleteToken deletes the Token with the specified id
func (*Client) DeleteUser ¶ added in v0.6.0
DeleteUser deletes the User with the specified id
func (*Client) DeleteVPCSubnet ¶ added in v1.25.0
func (*Client) DeleteVolume ¶
DeleteVolume deletes the Volume with the specified id
func (*Client) DetachVolume ¶
DetachVolume detaches a Linode volume
func (*Client) DisableTwoFactor ¶ added in v1.9.0
DisableTwoFactor disables Two Factor Authentication for your User.
func (*Client) EnableInstanceBackups ¶ added in v0.2.0
EnableInstanceBackups Enables backups for the specified Linode.
func (*Client) GetAccount ¶
GetAccount gets the contact and billing information related to the Account.
func (*Client) GetAccountAgreements ¶ added in v1.43.0
func (c *Client) GetAccountAgreements(ctx context.Context) (*AccountAgreements, error)
GetAccountAgreements gets all agreements and their acceptance status for the Account.
func (*Client) GetAccountAvailability ¶ added in v1.26.0
func (c *Client) GetAccountAvailability(ctx context.Context, regionID string) (*AccountAvailability, error)
GetAccountAvailability gets the resources availability in a region to the customer.
func (*Client) GetAccountBetaProgram ¶ added in v1.21.0
func (c *Client) GetAccountBetaProgram(ctx context.Context, betaID string) (*AccountBetaProgram, error)
GetAccountBetaProgram gets the details of a beta program an account is enrolled in.
func (*Client) GetAccountServiceTransfer ¶ added in v1.44.0
func (c *Client) GetAccountServiceTransfer(ctx context.Context, token string) (*AccountServiceTransfer, error)
GetAccountServiceTransfer gets the details of the AccountServiceTransfer for the provided token.
func (*Client) GetAccountSettings ¶ added in v0.8.0
func (c *Client) GetAccountSettings(ctx context.Context) (*AccountSettings, error)
GetAccountSettings gets the account wide flags or plans that effect new resources
func (*Client) GetAccountTransfer ¶ added in v1.23.0
func (c *Client) GetAccountTransfer(ctx context.Context) (*AccountTransfer, error)
GetAccountTransfer gets current Account's network utilization for the current month.
func (*Client) GetBetaProgram ¶ added in v1.21.0
GetBetaProgram gets the beta program's detail with the ID
func (*Client) GetChildAccount ¶ added in v1.35.0
GetChildAccount gets a single child accounts under the current account. NOTE: Parent/Child related features may not be generally available.
func (*Client) GetDatabaseEngine ¶ added in v1.4.0
func (c *Client) GetDatabaseEngine(ctx context.Context, _ *ListOptions, engineID string) (*DatabaseEngine, error)
GetDatabaseEngine returns a specific Database Engine. This endpoint is cached by default.
func (*Client) GetDatabaseType ¶ added in v1.4.0
func (c *Client) GetDatabaseType(ctx context.Context, _ *ListOptions, typeID string) (*DatabaseType, error)
GetDatabaseType returns a specific Database Type. This endpoint is cached by default.
func (*Client) GetDomainRecord ¶
func (c *Client) GetDomainRecord(ctx context.Context, domainID int, recordID int) (*DomainRecord, error)
GetDomainRecord gets the domainrecord with the provided ID
func (*Client) GetDomainZoneFile ¶ added in v0.29.0
GetDomainZoneFile gets the zone file for the last rendered zone for the specified domain.
func (*Client) GetFirewall ¶ added in v0.15.0
GetFirewall gets a single Firewall with the provided ID
func (*Client) GetFirewallDevice ¶ added in v0.16.0
func (c *Client) GetFirewallDevice(ctx context.Context, firewallID, deviceID int) (*FirewallDevice, error)
GetFirewallDevice gets a FirewallDevice given an ID
func (*Client) GetFirewallRules ¶ added in v0.16.0
GetFirewallRules gets the FirewallRuleSet for the given Firewall.
func (*Client) GetIPAddress ¶
GetIPAddress gets the IPAddress with the provided IP.
func (*Client) GetIPv6Pool ¶
GetIPv6Pool gets the template with the provided ID
func (*Client) GetIPv6Range ¶
GetIPv6Range gets details about an IPv6 range
func (*Client) GetInstance ¶
GetInstance gets the instance with the provided ID
func (*Client) GetInstanceBackups ¶
func (c *Client) GetInstanceBackups(ctx context.Context, linodeID int) (*InstanceBackupsResponse, error)
GetInstanceBackups gets the Instance's available Backups. This is not called ListInstanceBackups because a single object is returned, matching the API response.
func (*Client) GetInstanceConfig ¶
func (c *Client) GetInstanceConfig(ctx context.Context, linodeID int, configID int) (*InstanceConfig, error)
GetInstanceConfig gets the template with the provided ID
func (*Client) GetInstanceConfigInterface ¶ added in v1.25.0
func (*Client) GetInstanceDisk ¶
func (c *Client) GetInstanceDisk(ctx context.Context, linodeID int, diskID int) (*InstanceDisk, error)
GetInstanceDisk gets the template with the provided ID
func (*Client) GetInstanceIPAddress ¶
func (c *Client) GetInstanceIPAddress(ctx context.Context, linodeID int, ipaddress string) (*InstanceIP, error)
GetInstanceIPAddress gets the IPAddress for a Linode instance matching a supplied IP address
func (*Client) GetInstanceIPAddresses ¶
func (c *Client) GetInstanceIPAddresses(ctx context.Context, linodeID int) (*InstanceIPAddressResponse, error)
GetInstanceIPAddresses gets the IPAddresses for a Linode instance
func (*Client) GetInstanceSnapshot ¶
func (c *Client) GetInstanceSnapshot(ctx context.Context, linodeID int, snapshotID int) (*InstanceSnapshot, error)
GetInstanceSnapshot gets the snapshot with the provided ID
func (*Client) GetInstanceStats ¶ added in v0.8.0
GetInstanceStats gets the template with the provided ID
func (*Client) GetInstanceStatsByDate ¶ added in v0.8.0
func (c *Client) GetInstanceStatsByDate(ctx context.Context, linodeID int, year int, month int) (*InstanceStats, error)
GetInstanceStatsByDate gets the template with the provided ID, year, and month
func (*Client) GetInstanceTransfer ¶ added in v0.9.0
GetInstanceTransfer gets the instance's network transfer pool statistics for the current month.
func (*Client) GetInstanceTransferMonthly ¶ added in v1.43.0
func (c *Client) GetInstanceTransferMonthly(ctx context.Context, linodeID, year, month int) (*MonthlyInstanceTransferStats, error)
GetInstanceTransferMonthly gets the instance's network transfer pool statistics for a specific month.
func (*Client) GetInvoice ¶
GetInvoice gets a single Invoice matching the provided ID
func (*Client) GetKernel ¶
GetKernel gets the kernel with the provided ID. This endpoint is cached by default.
func (*Client) GetLKECluster ¶ added in v0.13.0
GetLKECluster gets the lkeCluster with the provided ID
func (*Client) GetLKEClusterControlPlaneACL ¶ added in v1.34.0
func (c *Client) GetLKEClusterControlPlaneACL(ctx context.Context, clusterID int) (*LKEClusterControlPlaneACLResponse, error)
GetLKEClusterControlPlaneACL gets the ACL configuration for the given cluster's control plane. NOTE: Control Plane ACLs may not currently be available to all users.
func (*Client) GetLKEClusterDashboard ¶ added in v1.4.0
func (c *Client) GetLKEClusterDashboard(ctx context.Context, clusterID int) (*LKEClusterDashboard, error)
GetLKEClusterDashboard gets information about the dashboard for an LKE cluster
func (*Client) GetLKEClusterKubeconfig ¶ added in v0.13.0
func (c *Client) GetLKEClusterKubeconfig(ctx context.Context, clusterID int) (*LKEClusterKubeconfig, error)
GetLKEClusterKubeconfig gets the Kubeconfig for the LKE Cluster specified
func (*Client) GetLKEClusterPool
deprecated
added in
v0.13.0
func (*Client) GetLKENodePool ¶ added in v1.3.0
GetLKENodePool gets the LKENodePool with the provided ID
func (*Client) GetLKENodePoolNode ¶ added in v1.43.0
func (c *Client) GetLKENodePoolNode(ctx context.Context, clusterID int, nodeID string) (*LKENodePoolLinode, error)
GetLKENodePoolNode gets the LKENodePoolLinode with the provided ID
func (*Client) GetLKEVersion ¶ added in v0.13.0
GetLKEVersion gets details about a specific LKE Version. This endpoint is cached by default.
func (*Client) GetLongviewClient ¶
GetLongviewClient gets the template with the provided ID
func (*Client) GetLongviewPlan ¶ added in v1.14.0
func (c *Client) GetLongviewPlan(ctx context.Context) (*LongviewPlan, error)
GetLongviewPlan gets the template with the provided ID
func (*Client) GetLongviewSubscription ¶
func (c *Client) GetLongviewSubscription(ctx context.Context, templateID string) (*LongviewSubscription, error)
GetLongviewSubscription gets the template with the provided ID
func (*Client) GetMySQLDatabase ¶ added in v1.4.0
GetMySQLDatabase returns a single MySQL Database matching the id
func (*Client) GetMySQLDatabaseBackup ¶ added in v1.4.0
func (c *Client) GetMySQLDatabaseBackup(ctx context.Context, databaseID int, backupID int) (*MySQLDatabaseBackup, error)
GetMySQLDatabaseBackup returns a specific MySQL Database Backup with the given ids Deprecated: GetMySQLDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) GetMySQLDatabaseCredentials ¶ added in v1.4.0
func (c *Client) GetMySQLDatabaseCredentials(ctx context.Context, databaseID int) (*MySQLDatabaseCredential, error)
GetMySQLDatabaseCredentials returns the Root Credentials for the given MySQL Database
func (*Client) GetMySQLDatabaseSSL ¶ added in v1.4.0
func (c *Client) GetMySQLDatabaseSSL(ctx context.Context, databaseID int) (*MySQLDatabaseSSL, error)
GetMySQLDatabaseSSL returns the SSL Certificate for the given MySQL Database
func (*Client) GetNodeBalancer ¶
GetNodeBalancer gets the NodeBalancer with the provided ID
func (*Client) GetNodeBalancerConfig ¶
func (c *Client) GetNodeBalancerConfig(ctx context.Context, nodebalancerID int, configID int) (*NodeBalancerConfig, error)
GetNodeBalancerConfig gets the template with the provided ID
func (*Client) GetNodeBalancerNode ¶
func (c *Client) GetNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, nodeID int) (*NodeBalancerNode, error)
GetNodeBalancerNode gets the template with the provided ID
func (*Client) GetNodeBalancerStats ¶ added in v0.13.0
func (c *Client) GetNodeBalancerStats(ctx context.Context, nodebalancerID int) (*NodeBalancerStats, error)
GetNodeBalancerStats gets the template with the provided ID
func (*Client) GetOAuthClient ¶ added in v0.8.0
GetOAuthClient gets the OAuthClient with the provided ID
func (*Client) GetObjectStorageBucket ¶ added in v0.11.0
func (c *Client) GetObjectStorageBucket(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucket, error)
GetObjectStorageBucket gets the ObjectStorageBucket with the provided label
func (*Client) GetObjectStorageBucketAccess ¶ added in v0.26.1
func (c *Client) GetObjectStorageBucketAccess(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucketAccess, error)
GetObjectStorageBucketAccess gets the current access config for a bucket Deprecated: use GetObjectStorageBucketAccessV2 for new implementations
func (*Client) GetObjectStorageBucketAccessV2 ¶ added in v1.46.0
func (c *Client) GetObjectStorageBucketAccessV2(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucketAccessV2, error)
GetObjectStorageBucketAccess gets the current access config for a bucket
func (*Client) GetObjectStorageBucketCert ¶ added in v0.21.2
func (c *Client) GetObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string) (*ObjectStorageBucketCert, error)
GetObjectStorageBucketCert gets an ObjectStorageBucketCert Deprecated: Please use GetObjectStorageBucketCertV2 for all new implementations.
func (*Client) GetObjectStorageBucketCertV2 ¶ added in v1.46.0
func (c *Client) GetObjectStorageBucketCertV2(ctx context.Context, clusterOrRegionID, bucket string) (*ObjectStorageBucketCertV2, error)
GetObjectStorageBucketCertV2 gets an ObjectStorageBucketCert
func (*Client) GetObjectStorageCluster
deprecated
added in
v0.11.0
func (*Client) GetObjectStorageKey ¶ added in v0.11.0
GetObjectStorageKey gets the object storage key with the provided ID
func (*Client) GetObjectStorageObjectACLConfig
deprecated
added in
v0.24.1
func (*Client) GetObjectStorageObjectACLConfigV2 ¶ added in v1.46.0
func (*Client) GetObjectStorageTransfer ¶ added in v1.6.0
func (c *Client) GetObjectStorageTransfer(ctx context.Context) (*ObjectStorageTransfer, error)
GetObjectStorageTransfer returns the amount of outbound data transferred used by the Account
func (*Client) GetPayment ¶ added in v0.8.0
GetPayment gets the payment with the provided ID
func (*Client) GetPaymentMethod ¶ added in v1.43.0
GetPaymentMethod gets the payment method with the provided ID
func (*Client) GetPlacementGroup ¶ added in v1.36.0
GetPlacementGroup gets a placement group with the specified ID.
func (*Client) GetPollDelay ¶ added in v1.6.0
GetPollDelay gets the number of milliseconds to wait between events or status polls. Affects all WaitFor* functions and retries.
func (*Client) GetPostgresDatabase ¶ added in v1.8.0
func (c *Client) GetPostgresDatabase(ctx context.Context, databaseID int) (*PostgresDatabase, error)
GetPostgresDatabase returns a single Postgres Database matching the id
func (*Client) GetPostgresDatabaseBackup ¶ added in v1.8.0
func (c *Client) GetPostgresDatabaseBackup(ctx context.Context, databaseID int, backupID int) (*PostgresDatabaseBackup, error)
GetPostgresDatabaseBackup returns a specific Postgres Database Backup with the given ids Deprecated: GetPostgresDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) GetPostgresDatabaseCredentials ¶ added in v1.8.0
func (c *Client) GetPostgresDatabaseCredentials(ctx context.Context, databaseID int) (*PostgresDatabaseCredential, error)
GetPostgresDatabaseCredentials returns the Root Credentials for the given Postgres Database
func (*Client) GetPostgresDatabaseSSL ¶ added in v1.8.0
func (c *Client) GetPostgresDatabaseSSL(ctx context.Context, databaseID int) (*PostgresDatabaseSSL, error)
GetPostgresDatabaseSSL returns the SSL Certificate for the given Postgres Database
func (*Client) GetProfile ¶ added in v0.6.1
GetProfile returns the Profile of the authenticated user
func (*Client) GetProfileApp ¶ added in v1.44.0
GetProfileApp returns the ProfileApp with the provided id
func (*Client) GetProfileDevice ¶ added in v1.44.0
GetProfileDevice returns the ProfileDevice with the provided id
func (*Client) GetProfileLogin ¶ added in v1.15.0
GetProfileLogin returns the Profile Login of the authenticated user
func (*Client) GetProfilePreferences ¶ added in v1.44.0
func (c *Client) GetProfilePreferences(ctx context.Context) (*ProfilePreferences, error)
GetProfilePreferences retrieves the user preferences for the current User
func (*Client) GetRegion ¶
GetRegion gets the template with the provided ID. This endpoint is cached by default.
func (*Client) GetRegionAvailability ¶ added in v1.24.0
func (c *Client) GetRegionAvailability(ctx context.Context, regionID string) (*RegionAvailability, error)
GetRegionAvailability gets the template with the provided ID. This endpoint is cached by default.
func (*Client) GetReservedIPAddress ¶ added in v1.41.0
GetReservedIPAddress retrieves details of a specific reserved IP address NOTE: Reserved IP feature may not currently be available to all users.
func (*Client) GetStackscript ¶
GetStackscript gets the Stackscript with the provided ID
func (*Client) GetType ¶
GetType gets the type with the provided ID. This endpoint is cached by default.
func (*Client) GetUserGrants ¶ added in v0.25.0
func (*Client) GetVLANIPAMAddress ¶ added in v1.8.1
func (c *Client) GetVLANIPAMAddress(ctx context.Context, linodeID int, vlanLabel string) (string, error)
GetVLANIPAMAddress returns the IPAM Address for a given VLAN Label as a string (10.0.0.1/24)
func (*Client) GetVPCSubnet ¶ added in v1.25.0
func (*Client) GrantsList ¶ added in v1.13.0
func (c *Client) GrantsList(ctx context.Context) (*GrantsListResponse, error)
func (*Client) ImportDomain ¶ added in v1.44.0
ImportDomain imports a domain zone from a remote nameserver.
func (*Client) InstancesAssignIPs ¶ added in v1.3.0
func (c *Client) InstancesAssignIPs(ctx context.Context, opts LinodesAssignIPsOptions) error
InstancesAssignIPs assigns multiple IPv4 addresses and/or IPv6 ranges to multiple Linodes in one Region. This allows swapping, shuffling, or otherwise reorganizing IPs to your Linodes.
func (*Client) InvalidateCache ¶ added in v1.10.0
func (c *Client) InvalidateCache()
InvalidateCache clears all cached responses for all endpoints.
func (*Client) InvalidateCacheEndpoint ¶ added in v1.10.0
InvalidateCacheEndpoint invalidates a single cached endpoint.
func (*Client) JoinBetaProgram ¶ added in v1.21.0
func (c *Client) JoinBetaProgram(ctx context.Context, opts AccountBetaProgramCreateOpts) (*AccountBetaProgram, error)
JoinBetaProgram enrolls an account into a beta program.
func (*Client) ListAccountAvailabilities ¶ added in v1.26.0
func (c *Client) ListAccountAvailabilities(ctx context.Context, opts *ListOptions) ([]AccountAvailability, error)
ListAccountAvailabilities lists all regions and the resource availabilities to the account.
func (*Client) ListAccountBetaPrograms ¶ added in v1.21.0
func (c *Client) ListAccountBetaPrograms(ctx context.Context, opts *ListOptions) ([]AccountBetaProgram, error)
ListAccountBetaPrograms lists all beta programs an account is enrolled in.
func (*Client) ListAccountServiceTransfer ¶ added in v1.44.0
func (c *Client) ListAccountServiceTransfer(ctx context.Context, opts *ListOptions) ([]AccountServiceTransfer, error)
ListAccountServiceTransfer gets a paginated list of AccountServiceTransfer for the Account.
func (*Client) ListAllVPCIPAddresses ¶ added in v1.33.0
ListAllVPCIPAddresses gets the list of all IP addresses of all VPCs in the Linode account.
func (*Client) ListBetaPrograms ¶ added in v1.21.0
func (c *Client) ListBetaPrograms(ctx context.Context, opts *ListOptions) ([]BetaProgram, error)
ListBetaPrograms lists active beta programs
func (*Client) ListChildAccounts ¶ added in v1.35.0
func (c *Client) ListChildAccounts(ctx context.Context, opts *ListOptions) ([]ChildAccount, error)
ListChildAccounts lists child accounts under the current account. NOTE: Parent/Child related features may not be generally available.
func (*Client) ListDatabaseEngines ¶ added in v1.4.0
func (c *Client) ListDatabaseEngines(ctx context.Context, opts *ListOptions) ([]DatabaseEngine, error)
ListDatabaseEngines lists all Database Engines. This endpoint is cached by default.
func (*Client) ListDatabaseTypes ¶ added in v1.4.0
func (c *Client) ListDatabaseTypes(ctx context.Context, opts *ListOptions) ([]DatabaseType, error)
ListDatabaseTypes lists all Types of Database provided in Linode Managed Databases. This endpoint is cached by default.
func (*Client) ListDatabases ¶ added in v1.4.0
ListDatabases lists all Database instances in Linode Managed Databases for the account
func (*Client) ListDomainRecords ¶
func (c *Client) ListDomainRecords(ctx context.Context, domainID int, opts *ListOptions) ([]DomainRecord, error)
ListDomainRecords lists DomainRecords
func (*Client) ListDomains ¶
ListDomains lists Domains
func (*Client) ListEvents ¶
ListEvents gets a collection of Event objects representing actions taken on the Account. The Events returned depend on the token grants and the grants of the associated user.
func (*Client) ListFirewallDevices ¶ added in v0.16.0
func (c *Client) ListFirewallDevices(ctx context.Context, firewallID int, opts *ListOptions) ([]FirewallDevice, error)
ListFirewallDevices get devices associated with a given Firewall
func (*Client) ListFirewalls ¶ added in v0.13.1
ListFirewalls returns a paginated list of Cloud Firewalls
func (*Client) ListIPAddresses ¶
func (c *Client) ListIPAddresses(ctx context.Context, opts *ListOptions) ([]InstanceIP, error)
ListIPAddresses lists IPAddresses.
func (*Client) ListIPv6Pools ¶
ListIPv6Pools lists IPv6Pools
func (*Client) ListIPv6Ranges ¶
ListIPv6Ranges lists IPv6Ranges
func (*Client) ListImages ¶
ListImages lists Images.
func (*Client) ListInstanceConfigInterfaces ¶ added in v1.25.0
func (*Client) ListInstanceConfigs ¶
func (c *Client) ListInstanceConfigs(ctx context.Context, linodeID int, opts *ListOptions) ([]InstanceConfig, error)
ListInstanceConfigs lists InstanceConfigs
func (*Client) ListInstanceDisks ¶
func (c *Client) ListInstanceDisks(ctx context.Context, linodeID int, opts *ListOptions) ([]InstanceDisk, error)
ListInstanceDisks lists InstanceDisks
func (*Client) ListInstanceFirewalls ¶ added in v1.26.0
func (c *Client) ListInstanceFirewalls(ctx context.Context, linodeID int, opts *ListOptions) ([]Firewall, error)
ListInstanceFirewalls returns a paginated list of Cloud Firewalls for linodeID
func (*Client) ListInstanceNodeBalancers ¶ added in v1.43.0
func (c *Client) ListInstanceNodeBalancers(ctx context.Context, linodeID int, opts *ListOptions) ([]NodeBalancer, error)
ListInstanceNodeBalancers lists NodeBalancers that the provided instance is a node in
func (*Client) ListInstanceVolumes ¶
func (c *Client) ListInstanceVolumes(ctx context.Context, linodeID int, opts *ListOptions) ([]Volume, error)
ListInstanceVolumes lists InstanceVolumes
func (*Client) ListInstances ¶
ListInstances lists linode instances
func (*Client) ListInvoiceItems ¶
func (c *Client) ListInvoiceItems(ctx context.Context, invoiceID int, opts *ListOptions) ([]InvoiceItem, error)
ListInvoiceItems gets the invoice items associated with a specific Invoice
func (*Client) ListInvoices ¶
ListInvoices gets a paginated list of Invoices against the Account
func (*Client) ListKernels ¶
func (c *Client) ListKernels(ctx context.Context, opts *ListOptions) ([]LinodeKernel, error)
ListKernels lists linode kernels. This endpoint is cached by default.
func (*Client) ListLKEClusterAPIEndpoints ¶ added in v0.15.0
func (c *Client) ListLKEClusterAPIEndpoints(ctx context.Context, clusterID int, opts *ListOptions) ([]LKEClusterAPIEndpoint, error)
ListLKEClusterAPIEndpoints gets the API Endpoint for the LKE Cluster specified
func (*Client) ListLKEClusterPools
deprecated
added in
v0.13.0
func (c *Client) ListLKEClusterPools(ctx context.Context, clusterID int, opts *ListOptions) ([]LKEClusterPool, error)
Deprecated: ListLKEClusterPools lists LKEClusterPools
func (*Client) ListLKEClusters ¶ added in v0.13.0
func (c *Client) ListLKEClusters(ctx context.Context, opts *ListOptions) ([]LKECluster, error)
ListLKEClusters lists LKEClusters
func (*Client) ListLKENodePools ¶ added in v1.3.0
func (c *Client) ListLKENodePools(ctx context.Context, clusterID int, opts *ListOptions) ([]LKENodePool, error)
ListLKENodePools lists LKENodePools
func (*Client) ListLKETypes ¶ added in v1.41.0
ListLKETypes lists LKE types. This endpoint is cached by default.
func (*Client) ListLKEVersions ¶ added in v0.13.0
func (c *Client) ListLKEVersions(ctx context.Context, opts *ListOptions) ([]LKEVersion, error)
ListLKEVersions lists the Kubernetes versions available through LKE. This endpoint is cached by default.
func (*Client) ListLogins ¶ added in v1.11.0
func (*Client) ListLongviewClients ¶
func (c *Client) ListLongviewClients(ctx context.Context, opts *ListOptions) ([]LongviewClient, error)
ListLongviewClients lists LongviewClients
func (*Client) ListLongviewSubscriptions ¶
func (c *Client) ListLongviewSubscriptions(ctx context.Context, opts *ListOptions) ([]LongviewSubscription, error)
ListLongviewSubscriptions lists LongviewSubscriptions
func (*Client) ListMaintenances ¶ added in v1.43.0
func (c *Client) ListMaintenances(ctx context.Context, opts *ListOptions) ([]AccountMaintenance, error)
ListMaintenances lists Account Maintenance objects for any entity a user has permissions to view
func (*Client) ListMySQLDatabaseBackups ¶ added in v1.4.0
func (c *Client) ListMySQLDatabaseBackups(ctx context.Context, databaseID int, opts *ListOptions) ([]MySQLDatabaseBackup, error)
ListMySQLDatabaseBackups lists all MySQL Database Backups associated with the given MySQL Database Deprecated: ListMySQLDatabaseBackups is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) ListMySQLDatabases ¶ added in v1.4.0
func (c *Client) ListMySQLDatabases(ctx context.Context, opts *ListOptions) ([]MySQLDatabase, error)
ListMySQLDatabases lists all MySQL Databases associated with the account
func (*Client) ListNetworkTransferPrices ¶ added in v1.41.0
func (c *Client) ListNetworkTransferPrices(ctx context.Context, opts *ListOptions) ([]NetworkTransferPrice, error)
ListNetworkTransferPrices lists network transfer prices. This endpoint is cached by default.
func (*Client) ListNodeBalancerConfigs ¶
func (c *Client) ListNodeBalancerConfigs(ctx context.Context, nodebalancerID int, opts *ListOptions) ([]NodeBalancerConfig, error)
ListNodeBalancerConfigs lists NodeBalancerConfigs
func (*Client) ListNodeBalancerFirewalls ¶ added in v1.26.0
func (c *Client) ListNodeBalancerFirewalls(ctx context.Context, nodebalancerID int, opts *ListOptions) ([]Firewall, error)
ListNodeBalancerFirewalls returns a paginated list of Cloud Firewalls for nodebalancerID
func (*Client) ListNodeBalancerNodes ¶
func (c *Client) ListNodeBalancerNodes(ctx context.Context, nodebalancerID int, configID int, opts *ListOptions) ([]NodeBalancerNode, error)
ListNodeBalancerNodes lists NodeBalancerNodes
func (*Client) ListNodeBalancerTypes ¶ added in v1.41.0
func (c *Client) ListNodeBalancerTypes(ctx context.Context, opts *ListOptions) ([]NodeBalancerType, error)
ListNodeBalancerTypes lists NodeBalancer types. This endpoint is cached by default.
func (*Client) ListNodeBalancers ¶
func (c *Client) ListNodeBalancers(ctx context.Context, opts *ListOptions) ([]NodeBalancer, error)
ListNodeBalancers lists NodeBalancers
func (*Client) ListNotifications ¶
func (c *Client) ListNotifications(ctx context.Context, opts *ListOptions) ([]Notification, error)
ListNotifications gets a collection of Notification objects representing important, often time-sensitive items related to the Account. An account cannot interact directly with Notifications, and a Notification will disappear when the circumstances causing it have been resolved. For example, if the account has an important Ticket open, a response to the Ticket will dismiss the Notification.
func (*Client) ListOAuthClients ¶ added in v0.8.0
func (c *Client) ListOAuthClients(ctx context.Context, opts *ListOptions) ([]OAuthClient, error)
ListOAuthClients lists OAuthClients
func (*Client) ListObjectStorageBucketContents ¶ added in v1.44.0
func (c *Client) ListObjectStorageBucketContents(ctx context.Context, clusterOrRegionID, label string, params *ObjectStorageBucketListContentsParams) (*ObjectStorageBucketContent, error)
Lists the contents of the specified ObjectStorageBucket
func (*Client) ListObjectStorageBuckets ¶ added in v0.11.0
func (c *Client) ListObjectStorageBuckets(ctx context.Context, opts *ListOptions) ([]ObjectStorageBucket, error)
ListObjectStorageBuckets lists ObjectStorageBuckets
func (*Client) ListObjectStorageBucketsInCluster ¶ added in v1.16.0
func (c *Client) ListObjectStorageBucketsInCluster(ctx context.Context, opts *ListOptions, clusterOrRegionID string) ([]ObjectStorageBucket, error)
ListObjectStorageBucketsInCluster lists all ObjectStorageBuckets of a cluster
func (*Client) ListObjectStorageClusters ¶ added in v0.11.0
func (c *Client) ListObjectStorageClusters(ctx context.Context, opts *ListOptions) ([]ObjectStorageCluster, error)
ListObjectStorageClusters lists ObjectStorageClusters
func (*Client) ListObjectStorageEndpoints ¶ added in v1.46.0
func (c *Client) ListObjectStorageEndpoints(ctx context.Context, opts *ListOptions) ([]ObjectStorageEndpoint, error)
ListObjectStorageEndpoints lists all endpoints in all regions
func (*Client) ListObjectStorageKeys ¶ added in v0.11.0
func (c *Client) ListObjectStorageKeys(ctx context.Context, opts *ListOptions) ([]ObjectStorageKey, error)
ListObjectStorageKeys lists ObjectStorageKeys
func (*Client) ListPaymentMethods ¶ added in v1.43.0
func (c *Client) ListPaymentMethods(ctx context.Context, opts *ListOptions) ([]PaymentMethod, error)
ListPaymentMethods lists PaymentMethods
func (*Client) ListPayments ¶ added in v0.8.0
ListPayments lists Payments
func (*Client) ListPlacementGroups ¶ added in v1.36.0
func (c *Client) ListPlacementGroups( ctx context.Context, options *ListOptions, ) ([]PlacementGroup, error)
ListPlacementGroups lists placement groups under the current account matching the given list options.
func (*Client) ListPostgresDatabaseBackups ¶ added in v1.8.0
func (c *Client) ListPostgresDatabaseBackups(ctx context.Context, databaseID int, opts *ListOptions) ([]PostgresDatabaseBackup, error)
ListPostgresDatabaseBackups lists all Postgres Database Backups associated with the given Postgres Database Deprecated: ListPostgresDatabaseBackups is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) ListPostgresDatabases ¶ added in v1.8.0
func (c *Client) ListPostgresDatabases(ctx context.Context, opts *ListOptions) ([]PostgresDatabase, error)
ListPostgresDatabases lists all Postgres Databases associated with the account
func (*Client) ListProfileApps ¶ added in v1.44.0
func (c *Client) ListProfileApps(ctx context.Context, opts *ListOptions) ([]ProfileApp, error)
ListProfileApps lists ProfileApps that have access to the Account
func (*Client) ListProfileDevices ¶ added in v1.44.0
func (c *Client) ListProfileDevices(ctx context.Context, opts *ListOptions) ([]ProfileDevice, error)
ListProfileDevices lists ProfileDevices for the User
func (*Client) ListProfileLogins ¶ added in v1.15.0
func (c *Client) ListProfileLogins(ctx context.Context, opts *ListOptions) ([]ProfileLogin, error)
ListProfileLogins lists Profile Logins of the authenticated user
func (*Client) ListRegions ¶
ListRegions lists Regions. This endpoint is cached by default.
func (*Client) ListRegionsAvailability ¶ added in v1.24.0
func (c *Client) ListRegionsAvailability(ctx context.Context, opts *ListOptions) ([]RegionAvailability, error)
ListRegionsAvailability lists Regions. This endpoint is cached by default.
func (*Client) ListReservedIPAddresses ¶ added in v1.41.0
func (c *Client) ListReservedIPAddresses(ctx context.Context, opts *ListOptions) ([]InstanceIP, error)
ListReservedIPAddresses retrieves a list of reserved IP addresses NOTE: Reserved IP feature may not currently be available to all users.
func (*Client) ListSSHKeys ¶ added in v0.5.0
ListSSHKeys lists SSHKeys
func (*Client) ListStackscripts ¶
func (c *Client) ListStackscripts(ctx context.Context, opts *ListOptions) ([]Stackscript, error)
ListStackscripts lists Stackscripts
func (*Client) ListTaggedObjects ¶ added in v0.6.0
func (c *Client) ListTaggedObjects(ctx context.Context, label string, opts *ListOptions) (TaggedObjectList, error)
ListTaggedObjects lists Tagged Objects
func (*Client) ListTickets ¶
ListTickets returns a collection of Support Tickets on the Account. Support Tickets can be both tickets opened with Linode for support, as well as tickets generated by Linode regarding the Account. This collection includes all Support Tickets generated on the Account, with open tickets returned first.
func (*Client) ListTokens ¶ added in v0.6.0
ListTokens lists Tokens
func (*Client) ListTypes ¶
func (c *Client) ListTypes(ctx context.Context, opts *ListOptions) ([]LinodeType, error)
ListTypes lists linode types. This endpoint is cached by default.
func (*Client) ListVPCIPAddresses ¶ added in v1.31.0
func (c *Client) ListVPCIPAddresses( ctx context.Context, vpcID int, opts *ListOptions, ) ([]VPCIP, error)
ListVPCIPAddresses gets the list of all IP addresses of a specific VPC.
func (*Client) ListVPCSubnets ¶ added in v1.25.0
func (*Client) ListVolumeTypes ¶ added in v1.41.0
func (c *Client) ListVolumeTypes(ctx context.Context, opts *ListOptions) ([]VolumeType, error)
ListVolumeTypes lists Volume types. This endpoint is cached by default.
func (*Client) ListVolumes ¶
ListVolumes lists Volumes
func (*Client) LoadConfig ¶ added in v1.7.0
func (c *Client) LoadConfig(options *LoadConfigOptions) error
LoadConfig loads a Linode config according to the option's argument. If no options are specified, the following defaults will be used: Path: ~/.config/linode Profile: default
func (*Client) MarkEventRead ¶
MarkEventRead marks a single Event as read.
func (*Client) MarkEventsSeen ¶
MarkEventsSeen marks all Events up to and including this Event by ID as seen.
func (*Client) MigrateInstance ¶ added in v0.4.0
func (c *Client) MigrateInstance(ctx context.Context, linodeID int, opts InstanceMigrateOptions) error
MigrateInstance - Migrate an instance
func (Client) NewEventPoller ¶ added in v1.9.0
func (client Client) NewEventPoller( ctx context.Context, id any, entityType EntityType, action EventAction, ) (*EventPoller, error)
NewEventPoller initializes a new Linode event poller. This should be run before the event is triggered as it stores the previous state of the entity's events.
func (Client) NewEventPollerWithSecondary ¶ added in v1.20.0
func (client Client) NewEventPollerWithSecondary( ctx context.Context, id any, primaryEntityType EntityType, secondaryID int, action EventAction, ) (*EventPoller, error)
NewEventPollerWithSecondary initializes a new Linode event poller with for events with a specific secondary entity.
func (Client) NewEventPollerWithoutEntity ¶ added in v1.9.1
func (client Client) NewEventPollerWithoutEntity(entityType EntityType, action EventAction) (*EventPoller, error)
NewEventPollerWithoutEntity initializes a new Linode event poller without a target entity ID. This is useful for create events where the ID of the entity is not yet known. For example: p, _ := client.NewEventPollerWithoutEntity(...) inst, _ := client.CreateInstance(...) p.EntityID = inst.ID ...
func (*Client) OnAfterResponse ¶ added in v1.36.0
OnAfterResponse adds a handler to the request body to run before the request is sent
func (*Client) OnBeforeRequest ¶ added in v1.5.0
OnBeforeRequest adds a handler to the request body to run before the request is sent
func (*Client) PasswordResetInstanceDisk ¶ added in v0.6.0
func (c *Client) PasswordResetInstanceDisk(ctx context.Context, linodeID int, diskID int, password string) error
PasswordResetInstanceDisk resets the "root" account password on the Instance disk
func (*Client) PatchMySQLDatabase ¶ added in v1.6.0
PatchMySQLDatabase applies security patches and updates to the underlying operating system of the Managed MySQL Database
func (*Client) PatchPostgresDatabase ¶ added in v1.8.0
PatchPostgresDatabase applies security patches and updates to the underlying operating system of the Managed Postgres Database
func (*Client) RebootInstance ¶
RebootInstance reboots a Linode instance A configID of 0 will cause Linode to choose the last/best config
func (*Client) RebuildInstance ¶
func (c *Client) RebuildInstance(ctx context.Context, linodeID int, opts InstanceRebuildOptions) (*Instance, error)
RebuildInstance Deletes all Disks and Configs on this Linode, then deploys a new Image to this Linode with the given attributes.
func (*Client) RebuildNodeBalancerConfig ¶ added in v0.5.0
func (c *Client) RebuildNodeBalancerConfig(ctx context.Context, nodeBalancerID int, configID int, opts NodeBalancerConfigRebuildOptions) (*NodeBalancerConfig, error)
RebuildNodeBalancerConfig updates the NodeBalancer with the specified id
func (*Client) RecycleLKEClusterNodes ¶ added in v0.25.3
RecycleLKEClusterNodes recycles all nodes in all pools of the specified LKE Cluster.
func (*Client) RecycleLKENodePool ¶ added in v1.43.0
RecycleLKENodePool recycles a LKENodePool
func (*Client) RecycleLKENodePoolNode ¶ added in v1.43.0
RecycleLKENodePoolNode recycles a LKENodePoolLinode
func (*Client) RegenerateLKECluster ¶ added in v1.15.0
func (c *Client) RegenerateLKECluster(ctx context.Context, clusterID int, opts LKEClusterRegenerateOptions) (*LKECluster, error)
RegenerateLKECluster regenerates the Kubeconfig file and/or the service account token for the specified LKE Cluster.
func (*Client) RenameInstance ¶
RenameInstance renames an Instance
func (*Client) RenameInstanceConfig ¶
func (c *Client) RenameInstanceConfig(ctx context.Context, linodeID int, configID int, label string) (*InstanceConfig, error)
RenameInstanceConfig renames an InstanceConfig
func (*Client) RenameInstanceDisk ¶
func (c *Client) RenameInstanceDisk(ctx context.Context, linodeID int, diskID int, label string) (*InstanceDisk, error)
RenameInstanceDisk renames an InstanceDisk
func (*Client) ReorderInstanceConfigInterfaces ¶ added in v1.25.0
func (*Client) ReplicateImage ¶ added in v1.39.0
func (c *Client) ReplicateImage(ctx context.Context, imageID string, opts ImageReplicateOptions) (*Image, error)
ReplicateImage replicates an image to a given set of regions.
func (*Client) RequestAccountServiceTransfer ¶ added in v1.44.0
func (c *Client) RequestAccountServiceTransfer(ctx context.Context, opts AccountServiceTransferRequestOptions) (*AccountServiceTransfer, error)
RequestAccountServiceTransfer creates a transfer request for the specified services.
func (*Client) RescueInstance ¶ added in v0.2.0
func (c *Client) RescueInstance(ctx context.Context, linodeID int, opts InstanceRescueOptions) error
RescueInstance reboots an instance into a safe environment for performing many system recovery and disk management tasks. Rescue Mode is based on the Finnix recovery distribution, a self-contained and bootable Linux distribution. You can also use Rescue Mode for tasks other than disaster recovery, such as formatting disks to use different filesystems, copying data between disks, and downloading files from a disk via SSH and SFTP.
func (*Client) ReserveIPAddress ¶ added in v1.41.0
func (c *Client) ReserveIPAddress(ctx context.Context, opts ReserveIPOptions) (*InstanceIP, error)
ReserveIPAddress reserves a new IP address NOTE: Reserved IP feature may not currently be available to all users.
func (*Client) ResetInstancePassword ¶ added in v1.43.0
func (c *Client) ResetInstancePassword(ctx context.Context, linodeID int, opts InstancePasswordResetOptions) error
ResetInstancePassword resets a Linode instance's root password
func (*Client) ResetMySQLDatabaseCredentials ¶ added in v1.4.0
ResetMySQLDatabaseCredentials returns the Root Credentials for the given MySQL Database (may take a few seconds to work)
func (*Client) ResetOAuthClientSecret ¶ added in v1.44.0
ResetOAuthClientSecret resets the OAuth Client secret for a client with a specified id
func (*Client) ResetPostgresDatabaseCredentials ¶ added in v1.8.0
ResetPostgresDatabaseCredentials returns the Root Credentials for the given Postgres Database (may take a few seconds to work)
func (*Client) ResizeInstance ¶
func (c *Client) ResizeInstance(ctx context.Context, linodeID int, opts InstanceResizeOptions) error
ResizeInstance resizes an instance to new Linode type
func (*Client) ResizeInstanceDisk ¶
ResizeInstanceDisk resizes the size of the Instance disk
func (*Client) ResizeVolume ¶
ResizeVolume resizes an instance to new Linode type
func (*Client) RestoreInstanceBackup ¶ added in v0.2.0
func (c *Client) RestoreInstanceBackup(ctx context.Context, linodeID int, backupID int, opts RestoreInstanceOptions) error
RestoreInstanceBackup Restores a Linode's Backup to the specified Linode.
func (*Client) RestoreMySQLDatabaseBackup ¶ added in v1.4.0
func (c *Client) RestoreMySQLDatabaseBackup(ctx context.Context, databaseID int, backupID int) error
RestoreMySQLDatabaseBackup returns the given MySQL Database with the given Backup Deprecated: RestoreMySQLDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) RestorePostgresDatabaseBackup ¶ added in v1.8.0
func (c *Client) RestorePostgresDatabaseBackup(ctx context.Context, databaseID int, backupID int) error
RestorePostgresDatabaseBackup returns the given Postgres Database with the given Backup Deprecated: RestorePostgresDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*Client) SecurityQuestionsAnswer ¶ added in v1.9.0
func (c *Client) SecurityQuestionsAnswer(ctx context.Context, opts SecurityQuestionsAnswerOptions) error
SecurityQuestionsAnswer adds security question responses for your User.
func (*Client) SecurityQuestionsList ¶ added in v1.9.0
func (c *Client) SecurityQuestionsList(ctx context.Context) (*SecurityQuestionsListResponse, error)
SecurityQuestionsList returns a collection of security questions and their responses, if any, for your User Profile.
func (*Client) SendPhoneNumberVerificationCode ¶ added in v1.9.0
func (c *Client) SendPhoneNumberVerificationCode(ctx context.Context, opts SendPhoneNumberVerificationCodeOptions) error
SendPhoneNumberVerificationCode sends a one-time verification code via SMS message to the submitted phone number.
func (*Client) SetAPIVersion ¶ added in v0.10.1
SetAPIVersion sets the version of the API to interface with
func (*Client) SetBaseURL ¶ added in v0.1.0
SetBaseURL sets the base URL of the Linode v4 API (https://api.linode.com/v4)
func (*Client) SetDefaultPaymentMethod ¶ added in v1.43.0
SetDefaultPaymentMethod sets the payment method with the provided ID as the default
func (*Client) SetGlobalCacheExpiration ¶ added in v1.10.0
SetGlobalCacheExpiration sets the desired time for any cached response to be valid for.
func (*Client) SetHeader ¶ added in v1.17.1
SetHeader sets a custom header to be used in all API requests made with the current client. NOTE: Some headers may be overridden by the individual request functions.
func (*Client) SetLogger ¶ added in v1.24.0
SetLogger allows the user to override the output logger for debug logs.
func (*Client) SetPollDelay ¶ added in v0.6.0
SetPollDelay sets the number of milliseconds to wait between events or status polls. Affects all WaitFor* functions and retries.
func (*Client) SetRetries ¶ added in v0.13.0
SetRetries adds retry conditions for "Linode Busy." errors and 429s.
func (*Client) SetRetryAfter ¶ added in v0.24.3
func (c *Client) SetRetryAfter(callback RetryAfter) *Client
SetRetryAfter sets the callback function to be invoked with a failed request to determine wben it should be retried.
func (*Client) SetRetryCount ¶ added in v0.24.3
SetRetryCount sets the maximum retry attempts before aborting.
func (*Client) SetRetryMaxWaitTime ¶ added in v0.13.0
SetRetryMaxWaitTime sets the maximum delay before retrying a request.
func (*Client) SetRetryWaitTime ¶ added in v0.24.3
SetRetryWaitTime sets the default (minimum) delay before retrying a request.
func (*Client) SetRootCertificate ¶ added in v0.9.1
SetRootCertificate adds a root certificate to the underlying TLS client config
func (*Client) SetToken ¶ added in v0.9.1
SetToken sets the API token for all requests from this client Only necessary if you haven't already provided the http client to NewClient() configured with the token.
func (*Client) SetUserAgent ¶
SetUserAgent sets a custom user-agent for HTTP requests
func (*Client) ShareIPAddresses ¶ added in v1.4.0
func (c *Client) ShareIPAddresses(ctx context.Context, opts IPAddressesShareOptions) error
ShareIPAddresses allows IP address reassignment (also referred to as IP failover) from one Linode to another if the primary Linode becomes unresponsive.
func (*Client) ShutdownInstance ¶
ShutdownInstance - Shutdown an instance
func (*Client) UnassignPlacementGroupLinodes ¶ added in v1.36.0
func (c *Client) UnassignPlacementGroupLinodes( ctx context.Context, id int, options PlacementGroupUnAssignOptions, ) (*PlacementGroup, error)
UnassignPlacementGroupLinodes un-assigns the specified Linodes from the given placement group.
func (*Client) UpdateAccount ¶ added in v1.43.0
UpdateAccount updates the Account
func (*Client) UpdateAccountSettings ¶ added in v0.8.0
func (c *Client) UpdateAccountSettings(ctx context.Context, opts AccountSettingsUpdateOptions) (*AccountSettings, error)
UpdateAccountSettings updates the settings associated with the account
func (*Client) UpdateDomain ¶
func (c *Client) UpdateDomain(ctx context.Context, domainID int, opts DomainUpdateOptions) (*Domain, error)
UpdateDomain updates the Domain with the specified id
func (*Client) UpdateDomainRecord ¶ added in v0.1.1
func (c *Client) UpdateDomainRecord(ctx context.Context, domainID int, recordID int, opts DomainRecordUpdateOptions) (*DomainRecord, error)
UpdateDomainRecord updates the DomainRecord with the specified id
func (*Client) UpdateFirewall ¶ added in v0.17.0
func (c *Client) UpdateFirewall(ctx context.Context, firewallID int, opts FirewallUpdateOptions) (*Firewall, error)
UpdateFirewall updates a Firewall with the given ID
func (*Client) UpdateFirewallRules ¶ added in v0.16.0
func (c *Client) UpdateFirewallRules(ctx context.Context, firewallID int, rules FirewallRuleSet) (*FirewallRuleSet, error)
UpdateFirewallRules updates the FirewallRuleSet for the given Firewall
func (*Client) UpdateIPAddress ¶ added in v0.7.0
func (c *Client) UpdateIPAddress(ctx context.Context, id string, opts IPAddressUpdateOptions) (*InstanceIP, error)
UpdateIPAddress updates the IP address with the specified id. Deprecated: Please use UpdateIPAddressV2 for all new implementation.
func (*Client) UpdateIPAddressV2 ¶ added in v1.44.0
func (c *Client) UpdateIPAddressV2(ctx context.Context, address string, opts IPAddressUpdateOptionsV2) (*InstanceIP, error)
UpdateIPAddressV2 updates the IP address with the specified address.
func (*Client) UpdateImage ¶ added in v0.2.0
func (c *Client) UpdateImage(ctx context.Context, imageID string, opts ImageUpdateOptions) (*Image, error)
UpdateImage updates the Image with the specified id.
func (*Client) UpdateInstance ¶
func (c *Client) UpdateInstance(ctx context.Context, linodeID int, opts InstanceUpdateOptions) (*Instance, error)
UpdateInstance creates a Linode instance
func (*Client) UpdateInstanceConfig ¶
func (c *Client) UpdateInstanceConfig(ctx context.Context, linodeID int, configID int, opts InstanceConfigUpdateOptions) (*InstanceConfig, error)
UpdateInstanceConfig update an InstanceConfig for the given Instance
func (*Client) UpdateInstanceConfigInterface ¶ added in v1.25.0
func (c *Client) UpdateInstanceConfigInterface( ctx context.Context, linodeID int, configID int, interfaceID int, opts InstanceConfigInterfaceUpdateOptions, ) (*InstanceConfigInterface, error)
func (*Client) UpdateInstanceDisk ¶
func (c *Client) UpdateInstanceDisk(ctx context.Context, linodeID int, diskID int, opts InstanceDiskUpdateOptions) (*InstanceDisk, error)
UpdateInstanceDisk creates a new InstanceDisk for the given Instance
func (*Client) UpdateInstanceIPAddress ¶ added in v0.8.0
func (c *Client) UpdateInstanceIPAddress(ctx context.Context, linodeID int, ipAddress string, opts IPAddressUpdateOptions) (*InstanceIP, error)
UpdateInstanceIPAddress updates the IPAddress with the specified instance id and IP address
func (*Client) UpdateLKECluster ¶ added in v0.13.0
func (c *Client) UpdateLKECluster(ctx context.Context, clusterID int, opts LKEClusterUpdateOptions) (*LKECluster, error)
UpdateLKECluster updates the LKECluster with the specified id
func (*Client) UpdateLKEClusterControlPlaneACL ¶ added in v1.34.0
func (c *Client) UpdateLKEClusterControlPlaneACL( ctx context.Context, clusterID int, opts LKEClusterControlPlaneACLUpdateOptions, ) (*LKEClusterControlPlaneACLResponse, error)
UpdateLKEClusterControlPlaneACL updates the ACL configuration for the given cluster's control plane. NOTE: Control Plane ACLs may not currently be available to all users.
func (*Client) UpdateLKEClusterPool
deprecated
added in
v0.13.0
func (c *Client) UpdateLKEClusterPool(ctx context.Context, clusterID, id int, updateOpts LKEClusterPoolUpdateOptions) (*LKEClusterPool, error)
Deprecated: UpdateLKEClusterPool updates the LKEClusterPool with the specified id
func (*Client) UpdateLKENodePool ¶ added in v1.3.0
func (c *Client) UpdateLKENodePool(ctx context.Context, clusterID, poolID int, opts LKENodePoolUpdateOptions) (*LKENodePool, error)
UpdateLKENodePool updates the LKENodePool with the specified id
func (*Client) UpdateLongviewClient ¶ added in v1.14.0
func (c *Client) UpdateLongviewClient(ctx context.Context, clientID int, opts LongviewClientUpdateOptions) (*LongviewClient, error)
UpdateLongviewClient updates a Longview Client
func (*Client) UpdateLongviewPlan ¶ added in v1.14.0
func (c *Client) UpdateLongviewPlan(ctx context.Context, opts LongviewPlanUpdateOptions) (*LongviewPlan, error)
UpdateLongviewPlan updates a Longview Plan
func (*Client) UpdateMySQLDatabase ¶ added in v1.4.0
func (c *Client) UpdateMySQLDatabase(ctx context.Context, databaseID int, opts MySQLUpdateOptions) (*MySQLDatabase, error)
UpdateMySQLDatabase updates the given MySQL Database with the provided opts, returns the MySQLDatabase with the new settings
func (*Client) UpdateNodeBalancer ¶
func (c *Client) UpdateNodeBalancer(ctx context.Context, nodebalancerID int, opts NodeBalancerUpdateOptions) (*NodeBalancer, error)
UpdateNodeBalancer updates the NodeBalancer with the specified id
func (*Client) UpdateNodeBalancerConfig ¶
func (c *Client) UpdateNodeBalancerConfig(ctx context.Context, nodebalancerID int, configID int, opts NodeBalancerConfigUpdateOptions) (*NodeBalancerConfig, error)
UpdateNodeBalancerConfig updates the NodeBalancerConfig with the specified id
func (*Client) UpdateNodeBalancerNode ¶
func (c *Client) UpdateNodeBalancerNode(ctx context.Context, nodebalancerID int, configID int, nodeID int, opts NodeBalancerNodeUpdateOptions) (*NodeBalancerNode, error)
UpdateNodeBalancerNode updates the NodeBalancerNode with the specified id
func (*Client) UpdateOAuthClient ¶ added in v0.8.0
func (c *Client) UpdateOAuthClient(ctx context.Context, clientID string, opts OAuthClientUpdateOptions) (*OAuthClient, error)
UpdateOAuthClient updates the OAuthClient with the specified id
func (*Client) UpdateObjectStorageBucketAccess ¶ added in v0.26.1
func (c *Client) UpdateObjectStorageBucketAccess(ctx context.Context, clusterOrRegionID, label string, opts ObjectStorageBucketUpdateAccessOptions) error
UpdateObjectStorageBucketAccess updates the access configuration for an ObjectStorageBucket
func (*Client) UpdateObjectStorageKey ¶ added in v0.11.0
func (c *Client) UpdateObjectStorageKey(ctx context.Context, keyID int, opts ObjectStorageKeyUpdateOptions) (*ObjectStorageKey, error)
UpdateObjectStorageKey updates the object storage key with the specified id
func (*Client) UpdateObjectStorageObjectACLConfig
deprecated
added in
v0.24.1
func (c *Client) UpdateObjectStorageObjectACLConfig(ctx context.Context, objectID, label string, opts ObjectStorageObjectACLConfigUpdateOptions) (*ObjectStorageObjectACLConfig, error)
Deprecated: use UpdateObjectStorageObjectACLConfigV2 for new implementations
func (*Client) UpdateObjectStorageObjectACLConfigV2 ¶ added in v1.46.0
func (c *Client) UpdateObjectStorageObjectACLConfigV2(ctx context.Context, objectID, label string, opts ObjectStorageObjectACLConfigUpdateOptions) (*ObjectStorageObjectACLConfigV2, error)
func (*Client) UpdatePlacementGroup ¶ added in v1.36.0
func (c *Client) UpdatePlacementGroup( ctx context.Context, id int, options PlacementGroupUpdateOptions, ) (*PlacementGroup, error)
UpdatePlacementGroup updates a placement group with the specified ID using the provided options.
func (*Client) UpdatePostgresDatabase ¶ added in v1.8.0
func (c *Client) UpdatePostgresDatabase(ctx context.Context, databaseID int, opts PostgresUpdateOptions) (*PostgresDatabase, error)
UpdatePostgresDatabase updates the given Postgres Database with the provided opts, returns the PostgresDatabase with the new settings
func (*Client) UpdateProfile ¶ added in v0.6.1
UpdateProfile updates the Profile with the specified id
func (*Client) UpdateProfilePreferences ¶ added in v1.44.0
func (c *Client) UpdateProfilePreferences(ctx context.Context, opts ProfilePreferences) (*ProfilePreferences, error)
UpdateProfilePreferences updates the user's preferences with the provided data
func (*Client) UpdateSSHKey ¶ added in v0.5.0
func (c *Client) UpdateSSHKey(ctx context.Context, keyID int, opts SSHKeyUpdateOptions) (*SSHKey, error)
UpdateSSHKey updates the SSHKey with the specified id
func (*Client) UpdateStackscript ¶
func (c *Client) UpdateStackscript(ctx context.Context, scriptID int, opts StackscriptUpdateOptions) (*Stackscript, error)
UpdateStackscript updates the StackScript with the specified id
func (*Client) UpdateToken ¶ added in v0.6.0
func (c *Client) UpdateToken(ctx context.Context, tokenID int, opts TokenUpdateOptions) (*Token, error)
UpdateToken updates the Token with the specified id
func (*Client) UpdateUser ¶ added in v0.6.0
func (c *Client) UpdateUser(ctx context.Context, userID string, opts UserUpdateOptions) (*User, error)
UpdateUser updates the User with the specified id
func (*Client) UpdateUserGrants ¶ added in v0.25.0
func (c *Client) UpdateUserGrants(ctx context.Context, username string, opts UserGrantsUpdateOptions) (*UserGrants, error)
func (*Client) UpdateVPCSubnet ¶ added in v1.25.0
func (*Client) UpdateVolume ¶ added in v0.7.0
func (c *Client) UpdateVolume(ctx context.Context, volumeID int, opts VolumeUpdateOptions) (*Volume, error)
UpdateVolume updates the Volume with the specified id
func (*Client) UpgradeInstance ¶ added in v1.44.0
func (c *Client) UpgradeInstance(ctx context.Context, linodeID int, opts InstanceUpgradeOptions) error
UpgradeInstance upgrades a Linode to its next generation.
func (*Client) UploadImage ¶ added in v0.28.2
UploadImage creates and uploads an image.
func (*Client) UploadImageToURL ¶ added in v0.28.2
UploadImageToURL uploads the given image to the given upload URL.
func (*Client) UploadObjectStorageBucketCert ¶ added in v0.21.2
func (c *Client) UploadObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string, opts ObjectStorageBucketCertUploadOptions) (*ObjectStorageBucketCert, error)
UploadObjectStorageBucketCert uploads a TLS/SSL Cert to be used with an Object Storage Bucket. Deprecated: Please use UploadObjectStorageBucketCertV2 for all new implementations.
func (*Client) UploadObjectStorageBucketCertV2 ¶ added in v1.46.0
func (c *Client) UploadObjectStorageBucketCertV2(ctx context.Context, clusterOrRegionID, bucket string, opts ObjectStorageBucketCertUploadOptions) (*ObjectStorageBucketCertV2, error)
UploadObjectStorageBucketCert uploads a TLS/SSL Cert to be used with an Object Storage Bucket.
func (*Client) UseProfile ¶ added in v1.7.0
UseProfile switches client to use the specified profile. The specified profile must be already be loaded using client.LoadConfig(...)
func (*Client) UseURL ¶ added in v1.32.0
UseURL parses the individual components of the given API URL and configures the client accordingly. For example, a valid URL. For example:
client.UseURL("https://api.test.linode.com/v4beta")
func (*Client) VerifyPhoneNumber ¶ added in v1.9.0
func (c *Client) VerifyPhoneNumber(ctx context.Context, opts VerifyPhoneNumberOptions) error
VerifyPhoneNumber verifies a phone number by confirming the one-time code received via SMS message after accessing the Phone Verification Code Send command.
func (Client) WaitForDatabaseStatus ¶ added in v1.6.0
func (client Client) WaitForDatabaseStatus( ctx context.Context, dbID int, dbEngine DatabaseEngineType, status DatabaseStatus, timeoutSeconds int, ) error
WaitForDatabaseStatus waits for the provided database to have the given status.
func (Client) WaitForEventFinished ¶
func (client Client) WaitForEventFinished( ctx context.Context, id any, entityType EntityType, action EventAction, minStart time.Time, timeoutSeconds int, ) (*Event, error)
WaitForEventFinished waits for an entity action to reach the 'finished' state before returning. It will timeout with an error after timeoutSeconds. If the event indicates a failure both the failed event and the error will be returned. nolint
func (Client) WaitForImageRegionStatus ¶ added in v1.39.0
func (client Client) WaitForImageRegionStatus(ctx context.Context, imageID, region string, status ImageRegionStatus) (*Image, error)
WaitForImageRegionStatus waits for an Image's replica to reach the desired state before returning.
func (Client) WaitForImageStatus ¶ added in v0.28.2
func (client Client) WaitForImageStatus(ctx context.Context, imageID string, status ImageStatus, timeoutSeconds int) (*Image, error)
WaitForImageStatus waits for the Image to reach the desired state before returning. It will timeout with an error after timeoutSeconds.
func (Client) WaitForInstanceDiskStatus ¶ added in v0.6.0
func (client Client) WaitForInstanceDiskStatus(ctx context.Context, instanceID int, diskID int, status DiskStatus, timeoutSeconds int) (*InstanceDisk, error)
WaitForInstanceDiskStatus waits for the Linode instance disk to reach the desired state before returning. It will timeout with an error after timeoutSeconds.
func (Client) WaitForInstanceStatus ¶ added in v0.2.0
func (client Client) WaitForInstanceStatus(ctx context.Context, instanceID int, status InstanceStatus, timeoutSeconds int) (*Instance, error)
WaitForInstanceStatus waits for the Linode instance to reach the desired state before returning. It will timeout with an error after timeoutSeconds.
func (Client) WaitForLKEClusterConditions ¶ added in v0.15.0
func (client Client) WaitForLKEClusterConditions( ctx context.Context, clusterID int, options LKEClusterPollOptions, conditions ...ClusterConditionFunc, ) error
WaitForLKEClusterConditions waits for the given LKE conditions to be true
func (Client) WaitForLKEClusterStatus ¶ added in v0.13.0
func (client Client) WaitForLKEClusterStatus(ctx context.Context, clusterID int, status LKEClusterStatus, timeoutSeconds int) (*LKECluster, error)
WaitForLKEClusterStatus waits for the LKECluster to reach the desired state before returning. It will timeout with an error after timeoutSeconds.
func (Client) WaitForMySQLDatabaseBackup ¶ added in v1.6.0
func (client Client) WaitForMySQLDatabaseBackup(ctx context.Context, dbID int, label string, timeoutSeconds int) (*MySQLDatabaseBackup, error)
WaitForMySQLDatabaseBackup waits for the backup with the given label to be available. Deprecated: WaitForMySQLDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (Client) WaitForPostgresDatabaseBackup ¶ added in v1.8.0
func (client Client) WaitForPostgresDatabaseBackup(ctx context.Context, dbID int, label string, timeoutSeconds int) (*PostgresDatabaseBackup, error)
WaitForPostgresDatabaseBackup waits for the backup with the given label to be available. Deprecated: WaitForPostgresDatabaseBackup is a deprecated method, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (Client) WaitForResourceFree ¶ added in v1.16.2
func (client Client) WaitForResourceFree( ctx context.Context, entityType EntityType, entityID any, timeoutSeconds int, ) error
WaitForResourceFree waits for a resource to have no running events.
func (Client) WaitForSnapshotStatus ¶ added in v0.2.0
func (client Client) WaitForSnapshotStatus(ctx context.Context, instanceID int, snapshotID int, status InstanceSnapshotStatus, timeoutSeconds int) (*InstanceSnapshot, error)
WaitForSnapshotStatus waits for the Snapshot to reach the desired state before returning. It will timeout with an error after timeoutSeconds.
func (Client) WaitForVolumeLinodeID ¶ added in v0.2.0
func (client Client) WaitForVolumeLinodeID(ctx context.Context, volumeID int, linodeID *int, timeoutSeconds int) (*Volume, error)
WaitForVolumeLinodeID waits for the Volume to match the desired LinodeID before returning. An active Instance will not immediately attach or detach a volume, so the LinodeID must be polled to determine volume readiness from the API. WaitForVolumeLinodeID will timeout with an error after timeoutSeconds.
func (Client) WaitForVolumeStatus ¶ added in v0.2.0
func (client Client) WaitForVolumeStatus(ctx context.Context, volumeID int, status VolumeStatus, timeoutSeconds int) (*Volume, error)
WaitForVolumeStatus waits for the Volume to reach the desired state before returning. It will timeout with an error after timeoutSeconds.
type ClusterConditionFunc ¶ added in v0.21.0
type ClusterConditionFunc func(context.Context, ClusterConditionOptions) (bool, error)
ClusterConditionFunc represents a function that tests a condition against an LKE cluster, returns true if the condition has been reached, false if it has not yet been reached.
type ClusterConditionOptions ¶ added in v0.21.0
type ClusterConditionOptions struct { LKEClusterKubeconfig *LKEClusterKubeconfig TransportWrapper func(http.RoundTripper) http.RoundTripper }
type ClusterPrice ¶ added in v1.4.0
ClusterPrice for Hourly and Monthly price models
type Comp ¶ added in v1.1.0
type Comp struct { Column string Operator FilterOperator Value any }
func (*Comp) JSONValueSegment ¶ added in v1.1.0
type ConfigAlgorithm ¶
type ConfigAlgorithm string
ConfigAlgorithm constants start with Algorithm and include Linode API NodeBalancer Config Algorithms
const ( AlgorithmRoundRobin ConfigAlgorithm = "roundrobin" AlgorithmLeastConn ConfigAlgorithm = "leastconn" AlgorithmSource ConfigAlgorithm = "source" )
ConfigAlgorithm constants reflect the NodeBalancer Config Algorithm
type ConfigCheck ¶
type ConfigCheck string
ConfigCheck constants start with Check and include Linode API NodeBalancer Config Check methods
const ( CheckNone ConfigCheck = "none" CheckConnection ConfigCheck = "connection" CheckHTTP ConfigCheck = "http" CheckHTTPBody ConfigCheck = "http_body" )
ConfigCheck constants reflect the node health status checking method for a NodeBalancer Config
type ConfigCipher ¶
type ConfigCipher string
ConfigCipher constants start with Cipher and include Linode API NodeBalancer Config Cipher values
const ( CipherRecommended ConfigCipher = "recommended" CipherLegacy ConfigCipher = "legacy" )
ConfigCipher constants reflect the preferred cipher set for a NodeBalancer Config
type ConfigInterfacePurpose ¶ added in v0.28.0
type ConfigInterfacePurpose string
ConfigInterfacePurpose options start with InterfacePurpose and include all known interface purpose types
const ( InterfacePurposePublic ConfigInterfacePurpose = "public" InterfacePurposeVLAN ConfigInterfacePurpose = "vlan" InterfacePurposeVPC ConfigInterfacePurpose = "vpc" )
type ConfigProfile ¶ added in v1.7.0
type ConfigProtocol ¶
type ConfigProtocol string
ConfigProtocol constants start with Protocol and include Linode API Nodebalancer Config protocols
const ( ProtocolHTTP ConfigProtocol = "http" ProtocolHTTPS ConfigProtocol = "https" ProtocolTCP ConfigProtocol = "tcp" )
ConfigProtocol constants reflect the protocol used by a NodeBalancer Config
type ConfigProxyProtocol ¶ added in v0.21.1
type ConfigProxyProtocol string
ConfigProxyProtocol constants start with ProxyProtocol and include Linode API NodeBalancer Config proxy protocol versions
const ( ProxyProtocolNone ConfigProxyProtocol = "none" ProxyProtocolV1 ConfigProxyProtocol = "v1" ProxyProtocolV2 ConfigProxyProtocol = "v2" )
ConfigProxyProtocol constatns reflect the proxy protocol version used by a NodeBalancer Config
type ConfigStickiness ¶
type ConfigStickiness string
ConfigStickiness constants start with Stickiness and include Linode API NodeBalancer Config Stickiness
const ( StickinessNone ConfigStickiness = "none" StickinessTable ConfigStickiness = "table" StickinessHTTPCookie ConfigStickiness = "http_cookie" )
ConfigStickiness constants reflect the node stickiness method for a NodeBalancer Config
type ConfirmTwoFactorOptions ¶ added in v1.9.0
type ConfirmTwoFactorOptions struct {
TFACode string `json:"tfa_code"`
}
ConfirmTwoFactorOptions contains fields used by ConfirmTwoFactor
type ConfirmTwoFactorResponse ¶ added in v1.9.0
type ConfirmTwoFactorResponse struct {
Scratch string `json:"scratch"`
}
ConfirmTwoFactorResponse contains fields returned by ConfirmTwoFactor
type CreditCard ¶
CreditCard information associated with the Account.
type Database ¶ added in v1.4.0
type Database struct { ID int `json:"id"` Status DatabaseStatus `json:"status"` Label string `json:"label"` Hosts DatabaseHost `json:"hosts"` Region string `json:"region"` Type string `json:"type"` Engine string `json:"engine"` Version string `json:"version"` ClusterSize int `json:"cluster_size"` Platform DatabasePlatform `json:"platform"` Fork *DatabaseFork `json:"fork"` Updates DatabaseMaintenanceWindow `json:"updates"` UsedDiskSizeGB int `json:"used_disk_size_gb"` TotalDiskSizeGB int `json:"total_disk_size_gb"` Port int `json:"port"` // Members has dynamic keys so it is a map Members map[string]DatabaseMemberType `json:"members"` // Deprecated: ReplicationType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationType string `json:"replication_type"` // Deprecated: SSLConnection is a deprecated property, as it is no longer supported in DBaaS V2. SSLConnection bool `json:"ssl_connection"` // Deprecated: Encrypted is a deprecated property, as it is no longer supported in DBaaS V2. Encrypted bool `json:"encrypted"` AllowList []string `json:"allow_list"` InstanceURI string `json:"instance_uri"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` OldestRestoreTime *time.Time `json:"-"` }
A Database is a instance of Linode Managed Databases
func (*Database) UnmarshalJSON ¶ added in v1.4.0
type DatabaseDayOfWeek ¶ added in v1.6.0
type DatabaseDayOfWeek int
const ( DatabaseMaintenanceDayMonday DatabaseDayOfWeek = iota + 1 DatabaseMaintenanceDayTuesday DatabaseMaintenanceDayWednesday DatabaseMaintenanceDayThursday DatabaseMaintenanceDayFriday DatabaseMaintenanceDaySaturday DatabaseMaintenanceDaySunday )
type DatabaseEngine ¶ added in v1.4.0
type DatabaseEngine struct { ID string `json:"id"` Engine string `json:"engine"` Version string `json:"version"` }
DatabaseEngine is information about Engines supported by Linode Managed Databases
type DatabaseEngineType ¶ added in v1.6.0
type DatabaseEngineType string
const ( DatabaseEngineTypeMySQL DatabaseEngineType = "mysql" DatabaseEngineTypePostgres DatabaseEngineType = "postgresql" )
type DatabaseEnginesPagedResponse
deprecated
added in
v1.4.0
type DatabaseEnginesPagedResponse legacyPagedResponse[DatabaseEngine]
Deprecated: DatabaseEnginesPagedResponse exists for historical compatibility and should not be used.
type DatabaseFork ¶ added in v1.45.0
DatabaseFork describes the source and restore time for the fork for forked DBs
func (*DatabaseFork) UnmarshalJSON ¶ added in v1.45.0
func (d *DatabaseFork) UnmarshalJSON(b []byte) error
type DatabaseHost ¶ added in v1.4.0
type DatabaseHost struct { Primary string `json:"primary"` Secondary string `json:"secondary,omitempty"` }
DatabaseHost for Primary/Secondary of Database
type DatabaseMaintenanceFrequency ¶ added in v1.6.0
type DatabaseMaintenanceFrequency string
const ( DatabaseMaintenanceFrequencyWeekly DatabaseMaintenanceFrequency = "weekly" DatabaseMaintenanceFrequencyMonthly DatabaseMaintenanceFrequency = "monthly" )
type DatabaseMaintenanceWindow ¶ added in v1.7.0
type DatabaseMaintenanceWindow struct { DayOfWeek DatabaseDayOfWeek `json:"day_of_week"` Duration int `json:"duration"` Frequency DatabaseMaintenanceFrequency `json:"frequency"` HourOfDay int `json:"hour_of_day"` Pending []DatabaseMaintenanceWindowPending `json:"pending,omitempty"` // Deprecated: WeekOfMonth is a deprecated property, as it is no longer supported in DBaaS V2. WeekOfMonth *int `json:"week_of_month,omitempty"` }
DatabaseMaintenanceWindow stores information about a MySQL cluster's maintenance window
type DatabaseMaintenanceWindowPending ¶ added in v1.45.0
type DatabaseMaintenanceWindowPending struct { Deadline *time.Time `json:"-"` Description string `json:"description"` PlannedFor *time.Time `json:"-"` }
func (*DatabaseMaintenanceWindowPending) UnmarshalJSON ¶ added in v1.45.0
func (d *DatabaseMaintenanceWindowPending) UnmarshalJSON(b []byte) error
type DatabaseMemberType ¶ added in v1.45.0
type DatabaseMemberType string
const ( DatabaseMemberTypePrimary DatabaseMemberType = "primary" DatabaseMemberTypeFailover DatabaseMemberType = "failover" )
type DatabasePlatform ¶ added in v1.45.0
type DatabasePlatform string
const ( DatabasePlatformRDBMSLegacy DatabasePlatform = "rdbms-legacy" DatabasePlatformRDBMSDefault DatabasePlatform = "rdbms-default" )
type DatabaseStatus ¶ added in v1.6.0
type DatabaseStatus string
const ( DatabaseStatusProvisioning DatabaseStatus = "provisioning" DatabaseStatusActive DatabaseStatus = "active" DatabaseStatusDeleting DatabaseStatus = "deleting" DatabaseStatusDeleted DatabaseStatus = "deleted" DatabaseStatusSuspending DatabaseStatus = "suspending" DatabaseStatusSuspended DatabaseStatus = "suspended" DatabaseStatusResuming DatabaseStatus = "resuming" DatabaseStatusRestoring DatabaseStatus = "restoring" DatabaseStatusFailed DatabaseStatus = "failed" DatabaseStatusDegraded DatabaseStatus = "degraded" DatabaseStatusUpdating DatabaseStatus = "updating" DatabaseStatusBackingUp DatabaseStatus = "backing_up" )
type DatabaseType ¶ added in v1.4.0
type DatabaseType struct { ID string `json:"id"` Label string `json:"label"` Class string `json:"class"` VirtualCPUs int `json:"vcpus"` Disk int `json:"disk"` Memory int `json:"memory"` Engines DatabaseTypeEngineMap `json:"engines"` Deprecated bool `json:"deprecated"` }
DatabaseType is information about the supported Database Types by Linode Managed Databases
type DatabaseTypeEngine ¶ added in v1.5.0
type DatabaseTypeEngine struct { Quantity int `json:"quantity"` Price ClusterPrice `json:"price"` }
DatabaseTypeEngine Sizes and Prices
type DatabaseTypeEngineMap ¶ added in v1.5.0
type DatabaseTypeEngineMap struct { MySQL []DatabaseTypeEngine `json:"mysql"` PostgreSQL []DatabaseTypeEngine `json:"postgresql"` }
DatabaseTypeEngineMap stores a list of Database Engine types by engine
type DatabaseTypesPagedResponse
deprecated
added in
v1.4.0
type DatabaseTypesPagedResponse legacyPagedResponse[DatabaseType]
Deprecated: DatabaseTypesPagedResponse exists for historical compatibility and should not be used.
type DatabasesPagedResponse
deprecated
added in
v1.4.0
type DatabasesPagedResponse legacyPagedResponse[Database]
Deprecated: DatabasesPagedResponse exists for historical compatibility and should not be used.
type DevicesCreationOptions ¶ added in v0.13.1
type DevicesCreationOptions struct { Linodes []int `json:"linodes,omitempty"` NodeBalancers []int `json:"nodebalancers,omitempty"` }
DevicesCreationOptions fields are used when adding devices during the Firewall creation process.
type DiskFilesystem ¶ added in v0.2.0
type DiskFilesystem string
DiskFilesystem constants start with Filesystem and include Linode API Filesystems
const ( FilesystemRaw DiskFilesystem = "raw" FilesystemSwap DiskFilesystem = "swap" FilesystemExt3 DiskFilesystem = "ext3" FilesystemExt4 DiskFilesystem = "ext4" FilesystemInitrd DiskFilesystem = "initrd" )
DiskFilesystem constants represent the filesystems types an Instance Disk may use
type DiskStatus ¶ added in v0.6.0
type DiskStatus string
DiskStatus constants have the prefix "Disk" and include Linode API Instance Disk Status
const ( DiskReady DiskStatus = "ready" DiskNotReady DiskStatus = "not ready" DiskDeleting DiskStatus = "deleting" )
DiskStatus constants represent the status values an Instance Disk may have
type Domain ¶
type Domain struct { // This Domain's unique ID ID int `json:"id"` // The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain. Domain string `json:"domain"` // If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave). Type DomainType `json:"type"` // Enum:"master" "slave" // Deprecated: The group this Domain belongs to. This is for display purposes only. Group string `json:"group"` // Used to control whether this Domain is currently being rendered. Status DomainStatus `json:"status"` // Enum:"disabled" "active" "edit_mode" "has_errors" // A description for this Domain. This is for display purposes only. Description string `json:"description"` // Start of Authority email address. This is required for master Domains. SOAEmail string `json:"soa_email"` // The interval, in seconds, at which a failed refresh should be retried. // Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. RetrySec int `json:"retry_sec"` // The IP addresses representing the master DNS for this Domain. MasterIPs []string `json:"master_ips"` // The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it. AXfrIPs []string `json:"axfr_ips"` // An array of tags applied to this object. Tags are for organizational purposes only. Tags []string `json:"tags"` // The amount of time in seconds that may pass before this Domain is no longer authoritative. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. ExpireSec int `json:"expire_sec"` // The amount of time in seconds before this Domain should be refreshed. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. RefreshSec int `json:"refresh_sec"` // "Time to Live" - the amount of time in seconds that this Domain's records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. TTLSec int `json:"ttl_sec"` }
Domain represents a Domain object
func (Domain) GetUpdateOptions ¶
func (d Domain) GetUpdateOptions() (du DomainUpdateOptions)
GetUpdateOptions converts a Domain to DomainUpdateOptions for use in UpdateDomain
type DomainCloneOptions ¶ added in v1.44.0
type DomainCloneOptions struct {
Domain string `json:"domain"`
}
type DomainCreateOptions ¶
type DomainCreateOptions struct { // The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain. Domain string `json:"domain"` // If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave). // Enum:"master" "slave" Type DomainType `json:"type"` // Deprecated: The group this Domain belongs to. This is for display purposes only. Group string `json:"group,omitempty"` // Used to control whether this Domain is currently being rendered. // Enum:"disabled" "active" "edit_mode" "has_errors" Status DomainStatus `json:"status,omitempty"` // A description for this Domain. This is for display purposes only. Description string `json:"description,omitempty"` // Start of Authority email address. This is required for master Domains. SOAEmail string `json:"soa_email,omitempty"` // The interval, in seconds, at which a failed refresh should be retried. // Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. RetrySec int `json:"retry_sec,omitempty"` // The IP addresses representing the master DNS for this Domain. MasterIPs []string `json:"master_ips"` // The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it. AXfrIPs []string `json:"axfr_ips"` // An array of tags applied to this object. Tags are for organizational purposes only. Tags []string `json:"tags"` // The amount of time in seconds that may pass before this Domain is no longer authoritative. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. ExpireSec int `json:"expire_sec,omitempty"` // The amount of time in seconds before this Domain should be refreshed. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. RefreshSec int `json:"refresh_sec,omitempty"` // "Time to Live" - the amount of time in seconds that this Domain's records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. TTLSec int `json:"ttl_sec,omitempty"` }
DomainCreateOptions fields are those accepted by CreateDomain
type DomainImportOptions ¶ added in v1.44.0
type DomainRecord ¶
type DomainRecord struct { ID int `json:"id"` Type DomainRecordType `json:"type"` Name string `json:"name"` Target string `json:"target"` Priority int `json:"priority"` Weight int `json:"weight"` Port int `json:"port"` Service *string `json:"service"` Protocol *string `json:"protocol"` TTLSec int `json:"ttl_sec"` Tag *string `json:"tag"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
DomainRecord represents a DomainRecord object
func (DomainRecord) GetUpdateOptions ¶ added in v0.1.1
func (d DomainRecord) GetUpdateOptions() (du DomainRecordUpdateOptions)
GetUpdateOptions converts a DomainRecord to DomainRecordUpdateOptions for use in UpdateDomainRecord
func (*DomainRecord) UnmarshalJSON ¶ added in v1.43.0
func (d *DomainRecord) UnmarshalJSON(b []byte) error
UnmarshalJSON for DomainRecord responses
type DomainRecordCreateOptions ¶ added in v0.1.1
type DomainRecordCreateOptions struct { Type DomainRecordType `json:"type"` Name string `json:"name"` Target string `json:"target"` Priority *int `json:"priority,omitempty"` Weight *int `json:"weight,omitempty"` Port *int `json:"port,omitempty"` Service *string `json:"service,omitempty"` Protocol *string `json:"protocol,omitempty"` TTLSec int `json:"ttl_sec,omitempty"` // 0 is not accepted by Linode, so can be omitted Tag *string `json:"tag,omitempty"` }
DomainRecordCreateOptions fields are those accepted by CreateDomainRecord
type DomainRecordType ¶ added in v0.1.1
type DomainRecordType string
DomainRecordType constants start with RecordType and include Linode API Domain Record Types
const ( RecordTypeA DomainRecordType = "A" RecordTypeAAAA DomainRecordType = "AAAA" RecordTypeNS DomainRecordType = "NS" RecordTypeMX DomainRecordType = "MX" RecordTypeCNAME DomainRecordType = "CNAME" RecordTypeTXT DomainRecordType = "TXT" RecordTypeSRV DomainRecordType = "SRV" RecordTypePTR DomainRecordType = "PTR" RecordTypeCAA DomainRecordType = "CAA" )
DomainRecordType contants are the DNS record types a DomainRecord can assign
type DomainRecordUpdateOptions ¶ added in v0.1.1
type DomainRecordUpdateOptions struct { Type DomainRecordType `json:"type,omitempty"` Name string `json:"name,omitempty"` Target string `json:"target,omitempty"` Priority *int `json:"priority,omitempty"` // 0 is valid, so omit only nil values Weight *int `json:"weight,omitempty"` // 0 is valid, so omit only nil values Port *int `json:"port,omitempty"` // 0 is valid to spec, so omit only nil values Service *string `json:"service,omitempty"` Protocol *string `json:"protocol,omitempty"` TTLSec int `json:"ttl_sec,omitempty"` // 0 is not accepted by Linode, so can be omitted Tag *string `json:"tag,omitempty"` }
DomainRecordUpdateOptions fields are those accepted by UpdateDomainRecord
type DomainRecordsPagedResponse
deprecated
type DomainRecordsPagedResponse legacyPagedResponse[DomainRecord]
Deprecated: DomainRecordsPagedResponse exists for historical compatibility and should not be used.
type DomainStatus ¶ added in v0.1.1
type DomainStatus string
DomainStatus constants start with DomainStatus and include Linode API Domain Status values
const ( DomainStatusDisabled DomainStatus = "disabled" DomainStatusActive DomainStatus = "active" DomainStatusEditMode DomainStatus = "edit_mode" DomainStatusHasErrors DomainStatus = "has_errors" )
DomainStatus constants reflect the current status of a Domain
type DomainType ¶ added in v0.1.1
type DomainType string
DomainType constants start with DomainType and include Linode API Domain Type values
const ( DomainTypeMaster DomainType = "master" DomainTypeSlave DomainType = "slave" )
DomainType constants reflect the DNS zone type of a Domain
type DomainUpdateOptions ¶
type DomainUpdateOptions struct { // The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain. Domain string `json:"domain,omitempty"` // If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave). // Enum:"master" "slave" Type DomainType `json:"type,omitempty"` // Deprecated: The group this Domain belongs to. This is for display purposes only. Group string `json:"group,omitempty"` // Used to control whether this Domain is currently being rendered. // Enum:"disabled" "active" "edit_mode" "has_errors" Status DomainStatus `json:"status,omitempty"` // A description for this Domain. This is for display purposes only. Description string `json:"description,omitempty"` // Start of Authority email address. This is required for master Domains. SOAEmail string `json:"soa_email,omitempty"` // The interval, in seconds, at which a failed refresh should be retried. // Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. RetrySec int `json:"retry_sec,omitempty"` // The IP addresses representing the master DNS for this Domain. MasterIPs []string `json:"master_ips"` // The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it. AXfrIPs []string `json:"axfr_ips"` // An array of tags applied to this object. Tags are for organizational purposes only. Tags []string `json:"tags"` // The amount of time in seconds that may pass before this Domain is no longer authoritative. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. ExpireSec int `json:"expire_sec,omitempty"` // The amount of time in seconds before this Domain should be refreshed. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. RefreshSec int `json:"refresh_sec,omitempty"` // "Time to Live" - the amount of time in seconds that this Domain's records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value. TTLSec int `json:"ttl_sec,omitempty"` }
DomainUpdateOptions converts a Domain to DomainUpdateOptions for use in UpdateDomain
type DomainZoneFile ¶ added in v0.29.0
type DomainZoneFile struct {
ZoneFile []string `json:"zone_file"`
}
DomainZoneFile represents the Zone File of a Domain
type DomainsPagedResponse
deprecated
type DomainsPagedResponse legacyPagedResponse[Domain]
Deprecated: DomainsPagedResponse exists for historical compatibility and should not be used.
type Entity ¶ added in v1.43.0
type Entity struct { ID int `json:"id"` Label string `json:"label"` Type string `json:"type"` URL string `json:"url"` }
The entity being affected by maintenance
type EntityType ¶
type EntityType string
EntityType constants start with Entity and include Linode API Event Entity Types
const ( EntityAccount EntityType = "account" EntityBackups EntityType = "backups" EntityCommunity EntityType = "community" EntityDatabase EntityType = "database" EntityDisk EntityType = "disk" EntityDomain EntityType = "domain" EntityTransfer EntityType = "entity_transfer" EntityFirewall EntityType = "firewall" EntityImage EntityType = "image" EntityIPAddress EntityType = "ipaddress" EntityLinode EntityType = "linode" EntityLongview EntityType = "longview" EntityManagedService EntityType = "managed_service" EntityNodebalancer EntityType = "nodebalancer" EntityOAuthClient EntityType = "oauth_client" EntityPlacementGroup EntityType = "placement_group" EntityProfile EntityType = "profile" EntityStackscript EntityType = "stackscript" EntityTag EntityType = "tag" EntityTicket EntityType = "ticket" EntityToken EntityType = "token" EntityUser EntityType = "user" EntityUserSSHKey EntityType = "user_ssh_key" EntityVolume EntityType = "volume" EntityVPC EntityType = "vpc" EntityVPCSubnet EntityType = "subnet" )
EntityType contants are the entities an Event can be related to.
type EntityUserGrant ¶ added in v0.25.0
type EntityUserGrant struct { ID int `json:"id"` Permissions *GrantPermissionLevel `json:"permissions"` }
type EnvDefaults ¶ added in v1.7.0
type Error ¶
Error wraps the LinodeGo error with the relevant http.Response
func NewError ¶
NewError creates a linodego.Error with a Code identifying the source err type, - ErrorFromString (1) from a string - ErrorFromError (2) for an error - ErrorFromStringer (3) for a Stringer - HTTP Status Codes (100-600) for a resty.Response object
func (Error) StatusCode ¶ added in v1.26.0
type Event ¶
type Event struct { // The unique ID of this Event. ID int `json:"id"` // Current status of the Event, Enum: "failed" "finished" "notification" "scheduled" "started" Status EventStatus `json:"status"` // The action that caused this Event. New actions may be added in the future. Action EventAction `json:"action"` // A percentage estimating the amount of time remaining for an Event. Returns null for notification events. PercentComplete int `json:"percent_complete"` // The rate of completion of the Event. Only some Events will return rate; for example, migration and resize Events. Rate *string `json:"rate"` // If this Event has been read. Read bool `json:"read"` // If this Event has been seen. Seen bool `json:"seen"` // The estimated time remaining until the completion of this Event. This value is only returned for in-progress events. TimeRemaining *int `json:"-"` // The username of the User who caused the Event. Username string `json:"username"` // Detailed information about the Event's entity, including ID, type, label, and URL used to access it. Entity *EventEntity `json:"entity"` // Detailed information about the Event's secondary or related entity, including ID, type, label, and URL used to access it. SecondaryEntity *EventEntity `json:"secondary_entity"` // When this Event was created. Created *time.Time `json:"-"` // Provides additional information about the event. Message string `json:"message"` // The total duration in seconds that it takes for the Event to complete. Duration float64 `json:"duration"` }
Event represents an action taken on the Account.
func (*Event) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type EventAction ¶
type EventAction string
EventAction constants start with Action and include all known Linode API Event Actions.
const ( ActionAccountUpdate EventAction = "account_update" ActionAccountSettingsUpdate EventAction = "account_settings_update" ActionBackupsEnable EventAction = "backups_enable" ActionBackupsCancel EventAction = "backups_cancel" ActionBackupsRestore EventAction = "backups_restore" ActionCommunityQuestionReply EventAction = "community_question_reply" ActionCommunityLike EventAction = "community_like" ActionCreditCardUpdated EventAction = "credit_card_updated" ActionDatabaseCreate EventAction = "database_create" ActionDatabaseDegraded EventAction = "database_degraded" ActionDatabaseDelete EventAction = "database_delete" ActionDatabaseFailed EventAction = "database_failed" ActionDatabaseUpdate EventAction = "database_update" ActionDatabaseCreateFailed EventAction = "database_create_failed" ActionDatabaseUpdateFailed EventAction = "database_update_failed" ActionDatabaseBackupCreate EventAction = "database_backup_create" ActionDatabaseBackupRestore EventAction = "database_backup_restore" ActionDatabaseCredentialsReset EventAction = "database_credentials_reset" ActionDiskCreate EventAction = "disk_create" ActionDiskDelete EventAction = "disk_delete" ActionDiskUpdate EventAction = "disk_update" ActionDiskDuplicate EventAction = "disk_duplicate" ActionDiskImagize EventAction = "disk_imagize" ActionDiskResize EventAction = "disk_resize" ActionDNSRecordCreate EventAction = "dns_record_create" ActionDNSRecordDelete EventAction = "dns_record_delete" ActionDNSRecordUpdate EventAction = "dns_record_update" ActionDNSZoneCreate EventAction = "dns_zone_create" ActionDNSZoneDelete EventAction = "dns_zone_delete" ActionDNSZoneUpdate EventAction = "dns_zone_update" ActionDNSZoneImport EventAction = "dns_zone_import" ActionEntityTransferAccept EventAction = "entity_transfer_accept" ActionEntityTransferCancel EventAction = "entity_transfer_cancel" ActionEntityTransferCreate EventAction = "entity_transfer_create" ActionEntityTransferFail EventAction = "entity_transfer_fail" ActionEntityTransferStale EventAction = "entity_transfer_stale" ActionFirewallCreate EventAction = "firewall_create" ActionFirewallDelete EventAction = "firewall_delete" ActionFirewallDisable EventAction = "firewall_disable" ActionFirewallEnable EventAction = "firewall_enable" ActionFirewallUpdate EventAction = "firewall_update" ActionFirewallDeviceAdd EventAction = "firewall_device_add" ActionFirewallDeviceRemove EventAction = "firewall_device_remove" ActionHostReboot EventAction = "host_reboot" ActionImageDelete EventAction = "image_delete" ActionImageUpdate EventAction = "image_update" ActionImageUpload EventAction = "image_upload" ActionIPAddressUpdate EventAction = "ipaddress_update" ActionLassieReboot EventAction = "lassie_reboot" ActionLinodeAddIP EventAction = "linode_addip" ActionLinodeBoot EventAction = "linode_boot" ActionLinodeClone EventAction = "linode_clone" ActionLinodeCreate EventAction = "linode_create" ActionLinodeDelete EventAction = "linode_delete" ActionLinodeUpdate EventAction = "linode_update" ActionLinodeDeleteIP EventAction = "linode_deleteip" ActionLinodeMigrate EventAction = "linode_migrate" ActionLinodeMigrateDatacenter EventAction = "linode_migrate_datacenter" ActionLinodeMigrateDatacenterCreate EventAction = "linode_migrate_datacenter_create" ActionLinodeMutate EventAction = "linode_mutate" ActionLinodeMutateCreate EventAction = "linode_mutate_create" ActionLinodeReboot EventAction = "linode_reboot" ActionLinodeRebuild EventAction = "linode_rebuild" ActionLinodeResize EventAction = "linode_resize" ActionLinodeResizeCreate EventAction = "linode_resize_create" ActionLinodeShutdown EventAction = "linode_shutdown" ActionLinodeSnapshot EventAction = "linode_snapshot" ActionLinodeConfigCreate EventAction = "linode_config_create" ActionLinodeConfigDelete EventAction = "linode_config_delete" ActionLinodeConfigUpdate EventAction = "linode_config_update" ActionLishBoot EventAction = "lish_boot" ActionLKENodeCreate EventAction = "lke_node_create" ActionLKEControlPlaneACLCreate EventAction = "lke_control_plane_acl_create" ActionLKEControlPlaneACLUpdate EventAction = "lke_control_plane_acl_update" ActionLKEControlPlaneACLDelete EventAction = "lke_control_plane_acl_delete" ActionLongviewClientCreate EventAction = "longviewclient_create" ActionLongviewClientDelete EventAction = "longviewclient_delete" ActionLongviewClientUpdate EventAction = "longviewclient_update" ActionManagedDisabled EventAction = "managed_disabled" ActionManagedEnabled EventAction = "managed_enabled" ActionManagedServiceCreate EventAction = "managed_service_create" ActionManagedServiceDelete EventAction = "managed_service_delete" ActionNodebalancerCreate EventAction = "nodebalancer_create" ActionNodebalancerDelete EventAction = "nodebalancer_delete" ActionNodebalancerUpdate EventAction = "nodebalancer_update" ActionNodebalancerConfigCreate EventAction = "nodebalancer_config_create" ActionNodebalancerConfigDelete EventAction = "nodebalancer_config_delete" ActionNodebalancerConfigUpdate EventAction = "nodebalancer_config_update" ActionNodebalancerFirewallModificationSuccess EventAction = "nodebalancer_firewall_modification_success" ActionNodebalancerFirewallModificationFailed EventAction = "nodebalancer_firewall_modification_failed" ActionNodebalancerNodeCreate EventAction = "nodebalancer_node_create" ActionNodebalancerNodeDelete EventAction = "nodebalancer_node_delete" ActionNodebalancerNodeUpdate EventAction = "nodebalancer_node_update" ActionOAuthClientCreate EventAction = "oauth_client_create" ActionOAuthClientDelete EventAction = "oauth_client_delete" ActionOAuthClientSecretReset EventAction = "oauth_client_secret_reset" //#nosec G101 ActionOAuthClientUpdate EventAction = "oauth_client_update" ActionOBJAccessKeyCreate EventAction = "obj_access_key_create" ActionOBJAccessKeyDelete EventAction = "obj_access_key_delete" ActionOBJAccessKeyUpdate EventAction = "obj_access_key_update" ActionPaymentMethodAdd EventAction = "payment_method_add" ActionPaymentSubmitted EventAction = "payment_submitted" ActionPasswordReset EventAction = "password_reset" ActionPlacementGroupCreate EventAction = "placement_group_create" ActionPlacementGroupUpdate EventAction = "placement_group_update" ActionPlacementGroupDelete EventAction = "placement_group_delete" ActionPlacementGroupAssign EventAction = "placement_group_assign" ActionPlacementGroupUnassign EventAction = "placement_group_unassign" ActionPlacementGroupBecameNonCompliant EventAction = "placement_group_became_non_compliant" ActionPlacementGroupBecameCompliant EventAction = "placement_group_became_compliant" ActionProfileUpdate EventAction = "profile_update" ActionStackScriptCreate EventAction = "stackscript_create" ActionStackScriptDelete EventAction = "stackscript_delete" ActionStackScriptUpdate EventAction = "stackscript_update" ActionStackScriptPublicize EventAction = "stackscript_publicize" ActionStackScriptRevise EventAction = "stackscript_revise" ActionTaxIDInvalid EventAction = "tax_id_invalid" ActionTagCreate EventAction = "tag_create" ActionTagDelete EventAction = "tag_delete" ActionTFADisabled EventAction = "tfa_disabled" ActionTFAEnabled EventAction = "tfa_enabled" ActionTicketAttachmentUpload EventAction = "ticket_attachment_upload" ActionTicketCreate EventAction = "ticket_create" ActionTicketUpdate EventAction = "ticket_update" ActionTokenCreate EventAction = "token_create" ActionTokenDelete EventAction = "token_delete" ActionTokenUpdate EventAction = "token_update" ActionUserCreate EventAction = "user_create" ActionUserDelete EventAction = "user_delete" ActionUserUpdate EventAction = "user_update" ActionUserSSHKeyAdd EventAction = "user_ssh_key_add" ActionUserSSHKeyDelete EventAction = "user_ssh_key_delete" ActionUserSSHKeyUpdate EventAction = "user_ssh_key_update" ActionVLANAttach EventAction = "vlan_attach" ActionVLANDetach EventAction = "vlan_detach" ActionVolumeAttach EventAction = "volume_attach" ActionVolumeClone EventAction = "volume_clone" ActionVolumeCreate EventAction = "volume_create" ActionVolumeDelete EventAction = "volume_delete" ActionVolumeUpdate EventAction = "volume_update" ActionVolumeDetach EventAction = "volume_detach" ActionVolumeResize EventAction = "volume_resize" ActionVPCCreate EventAction = "vpc_create" ActionVPCDelete EventAction = "vpc_delete" ActionVPCUpdate EventAction = "vpc_update" ActionVPCSubnetCreate EventAction = "subnet_create" ActionVPCSubnetDelete EventAction = "subnet_delete" ActionVPCSubnetUpdate EventAction = "subnet_update" // Deprecated: incorrect spelling, // to be removed in the next major version release. ActionVolumeDelte EventAction = "volume_delete" // Deprecated: incorrect spelling, // to be removed in the next major version ActionCreateCardUpdated = ActionCreditCardUpdated )
EventAction constants represent the actions that cause an Event. New actions may be added in the future.
type EventEntity ¶
type EventEntity struct { // ID may be a string or int, it depends on the EntityType ID any `json:"id"` Label string `json:"label"` Type EntityType `json:"type"` Status string `json:"status"` URL string `json:"url"` }
EventEntity provides detailed information about the Event's associated entity, including ID, Type, Label, and a URL that can be used to access it.
type EventPoller ¶ added in v1.9.0
type EventPoller struct { EntityID any EntityType EntityType // Type is excluded here because it is implicitly determined // by the event action. SecondaryEntityID any Action EventAction // contains filtered or unexported fields }
func (*EventPoller) PreTask ¶ added in v1.9.0
func (p *EventPoller) PreTask(ctx context.Context) error
PreTask stores all current events for the given entity to prevent them from being processed on subsequent runs.
func (*EventPoller) WaitForFinished ¶ added in v1.9.0
WaitForFinished waits for a new event to be finished.
func (*EventPoller) WaitForLatestUnknownEvent ¶ added in v1.9.0
func (p *EventPoller) WaitForLatestUnknownEvent(ctx context.Context) (*Event, error)
type EventStatus ¶
type EventStatus string
EventStatus constants start with Event and include Linode API Event Status values
const ( EventFailed EventStatus = "failed" EventFinished EventStatus = "finished" EventNotification EventStatus = "notification" EventScheduled EventStatus = "scheduled" EventStarted EventStatus = "started" )
EventStatus constants reflect the current status of an Event
type EventsPagedResponse
deprecated
type EventsPagedResponse legacyPagedResponse[Event]
Deprecated: EventsPagedResponse exists for historical compatibility and should not be used.
type Filter ¶ added in v1.1.0
type Filter struct { // Operator is the logic for all Children nodes ("+and"/"+or") Operator string Children []FilterNode // OrderBy is the field you want to order your results by (ex: "+order_by": "class") OrderBy string // Order is the direction in which to order the results ("+order": "asc"/"desc") Order string }
func (*Filter) AddField ¶ added in v1.1.0
func (f *Filter) AddField(op FilterOperator, key string, value any)
func (*Filter) MarshalJSON ¶ added in v1.1.0
type FilterNode ¶ added in v1.1.0
type FilterOperator ¶ added in v1.1.0
type FilterOperator string
const ( Eq FilterOperator = "+eq" Neq FilterOperator = "+neq" Gt FilterOperator = "+gt" Gte FilterOperator = "+gte" Lt FilterOperator = "+lt" Lte FilterOperator = "+lte" Contains FilterOperator = "+contains" Ascending = "asc" Descending = "desc" )
type Firewall ¶ added in v0.13.1
type Firewall struct { ID int `json:"id"` Label string `json:"label"` Status FirewallStatus `json:"status"` Tags []string `json:"tags,omitempty"` Rules FirewallRuleSet `json:"rules"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
A Firewall is a set of networking rules (iptables) applied to Devices with which it is associated
func (*Firewall) GetUpdateOptions ¶ added in v0.17.0
func (f *Firewall) GetUpdateOptions() FirewallUpdateOptions
GetUpdateOptions converts a Firewall to FirewallUpdateOptions for use in Client.UpdateFirewall.
func (*Firewall) UnmarshalJSON ¶ added in v0.13.1
UnmarshalJSON for Firewall responses
type FirewallCreateOptions ¶ added in v0.13.1
type FirewallCreateOptions struct { Label string `json:"label,omitempty"` Rules FirewallRuleSet `json:"rules"` Tags []string `json:"tags,omitempty"` Devices DevicesCreationOptions `json:"devices,omitempty"` }
FirewallCreateOptions fields are those accepted by CreateFirewall
type FirewallDevice ¶ added in v0.16.0
type FirewallDevice struct { ID int `json:"id"` Entity FirewallDeviceEntity `json:"entity"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
FirewallDevice represents a device governed by a Firewall
func (*FirewallDevice) UnmarshalJSON ¶ added in v0.16.0
func (device *FirewallDevice) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type FirewallDeviceCreateOptions ¶ added in v0.16.0
type FirewallDeviceCreateOptions struct { ID int `json:"id"` Type FirewallDeviceType `json:"type"` }
FirewallDeviceCreateOptions fields are those accepted by CreateFirewallDevice
type FirewallDeviceEntity ¶ added in v0.16.0
type FirewallDeviceEntity struct { ID int `json:"id"` Type FirewallDeviceType `json:"type"` Label string `json:"label"` URL string `json:"url"` }
FirewallDeviceEntity contains information about a device associated with a Firewall
type FirewallDeviceType ¶ added in v0.16.0
type FirewallDeviceType string
FirewallDeviceType represents the different kinds of devices governable by a Firewall
const ( FirewallDeviceLinode FirewallDeviceType = "linode" FirewallDeviceNodeBalancer FirewallDeviceType = "nodebalancer" )
FirewallDeviceType constants start with FirewallDevice
type FirewallDevicesPagedResponse
deprecated
added in
v0.16.0
type FirewallDevicesPagedResponse legacyPagedResponse[FirewallDevice]
Deprecated: FirewallDevicesPagedResponse exists for historical compatibility and should not be used.
type FirewallRule ¶ added in v0.13.1
type FirewallRule struct { Action string `json:"action"` Label string `json:"label"` Description string `json:"description,omitempty"` Ports string `json:"ports,omitempty"` Protocol NetworkProtocol `json:"protocol"` Addresses NetworkAddresses `json:"addresses"` }
A FirewallRule is a whitelist of ports, protocols, and addresses for which traffic should be allowed.
type FirewallRuleSet ¶ added in v0.13.1
type FirewallRuleSet struct { Inbound []FirewallRule `json:"inbound"` InboundPolicy string `json:"inbound_policy"` Outbound []FirewallRule `json:"outbound"` OutboundPolicy string `json:"outbound_policy"` }
FirewallRuleSet is a pair of inbound and outbound rules that specify what network traffic should be allowed.
type FirewallStatus ¶ added in v0.13.1
type FirewallStatus string
FirewallStatus enum type
const ( FirewallEnabled FirewallStatus = "enabled" FirewallDisabled FirewallStatus = "disabled" FirewallDeleted FirewallStatus = "deleted" )
FirewallStatus enums start with Firewall
type FirewallUpdateOptions ¶ added in v0.17.0
type FirewallUpdateOptions struct { Label string `json:"label,omitempty"` Status FirewallStatus `json:"status,omitempty"` Tags *[]string `json:"tags,omitempty"` }
FirewallUpdateOptions is an options struct used when Updating a Firewall
type FirewallsPagedResponse
deprecated
added in
v0.13.1
type FirewallsPagedResponse legacyPagedResponse[Firewall]
Deprecated: FirewallsPagedResponse exists for historical compatibility and should not be used.
type GlobalUserGrants ¶ added in v0.25.0
type GlobalUserGrants struct { AccountAccess *GrantPermissionLevel `json:"account_access"` AddDatabases bool `json:"add_databases"` AddDomains bool `json:"add_domains"` AddFirewalls bool `json:"add_firewalls"` AddImages bool `json:"add_images"` AddLinodes bool `json:"add_linodes"` AddLongview bool `json:"add_longview"` AddNodeBalancers bool `json:"add_nodebalancers"` AddPlacementGroups bool `json:"add_placement_groups"` AddStackScripts bool `json:"add_stackscripts"` AddVolumes bool `json:"add_volumes"` AddVPCs bool `json:"add_vpcs"` CancelAccount bool `json:"cancel_account"` ChildAccountAccess bool `json:"child_account_access"` LongviewSubscription bool `json:"longview_subscription"` }
type GrantPermissionLevel ¶ added in v0.25.0
type GrantPermissionLevel string
const ( AccessLevelReadOnly GrantPermissionLevel = "read_only" AccessLevelReadWrite GrantPermissionLevel = "read_write" )
type GrantedEntity ¶ added in v0.25.0
type GrantedEntity struct { ID int `json:"id"` Label string `json:"label"` Permissions GrantPermissionLevel `json:"permissions"` }
type GrantsListResponse ¶ added in v1.13.0
type GrantsListResponse = UserGrants
type IPAddressUpdateOptions ¶ added in v0.7.0
type IPAddressUpdateOptions struct {
RDNS *string `json:"rdns"`
}
IPAddressUpdateOptions fields are those accepted by UpdateIPAddress. Deprecated: Please use IPAddressUpdateOptionsV2 for all new implementations.
type IPAddressUpdateOptionsV2 ¶ added in v1.44.0
type IPAddressUpdateOptionsV2 struct { // The reverse DNS assigned to this address. For public IPv4 addresses, this will be set to a default value provided by Linode if set to nil. Reserved *bool `json:"reserved,omitempty"` RDNS **string `json:"rdns,omitempty"` }
IPAddressUpdateOptionsV2 fields are those accepted by UpdateIPAddress. NOTE: An IP's RDNS can be reset to default using the following pattern:
IPAddressUpdateOptionsV2{ RDNS: linodego.Pointer[*string](nil), }
type IPAddressesPagedResponse
deprecated
type IPAddressesPagedResponse legacyPagedResponse[InstanceIP]
Deprecated: IPAddressesPagedResponse exists for historical compatibility and should not be used.
type IPAddressesShareOptions ¶ added in v1.4.0
type IPAddressesShareOptions struct {}
IPAddressesShareOptions fields are those accepted by ShareIPAddresses.
type IPv6PoolsPagedResponse
deprecated
type IPv6PoolsPagedResponse legacyPagedResponse[IPv6Range]
Deprecated: IPv6PoolsPagedResponse exists for historical compatibility and should not be used.
type IPv6Range ¶
type IPv6Range struct { Range string `json:"range"` Region string `json:"region"` Prefix int `json:"prefix"` RouteTarget string `json:"route_target"` // These fields are only returned by GetIPv6Range(...) IsBGP bool `json:"is_bgp"` Linodes []int `json:"linodes"` }
IPv6Range represents a range of IPv6 addresses routed to a single Linode in a given Region
type IPv6RangeCreateOptions ¶ added in v1.3.0
type IPv6RangeCreateOptions struct { LinodeID int `json:"linode_id,omitempty"` PrefixLength int `json:"prefix_length"` RouteTarget string `json:"route_target,omitempty"` }
IPv6RangeCreateOptions fields are those accepted by CreateIPv6Range
type IPv6RangesPagedResponse
deprecated
type IPv6RangesPagedResponse legacyPagedResponse[IPv6Range]
Deprecated: IPv6RangesPagedResponse exists for historical compatibility and should not be used.
type Image ¶
type Image struct { ID string `json:"id"` CreatedBy string `json:"created_by"` Capabilities []string `json:"capabilities"` Label string `json:"label"` Description string `json:"description"` Type string `json:"type"` Vendor string `json:"vendor"` Status ImageStatus `json:"status"` Size int `json:"size"` TotalSize int `json:"total_size"` IsPublic bool `json:"is_public"` Deprecated bool `json:"deprecated"` Regions []ImageRegion `json:"regions"` Tags []string `json:"tags"` Updated *time.Time `json:"-"` Created *time.Time `json:"-"` Expiry *time.Time `json:"-"` EOL *time.Time `json:"-"` }
Image represents a deployable Image object for use with Linode Instances
func (Image) GetUpdateOptions ¶ added in v0.2.0
func (i Image) GetUpdateOptions() (iu ImageUpdateOptions)
GetUpdateOptions converts an Image to ImageUpdateOptions for use in UpdateImage
func (*Image) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type ImageCreateOptions ¶ added in v0.2.0
type ImageCreateOptions struct { DiskID int `json:"disk_id"` Label string `json:"label"` Description string `json:"description,omitempty"` CloudInit bool `json:"cloud_init,omitempty"` Tags *[]string `json:"tags,omitempty"` }
ImageCreateOptions fields are those accepted by CreateImage
type ImageCreateUploadOptions ¶ added in v0.28.2
type ImageCreateUploadOptions struct { Region string `json:"region"` Label string `json:"label"` Description string `json:"description,omitempty"` CloudInit bool `json:"cloud_init,omitempty"` Tags *[]string `json:"tags,omitempty"` }
ImageCreateUploadOptions fields are those accepted by CreateImageUpload
type ImageCreateUploadResponse ¶ added in v0.28.2
type ImageCreateUploadResponse struct { Image *Image `json:"image"` UploadTo string `json:"upload_to"` }
ImageCreateUploadResponse fields are those returned by CreateImageUpload
type ImageRegion ¶ added in v1.39.0
type ImageRegion struct { Region string `json:"region"` Status ImageRegionStatus `json:"status"` }
ImageRegion represents the status of an Image object in a given Region.
type ImageRegionStatus ¶ added in v1.39.0
type ImageRegionStatus string
ImageRegionStatus represents the status of an Image's replica.
const ( ImageRegionStatusAvailable ImageRegionStatus = "available" ImageRegionStatusCreating ImageRegionStatus = "creating" ImageRegionStatusPending ImageRegionStatus = "pending" ImageRegionStatusPendingReplication ImageRegionStatus = "pending replication" ImageRegionStatusPendingDeletion ImageRegionStatus = "pending deletion" ImageRegionStatusReplicating ImageRegionStatus = "replicating" )
ImageRegionStatus options start with ImageRegionStatus and include all Image replica statuses
type ImageReplicateOptions ¶ added in v1.39.0
type ImageReplicateOptions struct {
Regions []string `json:"regions"`
}
ImageReplicateOptions represents the options accepted by the ReplicateImage(...) function.
type ImageStatus ¶ added in v0.28.2
type ImageStatus string
ImageStatus represents the status of an Image.
const ( ImageStatusCreating ImageStatus = "creating" ImageStatusPendingUpload ImageStatus = "pending_upload" ImageStatusAvailable ImageStatus = "available" )
ImageStatus options start with ImageStatus and include all Image statuses
type ImageUpdateOptions ¶ added in v0.2.0
type ImageUpdateOptions struct { Label string `json:"label,omitempty"` Description *string `json:"description,omitempty"` Tags *[]string `json:"tags,omitempty"` }
ImageUpdateOptions fields are those accepted by UpdateImage
type ImageUploadOptions ¶ added in v0.28.2
type ImageUploadOptions struct { Region string `json:"region"` Label string `json:"label"` Description string `json:"description,omitempty"` CloudInit bool `json:"cloud_init"` Tags *[]string `json:"tags,omitempty"` Image io.Reader }
ImageUploadOptions fields are those accepted by UploadImage
type ImagesPagedResponse
deprecated
type ImagesPagedResponse legacyPagedResponse[Image]
Deprecated: ImagesPagedResponse exists for historical compatibility and should not be used.
type Instance ¶
type Instance struct { ID int `json:"id"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` Region string `json:"region"` Alerts *InstanceAlert `json:"alerts"` Backups *InstanceBackup `json:"backups"` Image string `json:"image"` Group string `json:"group"` IPv4 []*net.IP `json:"ipv4"` IPv6 string `json:"ipv6"` Label string `json:"label"` Type string `json:"type"` Status InstanceStatus `json:"status"` HasUserData bool `json:"has_user_data"` Hypervisor string `json:"hypervisor"` HostUUID string `json:"host_uuid"` Specs *InstanceSpec `json:"specs"` WatchdogEnabled bool `json:"watchdog_enabled"` Tags []string `json:"tags"` PlacementGroup *InstancePlacementGroup `json:"placement_group"` // NOTE: Disk encryption may not currently be available to all users. DiskEncryption InstanceDiskEncryption `json:"disk_encryption"` LKEClusterID int `json:"lke_cluster_id"` Capabilities []string `json:"capabilities"` }
Instance represents a linode object
func (*Instance) GetUpdateOptions ¶ added in v0.6.0
func (i *Instance) GetUpdateOptions() InstanceUpdateOptions
GetUpdateOptions converts an Instance to InstanceUpdateOptions for use in UpdateInstance
func (*Instance) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type InstanceAlert ¶
type InstanceAlert struct { CPU int `json:"cpu"` IO int `json:"io"` NetworkIn int `json:"network_in"` NetworkOut int `json:"network_out"` TransferQuota int `json:"transfer_quota"` }
InstanceAlert represents a metric alert
type InstanceBackup ¶
type InstanceBackup struct { Available bool `json:"available,omitempty"` // read-only Enabled bool `json:"enabled,omitempty"` // read-only LastSuccessful *time.Time `json:"-"` // read-only Schedule struct { Day string `json:"day,omitempty"` Window string `json:"window,omitempty"` } `json:"schedule,omitempty"` }
InstanceBackup represents backup settings for an instance
func (*InstanceBackup) UnmarshalJSON ¶ added in v1.44.0
func (backup *InstanceBackup) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type InstanceBackupSnapshotResponse ¶
type InstanceBackupSnapshotResponse struct { Current *InstanceSnapshot `json:"current"` InProgress *InstanceSnapshot `json:"in_progress"` }
InstanceBackupSnapshotResponse fields are those representing Instance Backup Snapshots
type InstanceBackupsResponse ¶
type InstanceBackupsResponse struct { Automatic []*InstanceSnapshot `json:"automatic"` Snapshot *InstanceBackupSnapshotResponse `json:"snapshot"` }
InstanceBackupsResponse response struct for backup snapshot
type InstanceCloneOptions ¶
type InstanceCloneOptions struct { Region string `json:"region,omitempty"` Type string `json:"type,omitempty"` // LinodeID is an optional existing instance to use as the target of the clone LinodeID int `json:"linode_id,omitempty"` Label string `json:"label,omitempty"` BackupsEnabled bool `json:"backups_enabled"` Disks []int `json:"disks,omitempty"` Configs []int `json:"configs,omitempty"` PrivateIP bool `json:"private_ip,omitempty"` Metadata *InstanceMetadataOptions `json:"metadata,omitempty"` PlacementGroup *InstanceCreatePlacementGroupOptions `json:"placement_group,omitempty"` // Deprecated: group is a deprecated property denoting a group label for the Linode. Group string `json:"group,omitempty"` }
InstanceCloneOptions is an options struct sent when Cloning an Instance
type InstanceConfig ¶
type InstanceConfig struct { ID int `json:"id"` Label string `json:"label"` Comments string `json:"comments"` Devices *InstanceConfigDeviceMap `json:"devices"` Helpers *InstanceConfigHelpers `json:"helpers"` Interfaces []InstanceConfigInterface `json:"interfaces"` MemoryLimit int `json:"memory_limit"` Kernel string `json:"kernel"` InitRD *int `json:"init_rd"` RootDevice string `json:"root_device"` RunLevel string `json:"run_level"` VirtMode string `json:"virt_mode"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
InstanceConfig represents all of the settings that control the boot and run configuration of a Linode Instance
func (InstanceConfig) GetCreateOptions ¶
func (i InstanceConfig) GetCreateOptions() InstanceConfigCreateOptions
GetCreateOptions converts a InstanceConfig to InstanceConfigCreateOptions for use in CreateInstanceConfig
func (InstanceConfig) GetUpdateOptions ¶
func (i InstanceConfig) GetUpdateOptions() InstanceConfigUpdateOptions
GetUpdateOptions converts a InstanceConfig to InstanceConfigUpdateOptions for use in UpdateInstanceConfig
func (*InstanceConfig) UnmarshalJSON ¶ added in v0.13.0
func (i *InstanceConfig) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type InstanceConfigCreateOptions ¶
type InstanceConfigCreateOptions struct { Label string `json:"label,omitempty"` Comments string `json:"comments,omitempty"` Devices InstanceConfigDeviceMap `json:"devices"` Helpers *InstanceConfigHelpers `json:"helpers,omitempty"` Interfaces []InstanceConfigInterfaceCreateOptions `json:"interfaces"` MemoryLimit int `json:"memory_limit,omitempty"` Kernel string `json:"kernel,omitempty"` InitRD int `json:"init_rd,omitempty"` RootDevice *string `json:"root_device,omitempty"` RunLevel string `json:"run_level,omitempty"` VirtMode string `json:"virt_mode,omitempty"` }
InstanceConfigCreateOptions are InstanceConfig settings that can be used at creation
type InstanceConfigDevice ¶
type InstanceConfigDevice struct { DiskID int `json:"disk_id,omitempty"` VolumeID int `json:"volume_id,omitempty"` }
InstanceConfigDevice contains either the DiskID or VolumeID assigned to a Config Device
type InstanceConfigDeviceMap ¶
type InstanceConfigDeviceMap struct { SDA *InstanceConfigDevice `json:"sda,omitempty"` SDB *InstanceConfigDevice `json:"sdb,omitempty"` SDC *InstanceConfigDevice `json:"sdc,omitempty"` SDD *InstanceConfigDevice `json:"sdd,omitempty"` SDE *InstanceConfigDevice `json:"sde,omitempty"` SDF *InstanceConfigDevice `json:"sdf,omitempty"` SDG *InstanceConfigDevice `json:"sdg,omitempty"` SDH *InstanceConfigDevice `json:"sdh,omitempty"` }
InstanceConfigDeviceMap contains SDA-SDH InstanceConfigDevice settings
type InstanceConfigHelpers ¶
type InstanceConfigHelpers struct { UpdateDBDisabled bool `json:"updatedb_disabled"` Distro bool `json:"distro"` ModulesDep bool `json:"modules_dep"` Network bool `json:"network"` DevTmpFsAutomount bool `json:"devtmpfs_automount"` }
InstanceConfigHelpers are Instance Config options that control Linux distribution specific tweaks
type InstanceConfigInterface ¶ added in v0.28.0
type InstanceConfigInterface struct { ID int `json:"id"` IPAMAddress string `json:"ipam_address"` Label string `json:"label"` Purpose ConfigInterfacePurpose `json:"purpose"` Primary bool `json:"primary"` Active bool `json:"active"` VPCID *int `json:"vpc_id"` SubnetID *int `json:"subnet_id"` IPv4 *VPCIPv4 `json:"ipv4"` IPRanges []string `json:"ip_ranges"` }
InstanceConfigInterface contains information about a configuration's network interface
func (InstanceConfigInterface) GetCreateOptions ¶ added in v1.25.0
func (i InstanceConfigInterface) GetCreateOptions() InstanceConfigInterfaceCreateOptions
func (InstanceConfigInterface) GetUpdateOptions ¶ added in v1.25.0
func (i InstanceConfigInterface) GetUpdateOptions() InstanceConfigInterfaceUpdateOptions
type InstanceConfigInterfaceCreateOptions ¶ added in v1.25.0
type InstanceConfigInterfaceCreateOptions struct { IPAMAddress string `json:"ipam_address,omitempty"` Label string `json:"label,omitempty"` Purpose ConfigInterfacePurpose `json:"purpose,omitempty"` Primary bool `json:"primary,omitempty"` SubnetID *int `json:"subnet_id,omitempty"` IPv4 *VPCIPv4 `json:"ipv4,omitempty"` IPRanges []string `json:"ip_ranges,omitempty"` }
type InstanceConfigInterfaceUpdateOptions ¶ added in v1.25.0
type InstanceConfigInterfacesReorderOptions ¶ added in v1.25.0
type InstanceConfigInterfacesReorderOptions struct {
IDs []int `json:"ids"`
}
type InstanceConfigUpdateOptions ¶
type InstanceConfigUpdateOptions struct { Label string `json:"label,omitempty"` Comments string `json:"comments"` Devices *InstanceConfigDeviceMap `json:"devices,omitempty"` Helpers *InstanceConfigHelpers `json:"helpers,omitempty"` Interfaces []InstanceConfigInterfaceCreateOptions `json:"interfaces"` // MemoryLimit 0 means unlimitted, this is not omitted MemoryLimit int `json:"memory_limit"` Kernel string `json:"kernel,omitempty"` // InitRD is nullable, permit the sending of null InitRD *int `json:"init_rd"` RootDevice string `json:"root_device,omitempty"` RunLevel string `json:"run_level,omitempty"` VirtMode string `json:"virt_mode,omitempty"` }
InstanceConfigUpdateOptions are InstanceConfig settings that can be used in updates
type InstanceConfigsPagedResponse
deprecated
type InstanceConfigsPagedResponse legacyPagedResponse[InstanceConfig]
Deprecated: InstanceConfigsPagedResponse exists for historical compatibility and should not be used.
type InstanceCreateOptions ¶
type InstanceCreateOptions struct { Region string `json:"region"` Type string `json:"type"` Label string `json:"label,omitempty"` RootPass string `json:"root_pass,omitempty"` AuthorizedKeys []string `json:"authorized_keys,omitempty"` AuthorizedUsers []string `json:"authorized_users,omitempty"` StackScriptID int `json:"stackscript_id,omitempty"` StackScriptData map[string]string `json:"stackscript_data,omitempty"` BackupID int `json:"backup_id,omitempty"` Image string `json:"image,omitempty"` Interfaces []InstanceConfigInterfaceCreateOptions `json:"interfaces,omitempty"` BackupsEnabled bool `json:"backups_enabled,omitempty"` PrivateIP bool `json:"private_ip,omitempty"` Tags []string `json:"tags,omitempty"` Metadata *InstanceMetadataOptions `json:"metadata,omitempty"` FirewallID int `json:"firewall_id,omitempty"` // NOTE: Disk encryption may not currently be available to all users. DiskEncryption InstanceDiskEncryption `json:"disk_encryption,omitempty"` PlacementGroup *InstanceCreatePlacementGroupOptions `json:"placement_group,omitempty"` // Creation fields that need to be set explicitly false, "", or 0 use pointers SwapSize *int `json:"swap_size,omitempty"` Booted *bool `json:"booted,omitempty"` // Deprecated: group is a deprecated property denoting a group label for the Linode. Group string `json:"group,omitempty"` IPv4 []string `json:"ipv4,omitempty"` }
InstanceCreateOptions require only Region and Type
type InstanceCreatePlacementGroupOptions ¶ added in v1.36.0
type InstanceCreatePlacementGroupOptions struct { ID int `json:"id"` CompliantOnly *bool `json:"compliant_only,omitempty"` }
InstanceCreatePlacementGroupOptions represents the placement group to create this Linode under.
type InstanceDisk ¶
type InstanceDisk struct { ID int `json:"id"` Label string `json:"label"` Status DiskStatus `json:"status"` Size int `json:"size"` Filesystem DiskFilesystem `json:"filesystem"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` // NOTE: Disk encryption may not currently be available to all users. DiskEncryption InstanceDiskEncryption `json:"disk_encryption"` }
InstanceDisk represents an Instance Disk object
func (*InstanceDisk) UnmarshalJSON ¶ added in v0.13.0
func (i *InstanceDisk) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type InstanceDiskCloneOptions ¶ added in v1.43.0
type InstanceDiskCloneOptions struct{}
type InstanceDiskCreateOptions ¶
type InstanceDiskCreateOptions struct { Label string `json:"label"` Size int `json:"size"` // Image is optional, but requires RootPass if provided Image string `json:"image,omitempty"` RootPass string `json:"root_pass,omitempty"` Filesystem string `json:"filesystem,omitempty"` AuthorizedKeys []string `json:"authorized_keys,omitempty"` AuthorizedUsers []string `json:"authorized_users,omitempty"` StackscriptID int `json:"stackscript_id,omitempty"` StackscriptData map[string]string `json:"stackscript_data,omitempty"` }
InstanceDiskCreateOptions are InstanceDisk settings that can be used at creation
type InstanceDiskEncryption ¶ added in v1.38.0
type InstanceDiskEncryption string
const ( InstanceDiskEncryptionEnabled InstanceDiskEncryption = "enabled" InstanceDiskEncryptionDisabled InstanceDiskEncryption = "disabled" )
type InstanceDiskUpdateOptions ¶
type InstanceDiskUpdateOptions struct {
Label string `json:"label"`
}
InstanceDiskUpdateOptions are InstanceDisk settings that can be used in updates
type InstanceDisksPagedResponse
deprecated
type InstanceDisksPagedResponse legacyPagedResponse[InstanceDisk]
Deprecated: InstanceDisksPagedResponse exists for historical compatibility and should not be used.
type InstanceFirewallsPagedResponse
deprecated
added in
v1.26.0
type InstanceFirewallsPagedResponse legacyPagedResponse[Firewall]
Deprecated: InstanceFirewallsPagedResponse exists for historical compatibility and should not be used.
type InstanceIP ¶
type InstanceIP struct { Address string `json:"address"` Gateway string `json:"gateway"` SubnetMask string `json:"subnet_mask"` Prefix int `json:"prefix"` Type InstanceIPType `json:"type"` Public bool `json:"public"` RDNS string `json:"rdns"` LinodeID int `json:"linode_id"` Region string `json:"region"` VPCNAT1To1 *InstanceIPNAT1To1 `json:"vpc_nat_1_1"` Reserved bool `json:"reserved"` }
InstanceIP represents an Instance IP with additional DNS and networking details
func (InstanceIP) GetUpdateOptions ¶ added in v0.7.0
func (i InstanceIP) GetUpdateOptions() (o IPAddressUpdateOptions)
GetUpdateOptions converts a IPAddress to IPAddressUpdateOptions for use in UpdateIPAddress. Deprecated: Please use GetUpdateOptionsV2 for all new implementations.
func (InstanceIP) GetUpdateOptionsV2 ¶ added in v1.44.0
func (i InstanceIP) GetUpdateOptionsV2() IPAddressUpdateOptionsV2
GetUpdateOptionsV2 converts a IPAddress to IPAddressUpdateOptionsV2 for use in UpdateIPAddressV2.
type InstanceIPAddressResponse ¶
type InstanceIPAddressResponse struct { IPv4 *InstanceIPv4Response `json:"ipv4"` IPv6 *InstanceIPv6Response `json:"ipv6"` }
InstanceIPAddressResponse contains the IPv4 and IPv6 details for an Instance
type InstanceIPNAT1To1 ¶ added in v1.25.0
type InstanceIPNAT1To1 struct { Address string `json:"address"` SubnetID int `json:"subnet_id"` VPCID int `json:"vpc_id"` }
InstanceIPNAT1To1 contains information about the NAT 1:1 mapping of a public IP address to a VPC subnet.
type InstanceIPType ¶ added in v0.8.0
type InstanceIPType string
InstanceIPType constants start with IPType and include Linode Instance IP Types
const ( IPTypeIPv4 InstanceIPType = "ipv4" IPTypeIPv6 InstanceIPType = "ipv6" IPTypeIPv6Pool InstanceIPType = "ipv6/pool" IPTypeIPv6Range InstanceIPType = "ipv6/range" )
InstanceIPType constants represent the IP types an Instance IP may be
type InstanceIPv4Response ¶
type InstanceIPv4Response struct { Public []*InstanceIP `json:"public"` Private []*InstanceIP `json:"private"` Reserved []*InstanceIP `json:"reserved"` VPC []*VPCIP `json:"vpc"` }
InstanceIPv4Response contains the details of all IPv4 addresses associated with an Instance
type InstanceIPv6Response ¶
type InstanceIPv6Response struct { LinkLocal *InstanceIP `json:"link_local"` SLAAC *InstanceIP `json:"slaac"` Global []IPv6Range `json:"global"` }
InstanceIPv6Response contains the IPv6 addresses and ranges for an Instance
type InstanceMetadataOptions ¶ added in v1.19.0
type InstanceMetadataOptions struct { // UserData expects a Base64-encoded string UserData string `json:"user_data,omitempty"` }
InstanceMetadataOptions specifies various Instance creation fields that relate to the Linode Metadata service.
type InstanceMigrateOptions ¶ added in v1.27.0
type InstanceMigrateOptions struct { Type InstanceMigrationType `json:"type,omitempty"` Region string `json:"region,omitempty"` Upgrade *bool `json:"upgrade,omitempty"` PlacementGroup *InstanceCreatePlacementGroupOptions `json:"placement_group,omitempty"` }
InstanceMigrateOptions is an options struct used when migrating an instance
type InstanceMigrationType ¶ added in v1.27.0
type InstanceMigrationType string
const ( WarmMigration InstanceMigrationType = "warm" ColdMigration InstanceMigrationType = "cold" )
type InstancePasswordResetOptions ¶ added in v1.43.0
type InstancePasswordResetOptions struct {
RootPass string `json:"root_pass"`
}
InstancePasswordResetOptions specifies the new password for the Linode
type InstancePlacementGroup ¶ added in v1.36.0
type InstancePlacementGroup struct { ID int `json:"id"` Label string `json:"label"` PlacementGroupType PlacementGroupType `json:"placement_group_type"` PlacementGroupPolicy PlacementGroupPolicy `json:"placement_group_policy"` MigratingTo string `json:"migrating_to"` // read-only }
InstancePlacementGroup represents information about the placement group this Linode is a part of.
type InstanceRebuildOptions ¶ added in v0.9.0
type InstanceRebuildOptions struct { Image string `json:"image,omitempty"` RootPass string `json:"root_pass,omitempty"` AuthorizedKeys []string `json:"authorized_keys,omitempty"` AuthorizedUsers []string `json:"authorized_users,omitempty"` StackScriptID int `json:"stackscript_id,omitempty"` StackScriptData map[string]string `json:"stackscript_data,omitempty"` Booted *bool `json:"booted,omitempty"` Metadata *InstanceMetadataOptions `json:"metadata,omitempty"` Type string `json:"type,omitempty"` // NOTE: Disk encryption may not currently be available to all users. DiskEncryption InstanceDiskEncryption `json:"disk_encryption,omitempty"` }
InstanceRebuildOptions is a struct representing the options to send to the rebuild linode endpoint
type InstanceRescueOptions ¶ added in v0.9.0
type InstanceRescueOptions struct {
Devices InstanceConfigDeviceMap `json:"devices"`
}
InstanceRescueOptions fields are those accepted by RescueInstance
type InstanceReserveIPOptions ¶ added in v1.42.0
type InstanceResizeOptions ¶ added in v0.9.0
type InstanceResizeOptions struct { Type string `json:"type"` MigrationType InstanceMigrationType `json:"migration_type,omitempty"` // When enabled, an instance resize will also resize a data disk if the instance has no more than one data disk and one swap disk AllowAutoDiskResize *bool `json:"allow_auto_disk_resize,omitempty"` }
InstanceResizeOptions is an options struct used when resizing an instance
type InstanceSnapshot ¶
type InstanceSnapshot struct { ID int `json:"id"` Label string `json:"label"` Status InstanceSnapshotStatus `json:"status"` Type string `json:"type"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` Finished *time.Time `json:"-"` Configs []string `json:"configs"` Disks []*InstanceSnapshotDisk `json:"disks"` Available bool `json:"available"` }
InstanceSnapshot represents a linode backup snapshot
func (*InstanceSnapshot) UnmarshalJSON ¶ added in v0.13.0
func (i *InstanceSnapshot) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type InstanceSnapshotDisk ¶
type InstanceSnapshotDisk struct { Label string `json:"label"` Size int `json:"size"` Filesystem string `json:"filesystem"` }
InstanceSnapshotDisk fields represent the source disk of a Snapshot
type InstanceSnapshotStatus ¶ added in v0.2.0
type InstanceSnapshotStatus string
InstanceSnapshotStatus constants start with Snapshot and include Linode API Instance Backup Snapshot status values
var ( SnapshotPaused InstanceSnapshotStatus = "paused" SnapshotPending InstanceSnapshotStatus = "pending" SnapshotRunning InstanceSnapshotStatus = "running" SnapshotNeedsPostProcessing InstanceSnapshotStatus = "needsPostProcessing" SnapshotSuccessful InstanceSnapshotStatus = "successful" SnapshotFailed InstanceSnapshotStatus = "failed" SnapshotUserAborted InstanceSnapshotStatus = "userAborted" )
InstanceSnapshotStatus constants reflect the current status of an Instance Snapshot
type InstanceSpec ¶
type InstanceSpec struct { Disk int `json:"disk"` Memory int `json:"memory"` VCPUs int `json:"vcpus"` Transfer int `json:"transfer"` GPUs int `json:"gpus"` AcceleratedDevices int `json:"accelerated_devices"` }
InstanceSpec represents a linode spec
type InstanceStats ¶ added in v0.8.0
type InstanceStats struct { Title string `json:"title"` Data InstanceStatsData `json:"data"` }
InstanceStats represents an instance stats object
type InstanceStatsData ¶ added in v0.8.0
type InstanceStatsData struct { CPU [][]float64 `json:"cpu"` IO StatsIO `json:"io"` NetV4 StatsNet `json:"netv4"` NetV6 StatsNet `json:"netv6"` }
InstanceStatsData represents an instance stats data object
type InstanceStatus ¶
type InstanceStatus string
InstanceStatus constants start with Instance and include Linode API Instance Status values
const ( InstanceBooting InstanceStatus = "booting" InstanceRunning InstanceStatus = "running" InstanceOffline InstanceStatus = "offline" InstanceShuttingDown InstanceStatus = "shutting_down" InstanceRebooting InstanceStatus = "rebooting" InstanceProvisioning InstanceStatus = "provisioning" InstanceDeleting InstanceStatus = "deleting" InstanceMigrating InstanceStatus = "migrating" InstanceRebuilding InstanceStatus = "rebuilding" InstanceCloning InstanceStatus = "cloning" InstanceRestoring InstanceStatus = "restoring" InstanceResizing InstanceStatus = "resizing" )
InstanceStatus constants reflect the current status of an Instance
type InstanceTransfer ¶ added in v0.9.0
type InstanceTransfer struct { // Bytes of transfer this instance has consumed Used int `json:"used"` // GB of billable transfer this instance has consumed Billable int `json:"billable"` // GB of transfer this instance adds to the Transfer pool Quota int `json:"quota"` }
InstanceTransfer pool stats for a Linode Instance during the current billing month
type InstanceUpdateOptions ¶
type InstanceUpdateOptions struct { Label string `json:"label,omitempty"` Backups *InstanceBackup `json:"backups,omitempty"` Alerts *InstanceAlert `json:"alerts,omitempty"` WatchdogEnabled *bool `json:"watchdog_enabled,omitempty"` Tags *[]string `json:"tags,omitempty"` // Deprecated: group is a deprecated property denoting a group label for the Linode. Group *string `json:"group,omitempty"` }
InstanceUpdateOptions is an options struct used when Updating an Instance
type InstanceUpgradeOptions ¶ added in v1.44.0
type InstanceUpgradeOptions struct { // Automatically resize disks when resizing a Linode. // When resizing down to a smaller plan your Linode's data must fit within the smaller disk size. AllowAutoDiskResize bool `json:"allow_auto_disk_resize"` }
InstanceUpgradeOptions is a struct representing the options for upgrading a Linode
type InstanceVolumesPagedResponse
deprecated
type InstanceVolumesPagedResponse legacyPagedResponse[Volume]
Deprecated: InstanceVolumesPagedResponse exists for historical compatibility and should not be used.
type InstancesPagedResponse
deprecated
type InstancesPagedResponse legacyPagedResponse[Instance]
Deprecated: InstancesPagedResponse exists for historical compatibility and should not be used.
type Invoice ¶
type Invoice struct { ID int `json:"id"` Label string `json:"label"` Total float32 `json:"total"` Date *time.Time `json:"-"` Tax float32 `json:"tax"` Subtotal float32 `json:"subtotal"` BillingSource string `json:"billing_source"` TaxSummary []InvoiceTaxSummary `json:"tax_summary"` }
Invoice structs reflect an invoice for billable activity on the account.
func (*Invoice) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type InvoiceItem ¶
type InvoiceItem struct { Label string `json:"label"` Type string `json:"type"` UnitPrice float32 `json:"unit_price"` Quantity int `json:"quantity"` Amount float32 `json:"amount"` Tax float32 `json:"tax"` Region *string `json:"region"` From *time.Time `json:"-"` To *time.Time `json:"-"` Total float32 `json:"total"` }
InvoiceItem structs reflect a single billable activity associate with an Invoice
func (*InvoiceItem) UnmarshalJSON ¶ added in v0.13.0
func (i *InvoiceItem) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type InvoiceItemsPagedResponse
deprecated
type InvoiceItemsPagedResponse legacyPagedResponse[InvoiceItem]
Deprecated: InvoiceItemsPagedResponse exists for historical compatibility and should not be used.
type InvoiceTaxSummary ¶ added in v1.43.0
type InvoicesPagedResponse
deprecated
type InvoicesPagedResponse legacyPagedResponse[Invoice]
Deprecated: InvoicesPagedResponse exists for historical compatibility and should not be used.
type LKECluster ¶ added in v0.13.0
type LKECluster struct { ID int `json:"id"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` Label string `json:"label"` Region string `json:"region"` Status LKEClusterStatus `json:"status"` K8sVersion string `json:"k8s_version"` Tags []string `json:"tags"` ControlPlane LKEClusterControlPlane `json:"control_plane"` // NOTE: Tier may not currently be available to all users and can only be used with v4beta. Tier string `json:"tier"` }
LKECluster represents a LKECluster object
func (LKECluster) GetCreateOptions ¶ added in v0.13.0
func (i LKECluster) GetCreateOptions() (o LKEClusterCreateOptions)
GetCreateOptions converts a LKECluster to LKEClusterCreateOptions for use in CreateLKECluster
func (LKECluster) GetUpdateOptions ¶ added in v0.13.0
func (i LKECluster) GetUpdateOptions() (o LKEClusterUpdateOptions)
GetUpdateOptions converts a LKECluster to LKEClusterUpdateOptions for use in UpdateLKECluster
func (*LKECluster) UnmarshalJSON ¶ added in v0.13.0
func (i *LKECluster) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type LKEClusterAPIEndpoint ¶ added in v0.13.0
type LKEClusterAPIEndpoint struct {
Endpoint string `json:"endpoint"`
}
LKEClusterAPIEndpoint fields are those returned by ListLKEClusterAPIEndpoints
type LKEClusterAPIEndpointsPagedResponse
deprecated
added in
v0.15.0
type LKEClusterAPIEndpointsPagedResponse legacyPagedResponse[LKEClusterAPIEndpoint]
Deprecated: LKEClusterAPIEndpointsPagedResponse exists for historical compatibility and should not be used.
type LKEClusterControlPlane ¶ added in v1.2.0
type LKEClusterControlPlane struct {
HighAvailability bool `json:"high_availability"`
}
LKEClusterControlPlane fields contained within the `control_plane` attribute of an LKE cluster.
type LKEClusterControlPlaneACL ¶ added in v1.34.0
type LKEClusterControlPlaneACL struct { Enabled bool `json:"enabled"` Addresses *LKEClusterControlPlaneACLAddresses `json:"addresses"` RevisionID string `json:"revision_id,omitempty"` }
LKEClusterControlPlaneACL describes the ACL configuration for an LKE cluster's control plane. NOTE: Control Plane ACLs may not currently be available to all users.
type LKEClusterControlPlaneACLAddresses ¶ added in v1.34.0
type LKEClusterControlPlaneACLAddresses struct { IPv4 []string `json:"ipv4"` IPv6 []string `json:"ipv6"` }
LKEClusterControlPlaneACLAddresses describes the allowed IP ranges for an LKE cluster's control plane.
type LKEClusterControlPlaneACLAddressesOptions ¶ added in v1.34.0
type LKEClusterControlPlaneACLAddressesOptions struct { IPv4 *[]string `json:"ipv4,omitempty"` IPv6 *[]string `json:"ipv6,omitempty"` }
LKEClusterControlPlaneACLAddressesOptions are the options used to specify the allowed IP ranges for an LKE cluster's control plane.
type LKEClusterControlPlaneACLOptions ¶ added in v1.34.0
type LKEClusterControlPlaneACLOptions struct { Enabled *bool `json:"enabled,omitempty"` Addresses *LKEClusterControlPlaneACLAddressesOptions `json:"addresses,omitempty"` RevisionID string `json:"revision_id"` }
LKEClusterControlPlaneACLOptions represents the options used when configuring an LKE cluster's control plane ACL policy. NOTE: Control Plane ACLs may not currently be available to all users.
type LKEClusterControlPlaneACLResponse ¶ added in v1.34.0
type LKEClusterControlPlaneACLResponse struct {
ACL LKEClusterControlPlaneACL `json:"acl"`
}
LKEClusterControlPlaneACLResponse represents the response structure for the Client.GetLKEClusterControlPlaneACL(...) method.
type LKEClusterControlPlaneACLUpdateOptions ¶ added in v1.34.0
type LKEClusterControlPlaneACLUpdateOptions struct {
ACL LKEClusterControlPlaneACLOptions `json:"acl"`
}
LKEClusterControlPlaneACLUpdateOptions represents the options available when updating the ACL configuration of an LKE cluster's control plane. NOTE: Control Plane ACLs may not currently be available to all users.
type LKEClusterControlPlaneOptions ¶ added in v1.34.0
type LKEClusterControlPlaneOptions struct { HighAvailability *bool `json:"high_availability,omitempty"` ACL *LKEClusterControlPlaneACLOptions `json:"acl,omitempty"` }
LKEClusterControlPlaneOptions represents the options used when configuring an LKE cluster's control plane.
type LKEClusterCreateOptions ¶ added in v0.13.0
type LKEClusterCreateOptions struct { NodePools []LKENodePoolCreateOptions `json:"node_pools"` Label string `json:"label"` Region string `json:"region"` K8sVersion string `json:"k8s_version"` Tags []string `json:"tags,omitempty"` ControlPlane *LKEClusterControlPlaneOptions `json:"control_plane,omitempty"` // NOTE: Tier may not currently be available to all users and can only be used with v4beta. Tier string `json:"tier,omitempty"` }
LKEClusterCreateOptions fields are those accepted by CreateLKECluster
type LKEClusterDashboard ¶ added in v1.4.0
type LKEClusterDashboard struct {
URL string `json:"url"`
}
LKEClusterDashboard fields are those returned by GetLKEClusterDashboard
type LKEClusterKubeconfig ¶ added in v0.13.0
type LKEClusterKubeconfig struct {
KubeConfig string `json:"kubeconfig"` // Base64-encoded Kubeconfig file for this Cluster.
}
LKEClusterKubeconfig fields are those returned by GetLKEClusterKubeconfig
type LKEClusterPollOptions ¶ added in v0.15.0
type LKEClusterPollOptions struct { // Retry will cause the Poll to ignore interimittent errors Retry bool // TimeoutSeconds is the number of Seconds to wait for the poll to succeed // before exiting. TimeoutSeconds int // TansportWrapper allows adding a transport middleware function that will // wrap the LKE Cluster client's underlying http.RoundTripper. TransportWrapper func(http.RoundTripper) http.RoundTripper }
LKEClusterPollOptions configures polls against LKE Clusters.
type LKEClusterPool
deprecated
added in
v0.13.0
type LKEClusterPool = LKENodePool
Deprecated: LKEClusterPool represents a LKEClusterPool object
type LKEClusterPoolAutoscaler
deprecated
added in
v0.32.0
type LKEClusterPoolAutoscaler = LKENodePoolAutoscaler
Deprecated: LKEClusterPoolAutoscaler represents an AutoScaler configuration
type LKEClusterPoolCreateOptions
deprecated
added in
v0.13.0
type LKEClusterPoolCreateOptions = LKENodePoolCreateOptions
Deprecated: LKEClusterPoolCreateOptions fields are those accepted by CreateLKEClusterPool
type LKEClusterPoolDisk
deprecated
added in
v0.20.0
type LKEClusterPoolDisk = LKENodePoolDisk
Deprecated: LKEClusterPoolDisk represents a Node disk in an LKEClusterPool object
type LKEClusterPoolLinode
deprecated
added in
v0.13.0
type LKEClusterPoolLinode = LKENodePoolLinode
Deprecated: LKEClusterPoolLinode represents a LKEClusterPoolLinode object
type LKEClusterPoolUpdateOptions
deprecated
added in
v0.13.0
type LKEClusterPoolUpdateOptions = LKENodePoolUpdateOptions
Deprecated: LKEClusterPoolUpdateOptions fields are those accepted by UpdateLKEClusterPool
type LKEClusterPoolsPagedResponse
deprecated
added in
v0.13.0
type LKEClusterPoolsPagedResponse LKENodePoolsPagedResponse
Deprecated: LKEClusterPoolsPagedResponse exists for historical compatibility and should not be used. LKEClusterPoolsPagedResponse represents a paginated LKEClusterPool API response.
type LKEClusterRegenerateOptions ¶ added in v1.15.0
type LKEClusterRegenerateOptions struct { KubeConfig bool `json:"kubeconfig"` ServiceToken bool `json:"servicetoken"` }
LKEClusterRegenerateOptions fields are those accepted by RegenerateLKECluster
type LKEClusterStatus ¶ added in v0.13.0
type LKEClusterStatus string
LKEClusterStatus represents the status of an LKECluster
const ( LKEClusterReady LKEClusterStatus = "ready" LKEClusterNotReady LKEClusterStatus = "not_ready" )
LKEClusterStatus enums start with LKECluster
type LKEClusterUpdateOptions ¶ added in v0.13.0
type LKEClusterUpdateOptions struct { K8sVersion string `json:"k8s_version,omitempty"` Label string `json:"label,omitempty"` Tags *[]string `json:"tags,omitempty"` ControlPlane *LKEClusterControlPlaneOptions `json:"control_plane,omitempty"` }
LKEClusterUpdateOptions fields are those accepted by UpdateLKECluster
type LKEClustersPagedResponse
deprecated
added in
v0.13.0
type LKEClustersPagedResponse legacyPagedResponse[LKECluster]
Deprecated: LKEClustersPagedResponse exists for historical compatibility and should not be used.
type LKELinodeStatus ¶ added in v0.13.0
type LKELinodeStatus string
LKELinodeStatus constants start with LKELinode and include Linode API LKENodePool Linode Status values
const ( LKELinodeReady LKELinodeStatus = "ready" LKELinodeNotReady LKELinodeStatus = "not_ready" )
LKENodePoolStatus constants reflect the current status of an LKENodePool
type LKENodePool ¶ added in v1.3.0
type LKENodePool struct { ID int `json:"id"` Count int `json:"count"` Type string `json:"type"` Disks []LKENodePoolDisk `json:"disks"` Linodes []LKENodePoolLinode `json:"nodes"` Tags []string `json:"tags"` Labels LKENodePoolLabels `json:"labels"` Taints []LKENodePoolTaint `json:"taints"` Autoscaler LKENodePoolAutoscaler `json:"autoscaler"` // NOTE: Disk encryption may not currently be available to all users. DiskEncryption InstanceDiskEncryption `json:"disk_encryption,omitempty"` }
LKENodePool represents a LKENodePool object
func (LKENodePool) GetCreateOptions ¶ added in v1.3.0
func (l LKENodePool) GetCreateOptions() (o LKENodePoolCreateOptions)
GetCreateOptions converts a LKENodePool to LKENodePoolCreateOptions for use in CreateLKENodePool
func (LKENodePool) GetUpdateOptions ¶ added in v1.3.0
func (l LKENodePool) GetUpdateOptions() (o LKENodePoolUpdateOptions)
GetUpdateOptions converts a LKENodePool to LKENodePoolUpdateOptions for use in UpdateLKENodePoolUpdate
type LKENodePoolAutoscaler ¶ added in v1.3.0
type LKENodePoolCreateOptions ¶ added in v1.3.0
type LKENodePoolCreateOptions struct { Count int `json:"count"` Type string `json:"type"` Disks []LKENodePoolDisk `json:"disks"` Tags []string `json:"tags"` Labels LKENodePoolLabels `json:"labels"` Taints []LKENodePoolTaint `json:"taints"` Autoscaler *LKENodePoolAutoscaler `json:"autoscaler,omitempty"` }
LKENodePoolCreateOptions fields are those accepted by CreateLKENodePool
type LKENodePoolDisk ¶ added in v1.3.0
LKENodePoolDisk represents a Node disk in an LKENodePool object
type LKENodePoolLabels ¶ added in v1.38.0
LKENodePoolLabels represents Kubernetes labels to add to an LKENodePool
type LKENodePoolLinode ¶ added in v1.3.0
type LKENodePoolLinode struct { ID string `json:"id"` InstanceID int `json:"instance_id"` Status LKELinodeStatus `json:"status"` }
LKENodePoolLinode represents a LKENodePoolLinode object
type LKENodePoolTaint ¶ added in v1.38.0
type LKENodePoolTaint struct { Key string `json:"key"` Value string `json:"value,omitempty"` Effect LKENodePoolTaintEffect `json:"effect"` }
LKENodePoolTaint represents a corev1.Taint to add to an LKENodePool
type LKENodePoolTaintEffect ¶ added in v1.38.0
type LKENodePoolTaintEffect string
LKENodePoolTaintEffect represents the effect value of a taint
const ( LKENodePoolTaintEffectNoSchedule LKENodePoolTaintEffect = "NoSchedule" LKENodePoolTaintEffectPreferNoSchedule LKENodePoolTaintEffect = "PreferNoSchedule" LKENodePoolTaintEffectNoExecute LKENodePoolTaintEffect = "NoExecute" )
type LKENodePoolUpdateOptions ¶ added in v1.3.0
type LKENodePoolUpdateOptions struct { Count int `json:"count,omitempty"` Tags *[]string `json:"tags,omitempty"` Labels *LKENodePoolLabels `json:"labels,omitempty"` Taints *[]LKENodePoolTaint `json:"taints,omitempty"` Autoscaler *LKENodePoolAutoscaler `json:"autoscaler,omitempty"` }
LKENodePoolUpdateOptions fields are those accepted by UpdateLKENodePoolUpdate
type LKENodePoolsPagedResponse
deprecated
added in
v1.3.0
type LKENodePoolsPagedResponse legacyPagedResponse[LKENodePool]
Deprecated: LKENodePoolsPagedResponse exists for historical compatibility and should not be used.
type LKEType ¶ added in v1.41.0
type LKEType struct {
// contains filtered or unexported fields
}
LKEType represents a single valid LKE type. NOTE: This typically corresponds to the availability of a cluster's control plane.
type LKETypePrice ¶ added in v1.41.0
type LKETypePrice struct {
// contains filtered or unexported fields
}
LKETypePrice represents the base hourly and monthly prices for an LKE type entry.
type LKETypeRegionPrice ¶ added in v1.41.0
type LKETypeRegionPrice struct {
// contains filtered or unexported fields
}
LKETypeRegionPrice represents the regional hourly and monthly prices for an LKE type entry.
type LKEVersion ¶ added in v0.13.0
type LKEVersion struct {
ID string `json:"id"`
}
LKEVersion fields are those returned by GetLKEVersion
type LKEVersionsPagedResponse
deprecated
added in
v0.13.0
type LKEVersionsPagedResponse legacyPagedResponse[LKEVersion]
Deprecated: LKEVersionsPagedResponse exists for historical compatibility and should not be used.
type LastLogin ¶ added in v1.41.0
LastLogin represents a LastLogin object
func (*LastLogin) UnmarshalJSON ¶ added in v1.41.0
UnmarshalJSON implements the json.Unmarshaler interface
type LinodeAddons ¶
type LinodeAddons struct {
Backups *LinodeBackupsAddon `json:"backups"`
}
LinodeAddons represent the linode addons object
type LinodeBackupsAddon ¶
type LinodeBackupsAddon struct { Price *LinodePrice `json:"price"` RegionPrices []LinodeRegionPrice `json:"region_prices"` }
LinodeBackupsAddon represents a linode backups addon object
type LinodeIPAssignment ¶ added in v1.3.0
LinodeIPAssignment stores an assignment between an IP address and a Linode instance.
type LinodeKernel ¶
type LinodeKernel struct { ID string `json:"id"` Label string `json:"label"` Version string `json:"version"` Architecture string `json:"architecture"` Deprecated bool `json:"deprecated"` KVM bool `json:"kvm"` XEN bool `json:"xen"` PVOPS bool `json:"pvops"` Built *time.Time `json:"-"` }
LinodeKernel represents a Linode Instance kernel object
func (*LinodeKernel) UnmarshalJSON ¶ added in v1.20.1
func (i *LinodeKernel) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type LinodeKernelsPagedResponse
deprecated
type LinodeKernelsPagedResponse legacyPagedResponse[LinodeKernel]
Deprecated: LinodeKernelsPagedResponse exists for historical compatibility and should not be used.
type LinodePrice ¶
LinodePrice represents a linode type price object
type LinodeRegionPrice ¶ added in v1.23.0
type LinodeRegionPrice struct { ID string `json:"id"` Hourly float32 `json:"hourly"` Monthly float32 `json:"monthly"` }
LinodeRegionPrice represents an individual type or addon price exception for a region.
type LinodeType ¶
type LinodeType struct { ID string `json:"id"` Disk int `json:"disk"` Class LinodeTypeClass `json:"class"` // enum: nanode, standard, highmem, dedicated, gpu Price *LinodePrice `json:"price"` Label string `json:"label"` Addons *LinodeAddons `json:"addons"` RegionPrices []LinodeRegionPrice `json:"region_prices"` NetworkOut int `json:"network_out"` Memory int `json:"memory"` Transfer int `json:"transfer"` VCPUs int `json:"vcpus"` GPUs int `json:"gpus"` Successor string `json:"successor"` AcceleratedDevices int `json:"accelerated_devices"` }
LinodeType represents a linode type object
type LinodeTypeClass ¶ added in v0.4.0
type LinodeTypeClass string
LinodeTypeClass constants start with Class and include Linode API Instance Type Classes
const ( ClassNanode LinodeTypeClass = "nanode" ClassStandard LinodeTypeClass = "standard" ClassHighmem LinodeTypeClass = "highmem" ClassDedicated LinodeTypeClass = "dedicated" ClassGPU LinodeTypeClass = "gpu" )
LinodeTypeClass contants are the Instance Type Classes that an Instance Type can be assigned
type LinodeTypesPagedResponse
deprecated
type LinodeTypesPagedResponse legacyPagedResponse[LinodeType]
Deprecated: LinodeTypesPagedResponse exists for historical compatibility and should not be used.
type LinodesAssignIPsOptions ¶ added in v1.3.0
type LinodesAssignIPsOptions struct { Region string `json:"region"` Assignments []LinodeIPAssignment `json:"assignments"` }
LinodesAssignIPsOptions fields are those accepted by InstancesAssignIPs.
type LishAuthMethod ¶ added in v0.6.1
type LishAuthMethod string
LishAuthMethod constants start with AuthMethod and include Linode API Lish Authentication Methods
const ( AuthMethodPasswordKeys LishAuthMethod = "password_keys" AuthMethodKeysOnly LishAuthMethod = "keys_only" AuthMethodDisabled LishAuthMethod = "disabled" )
LishAuthMethod constants are the methods of authentication allowed when connecting via Lish
type ListIPAddressesQuery ¶ added in v1.17.1
type ListIPAddressesQuery struct {
SkipIPv6RDNS bool `query:"skip_ipv6_rdns"`
}
ListIPAddressesQuery fields are those accepted as query params for the ListIPAddresses function.
type ListOptions ¶
type ListOptions struct { *PageOptions PageSize int `json:"page_size"` Filter string `json:"filter"` // QueryParams allows for specifying custom query parameters on list endpoint // calls. QueryParams should be an instance of a struct containing fields with // the `query` tag. QueryParams any }
ListOptions are the pagination and filtering (TODO) parameters for endpoints nolint
func NewListOptions ¶
func NewListOptions(page int, filter string) *ListOptions
NewListOptions simplified construction of ListOptions using only the two writable properties, Page and Filter
func (ListOptions) Hash ¶ added in v1.10.1
func (l ListOptions) Hash() (string, error)
Hash returns the sha256 hash of the provided ListOptions. This is necessary for caching purposes.
type LoadConfigOptions ¶ added in v1.7.0
type Login ¶ added in v1.11.0
type Login struct { ID int `json:"id"` Datetime *time.Time `json:"datetime"` IP string `json:"ip"` Restricted bool `json:"restricted"` Username string `json:"username"` Status string `json:"status"` }
func (*Login) UnmarshalJSON ¶ added in v1.11.0
UnmarshalJSON implements the json.Unmarshaler interface
type LoginsPagedResponse
deprecated
added in
v1.11.0
type LoginsPagedResponse legacyPagedResponse[Login]
Deprecated: LoginsPagedResponse exists for historical compatibility and should not be used.
type LongviewClient ¶
type LongviewClient struct { ID int `json:"id"` APIKey string `json:"api_key"` Created *time.Time `json:"-"` InstallCode string `json:"install_code"` Label string `json:"label"` Updated *time.Time `json:"-"` Apps struct { Apache any `json:"apache"` MySQL any `json:"mysql"` NginX any `json:"nginx"` } `json:"apps"` }
LongviewClient represents a LongviewClient object
func (*LongviewClient) UnmarshalJSON ¶ added in v1.14.0
func (i *LongviewClient) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type LongviewClientCreateOptions ¶ added in v1.14.0
type LongviewClientCreateOptions struct {
Label string `json:"label"`
}
LongviewClientCreateOptions is an options struct used when Creating a Longview Client
type LongviewClientUpdateOptions ¶ added in v1.14.0
type LongviewClientUpdateOptions struct {
Label string `json:"label"`
}
LongviewClientCreateOptions is an options struct used when Updating a Longview Client
type LongviewClientsPagedResponse
deprecated
type LongviewClientsPagedResponse legacyPagedResponse[LongviewClient]
Deprecated: LongviewClientsPagedResponse exists for historical compatibility and should not be used.
type LongviewPlan ¶ added in v1.14.0
type LongviewPlan struct { ID string `json:"id"` Label string `json:"label"` ClientsIncluded int `json:"clients_included"` Price struct { Hourly float64 `json:"hourly"` Monthly float64 `json:"monthly"` } `json:"price"` }
LongviewPlan represents a Longview Plan object
type LongviewPlanUpdateOptions ¶ added in v1.14.0
type LongviewPlanUpdateOptions struct {
LongviewSubscription string `json:"longview_subscription"`
}
LongviewPlanUpdateOptions is an options struct used when Updating a Longview Plan
type LongviewSubscription ¶
type LongviewSubscription struct { ID string `json:"id"` Label string `json:"label"` ClientsIncluded int `json:"clients_included"` Price *LinodePrice `json:"price"` }
LongviewSubscription represents a LongviewSubscription object
type LongviewSubscriptionsPagedResponse
deprecated
type LongviewSubscriptionsPagedResponse legacyPagedResponse[LongviewSubscription]
Deprecated: LongviewSubscriptionsPagedResponse exists for historical compatibility and should not be used.
type MonthlyInstanceTransferStats ¶ added in v1.43.0
type MonthlyInstanceTransferStats struct { // The amount of inbound public network traffic received by this Linode, in bytes, for a specific year/month. BytesIn int `json:"bytes_in"` // The amount of outbound public network traffic sent by this Linode, in bytes, for a specific year/month. BytesOut int `json:"bytes_out"` // The total amount of public network traffic sent and received by this Linode, in bytes, for a specific year/month. BytesTotal int `json:"bytes_total"` }
MonthlyInstanceTransferStats pool stats for a Linode Instance network transfer statistics for a specific month
type MySQLBackupCreateOptions ¶ added in v1.6.0
type MySQLBackupCreateOptions struct { Label string `json:"label"` Target MySQLDatabaseTarget `json:"target"` }
MySQLBackupCreateOptions are options used for CreateMySQLDatabaseBackup(...) Deprecated: MySQLBackupCreateOptions is a deprecated struct, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
type MySQLCreateOptions ¶ added in v1.4.0
type MySQLCreateOptions struct { Label string `json:"label"` Region string `json:"region"` Type string `json:"type"` Engine string `json:"engine"` AllowList []string `json:"allow_list,omitempty"` ClusterSize int `json:"cluster_size,omitempty"` // Deprecated: ReplicationType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationType string `json:"replication_type,omitempty"` // Deprecated: Encrypted is a deprecated property, as it is no longer supported in DBaaS V2. Encrypted bool `json:"encrypted,omitempty"` // Deprecated: SSLConnection is a deprecated property, as it is no longer supported in DBaaS V2. SSLConnection bool `json:"ssl_connection,omitempty"` Fork *DatabaseFork `json:"fork,omitempty"` }
MySQLCreateOptions fields are used when creating a new MySQL Database
type MySQLDatabase ¶ added in v1.4.0
type MySQLDatabase struct { ID int `json:"id"` Status DatabaseStatus `json:"status"` Label string `json:"label"` Hosts DatabaseHost `json:"hosts"` Region string `json:"region"` Type string `json:"type"` Engine string `json:"engine"` Version string `json:"version"` ClusterSize int `json:"cluster_size"` Platform DatabasePlatform `json:"platform"` // Members has dynamic keys so it is a map Members map[string]DatabaseMemberType `json:"members"` // Deprecated: ReplicationType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationType string `json:"replication_type"` // Deprecated: SSLConnection is a deprecated property, as it is no longer supported in DBaaS V2. SSLConnection bool `json:"ssl_connection"` // Deprecated: Encrypted is a deprecated property, as it is no longer supported in DBaaS V2. Encrypted bool `json:"encrypted"` AllowList []string `json:"allow_list"` InstanceURI string `json:"instance_uri"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` Updates DatabaseMaintenanceWindow `json:"updates"` Fork *DatabaseFork `json:"fork"` OldestRestoreTime *time.Time `json:"-"` UsedDiskSizeGB int `json:"used_disk_size_gb"` TotalDiskSizeGB int `json:"total_disk_size_gb"` Port int `json:"port"` }
A MySQLDatabase is an instance of Linode MySQL Managed Databases
func (*MySQLDatabase) UnmarshalJSON ¶ added in v1.4.0
func (d *MySQLDatabase) UnmarshalJSON(b []byte) error
type MySQLDatabaseBackup ¶ added in v1.4.0
type MySQLDatabaseBackup struct { ID int `json:"id"` Label string `json:"label"` Type string `json:"type"` Created *time.Time `json:"-"` }
MySQLDatabaseBackup is information for interacting with a backup for the existing MySQL Database Deprecated: MySQLDatabaseBackup is a deprecated struct, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*MySQLDatabaseBackup) UnmarshalJSON ¶ added in v1.4.0
func (d *MySQLDatabaseBackup) UnmarshalJSON(b []byte) error
type MySQLDatabaseBackupsPagedResponse
deprecated
added in
v1.4.0
type MySQLDatabaseBackupsPagedResponse legacyPagedResponse[MySQLDatabaseBackup]
Deprecated: MySQLDatabaseBackupsPagedResponse exists for historical compatibility and should not be used.
type MySQLDatabaseCredential ¶ added in v1.4.0
type MySQLDatabaseCredential struct { Username string `json:"username"` Password string `json:"password"` }
MySQLDatabaseCredential is the Root Credentials to access the Linode Managed Database
type MySQLDatabaseMaintenanceWindow ¶ added in v1.6.0
type MySQLDatabaseMaintenanceWindow = DatabaseMaintenanceWindow
type MySQLDatabaseSSL ¶ added in v1.4.0
type MySQLDatabaseSSL struct {
CACertificate []byte `json:"ca_certificate"`
}
MySQLDatabaseSSL is the SSL Certificate to access the Linode Managed MySQL Database
type MySQLDatabaseTarget ¶ added in v1.6.0
type MySQLDatabaseTarget string
const ( MySQLDatabaseTargetPrimary MySQLDatabaseTarget = "primary" MySQLDatabaseTargetSecondary MySQLDatabaseTarget = "secondary" )
type MySQLDatabasesPagedResponse
deprecated
added in
v1.4.0
type MySQLDatabasesPagedResponse legacyPagedResponse[MySQLDatabase]
Deprecated: MySQLDatabasesPagedResponse exists for historical compatibility and should not be used.
type MySQLUpdateOptions ¶ added in v1.4.0
type MySQLUpdateOptions struct { Label string `json:"label,omitempty"` AllowList *[]string `json:"allow_list,omitempty"` Updates *DatabaseMaintenanceWindow `json:"updates,omitempty"` Type string `json:"type,omitempty"` ClusterSize int `json:"cluster_size,omitempty"` Version string `json:"version,omitempty"` }
MySQLUpdateOptions fields are used when altering the existing MySQL Database
type NetworkAddresses ¶ added in v0.13.1
type NetworkAddresses struct { IPv4 *[]string `json:"ipv4,omitempty"` IPv6 *[]string `json:"ipv6,omitempty"` }
NetworkAddresses are arrays of ipv4 and v6 addresses
type NetworkProtocol ¶ added in v0.13.1
type NetworkProtocol string
NetworkProtocol enum type
const ( TCP NetworkProtocol = "TCP" UDP NetworkProtocol = "UDP" ICMP NetworkProtocol = "ICMP" IPENCAP NetworkProtocol = "IPENCAP" )
NetworkProtocol enum values
type NetworkTransferPrice ¶ added in v1.41.0
type NetworkTransferPrice struct {
// contains filtered or unexported fields
}
NetworkTransferPrice represents a single valid network transfer price.
type NetworkTransferTypePrice ¶ added in v1.41.0
type NetworkTransferTypePrice struct {
// contains filtered or unexported fields
}
NetworkTransferTypePrice represents the base hourly and monthly prices for a network transfer price entry.
type NetworkTransferTypeRegionPrice ¶ added in v1.41.0
type NetworkTransferTypeRegionPrice struct {
// contains filtered or unexported fields
}
NetworkTransferTypeRegionPrice represents the regional hourly and monthly prices for a network transfer price entry.
type NodeBalancer ¶
type NodeBalancer struct { // This NodeBalancer's unique ID. ID int `json:"id"` // This NodeBalancer's label. These must be unique on your Account. Label *string `json:"label"` // The Region where this NodeBalancer is located. NodeBalancers only support backends in the same Region. Region string `json:"region"` // This NodeBalancer's hostname, ending with .nodebalancer.linode.com Hostname *string `json:"hostname"` // This NodeBalancer's public IPv4 address. IPv4 *string `json:"ipv4"` // This NodeBalancer's public IPv6 address. IPv6 *string `json:"ipv6"` // Throttle connections per second (0-20). Set to 0 (zero) to disable throttling. ClientConnThrottle int `json:"client_conn_throttle"` // Information about the amount of transfer this NodeBalancer has had so far this month. Transfer NodeBalancerTransfer `json:"transfer"` // An array of tags applied to this object. Tags are for organizational purposes only. Tags []string `json:"tags"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
NodeBalancer represents a NodeBalancer object
func (NodeBalancer) GetCreateOptions ¶
func (i NodeBalancer) GetCreateOptions() NodeBalancerCreateOptions
GetCreateOptions converts a NodeBalancer to NodeBalancerCreateOptions for use in CreateNodeBalancer
func (NodeBalancer) GetUpdateOptions ¶
func (i NodeBalancer) GetUpdateOptions() NodeBalancerUpdateOptions
GetUpdateOptions converts a NodeBalancer to NodeBalancerUpdateOptions for use in UpdateNodeBalancer
func (*NodeBalancer) UnmarshalJSON ¶ added in v0.13.0
func (i *NodeBalancer) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type NodeBalancerConfig ¶
type NodeBalancerConfig struct { ID int `json:"id"` Port int `json:"port"` Protocol ConfigProtocol `json:"protocol"` ProxyProtocol ConfigProxyProtocol `json:"proxy_protocol"` Algorithm ConfigAlgorithm `json:"algorithm"` Stickiness ConfigStickiness `json:"stickiness"` Check ConfigCheck `json:"check"` CheckInterval int `json:"check_interval"` CheckAttempts int `json:"check_attempts"` CheckPath string `json:"check_path"` CheckBody string `json:"check_body"` CheckPassive bool `json:"check_passive"` CheckTimeout int `json:"check_timeout"` CipherSuite ConfigCipher `json:"cipher_suite"` NodeBalancerID int `json:"nodebalancer_id"` SSLCommonName string `json:"ssl_commonname"` SSLFingerprint string `json:"ssl_fingerprint"` SSLCert string `json:"ssl_cert"` SSLKey string `json:"ssl_key"` NodesStatus *NodeBalancerNodeStatus `json:"nodes_status"` }
NodeBalancerConfig objects allow a NodeBalancer to accept traffic on a new port
func (NodeBalancerConfig) GetCreateOptions ¶
func (i NodeBalancerConfig) GetCreateOptions() NodeBalancerConfigCreateOptions
GetCreateOptions converts a NodeBalancerConfig to NodeBalancerConfigCreateOptions for use in CreateNodeBalancerConfig
func (NodeBalancerConfig) GetRebuildOptions ¶ added in v0.5.0
func (i NodeBalancerConfig) GetRebuildOptions() NodeBalancerConfigRebuildOptions
GetRebuildOptions converts a NodeBalancerConfig to NodeBalancerConfigRebuildOptions for use in RebuildNodeBalancerConfig
func (NodeBalancerConfig) GetUpdateOptions ¶
func (i NodeBalancerConfig) GetUpdateOptions() NodeBalancerConfigUpdateOptions
GetUpdateOptions converts a NodeBalancerConfig to NodeBalancerConfigUpdateOptions for use in UpdateNodeBalancerConfig
type NodeBalancerConfigCreateOptions ¶
type NodeBalancerConfigCreateOptions struct { Port int `json:"port"` Protocol ConfigProtocol `json:"protocol,omitempty"` ProxyProtocol ConfigProxyProtocol `json:"proxy_protocol,omitempty"` Algorithm ConfigAlgorithm `json:"algorithm,omitempty"` Stickiness ConfigStickiness `json:"stickiness,omitempty"` Check ConfigCheck `json:"check,omitempty"` CheckInterval int `json:"check_interval,omitempty"` CheckAttempts int `json:"check_attempts,omitempty"` CheckPath string `json:"check_path,omitempty"` CheckBody string `json:"check_body,omitempty"` CheckPassive *bool `json:"check_passive,omitempty"` CheckTimeout int `json:"check_timeout,omitempty"` CipherSuite ConfigCipher `json:"cipher_suite,omitempty"` SSLCert string `json:"ssl_cert,omitempty"` SSLKey string `json:"ssl_key,omitempty"` Nodes []NodeBalancerNodeCreateOptions `json:"nodes,omitempty"` }
NodeBalancerConfigCreateOptions are permitted by CreateNodeBalancerConfig
type NodeBalancerConfigRebuildNodeOptions ¶ added in v1.30.0
type NodeBalancerConfigRebuildNodeOptions struct { NodeBalancerNodeCreateOptions ID int `json:"id,omitempty"` }
NodeBalancerConfigRebuildNodeOptions represents a node defined when rebuilding a NodeBalancer config.
type NodeBalancerConfigRebuildOptions ¶ added in v0.5.0
type NodeBalancerConfigRebuildOptions struct { Port int `json:"port"` Protocol ConfigProtocol `json:"protocol,omitempty"` ProxyProtocol ConfigProxyProtocol `json:"proxy_protocol,omitempty"` Algorithm ConfigAlgorithm `json:"algorithm,omitempty"` Stickiness ConfigStickiness `json:"stickiness,omitempty"` Check ConfigCheck `json:"check,omitempty"` CheckInterval int `json:"check_interval,omitempty"` CheckAttempts int `json:"check_attempts,omitempty"` CheckPath string `json:"check_path,omitempty"` CheckBody string `json:"check_body,omitempty"` CheckPassive *bool `json:"check_passive,omitempty"` CheckTimeout int `json:"check_timeout,omitempty"` CipherSuite ConfigCipher `json:"cipher_suite,omitempty"` SSLCert string `json:"ssl_cert,omitempty"` SSLKey string `json:"ssl_key,omitempty"` Nodes []NodeBalancerConfigRebuildNodeOptions `json:"nodes"` }
NodeBalancerConfigRebuildOptions used by RebuildNodeBalancerConfig
type NodeBalancerConfigUpdateOptions ¶
type NodeBalancerConfigUpdateOptions NodeBalancerConfigCreateOptions
NodeBalancerConfigUpdateOptions are permitted by UpdateNodeBalancerConfig
type NodeBalancerConfigsPagedResponse
deprecated
type NodeBalancerConfigsPagedResponse legacyPagedResponse[NodeBalancerConfig]
Deprecated: NodeBalancerConfigsPagedResponse exists for historical compatibility and should not be used.
type NodeBalancerCreateOptions ¶
type NodeBalancerCreateOptions struct { Label *string `json:"label,omitempty"` Region string `json:"region,omitempty"` ClientConnThrottle *int `json:"client_conn_throttle,omitempty"` Configs []*NodeBalancerConfigCreateOptions `json:"configs,omitempty"` Tags []string `json:"tags"` FirewallID int `json:"firewall_id,omitempty"` }
NodeBalancerCreateOptions are the options permitted for CreateNodeBalancer
type NodeBalancerFirewallsPagedResponse
deprecated
added in
v1.26.0
type NodeBalancerFirewallsPagedResponse legacyPagedResponse[Firewall]
Deprecated: NodeBalancerFirewallsPagedResponse exists for historical compatibility and should not be used.
type NodeBalancerNode ¶
type NodeBalancerNode struct { ID int `json:"id"` Address string `json:"address"` Label string `json:"label"` Status string `json:"status"` Weight int `json:"weight"` Mode NodeMode `json:"mode"` ConfigID int `json:"config_id"` NodeBalancerID int `json:"nodebalancer_id"` }
NodeBalancerNode objects represent a backend that can accept traffic for a NodeBalancer Config
func (NodeBalancerNode) GetCreateOptions ¶
func (i NodeBalancerNode) GetCreateOptions() NodeBalancerNodeCreateOptions
GetCreateOptions converts a NodeBalancerNode to NodeBalancerNodeCreateOptions for use in CreateNodeBalancerNode
func (NodeBalancerNode) GetUpdateOptions ¶
func (i NodeBalancerNode) GetUpdateOptions() NodeBalancerNodeUpdateOptions
GetUpdateOptions converts a NodeBalancerNode to NodeBalancerNodeUpdateOptions for use in UpdateNodeBalancerNode
type NodeBalancerNodeCreateOptions ¶
type NodeBalancerNodeCreateOptions struct { Address string `json:"address"` Label string `json:"label"` Weight int `json:"weight,omitempty"` Mode NodeMode `json:"mode,omitempty"` }
NodeBalancerNodeCreateOptions fields are those accepted by CreateNodeBalancerNode
type NodeBalancerNodeStatus ¶
NodeBalancerNodeStatus represents the total number of nodes whose status is Up or Down
type NodeBalancerNodeUpdateOptions ¶
type NodeBalancerNodeUpdateOptions struct { Address string `json:"address,omitempty"` Label string `json:"label,omitempty"` Weight int `json:"weight,omitempty"` Mode NodeMode `json:"mode,omitempty"` }
NodeBalancerNodeUpdateOptions fields are those accepted by UpdateNodeBalancerNode
type NodeBalancerNodesPagedResponse
deprecated
type NodeBalancerNodesPagedResponse legacyPagedResponse[NodeBalancerNode]
Deprecated: NodeBalancerNodesPagedResponse exists for historical compatibility and should not be used.
type NodeBalancerStats ¶ added in v0.13.0
type NodeBalancerStats struct { Title string `json:"title"` Data NodeBalancerStatsData `json:"data"` }
NodeBalancerStats represents a nodebalancer stats object
type NodeBalancerStatsData ¶ added in v0.13.0
type NodeBalancerStatsData struct { Connections [][]float64 `json:"connections"` Traffic StatsTraffic `json:"traffic"` }
NodeBalancerStatsData represents a nodebalancer stats data object
type NodeBalancerTransfer ¶
type NodeBalancerTransfer struct { // The total transfer, in MB, used by this NodeBalancer this month. Total *float64 `json:"total"` // The total inbound transfer, in MB, used for this NodeBalancer this month. Out *float64 `json:"out"` // The total outbound transfer, in MB, used for this NodeBalancer this month. In *float64 `json:"in"` }
NodeBalancerTransfer contains information about the amount of transfer a NodeBalancer has had in the current month
type NodeBalancerType ¶ added in v1.41.0
type NodeBalancerType struct {
// contains filtered or unexported fields
}
NodeBalancerType represents a single valid NodeBalancer type.
type NodeBalancerTypePrice ¶ added in v1.41.0
type NodeBalancerTypePrice struct {
// contains filtered or unexported fields
}
NodeBalancerTypePrice represents the base hourly and monthly prices for a NodeBalancer type entry.
type NodeBalancerTypeRegionPrice ¶ added in v1.41.0
type NodeBalancerTypeRegionPrice struct {
// contains filtered or unexported fields
}
NodeBalancerTypeRegionPrice represents the regional hourly and monthly prices for a NodeBalancer type entry.
type NodeBalancerUpdateOptions ¶
type NodeBalancerUpdateOptions struct { Label *string `json:"label,omitempty"` ClientConnThrottle *int `json:"client_conn_throttle,omitempty"` Tags *[]string `json:"tags,omitempty"` }
NodeBalancerUpdateOptions are the options permitted for UpdateNodeBalancer
type NodeBalancersPagedResponse
deprecated
type NodeBalancersPagedResponse legacyPagedResponse[NodeBalancer]
Deprecated: NodeBalancersPagedResponse exists for historical compatibility and should not be used.
type NodeMode ¶ added in v0.2.0
type NodeMode string
NodeMode is the mode a NodeBalancer should use when sending traffic to a NodeBalancer Node
var ( // ModeAccept is the NodeMode indicating a NodeBalancer Node is accepting traffic ModeAccept NodeMode = "accept" // ModeReject is the NodeMode indicating a NodeBalancer Node is not receiving traffic ModeReject NodeMode = "reject" // ModeDrain is the NodeMode indicating a NodeBalancer Node is not receiving new traffic, but may continue receiving traffic from pinned connections ModeDrain NodeMode = "drain" // ModeBackup is the NodeMode indicating a NodeBalancer Node will only receive traffic if all "accept" Nodes are down ModeBackup NodeMode = "backup" )
type Notification ¶
type Notification struct { Label string `json:"label"` Body *string `json:"body"` Message string `json:"message"` Type NotificationType `json:"type"` Severity NotificationSeverity `json:"severity"` Entity *NotificationEntity `json:"entity"` Until *time.Time `json:"-"` When *time.Time `json:"-"` }
Notification represents a notification on an Account
func (*Notification) UnmarshalJSON ¶ added in v0.13.0
func (i *Notification) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type NotificationEntity ¶
type NotificationEntity struct { ID int `json:"id"` Label string `json:"label"` Type string `json:"type"` URL string `json:"url"` }
NotificationEntity adds detailed information about the Notification. This could refer to the ticket that triggered the notification, for example.
type NotificationSeverity ¶ added in v0.7.1
type NotificationSeverity string
NotificationSeverity constants start with Notification and include all known Linode API Notification Severities.
const ( NotificationMinor NotificationSeverity = "minor" NotificationMajor NotificationSeverity = "major" NotificationCritical NotificationSeverity = "critical" )
NotificationSeverity constants represent the actions that cause a Notification. New severities may be added in the future.
type NotificationType ¶ added in v0.7.1
type NotificationType string
NotificationType constants start with Notification and include all known Linode API Notification Types.
const ( NotificationMigrationScheduled NotificationType = "migration_scheduled" NotificationMigrationImminent NotificationType = "migration_imminent" NotificationMigrationPending NotificationType = "migration_pending" NotificationRebootScheduled NotificationType = "reboot_scheduled" NotificationOutage NotificationType = "outage" NotificationPaymentDue NotificationType = "payment_due" NotificationTicketImportant NotificationType = "ticket_important" NotificationTicketAbuse NotificationType = "ticket_abuse" NotificationNotice NotificationType = "notice" NotificationMaintenance NotificationType = "maintenance" )
NotificationType constants represent the actions that cause a Notification. New types may be added in the future.
type NotificationsPagedResponse
deprecated
type NotificationsPagedResponse legacyPagedResponse[Notification]
Deprecated: NotificationsPagedResponse exists for historical compatibility and should not be used.
type OAuthClient ¶ added in v0.8.0
type OAuthClient struct { // The unique ID of this OAuth Client. ID string `json:"id"` // The location a successful log in from https://login.linode.com should be redirected to for this client. The receiver of this redirect should be ready to accept an OAuth exchange code and finish the OAuth exchange. RedirectURI string `json:"redirect_uri"` // The name of this application. This will be presented to users when they are asked to grant it access to their Account. Label string `json:"label"` // Current status of the OAuth Client, Enum: "active" "disabled" "suspended" Status OAuthClientStatus `json:"status"` // The OAuth Client secret, used in the OAuth exchange. This is returned as <REDACTED> except when an OAuth Client is created or its secret is reset. This is a secret, and should not be shared or disclosed publicly. Secret string `json:"secret"` // If this OAuth Client is public or private. Public bool `json:"public"` // The URL where this client's thumbnail may be viewed, or nil if this client does not have a thumbnail set. ThumbnailURL *string `json:"thumbnail_url"` }
OAuthClient represents a OAuthClient object
func (OAuthClient) GetCreateOptions ¶ added in v0.8.0
func (i OAuthClient) GetCreateOptions() (o OAuthClientCreateOptions)
GetCreateOptions converts a OAuthClient to OAuthClientCreateOptions for use in CreateOAuthClient
func (OAuthClient) GetUpdateOptions ¶ added in v0.8.0
func (i OAuthClient) GetUpdateOptions() (o OAuthClientUpdateOptions)
GetUpdateOptions converts a OAuthClient to OAuthClientUpdateOptions for use in UpdateOAuthClient
type OAuthClientCreateOptions ¶ added in v0.8.0
type OAuthClientCreateOptions struct { // The location a successful log in from https://login.linode.com should be redirected to for this client. The receiver of this redirect should be ready to accept an OAuth exchange code and finish the OAuth exchange. RedirectURI string `json:"redirect_uri"` // The name of this application. This will be presented to users when they are asked to grant it access to their Account. Label string `json:"label"` // If this OAuth Client is public or private. Public bool `json:"public"` }
OAuthClientCreateOptions fields are those accepted by CreateOAuthClient
type OAuthClientStatus ¶ added in v0.8.0
type OAuthClientStatus string
OAuthClientStatus constants start with OAuthClient and include Linode API Instance Status values
const ( OAuthClientActive OAuthClientStatus = "active" OAuthClientDisabled OAuthClientStatus = "disabled" OAuthClientSuspended OAuthClientStatus = "suspended" )
OAuthClientStatus constants reflect the current status of an OAuth Client
type OAuthClientUpdateOptions ¶ added in v0.8.0
type OAuthClientUpdateOptions struct { // The location a successful log in from https://login.linode.com should be redirected to for this client. The receiver of this redirect should be ready to accept an OAuth exchange code and finish the OAuth exchange. RedirectURI string `json:"redirect_uri"` // The name of this application. This will be presented to users when they are asked to grant it access to their Account. Label string `json:"label"` // If this OAuth Client is public or private. Public bool `json:"public"` }
OAuthClientUpdateOptions fields are those accepted by UpdateOAuthClient
type OAuthClientsPagedResponse
deprecated
added in
v0.8.0
type OAuthClientsPagedResponse legacyPagedResponse[OAuthClient]
Deprecated: OAuthClientsPagedResponse exists for historical compatibility and should not be used.
type ObjectStorageACL ¶ added in v0.26.1
type ObjectStorageACL string
ObjectStorageACL options start with ACL and include all known ACL types
const ( ACLPrivate ObjectStorageACL = "private" ACLPublicRead ObjectStorageACL = "public-read" ACLAuthenticatedRead ObjectStorageACL = "authenticated-read" ACLPublicReadWrite ObjectStorageACL = "public-read-write" )
ObjectStorageACL options represent the access control level of a bucket.
type ObjectStorageBucket ¶ added in v0.11.0
type ObjectStorageBucket struct { Label string `json:"label"` // Deprecated: The 'Cluster' field has been deprecated in favor of the 'Region' field. // For example, a Cluster value of `us-mia-1` will translate to a Region value of `us-mia`. // // This is necessary because there are now multiple Object Storage clusters to a region. // // NOTE: The 'Cluster' field will always return a value similar to `<REGION>-1` (e.g., `us-mia-1`) // for backward compatibility purposes. Cluster string `json:"cluster"` Region string `json:"region"` S3Endpoint string `json:"s3_endpoint"` EndpointType ObjectStorageEndpointType `json:"endpoint_type"` Created *time.Time `json:"-"` Hostname string `json:"hostname"` Objects int `json:"objects"` Size int `json:"size"` }
ObjectStorageBucket represents a ObjectStorage object
func (*ObjectStorageBucket) UnmarshalJSON ¶ added in v0.13.0
func (i *ObjectStorageBucket) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type ObjectStorageBucketAccess ¶ added in v0.26.1
type ObjectStorageBucketAccess struct { ACL ObjectStorageACL `json:"acl"` CorsEnabled bool `json:"cors_enabled"` }
ObjectStorageBucketAccess holds Object Storage access info
type ObjectStorageBucketAccessV2 ¶ added in v1.46.0
type ObjectStorageBucketAccessV2 struct { ACL ObjectStorageACL `json:"acl"` ACLXML string `json:"acl_xml"` CorsEnabled *bool `json:"cors_enabled"` CorsXML *string `json:"cors_xml"` }
type ObjectStorageBucketCert
deprecated
added in
v0.21.2
type ObjectStorageBucketCert struct {
SSL bool `json:"ssl"`
}
Deprecated: Please use ObjectStorageBucketCertV2 for all new implementations.
type ObjectStorageBucketCertUploadOptions ¶ added in v0.21.2
type ObjectStorageBucketCertV2 ¶ added in v1.46.0
type ObjectStorageBucketCertV2 struct {
SSL *bool `json:"ssl"`
}
type ObjectStorageBucketContent ¶ added in v1.44.0
type ObjectStorageBucketContent struct { Data []ObjectStorageBucketContentData `json:"data"` IsTruncated bool `json:"is_truncated"` NextMarker *string `json:"next_marker"` }
ObjectStorageBucketContent holds the content of an ObjectStorageBucket
type ObjectStorageBucketContentData ¶ added in v1.44.0
type ObjectStorageBucketContentData struct { Etag string `json:"etag"` LastModified *time.Time `json:"last_modified"` Name string `json:"name"` Owner string `json:"owner"` Size int `json:"size"` }
ObjectStorageBucketContentData holds the data of the content of an ObjectStorageBucket
type ObjectStorageBucketCreateOptions ¶ added in v0.11.0
type ObjectStorageBucketCreateOptions struct { // Deprecated: The 'Cluster' field has been deprecated. // // Going forward, the 'Region' field will be the supported way to designate where an // Object Storage Bucket should be created. For example, a 'Cluster' value of `us-mia-1` // will translate to a Region value of `us-mia`. Cluster string `json:"cluster,omitempty"` Region string `json:"region,omitempty"` Label string `json:"label"` S3Endpoint string `json:"s3_endpoint,omitempty"` EndpointType ObjectStorageEndpointType `json:"endpoint_type,omitempty"` ACL ObjectStorageACL `json:"acl,omitempty"` CorsEnabled *bool `json:"cors_enabled,omitempty"` }
ObjectStorageBucketCreateOptions fields are those accepted by CreateObjectStorageBucket
type ObjectStorageBucketListContentsParams ¶ added in v1.44.0
type ObjectStorageBucketListContentsParams struct { Marker *string Delimiter *string Prefix *string PageSize *int }
ObjectStorageBucketListContentsParams fields are the query parameters for ListObjectStorageBucketContents
type ObjectStorageBucketUpdateAccessOptions ¶ added in v0.26.1
type ObjectStorageBucketUpdateAccessOptions struct { ACL ObjectStorageACL `json:"acl,omitempty"` CorsEnabled *bool `json:"cors_enabled,omitempty"` }
ObjectStorageBucketUpdateAccessOptions fields are those accepted by UpdateObjectStorageBucketAccess
type ObjectStorageBucketsPagedResponse
deprecated
added in
v0.11.0
type ObjectStorageBucketsPagedResponse legacyPagedResponse[ObjectStorageBucket]
Deprecated: ObjectStorageBucketsPagedResponse exists for historical compatibility and should not be used.
type ObjectStorageCluster ¶ added in v0.11.0
type ObjectStorageCluster struct { ID string `json:"id"` Domain string `json:"domain"` Status string `json:"status"` Region string `json:"region"` StaticSiteDomain string `json:"static_site_domain"` }
ObjectStorageCluster represents a linode object storage cluster object
type ObjectStorageClustersPagedResponse
deprecated
added in
v0.11.0
type ObjectStorageClustersPagedResponse legacyPagedResponse[ObjectStorageCluster]
Deprecated: ObjectStorageClustersPagedResponse exists for historical compatibility and should not be used.
type ObjectStorageEndpoint ¶ added in v1.46.0
type ObjectStorageEndpoint struct { Region string `json:"region"` S3Endpoint *string `json:"s3_endpoint"` EndpointType ObjectStorageEndpointType `json:"endpoint_type"` }
ObjectStorageEndpoint represents a linode object storage endpoint object
type ObjectStorageEndpointType ¶ added in v1.46.0
type ObjectStorageEndpointType string
NotificationType constants start with Notification and include all known Linode API Notification Types.
const ( ObjectStorageEndpointE0 ObjectStorageEndpointType = "E0" ObjectStorageEndpointE1 ObjectStorageEndpointType = "E1" ObjectStorageEndpointE2 ObjectStorageEndpointType = "E2" ObjectStorageEndpointE3 ObjectStorageEndpointType = "E3" )
NotificationType constants represent the actions that cause a Notification. New types may be added in the future.
type ObjectStorageKey ¶ added in v0.11.0
type ObjectStorageKey struct { ID int `json:"id"` Label string `json:"label"` AccessKey string `json:"access_key"` SecretKey string `json:"secret_key"` Limited bool `json:"limited"` BucketAccess *[]ObjectStorageKeyBucketAccess `json:"bucket_access"` Regions []ObjectStorageKeyRegion `json:"regions"` }
ObjectStorageKey represents a linode object storage key object
type ObjectStorageKeyBucketAccess ¶ added in v0.22.1
type ObjectStorageKeyBucketAccess struct { // Deprecated: Cluster field has been deprecated. // Please consider switching to use the 'Region' field. // If your Cluster is `us-mia-1`, then the region would be `us-mia`. Cluster string `json:"cluster,omitempty"` Region string `json:"region,omitempty"` BucketName string `json:"bucket_name"` Permissions string `json:"permissions"` }
ObjectStorageKeyBucketAccess represents a linode limited object storage key's bucket access
type ObjectStorageKeyCreateOptions ¶ added in v0.11.0
type ObjectStorageKeyCreateOptions struct { Label string `json:"label"` BucketAccess *[]ObjectStorageKeyBucketAccess `json:"bucket_access,omitempty"` Regions []string `json:"regions,omitempty"` }
ObjectStorageKeyCreateOptions fields are those accepted by CreateObjectStorageKey
type ObjectStorageKeyRegion ¶ added in v1.37.0
type ObjectStorageKeyRegion struct { ID string `json:"id"` S3Endpoint string `json:"s3_endpoint"` EndpointType ObjectStorageEndpointType `json:"endpoint_type"` }
type ObjectStorageKeyUpdateOptions ¶ added in v0.11.0
type ObjectStorageKeyUpdateOptions struct { Label string `json:"label,omitempty"` Regions []string `json:"regions,omitempty"` }
ObjectStorageKeyUpdateOptions fields are those accepted by UpdateObjectStorageKey
type ObjectStorageKeysPagedResponse
deprecated
added in
v0.11.0
type ObjectStorageKeysPagedResponse legacyPagedResponse[ObjectStorageKey]
Deprecated: ObjectStorageKeysPagedResponse exists for historical compatibility and should not be used.
type ObjectStorageObjectACLConfig
deprecated
added in
v0.24.1
type ObjectStorageObjectACLConfigUpdateOptions ¶ added in v0.24.1
type ObjectStorageObjectACLConfigV2 ¶ added in v1.46.0
type ObjectStorageObjectURL ¶ added in v0.24.1
type ObjectStorageObjectURLCreateOptions ¶ added in v0.24.1
type ObjectStorageTransfer ¶ added in v1.6.0
type ObjectStorageTransfer struct {
AmmountUsed int `json:"used"`
}
ObjectStorageTransfer is an object matching the response of object-storage/transfer
type PageOptions ¶
type PageOptions struct { Page int `json:"page" url:"page,omitempty"` Pages int `json:"pages" url:"pages,omitempty"` Results int `json:"results" url:"results,omitempty"` }
PageOptions are the pagination parameters for List endpoints
type PagedResponse ¶ added in v1.9.2
type PagedResponse interface {
// contains filtered or unexported methods
}
type Payment ¶ added in v0.8.0
type Payment struct { // The unique ID of the Payment ID int `json:"id"` // The amount, in US dollars, of the Payment. USD json.Number `json:"usd"` // When the Payment was made. Date *time.Time `json:"-"` }
Payment represents a Payment object
func (Payment) GetCreateOptions ¶ added in v0.8.0
func (i Payment) GetCreateOptions() (o PaymentCreateOptions)
GetCreateOptions converts a Payment to PaymentCreateOptions for use in CreatePayment
func (*Payment) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type PaymentCreateOptions ¶ added in v0.8.0
type PaymentCreateOptions struct { // CVV (Card Verification Value) of the credit card to be used for the Payment CVV string `json:"cvv,omitempty"` // The amount, in US dollars, of the Payment USD json.Number `json:"usd"` }
PaymentCreateOptions fields are those accepted by CreatePayment
type PaymentMethod ¶ added in v1.43.0
type PaymentMethod struct { // The unique ID of the Payment Method. ID int `json:"id"` // When the Payment Method was created. Created *time.Time `json:"created"` // Whether this Payment Method is the default method for automatically processing service charges. IsDefault bool `json:"is_default"` // The type of Payment Method. Type string `json:"type"` // The detailed data for the Payment Method, which can be of varying types. Data interface{} `json:"data"` }
PaymentMethod represents a PaymentMethod object
func (*PaymentMethod) UnmarshalJSON ¶ added in v1.43.0
func (i *PaymentMethod) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type PaymentMethodCreateOptions ¶ added in v1.43.0
type PaymentMethodCreateOptions struct { // Whether this Payment Method is the default method for automatically processing service charges. IsDefault bool `json:"is_default"` // The type of Payment Method. Alternative payment methods including Google Pay and PayPal can be added using the Cloud Manager. Type string `json:"type"` // An object representing the credit card information you have on file with Linode to make Payments against your Account. Data *PaymentMethodCreateOptionsData `json:"data"` }
PaymentMethodCreateOptions fields are those accepted by CreatePaymentMethod
type PaymentMethodCreateOptionsData ¶ added in v1.43.0
type PaymentMethodCreateOptionsData struct { // Your credit card number. No spaces or hyphens (-) allowed. CardNumber string `json:"card_number"` // CVV (Card Verification Value) of the credit card, typically found on the back of the card. CVV string `json:"cvv"` // A value from 1-12 representing the expiration month of your credit card. ExpiryMonth int `json:"expiry_month"` // A four-digit integer representing the expiration year of your credit card. ExpiryYear int `json:"expiry_year"` }
type PaymentMethodDataCreditCard ¶ added in v1.43.0
type PaymentMethodDataCreditCard struct { // The type of credit card. CardType string `json:"card_type"` // The expiration month and year of the credit card. Expiry string `json:"expiry"` // The last four digits of the credit card number. LastFour string `json:"last_four"` }
PaymentMethodDataCreditCard represents a PaymentMethodDataCreditCard object
type PaymentMethodDataGooglePay ¶ added in v1.43.0
type PaymentMethodDataGooglePay struct { // The type of credit card. CardType string `json:"card_type"` // The expiration month and year of the credit card. Expiry string `json:"expiry"` // The last four digits of the credit card number. LastFour string `json:"last_four"` }
PaymentMethodDataGooglePay represents a PaymentMethodDataGooglePay object
type PaymentMethodDataPaypal ¶ added in v1.43.0
type PaymentMethodDataPaypal struct { // The email address associated with your PayPal account. Email string `json:"email"` // PayPal Merchant ID associated with your PayPal account. PaypalID string `json:"paypal_id"` }
PaymentMethodDataPaypal represents a PaymentMethodDataPaypal object
type PaymentsPagedResponse
deprecated
added in
v0.8.0
type PaymentsPagedResponse legacyPagedResponse[Payment]
Deprecated: PaymentsPagedResponse exists for historical compatibility and should not be used.
type PlacementGroup ¶ added in v1.34.0
type PlacementGroup struct { ID int `json:"id"` Label string `json:"label"` Region string `json:"region"` PlacementGroupType PlacementGroupType `json:"placement_group_type"` PlacementGroupPolicy PlacementGroupPolicy `json:"placement_group_policy"` IsCompliant bool `json:"is_compliant"` Members []PlacementGroupMember `json:"members"` Migrations *PlacementGroupMigrations `json:"migrations"` }
PlacementGroup represents a Linode placement group.
type PlacementGroupAssignOptions ¶ added in v1.36.0
type PlacementGroupAssignOptions struct { Linodes []int `json:"linodes"` CompliantOnly *bool `json:"compliant_only,omitempty"` }
PlacementGroupAssignOptions represents options used when assigning Linodes to a placement group.
type PlacementGroupCreateOptions ¶ added in v1.36.0
type PlacementGroupCreateOptions struct { Label string `json:"label"` Region string `json:"region"` PlacementGroupType PlacementGroupType `json:"placement_group_type"` PlacementGroupPolicy PlacementGroupPolicy `json:"placement_group_policy"` }
PlacementGroupCreateOptions represents the options to use when creating a placement group.
type PlacementGroupMember ¶ added in v1.36.0
type PlacementGroupMember struct { LinodeID int `json:"linode_id"` IsCompliant bool `json:"is_compliant"` }
PlacementGroupMember represents a single Linode assigned to a placement group.
type PlacementGroupMigrationInstance ¶ added in v1.44.0
type PlacementGroupMigrationInstance struct {
LinodeID int `json:"linode_id"`
}
PlacementGroupMigrationInstance represents the unique identifier for a compute instance being migrated to/from the placement group.
type PlacementGroupMigrations ¶ added in v1.44.0
type PlacementGroupMigrations struct { Inbound []PlacementGroupMigrationInstance `json:"inbound"` Outbound []PlacementGroupMigrationInstance `json:"outbound"` }
PlacementGroupMigrations represent the instances that are being migrated to or from the placement group.
type PlacementGroupPolicy ¶ added in v1.38.0
type PlacementGroupPolicy string
PlacementGroupPolicy is an enum for the policy that determines whether a Linode can be assigned to a Placement Group.
const ( PlacementGroupPolicyStrict PlacementGroupPolicy = "strict" PlacementGroupPolicyFlexible PlacementGroupPolicy = "flexible" )
type PlacementGroupType ¶ added in v1.38.0
type PlacementGroupType string
PlacementGroupType is an enum that determines the affinity policy for Linodes in a placement group.
const (
PlacementGroupTypeAntiAffinityLocal PlacementGroupType = "anti_affinity:local"
)
type PlacementGroupUnAssignOptions ¶ added in v1.36.0
type PlacementGroupUnAssignOptions struct {
Linodes []int `json:"linodes"`
}
PlacementGroupUnAssignOptions represents options used when unassigning Linodes from a placement group.
type PlacementGroupUpdateOptions ¶ added in v1.36.0
type PlacementGroupUpdateOptions struct {
Label string `json:"label,omitempty"`
}
PlacementGroupUpdateOptions represents the options to use when updating a placement group.
type PostgresBackupCreateOptions ¶ added in v1.8.0
type PostgresBackupCreateOptions struct { Label string `json:"label"` Target PostgresDatabaseTarget `json:"target"` }
PostgresBackupCreateOptions are options used for CreatePostgresDatabaseBackup(...) Deprecated: PostgresBackupCreateOptions is a deprecated struct, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
type PostgresCommitType ¶ added in v1.8.0
type PostgresCommitType string
const ( PostgresCommitTrue PostgresCommitType = "true" PostgresCommitFalse PostgresCommitType = "false" PostgresCommitLocal PostgresCommitType = "local" PostgresCommitRemoteWrite PostgresCommitType = "remote_write" PostgresCommitRemoteApply PostgresCommitType = "remote_apply" )
type PostgresCreateOptions ¶ added in v1.8.0
type PostgresCreateOptions struct { Label string `json:"label"` Region string `json:"region"` Type string `json:"type"` Engine string `json:"engine"` AllowList []string `json:"allow_list,omitempty"` ClusterSize int `json:"cluster_size,omitempty"` // Deprecated: Encrypted is a deprecated property, as it is no longer supported in DBaaS V2. Encrypted bool `json:"encrypted,omitempty"` // Deprecated: SSLConnection is a deprecated property, as it is no longer supported in DBaaS V2. SSLConnection bool `json:"ssl_connection,omitempty"` // Deprecated: ReplicationType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationType PostgresReplicationType `json:"replication_type,omitempty"` // Deprecated: ReplicationCommitType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationCommitType PostgresCommitType `json:"replication_commit_type,omitempty"` Fork *DatabaseFork `json:"fork,omitempty"` }
PostgresCreateOptions fields are used when creating a new Postgres Database
type PostgresDatabase ¶ added in v1.8.0
type PostgresDatabase struct { ID int `json:"id"` Status DatabaseStatus `json:"status"` Label string `json:"label"` Region string `json:"region"` Type string `json:"type"` Engine string `json:"engine"` Version string `json:"version"` AllowList []string `json:"allow_list"` Port int `json:"port"` ClusterSize int `json:"cluster_size"` Platform DatabasePlatform `json:"platform"` // Members has dynamic keys so it is a map Members map[string]DatabaseMemberType `json:"members"` // Deprecated: ReplicationCommitType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationCommitType PostgresCommitType `json:"replication_commit_type"` // Deprecated: ReplicationType is a deprecated property, as it is no longer supported in DBaaS V2. ReplicationType PostgresReplicationType `json:"replication_type"` // Deprecated: SSLConnection is a deprecated property, as it is no longer supported in DBaaS V2. SSLConnection bool `json:"ssl_connection"` // Deprecated: Encrypted is a deprecated property, as it is no longer supported in DBaaS V2. Encrypted bool `json:"encrypted"` Hosts DatabaseHost `json:"hosts"` Updates DatabaseMaintenanceWindow `json:"updates"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` Fork *DatabaseFork `json:"fork"` OldestRestoreTime *time.Time `json:"-"` UsedDiskSizeGB int `json:"used_disk_size_gb"` TotalDiskSizeGB int `json:"total_disk_size_gb"` }
A PostgresDatabase is an instance of Linode Postgres Managed Databases
func (*PostgresDatabase) UnmarshalJSON ¶ added in v1.8.0
func (d *PostgresDatabase) UnmarshalJSON(b []byte) error
type PostgresDatabaseBackup ¶ added in v1.8.0
type PostgresDatabaseBackup struct { ID int `json:"id"` Label string `json:"label"` Type string `json:"type"` Created *time.Time `json:"-"` }
PostgresDatabaseBackup is information for interacting with a backup for the existing Postgres Database Deprecated: PostgresDatabaseBackup is a deprecated struct, as the backup endpoints are no longer supported in DBaaS V2. In DBaaS V2, databases can be backed up via database forking.
func (*PostgresDatabaseBackup) UnmarshalJSON ¶ added in v1.8.0
func (d *PostgresDatabaseBackup) UnmarshalJSON(b []byte) error
type PostgresDatabaseBackupsPagedResponse
deprecated
added in
v1.8.0
type PostgresDatabaseBackupsPagedResponse legacyPagedResponse[PostgresDatabaseBackup]
Deprecated: PostgresDatabaseBackupsPagedResponse exists for historical compatibility and should not be used.
type PostgresDatabaseCredential ¶ added in v1.8.0
type PostgresDatabaseCredential struct { Username string `json:"username"` Password string `json:"password"` }
PostgresDatabaseCredential is the Root Credentials to access the Linode Managed Database
type PostgresDatabaseSSL ¶ added in v1.8.0
type PostgresDatabaseSSL struct {
CACertificate []byte `json:"ca_certificate"`
}
PostgresDatabaseSSL is the SSL Certificate to access the Linode Managed Postgres Database
type PostgresDatabaseTarget ¶ added in v1.8.0
type PostgresDatabaseTarget string
const ( PostgresDatabaseTargetPrimary PostgresDatabaseTarget = "primary" PostgresDatabaseTargetSecondary PostgresDatabaseTarget = "secondary" )
type PostgresDatabasesPagedResponse
deprecated
added in
v1.8.0
type PostgresDatabasesPagedResponse legacyPagedResponse[PostgresDatabase]
Deprecated: PostgresDatabasesPagedResponse exists for historical compatibility and should not be used.
type PostgresReplicationType ¶ added in v1.8.0
type PostgresReplicationType string
const ( PostgresReplicationNone PostgresReplicationType = "none" PostgresReplicationAsynch PostgresReplicationType = "asynch" PostgresReplicationSemiSynch PostgresReplicationType = "semi_synch" )
type PostgresUpdateOptions ¶ added in v1.8.0
type PostgresUpdateOptions struct { Label string `json:"label,omitempty"` AllowList *[]string `json:"allow_list,omitempty"` Updates *DatabaseMaintenanceWindow `json:"updates,omitempty"` Type string `json:"type,omitempty"` ClusterSize int `json:"cluster_size,omitempty"` Version string `json:"version,omitempty"` }
PostgresUpdateOptions fields are used when altering the existing Postgres Database
type Profile ¶ added in v0.6.1
type Profile struct { UID int `json:"uid"` Username string `json:"username"` Email string `json:"email"` Timezone string `json:"timezone"` EmailNotifications bool `json:"email_notifications"` IPWhitelistEnabled bool `json:"ip_whitelist_enabled"` TwoFactorAuth bool `json:"two_factor_auth"` Restricted bool `json:"restricted"` LishAuthMethod LishAuthMethod `json:"lish_auth_method"` Referrals ProfileReferrals `json:"referrals"` AuthorizedKeys []string `json:"authorized_keys"` AuthenticationType string `json:"authentication_type"` VerifiedPhoneNumber string `json:"verified_phone_number,omitempty"` }
Profile represents a Profile object
func (Profile) GetUpdateOptions ¶ added in v0.6.1
func (i Profile) GetUpdateOptions() (o ProfileUpdateOptions)
GetUpdateOptions converts a Profile to ProfileUpdateOptions for use in UpdateProfile
type ProfileApp ¶ added in v1.44.0
type ProfileApp struct { // When this app was authorized. Created *time.Time `json:"-"` // When the app's access to your account expires. Expiry *time.Time `json:"-"` // This authorization's ID, used for revoking access. ID int `json:"id"` // The name of the application you've authorized. Label string `json:"label"` // The OAuth scopes this app was authorized with. Scopes string `json:"scopes"` // The URL at which this app's thumbnail may be accessed. ThumbnailURL string `json:"thumbnail_url"` // The website where you can get more information about this app. Website string `json:"website"` }
ProfileApp represents a ProfileApp object
func (*ProfileApp) UnmarshalJSON ¶ added in v1.44.0
func (pa *ProfileApp) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type ProfileDevice ¶ added in v1.44.0
type ProfileDevice struct { // When this Remember Me session was started. Created *time.Time `json:"-"` // When this TrustedDevice session expires. Sessions typically last 30 days. Expiry *time.Time `json:"-"` // The unique ID for this TrustedDevice. ID int `json:"id"` // he last time this TrustedDevice was successfully used to authenticate to login.linode.com LastAuthenticated *time.Time `json:"-"` // The last IP Address to successfully authenticate with this TrustedDevice. LastRemoteAddr string `json:"last_remote_addr"` // The User Agent of the browser that created this TrustedDevice session. UserAgent string `json:"user_agent"` }
ProfileDevice represents a ProfileDevice object
func (*ProfileDevice) UnmarshalJSON ¶ added in v1.44.0
func (pd *ProfileDevice) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type ProfileLogin ¶ added in v1.15.0
type ProfileLogin struct { Datetime *time.Time `json:"datetime"` ID int `json:"id"` IP string `json:"ip"` Restricted bool `json:"restricted"` Status string `json:"status"` Username string `json:"username"` }
Profile represents a Profile object
func (*ProfileLogin) UnmarshalJSON ¶ added in v1.15.0
func (i *ProfileLogin) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type ProfileLoginsPagedResponse
deprecated
added in
v1.15.0
type ProfileLoginsPagedResponse legacyPagedResponse[ProfileLogin]
Deprecated: ProfileLoginsPagedResponse exists for historical compatibility and should not be used.
type ProfilePreferences ¶ added in v1.44.0
type ProfilePreferences map[string]interface{}
ProfilePreferences represents the user's preferences. The user preferences endpoints allow consumers of the API to store arbitrary JSON data, such as a user's font size preference or preferred display name.
func (*ProfilePreferences) UnmarshalJSON ¶ added in v1.44.0
func (p *ProfilePreferences) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type ProfileReferrals ¶ added in v0.6.1
type ProfileReferrals struct { Total int `json:"total"` Completed int `json:"completed"` Pending int `json:"pending"` Credit float64 `json:"credit"` Code string `json:"code"` URL string `json:"url"` }
ProfileReferrals represent a User's status in the Referral Program
type ProfileUpdateOptions ¶ added in v0.6.1
type ProfileUpdateOptions struct { Email string `json:"email,omitempty"` Timezone string `json:"timezone,omitempty"` EmailNotifications *bool `json:"email_notifications,omitempty"` IPWhitelistEnabled *bool `json:"ip_whitelist_enabled,omitempty"` LishAuthMethod LishAuthMethod `json:"lish_auth_method,omitempty"` AuthorizedKeys *[]string `json:"authorized_keys,omitempty"` TwoFactorAuth *bool `json:"two_factor_auth,omitempty"` Restricted *bool `json:"restricted,omitempty"` }
ProfileUpdateOptions fields are those accepted by UpdateProfile
type PromoCodeCreateOptions ¶ added in v1.43.0
type PromoCodeCreateOptions struct { // The Promo Code. PromoCode string `json:"promo_code"` }
PromoCodeCreateOptions fields are those accepted by AddPromoCode
type Promotion ¶ added in v1.43.0
type Promotion struct { // The amount available to spend per month. CreditMonthlyCap string `json:"credit_monthly_cap"` // The total amount of credit left for this promotion. CreditRemaining string `json:"credit_remaining"` // A detailed description of this promotion. Description string `json:"description"` // When this promotion's credits expire. ExpirationDate *time.Time `json:"-"` // The location of an image for this promotion. ImageURL string `json:"image_url"` // The service to which this promotion applies. ServiceType string `json:"service_type"` // Short details of this promotion. Summary string `json:"summary"` // The amount of credit left for this month for this promotion. ThisMonthCreditRemaining string `json:"this_month_credit_remaining"` }
Promotion represents a Promotion object
func (*Promotion) UnmarshalJSON ¶ added in v1.43.0
UnmarshalJSON implements the json.Unmarshaler interface
type Region ¶
type Region struct { ID string `json:"id"` Country string `json:"country"` // A List of enums from the above constants Capabilities []string `json:"capabilities"` Status string `json:"status"` Label string `json:"label"` SiteType string `json:"site_type"` Resolvers RegionResolvers `json:"resolvers"` PlacementGroupLimits *RegionPlacementGroupLimits `json:"placement_group_limits"` }
Region represents a linode region object
type RegionAvailability ¶ added in v1.24.0
type RegionAvailability struct { Region string `json:"region"` Plan string `json:"plan"` Available bool `json:"available"` }
Region represents a linode region object
type RegionPlacementGroupLimits ¶ added in v1.36.0
type RegionPlacementGroupLimits struct { MaximumPGsPerCustomer int `json:"maximum_pgs_per_customer"` MaximumLinodesPerPG int `json:"maximum_linodes_per_pg"` }
RegionPlacementGroupLimits contains information about the placement group limits for the current user in the current region.
type RegionResolvers ¶ added in v1.3.0
RegionResolvers contains the DNS resolvers of a region
type RegionsAvailabilityPagedResponse
deprecated
added in
v1.24.0
type RegionsAvailabilityPagedResponse legacyPagedResponse[RegionAvailability]
Deprecated: RegionsAvailabilityPagedResponse exists for historical compatibility and should not be used.
type RegionsPagedResponse
deprecated
type RegionsPagedResponse legacyPagedResponse[Region]
Deprecated: RegionsPagedResponse exists for historical compatibility and should not be used.
type RequestParams ¶ added in v1.39.0
type ReserveIPOptions ¶ added in v1.41.0
type ReserveIPOptions struct {
Region string `json:"region"`
}
ReserveIPOptions represents the options for reserving an IP address NOTE: Reserved IP feature may not currently be available to all users.
type RestoreInstanceOptions ¶ added in v0.2.0
type RestoreInstanceOptions struct { LinodeID int `json:"linode_id"` Overwrite bool `json:"overwrite"` }
RestoreInstanceOptions fields are those accepted by InstanceRestore
type RetryAfter ¶ added in v0.24.3
type RetryAfter resty.RetryAfterFunc
type RetryAfter func(c *resty.Client, r *resty.Response) (time.Duration, error)
type RetryConditional ¶ added in v0.13.0
type RetryConditional resty.RetryConditionFunc
type RetryConditional func(r *resty.Response) (shouldRetry bool)
type SSHKey ¶ added in v0.5.0
type SSHKey struct { ID int `json:"id"` Label string `json:"label"` SSHKey string `json:"ssh_key"` Created *time.Time `json:"-"` }
SSHKey represents a SSHKey object
func (SSHKey) GetCreateOptions ¶ added in v0.5.0
func (i SSHKey) GetCreateOptions() (o SSHKeyCreateOptions)
GetCreateOptions converts a SSHKey to SSHKeyCreateOptions for use in CreateSSHKey
func (SSHKey) GetUpdateOptions ¶ added in v0.5.0
func (i SSHKey) GetUpdateOptions() (o SSHKeyUpdateOptions)
GetUpdateOptions converts a SSHKey to SSHKeyCreateOptions for use in UpdateSSHKey
func (*SSHKey) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type SSHKeyCreateOptions ¶ added in v0.5.0
SSHKeyCreateOptions fields are those accepted by CreateSSHKey
type SSHKeyUpdateOptions ¶ added in v0.5.0
type SSHKeyUpdateOptions struct {
Label string `json:"label"`
}
SSHKeyUpdateOptions fields are those accepted by UpdateSSHKey
type SSHKeysPagedResponse
deprecated
added in
v0.5.0
type SSHKeysPagedResponse legacyPagedResponse[SSHKey]
Deprecated: SSHKeysPagedResponse exists for historical compatibility and should not be used.
type SecurityQuestion ¶ added in v1.9.0
type SecurityQuestionsAnswerOptions ¶ added in v1.9.0
type SecurityQuestionsAnswerOptions struct {
SecurityQuestions []SecurityQuestionsAnswerQuestion `json:"security_questions"`
}
type SecurityQuestionsAnswerQuestion ¶ added in v1.9.0
type SecurityQuestionsListResponse ¶ added in v1.9.0
type SecurityQuestionsListResponse struct {
SecurityQuestions []SecurityQuestion `json:"security_questions"`
}
type SendPhoneNumberVerificationCodeOptions ¶ added in v1.9.0
type SendPhoneNumberVerificationCodeOptions struct { ISOCode string `json:"iso_code"` PhoneNumber string `json:"phone_number"` }
SendPhoneNumberVerificationCodeOptions fields are those accepted by SendPhoneNumberVerificationCode
type SortedObjects ¶ added in v0.6.0
type SortedObjects struct { Instances []Instance LKEClusters []LKECluster Domains []Domain Volumes []Volume NodeBalancers []NodeBalancer }
SortedObjects currently only includes Instances
type Stackscript ¶
type Stackscript struct { ID int `json:"id"` Username string `json:"username"` Label string `json:"label"` Description string `json:"description"` Ordinal int `json:"ordinal"` LogoURL string `json:"logo_url"` Images []string `json:"images"` DeploymentsTotal int `json:"deployments_total"` DeploymentsActive int `json:"deployments_active"` IsPublic bool `json:"is_public"` Mine bool `json:"mine"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` RevNote string `json:"rev_note"` Script string `json:"script"` UserDefinedFields *[]StackscriptUDF `json:"user_defined_fields"` UserGravatarID string `json:"user_gravatar_id"` }
Stackscript represents a Linode StackScript
func (Stackscript) GetCreateOptions ¶
func (i Stackscript) GetCreateOptions() StackscriptCreateOptions
GetCreateOptions converts a Stackscript to StackscriptCreateOptions for use in CreateStackscript
func (Stackscript) GetUpdateOptions ¶
func (i Stackscript) GetUpdateOptions() StackscriptUpdateOptions
GetUpdateOptions converts a Stackscript to StackscriptUpdateOptions for use in UpdateStackscript
func (*Stackscript) UnmarshalJSON ¶ added in v0.13.0
func (i *Stackscript) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaler interface
type StackscriptCreateOptions ¶
type StackscriptCreateOptions struct { Label string `json:"label"` Description string `json:"description"` Images []string `json:"images"` IsPublic bool `json:"is_public"` RevNote string `json:"rev_note"` Script string `json:"script"` }
StackscriptCreateOptions fields are those accepted by CreateStackscript
type StackscriptUDF ¶ added in v0.4.0
type StackscriptUDF struct { // A human-readable label for the field that will serve as the input prompt for entering the value during deployment. Label string `json:"label"` // The name of the field. Name string `json:"name"` // An example value for the field. Example string `json:"example"` // A list of acceptable single values for the field. OneOf string `json:"oneOf,omitempty"` // A list of acceptable values for the field in any quantity, combination or order. ManyOf string `json:"manyOf,omitempty"` // The default value. If not specified, this value will be used. Default string `json:"default,omitempty"` }
StackscriptUDF define a single variable that is accepted by a Stackscript
type StackscriptUpdateOptions ¶
type StackscriptUpdateOptions StackscriptCreateOptions
StackscriptUpdateOptions fields are those accepted by UpdateStackscript
type StackscriptsPagedResponse
deprecated
type StackscriptsPagedResponse legacyPagedResponse[Stackscript]
Deprecated: StackscriptsPagedResponse exists for historical compatibility and should not be used.
type StatsNet ¶ added in v0.8.0
type StatsNet struct { In [][]float64 `json:"in"` Out [][]float64 `json:"out"` PrivateIn [][]float64 `json:"private_in"` PrivateOut [][]float64 `json:"private_out"` }
StatsNet represents a network stats object
type StatsTraffic ¶ added in v0.13.0
StatsTraffic represents a Traffic stats object
type Tag ¶ added in v0.6.0
type Tag struct {
Label string `json:"label"`
}
Tag represents a Tag object
func (Tag) GetCreateOptions ¶ added in v0.6.0
func (i Tag) GetCreateOptions() (o TagCreateOptions)
GetCreateOptions converts a Tag to TagCreateOptions for use in CreateTag
type TagCreateOptions ¶ added in v0.6.0
type TagCreateOptions struct { Label string `json:"label"` Linodes []int `json:"linodes,omitempty"` // @TODO is this implemented? LKEClusters []int `json:"lke_clusters,omitempty"` Domains []int `json:"domains,omitempty"` Volumes []int `json:"volumes,omitempty"` NodeBalancers []int `json:"nodebalancers,omitempty"` }
TagCreateOptions fields are those accepted by CreateTag
type TaggedObject ¶ added in v0.6.0
type TaggedObject struct { Type string `json:"type"` RawData json.RawMessage `json:"data"` Data any `json:"-"` }
TaggedObject represents a Tagged Object object
type TaggedObjectList ¶ added in v0.6.0
type TaggedObjectList []TaggedObject
TaggedObjectList are a list of TaggedObjects, as returning by ListTaggedObjects
func (TaggedObjectList) SortedObjects ¶ added in v0.6.0
func (t TaggedObjectList) SortedObjects() (SortedObjects, error)
SortedObjects converts a list of TaggedObjects into a Sorted Objects struct, for easier access
type TaggedObjectsPagedResponse
deprecated
added in
v0.6.0
type TaggedObjectsPagedResponse legacyPagedResponse[TaggedObject]
Deprecated: TaggedObjectsPagedResponse exists for historical compatibility and should not be used.
type TagsPagedResponse
deprecated
added in
v0.6.0
type TagsPagedResponse legacyPagedResponse[Tag]
Deprecated: TagsPagedResponse exists for historical compatibility and should not be used.
type Ticket ¶
type Ticket struct { ID int `json:"id"` Attachments []string `json:"attachments"` Closed *time.Time `json:"-"` Description string `json:"description"` Entity *TicketEntity `json:"entity"` GravatarID string `json:"gravatar_id"` Opened *time.Time `json:"-"` OpenedBy string `json:"opened_by"` Status TicketStatus `json:"status"` Summary string `json:"summary"` Updated *time.Time `json:"-"` UpdatedBy string `json:"updated_by"` Closeable bool `json:"closeable"` }
Ticket represents a support ticket object
type TicketEntity ¶
type TicketEntity struct { ID int `json:"id"` Label string `json:"label"` Type string `json:"type"` URL string `json:"url"` }
TicketEntity refers a ticket to a specific entity
type TicketStatus ¶ added in v0.4.0
type TicketStatus string
TicketStatus constants start with Ticket and include Linode API Ticket Status values
const ( TicketNew TicketStatus = "new" TicketClosed TicketStatus = "closed" TicketOpen TicketStatus = "open" )
TicketStatus constants reflect the current status of a Ticket
type TicketsPagedResponse
deprecated
type TicketsPagedResponse legacyPagedResponse[Ticket]
Deprecated: TicketsPagedResponse exists for historical compatibility and should not be used.
type Token ¶ added in v0.6.0
type Token struct { // This token's unique ID, which can be used to revoke it. ID int `json:"id"` // The scopes this token was created with. These define what parts of the Account the token can be used to access. Many command-line tools, such as the Linode CLI, require tokens with access to *. Tokens with more restrictive scopes are generally more secure. // Valid values are "*" or a comma separated list of scopes https://techdocs.akamai.com/linode-api/reference/get-started#oauth-reference Scopes string `json:"scopes"` // This token's label. This is for display purposes only, but can be used to more easily track what you're using each token for. (1-100 Characters) Label string `json:"label"` // The token used to access the API. When the token is created, the full token is returned here. Otherwise, only the first 16 characters are returned. Token string `json:"token"` // The date and time this token was created. Created *time.Time `json:"-"` // When this token will expire. Personal Access Tokens cannot be renewed, so after this time the token will be completely unusable and a new token will need to be generated. Tokens may be created with "null" as their expiry and will never expire unless revoked. Expiry *time.Time `json:"-"` }
Token represents a Token object
func (Token) GetCreateOptions ¶ added in v0.6.0
func (i Token) GetCreateOptions() (o TokenCreateOptions)
GetCreateOptions converts a Token to TokenCreateOptions for use in CreateToken
func (Token) GetUpdateOptions ¶ added in v0.6.0
func (i Token) GetUpdateOptions() (o TokenUpdateOptions)
GetUpdateOptions converts a Token to TokenUpdateOptions for use in UpdateToken
func (*Token) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type TokenCreateOptions ¶ added in v0.6.0
type TokenCreateOptions struct { // The scopes this token was created with. These define what parts of the Account the token can be used to access. Many command-line tools, such as the Linode CLI, require tokens with access to *. Tokens with more restrictive scopes are generally more secure. Scopes string `json:"scopes"` // This token's label. This is for display purposes only, but can be used to more easily track what you're using each token for. (1-100 Characters) Label string `json:"label"` // When this token will expire. Personal Access Tokens cannot be renewed, so after this time the token will be completely unusable and a new token will need to be generated. Tokens may be created with "null" as their expiry and will never expire unless revoked. Expiry *time.Time `json:"expiry"` }
TokenCreateOptions fields are those accepted by CreateToken
type TokenUpdateOptions ¶ added in v0.6.0
type TokenUpdateOptions struct { // This token's label. This is for display purposes only, but can be used to more easily track what you're using each token for. (1-100 Characters) Label string `json:"label"` }
TokenUpdateOptions fields are those accepted by UpdateToken
type TokensPagedResponse
deprecated
added in
v0.6.0
type TokensPagedResponse legacyPagedResponse[Token]
Deprecated: TokensPagedResponse exists for historical compatibility and should not be used.
type TwoFactorSecret ¶ added in v1.9.0
TwoFactorSecret contains fields returned by CreateTwoFactorSecret
func (*TwoFactorSecret) UnmarshalJSON ¶ added in v1.9.0
func (s *TwoFactorSecret) UnmarshalJSON(b []byte) error
type User ¶ added in v0.6.0
type User struct { Username string `json:"username"` Email string `json:"email"` LastLogin *LastLogin `json:"last_login"` UserType UserType `json:"user_type"` Restricted bool `json:"restricted"` TFAEnabled bool `json:"tfa_enabled"` SSHKeys []string `json:"ssh_keys"` PasswordCreated *time.Time `json:"-"` VerifiedPhoneNumber *string `json:"verified_phone_number"` }
User represents a User object
func (User) GetCreateOptions ¶ added in v0.6.0
func (i User) GetCreateOptions() (o UserCreateOptions)
GetCreateOptions converts a User to UserCreateOptions for use in CreateUser
func (User) GetUpdateOptions ¶ added in v0.6.0
func (i User) GetUpdateOptions() (o UserUpdateOptions)
GetUpdateOptions converts a User to UserUpdateOptions for use in UpdateUser
func (*User) UnmarshalJSON ¶ added in v1.17.1
UnmarshalJSON implements the json.Unmarshaler interface
type UserCreateOptions ¶ added in v0.6.0
type UserCreateOptions struct { Username string `json:"username"` Email string `json:"email"` Restricted bool `json:"restricted"` }
UserCreateOptions fields are those accepted by CreateUser
type UserGrants ¶ added in v0.25.0
type UserGrants struct { Database []GrantedEntity `json:"database"` Domain []GrantedEntity `json:"domain"` Firewall []GrantedEntity `json:"firewall"` Image []GrantedEntity `json:"image"` Linode []GrantedEntity `json:"linode"` Longview []GrantedEntity `json:"longview"` NodeBalancer []GrantedEntity `json:"nodebalancer"` PlacementGroup []GrantedEntity `json:"placement_group"` StackScript []GrantedEntity `json:"stackscript"` Volume []GrantedEntity `json:"volume"` VPC []GrantedEntity `json:"vpc"` Global GlobalUserGrants `json:"global"` }
type UserGrantsUpdateOptions ¶ added in v0.25.0
type UserGrantsUpdateOptions struct { Database []GrantedEntity `json:"database,omitempty"` Domain []EntityUserGrant `json:"domain,omitempty"` Firewall []EntityUserGrant `json:"firewall,omitempty"` Image []EntityUserGrant `json:"image,omitempty"` Linode []EntityUserGrant `json:"linode,omitempty"` Longview []EntityUserGrant `json:"longview,omitempty"` NodeBalancer []EntityUserGrant `json:"nodebalancer,omitempty"` PlacementGroup []EntityUserGrant `json:"placement_group,omitempty"` StackScript []EntityUserGrant `json:"stackscript,omitempty"` Volume []EntityUserGrant `json:"volume,omitempty"` VPC []EntityUserGrant `json:"vpc,omitempty"` Global GlobalUserGrants `json:"global"` }
type UserUpdateOptions ¶ added in v0.6.0
type UserUpdateOptions struct { Username string `json:"username,omitempty"` Restricted *bool `json:"restricted,omitempty"` Email string `json:"email,omitempty"` }
UserUpdateOptions fields are those accepted by UpdateUser
type UsersPagedResponse
deprecated
added in
v0.6.0
type UsersPagedResponse legacyPagedResponse[User]
Deprecated: UsersPagedResponse exists for historical compatibility and should not be used.
type VLAN ¶ added in v0.23.1
type VLAN struct { Label string `json:"label"` Linodes []int `json:"linodes"` Region string `json:"region"` Created *time.Time `json:"-"` }
func (*VLAN) UnmarshalJSON ¶ added in v0.23.1
UnmarshalJSON for VLAN responses
type VPC ¶ added in v1.25.0
type VPC struct { ID int `json:"id"` Label string `json:"label"` Description string `json:"description"` Region string `json:"region"` Subnets []VPCSubnet `json:"subnets"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
func (VPC) GetCreateOptions ¶ added in v1.25.0
func (v VPC) GetCreateOptions() VPCCreateOptions
func (VPC) GetUpdateOptions ¶ added in v1.25.0
func (v VPC) GetUpdateOptions() VPCUpdateOptions
func (*VPC) UnmarshalJSON ¶ added in v1.25.0
type VPCCreateOptions ¶ added in v1.25.0
type VPCCreateOptions struct { Label string `json:"label"` Description string `json:"description,omitempty"` Region string `json:"region"` Subnets []VPCSubnetCreateOptions `json:"subnets,omitempty"` }
type VPCIP ¶ added in v1.31.0
type VPCIP struct { Address *string `json:"address"` AddressRange *string `json:"address_range"` Gateway string `json:"gateway"` SubnetMask string `json:"subnet_mask"` Prefix int `json:"prefix"` LinodeID int `json:"linode_id"` Region string `json:"region"` Active bool `json:"active"` NAT1To1 *string `json:"nat_1_1"` VPCID int `json:"vpc_id"` SubnetID int `json:"subnet_id"` ConfigID int `json:"config_id"` InterfaceID int `json:"interface_id"` }
VPCIP represents a private IP address in a VPC subnet with additional networking details
type VPCSubnet ¶ added in v1.25.0
type VPCSubnet struct { ID int `json:"id"` Label string `json:"label"` IPv4 string `json:"ipv4"` Linodes []VPCSubnetLinode `json:"linodes"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` }
func (VPCSubnet) GetCreateOptions ¶ added in v1.25.0
func (v VPCSubnet) GetCreateOptions() VPCSubnetCreateOptions
func (VPCSubnet) GetUpdateOptions ¶ added in v1.25.0
func (v VPCSubnet) GetUpdateOptions() VPCSubnetUpdateOptions
func (*VPCSubnet) UnmarshalJSON ¶ added in v1.25.0
type VPCSubnetCreateOptions ¶ added in v1.25.0
type VPCSubnetLinode ¶ added in v1.25.0
type VPCSubnetLinode struct { ID int `json:"id"` Interfaces []VPCSubnetLinodeInterface `json:"interfaces"` }
VPCSubnetLinode represents a Linode currently assigned to a VPC subnet.
type VPCSubnetLinodeInterface ¶ added in v1.25.0
VPCSubnetLinodeInterface represents an interface on a Linode that is currently assigned to this VPC subnet.
type VPCSubnetUpdateOptions ¶ added in v1.25.0
type VPCSubnetUpdateOptions struct {
Label string `json:"label"`
}
type VPCSubnetsPagedResponse
deprecated
added in
v1.25.0
type VPCSubnetsPagedResponse legacyPagedResponse[VPCSubnet]
Deprecated: VPCSubnetsPagedResponse exists for historical compatibility and should not be used.
type VPCUpdateOptions ¶ added in v1.25.0
type VPCsPagedResponse
deprecated
added in
v1.25.0
type VPCsPagedResponse legacyPagedResponse[VPC]
Deprecated: VPCsPagedResponse exists for historical compatibility and should not be used.
type VerifyPhoneNumberOptions ¶ added in v1.9.0
type VerifyPhoneNumberOptions struct {
OTPCode string `json:"otp_code"`
}
VerifyPhoneNumberOptions fields are those accepted by VerifyPhoneNumber
type Volume ¶
type Volume struct { ID int `json:"id"` Label string `json:"label"` Status VolumeStatus `json:"status"` Region string `json:"region"` Size int `json:"size"` LinodeID *int `json:"linode_id"` FilesystemPath string `json:"filesystem_path"` Tags []string `json:"tags"` HardwareType string `json:"hardware_type"` LinodeLabel string `json:"linode_label"` Created *time.Time `json:"-"` Updated *time.Time `json:"-"` // Note: Block Storage Disk Encryption is not currently available to all users. Encryption string `json:"encryption"` }
Volume represents a linode volume object
func (Volume) GetCreateOptions ¶ added in v0.7.0
func (v Volume) GetCreateOptions() (createOpts VolumeCreateOptions)
GetCreateOptions converts a Volume to VolumeCreateOptions for use in CreateVolume
func (Volume) GetUpdateOptions ¶ added in v0.7.0
func (v Volume) GetUpdateOptions() (updateOpts VolumeUpdateOptions)
GetUpdateOptions converts a Volume to VolumeUpdateOptions for use in UpdateVolume
func (*Volume) UnmarshalJSON ¶ added in v0.13.0
UnmarshalJSON implements the json.Unmarshaler interface
type VolumeAttachOptions ¶
type VolumeAttachOptions struct { LinodeID int `json:"linode_id"` ConfigID int `json:"config_id,omitempty"` PersistAcrossBoots *bool `json:"persist_across_boots,omitempty"` }
VolumeAttachOptions fields are those accepted by AttachVolume
type VolumeCreateOptions ¶
type VolumeCreateOptions struct { Label string `json:"label,omitempty"` Region string `json:"region,omitempty"` LinodeID int `json:"linode_id,omitempty"` ConfigID int `json:"config_id,omitempty"` // The Volume's size, in GiB. Minimum size is 10GiB, maximum size is 10240GiB. A "0" value will result in the default size. Size int `json:"size,omitempty"` // An array of tags applied to this object. Tags are for organizational purposes only. Tags []string `json:"tags"` PersistAcrossBoots *bool `json:"persist_across_boots,omitempty"` Encryption string `json:"encryption,omitempty"` }
VolumeCreateOptions fields are those accepted by CreateVolume
type VolumeStatus ¶
type VolumeStatus string
VolumeStatus indicates the status of the Volume
const ( // VolumeCreating indicates the Volume is being created and is not yet available for use VolumeCreating VolumeStatus = "creating" // VolumeActive indicates the Volume is online and available for use VolumeActive VolumeStatus = "active" // VolumeResizing indicates the Volume is in the process of upgrading its current capacity VolumeResizing VolumeStatus = "resizing" // VolumeContactSupport indicates there is a problem with the Volume. A support ticket must be opened to resolve the issue VolumeContactSupport VolumeStatus = "contact_support" )
type VolumeType ¶ added in v1.41.0
type VolumeType struct {
// contains filtered or unexported fields
}
VolumeType represents a single valid Volume type.
type VolumeTypePrice ¶ added in v1.41.0
type VolumeTypePrice struct {
// contains filtered or unexported fields
}
VolumeTypePrice represents the base hourly and monthly prices for a volume type entry.
type VolumeTypeRegionPrice ¶ added in v1.41.0
type VolumeTypeRegionPrice struct {
// contains filtered or unexported fields
}
VolumeTypeRegionPrice represents the regional hourly and monthly prices for a volume type entry.
type VolumeUpdateOptions ¶ added in v0.7.0
type VolumeUpdateOptions struct { Label string `json:"label,omitempty"` Tags *[]string `json:"tags,omitempty"` }
VolumeUpdateOptions fields are those accepted by UpdateVolume
type VolumesPagedResponse
deprecated
type VolumesPagedResponse legacyPagedResponse[Volume]
Deprecated: VolumesPagedResponse exists for historical compatibility and should not be used.
Source Files
¶
- account.go
- account_agreements.go
- account_availability.go
- account_betas.go
- account_child.go
- account_events.go
- account_invoices.go
- account_logins.go
- account_maintenance.go
- account_notifications.go
- account_oauth_client.go
- account_payment_methods.go
- account_payments.go
- account_promo_credits.go
- account_service_transfer.go
- account_settings.go
- account_transfer.go
- account_user_grants.go
- account_users.go
- base_types.go
- betas.go
- client.go
- client_http.go
- config.go
- databases.go
- domain_records.go
- domains.go
- errors.go
- filter.go
- firewall_devices.go
- firewall_rules.go
- firewalls.go
- images.go
- instance_config_interfaces.go
- instance_configs.go
- instance_disks.go
- instance_firewalls.go
- instance_ips.go
- instance_nodebalancers.go
- instance_snapshots.go
- instance_stats.go
- instance_volumes.go
- instances.go
- kernels.go
- lke_cluster_pools.go
- lke_clusters.go
- lke_clusters_control_plane.go
- lke_node_pools.go
- lke_types.go
- logger.go
- longview.go
- longview_subscriptions.go
- mysql.go
- network_ips.go
- network_pools.go
- network_ranges.go
- network_reserved_ips.go
- network_transfer_prices.go
- nodebalancer.go
- nodebalancer_config_nodes.go
- nodebalancer_configs.go
- nodebalancer_firewalls.go
- nodebalancer_stats.go
- nodebalancer_types.go
- object_storage.go
- object_storage_bucket_certs.go
- object_storage_buckets.go
- object_storage_clusters.go
- object_storage_endpoints.go
- object_storage_keys.go
- object_storage_object.go
- paged_response_structs.go
- pagination.go
- placement_groups.go
- pointer_helpers.go
- postgres.go
- profile.go
- profile_apps.go
- profile_devices.go
- profile_grants_list.go
- profile_logins.go
- profile_phone_number.go
- profile_preferences.go
- profile_security_questions.go
- profile_sshkeys.go
- profile_tfa.go
- profile_tokens.go
- regions.go
- regions_availability.go
- request_helpers.go
- retries.go
- retries_http.go
- stackscripts.go
- support.go
- tags.go
- types.go
- version.go
- vlans.go
- volumes.go
- volumes_types.go
- vpc.go
- vpc_ips.go
- vpc_subnet.go
- waitfor.go