Documentation
¶
Overview ¶
Package webhosting provides methods and message types of the webhosting v1alpha1 API.
Index ¶
- Constants
- type API
- func (s *API) CreateHosting(req *CreateHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
- func (s *API) DeleteHosting(req *DeleteHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
- func (s *API) GetDomainDNSRecords(req *GetDomainDNSRecordsRequest, opts ...scw.RequestOption) (*DNSRecords, error)
- func (s *API) GetHosting(req *GetHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
- func (s *API) ListHostings(req *ListHostingsRequest, opts ...scw.RequestOption) (*ListHostingsResponse, error)
- func (s *API) ListOffers(req *ListOffersRequest, opts ...scw.RequestOption) (*ListOffersResponse, error)
- func (s *API) Regions() []scw.Region
- func (s *API) RestoreHosting(req *RestoreHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
- func (s *API) UpdateHosting(req *UpdateHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
- type CreateHostingRequest
- type DNSRecord
- type DNSRecordStatus
- type DNSRecordType
- type DNSRecords
- type DNSRecordsStatus
- type DeleteHostingRequest
- type GetDomainDNSRecordsRequest
- type GetHostingRequest
- type Hosting
- type HostingCpanelURLs
- type HostingDNSStatus
- type HostingOption
- type HostingStatus
- type ListHostingsRequest
- type ListHostingsRequestOrderBy
- type ListHostingsResponse
- type ListOffersRequest
- type ListOffersRequestOrderBy
- type ListOffersResponse
- type Nameserver
- type NameserverStatus
- type Offer
- type OfferProduct
- type RestoreHostingRequest
- type UpdateHostingRequest
Constants ¶
const ( DNSRecordStatusUnknownStatus = DNSRecordStatus("unknown_status") DNSRecordStatusValid = DNSRecordStatus("valid") DNSRecordStatusInvalid = DNSRecordStatus("invalid") )
const ( DNSRecordTypeUnknownType = DNSRecordType("unknown_type") DNSRecordTypeA = DNSRecordType("a") DNSRecordTypeCname = DNSRecordType("cname") DNSRecordTypeMx = DNSRecordType("mx") DNSRecordTypeTxt = DNSRecordType("txt") DNSRecordTypeNs = DNSRecordType("ns") DNSRecordTypeAaaa = DNSRecordType("aaaa") )
const ( DNSRecordsStatusUnknown = DNSRecordsStatus("unknown") DNSRecordsStatusValid = DNSRecordsStatus("valid") DNSRecordsStatusInvalid = DNSRecordsStatus("invalid") )
const ( HostingDNSStatusUnknownDNSStatus = HostingDNSStatus("unknown_dns_status") HostingDNSStatusValid = HostingDNSStatus("valid") HostingDNSStatusInvalid = HostingDNSStatus("invalid") )
const ( HostingStatusUnknownStatus = HostingStatus("unknown_status") HostingStatusDelivering = HostingStatus("delivering") HostingStatusReady = HostingStatus("ready") HostingStatusDeleting = HostingStatus("deleting") HostingStatusError = HostingStatus("error") HostingStatusLocked = HostingStatus("locked") )
const ( ListHostingsRequestOrderByCreatedAtAsc = ListHostingsRequestOrderBy("created_at_asc") ListHostingsRequestOrderByCreatedAtDesc = ListHostingsRequestOrderBy("created_at_desc") )
const ( NameserverStatusUnknownStatus = NameserverStatus("unknown_status") NameserverStatusValid = NameserverStatus("valid") NameserverStatusInvalid = NameserverStatus("invalid") )
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 (*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 with the given ID.
func (*API) GetDomainDNSRecords ¶
func (s *API) GetDomainDNSRecords(req *GetDomainDNSRecordsRequest, opts ...scw.RequestOption) (*DNSRecords, error)
GetDomainDNSRecords: get the DNS records of a specified domain.
func (*API) GetHosting ¶
func (s *API) GetHosting(req *GetHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
GetHosting: 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) RestoreHosting ¶
func (s *API) RestoreHosting(req *RestoreHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
RestoreHosting: 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.
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 GetHostingRequest ¶
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 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:"-"`
}
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"`
}
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 RestoreHostingRequest ¶
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"`
}