webhosting

package
v1.0.0-beta.16 Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2023 License: Apache-2.0 Imports: 14 Imported by: 1

Documentation

Overview

Package webhosting provides methods and message types of the webhosting v1alpha1 API.

Index

Constants

View Source
const (
	DNSRecordStatusUnknownStatus = DNSRecordStatus("unknown_status")
	DNSRecordStatusValid         = DNSRecordStatus("valid")
	DNSRecordStatusInvalid       = DNSRecordStatus("invalid")
)
View Source
const (
	DNSRecordTypeUnknownType = DNSRecordType("unknown_type")
	DNSRecordTypeA           = DNSRecordType("a")
	DNSRecordTypeCname       = DNSRecordType("cname")
	DNSRecordTypeMx          = DNSRecordType("mx")
	DNSRecordTypeTxt         = DNSRecordType("txt")
	DNSRecordTypeNs          = DNSRecordType("ns")
	DNSRecordTypeAaaa        = DNSRecordType("aaaa")
)
View Source
const (
	DNSRecordsStatusUnknown = DNSRecordsStatus("unknown")
	DNSRecordsStatusValid   = DNSRecordsStatus("valid")
	DNSRecordsStatusInvalid = DNSRecordsStatus("invalid")
)
View Source
const (
	HostingDNSStatusUnknownDNSStatus = HostingDNSStatus("unknown_dns_status")
	HostingDNSStatusValid            = HostingDNSStatus("valid")
	HostingDNSStatusInvalid          = HostingDNSStatus("invalid")
)
View Source
const (
	HostingStatusUnknownStatus = HostingStatus("unknown_status")
	HostingStatusDelivering    = HostingStatus("delivering")
	HostingStatusReady         = HostingStatus("ready")
	HostingStatusDeleting      = HostingStatus("deleting")
	HostingStatusError         = HostingStatus("error")
	HostingStatusLocked        = HostingStatus("locked")
)
View Source
const (
	ListHostingsRequestOrderByCreatedAtAsc  = ListHostingsRequestOrderBy("created_at_asc")
	ListHostingsRequestOrderByCreatedAtDesc = ListHostingsRequestOrderBy("created_at_desc")
)
View Source
const (
	NameserverStatusUnknownStatus = NameserverStatus("unknown_status")
	NameserverStatusValid         = NameserverStatus("valid")
	NameserverStatusInvalid       = NameserverStatus("invalid")
)
View Source
const (
	OfferQuotaWarningUnknownQuotaWarning   = OfferQuotaWarning("unknown_quota_warning")
	OfferQuotaWarningEmailCountExceeded    = OfferQuotaWarning("email_count_exceeded")
	OfferQuotaWarningDatabaseCountExceeded = OfferQuotaWarning("database_count_exceeded")
	OfferQuotaWarningDiskUsageExceeded     = OfferQuotaWarning("disk_usage_exceeded")
)
View Source
const (
	ListOffersRequestOrderByPriceAsc = ListOffersRequestOrderBy("price_asc")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type API

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

API: webhosting API.

func NewAPI

func NewAPI(client *scw.Client) *API

NewAPI returns a API object from a Scaleway client.

func (*API) CreateHosting

func (s *API) CreateHosting(req *CreateHostingRequest, opts ...scw.RequestOption) (*Hosting, error)

CreateHosting: create a hosting.

func (*API) DeleteHosting

func (s *API) DeleteHosting(req *DeleteHostingRequest, opts ...scw.RequestOption) (*Hosting, error)

DeleteHosting: delete a hosting. Delete a hosting with the given ID.

func (*API) GetDomainDNSRecords

func (s *API) GetDomainDNSRecords(req *GetDomainDNSRecordsRequest, opts ...scw.RequestOption) (*DNSRecords, error)

GetDomainDNSRecords: get the DNS records. The set of DNS record of a specific domain associated to a hosting.

func (*API) GetHosting

func (s *API) GetHosting(req *GetHostingRequest, opts ...scw.RequestOption) (*Hosting, error)

GetHosting: get a hosting. Get the details of a Hosting with the given ID.

func (*API) ListHostings

func (s *API) ListHostings(req *ListHostingsRequest, opts ...scw.RequestOption) (*ListHostingsResponse, error)

ListHostings: list all hostings.

func (*API) ListOffers

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

ListOffers: list all offers.

func (*API) Regions

func (s *API) Regions() []scw.Region

Regions list localities the api is available in

func (*API) RestoreHosting

func (s *API) RestoreHosting(req *RestoreHostingRequest, opts ...scw.RequestOption) (*Hosting, error)

RestoreHosting: restore a hosting. Restore a hosting with the given ID.

func (*API) UpdateHosting

func (s *API) UpdateHosting(req *UpdateHostingRequest, opts ...scw.RequestOption) (*Hosting, error)

UpdateHosting: update a hosting.

func (*API) WaitForHosting

func (s *API) WaitForHosting(req *WaitForHostingRequest, opts ...scw.RequestOption) (*Hosting, error)

WaitForHosting wait for a hosting to be in a "terminal state" before returning.

type CreateHostingRequest

type CreateHostingRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// OfferID: ID of the selected offer for the hosting.
	OfferID string `json:"offer_id"`
	// ProjectID: project ID of the hosting.
	ProjectID string `json:"project_id"`
	// Email: contact email of the client for the hosting.
	Email *string `json:"email"`
	// Tags: the tags of the hosting.
	Tags []string `json:"tags"`
	// Domain: the domain name of the hosting.
	Domain string `json:"domain"`
	// OptionIDs: iDs of the selected options for the hosting.
	OptionIDs []string `json:"option_ids"`
}

type DNSRecord

type DNSRecord struct {
	// Name: record name.
	Name string `json:"name"`
	// Type: record type.
	// Default value: unknown_type
	Type DNSRecordType `json:"type"`
	// TTL: record time to live.
	TTL uint32 `json:"ttl"`
	// Value: record value.
	Value string `json:"value"`
	// Priority: record priority level.
	Priority *uint32 `json:"priority"`
	// Status: record status.
	// Default value: unknown_status
	Status DNSRecordStatus `json:"status"`
}

DNSRecord: dns record.

type DNSRecordStatus

type DNSRecordStatus string

func (DNSRecordStatus) MarshalJSON

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

func (DNSRecordStatus) String

func (enum DNSRecordStatus) String() string

func (*DNSRecordStatus) UnmarshalJSON

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

type DNSRecordType

type DNSRecordType string

func (DNSRecordType) MarshalJSON

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

func (DNSRecordType) String

func (enum DNSRecordType) String() string

func (*DNSRecordType) UnmarshalJSON

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

type DNSRecords

type DNSRecords struct {
	// Records: list of DNS records.
	Records []*DNSRecord `json:"records"`
	// NameServers: list of nameservers.
	NameServers []*Nameserver `json:"name_servers"`
	// Status: status of the records.
	// Default value: unknown
	Status DNSRecordsStatus `json:"status"`
}

DNSRecords: dns records.

type DNSRecordsStatus

type DNSRecordsStatus string

func (DNSRecordsStatus) MarshalJSON

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

func (DNSRecordsStatus) String

func (enum DNSRecordsStatus) String() string

func (*DNSRecordsStatus) UnmarshalJSON

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

type DeleteHostingRequest

type DeleteHostingRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// HostingID: hosting ID.
	HostingID string `json:"-"`
}

type GetDomainDNSRecordsRequest

type GetDomainDNSRecordsRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// Domain: domain associated to the DNS records.
	Domain string `json:"-"`
}

type GetHostingRequest

type GetHostingRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// HostingID: hosting ID.
	HostingID string `json:"-"`
}

type Hosting

type Hosting struct {
	// ID: ID of the hosting.
	ID string `json:"id"`
	// OrganizationID: organization ID of the hosting.
	OrganizationID string `json:"organization_id"`
	// ProjectID: project ID of the hosting.
	ProjectID string `json:"project_id"`
	// UpdatedAt: last update date.
	UpdatedAt *time.Time `json:"updated_at"`
	// CreatedAt: creation date.
	CreatedAt *time.Time `json:"created_at"`
	// Status: the hosting status.
	// Default value: unknown_status
	Status HostingStatus `json:"status"`
	// PlatformHostname: hostname of the host platform.
	PlatformHostname string `json:"platform_hostname"`
	// PlatformNumber: number of the host platform.
	PlatformNumber *int32 `json:"platform_number"`
	// OfferID: ID of the active offer.
	OfferID string `json:"offer_id"`
	// OfferName: name of the active offer.
	OfferName string `json:"offer_name"`
	// Domain: main domain of the hosting.
	Domain string `json:"domain"`
	// Tags: tags of the hosting.
	Tags []string `json:"tags"`
	// Options: active options of the hosting.
	Options []*HostingOption `json:"options"`
	// DNSStatus: DNS status of the hosting.
	// Default value: unknown_dns_status
	DNSStatus HostingDNSStatus `json:"dns_status"`
	// CpanelURLs: URL to connect to cPanel Dashboard and to Webmail interface.
	CpanelURLs *HostingCpanelURLs `json:"cpanel_urls"`
	// Username: main hosting cPanel username.
	Username string `json:"username"`
	// Region: region of the hosting.
	Region scw.Region `json:"region"`
}

Hosting: hosting.

type HostingCpanelURLs

type HostingCpanelURLs struct {
	Dashboard string `json:"dashboard"`

	Webmail string `json:"webmail"`
}

type HostingDNSStatus

type HostingDNSStatus string

func (HostingDNSStatus) MarshalJSON

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

func (HostingDNSStatus) String

func (enum HostingDNSStatus) String() string

func (*HostingDNSStatus) UnmarshalJSON

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

type HostingOption

type HostingOption struct {
	// ID: option ID.
	ID string `json:"id"`
	// Name: option name.
	Name string `json:"name"`
}

HostingOption: hosting. option.

type HostingStatus

type HostingStatus string

func (HostingStatus) MarshalJSON

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

func (HostingStatus) String

func (enum HostingStatus) String() string

func (*HostingStatus) UnmarshalJSON

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

type ListHostingsRequest

type ListHostingsRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// Page: a positive integer to choose the page to return.
	Page *int32 `json:"-"`
	// PageSize: a positive integer lower or equal to 100 to select the number of items to return.
	PageSize *uint32 `json:"-"`
	// OrderBy: define the order of the returned hostings.
	// Default value: created_at_asc
	OrderBy ListHostingsRequestOrderBy `json:"-"`
	// Tags: return hostings with these tags.
	Tags *[]string `json:"-"`
	// Statuses: return hostings with these statuses.
	Statuses []HostingStatus `json:"-"`
	// Domain: return hostings with this domain.
	Domain *string `json:"-"`
	// ProjectID: return hostings from this project ID.
	ProjectID *string `json:"-"`
	// OrganizationID: return hostings from this organization ID.
	OrganizationID *string `json:"-"`
}

type ListHostingsRequestOrderBy

type ListHostingsRequestOrderBy string

func (ListHostingsRequestOrderBy) MarshalJSON

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

func (ListHostingsRequestOrderBy) String

func (enum ListHostingsRequestOrderBy) String() string

func (*ListHostingsRequestOrderBy) UnmarshalJSON

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

type ListHostingsResponse

type ListHostingsResponse struct {
	// TotalCount: number of returned hostings.
	TotalCount uint32 `json:"total_count"`
	// Hostings: list of hostings.
	Hostings []*Hosting `json:"hostings"`
}

ListHostingsResponse: list hostings response.

func (*ListHostingsResponse) UnsafeAppend

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

UnsafeAppend should not be used Internal usage only

func (*ListHostingsResponse) UnsafeGetTotalCount

func (r *ListHostingsResponse) UnsafeGetTotalCount() uint32

UnsafeGetTotalCount should not be used Internal usage only

type ListOffersRequest

type ListOffersRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// OrderBy: define the order of the returned hostings.
	// Default value: price_asc
	OrderBy ListOffersRequestOrderBy `json:"-"`
	// WithoutOptions: select only offers, no options.
	WithoutOptions bool `json:"-"`
	// OnlyOptions: select only options.
	OnlyOptions bool `json:"-"`
	// HostingID: define a specific hosting id (optional).
	HostingID *string `json:"-"`
}

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 {
	// Offers: list of returned offers.
	Offers []*Offer `json:"offers"`
}

ListOffersResponse: list offers response.

type Nameserver

type Nameserver struct {
	// Hostname: hostname of the nameserver.
	Hostname string `json:"hostname"`
	// Status: status of the nameserver.
	// Default value: unknown_status
	Status NameserverStatus `json:"status"`
	// IsDefault: if the nameserver is the default.
	IsDefault bool `json:"is_default"`
}

Nameserver: nameserver.

type NameserverStatus

type NameserverStatus string

func (NameserverStatus) MarshalJSON

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

func (NameserverStatus) String

func (enum NameserverStatus) String() string

func (*NameserverStatus) UnmarshalJSON

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

type Offer

type Offer struct {
	// ID: offer ID.
	ID string `json:"id"`
	// BillingOperationPath: unique identifier used for billing.
	BillingOperationPath string `json:"billing_operation_path"`
	// Product: offer product.
	Product *OfferProduct `json:"product"`
	// Price: offer price.
	Price *scw.Money `json:"price"`
	// Available: if offer is available for a specific hosting.
	Available bool `json:"available"`
	// QuotaWarnings: if not available, return quota warnings.
	QuotaWarnings []OfferQuotaWarning `json:"quota_warnings"`
}

Offer: offer.

type OfferProduct

type OfferProduct struct {
	// Name: product name.
	Name string `json:"name"`
	// Option: product option.
	Option bool `json:"option"`

	EmailAccountsQuota int32 `json:"email_accounts_quota"`

	EmailStorageQuota int32 `json:"email_storage_quota"`

	DatabasesQuota int32 `json:"databases_quota"`

	HostingStorageQuota uint32 `json:"hosting_storage_quota"`

	SupportIncluded bool `json:"support_included"`

	VCPU uint32 `json:"v_cpu"`

	RAM uint32 `json:"ram"`
}

OfferProduct: offer. product.

type OfferQuotaWarning

type OfferQuotaWarning string

func (OfferQuotaWarning) MarshalJSON

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

func (OfferQuotaWarning) String

func (enum OfferQuotaWarning) String() string

func (*OfferQuotaWarning) UnmarshalJSON

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

type RestoreHostingRequest

type RestoreHostingRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// HostingID: hosting ID.
	HostingID string `json:"-"`
}

type UpdateHostingRequest

type UpdateHostingRequest struct {
	// Region: region to target. If none is passed will use default region from the config.
	Region scw.Region `json:"-"`
	// HostingID: hosting ID.
	HostingID string `json:"-"`
	// Email: new contact email for the hosting.
	Email *string `json:"email"`
	// Tags: new tags for the hosting.
	Tags *[]string `json:"tags"`
	// OptionIDs: new options IDs for the hosting.
	OptionIDs *[]string `json:"option_ids"`
	// OfferID: new offer ID for the hosting.
	OfferID *string `json:"offer_id"`
}

type WaitForHostingRequest

type WaitForHostingRequest struct {
	HostingID     string
	Region        scw.Region
	Timeout       *time.Duration
	RetryInterval *time.Duration
}

WaitForHostingRequest is used by WaitForHosting method.

Jump to

Keyboard shortcuts

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