responses

package
v1.0.4 Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2025 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddUserSSHKeyResponse

type AddUserSSHKeyResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

AddUserSSHKeyResponse represents the response for adding a new SSH key.

type Content

type Content struct {
	ID         string `json:"id"`
	ContentRaw string `json:"content_raw"`
}

type CostDocument

type CostDocument struct {
	DateFrom                            string  `json:"dateFrom"`
	DateTo                              string  `json:"dateTo"`
	Instance                            float64 `json:"Instance"`
	NetworkNetflow                      float64 `json:"NetworkNetflow"`
	InstanceSnapshot                    float64 `json:"InstanceSnapshot"`
	InstanceDataVolumes                 float64 `json:"InstanceDataVolumes"`
	SupportOfferings                    float64 `json:"SupportOfferings"`
	NetworkInternetPublicAddressV4      float64 `json:"NetworkInternetPublicAddressV4"`
	NetworkDevice                       float64 `json:"NetworkDevice"`
	InstanceNetworkSecondaryIpAddressV4 float64 `json:"InstanceNetworkSecondaryIpAddressV4"`
	BucketSize                          float64 `json:"BucketSize"`
	BucketDownloadTraffic               float64 `json:"BucketDownloadTraffic"`
	BucketUploadTraffic                 float64 `json:"BucketUploadTraffic"`
	KubernetesNode                      float64 `json:"KubernetesNode"`
}

CostDocument represents a single cost document in the yearly cost documents response.

type CostDocumentsYearlyResponse

type CostDocumentsYearlyResponse struct {
	Data []CostDocument `json:"data"`
}

CostDocumentsYearlyResponse represents the response for the yearly cost documents endpoint.

type CustomerResourceResponse

type CustomerResourceResponse struct {
	InstanceResourceCollected struct {
		Memory struct {
			Collected int `json:"collected"`
			Total     int `json:"total"`
		} `json:"memory"`
		CPUNumber struct {
			Collected int `json:"collected"`
			Total     int `json:"total"`
		} `json:"cpunumber"`
		DataVolume struct {
			Collected int `json:"collected"`
			Total     int `json:"total"`
		} `json:"datavolume"`
		VMLimit struct {
			Collected int `json:"collected"`
			Total     int `json:"total"`
		} `json:"vmlimit"`
	} `json:"instance_resource_collected"`
}

CustomerResourceResponse represents the response for the customer resource endpoint.

type DNSEvent

type DNSEvent struct {
	ProductModel  string `json:"product_model"`
	ProductID     string `json:"product_id"`
	ProductSource string `json:"product_source"`
	Type          string `json:"type"`
	Content       string `json:"content"`
	CreatedAt     int    `json:"created_at"`
}

type DNSEventsResponse

type DNSEventsResponse struct {
	Data []DNSEvent `json:"data"`
	Meta Meta       `json:"meta"`
}

type DataCenter

type DataCenter struct {
	Data []struct {
		ID       string `json:"id"`
		Name     string `json:"name"`
		Location string `json:"location"`
		Active   bool   `json:"active"`
	} `json:"data"`
}

DataCenter represents the response for the zone list endpoint.

type DeleteUserSSHKeyResponse

type DeleteUserSSHKeyResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

DeleteUserSSHKeyResponse represents the response for deleting an SSH key.

type DnsMessage

type DnsMessage struct {
	Message string `json:"message"`
}

type Domain

type Domain struct {
	Domain  string `json:"domain"`
	Status  string `json:"status"`
	DNSInfo struct {
		VirakDNS  []*string `json:"virak_dns"`
		DomainDNS []string  `json:"domain_dns"`
	} `json:"dns_info"`
}

type DomainList

type DomainList struct {
	Data []Domain `json:"data"`
}

type DomainShow

type DomainShow struct {
	Data Domain `json:"data"`
}

type ErrorResponse

type ErrorResponse struct {
	Message string      `json:"message"`
	Errors  interface{} `json:"errors,omitempty"`
	Code    int         `json:"code,omitempty"`
}

ErrorResponse represents a standard error response from the API.

type Expense added in v1.0.3

type Expense struct {
	ID          string  `json:"id"`
	Date        string  `json:"date"`
	Type        string  `json:"type"`
	Description string  `json:"description"`
	Amount      float64 `json:"amount"`
	Status      string  `json:"status"`
	CreatedAt   string  `json:"created_at"`
}

Expense represents a single expense in the expenses list response.

type ExpensesListResponse added in v1.0.3

type ExpensesListResponse struct {
	Data []Expense `json:"data"`
}

ExpensesListResponse represents the response for the expenses list endpoint.

type HaproxyLiveResponse

type HaproxyLiveResponse struct {
	Data struct {
		UpdatedAt int64              `json:"updated_at"`
		Rules     []LoadBalancerRule `json:"rules"`
	} `json:"data"`
}

type HaproxyLogResponse

type HaproxyLogResponse struct {
	Data []interface{} `json:"data"`
}

type IPConfig

type IPConfig struct {
	Gateway string `json:"gateway"`
	Netmask string `json:"netmask"`
}

type IPConfigOrArray

type IPConfigOrArray IPConfig

func (*IPConfigOrArray) UnmarshalJSON

func (i *IPConfigOrArray) UnmarshalJSON(data []byte) error

type IPConfigV6

type IPConfigV6 struct {
	GatewayV6      *string `json:"gateway_v6"`
	NetmaskV6      *string `json:"netmask_v6"`
	RouteGatewayV6 *string `json:"route_gateway_v6"`
	RouteSubnetV6  *string `json:"route_subnet_v6"`
}

type IPConfigV6OrArray

type IPConfigV6OrArray IPConfigV6

func (*IPConfigV6OrArray) UnmarshalJSON

func (i *IPConfigV6OrArray) UnmarshalJSON(data []byte) error

type IPv4FirewallRule

type IPv4FirewallRule struct {
	ID                string  `json:"id"`
	NetworkPublicIPID *string `json:"network_public_ip_id"`
	Protocol          string  `json:"protocol"`
	TrafficType       string  `json:"traffic_type"`
	IPSource          string  `json:"ip_source"`
	IPDestination     string  `json:"ip_destination"`
	PortStart         *string `json:"port_start"`
	PortEnd           *string `json:"port_end"`
	ICMPCode          *int    `json:"icmp_code"`
	ICMPType          *int    `json:"icmp_type"`
	Status            string  `json:"status"`
	CreatedAt         int64   `json:"created_at"`
}

type IPv4FirewallRuleActionResponse

type IPv4FirewallRuleActionResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type IPv4FirewallRuleListResponse

type IPv4FirewallRuleListResponse struct {
	Data []IPv4FirewallRule `json:"data"`
}

type IPv6FirewallRule

type IPv6FirewallRule struct {
	ID            string  `json:"id"`
	Protocol      string  `json:"protocol"`
	TrafficType   string  `json:"traffic_type"`
	IPSource      string  `json:"ip_source"`
	IPDestination string  `json:"ip_destination"`
	PortStart     *string `json:"port_start"`
	PortEnd       *string `json:"port_end"`
	ICMPCode      *int    `json:"icmp_code"`
	ICMPType      *int    `json:"icmp_type"`
	Status        string  `json:"status"`
	CreatedAt     int64   `json:"created_at"`
}

type IPv6FirewallRuleActionResponse

type IPv6FirewallRuleActionResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type IPv6FirewallRuleListResponse

type IPv6FirewallRuleListResponse struct {
	Data []IPv6FirewallRule `json:"data"`
}

type Instance

type Instance struct {
	ID                  string                   `json:"id"`
	CustomerID          string                   `json:"customer_id"`
	Name                string                   `json:"name"`
	ZoneID              string                   `json:"zone_id"`
	Created             bool                     `json:"created"`
	TemplateID          *string                  `json:"template_id"`
	VMImage             *InstanceVMImage         `json:"vm_image"`
	Zone                *InstanceZone            `json:"zone"`
	ServiceOffering     *InstanceServiceOffering `json:"service_offering"`
	DiskOfferingID      *string                  `json:"disk_offering_id"`
	ServiceOfferingID   string                   `json:"service_offering_id"`
	Status              string                   `json:"status"`
	InstanceStatus      string                   `json:"instance_status"`
	Password            string                   `json:"password"`
	Username            string                   `json:"username"`
	CreatedAt           int64                    `json:"created_at"`
	UpdatedAt           int64                    `json:"updated_at"`
	KubernetesClusterID *string                  `json:"kubernetes_cluster_id"`
	Metadata            []interface{}            `json:"metadata"`
	DataVolumes         []interface{}            `json:"data_volumes"`
	Snapshot            []InstanceSnapshot       `json:"snapshot"`
}

type InstanceConsole added in v1.0.3

type InstanceConsole struct {
	URL string `json:"url"`
}

type InstanceConsoleResponse added in v1.0.3

type InstanceConsoleResponse struct {
	Data InstanceConsole `json:"data"`
}

type InstanceCreateResponse

type InstanceCreateResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type InstanceListResponse

type InstanceListResponse struct {
	Data []Instance `json:"data"`
}

type InstanceMetricColumn

type InstanceMetricColumn struct {
	Column string                `json:"column"`
	Values []InstanceMetricValue `json:"values"`
}

type InstanceMetricValue

type InstanceMetricValue struct {
	Value float64 `json:"value"`
	Time  string  `json:"time"`
}

type InstanceMetricsResponse

type InstanceMetricsResponse struct {
	Data []InstanceMetricColumn `json:"data"`
}

InstanceMetricsResponse represents the metrics response for an instance.

type InstanceNetwork

type InstanceNetwork struct {
	ID              string                 `json:"id"`
	InstanceID      string                 `json:"instance_id"`
	InstanceName    string                 `json:"instance_name"`
	IPAddress       string                 `json:"ipaddress"`
	IPAddressV6     string                 `json:"ipaddress_v6"`
	MACAddress      string                 `json:"macaddress"`
	IsDefault       bool                   `json:"is_default"`
	CreatedAt       int64                  `json:"created_at"`
	Network         NetworkSummary         `json:"network"`
	NetworkOffering NetworkOfferingSummary `json:"network_offering"`
	SecondaryIPs    []SecondaryIP          `json:"secondary_ips"`
}

type InstanceNetworkActionResponse

type InstanceNetworkActionResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type InstanceNetworkListResponse

type InstanceNetworkListResponse struct {
	Data []InstanceNetwork `json:"data"`
}

type InstanceServiceOffering

type InstanceServiceOffering struct {
	ID                    string                           `json:"id"`
	Name                  string                           `json:"name"`
	Category              string                           `json:"category"`
	Suggested             bool                             `json:"suggested"`
	Hardware              *InstanceServiceOfferingHardware `json:"hardware"`
	IsAvailable           bool                             `json:"is_available"`
	HasImageRequirement   bool                             `json:"has_image_requirement"`
	IsPublic              bool                             `json:"is_public"`
	HourlyPrice           *InstanceServiceOfferingPrice    `json:"hourly_price"`
	HourlyPriceNoDiscount *InstanceServiceOfferingPrice    `json:"hourly_price_no_discount"`
	Description           *string                          `json:"description"`
}

type InstanceServiceOfferingHardware

type InstanceServiceOfferingHardware struct {
	CPUCore        int `json:"cpu_core"`
	MemoryMB       int `json:"memory_mb"`
	RootDiskSizeGB int `json:"root_disk_size_gB"`
	CPUSpeedMHz    int `json:"cpu_speed_MHz"`
	NetworkRate    int `json:"network_rate"`
	DiskIOPS       int `json:"disk_iops"`
}

type InstanceServiceOfferingListResponse

type InstanceServiceOfferingListResponse struct {
	Data []InstanceServiceOffering `json:"data"`
}

type InstanceServiceOfferingPrice

type InstanceServiceOfferingPrice struct {
	Up   int `json:"up"`
	Down int `json:"down"`
}

type InstanceShowResponse

type InstanceShowResponse struct {
	Data Instance `json:"data"`
}

type InstanceSnapshot

type InstanceSnapshot struct {
	ID        string  `json:"id"`
	Name      string  `json:"name"`
	Status    string  `json:"status"`
	CreatedAt int64   `json:"created_at"`
	Current   bool    `json:"current"`
	ParentID  *string `json:"parent_id"`
}

type InstanceSnapshotActionResponse

type InstanceSnapshotActionResponse struct {
	Data InstanceSnapshotActionResult `json:"data"`
}

type InstanceSnapshotActionResult

type InstanceSnapshotActionResult struct {
	Success bool `json:"success"`
}

type InstanceSnapshotCreateResponse

type InstanceSnapshotCreateResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type InstanceSnapshotListResponse

type InstanceSnapshotListResponse struct {
	Data []InstanceSnapshot `json:"data"`
}

type InstanceVMImage

type InstanceVMImage struct {
	ID                   string                              `json:"id"`
	Type                 string                              `json:"type"`
	Name                 string                              `json:"name"`
	IsAvailable          bool                                `json:"is_available"`
	DisplayText          string                              `json:"display_text"`
	NameOrginal          string                              `json:"name_orginal"`
	ReadyToUseApp        bool                                `json:"ready_to_use_app"`
	ReadyToUseAppName    *string                             `json:"ready_to_use_app_name"`
	ReadyToUseAppVersion *string                             `json:"ready_to_use_app_version"`
	OSType               string                              `json:"os_type"`
	OSName               string                              `json:"os_name"`
	OSVersion            string                              `json:"os_version"`
	HardwareRequirement  *InstanceVMImageHardwareRequirement `json:"hardware_requirement"`
	Category             string                              `json:"category"`
}

type InstanceVMImageHardwareRequirement

type InstanceVMImageHardwareRequirement struct {
	CPUNumber    IntString `json:"cpunumber"`
	CPUSpeed     int       `json:"cpuspeed"`
	Memory       IntString `json:"memory"`
	RootDiskSize IntString `json:"rootdisksize"`
}

type InstanceVMImageListResponse

type InstanceVMImageListResponse struct {
	Data []InstanceVMImage `json:"data"`
}

type InstanceVolume

type InstanceVolume struct {
	ID     string `json:"id"`
	Name   string `json:"name"`
	Size   int    `json:"size"`
	Status string `json:"status"`
}

type InstanceVolumeActionResponse

type InstanceVolumeActionResponse struct {
	Data InstanceVolumeActionResult `json:"data"`
}

type InstanceVolumeActionResult

type InstanceVolumeActionResult struct {
	Success bool `json:"success"`
}

type InstanceVolumeCreateResponse

type InstanceVolumeCreateResponse struct {
	Data InstanceVolume `json:"data"`
}

type InstanceVolumeListResponse

type InstanceVolumeListResponse struct {
	Data []InstanceVolume `json:"data"`
}

type InstanceVolumeServiceOffering

type InstanceVolumeServiceOffering struct {
	ID          string `json:"id"`
	Size        string `json:"size"`
	Price       string `json:"price"`
	Name        string `json:"name"`
	Description string `json:"description"`
	IsPublic    bool   `json:"is_public"`
	IsFeatured  bool   `json:"is_featured"`
}

type InstanceVolumeServiceOfferingListResponse

type InstanceVolumeServiceOfferingListResponse struct {
	Data []InstanceVolumeServiceOffering `json:"data"`
}

type InstanceZone

type InstanceZone struct {
	ID         string `json:"id"`
	Name       string `json:"name"`
	Location   string `json:"location"`
	IsPublic   bool   `json:"is_public"`
	IsFeatured bool   `json:"is_featured"`
	IsReady    bool   `json:"is_ready"`
}

type IntString

type IntString int

Custom type to handle int or string JSON values Use for fields that may be string or int in JSON Example: "cpunumber": "4" or "cpunumber": 4 Example: "memory": "2048" or "memory": 2048

func (*IntString) UnmarshalJSON

func (i *IntString) UnmarshalJSON(b []byte) error

type KubernetesCluster

type KubernetesCluster struct {
	ID                string `json:"id"`
	Name              string `json:"name"`
	Description       string `json:"description"`
	ZoneID            string `json:"zone_id"`
	Status            string `json:"status"`
	FailedReason      string `json:"failure_message"`
	KubernetesVersion struct {
		ID      string `json:"id"`
		Version string `json:"version"`
		Enabled bool   `json:"enabled"`
	} `json:"kubernetes_version"`
	ServiceOffering struct {
		ID   string `json:"id"`
		Name string `json:"name"`
	} `json:"service_offering"`
	SSHKey      string `json:"ssh_key"`
	HAEnabled   bool   `json:"ha_enabled"`
	ClusterSize int    `json:"cluster_size"`
	CreatedAt   int    `json:"created_at"`
	UpdatedAt   int    `json:"updated_at"`
}

type KubernetesClusterListResponse

type KubernetesClusterListResponse struct {
	Data []KubernetesCluster `json:"data"`
}

type KubernetesClusterResponse

type KubernetesClusterResponse struct {
	Data KubernetesCluster `json:"data"`
}

type KubernetesEvent

type KubernetesEvent struct {
	ID        string `json:"id"`
	Message   string `json:"message"`
	Timestamp int    `json:"timestamp"`
}

type KubernetesEventsListResponse

type KubernetesEventsListResponse struct {
	Data []KubernetesEvent `json:"data"`
}

type KubernetesMessage

type KubernetesMessage struct {
	Message string `json:"message"`
}

type KubernetesServiceOffering

type KubernetesServiceOffering struct {
	ID          string `json:"id"`
	Name        string `json:"name"`
	IsPublic    bool   `json:"is_public"`
	IsAvailable bool   `json:"is_available"`
	HourlyPrice struct {
		Up   int `json:"up"`
		Down int `json:"down"`
	} `json:"hourly_price"`
	HourlyPriceNoDiscount struct {
		Up   int `json:"up"`
		Down int `json:"down"`
	} `json:"hourly_price_no_discount"`
	Description string `json:"description"`
	Hardware    struct {
		CPUCore        int `json:"cpu_core"`
		MemoryMB       int `json:"memory_mb"`
		CPUSpeedMHz    int `json:"cpu_speed_MHz"`
		RootDiskSizeGB int `json:"root_disk_size_gB"`
		NetworkRate    int `json:"network_rate"`
		DiskIOPS       int `json:"disk_iops"`
	} `json:"hardware"`
}

type KubernetesServiceOfferingsListResponse

type KubernetesServiceOfferingsListResponse struct {
	Data []KubernetesServiceOffering `json:"data"`
}

type KubernetesVersion

type KubernetesVersion struct {
	ID      string `json:"id"`
	Version string `json:"version"`
	Enabled bool   `json:"enabled"`
}

type KubernetesVersionsListResponse

type KubernetesVersionsListResponse struct {
	Data []KubernetesVersion `json:"data"`
}

type LoadBalancerRule

type LoadBalancerRule struct {
	ID          string `json:"id"`
	Name        string `json:"name"`
	Algorithm   string `json:"algorithm"`
	PublicPort  int    `json:"public_port"`
	PrivatePort int    `json:"private_port"`
	Status      string `json:"status"`
}

type LoadBalancerRuleListResponse

type LoadBalancerRuleListResponse struct {
	Data []LoadBalancerRule `json:"data"`
}

type Meta

type Meta struct {
	CurrentPage int `json:"current_page"`
	From        int `json:"from"`
	LastPage    int `json:"last_page"`
	PerPage     int `json:"per_page"`
	To          int `json:"to"`
	Total       int `json:"total"`
}

type Network

type Network struct {
	ID              string            `json:"id"`
	Name            string            `json:"name"`
	Status          string            `json:"status"`
	NetworkOffering NetworkOffering   `json:"network_offering"`
	InstanceNetwork []InstanceNetwork `json:"instance_network"`
}

type NetworkCreateResponse

type NetworkCreateResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type NetworkDeleteResponse

type NetworkDeleteResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type NetworkListResponse

type NetworkListResponse struct {
	Data []Network `json:"data"`
}

type NetworkOffering

type NetworkOffering struct {
	ID                       string  `json:"id"`
	Name                     string  `json:"name"`
	DisplayName              string  `json:"displayname"`
	DisplayNameFA            string  `json:"displayname_fa"`
	HourlyStartedPrice       float64 `json:"hourly_started_price"`
	TrafficTransferOverprice float64 `json:"traffic_transfer_overprice"`
	TrafficTransferPlan      int     `json:"traffic_transfer_plan"`
	NetworkRate              int     `json:"networkrate"`
	Type                     string  `json:"type"`
	Description              string  `json:"description"`
	InternetProtocol         string  `json:"internet_protocol"`
}

type NetworkOfferingSummary

type NetworkOfferingSummary struct {
	ID                     string  `json:"id"`
	Name                   string  `json:"name"`
	DisplayName            string  `json:"displayname"`
	DisplayNameFA          string  `json:"displayname_fa"`
	HourlyStartedPrice     float64 `json:"hourly_started_price"`
	TrafficPricePerGig     float64 `json:"traffic_price_per_gig"`
	TrafficTransferFreeGig int     `json:"traffic_transfer_free_gig"`
	NetworkRate            int     `json:"networkrate"`
	Type                   string  `json:"type"`
	Description            string  `json:"description"`
	InternetProtocol       string  `json:"internet_protocol"`
}

type NetworkPublicIp

type NetworkPublicIp struct {
	ID              string   `json:"id"`
	NetworkID       string   `json:"network_id"`
	IpAddress       string   `json:"ipaddress"`
	IsSourceNat     bool     `json:"is_sourcenat"`
	CreatedAt       int64    `json:"created_at"`
	StaticNatEnable bool     `json:"staticnat_enable"`
	StaticNat       []string `json:"staticnat"`
}

Public IP struct

type NetworkPublicIpActionResponse

type NetworkPublicIpActionResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

Action response (associate, disassociate, static nat)

type NetworkPublicIpListResponse

type NetworkPublicIpListResponse struct {
	Data []NetworkPublicIp `json:"data"`
}

List response

type NetworkServiceOfferingListResponse

type NetworkServiceOfferingListResponse struct {
	Data []NetworkOffering `json:"data"`
}

type NetworkShowResponse

type NetworkShowResponse struct {
	Data Network `json:"data"`
}

type NetworkSummary

type NetworkSummary struct {
	ID         string            `json:"id"`
	Name       string            `json:"name"`
	IPConfig   IPConfigOrArray   `json:"ip_config"`
	IPConfigV6 IPConfigV6OrArray `json:"ip_config_v6"`
}

type NetworkVpnDetailResponse

type NetworkVpnDetailResponse struct {
	Data struct {
		IPAddress    string `json:"ipaddress"`
		Username     string `json:"username"`
		Password     string `json:"password"`
		PresharedKey string `json:"presharedkey"`
		Status       string `json:"status"`
	} `json:"data"`
}

type NetworkVpnSuccessResponse

type NetworkVpnSuccessResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type ObjectStorageBucket

type ObjectStorageBucket struct {
	ID        string `json:"id"`
	Name      string `json:"name"`
	URL       string `json:"url"`
	Region    string `json:"region"`
	AccessKey string `json:"access_key"`
	SecretKey string `json:"secret_key"`
	Status    string `json:"status"`
	Policy    string `json:"policy"`
	Size      int    `json:"size"`
	CreatedAt int    `json:"created_at"`
	UpdatedAt int    `json:"updated_at"`
	Tier      string `json:"tier"`
	IsFailed  bool   `json:"is_failed"`
	Message   string `json:"message"`
}

type ObjectStorageBucketCreationResponse

type ObjectStorageBucketCreationResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type ObjectStorageBucketResponse

type ObjectStorageBucketResponse struct {
	Data ObjectStorageBucket `json:"data"`
}

type ObjectStorageBucketsResponse

type ObjectStorageBucketsResponse struct {
	Data []ObjectStorageBucket `json:"data"`
}

type ObjectStorageEvent

type ObjectStorageEvent struct {
	ProductModel  string `json:"product_model"`
	ProductID     string `json:"product_id"`
	ProductSource string `json:"product_source"`
	Type          string `json:"type"`
	Content       string `json:"content"`
	CreatedAt     int    `json:"created_at"`
}

type ObjectStorageEventsResponse

type ObjectStorageEventsResponse struct {
	Data []ObjectStorageEvent `json:"data"`
	Meta Meta                 `json:"meta"`
}

type PaymentListResponse

type PaymentListResponse struct {
	Data []interface{} `json:"data"`
}

PaymentListResponse represents the response for the payment list endpoint.

type PortForwardActionResponse added in v1.0.3

type PortForwardActionResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type PortForwardListResponse added in v1.0.3

type PortForwardListResponse struct {
	Data []PortForwardRule `json:"data"`
}

type PortForwardRule added in v1.0.3

type PortForwardRule struct {
	ID          string `json:"id"`
	NetworkID   string `json:"network_id"`
	Protocol    string `json:"protocol"`
	PublicPort  int    `json:"public_port"`
	PrivatePort int    `json:"private_port"`
	PrivateIP   string `json:"private_ip"`
	Status      string `json:"status"`
	CreatedAt   int64  `json:"created_at"`
}

type Record

type Record struct {
	Name        string    `json:"name"`
	TTL         int       `json:"ttl"`
	Type        string    `json:"type"`
	Status      string    `json:"status"`
	IsProtected bool      `json:"is_protected"`
	Content     []Content `json:"content"`
}

type RecordList

type RecordList struct {
	Data []Record `json:"data"`
}

type SecondaryIP added in v1.0.2

type SecondaryIP struct {
	ID        string `json:"id"`
	IPAddress string `json:"ipaddress"`
	CreatedAt int64  `json:"created_at"`
}

type SuccessResponse

type SuccessResponse struct {
	Data struct {
		Success bool `json:"success"`
	} `json:"data"`
}

type UserProfileResponse

type UserProfileResponse struct {
	Data struct {
		ID           string      `json:"id"`
		Name         string      `json:"name"`
		Language     string      `json:"language"`
		NationalCode string      `json:"national_code"`
		Email        string      `json:"email"`
		Phone        string      `json:"phone"`
		Country      interface{} `json:"country"`
		State        interface{} `json:"state"`
		City         interface{} `json:"city"`
		Address      interface{} `json:"address"`
		Zip          interface{} `json:"zip"`
		Website      interface{} `json:"website"`
		Extra        struct {
			ReferralCode interface{} `json:"referral_code"`
		} `json:"extra"`
		Status             string      `json:"status"`
		Type               string      `json:"type"`
		CreatedAt          string      `json:"created_at"`
		UpdatedAt          string      `json:"updated_at"`
		CustomerZonesCount interface{} `json:"customer_zones_count"`
		InstancesCount     interface{} `json:"instances_count"`
		PaymentsCount      interface{} `json:"payments_count"`
		WalletsCount       interface{} `json:"wallets_count"`
		InviteCode         string      `json:"invite_code"`
		InvitedByMe        int         `json:"invited_by_me"`
		Picture            string      `json:"picture"`
	} `json:"data"`
}

UserProfileResponse represents the response for the user profile endpoint.

type UserSSHKey

type UserSSHKey struct {
	ID          string `json:"id"`
	DisplayName string `json:"display_name"`
	DataKey     string `json:"datakey"`
	DataValue   string `json:"datavalue"`
	CreatedAt   string `json:"created_at"`
}

UserSSHKey represents a single SSH key in the SSH key list response.

type UserSSHKeyListResponse

type UserSSHKeyListResponse struct {
	UserData []UserSSHKey `json:"userData"`
}

UserSSHKeyListResponse represents the response for the SSH key list endpoint.

type UserTokenAbilitiesResponse

type UserTokenAbilitiesResponse struct {
	Abilities []string `json:"abilities"`
}

UserTokenAbilitiesResponse represents the response for the token abilities endpoint.

type Volume

type Volume struct {
	ID     string `json:"id"`
	Name   string `json:"name"`
	ZoneID string `json:"zone_id"`
	Size   int    `json:"size"`
	Status string `json:"status"`
}

type VolumeListResponse

type VolumeListResponse struct {
	Data []Volume `json:"data"`
}

type WalletsBalanceResponse

type WalletsBalanceResponse struct {
	Data struct {
		Name           string  `json:"name"`
		Track          string  `json:"track"`
		Type           string  `json:"type"`
		Balance        float64 `json:"balance"`
		BalanceLimit   float64 `json:"balance_limit"`
		IsBlocked      bool    `json:"is_blocked"`
		MaxCost        float64 `json:"max_cost"`
		RemainingHours float64 `json:"remaining_hours"`
		UpdatedAt      string  `json:"updated_at"`
	} `json:"data"`
}

WalletsBalanceResponse represents the response for the wallets balance endpoint.

type ZoneActiveServicesResponse

type ZoneActiveServicesResponse struct {
	Instance      bool `json:"Instance"`
	DataVolume    bool `json:"DataVolume"`
	Network       bool `json:"Network"`
	ObjectStorage bool `json:"ObjectStorage"`
	K8s           bool `json:"K8s"`
}

ZoneActiveServicesResponse represents the response for the zone active services endpoint.

type ZoneNetworksResponse

type ZoneNetworksResponse struct {
	Data []struct {
		ID              string        `json:"id"`
		Name            string        `json:"name"`
		Status          string        `json:"status"`
		IPConfig        []interface{} `json:"ip_config"`
		IPConfigV6      []interface{} `json:"ip_config_v6"`
		NetworkOffering struct {
			ID                     string  `json:"id"`
			Name                   string  `json:"name"`
			DisplayName            string  `json:"displayname"`
			DisplayNameFa          string  `json:"displayname_fa"`
			HourlyStartedPrice     float64 `json:"hourly_started_price"`
			TrafficPricePerGig     float64 `json:"traffic_price_per_gig"`
			TrafficTransferFreeGig float64 `json:"traffic_transfer_free_gig"`
			NetworkRate            float64 `json:"networkrate"`
			Type                   string  `json:"type"`
			Description            string  `json:"description"`
			InternetProtocol       string  `json:"internet_protocol"`
		} `json:"network_offering"`
		InstanceNetwork []interface{} `json:"instance_network"`
	} `json:"data"`
}

ZoneNetworksResponse represents the response for the zone networks endpoint.

Jump to

Keyboard shortcuts

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