dedibox

package
v1.0.0-beta.26 Latest Latest
Warning

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

Go to latest
Published: Apr 12, 2024 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package dedibox provides methods and message types of the dedibox v1 API.

Index

Constants

View Source
const (
	AttachFailoverIPToMacAddressRequestMacTypeMacTypeUnknown = AttachFailoverIPToMacAddressRequestMacType("mac_type_unknown")
	AttachFailoverIPToMacAddressRequestMacTypeVmware         = AttachFailoverIPToMacAddressRequestMacType("vmware")
	AttachFailoverIPToMacAddressRequestMacTypeKvm            = AttachFailoverIPToMacAddressRequestMacType("kvm")
	AttachFailoverIPToMacAddressRequestMacTypeXen            = AttachFailoverIPToMacAddressRequestMacType("xen")
)
View Source
const (
	BMCAccessStatusUnknown  = BMCAccessStatus("unknown")
	BMCAccessStatusCreating = BMCAccessStatus("creating")
	BMCAccessStatusCreated  = BMCAccessStatus("created")
	BMCAccessStatusDeleting = BMCAccessStatus("deleting")
)
View Source
const (
	BackupStatusUnknownBackupStatus = BackupStatus("unknown_backup_status")
	BackupStatusUninitialized       = BackupStatus("uninitialized")
	BackupStatusInactive            = BackupStatus("inactive")
	BackupStatusReady               = BackupStatus("ready")
)
View Source
const (
	FailoverBlockVersionUnknownVersion = FailoverBlockVersion("unknown_version")
	FailoverBlockVersionIPv4           = FailoverBlockVersion("ipv4")
	FailoverBlockVersionIPv6           = FailoverBlockVersion("ipv6")
)
View Source
const (
	FailoverIPInterfaceTypeUnknown = FailoverIPInterfaceType("unknown")
	FailoverIPInterfaceTypeNormal  = FailoverIPInterfaceType("normal")
	FailoverIPInterfaceTypeIpmi    = FailoverIPInterfaceType("ipmi")
	FailoverIPInterfaceTypeVirtual = FailoverIPInterfaceType("virtual")
)
View Source
const (
	FailoverIPStatusUnknownStatus = FailoverIPStatus("unknown_status")
	FailoverIPStatusReady         = FailoverIPStatus("ready")
	FailoverIPStatusBusy          = FailoverIPStatus("busy")
	FailoverIPStatusLocked        = FailoverIPStatus("locked")
)
View Source
const (
	FailoverIPVersionUnknownVersion = FailoverIPVersion("unknown_version")
	FailoverIPVersionIPv4           = FailoverIPVersion("ipv4")
	FailoverIPVersionIPv6           = FailoverIPVersion("ipv6")
)
View Source
const (
	GetRpnStatusResponseStatusUnknownStatus = GetRpnStatusResponseStatus("unknown_status")
	GetRpnStatusResponseStatusBusy          = GetRpnStatusResponseStatus("busy")
	GetRpnStatusResponseStatusOperational   = GetRpnStatusResponseStatus("operational")
)
View Source
const (
	IPSemanticUnknown   = IPSemantic("unknown")
	IPSemanticProxad    = IPSemantic("proxad")
	IPSemanticExt       = IPSemantic("ext")
	IPSemanticPublic    = IPSemantic("public")
	IPSemanticPrivate   = IPSemantic("private")
	IPSemanticIpmi      = IPSemantic("ipmi")
	IPSemanticAdm       = IPSemantic("adm")
	IPSemanticRedirect  = IPSemantic("redirect")
	IPSemanticMigration = IPSemantic("migration")
)
View Source
const (
	IPStatusUnknownStatus = IPStatus("unknown_status")
	IPStatusReady         = IPStatus("ready")
	IPStatusBusy          = IPStatus("busy")
	IPStatusLocked        = IPStatus("locked")
)
View Source
const (
	IPVersionIPv4 = IPVersion("ipv4")
	IPVersionIPv6 = IPVersion("ipv6")
)
View Source
const (
	IPv6BlockDelegationStatusUnknownStatus = IPv6BlockDelegationStatus("unknown_status")
	IPv6BlockDelegationStatusUpdating      = IPv6BlockDelegationStatus("updating")
	IPv6BlockDelegationStatusDone          = IPv6BlockDelegationStatus("done")
)
View Source
const (
	InvoicePaymentMethodUnknownPaymentMethod = InvoicePaymentMethod("unknown_payment_method")
	InvoicePaymentMethodCreditCard           = InvoicePaymentMethod("credit_card")
	InvoicePaymentMethodAmex                 = InvoicePaymentMethod("amex")
	InvoicePaymentMethodPaypal               = InvoicePaymentMethod("paypal")
	InvoicePaymentMethodTransfer             = InvoicePaymentMethod("transfer")
	InvoicePaymentMethodDirectDebit          = InvoicePaymentMethod("direct_debit")
)
View Source
const (
	InvoiceStatusUnknownInvoiceStatus = InvoiceStatus("unknown_invoice_status")
	InvoiceStatusUnpaid               = InvoiceStatus("unpaid")
	InvoiceStatusPaid                 = InvoiceStatus("paid")
	InvoiceStatusErrored              = InvoiceStatus("errored")
)
View Source
const (
	ListFailoverIPsRequestOrderByIPAsc  = ListFailoverIPsRequestOrderBy("ip_asc")
	ListFailoverIPsRequestOrderByIPDesc = ListFailoverIPsRequestOrderBy("ip_desc")
)
View Source
const (
	ListInvoicesRequestOrderByCreatedAtAsc  = ListInvoicesRequestOrderBy("created_at_asc")
	ListInvoicesRequestOrderByCreatedAtDesc = ListInvoicesRequestOrderBy("created_at_desc")
)
View Source
const (
	ListOSRequestOrderByCreatedAtAsc   = ListOSRequestOrderBy("created_at_asc")
	ListOSRequestOrderByCreatedAtDesc  = ListOSRequestOrderBy("created_at_desc")
	ListOSRequestOrderByReleasedAtAsc  = ListOSRequestOrderBy("released_at_asc")
	ListOSRequestOrderByReleasedAtDesc = ListOSRequestOrderBy("released_at_desc")
)
View Source
const (
	ListOffersRequestOrderByCreatedAtAsc  = ListOffersRequestOrderBy("created_at_asc")
	ListOffersRequestOrderByCreatedAtDesc = ListOffersRequestOrderBy("created_at_desc")
	ListOffersRequestOrderByNameAsc       = ListOffersRequestOrderBy("name_asc")
	ListOffersRequestOrderByNameDesc      = ListOffersRequestOrderBy("name_desc")
	ListOffersRequestOrderByPriceAsc      = ListOffersRequestOrderBy("price_asc")
	ListOffersRequestOrderByPriceDesc     = ListOffersRequestOrderBy("price_desc")
)
View Source
const (
	ListRefundsRequestOrderByCreatedAtAsc  = ListRefundsRequestOrderBy("created_at_asc")
	ListRefundsRequestOrderByCreatedAtDesc = ListRefundsRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnCapableSanServersRequestOrderByCreatedAtAsc  = ListRpnCapableSanServersRequestOrderBy("created_at_asc")
	ListRpnCapableSanServersRequestOrderByCreatedAtDesc = ListRpnCapableSanServersRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnCapableServersRequestOrderByCreatedAtAsc  = ListRpnCapableServersRequestOrderBy("created_at_asc")
	ListRpnCapableServersRequestOrderByCreatedAtDesc = ListRpnCapableServersRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnGroupMembersRequestOrderByCreatedAtAsc  = ListRpnGroupMembersRequestOrderBy("created_at_asc")
	ListRpnGroupMembersRequestOrderByCreatedAtDesc = ListRpnGroupMembersRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnGroupsRequestOrderByCreatedAtAsc  = ListRpnGroupsRequestOrderBy("created_at_asc")
	ListRpnGroupsRequestOrderByCreatedAtDesc = ListRpnGroupsRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnInvitesRequestOrderByCreatedAtAsc  = ListRpnInvitesRequestOrderBy("created_at_asc")
	ListRpnInvitesRequestOrderByCreatedAtDesc = ListRpnInvitesRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnSansRequestOrderByCreatedAtAsc  = ListRpnSansRequestOrderBy("created_at_asc")
	ListRpnSansRequestOrderByCreatedAtDesc = ListRpnSansRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnServerCapabilitiesRequestOrderByCreatedAtAsc  = ListRpnServerCapabilitiesRequestOrderBy("created_at_asc")
	ListRpnServerCapabilitiesRequestOrderByCreatedAtDesc = ListRpnServerCapabilitiesRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnV2CapableResourcesRequestOrderByCreatedAtAsc  = ListRpnV2CapableResourcesRequestOrderBy("created_at_asc")
	ListRpnV2CapableResourcesRequestOrderByCreatedAtDesc = ListRpnV2CapableResourcesRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnV2GroupLogsRequestOrderByCreatedAtAsc  = ListRpnV2GroupLogsRequestOrderBy("created_at_asc")
	ListRpnV2GroupLogsRequestOrderByCreatedAtDesc = ListRpnV2GroupLogsRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnV2GroupsRequestOrderByCreatedAtAsc  = ListRpnV2GroupsRequestOrderBy("created_at_asc")
	ListRpnV2GroupsRequestOrderByCreatedAtDesc = ListRpnV2GroupsRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnV2MembersRequestOrderByCreatedAtAsc  = ListRpnV2MembersRequestOrderBy("created_at_asc")
	ListRpnV2MembersRequestOrderByCreatedAtDesc = ListRpnV2MembersRequestOrderBy("created_at_desc")
)
View Source
const (
	ListRpnV2MembersRequestTypeUnknownType = ListRpnV2MembersRequestType("unknown_type")
	ListRpnV2MembersRequestTypeRpnv1Group  = ListRpnV2MembersRequestType("rpnv1_group")
	ListRpnV2MembersRequestTypeServer      = ListRpnV2MembersRequestType("server")
)
View Source
const (
	ListServerDisksRequestOrderByCreatedAtAsc  = ListServerDisksRequestOrderBy("created_at_asc")
	ListServerDisksRequestOrderByCreatedAtDesc = ListServerDisksRequestOrderBy("created_at_desc")
)
View Source
const (
	ListServerEventsRequestOrderByCreatedAtAsc  = ListServerEventsRequestOrderBy("created_at_asc")
	ListServerEventsRequestOrderByCreatedAtDesc = ListServerEventsRequestOrderBy("created_at_desc")
)
View Source
const (
	ListServersRequestOrderByCreatedAtAsc  = ListServersRequestOrderBy("created_at_asc")
	ListServersRequestOrderByCreatedAtDesc = ListServersRequestOrderBy("created_at_desc")
)
View Source
const (
	ListServicesRequestOrderByCreatedAtAsc  = ListServicesRequestOrderBy("created_at_asc")
	ListServicesRequestOrderByCreatedAtDesc = ListServicesRequestOrderBy("created_at_desc")
)
View Source
const (
	LogActionUnknownLogAction        = LogAction("unknown_log_action")
	LogActionGroupCreated            = LogAction("group_created")
	LogActionGroupDeleted            = LogAction("group_deleted")
	LogActionMembersAdded            = LogAction("members_added")
	LogActionMembersDeleted          = LogAction("members_deleted")
	LogActionDescriptionUpdated      = LogAction("description_updated")
	LogActionRpnv1MembersAdded       = LogAction("rpnv1_members_added")
	LogActionRpnv1MembersDeleted     = LogAction("rpnv1_members_deleted")
	LogActionVlanUpdated             = LogAction("vlan_updated")
	LogActionVlanUpdatedOnAllServers = LogAction("vlan_updated_on_all_servers")
)
View Source
const (
	LogStatusUnknownLogStatus = LogStatus("unknown_log_status")
	LogStatusSuccess          = LogStatus("success")
	LogStatusInProgress       = LogStatus("in_progress")
	LogStatusError            = LogStatus("error")
)
View Source
const (
	MemoryTypeDdr2 = MemoryType("ddr2")
	MemoryTypeDdr3 = MemoryType("ddr3")
	MemoryTypeDdr4 = MemoryType("ddr4")
)
View Source
const (
	NetworkInterfaceInterfaceTypeUnknown = NetworkInterfaceInterfaceType("unknown")
	NetworkInterfaceInterfaceTypeNormal  = NetworkInterfaceInterfaceType("normal")
	NetworkInterfaceInterfaceTypeIpmi    = NetworkInterfaceInterfaceType("ipmi")
	NetworkInterfaceInterfaceTypeVirtual = NetworkInterfaceInterfaceType("virtual")
)
View Source
const (
	OSArchUnknownArch = OSArch("unknown_arch")
	OSArchAmd64       = OSArch("amd64")
	OSArchX86         = OSArch("x86")
	OSArchArm         = OSArch("arm")
	OSArchArm64       = OSArch("arm64")
)
View Source
const (
	OSTypeUnknownType = OSType("unknown_type")
	OSTypeServer      = OSType("server")
	OSTypeVirtu       = OSType("virtu")
	OSTypePanel       = OSType("panel")
	OSTypeDesktop     = OSType("desktop")
	OSTypeCustom      = OSType("custom")
	OSTypeRescue      = OSType("rescue")
)
View Source
const (
	OfferAntiDosInfoTypeMinimal    = OfferAntiDosInfoType("minimal")
	OfferAntiDosInfoTypePreventive = OfferAntiDosInfoType("preventive")
	OfferAntiDosInfoTypeCurative   = OfferAntiDosInfoType("curative")
)
View Source
const (
	OfferCatalogAll      = OfferCatalog("all")
	OfferCatalogDefault  = OfferCatalog("default")
	OfferCatalogBeta     = OfferCatalog("beta")
	OfferCatalogReseller = OfferCatalog("reseller")
	OfferCatalogPremium  = OfferCatalog("premium")
	OfferCatalogVolume   = OfferCatalog("volume")
	OfferCatalogAdmin    = OfferCatalog("admin")
	OfferCatalogInactive = OfferCatalog("inactive")
)
View Source
const (
	OfferPaymentFrequencyMonthly = OfferPaymentFrequency("monthly")
	OfferPaymentFrequencyOneshot = OfferPaymentFrequency("oneshot")
)
View Source
const (
	OfferSANInfoTypeHdd = OfferSANInfoType("hdd")
	OfferSANInfoTypeSSD = OfferSANInfoType("ssd")
)
View Source
const (
	OfferServerInfoStockEmpty     = OfferServerInfoStock("empty")
	OfferServerInfoStockLow       = OfferServerInfoStock("low")
	OfferServerInfoStockAvailable = OfferServerInfoStock("available")
)
View Source
const (
	PartitionFileSystemUnknown = PartitionFileSystem("unknown")
	PartitionFileSystemEfi     = PartitionFileSystem("efi")
	PartitionFileSystemSwap    = PartitionFileSystem("swap")
	PartitionFileSystemExt4    = PartitionFileSystem("ext4")
	PartitionFileSystemExt3    = PartitionFileSystem("ext3")
	PartitionFileSystemExt2    = PartitionFileSystem("ext2")
	PartitionFileSystemXfs     = PartitionFileSystem("xfs")
	PartitionFileSystemNtfs    = PartitionFileSystem("ntfs")
	PartitionFileSystemFat32   = PartitionFileSystem("fat32")
	PartitionFileSystemUfs     = PartitionFileSystem("ufs")
)
View Source
const (
	PartitionTypePrimary  = PartitionType("primary")
	PartitionTypeExtended = PartitionType("extended")
	PartitionTypeLogical  = PartitionType("logical")
)
View Source
const (
	RaidArrayRaidLevelNoRaid = RaidArrayRaidLevel("no_raid")
	RaidArrayRaidLevelRaid0  = RaidArrayRaidLevel("raid0")
	RaidArrayRaidLevelRaid1  = RaidArrayRaidLevel("raid1")
	RaidArrayRaidLevelRaid5  = RaidArrayRaidLevel("raid5")
	RaidArrayRaidLevelRaid6  = RaidArrayRaidLevel("raid6")
	RaidArrayRaidLevelRaid10 = RaidArrayRaidLevel("raid10")
)
View Source
const (
	RefundMethodUnknownRefundMethod = RefundMethod("unknown_refund_method")
	RefundMethodCreditCard          = RefundMethod("credit_card")
	RefundMethodAmex                = RefundMethod("amex")
	RefundMethodPaypal              = RefundMethod("paypal")
	RefundMethodTransfer            = RefundMethod("transfer")
)
View Source
const (
	RefundStatusUnknownRefundStatus = RefundStatus("unknown_refund_status")
	RefundStatusUnpaid              = RefundStatus("unpaid")
	RefundStatusPaid                = RefundStatus("paid")
	RefundStatusErrored             = RefundStatus("errored")
)
View Source
const (
	RescueProtocolVnc = RescueProtocol("vnc")
	RescueProtocolSSH = RescueProtocol("ssh")
)
View Source
const (
	RpnGroupMemberStatusUnknownRpnMemberStatus = RpnGroupMemberStatus("unknown_rpn_member_status")
	RpnGroupMemberStatusPendingInvitation      = RpnGroupMemberStatus("pending_invitation")
	RpnGroupMemberStatusActive                 = RpnGroupMemberStatus("active")
	RpnGroupMemberStatusCreating               = RpnGroupMemberStatus("creating")
	RpnGroupMemberStatusDeleting               = RpnGroupMemberStatus("deleting")
	RpnGroupMemberStatusDeleted                = RpnGroupMemberStatus("deleted")
)
View Source
const (
	RpnGroupTypeUnknown = RpnGroupType("unknown")
	RpnGroupTypeLocal   = RpnGroupType("local")
	RpnGroupTypeShared  = RpnGroupType("shared")
)
View Source
const (
	RpnSanIPTypeUnknown     = RpnSanIPType("unknown")
	RpnSanIPTypeServerIP    = RpnSanIPType("server_ip")
	RpnSanIPTypeRpnv2Subnet = RpnSanIPType("rpnv2_subnet")
)
View Source
const (
	RpnSanStatusUnknownStatus = RpnSanStatus("unknown_status")
	RpnSanStatusCreating      = RpnSanStatus("creating")
	RpnSanStatusActive        = RpnSanStatus("active")
	RpnSanStatusDeleting      = RpnSanStatus("deleting")
	RpnSanStatusMaintenance   = RpnSanStatus("maintenance")
)
View Source
const (
	RpnV2GroupStatusUnknownGroupStatus = RpnV2GroupStatus("unknown_group_status")
	RpnV2GroupStatusCreating           = RpnV2GroupStatus("creating")
	RpnV2GroupStatusActive             = RpnV2GroupStatus("active")
	RpnV2GroupStatusUpdating           = RpnV2GroupStatus("updating")
	RpnV2GroupStatusDeleting           = RpnV2GroupStatus("deleting")
)
View Source
const (
	RpnV2GroupTypeUnknownType = RpnV2GroupType("unknown_type")
	RpnV2GroupTypeStandard    = RpnV2GroupType("standard")
	RpnV2GroupTypeQinq        = RpnV2GroupType("qinq")
)
View Source
const (
	RpnV2MemberStatusUnknownMemberStatus = RpnV2MemberStatus("unknown_member_status")
	RpnV2MemberStatusCreating            = RpnV2MemberStatus("creating")
	RpnV2MemberStatusActive              = RpnV2MemberStatus("active")
	RpnV2MemberStatusUpdating            = RpnV2MemberStatus("updating")
	RpnV2MemberStatusDeleting            = RpnV2MemberStatus("deleting")
)
View Source
const (
	ServerDiskTypeSata = ServerDiskType("sata")
	ServerDiskTypeSSD  = ServerDiskType("ssd")
	ServerDiskTypeSas  = ServerDiskType("sas")
	ServerDiskTypeSshd = ServerDiskType("sshd")
	ServerDiskTypeUsb  = ServerDiskType("usb")
	ServerDiskTypeNvme = ServerDiskType("nvme")
)
View Source
const (
	ServerInstallStatusUnknown               = ServerInstallStatus("unknown")
	ServerInstallStatusBooting               = ServerInstallStatus("booting")
	ServerInstallStatusSettingUpRaid         = ServerInstallStatus("setting_up_raid")
	ServerInstallStatusPartitioning          = ServerInstallStatus("partitioning")
	ServerInstallStatusFormatting            = ServerInstallStatus("formatting")
	ServerInstallStatusInstalling            = ServerInstallStatus("installing")
	ServerInstallStatusConfiguring           = ServerInstallStatus("configuring")
	ServerInstallStatusConfiguringBootloader = ServerInstallStatus("configuring_bootloader")
	ServerInstallStatusRebooting             = ServerInstallStatus("rebooting")
	ServerInstallStatusInstalled             = ServerInstallStatus("installed")
)
View Source
const (
	ServerStatusUnknown    = ServerStatus("unknown")
	ServerStatusDelivering = ServerStatus("delivering")
	ServerStatusInstalling = ServerStatus("installing")
	ServerStatusReady      = ServerStatus("ready")
	ServerStatusStopped    = ServerStatus("stopped")
	ServerStatusError      = ServerStatus("error")
	ServerStatusLocked     = ServerStatus("locked")
	ServerStatusRescue     = ServerStatus("rescue")
	ServerStatusBusy       = ServerStatus("busy")
)
View Source
const (
	ServiceLevelLevelUnknown  = ServiceLevelLevel("unknown")
	ServiceLevelLevelBasic    = ServiceLevelLevel("basic")
	ServiceLevelLevelBusiness = ServiceLevelLevel("business")
)
View Source
const (
	ServiceProvisioningStatusUnknown    = ServiceProvisioningStatus("unknown")
	ServiceProvisioningStatusDelivering = ServiceProvisioningStatus("delivering")
	ServiceProvisioningStatusReady      = ServiceProvisioningStatus("ready")
	ServiceProvisioningStatusError      = ServiceProvisioningStatus("error")
	ServiceProvisioningStatusExpiring   = ServiceProvisioningStatus("expiring")
	ServiceProvisioningStatusExpired    = ServiceProvisioningStatus("expired")
)
View Source
const (
	ServiceTypeUnknownType = ServiceType("unknown_type")
	ServiceTypeService     = ServiceType("service")
	ServiceTypeOrder       = ServiceType("order")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type API

type API struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix API.

func NewAPI

func NewAPI(client *scw.Client) *API

NewAPI returns a API object from a Scaleway client.

func (*API) AttachFailoverIPToMacAddress

func (s *API) AttachFailoverIPToMacAddress(req *AttachFailoverIPToMacAddressRequest, opts ...scw.RequestOption) (*IP, error)

AttachFailoverIPToMacAddress: Attach a failover IP to a MAC address.

func (*API) AttachFailoverIPs

func (s *API) AttachFailoverIPs(req *AttachFailoverIPsRequest, opts ...scw.RequestOption) error

AttachFailoverIPs: Attach failovers on the server associated with the given ID.

func (*API) CancelServerInstall

func (s *API) CancelServerInstall(req *CancelServerInstallRequest, opts ...scw.RequestOption) error

CancelServerInstall: Cancels the current server installation associated with the given server ID.

func (*API) CreateFailoverIPs

func (s *API) CreateFailoverIPs(req *CreateFailoverIPsRequest, opts ...scw.RequestOption) (*CreateFailoverIPsResponse, error)

CreateFailoverIPs: Order X failover IPs.

func (*API) CreateServer

func (s *API) CreateServer(req *CreateServerRequest, opts ...scw.RequestOption) (*Service, error)

CreateServer: Create a new baremetal server. The order return you a service ID to follow the provisionning status you could call GetService.

func (*API) DeleteFailoverIP

func (s *API) DeleteFailoverIP(req *DeleteFailoverIPRequest, opts ...scw.RequestOption) error

DeleteFailoverIP: Delete the failover associated with the given ID.

func (*API) DeleteServer

func (s *API) DeleteServer(req *DeleteServerRequest, opts ...scw.RequestOption) error

DeleteServer: Delete the server associated with the given ID.

func (*API) DeleteService

func (s *API) DeleteService(req *DeleteServiceRequest, opts ...scw.RequestOption) (*Service, error)

DeleteService: Delete the service associated with the given ID.

func (*API) DetachFailoverIPFromMacAddress

func (s *API) DetachFailoverIPFromMacAddress(req *DetachFailoverIPFromMacAddressRequest, opts ...scw.RequestOption) (*IP, error)

DetachFailoverIPFromMacAddress: Detach a failover IP from a MAC address.

func (*API) DetachFailoverIPs

func (s *API) DetachFailoverIPs(req *DetachFailoverIPsRequest, opts ...scw.RequestOption) error

DetachFailoverIPs: Detach failovers on the server associated with the given ID.

func (*API) GetBMCAccess

func (s *API) GetBMCAccess(req *GetBMCAccessRequest, opts ...scw.RequestOption) (*BMCAccess, error)

GetBMCAccess: Get the BMC (Baseboard Management Controller) access associated with the given ID.

func (*API) GetFailoverIP

func (s *API) GetFailoverIP(req *GetFailoverIPRequest, opts ...scw.RequestOption) (*FailoverIP, error)

GetFailoverIP: Get the server associated with the given ID.

func (*API) GetOS

func (s *API) GetOS(req *GetOSRequest, opts ...scw.RequestOption) (*OS, error)

GetOS: Return specific OS for the given ID.

func (*API) GetOffer

func (s *API) GetOffer(req *GetOfferRequest, opts ...scw.RequestOption) (*Offer, error)

GetOffer: Return specific offer for the given ID.

func (*API) GetOrderedService

func (s *API) GetOrderedService(req *GetOrderedServiceRequest, opts ...scw.RequestOption) (*Service, error)

GetOrderedService:

func (*API) GetRaid

func (s *API) GetRaid(req *GetRaidRequest, opts ...scw.RequestOption) (*Raid, error)

GetRaid: Return raid for the given server ID.

func (*API) GetRemainingQuota

func (s *API) GetRemainingQuota(req *GetRemainingQuotaRequest, opts ...scw.RequestOption) (*GetRemainingQuotaResponse, error)

GetRemainingQuota: Get remaining quota.

func (*API) GetRescue

func (s *API) GetRescue(req *GetRescueRequest, opts ...scw.RequestOption) (*Rescue, error)

GetRescue: Return rescue information for the given server ID.

func (*API) GetServer

func (s *API) GetServer(req *GetServerRequest, opts ...scw.RequestOption) (*Server, error)

GetServer: Get the server associated with the given ID.

func (*API) GetServerBackup

func (s *API) GetServerBackup(req *GetServerBackupRequest, opts ...scw.RequestOption) (*Backup, error)

GetServerBackup:

func (*API) GetServerDefaultPartitioning

func (s *API) GetServerDefaultPartitioning(req *GetServerDefaultPartitioningRequest, opts ...scw.RequestOption) (*ServerDefaultPartitioning, error)

GetServerDefaultPartitioning: Get the server default partitioning schema associated with the given server ID and OS ID.

func (*API) GetServerInstall

func (s *API) GetServerInstall(req *GetServerInstallRequest, opts ...scw.RequestOption) (*ServerInstall, error)

GetServerInstall: Get the server installation status associated with the given server ID.

func (*API) GetService

func (s *API) GetService(req *GetServiceRequest, opts ...scw.RequestOption) (*Service, error)

GetService: Get the service associated with the given ID.

func (*API) InstallServer

func (s *API) InstallServer(req *InstallServerRequest, opts ...scw.RequestOption) (*ServerInstall, error)

InstallServer: Install an OS on the server associated with the given ID.

func (*API) ListFailoverIPs

func (s *API) ListFailoverIPs(req *ListFailoverIPsRequest, opts ...scw.RequestOption) (*ListFailoverIPsResponse, error)

ListFailoverIPs: List failovers servers for project.

func (*API) ListOS

func (s *API) ListOS(req *ListOSRequest, opts ...scw.RequestOption) (*ListOSResponse, error)

ListOS: List all available OS that can be install on a baremetal server.

func (*API) ListOffers

func (s *API) ListOffers(req *ListOffersRequest, opts ...scw.RequestOption) (*ListOffersResponse, error)

ListOffers: List all available server offers.

func (*API) ListServerDisks

func (s *API) ListServerDisks(req *ListServerDisksRequest, opts ...scw.RequestOption) (*ListServerDisksResponse, error)

ListServerDisks: List disks associated to the given server ID.

func (*API) ListServerEvents

func (s *API) ListServerEvents(req *ListServerEventsRequest, opts ...scw.RequestOption) (*ListServerEventsResponse, error)

ListServerEvents: List events associated to the given server ID.

func (*API) ListServers

func (s *API) ListServers(req *ListServersRequest, opts ...scw.RequestOption) (*ListServersResponse, error)

ListServers: List baremetal servers for project.

func (*API) ListServices

func (s *API) ListServices(req *ListServicesRequest, opts ...scw.RequestOption) (*ListServicesResponse, error)

ListServices: List services.

func (*API) ListSubscribableServerOptions

func (s *API) ListSubscribableServerOptions(req *ListSubscribableServerOptionsRequest, opts ...scw.RequestOption) (*ListSubscribableServerOptionsResponse, error)

ListSubscribableServerOptions: List subscribable options associated to the given server ID.

func (*API) RebootServer

func (s *API) RebootServer(req *RebootServerRequest, opts ...scw.RequestOption) error

RebootServer: Reboot the server associated with the given ID, use boot param to reboot in rescue.

func (*API) StartBMCAccess

func (s *API) StartBMCAccess(req *StartBMCAccessRequest, opts ...scw.RequestOption) error

StartBMCAccess: Start BMC (Baseboard Management Controller) access associated with the given ID. The BMC (Baseboard Management Controller) access is available one hour after the installation of the server.

func (*API) StartRescue

func (s *API) StartRescue(req *StartRescueRequest, opts ...scw.RequestOption) (*Rescue, error)

StartRescue: Start in rescue the server associated with the given ID.

func (*API) StartServer

func (s *API) StartServer(req *StartServerRequest, opts ...scw.RequestOption) error

StartServer: Start the server associated with the given ID.

func (*API) StopBMCAccess

func (s *API) StopBMCAccess(req *StopBMCAccessRequest, opts ...scw.RequestOption) error

StopBMCAccess: Stop BMC (Baseboard Management Controller) access associated with the given ID.

func (*API) StopRescue

func (s *API) StopRescue(req *StopRescueRequest, opts ...scw.RequestOption) error

StopRescue: Stop rescue on the server associated with the given ID.

func (*API) StopServer

func (s *API) StopServer(req *StopServerRequest, opts ...scw.RequestOption) error

StopServer: Stop the server associated with the given ID.

func (*API) SubscribeServerOption

func (s *API) SubscribeServerOption(req *SubscribeServerOptionRequest, opts ...scw.RequestOption) (*Service, error)

SubscribeServerOption: Subscribe option for the given server ID.

func (*API) SubscribeStorageOptions

func (s *API) SubscribeStorageOptions(req *SubscribeStorageOptionsRequest, opts ...scw.RequestOption) (*SubscribeStorageOptionsResponse, error)

SubscribeStorageOptions: Subscribe storage option for the given server ID.

func (*API) UpdateRaid

func (s *API) UpdateRaid(req *UpdateRaidRequest, opts ...scw.RequestOption) error

UpdateRaid: Update RAID associated with the given server ID.

func (*API) UpdateReverse

func (s *API) UpdateReverse(req *UpdateReverseRequest, opts ...scw.RequestOption) (*IP, error)

UpdateReverse: Update reverse of ip associated with the given ID.

func (*API) UpdateServer

func (s *API) UpdateServer(req *UpdateServerRequest, opts ...scw.RequestOption) (*Server, error)

UpdateServer: Update the server associated with the given ID.

func (*API) UpdateServerBackup

func (s *API) UpdateServerBackup(req *UpdateServerBackupRequest, opts ...scw.RequestOption) (*Backup, error)

UpdateServerBackup:

func (*API) UpdateServerTags

func (s *API) UpdateServerTags(req *UpdateServerTagsRequest, opts ...scw.RequestOption) (*Server, error)

UpdateServerTags:

func (*API) Zones

func (s *API) Zones() []scw.Zone

type AttachFailoverIPToMacAddressRequest

type AttachFailoverIPToMacAddressRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// IPID: ID of the failover IP.
	IPID uint64 `json:"-"`

	// Type: a mac type.
	// Default value: mac_type_unknown
	Type AttachFailoverIPToMacAddressRequestMacType `json:"type"`

	// Mac: a valid mac address (existing or not).
	Mac *string `json:"mac,omitempty"`
}

AttachFailoverIPToMacAddressRequest: attach failover ip to mac address request.

type AttachFailoverIPToMacAddressRequestMacType

type AttachFailoverIPToMacAddressRequestMacType string

func (AttachFailoverIPToMacAddressRequestMacType) MarshalJSON

func (enum AttachFailoverIPToMacAddressRequestMacType) MarshalJSON() ([]byte, error)

func (AttachFailoverIPToMacAddressRequestMacType) String

func (*AttachFailoverIPToMacAddressRequestMacType) UnmarshalJSON

func (enum *AttachFailoverIPToMacAddressRequestMacType) UnmarshalJSON(data []byte) error

type AttachFailoverIPsRequest

type AttachFailoverIPsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server.
	ServerID uint64 `json:"server_id"`

	// FipsIDs: list of ID of failovers IP to attach.
	FipsIDs []uint64 `json:"fips_ids"`
}

AttachFailoverIPsRequest: attach failover i ps request.

type BMCAccess

type BMCAccess struct {
	// URL: URL to access to the server console.
	URL string `json:"url"`

	// Login: the login to use for the BMC (Baseboard Management Controller) access authentification.
	Login string `json:"login"`

	// Password: the password to use for the BMC (Baseboard Management Controller) access authentification.
	Password string `json:"password"`

	// ExpiresAt: the date after which the BMC (Baseboard Management Controller) access will be closed.
	ExpiresAt *time.Time `json:"expires_at"`

	// Status: status of the connection.
	// Default value: unknown
	Status BMCAccessStatus `json:"status"`
}

BMCAccess: bmc access.

type BMCAccessStatus

type BMCAccessStatus string

func (BMCAccessStatus) MarshalJSON

func (enum BMCAccessStatus) MarshalJSON() ([]byte, error)

func (BMCAccessStatus) String

func (enum BMCAccessStatus) String() string

func (*BMCAccessStatus) UnmarshalJSON

func (enum *BMCAccessStatus) UnmarshalJSON(data []byte) error

type Backup

type Backup struct {
	// ID: ID of the backup.
	ID uint64 `json:"id"`

	// Login: login of the backup.
	Login string `json:"login"`

	// Server: server of the backup.
	Server string `json:"server"`

	// Status: status of the backup.
	// Default value: unknown_backup_status
	Status BackupStatus `json:"status"`

	// ACLEnabled: ACL enable boolean of the backup.
	ACLEnabled bool `json:"acl_enabled"`

	// Autologin: autologin boolean of the backup.
	Autologin bool `json:"autologin"`

	// QuotaSpace: total quota space of the backup.
	QuotaSpace uint64 `json:"quota_space"`

	// QuotaSpaceUsed: quota space used of the backup.
	QuotaSpaceUsed uint64 `json:"quota_space_used"`

	// QuotaFiles: total quota files of the backup.
	QuotaFiles uint64 `json:"quota_files"`

	// QuotaFilesUsed: quota files used of the backup.
	QuotaFilesUsed uint64 `json:"quota_files_used"`
}

Backup: backup.

type BackupStatus

type BackupStatus string

func (BackupStatus) MarshalJSON

func (enum BackupStatus) MarshalJSON() ([]byte, error)

func (BackupStatus) String

func (enum BackupStatus) String() string

func (*BackupStatus) UnmarshalJSON

func (enum *BackupStatus) UnmarshalJSON(data []byte) error

type BillingAPI

type BillingAPI struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix Billing API.

func NewBillingAPI

func NewBillingAPI(client *scw.Client) *BillingAPI

NewBillingAPI returns a BillingAPI object from a Scaleway client.

func (*BillingAPI) CanOrder

CanOrder:

func (*BillingAPI) DownloadInvoice

func (s *BillingAPI) DownloadInvoice(req *BillingAPIDownloadInvoiceRequest, opts ...scw.RequestOption) (*scw.File, error)

DownloadInvoice:

func (*BillingAPI) DownloadRefund

func (s *BillingAPI) DownloadRefund(req *BillingAPIDownloadRefundRequest, opts ...scw.RequestOption) (*scw.File, error)

DownloadRefund:

func (*BillingAPI) GetInvoice

func (s *BillingAPI) GetInvoice(req *BillingAPIGetInvoiceRequest, opts ...scw.RequestOption) (*Invoice, error)

GetInvoice:

func (*BillingAPI) GetRefund

func (s *BillingAPI) GetRefund(req *BillingAPIGetRefundRequest, opts ...scw.RequestOption) (*Refund, error)

GetRefund:

func (*BillingAPI) ListInvoices

ListInvoices:

func (*BillingAPI) ListRefunds

ListRefunds:

type BillingAPICanOrderRequest

type BillingAPICanOrderRequest struct {
	ProjectID string `json:"-"`
}

BillingAPICanOrderRequest: billing api can order request.

type BillingAPIDownloadInvoiceRequest

type BillingAPIDownloadInvoiceRequest struct {
	InvoiceID uint64 `json:"-"`
}

BillingAPIDownloadInvoiceRequest: billing api download invoice request.

type BillingAPIDownloadRefundRequest

type BillingAPIDownloadRefundRequest struct {
	RefundID uint64 `json:"-"`
}

BillingAPIDownloadRefundRequest: billing api download refund request.

type BillingAPIGetInvoiceRequest

type BillingAPIGetInvoiceRequest struct {
	InvoiceID uint64 `json:"-"`
}

BillingAPIGetInvoiceRequest: billing api get invoice request.

type BillingAPIGetRefundRequest

type BillingAPIGetRefundRequest struct {
	RefundID uint64 `json:"-"`
}

BillingAPIGetRefundRequest: billing api get refund request.

type BillingAPIListInvoicesRequest

type BillingAPIListInvoicesRequest struct {
	Page *uint32 `json:"-"`

	PageSize *uint32 `json:"-"`

	// OrderBy: default value: created_at_asc
	OrderBy ListInvoicesRequestOrderBy `json:"-"`

	ProjectID *string `json:"-"`
}

BillingAPIListInvoicesRequest: billing api list invoices request.

type BillingAPIListRefundsRequest

type BillingAPIListRefundsRequest struct {
	Page *uint32 `json:"-"`

	PageSize *uint32 `json:"-"`

	// OrderBy: default value: created_at_asc
	OrderBy ListRefundsRequestOrderBy `json:"-"`

	ProjectID *string `json:"-"`
}

BillingAPIListRefundsRequest: billing api list refunds request.

type CPU

type CPU struct {
	// Name: name of CPU.
	Name string `json:"name"`

	// CoreCount: number of cores of the CPU.
	CoreCount uint32 `json:"core_count"`

	// ThreadCount: number of threads of the CPU.
	ThreadCount uint32 `json:"thread_count"`

	// Frequency: frequency of the CPU.
	Frequency uint32 `json:"frequency"`
}

CPU: cpu.

type CanOrderResponse

type CanOrderResponse struct {
	CanOrder bool `json:"can_order"`

	Message *string `json:"message"`

	QuotaOk bool `json:"quota_ok"`

	PhoneConfirmed bool `json:"phone_confirmed"`

	EmailConfirmed bool `json:"email_confirmed"`

	UserConfirmed bool `json:"user_confirmed"`

	PaymentMode bool `json:"payment_mode"`

	BillingOk bool `json:"billing_ok"`
}

CanOrderResponse: can order response.

type CancelServerInstallRequest

type CancelServerInstallRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the server to cancel install.
	ServerID uint64 `json:"-"`
}

CancelServerInstallRequest: cancel server install request.

type CreateFailoverIPsRequest

type CreateFailoverIPsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// OfferID: failover IP offer ID.
	OfferID uint64 `json:"offer_id"`

	// ProjectID: project ID.
	ProjectID string `json:"project_id"`

	// Quantity: quantity.
	Quantity uint32 `json:"quantity"`
}

CreateFailoverIPsRequest: create failover i ps request.

type CreateFailoverIPsResponse

type CreateFailoverIPsResponse struct {
	TotalCount uint32 `json:"total_count"`

	Services []*Service `json:"services"`
}

CreateFailoverIPsResponse: create failover i ps response.

func (*CreateFailoverIPsResponse) UnsafeAppend

func (r *CreateFailoverIPsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*CreateFailoverIPsResponse) UnsafeGetTotalCount

func (r *CreateFailoverIPsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type CreateServerRequest

type CreateServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// OfferID: offer ID of the new server.
	OfferID uint64 `json:"offer_id"`

	// ServerOptionIDs: server option IDs of the new server.
	ServerOptionIDs []uint64 `json:"server_option_ids"`

	// ProjectID: project ID of the new server.
	ProjectID string `json:"project_id"`

	// DatacenterName: datacenter name of the new server.
	DatacenterName *string `json:"datacenter_name,omitempty"`
}

CreateServerRequest: create server request.

type DeleteFailoverIPRequest

type DeleteFailoverIPRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// IPID: ID of the failover IP to delete.
	IPID uint64 `json:"-"`
}

DeleteFailoverIPRequest: delete failover ip request.

type DeleteServerRequest

type DeleteServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to delete.
	ServerID uint64 `json:"-"`
}

DeleteServerRequest: delete server request.

type DeleteServiceRequest

type DeleteServiceRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServiceID: ID of the service.
	ServiceID uint64 `json:"-"`
}

DeleteServiceRequest: delete service request.

type DetachFailoverIPFromMacAddressRequest

type DetachFailoverIPFromMacAddressRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// IPID: ID of the failover IP.
	IPID uint64 `json:"-"`
}

DetachFailoverIPFromMacAddressRequest: detach failover ip from mac address request.

type DetachFailoverIPsRequest

type DetachFailoverIPsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// FipsIDs: list of IDs of failovers IP to detach.
	FipsIDs []uint64 `json:"fips_ids"`
}

DetachFailoverIPsRequest: detach failover i ps request.

type Disk

type Disk struct {
	// Capacity: capacity of the disk.
	Capacity scw.Size `json:"capacity"`

	// Type: type of the disk.
	// Default value: sata
	Type ServerDiskType `json:"type"`
}

Disk: disk.

type FailoverBlock

type FailoverBlock struct {
	// ID: ID of the failover block.
	ID uint64 `json:"id"`

	// Address: IP of the failover block.
	Address net.IP `json:"address"`

	// Nameservers: name servers.
	Nameservers []string `json:"nameservers"`

	// IPVersion: IP version of the failover block.
	// Default value: unknown_version
	IPVersion FailoverBlockVersion `json:"ip_version"`

	// Cidr: classless InterDomain Routing notation of the failover block.
	Cidr uint32 `json:"cidr"`

	// Netmask: netmask of the failover block.
	Netmask net.IP `json:"netmask"`

	// GatewayIP: gateway IP of the failover block.
	GatewayIP net.IP `json:"gateway_ip"`
}

FailoverBlock: failover block.

type FailoverBlockVersion

type FailoverBlockVersion string

func (FailoverBlockVersion) MarshalJSON

func (enum FailoverBlockVersion) MarshalJSON() ([]byte, error)

func (FailoverBlockVersion) String

func (enum FailoverBlockVersion) String() string

func (*FailoverBlockVersion) UnmarshalJSON

func (enum *FailoverBlockVersion) UnmarshalJSON(data []byte) error

type FailoverIP

type FailoverIP struct {
	// ID: ID of the failover IP.
	ID uint64 `json:"id"`

	// Address: IP of the failover IP.
	Address net.IP `json:"address"`

	// Reverse: reverse IP value.
	Reverse string `json:"reverse"`

	// IPVersion: IP version of the failover IP.
	// Default value: unknown_version
	IPVersion FailoverIPVersion `json:"ip_version"`

	// Cidr: classless InterDomain Routing notation of the failover IP.
	Cidr uint32 `json:"cidr"`

	// Netmask: netmask of the failover IP.
	Netmask net.IP `json:"netmask"`

	// GatewayIP: gateway IP of the failover IP.
	GatewayIP net.IP `json:"gateway_ip"`

	// Mac: mAC address of the IP failover.
	Mac *string `json:"mac"`

	// ServerID: server ID linked to the IP failover.
	ServerID *uint64 `json:"server_id"`

	// Status: status of the IP failover.
	// Default value: unknown_status
	Status FailoverIPStatus `json:"status"`

	// Block: block of the IP failover.
	Block *FailoverBlock `json:"block"`

	// Type: the interface type.
	// Default value: unknown
	Type FailoverIPInterfaceType `json:"type"`

	// ServerZone: the server zone (if assigned).
	ServerZone *string `json:"server_zone"`
}

FailoverIP: failover ip.

type FailoverIPInterfaceType

type FailoverIPInterfaceType string

func (FailoverIPInterfaceType) MarshalJSON

func (enum FailoverIPInterfaceType) MarshalJSON() ([]byte, error)

func (FailoverIPInterfaceType) String

func (enum FailoverIPInterfaceType) String() string

func (*FailoverIPInterfaceType) UnmarshalJSON

func (enum *FailoverIPInterfaceType) UnmarshalJSON(data []byte) error

type FailoverIPStatus

type FailoverIPStatus string

func (FailoverIPStatus) MarshalJSON

func (enum FailoverIPStatus) MarshalJSON() ([]byte, error)

func (FailoverIPStatus) String

func (enum FailoverIPStatus) String() string

func (*FailoverIPStatus) UnmarshalJSON

func (enum *FailoverIPStatus) UnmarshalJSON(data []byte) error

type FailoverIPVersion

type FailoverIPVersion string

func (FailoverIPVersion) MarshalJSON

func (enum FailoverIPVersion) MarshalJSON() ([]byte, error)

func (FailoverIPVersion) String

func (enum FailoverIPVersion) String() string

func (*FailoverIPVersion) UnmarshalJSON

func (enum *FailoverIPVersion) UnmarshalJSON(data []byte) error

type GetBMCAccessRequest

type GetBMCAccessRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server to get BMC access.
	ServerID uint64 `json:"-"`
}

GetBMCAccessRequest: get bmc access request.

type GetFailoverIPRequest

type GetFailoverIPRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// IPID: ID of the failover IP.
	IPID uint64 `json:"-"`
}

GetFailoverIPRequest: get failover ip request.

type GetIPv6BlockQuotasResponse

type GetIPv6BlockQuotasResponse struct {
	// Quotas: quota for each CIDR of IPv6 block.
	Quotas []*GetIPv6BlockQuotasResponseQuota `json:"quotas"`

	// TotalCount: total count of quotas.
	TotalCount uint32 `json:"total_count"`
}

GetIPv6BlockQuotasResponse: get i pv6 block quotas response.

func (*GetIPv6BlockQuotasResponse) UnsafeAppend

func (r *GetIPv6BlockQuotasResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*GetIPv6BlockQuotasResponse) UnsafeGetTotalCount

func (r *GetIPv6BlockQuotasResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type GetIPv6BlockQuotasResponseQuota

type GetIPv6BlockQuotasResponseQuota struct {
	Quota uint64 `json:"quota"`

	Cidr uint32 `json:"cidr"`
}

GetIPv6BlockQuotasResponseQuota: get i pv6 block quotas response quota.

type GetOSRequest

type GetOSRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// OsID: ID of the OS.
	OsID uint64 `json:"-"`

	// ServerID: ID of the server.
	ServerID uint64 `json:"-"`

	// ProjectID: project ID.
	ProjectID *string `json:"-"`
}

GetOSRequest: get os request.

type GetOfferRequest

type GetOfferRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// OfferID: ID of offer.
	OfferID uint64 `json:"-"`

	// ProjectID: project ID.
	ProjectID *string `json:"project_id,omitempty"`
}

GetOfferRequest: get offer request.

type GetOrderedServiceRequest

type GetOrderedServiceRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	OrderedServiceID uint64 `json:"-"`
}

GetOrderedServiceRequest: get ordered service request.

type GetRaidRequest

type GetRaidRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server.
	ServerID uint64 `json:"-"`
}

GetRaidRequest: get raid request.

type GetRemainingQuotaRequest

type GetRemainingQuotaRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ProjectID: project ID.
	ProjectID *string `json:"project_id,omitempty"`
}

GetRemainingQuotaRequest: get remaining quota request.

type GetRemainingQuotaResponse

type GetRemainingQuotaResponse struct {
	// FailoverIPQuota: current failover IP quota.
	FailoverIPQuota uint32 `json:"failover_ip_quota"`

	// FailoverIPRemainingQuota: remaining failover IP quota.
	FailoverIPRemainingQuota uint32 `json:"failover_ip_remaining_quota"`

	// FailoverBlockQuota: current failover block quota.
	FailoverBlockQuota uint32 `json:"failover_block_quota"`

	// FailoverBlockRemainingQuota: remaining failover block quota.
	FailoverBlockRemainingQuota uint32 `json:"failover_block_remaining_quota"`
}

GetRemainingQuotaResponse: get remaining quota response.

type GetRescueRequest

type GetRescueRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server to get rescue.
	ServerID uint64 `json:"-"`
}

GetRescueRequest: get rescue request.

type GetRpnStatusResponse

type GetRpnStatusResponse struct {
	// Status: if status = 'operational', you can perform rpn actions in write.
	// Default value: unknown_status
	Status GetRpnStatusResponseStatus `json:"status"`

	// OperationsLeft: number of operations left to perform before being operational.
	OperationsLeft *uint32 `json:"operations_left"`
}

GetRpnStatusResponse: get rpn status response.

type GetRpnStatusResponseStatus

type GetRpnStatusResponseStatus string

func (GetRpnStatusResponseStatus) MarshalJSON

func (enum GetRpnStatusResponseStatus) MarshalJSON() ([]byte, error)

func (GetRpnStatusResponseStatus) String

func (enum GetRpnStatusResponseStatus) String() string

func (*GetRpnStatusResponseStatus) UnmarshalJSON

func (enum *GetRpnStatusResponseStatus) UnmarshalJSON(data []byte) error

type GetServerBackupRequest

type GetServerBackupRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the backup.
	ServerID uint64 `json:"-"`
}

GetServerBackupRequest: get server backup request.

type GetServerDefaultPartitioningRequest

type GetServerDefaultPartitioningRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server.
	ServerID uint64 `json:"-"`

	// OsID: oS ID of the default partitioning.
	OsID uint64 `json:"-"`
}

GetServerDefaultPartitioningRequest: get server default partitioning request.

type GetServerInstallRequest

type GetServerInstallRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the server to install.
	ServerID uint64 `json:"-"`
}

GetServerInstallRequest: get server install request.

type GetServerRequest

type GetServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server.
	ServerID uint64 `json:"-"`
}

GetServerRequest: get server request.

type GetServiceRequest

type GetServiceRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServiceID: ID of the service.
	ServiceID uint64 `json:"-"`
}

GetServiceRequest: get service request.

type IP

type IP struct {
	// IPID: ID of the IP.
	IPID string `json:"ip_id"`

	// Address: address of the IP.
	Address net.IP `json:"address"`

	// Reverse: reverse IP value.
	Reverse string `json:"reverse"`

	// Version: version of IP (v4 or v6).
	// Default value: ipv4
	Version IPVersion `json:"version"`

	// Cidr: classless InterDomain Routing notation of the IP.
	Cidr uint32 `json:"cidr"`

	// Netmask: network mask of IP.
	Netmask net.IP `json:"netmask"`

	// Semantic: semantic of IP.
	// Default value: unknown
	Semantic IPSemantic `json:"semantic"`

	// Gateway: gateway of IP.
	Gateway net.IP `json:"gateway"`

	// Status: status of the IP.
	// Default value: unknown_status
	Status IPStatus `json:"status"`
}

IP: ip.

type IPSemantic

type IPSemantic string

func (IPSemantic) MarshalJSON

func (enum IPSemantic) MarshalJSON() ([]byte, error)

func (IPSemantic) String

func (enum IPSemantic) String() string

func (*IPSemantic) UnmarshalJSON

func (enum *IPSemantic) UnmarshalJSON(data []byte) error

type IPStatus

type IPStatus string

func (IPStatus) MarshalJSON

func (enum IPStatus) MarshalJSON() ([]byte, error)

func (IPStatus) String

func (enum IPStatus) String() string

func (*IPStatus) UnmarshalJSON

func (enum *IPStatus) UnmarshalJSON(data []byte) error

type IPVersion

type IPVersion string

func (IPVersion) MarshalJSON

func (enum IPVersion) MarshalJSON() ([]byte, error)

func (IPVersion) String

func (enum IPVersion) String() string

func (*IPVersion) UnmarshalJSON

func (enum *IPVersion) UnmarshalJSON(data []byte) error

type IPv6Block

type IPv6Block struct {
	// ID: ID of the IPv6.
	ID uint64 `json:"id"`

	// Address: address of the IPv6.
	Address net.IP `json:"address"`

	// Duid: dUID of the IPv6.
	Duid string `json:"duid"`

	// Nameservers: DNS linked to the IPv6.
	Nameservers []string `json:"nameservers"`

	// Cidr: classless InterDomain Routing notation of the IPv6.
	Cidr uint32 `json:"cidr"`

	// Subnets: all IPv6 subnets.
	Subnets []*IPv6Block `json:"subnets"`

	// DelegationStatus: the nameservers delegation status.
	// Default value: unknown_status
	DelegationStatus IPv6BlockDelegationStatus `json:"delegation_status"`
}

IPv6Block: i pv6 block.

type IPv6BlockAPI

type IPv6BlockAPI struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix IPv6 Block API.

func NewIPv6BlockAPI

func NewIPv6BlockAPI(client *scw.Client) *IPv6BlockAPI

NewIPv6BlockAPI returns a IPv6BlockAPI object from a Scaleway client.

func (*IPv6BlockAPI) CreateIPv6Block

func (s *IPv6BlockAPI) CreateIPv6Block(req *IPv6BlockAPICreateIPv6BlockRequest, opts ...scw.RequestOption) (*IPv6Block, error)

CreateIPv6Block: Create IPv6 block associated with the given project ID.

func (*IPv6BlockAPI) CreateIPv6BlockSubnet

func (s *IPv6BlockAPI) CreateIPv6BlockSubnet(req *IPv6BlockAPICreateIPv6BlockSubnetRequest, opts ...scw.RequestOption) (*IPv6Block, error)

CreateIPv6BlockSubnet: Create IPv6 block subnet for the given IP ID. /48 could create subnet in /56 (quota link to your number of server). /56 could create subnet in /64 (quota link to your number of failover IP).

func (*IPv6BlockAPI) DeleteIPv6Block

func (s *IPv6BlockAPI) DeleteIPv6Block(req *IPv6BlockAPIDeleteIPv6BlockRequest, opts ...scw.RequestOption) error

DeleteIPv6Block: Delete IPv6 block subnet with the given ID.

func (*IPv6BlockAPI) GetIPv6Block

func (s *IPv6BlockAPI) GetIPv6Block(req *IPv6BlockAPIGetIPv6BlockRequest, opts ...scw.RequestOption) (*IPv6Block, error)

GetIPv6Block: Get the IPv6 block associated with the given ID.

func (*IPv6BlockAPI) GetIPv6BlockQuotas

GetIPv6BlockQuotas: Get IPv6 block quota with the given project ID. /48 one per organization. /56 link to your number of server. /64 link to your number of failover IP.

func (*IPv6BlockAPI) ListIPv6BlockSubnetsAvailable

ListIPv6BlockSubnetsAvailable: List all available IPv6 block subnets for given IP ID.

func (*IPv6BlockAPI) UpdateIPv6Block

func (s *IPv6BlockAPI) UpdateIPv6Block(req *IPv6BlockAPIUpdateIPv6BlockRequest, opts ...scw.RequestOption) (*IPv6Block, error)

UpdateIPv6Block: Update DNS associated to IPv6 block. If DNS is used, minimum of 2 is necessary and maximum of 5 (no duplicate).

type IPv6BlockAPICreateIPv6BlockRequest

type IPv6BlockAPICreateIPv6BlockRequest struct {
	// ProjectID: ID of the project.
	ProjectID *string `json:"project_id,omitempty"`
}

IPv6BlockAPICreateIPv6BlockRequest: i pv6 block api create i pv6 block request.

type IPv6BlockAPICreateIPv6BlockSubnetRequest

type IPv6BlockAPICreateIPv6BlockSubnetRequest struct {
	// BlockID: ID of the IPv6 block.
	BlockID uint64 `json:"-"`

	// Address: address of the IPv6.
	Address net.IP `json:"address"`

	// Cidr: classless InterDomain Routing notation of the IPv6.
	Cidr uint32 `json:"cidr"`
}

IPv6BlockAPICreateIPv6BlockSubnetRequest: i pv6 block api create i pv6 block subnet request.

type IPv6BlockAPIDeleteIPv6BlockRequest

type IPv6BlockAPIDeleteIPv6BlockRequest struct {
	// BlockID: ID of the IPv6 block to delete.
	BlockID uint64 `json:"-"`
}

IPv6BlockAPIDeleteIPv6BlockRequest: i pv6 block api delete i pv6 block request.

type IPv6BlockAPIGetIPv6BlockQuotasRequest

type IPv6BlockAPIGetIPv6BlockQuotasRequest struct {
	// ProjectID: ID of the project.
	ProjectID *string `json:"-"`
}

IPv6BlockAPIGetIPv6BlockQuotasRequest: i pv6 block api get i pv6 block quotas request.

type IPv6BlockAPIGetIPv6BlockRequest

type IPv6BlockAPIGetIPv6BlockRequest struct {
	// ProjectID: ID of the project.
	ProjectID *string `json:"-"`
}

IPv6BlockAPIGetIPv6BlockRequest: i pv6 block api get i pv6 block request.

type IPv6BlockAPIListIPv6BlockSubnetsAvailableRequest

type IPv6BlockAPIListIPv6BlockSubnetsAvailableRequest struct {
	// BlockID: ID of the IPv6 block.
	BlockID uint64 `json:"-"`
}

IPv6BlockAPIListIPv6BlockSubnetsAvailableRequest: i pv6 block api list i pv6 block subnets available request.

type IPv6BlockAPIUpdateIPv6BlockRequest

type IPv6BlockAPIUpdateIPv6BlockRequest struct {
	// BlockID: ID of the IPv6 block.
	BlockID uint64 `json:"-"`

	// Nameservers: DNS to link to the IPv6.
	Nameservers *[]string `json:"nameservers,omitempty"`
}

IPv6BlockAPIUpdateIPv6BlockRequest: i pv6 block api update i pv6 block request.

type IPv6BlockDelegationStatus

type IPv6BlockDelegationStatus string

func (IPv6BlockDelegationStatus) MarshalJSON

func (enum IPv6BlockDelegationStatus) MarshalJSON() ([]byte, error)

func (IPv6BlockDelegationStatus) String

func (enum IPv6BlockDelegationStatus) String() string

func (*IPv6BlockDelegationStatus) UnmarshalJSON

func (enum *IPv6BlockDelegationStatus) UnmarshalJSON(data []byte) error

type InstallPartition

type InstallPartition struct {
	// FileSystem: file system of the installation partition.
	// Default value: unknown
	FileSystem PartitionFileSystem `json:"file_system"`

	// MountPoint: mount point of the installation partition.
	MountPoint *string `json:"mount_point"`

	// RaidLevel: rAID level of the installation partition.
	// Default value: no_raid
	RaidLevel RaidArrayRaidLevel `json:"raid_level"`

	// Capacity: capacity of the installation partition.
	Capacity scw.Size `json:"capacity"`

	// Connectors: connectors of the installation partition.
	Connectors []string `json:"connectors"`
}

InstallPartition: install partition.

type InstallServerRequest

type InstallServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to install.
	ServerID uint64 `json:"-"`

	// OsID: oS ID to install on the server.
	OsID uint64 `json:"os_id"`

	// Hostname: hostname of the server.
	Hostname string `json:"hostname"`

	// UserLogin: user to install on the server.
	UserLogin *string `json:"user_login,omitempty"`

	// UserPassword: user password to install on the server.
	UserPassword *string `json:"user_password,omitempty"`

	// PanelPassword: panel password to install on the server.
	PanelPassword *string `json:"panel_password,omitempty"`

	// RootPassword: root password to install on the server.
	RootPassword *string `json:"root_password,omitempty"`

	// Partitions: partitions to install on the server.
	Partitions []*InstallPartition `json:"partitions"`

	// SSHKeyIDs: SSH key IDs authorized on the server.
	SSHKeyIDs []string `json:"ssh_key_ids"`

	// LicenseOfferID: offer ID of license to install on server.
	LicenseOfferID *uint64 `json:"license_offer_id,omitempty"`

	// IPID: IP to link at the license to install on server.
	IPID *uint64 `json:"ip_id,omitempty"`
}

InstallServerRequest: install server request.

type Invoice

type Invoice struct {
	ID uint64 `json:"id"`

	TotalWithTaxes *scw.Money `json:"total_with_taxes"`

	TotalWithoutTaxes *scw.Money `json:"total_without_taxes"`

	CreatedAt *time.Time `json:"created_at"`

	PaidAt *time.Time `json:"paid_at"`

	// Status: default value: unknown_invoice_status
	Status InvoiceStatus `json:"status"`

	// PaymentMethod: default value: unknown_payment_method
	PaymentMethod InvoicePaymentMethod `json:"payment_method"`

	Content string `json:"content"`

	TransactionID uint64 `json:"transaction_id"`
}

Invoice: invoice.

type InvoicePaymentMethod

type InvoicePaymentMethod string

func (InvoicePaymentMethod) MarshalJSON

func (enum InvoicePaymentMethod) MarshalJSON() ([]byte, error)

func (InvoicePaymentMethod) String

func (enum InvoicePaymentMethod) String() string

func (*InvoicePaymentMethod) UnmarshalJSON

func (enum *InvoicePaymentMethod) UnmarshalJSON(data []byte) error

type InvoiceStatus

type InvoiceStatus string

func (InvoiceStatus) MarshalJSON

func (enum InvoiceStatus) MarshalJSON() ([]byte, error)

func (InvoiceStatus) String

func (enum InvoiceStatus) String() string

func (*InvoiceStatus) UnmarshalJSON

func (enum *InvoiceStatus) UnmarshalJSON(data []byte) error

type InvoiceSummary

type InvoiceSummary struct {
	ID uint64 `json:"id"`

	TotalWithTaxes *scw.Money `json:"total_with_taxes"`

	TotalWithoutTaxes *scw.Money `json:"total_without_taxes"`

	CreatedAt *time.Time `json:"created_at"`

	PaidAt *time.Time `json:"paid_at"`

	// Status: default value: unknown_invoice_status
	Status InvoiceStatus `json:"status"`

	// PaymentMethod: default value: unknown_payment_method
	PaymentMethod InvoicePaymentMethod `json:"payment_method"`

	TransactionID uint64 `json:"transaction_id"`
}

InvoiceSummary: invoice summary.

type ListFailoverIPsRequest

type ListFailoverIPsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of failovers IP per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the failovers IP.
	// Default value: ip_asc
	OrderBy ListFailoverIPsRequestOrderBy `json:"-"`

	// ProjectID: filter failovers IP by project ID.
	ProjectID *string `json:"-"`

	// Search: filter failovers IP which matching with this field.
	Search *string `json:"-"`

	// OnlyAvailable: true: return all failovers IP not attached on server
	// false: return all failovers IP attached on server.
	OnlyAvailable *bool `json:"-"`
}

ListFailoverIPsRequest: list failover i ps request.

type ListFailoverIPsRequestOrderBy

type ListFailoverIPsRequestOrderBy string

func (ListFailoverIPsRequestOrderBy) MarshalJSON

func (enum ListFailoverIPsRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListFailoverIPsRequestOrderBy) String

func (enum ListFailoverIPsRequestOrderBy) String() string

func (*ListFailoverIPsRequestOrderBy) UnmarshalJSON

func (enum *ListFailoverIPsRequestOrderBy) UnmarshalJSON(data []byte) error

type ListFailoverIPsResponse

type ListFailoverIPsResponse struct {
	// TotalCount: total count of matching failovers IP.
	TotalCount uint32 `json:"total_count"`

	// FailoverIPs: list of failover IPs that match filters.
	FailoverIPs []*FailoverIP `json:"failover_ips"`
}

ListFailoverIPsResponse: list failover i ps response.

func (*ListFailoverIPsResponse) UnsafeAppend

func (r *ListFailoverIPsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListFailoverIPsResponse) UnsafeGetTotalCount

func (r *ListFailoverIPsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListIPsResponse

type ListIPsResponse struct {
	// TotalCount: total count of authorized IPs.
	TotalCount uint32 `json:"total_count"`

	// IPs: list of authorized IPs.
	IPs []*RpnSanIP `json:"ips"`
}

ListIPsResponse: list i ps response.

func (*ListIPsResponse) UnsafeAppend

func (r *ListIPsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListIPsResponse) UnsafeGetTotalCount

func (r *ListIPsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListIPv6BlockSubnetsAvailableResponse

type ListIPv6BlockSubnetsAvailableResponse struct {
	// SubnetAvailables: all available address and CIDR available in subnet.
	SubnetAvailables []*ListIPv6BlockSubnetsAvailableResponseSubnet `json:"subnet_availables"`

	// TotalCount: total count of available subnets.
	TotalCount uint32 `json:"total_count"`
}

ListIPv6BlockSubnetsAvailableResponse: list i pv6 block subnets available response.

func (*ListIPv6BlockSubnetsAvailableResponse) UnsafeAppend

func (r *ListIPv6BlockSubnetsAvailableResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListIPv6BlockSubnetsAvailableResponse) UnsafeGetTotalCount

func (r *ListIPv6BlockSubnetsAvailableResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListIPv6BlockSubnetsAvailableResponseSubnet

type ListIPv6BlockSubnetsAvailableResponseSubnet struct {
	Address net.IP `json:"address"`

	Cidr uint32 `json:"cidr"`
}

ListIPv6BlockSubnetsAvailableResponseSubnet: list i pv6 block subnets available response subnet.

type ListInvoicesRequestOrderBy

type ListInvoicesRequestOrderBy string

func (ListInvoicesRequestOrderBy) MarshalJSON

func (enum ListInvoicesRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListInvoicesRequestOrderBy) String

func (enum ListInvoicesRequestOrderBy) String() string

func (*ListInvoicesRequestOrderBy) UnmarshalJSON

func (enum *ListInvoicesRequestOrderBy) UnmarshalJSON(data []byte) error

type ListInvoicesResponse

type ListInvoicesResponse struct {
	TotalCount uint32 `json:"total_count"`

	Invoices []*InvoiceSummary `json:"invoices"`
}

ListInvoicesResponse: list invoices response.

func (*ListInvoicesResponse) UnsafeAppend

func (r *ListInvoicesResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListInvoicesResponse) UnsafeGetTotalCount

func (r *ListInvoicesResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListOSRequest

type ListOSRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of OS per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the OS.
	// Default value: created_at_asc
	OrderBy ListOSRequestOrderBy `json:"-"`

	// Type: type of the OS.
	// Default value: unknown_type
	Type OSType `json:"-"`

	// ServerID: filter OS by compatible server ID.
	ServerID uint64 `json:"-"`

	// ProjectID: project ID.
	ProjectID *string `json:"-"`
}

ListOSRequest: list os request.

type ListOSRequestOrderBy

type ListOSRequestOrderBy string

func (ListOSRequestOrderBy) MarshalJSON

func (enum ListOSRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListOSRequestOrderBy) String

func (enum ListOSRequestOrderBy) String() string

func (*ListOSRequestOrderBy) UnmarshalJSON

func (enum *ListOSRequestOrderBy) UnmarshalJSON(data []byte) error

type ListOSResponse

type ListOSResponse struct {
	// TotalCount: total count of matching OS.
	TotalCount uint32 `json:"total_count"`

	// Os: oS that match filters.
	Os []*OS `json:"os"`
}

ListOSResponse: list os response.

func (*ListOSResponse) UnsafeAppend

func (r *ListOSResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListOSResponse) UnsafeGetTotalCount

func (r *ListOSResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListOffersRequest

type ListOffersRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of offer per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the offers.
	// Default value: created_at_asc
	OrderBy ListOffersRequestOrderBy `json:"-"`

	// CommercialRange: filter on commercial range.
	CommercialRange *string `json:"-"`

	// Catalog: filter on catalog.
	// Default value: all
	Catalog OfferCatalog `json:"-"`

	// ProjectID: project ID.
	ProjectID *string `json:"-"`

	// IsFailoverIP: get the current failover IP offer.
	IsFailoverIP *bool `json:"-"`

	// IsFailoverBlock: get the current failover IP block offer.
	IsFailoverBlock *bool `json:"-"`

	// SoldIn: filter offers depending on their datacenter.
	SoldIn []string `json:"-"`

	// AvailableOnly: set this filter to true to only return available offers.
	AvailableOnly *bool `json:"-"`

	// IsRpnSan: get the RPN SAN offers.
	IsRpnSan *bool `json:"-"`
}

ListOffersRequest: list offers request.

type ListOffersRequestOrderBy

type ListOffersRequestOrderBy string

func (ListOffersRequestOrderBy) MarshalJSON

func (enum ListOffersRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListOffersRequestOrderBy) String

func (enum ListOffersRequestOrderBy) String() string

func (*ListOffersRequestOrderBy) UnmarshalJSON

func (enum *ListOffersRequestOrderBy) UnmarshalJSON(data []byte) error

type ListOffersResponse

type ListOffersResponse struct {
	// TotalCount: total count of matching offers.
	TotalCount uint32 `json:"total_count"`

	// Offers: offers that match filters.
	Offers []*Offer `json:"offers"`
}

ListOffersResponse: list offers response.

func (*ListOffersResponse) UnsafeAppend

func (r *ListOffersResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListOffersResponse) UnsafeGetTotalCount

func (r *ListOffersResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRefundsRequestOrderBy

type ListRefundsRequestOrderBy string

func (ListRefundsRequestOrderBy) MarshalJSON

func (enum ListRefundsRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRefundsRequestOrderBy) String

func (enum ListRefundsRequestOrderBy) String() string

func (*ListRefundsRequestOrderBy) UnmarshalJSON

func (enum *ListRefundsRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRefundsResponse

type ListRefundsResponse struct {
	TotalCount uint32 `json:"total_count"`

	Refunds []*RefundSummary `json:"refunds"`
}

ListRefundsResponse: list refunds response.

func (*ListRefundsResponse) UnsafeAppend

func (r *ListRefundsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRefundsResponse) UnsafeGetTotalCount

func (r *ListRefundsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnCapableSanServersRequestOrderBy

type ListRpnCapableSanServersRequestOrderBy string

func (ListRpnCapableSanServersRequestOrderBy) MarshalJSON

func (enum ListRpnCapableSanServersRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnCapableSanServersRequestOrderBy) String

func (*ListRpnCapableSanServersRequestOrderBy) UnmarshalJSON

func (enum *ListRpnCapableSanServersRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnCapableSanServersResponse

type ListRpnCapableSanServersResponse struct {
	// TotalCount: total count of rpn capable san servers.
	TotalCount uint32 `json:"total_count"`

	// SanServers: list of san servers.
	SanServers []*RpnSanServer `json:"san_servers"`
}

ListRpnCapableSanServersResponse: list rpn capable san servers response.

func (*ListRpnCapableSanServersResponse) UnsafeAppend

func (r *ListRpnCapableSanServersResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnCapableSanServersResponse) UnsafeGetTotalCount

func (r *ListRpnCapableSanServersResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnCapableServersRequestOrderBy

type ListRpnCapableServersRequestOrderBy string

func (ListRpnCapableServersRequestOrderBy) MarshalJSON

func (enum ListRpnCapableServersRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnCapableServersRequestOrderBy) String

func (*ListRpnCapableServersRequestOrderBy) UnmarshalJSON

func (enum *ListRpnCapableServersRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnCapableServersResponse

type ListRpnCapableServersResponse struct {
	// TotalCount: total count of rpn capable servers.
	TotalCount uint32 `json:"total_count"`

	// Servers: list of servers.
	Servers []*Server `json:"servers"`
}

ListRpnCapableServersResponse: list rpn capable servers response.

func (*ListRpnCapableServersResponse) UnsafeAppend

func (r *ListRpnCapableServersResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnCapableServersResponse) UnsafeGetTotalCount

func (r *ListRpnCapableServersResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnGroupMembersRequestOrderBy

type ListRpnGroupMembersRequestOrderBy string

func (ListRpnGroupMembersRequestOrderBy) MarshalJSON

func (enum ListRpnGroupMembersRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnGroupMembersRequestOrderBy) String

func (*ListRpnGroupMembersRequestOrderBy) UnmarshalJSON

func (enum *ListRpnGroupMembersRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnGroupMembersResponse

type ListRpnGroupMembersResponse struct {
	// TotalCount: total count of rpn v1 group members.
	TotalCount uint32 `json:"total_count"`

	// Members: list of rpn v1 group members.
	Members []*RpnGroupMember `json:"members"`
}

ListRpnGroupMembersResponse: list rpn group members response.

func (*ListRpnGroupMembersResponse) UnsafeAppend

func (r *ListRpnGroupMembersResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnGroupMembersResponse) UnsafeGetTotalCount

func (r *ListRpnGroupMembersResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnGroupsRequestOrderBy

type ListRpnGroupsRequestOrderBy string

func (ListRpnGroupsRequestOrderBy) MarshalJSON

func (enum ListRpnGroupsRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnGroupsRequestOrderBy) String

func (enum ListRpnGroupsRequestOrderBy) String() string

func (*ListRpnGroupsRequestOrderBy) UnmarshalJSON

func (enum *ListRpnGroupsRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnGroupsResponse

type ListRpnGroupsResponse struct {
	// TotalCount: total count of rpn groups.
	TotalCount uint32 `json:"total_count"`

	// RpnGroups: list of rpn v1 groups.
	RpnGroups []*RpnGroup `json:"rpn_groups"`
}

ListRpnGroupsResponse: list rpn groups response.

func (*ListRpnGroupsResponse) UnsafeAppend

func (r *ListRpnGroupsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnGroupsResponse) UnsafeGetTotalCount

func (r *ListRpnGroupsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnInvitesRequestOrderBy

type ListRpnInvitesRequestOrderBy string

func (ListRpnInvitesRequestOrderBy) MarshalJSON

func (enum ListRpnInvitesRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnInvitesRequestOrderBy) String

func (enum ListRpnInvitesRequestOrderBy) String() string

func (*ListRpnInvitesRequestOrderBy) UnmarshalJSON

func (enum *ListRpnInvitesRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnInvitesResponse

type ListRpnInvitesResponse struct {
	// TotalCount: total count of invites.
	TotalCount uint32 `json:"total_count"`

	// Members: list of invites.
	Members []*RpnGroupMember `json:"members"`
}

ListRpnInvitesResponse: list rpn invites response.

func (*ListRpnInvitesResponse) UnsafeAppend

func (r *ListRpnInvitesResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnInvitesResponse) UnsafeGetTotalCount

func (r *ListRpnInvitesResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnSansRequestOrderBy

type ListRpnSansRequestOrderBy string

func (ListRpnSansRequestOrderBy) MarshalJSON

func (enum ListRpnSansRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnSansRequestOrderBy) String

func (enum ListRpnSansRequestOrderBy) String() string

func (*ListRpnSansRequestOrderBy) UnmarshalJSON

func (enum *ListRpnSansRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnSansResponse

type ListRpnSansResponse struct {
	// TotalCount: total count of matching RPN SANs.
	TotalCount uint32 `json:"total_count"`

	// RpnSans: list of RPN SANs that match filters.
	RpnSans []*RpnSanSummary `json:"rpn_sans"`
}

ListRpnSansResponse: list rpn sans response.

func (*ListRpnSansResponse) UnsafeAppend

func (r *ListRpnSansResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnSansResponse) UnsafeGetTotalCount

func (r *ListRpnSansResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnServerCapabilitiesRequestOrderBy

type ListRpnServerCapabilitiesRequestOrderBy string

func (ListRpnServerCapabilitiesRequestOrderBy) MarshalJSON

func (enum ListRpnServerCapabilitiesRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnServerCapabilitiesRequestOrderBy) String

func (*ListRpnServerCapabilitiesRequestOrderBy) UnmarshalJSON

func (enum *ListRpnServerCapabilitiesRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnServerCapabilitiesResponse

type ListRpnServerCapabilitiesResponse struct {
	// TotalCount: total count of servers.
	TotalCount uint32 `json:"total_count"`

	// Servers: list of servers and their RPN capabilities.
	Servers []*RpnServerCapability `json:"servers"`
}

ListRpnServerCapabilitiesResponse: list rpn server capabilities response.

func (*ListRpnServerCapabilitiesResponse) UnsafeAppend

func (r *ListRpnServerCapabilitiesResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnServerCapabilitiesResponse) UnsafeGetTotalCount

func (r *ListRpnServerCapabilitiesResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnV2CapableResourcesRequestOrderBy

type ListRpnV2CapableResourcesRequestOrderBy string

func (ListRpnV2CapableResourcesRequestOrderBy) MarshalJSON

func (enum ListRpnV2CapableResourcesRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnV2CapableResourcesRequestOrderBy) String

func (*ListRpnV2CapableResourcesRequestOrderBy) UnmarshalJSON

func (enum *ListRpnV2CapableResourcesRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnV2CapableResourcesResponse

type ListRpnV2CapableResourcesResponse struct {
	// TotalCount: total count of matching rpn v2 capable resources.
	TotalCount uint32 `json:"total_count"`

	// Servers: list of rpn v2 capable resources that match filters.
	Servers []*Server `json:"servers"`
}

ListRpnV2CapableResourcesResponse: list rpn v2 capable resources response.

func (*ListRpnV2CapableResourcesResponse) UnsafeAppend

func (r *ListRpnV2CapableResourcesResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnV2CapableResourcesResponse) UnsafeGetTotalCount

func (r *ListRpnV2CapableResourcesResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnV2GroupLogsRequestOrderBy

type ListRpnV2GroupLogsRequestOrderBy string

func (ListRpnV2GroupLogsRequestOrderBy) MarshalJSON

func (enum ListRpnV2GroupLogsRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnV2GroupLogsRequestOrderBy) String

func (*ListRpnV2GroupLogsRequestOrderBy) UnmarshalJSON

func (enum *ListRpnV2GroupLogsRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnV2GroupLogsResponse

type ListRpnV2GroupLogsResponse struct {
	// TotalCount: total count of matching rpn v2 logs.
	TotalCount uint32 `json:"total_count"`

	// Logs: list of rpn v2 logs that match filters.
	Logs []*Log `json:"logs"`
}

ListRpnV2GroupLogsResponse: list rpn v2 group logs response.

func (*ListRpnV2GroupLogsResponse) UnsafeAppend

func (r *ListRpnV2GroupLogsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnV2GroupLogsResponse) UnsafeGetTotalCount

func (r *ListRpnV2GroupLogsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnV2GroupsRequestOrderBy

type ListRpnV2GroupsRequestOrderBy string

func (ListRpnV2GroupsRequestOrderBy) MarshalJSON

func (enum ListRpnV2GroupsRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnV2GroupsRequestOrderBy) String

func (enum ListRpnV2GroupsRequestOrderBy) String() string

func (*ListRpnV2GroupsRequestOrderBy) UnmarshalJSON

func (enum *ListRpnV2GroupsRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnV2GroupsResponse

type ListRpnV2GroupsResponse struct {
	// TotalCount: total count of matching rpn v2 groups.
	TotalCount uint32 `json:"total_count"`

	// RpnGroups: list of rpn v2 groups that match filters.
	RpnGroups []*RpnV2Group `json:"rpn_groups"`
}

ListRpnV2GroupsResponse: list rpn v2 groups response.

func (*ListRpnV2GroupsResponse) UnsafeAppend

func (r *ListRpnV2GroupsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnV2GroupsResponse) UnsafeGetTotalCount

func (r *ListRpnV2GroupsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListRpnV2MembersRequestOrderBy

type ListRpnV2MembersRequestOrderBy string

func (ListRpnV2MembersRequestOrderBy) MarshalJSON

func (enum ListRpnV2MembersRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListRpnV2MembersRequestOrderBy) String

func (enum ListRpnV2MembersRequestOrderBy) String() string

func (*ListRpnV2MembersRequestOrderBy) UnmarshalJSON

func (enum *ListRpnV2MembersRequestOrderBy) UnmarshalJSON(data []byte) error

type ListRpnV2MembersRequestType

type ListRpnV2MembersRequestType string

func (ListRpnV2MembersRequestType) MarshalJSON

func (enum ListRpnV2MembersRequestType) MarshalJSON() ([]byte, error)

func (ListRpnV2MembersRequestType) String

func (enum ListRpnV2MembersRequestType) String() string

func (*ListRpnV2MembersRequestType) UnmarshalJSON

func (enum *ListRpnV2MembersRequestType) UnmarshalJSON(data []byte) error

type ListRpnV2MembersResponse

type ListRpnV2MembersResponse struct {
	// TotalCount: total count of matching rpn v2 group members.
	TotalCount uint32 `json:"total_count"`

	// Members: list of rpn v2 group members that match filters.
	Members []*RpnV2Member `json:"members"`
}

ListRpnV2MembersResponse: list rpn v2 members response.

func (*ListRpnV2MembersResponse) UnsafeAppend

func (r *ListRpnV2MembersResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListRpnV2MembersResponse) UnsafeGetTotalCount

func (r *ListRpnV2MembersResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListServerDisksRequest

type ListServerDisksRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the server disks.
	ServerID uint64 `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of server disk per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the server disks.
	// Default value: created_at_asc
	OrderBy ListServerDisksRequestOrderBy `json:"-"`
}

ListServerDisksRequest: list server disks request.

type ListServerDisksRequestOrderBy

type ListServerDisksRequestOrderBy string

func (ListServerDisksRequestOrderBy) MarshalJSON

func (enum ListServerDisksRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListServerDisksRequestOrderBy) String

func (enum ListServerDisksRequestOrderBy) String() string

func (*ListServerDisksRequestOrderBy) UnmarshalJSON

func (enum *ListServerDisksRequestOrderBy) UnmarshalJSON(data []byte) error

type ListServerDisksResponse

type ListServerDisksResponse struct {
	// TotalCount: total count of matching server disks.
	TotalCount uint32 `json:"total_count"`

	// Disks: server disks that match filters.
	Disks []*ServerDisk `json:"disks"`
}

ListServerDisksResponse: list server disks response.

func (*ListServerDisksResponse) UnsafeAppend

func (r *ListServerDisksResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListServerDisksResponse) UnsafeGetTotalCount

func (r *ListServerDisksResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListServerEventsRequest

type ListServerEventsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the server events.
	ServerID uint64 `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of server event per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the server events.
	// Default value: created_at_asc
	OrderBy ListServerEventsRequestOrderBy `json:"-"`
}

ListServerEventsRequest: list server events request.

type ListServerEventsRequestOrderBy

type ListServerEventsRequestOrderBy string

func (ListServerEventsRequestOrderBy) MarshalJSON

func (enum ListServerEventsRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListServerEventsRequestOrderBy) String

func (enum ListServerEventsRequestOrderBy) String() string

func (*ListServerEventsRequestOrderBy) UnmarshalJSON

func (enum *ListServerEventsRequestOrderBy) UnmarshalJSON(data []byte) error

type ListServerEventsResponse

type ListServerEventsResponse struct {
	// TotalCount: total count of matching server events.
	TotalCount uint32 `json:"total_count"`

	// Events: server events that match filters.
	Events []*ServerEvent `json:"events"`
}

ListServerEventsResponse: list server events response.

func (*ListServerEventsResponse) UnsafeAppend

func (r *ListServerEventsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListServerEventsResponse) UnsafeGetTotalCount

func (r *ListServerEventsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListServersRequest

type ListServersRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of server per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the servers.
	// Default value: created_at_asc
	OrderBy ListServersRequestOrderBy `json:"-"`

	// ProjectID: filter servers by project ID.
	ProjectID *string `json:"-"`

	// Search: filter servers by hostname.
	Search *string `json:"-"`
}

ListServersRequest: list servers request.

type ListServersRequestOrderBy

type ListServersRequestOrderBy string

func (ListServersRequestOrderBy) MarshalJSON

func (enum ListServersRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListServersRequestOrderBy) String

func (enum ListServersRequestOrderBy) String() string

func (*ListServersRequestOrderBy) UnmarshalJSON

func (enum *ListServersRequestOrderBy) UnmarshalJSON(data []byte) error

type ListServersResponse

type ListServersResponse struct {
	// TotalCount: total count of matching servers.
	TotalCount uint32 `json:"total_count"`

	// Servers: servers that match filters.
	Servers []*ServerSummary `json:"servers"`
}

ListServersResponse: list servers response.

func (*ListServersResponse) UnsafeAppend

func (r *ListServersResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListServersResponse) UnsafeGetTotalCount

func (r *ListServersResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListServicesRequest

type ListServicesRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of service per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the services.
	// Default value: created_at_asc
	OrderBy ListServicesRequestOrderBy `json:"-"`

	// ProjectID: project ID.
	ProjectID *string `json:"-"`
}

ListServicesRequest: list services request.

type ListServicesRequestOrderBy

type ListServicesRequestOrderBy string

func (ListServicesRequestOrderBy) MarshalJSON

func (enum ListServicesRequestOrderBy) MarshalJSON() ([]byte, error)

func (ListServicesRequestOrderBy) String

func (enum ListServicesRequestOrderBy) String() string

func (*ListServicesRequestOrderBy) UnmarshalJSON

func (enum *ListServicesRequestOrderBy) UnmarshalJSON(data []byte) error

type ListServicesResponse

type ListServicesResponse struct {
	// TotalCount: total count of matching services.
	TotalCount uint32 `json:"total_count"`

	// Services: services that match filters.
	Services []*Service `json:"services"`
}

ListServicesResponse: list services response.

func (*ListServicesResponse) UnsafeAppend

func (r *ListServicesResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListServicesResponse) UnsafeGetTotalCount

func (r *ListServicesResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListSubscribableServerOptionsRequest

type ListSubscribableServerOptionsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the subscribable server options.
	ServerID uint64 `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of subscribable server option per page.
	PageSize *uint32 `json:"-"`
}

ListSubscribableServerOptionsRequest: list subscribable server options request.

type ListSubscribableServerOptionsResponse

type ListSubscribableServerOptionsResponse struct {
	// TotalCount: total count of matching subscribable server options.
	TotalCount uint32 `json:"total_count"`

	// ServerOptions: server options that match filters.
	ServerOptions []*Offer `json:"server_options"`
}

ListSubscribableServerOptionsResponse: list subscribable server options response.

func (*ListSubscribableServerOptionsResponse) UnsafeAppend

func (r *ListSubscribableServerOptionsResponse) UnsafeAppend(res interface{}) (uint32, error)

UnsafeAppend should not be used Internal usage only

func (*ListSubscribableServerOptionsResponse) UnsafeGetTotalCount

func (r *ListSubscribableServerOptionsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type Log

type Log struct {
	// ID: rPN V2 log ID.
	ID uint64 `json:"id"`

	// Group: rPN V2 group.
	Group *RpnV2Group `json:"group"`

	// Member: rPN V2 member (if appliable).
	Member *RpnV2Member `json:"member"`

	// Action: which action was performed.
	// Default value: unknown_log_action
	Action LogAction `json:"action"`

	// Status: action status.
	// Default value: unknown_log_status
	Status LogStatus `json:"status"`

	// CreatedAt: creation date.
	CreatedAt *time.Time `json:"created_at"`

	// FinishedAt: completion date.
	FinishedAt *time.Time `json:"finished_at"`
}

Log: log.

type LogAction

type LogAction string

func (LogAction) MarshalJSON

func (enum LogAction) MarshalJSON() ([]byte, error)

func (LogAction) String

func (enum LogAction) String() string

func (*LogAction) UnmarshalJSON

func (enum *LogAction) UnmarshalJSON(data []byte) error

type LogStatus

type LogStatus string

func (LogStatus) MarshalJSON

func (enum LogStatus) MarshalJSON() ([]byte, error)

func (LogStatus) String

func (enum LogStatus) String() string

func (*LogStatus) UnmarshalJSON

func (enum *LogStatus) UnmarshalJSON(data []byte) error

type Memory

type Memory struct {
	// Capacity: capacity of the memory.
	Capacity scw.Size `json:"capacity"`

	// Type: type of the memory.
	// Default value: ddr2
	Type MemoryType `json:"type"`

	// Frequency: frequency of the memory.
	Frequency uint32 `json:"frequency"`

	// IsEcc: true if the memory is an error-correcting code memory.
	IsEcc bool `json:"is_ecc"`
}

Memory: memory.

type MemoryType

type MemoryType string

func (MemoryType) MarshalJSON

func (enum MemoryType) MarshalJSON() ([]byte, error)

func (MemoryType) String

func (enum MemoryType) String() string

func (*MemoryType) UnmarshalJSON

func (enum *MemoryType) UnmarshalJSON(data []byte) error

type NetworkInterface

type NetworkInterface struct {
	// CardID: card ID of the network interface.
	CardID uint64 `json:"card_id"`

	// DeviceID: device ID of the network interface.
	DeviceID uint64 `json:"device_id"`

	// Mac: mAC address of the network interface.
	Mac string `json:"mac"`

	// Type: network interface type.
	// Default value: unknown
	Type NetworkInterfaceInterfaceType `json:"type"`

	// IPs: iPs of the network interface.
	IPs []*IP `json:"ips"`
}

NetworkInterface: network interface.

type NetworkInterfaceInterfaceType

type NetworkInterfaceInterfaceType string

func (NetworkInterfaceInterfaceType) MarshalJSON

func (enum NetworkInterfaceInterfaceType) MarshalJSON() ([]byte, error)

func (NetworkInterfaceInterfaceType) String

func (enum NetworkInterfaceInterfaceType) String() string

func (*NetworkInterfaceInterfaceType) UnmarshalJSON

func (enum *NetworkInterfaceInterfaceType) UnmarshalJSON(data []byte) error

type OS

type OS struct {
	// ID: ID of the OS.
	ID uint64 `json:"id"`

	// Name: name of the OS.
	Name string `json:"name"`

	// Type: type of the OS.
	// Default value: unknown_type
	Type OSType `json:"type"`

	// Version: version of the OS.
	Version string `json:"version"`

	// Arch: architecture of the OS.
	// Default value: unknown_arch
	Arch OSArch `json:"arch"`

	// AllowCustomPartitioning: true if the OS allow custom partitioning.
	AllowCustomPartitioning bool `json:"allow_custom_partitioning"`

	// AllowSSHKeys: true if the OS allow SSH Keys.
	AllowSSHKeys bool `json:"allow_ssh_keys"`

	// RequiresUser: true if the OS requires user.
	RequiresUser bool `json:"requires_user"`

	// RequiresAdminPassword: true if the OS requires admin password.
	RequiresAdminPassword bool `json:"requires_admin_password"`

	// RequiresPanelPassword: true if the OS requires panel password.
	RequiresPanelPassword bool `json:"requires_panel_password"`

	// AllowedFilesystems: true if the OS allow file systems.
	AllowedFilesystems []PartitionFileSystem `json:"allowed_filesystems"`

	// RequiresLicense: true if the OS requires license.
	RequiresLicense bool `json:"requires_license"`

	// LicenseOffers: license offers available with the OS.
	LicenseOffers []*Offer `json:"license_offers"`

	// MaxPartitions: maximum number of partitions which can be created.
	MaxPartitions *uint32 `json:"max_partitions"`

	// DisplayName: display name of the OS.
	DisplayName string `json:"display_name"`

	// PasswordRegex: regex used to validate the installation passwords.
	PasswordRegex string `json:"password_regex"`

	// PanelPasswordRegex: regex used to validate the panel installation password.
	PanelPasswordRegex *string `json:"panel_password_regex"`

	// RequiresValidHostname: if both requires_valid_hostname & hostname_regex are set, it means that at least one of the criterias must be valid.
	RequiresValidHostname *bool `json:"requires_valid_hostname"`

	// HostnameRegex: if both requires_valid_hostname & hostname_regex are set, it means that at least one of the criterias must be valid.
	HostnameRegex *string `json:"hostname_regex"`

	// HostnameMaxLength: hostname max length.
	HostnameMaxLength uint32 `json:"hostname_max_length"`

	// ReleasedAt: oS release date.
	ReleasedAt *time.Time `json:"released_at"`
}

OS: os.

type OSArch

type OSArch string

func (OSArch) MarshalJSON

func (enum OSArch) MarshalJSON() ([]byte, error)

func (OSArch) String

func (enum OSArch) String() string

func (*OSArch) UnmarshalJSON

func (enum *OSArch) UnmarshalJSON(data []byte) error

type OSType

type OSType string

func (OSType) MarshalJSON

func (enum OSType) MarshalJSON() ([]byte, error)

func (OSType) String

func (enum OSType) String() string

func (*OSType) UnmarshalJSON

func (enum *OSType) UnmarshalJSON(data []byte) error

type Offer

type Offer struct {
	// ID: ID of the offer.
	ID uint64 `json:"id"`

	// Name: name of the offer.
	Name string `json:"name"`

	// Catalog: catalog of the offer.
	// Default value: all
	Catalog OfferCatalog `json:"catalog"`

	// PaymentFrequency: payment frequency of the offer.
	// Default value: monthly
	PaymentFrequency OfferPaymentFrequency `json:"payment_frequency"`

	// Pricing: price of the offer.
	Pricing *scw.Money `json:"pricing"`

	// ServerInfo: server info if it is a server offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	ServerInfo *OfferServerInfo `json:"server_info,omitempty"`

	// ServiceLevelInfo: service level info if it is a service level offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	ServiceLevelInfo *OfferServiceLevelInfo `json:"service_level_info,omitempty"`

	// RpnInfo: rPN info if it is a RPN offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	RpnInfo *OfferRPNInfo `json:"rpn_info,omitempty"`

	// SanInfo: sAN info if it is a SAN offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	SanInfo *OfferSANInfo `json:"san_info,omitempty"`

	// AntidosInfo: antiDOS info if it is a antiDOS offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	AntidosInfo *OfferAntiDosInfo `json:"antidos_info,omitempty"`

	// BackupInfo: backup info if it is a backup offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	BackupInfo *OfferBackupInfo `json:"backup_info,omitempty"`

	// UsbStorageInfo: uSB storage info if it is a USB storage offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	UsbStorageInfo *OfferStorageInfo `json:"usb_storage_info,omitempty"`

	// StorageInfo: storage info if it is a storage offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	StorageInfo *OfferStorageInfo `json:"storage_info,omitempty"`

	// LicenseInfo: license info if it is a license offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	LicenseInfo *OfferLicenseInfo `json:"license_info,omitempty"`

	// FailoverIPInfo: failover IP info if it is a failover IP offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	FailoverIPInfo *OfferFailoverIPInfo `json:"failover_ip_info,omitempty"`

	// FailoverBlockInfo: failover block info if it is a failover block offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	FailoverBlockInfo *OfferFailoverBlockInfo `json:"failover_block_info,omitempty"`

	// BandwidthInfo: bandwidth info if it is a bandwidth offer.
	// Precisely one of ServerInfo, ServiceLevelInfo, RpnInfo, SanInfo, AntidosInfo, BackupInfo, UsbStorageInfo, StorageInfo, LicenseInfo, FailoverIPInfo, FailoverBlockInfo, BandwidthInfo must be set.
	BandwidthInfo *OfferBandwidthInfo `json:"bandwidth_info,omitempty"`
}

Offer: offer.

type OfferAntiDosInfo

type OfferAntiDosInfo struct {
	// Type: default value: minimal
	Type OfferAntiDosInfoType `json:"type"`
}

OfferAntiDosInfo: offer anti dos info.

type OfferAntiDosInfoType

type OfferAntiDosInfoType string

func (OfferAntiDosInfoType) MarshalJSON

func (enum OfferAntiDosInfoType) MarshalJSON() ([]byte, error)

func (OfferAntiDosInfoType) String

func (enum OfferAntiDosInfoType) String() string

func (*OfferAntiDosInfoType) UnmarshalJSON

func (enum *OfferAntiDosInfoType) UnmarshalJSON(data []byte) error

type OfferBackupInfo

type OfferBackupInfo struct {
	Size scw.Size `json:"size"`
}

OfferBackupInfo: offer backup info.

type OfferBandwidthInfo

type OfferBandwidthInfo struct {
	Speed uint32 `json:"speed"`
}

OfferBandwidthInfo: offer bandwidth info.

type OfferCatalog

type OfferCatalog string

func (OfferCatalog) MarshalJSON

func (enum OfferCatalog) MarshalJSON() ([]byte, error)

func (OfferCatalog) String

func (enum OfferCatalog) String() string

func (*OfferCatalog) UnmarshalJSON

func (enum *OfferCatalog) UnmarshalJSON(data []byte) error

type OfferFailoverBlockInfo

type OfferFailoverBlockInfo struct {
	OnetimeFees *Offer `json:"onetime_fees"`
}

OfferFailoverBlockInfo: offer failover block info.

type OfferFailoverIPInfo

type OfferFailoverIPInfo struct {
	OnetimeFees *Offer `json:"onetime_fees"`
}

OfferFailoverIPInfo: offer failover ip info.

type OfferLicenseInfo

type OfferLicenseInfo struct {
	BoundToIP bool `json:"bound_to_ip"`
}

OfferLicenseInfo: offer license info.

type OfferPaymentFrequency

type OfferPaymentFrequency string

func (OfferPaymentFrequency) MarshalJSON

func (enum OfferPaymentFrequency) MarshalJSON() ([]byte, error)

func (OfferPaymentFrequency) String

func (enum OfferPaymentFrequency) String() string

func (*OfferPaymentFrequency) UnmarshalJSON

func (enum *OfferPaymentFrequency) UnmarshalJSON(data []byte) error

type OfferRPNInfo

type OfferRPNInfo struct {
	Speed uint32 `json:"speed"`
}

OfferRPNInfo: offer rpn info.

type OfferSANInfo

type OfferSANInfo struct {
	// Size: sAN size (in bytes).
	Size uint64 `json:"size"`

	// Ha: high availabilty offer.
	Ha bool `json:"ha"`

	// DeviceType: type of SAN device (hdd / ssd).
	// Default value: hdd
	DeviceType OfferSANInfoType `json:"device_type"`
}

OfferSANInfo: offer san info.

type OfferSANInfoType

type OfferSANInfoType string

func (OfferSANInfoType) MarshalJSON

func (enum OfferSANInfoType) MarshalJSON() ([]byte, error)

func (OfferSANInfoType) String

func (enum OfferSANInfoType) String() string

func (*OfferSANInfoType) UnmarshalJSON

func (enum *OfferSANInfoType) UnmarshalJSON(data []byte) error

type OfferServerInfo

type OfferServerInfo struct {
	Bandwidth uint64 `json:"bandwidth"`

	// Stock: default value: empty
	Stock OfferServerInfoStock `json:"stock"`

	CommercialRange string `json:"commercial_range"`

	Disks []*Disk `json:"disks"`

	CPUs []*CPU `json:"cpus"`

	Memories []*Memory `json:"memories"`

	PersistentMemories []*PersistentMemory `json:"persistent_memories"`

	RaidControllers []*RaidController `json:"raid_controllers"`

	AvailableOptions []*Offer `json:"available_options"`

	RpnVersion *uint32 `json:"rpn_version"`

	Connectivity uint64 `json:"connectivity"`

	OnetimeFees *Offer `json:"onetime_fees"`

	StockByDatacenter map[string]OfferServerInfoStock `json:"stock_by_datacenter"`
}

OfferServerInfo: offer server info.

type OfferServerInfoStock

type OfferServerInfoStock string

func (OfferServerInfoStock) MarshalJSON

func (enum OfferServerInfoStock) MarshalJSON() ([]byte, error)

func (OfferServerInfoStock) String

func (enum OfferServerInfoStock) String() string

func (*OfferServerInfoStock) UnmarshalJSON

func (enum *OfferServerInfoStock) UnmarshalJSON(data []byte) error

type OfferServiceLevelInfo

type OfferServiceLevelInfo struct {
	SupportTicket bool `json:"support_ticket"`

	SupportPhone bool `json:"support_phone"`

	SalesSupport bool `json:"sales_support"`

	Git string `json:"git"`

	SLA float32 `json:"sla"`

	PrioritySupport bool `json:"priority_support"`

	HighRpnBandwidth bool `json:"high_rpn_bandwidth"`

	Customization bool `json:"customization"`

	Antidos bool `json:"antidos"`

	ExtraFailoverQuota uint32 `json:"extra_failover_quota"`

	AvailableOptions []*Offer `json:"available_options"`
}

OfferServiceLevelInfo: offer service level info.

type OfferStorageInfo

type OfferStorageInfo struct {
	MaxQuota uint32 `json:"max_quota"`

	Size scw.Size `json:"size"`
}

OfferStorageInfo: offer storage info.

type Partition

type Partition struct {
	// Type: type of the partition.
	// Default value: primary
	Type PartitionType `json:"type"`

	// FileSystem: file system of the partition.
	// Default value: unknown
	FileSystem PartitionFileSystem `json:"file_system"`

	// MountPoint: mount point of the partition.
	MountPoint *string `json:"mount_point"`

	// RaidLevel: raid level of the partition.
	// Default value: no_raid
	RaidLevel RaidArrayRaidLevel `json:"raid_level"`

	// Capacity: capacity of the partition.
	Capacity scw.Size `json:"capacity"`

	// Connectors: connectors of the partition.
	Connectors []string `json:"connectors"`
}

Partition: partition.

type PartitionFileSystem

type PartitionFileSystem string

func (PartitionFileSystem) MarshalJSON

func (enum PartitionFileSystem) MarshalJSON() ([]byte, error)

func (PartitionFileSystem) String

func (enum PartitionFileSystem) String() string

func (*PartitionFileSystem) UnmarshalJSON

func (enum *PartitionFileSystem) UnmarshalJSON(data []byte) error

type PartitionType

type PartitionType string

func (PartitionType) MarshalJSON

func (enum PartitionType) MarshalJSON() ([]byte, error)

func (PartitionType) String

func (enum PartitionType) String() string

func (*PartitionType) UnmarshalJSON

func (enum *PartitionType) UnmarshalJSON(data []byte) error

type PersistentMemory

type PersistentMemory struct {
	// Capacity: capacity of the persistent memory.
	Capacity scw.Size `json:"capacity"`

	// Frequency: frequency of the persistent memory.
	Frequency uint32 `json:"frequency"`

	// Model: model of the persistent memory.
	Model string `json:"model"`
}

PersistentMemory: persistent memory.

type Raid

type Raid struct {
	// RaidArrays: details about the RAID controller.
	RaidArrays []*RaidArray `json:"raid_arrays"`
}

Raid: raid.

type RaidArray

type RaidArray struct {
	// RaidLevel: the RAID level.
	// Default value: no_raid
	RaidLevel RaidArrayRaidLevel `json:"raid_level"`

	// Disks: disks on the RAID controller.
	Disks []*ServerDisk `json:"disks"`
}

RaidArray: raid array.

type RaidArrayRaidLevel

type RaidArrayRaidLevel string

func (RaidArrayRaidLevel) MarshalJSON

func (enum RaidArrayRaidLevel) MarshalJSON() ([]byte, error)

func (RaidArrayRaidLevel) String

func (enum RaidArrayRaidLevel) String() string

func (*RaidArrayRaidLevel) UnmarshalJSON

func (enum *RaidArrayRaidLevel) UnmarshalJSON(data []byte) error

type RaidController

type RaidController struct {
	// Model: model of the RAID controller.
	Model string `json:"model"`

	// RaidLevel: rAID level of the RAID controller.
	RaidLevel []string `json:"raid_level"`
}

RaidController: raid controller.

type RebootServerRequest

type RebootServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to reboot.
	ServerID uint64 `json:"-"`
}

RebootServerRequest: reboot server request.

type Refund

type Refund struct {
	ID uint64 `json:"id"`

	TotalWithTaxes *scw.Money `json:"total_with_taxes"`

	TotalWithoutTaxes *scw.Money `json:"total_without_taxes"`

	CreatedAt *time.Time `json:"created_at"`

	RefundedAt *time.Time `json:"refunded_at"`

	// Status: default value: unknown_refund_status
	Status RefundStatus `json:"status"`

	// Method: default value: unknown_refund_method
	Method RefundMethod `json:"method"`

	Content string `json:"content"`
}

Refund: refund.

type RefundMethod

type RefundMethod string

func (RefundMethod) MarshalJSON

func (enum RefundMethod) MarshalJSON() ([]byte, error)

func (RefundMethod) String

func (enum RefundMethod) String() string

func (*RefundMethod) UnmarshalJSON

func (enum *RefundMethod) UnmarshalJSON(data []byte) error

type RefundStatus

type RefundStatus string

func (RefundStatus) MarshalJSON

func (enum RefundStatus) MarshalJSON() ([]byte, error)

func (RefundStatus) String

func (enum RefundStatus) String() string

func (*RefundStatus) UnmarshalJSON

func (enum *RefundStatus) UnmarshalJSON(data []byte) error

type RefundSummary

type RefundSummary struct {
	ID uint64 `json:"id"`

	TotalWithTaxes *scw.Money `json:"total_with_taxes"`

	TotalWithoutTaxes *scw.Money `json:"total_without_taxes"`

	CreatedAt *time.Time `json:"created_at"`

	RefundedAt *time.Time `json:"refunded_at"`

	// Status: default value: unknown_refund_status
	Status RefundStatus `json:"status"`

	// Method: default value: unknown_refund_method
	Method RefundMethod `json:"method"`
}

RefundSummary: refund summary.

type Rescue

type Rescue struct {
	// OsID: oS ID of the rescue.
	OsID uint64 `json:"os_id"`

	// Login: login of the rescue.
	Login string `json:"login"`

	// Password: password of the rescue.
	Password string `json:"password"`

	// Protocol: protocol of the resuce.
	// Default value: vnc
	Protocol RescueProtocol `json:"protocol"`
}

Rescue: rescue.

type RescueProtocol

type RescueProtocol string

func (RescueProtocol) MarshalJSON

func (enum RescueProtocol) MarshalJSON() ([]byte, error)

func (RescueProtocol) String

func (enum RescueProtocol) String() string

func (*RescueProtocol) UnmarshalJSON

func (enum *RescueProtocol) UnmarshalJSON(data []byte) error

type RpnAPI

type RpnAPI struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix RPN API.

func NewRpnAPI

func NewRpnAPI(client *scw.Client) *RpnAPI

NewRpnAPI returns a RpnAPI object from a Scaleway client.

func (*RpnAPI) GetRpnStatus

func (s *RpnAPI) GetRpnStatus(req *RpnAPIGetRpnStatusRequest, opts ...scw.RequestOption) (*GetRpnStatusResponse, error)

GetRpnStatus:

func (*RpnAPI) ListRpnServerCapabilities

ListRpnServerCapabilities:

type RpnAPIGetRpnStatusRequest

type RpnAPIGetRpnStatusRequest struct {
	// ProjectID: a project ID.
	ProjectID *string `json:"-"`

	// Rpnv1GroupID: an RPN v1 group ID.
	Rpnv1GroupID *uint64 `json:"-"`

	// Rpnv2GroupID: an RPN v2 group ID.
	Rpnv2GroupID *uint64 `json:"-"`
}

RpnAPIGetRpnStatusRequest: rpn api get rpn status request.

type RpnAPIListRpnServerCapabilitiesRequest

type RpnAPIListRpnServerCapabilitiesRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of servers per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the servers.
	// Default value: created_at_asc
	OrderBy ListRpnServerCapabilitiesRequestOrderBy `json:"-"`

	// ProjectID: filter servers by project ID.
	ProjectID *string `json:"-"`
}

RpnAPIListRpnServerCapabilitiesRequest: rpn api list rpn server capabilities request.

type RpnGroup

type RpnGroup struct {
	// ID: rpn group member ID.
	ID uint64 `json:"id"`

	// Name: rpn group name.
	Name string `json:"name"`

	// Type: rpn group type (local or shared).
	// Default value: unknown
	Type RpnGroupType `json:"type"`

	// Active: whether the group is active or not.
	Active bool `json:"active"`

	// CreatedAt: rpn group creation date.
	CreatedAt *time.Time `json:"created_at"`

	// Owner: rPN group owner.
	Owner string `json:"owner"`

	// MembersCount: total number of members.
	MembersCount uint32 `json:"members_count"`

	// OrganizationID: rpn group organization ID.
	OrganizationID string `json:"organization_id"`

	// ProjectID: rpn group project ID.
	ProjectID string `json:"project_id"`
}

RpnGroup: rpn group.

type RpnGroupMember

type RpnGroupMember struct {
	// ID: rpn group member ID.
	ID uint64 `json:"id"`

	// Status: rPN group member status.
	// Default value: unknown_rpn_member_status
	Status RpnGroupMemberStatus `json:"status"`

	// SanServer: authorized RPN SAN server.
	SanServer *RpnSanServer `json:"san_server"`

	// Server: authorized rpn v1 capable server.
	Server *Server `json:"server"`

	// GroupID: rPN group ID.
	GroupID uint64 `json:"group_id"`

	// GroupName: rPN group name.
	GroupName string `json:"group_name"`

	// GroupOwner: rPN group owner.
	GroupOwner string `json:"group_owner"`

	// Speed: rPN speed.
	Speed *uint32 `json:"speed"`

	// Owner: rPN member owner.
	Owner string `json:"owner"`
}

RpnGroupMember: rpn group member.

type RpnGroupMemberStatus

type RpnGroupMemberStatus string

func (RpnGroupMemberStatus) MarshalJSON

func (enum RpnGroupMemberStatus) MarshalJSON() ([]byte, error)

func (RpnGroupMemberStatus) String

func (enum RpnGroupMemberStatus) String() string

func (*RpnGroupMemberStatus) UnmarshalJSON

func (enum *RpnGroupMemberStatus) UnmarshalJSON(data []byte) error

type RpnGroupType

type RpnGroupType string

func (RpnGroupType) MarshalJSON

func (enum RpnGroupType) MarshalJSON() ([]byte, error)

func (RpnGroupType) String

func (enum RpnGroupType) String() string

func (*RpnGroupType) UnmarshalJSON

func (enum *RpnGroupType) UnmarshalJSON(data []byte) error

type RpnSan

type RpnSan struct {
	// ID: rPN SAN  ID.
	ID uint64 `json:"id"`

	// DatacenterName: datacenter location.
	DatacenterName string `json:"datacenter_name"`

	// OrganizationID: organization ID.
	OrganizationID string `json:"organization_id"`

	// ProjectID: project ID.
	ProjectID string `json:"project_id"`

	// ServerHostname: rPN SAN server hostname.
	ServerHostname string `json:"server_hostname"`

	// IqnSuffix: iQN suffix.
	IqnSuffix string `json:"iqn_suffix"`

	// CreatedAt: date of creation of the RPN SAN.
	CreatedAt *time.Time `json:"created_at"`

	// OfferID: offer ID.
	OfferID uint64 `json:"offer_id"`

	// OfferName: offer description.
	OfferName string `json:"offer_name"`

	// Status: status.
	// Default value: unknown_status
	Status RpnSanStatus `json:"status"`

	// StorageSize: rPN SAN storage size.
	StorageSize scw.Size `json:"storage_size"`

	Iqn string `json:"iqn"`

	Offer *Offer `json:"offer"`

	// Rpnv1Compatible: true if the SAN is compatible with the RPNv1 technology.
	Rpnv1Compatible bool `json:"rpnv1_compatible"`

	// Rpnv1Implicit: true if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1.
	Rpnv1Implicit bool `json:"rpnv1_implicit"`

	// DeliveredAt: rPN SAN delivery date.
	DeliveredAt *time.Time `json:"delivered_at"`

	// TerminatedAt: rPN SAN termination date.
	TerminatedAt *time.Time `json:"terminated_at"`

	// ExpiresAt: rPN SAN expiration date.
	ExpiresAt *time.Time `json:"expires_at"`
}

RpnSan: rpn san.

type RpnSanAPI

type RpnSanAPI struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix RPN SAN API.

func NewRpnSanAPI

func NewRpnSanAPI(client *scw.Client) *RpnSanAPI

NewRpnSanAPI returns a RpnSanAPI object from a Scaleway client.

func (*RpnSanAPI) AddIP

func (s *RpnSanAPI) AddIP(req *RpnSanAPIAddIPRequest, opts ...scw.RequestOption) error

AddIP:

func (*RpnSanAPI) CreateRpnSan

func (s *RpnSanAPI) CreateRpnSan(req *RpnSanAPICreateRpnSanRequest, opts ...scw.RequestOption) (*Service, error)

CreateRpnSan:

func (*RpnSanAPI) DeleteRpnSan

func (s *RpnSanAPI) DeleteRpnSan(req *RpnSanAPIDeleteRpnSanRequest, opts ...scw.RequestOption) error

DeleteRpnSan:

func (*RpnSanAPI) GetRpnSan

func (s *RpnSanAPI) GetRpnSan(req *RpnSanAPIGetRpnSanRequest, opts ...scw.RequestOption) (*RpnSan, error)

GetRpnSan:

func (*RpnSanAPI) ListAvailableIPs

func (s *RpnSanAPI) ListAvailableIPs(req *RpnSanAPIListAvailableIPsRequest, opts ...scw.RequestOption) (*ListIPsResponse, error)

ListAvailableIPs:

func (*RpnSanAPI) ListIPs

ListIPs:

func (*RpnSanAPI) ListRpnSans

ListRpnSans:

func (*RpnSanAPI) RemoveIP

func (s *RpnSanAPI) RemoveIP(req *RpnSanAPIRemoveIPRequest, opts ...scw.RequestOption) error

RemoveIP:

type RpnSanAPIAddIPRequest

type RpnSanAPIAddIPRequest struct {
	// RpnSanID: rPN SAN ID.
	RpnSanID uint64 `json:"-"`

	// IPIDs: an array of IP ID.
	IPIDs []uint64 `json:"ip_ids"`
}

RpnSanAPIAddIPRequest: rpn san api add ip request.

type RpnSanAPICreateRpnSanRequest

type RpnSanAPICreateRpnSanRequest struct {
	// OfferID: offer ID.
	OfferID uint64 `json:"offer_id"`

	// ProjectID: your project ID.
	ProjectID string `json:"project_id"`
}

RpnSanAPICreateRpnSanRequest: rpn san api create rpn san request.

type RpnSanAPIDeleteRpnSanRequest

type RpnSanAPIDeleteRpnSanRequest struct {
	// RpnSanID: rPN SAN ID.
	RpnSanID uint64 `json:"-"`
}

RpnSanAPIDeleteRpnSanRequest: rpn san api delete rpn san request.

type RpnSanAPIGetRpnSanRequest

type RpnSanAPIGetRpnSanRequest struct {
	// RpnSanID: rPN SAN ID.
	RpnSanID uint64 `json:"-"`
}

RpnSanAPIGetRpnSanRequest: rpn san api get rpn san request.

type RpnSanAPIListAvailableIPsRequest

type RpnSanAPIListAvailableIPsRequest struct {
	// RpnSanID: rPN SAN ID.
	RpnSanID uint64 `json:"-"`

	// Type: filter by IP type (server | rpnv2_subnet).
	// Default value: unknown
	Type RpnSanIPType `json:"-"`
}

RpnSanAPIListAvailableIPsRequest: rpn san api list available i ps request.

type RpnSanAPIListIPsRequest

type RpnSanAPIListIPsRequest struct {
	// RpnSanID: rPN SAN ID.
	RpnSanID uint64 `json:"-"`

	// Type: filter by IP type (server | rpnv2_subnet).
	// Default value: unknown
	Type RpnSanIPType `json:"-"`
}

RpnSanAPIListIPsRequest: rpn san api list i ps request.

type RpnSanAPIListRpnSansRequest

type RpnSanAPIListRpnSansRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of RPN SANs per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the RPN SANs.
	// Default value: created_at_asc
	OrderBy ListRpnSansRequestOrderBy `json:"-"`

	// ProjectID: filter RPN SANs by project ID.
	ProjectID *string `json:"-"`
}

RpnSanAPIListRpnSansRequest: rpn san api list rpn sans request.

type RpnSanAPIRemoveIPRequest

type RpnSanAPIRemoveIPRequest struct {
	// RpnSanID: rPN SAN ID.
	RpnSanID uint64 `json:"-"`

	// IPIDs: an array of IP ID.
	IPIDs []uint64 `json:"ip_ids"`
}

RpnSanAPIRemoveIPRequest: rpn san api remove ip request.

type RpnSanIP

type RpnSanIP struct {
	// Server: basic server information behind the IP.
	// Precisely one of Server, Rpnv2Group must be set.
	Server *RpnSanIPServer `json:"server,omitempty"`

	// Rpnv2Group: basic RPNv2 group information behind the IP.
	// Precisely one of Server, Rpnv2Group must be set.
	Rpnv2Group *RpnSanIPRpnV2Group `json:"rpnv2_group,omitempty"`

	// IP: an IP object.
	IP *IP `json:"ip"`

	// Type: IP type (server | rpnv2_subnet).
	// Default value: unknown
	Type RpnSanIPType `json:"type"`
}

RpnSanIP: rpn san ip.

type RpnSanIPRpnV2Group

type RpnSanIPRpnV2Group struct {
	ID uint64 `json:"id"`

	Name string `json:"name"`
}

RpnSanIPRpnV2Group: rpn san ip rpn v2 group.

type RpnSanIPServer

type RpnSanIPServer struct {
	ID uint64 `json:"id"`

	Hostname string `json:"hostname"`

	DatacenterName string `json:"datacenter_name"`
}

RpnSanIPServer: rpn san ip server.

type RpnSanIPType

type RpnSanIPType string

func (RpnSanIPType) MarshalJSON

func (enum RpnSanIPType) MarshalJSON() ([]byte, error)

func (RpnSanIPType) String

func (enum RpnSanIPType) String() string

func (*RpnSanIPType) UnmarshalJSON

func (enum *RpnSanIPType) UnmarshalJSON(data []byte) error

type RpnSanServer

type RpnSanServer struct {
	// ID: the RPN SAN server ID.
	ID uint64 `json:"id"`

	// DatacenterName: the RPN SAN server datacenter name.
	DatacenterName string `json:"datacenter_name"`

	// Hostname: the RPN SAN server hostname.
	Hostname string `json:"hostname"`

	// Sans: rPN SANs linked to the RPN SAN server.
	Sans []*RpnSan `json:"sans"`

	// Zone: the RPN SAN server zone.
	Zone scw.Zone `json:"zone"`
}

RpnSanServer: rpn san server.

type RpnSanStatus

type RpnSanStatus string

func (RpnSanStatus) MarshalJSON

func (enum RpnSanStatus) MarshalJSON() ([]byte, error)

func (RpnSanStatus) String

func (enum RpnSanStatus) String() string

func (*RpnSanStatus) UnmarshalJSON

func (enum *RpnSanStatus) UnmarshalJSON(data []byte) error

type RpnSanSummary

type RpnSanSummary struct {
	// ID: rPN SAN  ID.
	ID uint64 `json:"id"`

	// DatacenterName: datacenter location.
	DatacenterName string `json:"datacenter_name"`

	// OrganizationID: organization ID.
	OrganizationID string `json:"organization_id"`

	// ProjectID: project ID.
	ProjectID string `json:"project_id"`

	// ServerHostname: rPN SAN server hostname.
	ServerHostname string `json:"server_hostname"`

	// IqnSuffix: iQN suffix.
	IqnSuffix string `json:"iqn_suffix"`

	// CreatedAt: date of creation of the RPN SAN.
	CreatedAt *time.Time `json:"created_at"`

	// OfferID: offer ID.
	OfferID uint64 `json:"offer_id"`

	// OfferName: offer description.
	OfferName string `json:"offer_name"`

	// Status: status.
	// Default value: unknown_status
	Status RpnSanStatus `json:"status"`

	// StorageSize: rPN SAN storage size.
	StorageSize scw.Size `json:"storage_size"`

	// Rpnv1Compatible: true if the SAN is compatible with the RPNv1 technology.
	Rpnv1Compatible bool `json:"rpnv1_compatible"`

	// Rpnv1Implicit: true if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1.
	Rpnv1Implicit bool `json:"rpnv1_implicit"`

	// DeliveredAt: rPN SAN delivery date.
	DeliveredAt *time.Time `json:"delivered_at"`

	// TerminatedAt: rPN SAN termination date.
	TerminatedAt *time.Time `json:"terminated_at"`

	// ExpiresAt: rPN SAN expiration date.
	ExpiresAt *time.Time `json:"expires_at"`
}

RpnSanSummary: rpn san summary.

type RpnServerCapability

type RpnServerCapability struct {
	// ID: server ID.
	ID uint64 `json:"id"`

	// Hostname: server hostname.
	Hostname string `json:"hostname"`

	// DatacenterName: server datacenter name.
	DatacenterName string `json:"datacenter_name"`

	// Zone: server zone.
	Zone scw.Zone `json:"zone"`

	// IPAddress: private IP address (if rpn compatiblle).
	IPAddress *net.IP `json:"ip_address"`

	// RpnVersion: supported rpn version.
	RpnVersion *uint32 `json:"rpn_version"`

	// CompatibleQinq: true if server is compatible with QinQ protocol (rpn v2).
	CompatibleQinq bool `json:"compatible_qinq"`

	// CanJoinQinqGroup: true if server can join a QinQ group.
	CanJoinQinqGroup bool `json:"can_join_qinq_group"`

	// Rpnv1GroupCount: times server is linked in a rpnv1 group.
	Rpnv1GroupCount uint32 `json:"rpnv1_group_count"`

	// Rpnv2GroupCount: times server is linked in a rpnv2 group.
	Rpnv2GroupCount uint32 `json:"rpnv2_group_count"`

	// CanJoinRpnv2Group: true if server can join an rpnv2 group.
	CanJoinRpnv2Group bool `json:"can_join_rpnv2_group"`
}

RpnServerCapability: rpn server capability.

type RpnV1API

type RpnV1API struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix RPN v1 API.

func NewRpnV1API

func NewRpnV1API(client *scw.Client) *RpnV1API

NewRpnV1API returns a RpnV1API object from a Scaleway client.

func (*RpnV1API) AcceptRpnInvite

func (s *RpnV1API) AcceptRpnInvite(req *RpnV1ApiAcceptRpnInviteRequest, opts ...scw.RequestOption) error

AcceptRpnInvite:

func (*RpnV1API) AddRpnGroupMembers

func (s *RpnV1API) AddRpnGroupMembers(req *RpnV1ApiAddRpnGroupMembersRequest, opts ...scw.RequestOption) (*RpnGroup, error)

AddRpnGroupMembers:

func (*RpnV1API) CreateRpnGroup

func (s *RpnV1API) CreateRpnGroup(req *RpnV1ApiCreateRpnGroupRequest, opts ...scw.RequestOption) (*RpnGroup, error)

CreateRpnGroup:

func (*RpnV1API) DeleteRpnGroup

func (s *RpnV1API) DeleteRpnGroup(req *RpnV1ApiDeleteRpnGroupRequest, opts ...scw.RequestOption) error

DeleteRpnGroup:

func (*RpnV1API) DeleteRpnGroupMembers

func (s *RpnV1API) DeleteRpnGroupMembers(req *RpnV1ApiDeleteRpnGroupMembersRequest, opts ...scw.RequestOption) (*RpnGroup, error)

DeleteRpnGroupMembers:

func (*RpnV1API) GetRpnGroup

func (s *RpnV1API) GetRpnGroup(req *RpnV1ApiGetRpnGroupRequest, opts ...scw.RequestOption) (*RpnGroup, error)

GetRpnGroup:

func (*RpnV1API) LeaveRpnGroup

func (s *RpnV1API) LeaveRpnGroup(req *RpnV1ApiLeaveRpnGroupRequest, opts ...scw.RequestOption) error

LeaveRpnGroup:

func (*RpnV1API) ListRpnCapableSanServers

ListRpnCapableSanServers:

func (*RpnV1API) ListRpnCapableServers

ListRpnCapableServers:

func (*RpnV1API) ListRpnGroupMembers

ListRpnGroupMembers:

func (*RpnV1API) ListRpnGroups

ListRpnGroups:

func (*RpnV1API) ListRpnInvites

ListRpnInvites:

func (*RpnV1API) RefuseRpnInvite

func (s *RpnV1API) RefuseRpnInvite(req *RpnV1ApiRefuseRpnInviteRequest, opts ...scw.RequestOption) error

RefuseRpnInvite:

func (*RpnV1API) RpnGroupInvite

func (s *RpnV1API) RpnGroupInvite(req *RpnV1ApiRpnGroupInviteRequest, opts ...scw.RequestOption) error

RpnGroupInvite:

func (*RpnV1API) UpdateRpnGroupName

func (s *RpnV1API) UpdateRpnGroupName(req *RpnV1ApiUpdateRpnGroupNameRequest, opts ...scw.RequestOption) (*RpnGroup, error)

UpdateRpnGroupName:

type RpnV1ApiAcceptRpnInviteRequest

type RpnV1ApiAcceptRpnInviteRequest struct {
	// MemberID: the member ID.
	MemberID uint64 `json:"-"`
}

RpnV1ApiAcceptRpnInviteRequest: rpn v1 api accept rpn invite request.

type RpnV1ApiAddRpnGroupMembersRequest

type RpnV1ApiAddRpnGroupMembersRequest struct {
	// GroupID: the rpn v1 group ID.
	GroupID uint64 `json:"-"`

	// ServerIDs: a collection of rpn v1 capable server IDs.
	ServerIDs []uint64 `json:"server_ids"`

	// SanServerIDs: a collection of rpn v1 capable RPN SAN server IDs.
	SanServerIDs []uint64 `json:"san_server_ids"`
}

RpnV1ApiAddRpnGroupMembersRequest: rpn v1 api add rpn group members request.

type RpnV1ApiCreateRpnGroupRequest

type RpnV1ApiCreateRpnGroupRequest struct {
	// Name: rpn v1 group name.
	Name string `json:"name"`

	// ServerIDs: a collection of rpn v1 capable servers.
	ServerIDs []uint64 `json:"server_ids"`

	// SanServerIDs: a collection of rpn v1 capable rpn sans servers.
	SanServerIDs []uint64 `json:"san_server_ids"`

	// ProjectID: a project ID.
	ProjectID string `json:"project_id"`
}

RpnV1ApiCreateRpnGroupRequest: rpn v1 api create rpn group request.

type RpnV1ApiDeleteRpnGroupMembersRequest

type RpnV1ApiDeleteRpnGroupMembersRequest struct {
	// GroupID: the rpn v1 group ID.
	GroupID uint64 `json:"-"`

	// MemberIDs: a collection of rpn v1 group members IDs.
	MemberIDs []uint64 `json:"member_ids"`
}

RpnV1ApiDeleteRpnGroupMembersRequest: rpn v1 api delete rpn group members request.

type RpnV1ApiDeleteRpnGroupRequest

type RpnV1ApiDeleteRpnGroupRequest struct {
	// GroupID: rpn v1 group ID.
	GroupID uint64 `json:"-"`
}

RpnV1ApiDeleteRpnGroupRequest: rpn v1 api delete rpn group request.

type RpnV1ApiGetRpnGroupRequest

type RpnV1ApiGetRpnGroupRequest struct {
	// GroupID: rpn v1 group ID.
	GroupID uint64 `json:"-"`
}

RpnV1ApiGetRpnGroupRequest: rpn v1 api get rpn group request.

type RpnV1ApiLeaveRpnGroupRequest

type RpnV1ApiLeaveRpnGroupRequest struct {
	// GroupID: the RPN V1 group ID.
	GroupID uint64 `json:"-"`

	// ProjectID: a project ID.
	ProjectID string `json:"project_id"`

	// MemberIDs: a collection of rpn v1 group members IDs.
	MemberIDs []uint64 `json:"member_ids"`
}

RpnV1ApiLeaveRpnGroupRequest: rpn v1 api leave rpn group request.

type RpnV1ApiListRpnCapableSanServersRequest

type RpnV1ApiListRpnCapableSanServersRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn capable resources per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn capable resources.
	// Default value: created_at_asc
	OrderBy ListRpnCapableSanServersRequestOrderBy `json:"-"`

	// ProjectID: filter rpn capable resources by project ID.
	ProjectID *string `json:"-"`
}

RpnV1ApiListRpnCapableSanServersRequest: rpn v1 api list rpn capable san servers request.

type RpnV1ApiListRpnCapableServersRequest

type RpnV1ApiListRpnCapableServersRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn capable resources per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn capable resources.
	// Default value: created_at_asc
	OrderBy ListRpnCapableServersRequestOrderBy `json:"-"`

	// ProjectID: filter rpn capable resources by project ID.
	ProjectID *string `json:"-"`
}

RpnV1ApiListRpnCapableServersRequest: rpn v1 api list rpn capable servers request.

type RpnV1ApiListRpnGroupMembersRequest

type RpnV1ApiListRpnGroupMembersRequest struct {
	// GroupID: filter rpn v1 group members by group ID.
	GroupID uint64 `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn v1 group members per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn v1 group members.
	// Default value: created_at_asc
	OrderBy ListRpnGroupMembersRequestOrderBy `json:"-"`

	// ProjectID: a project ID.
	ProjectID *string `json:"-"`
}

RpnV1ApiListRpnGroupMembersRequest: rpn v1 api list rpn group members request.

type RpnV1ApiListRpnGroupsRequest

type RpnV1ApiListRpnGroupsRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn v1 groups per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn v1 groups.
	// Default value: created_at_asc
	OrderBy ListRpnGroupsRequestOrderBy `json:"-"`

	// ProjectID: filter rpn v1 groups by project ID.
	ProjectID *string `json:"-"`
}

RpnV1ApiListRpnGroupsRequest: rpn v1 api list rpn groups request.

type RpnV1ApiListRpnInvitesRequest

type RpnV1ApiListRpnInvitesRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn capable resources per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn capable resources.
	// Default value: created_at_asc
	OrderBy ListRpnInvitesRequestOrderBy `json:"-"`

	// ProjectID: filter rpn capable resources by project ID.
	ProjectID string `json:"-"`
}

RpnV1ApiListRpnInvitesRequest: rpn v1 api list rpn invites request.

type RpnV1ApiRefuseRpnInviteRequest

type RpnV1ApiRefuseRpnInviteRequest struct {
	// MemberID: the member ID.
	MemberID uint64 `json:"-"`
}

RpnV1ApiRefuseRpnInviteRequest: rpn v1 api refuse rpn invite request.

type RpnV1ApiRpnGroupInviteRequest

type RpnV1ApiRpnGroupInviteRequest struct {
	// GroupID: the RPN V1 group ID.
	GroupID uint64 `json:"-"`

	// ServerIDs: a collection of external server IDs.
	ServerIDs []uint64 `json:"server_ids"`

	// ProjectID: a project ID.
	ProjectID string `json:"project_id"`
}

RpnV1ApiRpnGroupInviteRequest: rpn v1 api rpn group invite request.

type RpnV1ApiUpdateRpnGroupNameRequest

type RpnV1ApiUpdateRpnGroupNameRequest struct {
	// GroupID: rpn v1 group ID.
	GroupID uint64 `json:"-"`

	// Name: new rpn v1 group name.
	Name *string `json:"name,omitempty"`
}

RpnV1ApiUpdateRpnGroupNameRequest: rpn v1 api update rpn group name request.

type RpnV2API

type RpnV2API struct {
	// contains filtered or unexported fields
}

Dedibox Phoenix RPN v2 API.

func NewRpnV2API

func NewRpnV2API(client *scw.Client) *RpnV2API

NewRpnV2API returns a RpnV2API object from a Scaleway client.

func (*RpnV2API) AddRpnV2Members

func (s *RpnV2API) AddRpnV2Members(req *RpnV2ApiAddRpnV2MembersRequest, opts ...scw.RequestOption) error

AddRpnV2Members:

func (*RpnV2API) CreateRpnV2Group

func (s *RpnV2API) CreateRpnV2Group(req *RpnV2ApiCreateRpnV2GroupRequest, opts ...scw.RequestOption) (*RpnV2Group, error)

CreateRpnV2Group:

func (*RpnV2API) DeleteRpnV2Group

func (s *RpnV2API) DeleteRpnV2Group(req *RpnV2ApiDeleteRpnV2GroupRequest, opts ...scw.RequestOption) error

DeleteRpnV2Group:

func (*RpnV2API) DeleteRpnV2Members

func (s *RpnV2API) DeleteRpnV2Members(req *RpnV2ApiDeleteRpnV2MembersRequest, opts ...scw.RequestOption) error

DeleteRpnV2Members:

func (*RpnV2API) DisableRpnV2GroupCompatibility

func (s *RpnV2API) DisableRpnV2GroupCompatibility(req *RpnV2ApiDisableRpnV2GroupCompatibilityRequest, opts ...scw.RequestOption) error

DisableRpnV2GroupCompatibility:

func (*RpnV2API) EnableRpnV2GroupCompatibility

func (s *RpnV2API) EnableRpnV2GroupCompatibility(req *RpnV2ApiEnableRpnV2GroupCompatibilityRequest, opts ...scw.RequestOption) error

EnableRpnV2GroupCompatibility:

func (*RpnV2API) GetRpnV2Group

func (s *RpnV2API) GetRpnV2Group(req *RpnV2ApiGetRpnV2GroupRequest, opts ...scw.RequestOption) (*RpnV2Group, error)

GetRpnV2Group:

func (*RpnV2API) ListRpnV2CapableResources

ListRpnV2CapableResources:

func (*RpnV2API) ListRpnV2GroupLogs

ListRpnV2GroupLogs:

func (*RpnV2API) ListRpnV2Groups

ListRpnV2Groups:

func (*RpnV2API) ListRpnV2Members

ListRpnV2Members:

func (*RpnV2API) UpdateRpnV2GroupName

func (s *RpnV2API) UpdateRpnV2GroupName(req *RpnV2ApiUpdateRpnV2GroupNameRequest, opts ...scw.RequestOption) (*RpnV2Group, error)

UpdateRpnV2GroupName:

func (*RpnV2API) UpdateRpnV2VlanForMembers

func (s *RpnV2API) UpdateRpnV2VlanForMembers(req *RpnV2ApiUpdateRpnV2VlanForMembersRequest, opts ...scw.RequestOption) error

UpdateRpnV2VlanForMembers:

type RpnV2ApiAddRpnV2MembersRequest

type RpnV2ApiAddRpnV2MembersRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// Servers: a collection of server IDs.
	Servers []uint64 `json:"servers"`
}

RpnV2ApiAddRpnV2MembersRequest: rpn v2 api add rpn v2 members request.

type RpnV2ApiCreateRpnV2GroupRequest

type RpnV2ApiCreateRpnV2GroupRequest struct {
	// ProjectID: project ID of the RPN V2 group.
	ProjectID string `json:"project_id"`

	// Type: rPN V2 group type (qing / standard).
	// Default value: unknown_type
	Type RpnV2GroupType `json:"type"`

	// Name: rPN V2 group name.
	Name string `json:"name"`

	// Servers: a collection of server IDs.
	Servers []uint64 `json:"servers"`
}

RpnV2ApiCreateRpnV2GroupRequest: rpn v2 api create rpn v2 group request.

type RpnV2ApiDeleteRpnV2GroupRequest

type RpnV2ApiDeleteRpnV2GroupRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`
}

RpnV2ApiDeleteRpnV2GroupRequest: rpn v2 api delete rpn v2 group request.

type RpnV2ApiDeleteRpnV2MembersRequest

type RpnV2ApiDeleteRpnV2MembersRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// MemberIDs: a collection of member IDs.
	MemberIDs []uint64 `json:"member_ids"`
}

RpnV2ApiDeleteRpnV2MembersRequest: rpn v2 api delete rpn v2 members request.

type RpnV2ApiDisableRpnV2GroupCompatibilityRequest

type RpnV2ApiDisableRpnV2GroupCompatibilityRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`
}

RpnV2ApiDisableRpnV2GroupCompatibilityRequest: rpn v2 api disable rpn v2 group compatibility request.

type RpnV2ApiEnableRpnV2GroupCompatibilityRequest

type RpnV2ApiEnableRpnV2GroupCompatibilityRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// Rpnv1GroupID: rPN V1 group ID.
	Rpnv1GroupID uint64 `json:"rpnv1_group_id"`
}

RpnV2ApiEnableRpnV2GroupCompatibilityRequest: rpn v2 api enable rpn v2 group compatibility request.

type RpnV2ApiGetRpnV2GroupRequest

type RpnV2ApiGetRpnV2GroupRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`
}

RpnV2ApiGetRpnV2GroupRequest: rpn v2 api get rpn v2 group request.

type RpnV2ApiListRpnV2CapableResourcesRequest

type RpnV2ApiListRpnV2CapableResourcesRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn v2 capable resources per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn v2 capable resources.
	// Default value: created_at_asc
	OrderBy ListRpnV2CapableResourcesRequestOrderBy `json:"-"`

	// ProjectID: filter rpn v2 capable resources by project ID.
	ProjectID *string `json:"-"`
}

RpnV2ApiListRpnV2CapableResourcesRequest: rpn v2 api list rpn v2 capable resources request.

type RpnV2ApiListRpnV2GroupLogsRequest

type RpnV2ApiListRpnV2GroupLogsRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn v2 group logs per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn v2 group logs.
	// Default value: created_at_asc
	OrderBy ListRpnV2GroupLogsRequestOrderBy `json:"-"`
}

RpnV2ApiListRpnV2GroupLogsRequest: rpn v2 api list rpn v2 group logs request.

type RpnV2ApiListRpnV2GroupsRequest

type RpnV2ApiListRpnV2GroupsRequest struct {
	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn v2 groups per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn v2 groups.
	// Default value: created_at_asc
	OrderBy ListRpnV2GroupsRequestOrderBy `json:"-"`

	// ProjectID: filter rpn v2 groups by project ID.
	ProjectID *string `json:"-"`
}

RpnV2ApiListRpnV2GroupsRequest: rpn v2 api list rpn v2 groups request.

type RpnV2ApiListRpnV2MembersRequest

type RpnV2ApiListRpnV2MembersRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// Page: page number.
	Page *uint32 `json:"-"`

	// PageSize: number of rpn v2 group members per page.
	PageSize *uint32 `json:"-"`

	// OrderBy: order of the rpn v2 group members.
	// Default value: created_at_asc
	OrderBy ListRpnV2MembersRequestOrderBy `json:"-"`

	// Type: filter members by type.
	// Default value: unknown_type
	Type ListRpnV2MembersRequestType `json:"-"`
}

RpnV2ApiListRpnV2MembersRequest: rpn v2 api list rpn v2 members request.

type RpnV2ApiUpdateRpnV2GroupNameRequest

type RpnV2ApiUpdateRpnV2GroupNameRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// Name: rPN V2 group name.
	Name *string `json:"name,omitempty"`
}

RpnV2ApiUpdateRpnV2GroupNameRequest: rpn v2 api update rpn v2 group name request.

type RpnV2ApiUpdateRpnV2VlanForMembersRequest

type RpnV2ApiUpdateRpnV2VlanForMembersRequest struct {
	// GroupID: rPN V2 group ID.
	GroupID uint64 `json:"-"`

	// MemberIDs: rPN V2 member IDs.
	MemberIDs []uint64 `json:"member_ids"`

	// Vlan: min: 0.
	// Max: 3967.
	Vlan *uint32 `json:"vlan,omitempty"`
}

RpnV2ApiUpdateRpnV2VlanForMembersRequest: rpn v2 api update rpn v2 vlan for members request.

type RpnV2Group

type RpnV2Group struct {
	// ID: rPN V2 group ID.
	ID uint64 `json:"id"`

	// Name: rPN V2 group name.
	Name string `json:"name"`

	// CompatibleRpnv1: whether or not the RPN V1 compatibility was enabled.
	CompatibleRpnv1 bool `json:"compatible_rpnv1"`

	// OrganizationID: organization ID of the RPN V2 group.
	OrganizationID string `json:"organization_id"`

	// ProjectID: project ID of the RPN V2 group.
	ProjectID string `json:"project_id"`

	// Type: rPN V2 group type (qing / standard).
	// Default value: unknown_type
	Type RpnV2GroupType `json:"type"`

	// Status: rPN V2 group status.
	// Default value: unknown_group_status
	Status RpnV2GroupStatus `json:"status"`

	// Owner: rPN V2 group owner.
	Owner string `json:"owner"`

	// MembersCount: total number of members.
	MembersCount uint32 `json:"members_count"`

	// Subnet: rPN V2 subnet.
	Subnet *RpnV2GroupSubnet `json:"subnet"`

	// Gateway: rPN V2 gateway.
	Gateway net.IP `json:"gateway"`

	// Rpnv1Group: the RPNv1 group (if the compatibility was enabled).
	Rpnv1Group *RpnGroup `json:"rpnv1_group"`
}

RpnV2Group: rpn v2 group.

type RpnV2GroupStatus

type RpnV2GroupStatus string

func (RpnV2GroupStatus) MarshalJSON

func (enum RpnV2GroupStatus) MarshalJSON() ([]byte, error)

func (RpnV2GroupStatus) String

func (enum RpnV2GroupStatus) String() string

func (*RpnV2GroupStatus) UnmarshalJSON

func (enum *RpnV2GroupStatus) UnmarshalJSON(data []byte) error

type RpnV2GroupSubnet

type RpnV2GroupSubnet struct {
	Address net.IP `json:"address"`

	Cidr uint32 `json:"cidr"`
}

RpnV2GroupSubnet: rpn v2 group subnet.

type RpnV2GroupType

type RpnV2GroupType string

func (RpnV2GroupType) MarshalJSON

func (enum RpnV2GroupType) MarshalJSON() ([]byte, error)

func (RpnV2GroupType) String

func (enum RpnV2GroupType) String() string

func (*RpnV2GroupType) UnmarshalJSON

func (enum *RpnV2GroupType) UnmarshalJSON(data []byte) error

type RpnV2Member

type RpnV2Member struct {
	// ID: rPN V2 member ID.
	ID uint64 `json:"id"`

	// Status: rPN V2 member status.
	// Default value: unknown_member_status
	Status RpnV2MemberStatus `json:"status"`

	// Vlan: rPN V2 member VLAN.
	Vlan string `json:"vlan"`

	// Server: server behind the member (may be empty).
	// Precisely one of Server, Rpnv1Group must be set.
	Server *Server `json:"server,omitempty"`

	// Rpnv1Group: rPN V1 group member.
	// Precisely one of Server, Rpnv1Group must be set.
	Rpnv1Group *RpnGroup `json:"rpnv1_group,omitempty"`

	// Speed: rPN speed.
	Speed *uint32 `json:"speed"`
}

RpnV2Member: rpn v2 member.

type RpnV2MemberStatus

type RpnV2MemberStatus string

func (RpnV2MemberStatus) MarshalJSON

func (enum RpnV2MemberStatus) MarshalJSON() ([]byte, error)

func (RpnV2MemberStatus) String

func (enum RpnV2MemberStatus) String() string

func (*RpnV2MemberStatus) UnmarshalJSON

func (enum *RpnV2MemberStatus) UnmarshalJSON(data []byte) error

type Server

type Server struct {
	// ID: ID of the server.
	ID uint64 `json:"id"`

	// OrganizationID: organization ID the server is attached to.
	OrganizationID string `json:"organization_id"`

	// ProjectID: project ID the server is attached to.
	ProjectID string `json:"project_id"`

	// Hostname: hostname of the server.
	Hostname string `json:"hostname"`

	// RebootedAt: date of last reboot of the server.
	RebootedAt *time.Time `json:"rebooted_at"`

	// CreatedAt: date of creation of the server.
	CreatedAt *time.Time `json:"created_at"`

	// UpdatedAt: date of last modification of the server.
	UpdatedAt *time.Time `json:"updated_at"`

	// ExpiredAt: date of release of the server.
	ExpiredAt *time.Time `json:"expired_at"`

	// Offer: offer of the server.
	Offer *Offer `json:"offer"`

	// Status: status of the server.
	// Default value: unknown
	Status ServerStatus `json:"status"`

	// Location: location of the server.
	Location *ServerLocation `json:"location"`

	// AbuseContact: abuse contact of the server.
	AbuseContact string `json:"abuse_contact"`

	// Os: oS installed on the server.
	Os *OS `json:"os"`

	// Interfaces: network interfaces of the server.
	Interfaces []*NetworkInterface `json:"interfaces"`

	// Zone: the zone in which is the server.
	Zone scw.Zone `json:"zone"`

	// Options: options subscribe on the server.
	Options []*ServerOption `json:"options"`

	// Level: service level of the server.
	Level *ServiceLevel `json:"level"`

	// HasBmc: boolean if the server has a BMC.
	HasBmc bool `json:"has_bmc"`

	// RescueOs: rescue OS of the server.
	RescueOs *OS `json:"rescue_os"`

	// Tags: array of customs tags attached to the server.
	Tags []string `json:"tags"`

	// IsOutsourced: whether the server is outsourced or not.
	IsOutsourced bool `json:"is_outsourced"`

	// IPv6Slaac: whether or not you can enable/disable the IPv6.
	IPv6Slaac bool `json:"ipv6_slaac"`

	// Qinq: whether the server is compatible with QinQ.
	Qinq bool `json:"qinq"`

	// IsRpnv2Member: whether or not the server is already part of an rpnv2 group.
	IsRpnv2Member bool `json:"is_rpnv2_member"`
}

Server: server.

type ServerDefaultPartitioning

type ServerDefaultPartitioning struct {
	// Partitions: default partitions.
	Partitions []*Partition `json:"partitions"`
}

ServerDefaultPartitioning: server default partitioning.

type ServerDisk

type ServerDisk struct {
	ID uint64 `json:"id"`

	Connector string `json:"connector"`

	// Type: default value: sata
	Type ServerDiskType `json:"type"`

	Capacity scw.Size `json:"capacity"`

	IsAddon bool `json:"is_addon"`
}

ServerDisk: server disk.

type ServerDiskType

type ServerDiskType string

func (ServerDiskType) MarshalJSON

func (enum ServerDiskType) MarshalJSON() ([]byte, error)

func (ServerDiskType) String

func (enum ServerDiskType) String() string

func (*ServerDiskType) UnmarshalJSON

func (enum *ServerDiskType) UnmarshalJSON(data []byte) error

type ServerEvent

type ServerEvent struct {
	// EventID: ID of the event.
	EventID uint64 `json:"event_id"`

	// Description: descriptiion of the event.
	Description string `json:"description"`

	// Date: date of the event.
	Date *time.Time `json:"date"`
}

ServerEvent: server event.

type ServerInstall

type ServerInstall struct {
	OsID uint64 `json:"os_id"`

	Hostname string `json:"hostname"`

	UserLogin *string `json:"user_login"`

	Partitions []*Partition `json:"partitions"`

	SSHKeyIDs []string `json:"ssh_key_ids"`

	// Status: default value: unknown
	Status ServerInstallStatus `json:"status"`

	PanelURL *string `json:"panel_url"`
}

ServerInstall: server install.

type ServerInstallStatus

type ServerInstallStatus string

func (ServerInstallStatus) MarshalJSON

func (enum ServerInstallStatus) MarshalJSON() ([]byte, error)

func (ServerInstallStatus) String

func (enum ServerInstallStatus) String() string

func (*ServerInstallStatus) UnmarshalJSON

func (enum *ServerInstallStatus) UnmarshalJSON(data []byte) error

type ServerLocation

type ServerLocation struct {
	Rack string `json:"rack"`

	Room string `json:"room"`

	DatacenterName string `json:"datacenter_name"`
}

ServerLocation: server location.

type ServerOption

type ServerOption struct {
	Offer *Offer `json:"offer"`

	CreatedAt *time.Time `json:"created_at"`

	UpdatedAt *time.Time `json:"updated_at"`

	ExpiredAt *time.Time `json:"expired_at"`

	Options []*ServerOption `json:"options"`
}

ServerOption: server option.

type ServerStatus

type ServerStatus string

func (ServerStatus) MarshalJSON

func (enum ServerStatus) MarshalJSON() ([]byte, error)

func (ServerStatus) String

func (enum ServerStatus) String() string

func (*ServerStatus) UnmarshalJSON

func (enum *ServerStatus) UnmarshalJSON(data []byte) error

type ServerSummary

type ServerSummary struct {
	// ID: ID of the server.
	ID uint64 `json:"id"`

	// DatacenterName: datacenter of the server.
	DatacenterName string `json:"datacenter_name"`

	// OrganizationID: organization ID the server is attached to.
	OrganizationID string `json:"organization_id"`

	// ProjectID: project ID the server is attached to.
	ProjectID string `json:"project_id"`

	// Hostname: hostname of the server.
	Hostname string `json:"hostname"`

	// CreatedAt: date of creation of the server.
	CreatedAt *time.Time `json:"created_at"`

	// UpdatedAt: date of last modification of the server.
	UpdatedAt *time.Time `json:"updated_at"`

	// ExpiredAt: date of release of the server.
	ExpiredAt *time.Time `json:"expired_at"`

	// OfferID: offer ID of the server.
	OfferID uint64 `json:"offer_id"`

	// OfferName: offer name of the server.
	OfferName string `json:"offer_name"`

	// Status: status of the server.
	// Default value: unknown
	Status ServerStatus `json:"status"`

	// OsID: oS ID installed on server.
	OsID *uint64 `json:"os_id"`

	// Interfaces: network interfaces of the server.
	Interfaces []*NetworkInterface `json:"interfaces"`

	// Zone: the zone in which is the server.
	Zone scw.Zone `json:"zone"`

	// Level: service level of the server.
	Level *ServiceLevel `json:"level"`

	// IsOutsourced: whether the server is outsourced or not.
	IsOutsourced bool `json:"is_outsourced"`

	// Qinq: whether the server is compatible with QinQ.
	Qinq bool `json:"qinq"`

	// RpnVersion: supported RPN version.
	RpnVersion *uint32 `json:"rpn_version"`
}

ServerSummary: server summary.

type Service

type Service struct {
	// ID: ID of the service.
	ID uint64 `json:"id"`

	// ResourceID: resource ID of the service.
	ResourceID *uint64 `json:"resource_id"`

	// ProvisioningStatus: provisioning status of the service.
	// Default value: unknown
	ProvisioningStatus ServiceProvisioningStatus `json:"provisioning_status"`

	// Offer: offer of the service.
	Offer *Offer `json:"offer"`

	// CreatedAt: creation date of the service.
	CreatedAt *time.Time `json:"created_at"`

	// DeliveredAt: delivery date of the service.
	DeliveredAt *time.Time `json:"delivered_at"`

	// TerminatedAt: terminatation date of the service.
	TerminatedAt *time.Time `json:"terminated_at"`

	// ExpiresAt: expiration date of the service.
	ExpiresAt *time.Time `json:"expires_at"`

	// Type: service type, either order or service.
	// Default value: unknown_type
	Type ServiceType `json:"type"`
}

Service: service.

type ServiceLevel

type ServiceLevel struct {
	// OfferID: offer ID of service level.
	OfferID uint32 `json:"offer_id"`

	// Level: level type of service level.
	// Default value: unknown
	Level ServiceLevelLevel `json:"level"`
}

ServiceLevel: service level.

type ServiceLevelLevel

type ServiceLevelLevel string

func (ServiceLevelLevel) MarshalJSON

func (enum ServiceLevelLevel) MarshalJSON() ([]byte, error)

func (ServiceLevelLevel) String

func (enum ServiceLevelLevel) String() string

func (*ServiceLevelLevel) UnmarshalJSON

func (enum *ServiceLevelLevel) UnmarshalJSON(data []byte) error

type ServiceProvisioningStatus

type ServiceProvisioningStatus string

func (ServiceProvisioningStatus) MarshalJSON

func (enum ServiceProvisioningStatus) MarshalJSON() ([]byte, error)

func (ServiceProvisioningStatus) String

func (enum ServiceProvisioningStatus) String() string

func (*ServiceProvisioningStatus) UnmarshalJSON

func (enum *ServiceProvisioningStatus) UnmarshalJSON(data []byte) error

type ServiceType

type ServiceType string

func (ServiceType) MarshalJSON

func (enum ServiceType) MarshalJSON() ([]byte, error)

func (ServiceType) String

func (enum ServiceType) String() string

func (*ServiceType) UnmarshalJSON

func (enum *ServiceType) UnmarshalJSON(data []byte) error

type StartBMCAccessRequest

type StartBMCAccessRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server to start the BMC access.
	ServerID uint64 `json:"-"`

	// IP: the IP authorized to connect to the given server.
	IP net.IP `json:"ip"`
}

StartBMCAccessRequest: start bmc access request.

type StartRescueRequest

type StartRescueRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server to start rescue.
	ServerID uint64 `json:"-"`

	// OsID: oS ID to use to start rescue.
	OsID uint64 `json:"os_id"`
}

StartRescueRequest: start rescue request.

type StartServerRequest

type StartServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to start.
	ServerID uint64 `json:"-"`
}

StartServerRequest: start server request.

type StopBMCAccessRequest

type StopBMCAccessRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server to stop BMC access.
	ServerID uint64 `json:"-"`
}

StopBMCAccessRequest: stop bmc access request.

type StopRescueRequest

type StopRescueRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server to stop rescue.
	ServerID uint64 `json:"-"`
}

StopRescueRequest: stop rescue request.

type StopServerRequest

type StopServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to stop.
	ServerID uint64 `json:"-"`
}

StopServerRequest: stop server request.

type SubscribeServerOptionRequest

type SubscribeServerOptionRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to subscribe server option.
	ServerID uint64 `json:"-"`

	// OptionID: option ID to subscribe.
	OptionID uint64 `json:"option_id"`
}

SubscribeServerOptionRequest: subscribe server option request.

type SubscribeStorageOptionsRequest

type SubscribeStorageOptionsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID of the storage options to subscribe.
	ServerID uint64 `json:"-"`

	// OptionsIDs: option IDs of the storage options to subscribe.
	OptionsIDs []uint64 `json:"options_ids"`
}

SubscribeStorageOptionsRequest: subscribe storage options request.

type SubscribeStorageOptionsResponse

type SubscribeStorageOptionsResponse struct {
	// Services: services subscribe storage options.
	Services []*Service `json:"services"`
}

SubscribeStorageOptionsResponse: subscribe storage options response.

type UpdatableRaidArray

type UpdatableRaidArray struct {
	// RaidLevel: the RAID level.
	// Default value: no_raid
	RaidLevel RaidArrayRaidLevel `json:"raid_level"`

	// DiskIDs: the list of Disk ID of the updatable RAID.
	DiskIDs []uint64 `json:"disk_ids"`
}

UpdatableRaidArray: updatable raid array.

type UpdateRaidRequest

type UpdateRaidRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: ID of the server.
	ServerID uint64 `json:"-"`

	// RaidArrays: rAIDs to update.
	RaidArrays []*UpdatableRaidArray `json:"raid_arrays"`
}

UpdateRaidRequest: update raid request.

type UpdateReverseRequest

type UpdateReverseRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// IPID: ID of the IP.
	IPID uint64 `json:"-"`

	// Reverse: reverse to apply on the IP.
	Reverse string `json:"reverse"`
}

UpdateReverseRequest: update reverse request.

type UpdateServerBackupRequest

type UpdateServerBackupRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to update backup.
	ServerID uint64 `json:"-"`

	// Password: password of the server backup.
	Password *string `json:"password,omitempty"`

	// Autologin: autologin of the server backup.
	Autologin *bool `json:"autologin,omitempty"`

	// ACLEnabled: boolean to enable or disable ACL.
	ACLEnabled *bool `json:"acl_enabled,omitempty"`
}

UpdateServerBackupRequest: update server backup request.

type UpdateServerRequest

type UpdateServerRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to update.
	ServerID uint64 `json:"-"`

	// Hostname: hostname of the server to update.
	Hostname *string `json:"hostname,omitempty"`

	// EnableIPv6: flag to enable or not the IPv6 of server.
	EnableIPv6 *bool `json:"enable_ipv6,omitempty"`
}

UpdateServerRequest: update server request.

type UpdateServerTagsRequest

type UpdateServerTagsRequest struct {
	// Zone: zone to target. If none is passed will use default zone from the config.
	Zone scw.Zone `json:"-"`

	// ServerID: server ID to update the tags.
	ServerID uint64 `json:"-"`

	// Tags: tags of server to update.
	Tags []string `json:"tags"`
}

UpdateServerTagsRequest: update server tags request.

Jump to

Keyboard shortcuts

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