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)
- func (s *API) WaitForHosting(req *WaitForHostingRequest, 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 OfferQuotaWarning
- type RestoreHostingRequest
- type UpdateHostingRequest
- type WaitForHostingRequest
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") HostingStatusMigrating = HostingStatus("migrating") )
const ( ListHostingsRequestOrderByCreatedAtAsc = ListHostingsRequestOrderBy("created_at_asc") ListHostingsRequestOrderByCreatedAtDesc = ListHostingsRequestOrderBy("created_at_desc") )
const ( NameserverStatusUnknownStatus = NameserverStatus("unknown_status") NameserverStatusValid = NameserverStatus("valid") NameserverStatusInvalid = NameserverStatus("invalid") )
const ( OfferQuotaWarningUnknownQuotaWarning = OfferQuotaWarning("unknown_quota_warning") OfferQuotaWarningEmailCountExceeded = OfferQuotaWarning("email_count_exceeded") OfferQuotaWarningDatabaseCountExceeded = OfferQuotaWarning("database_count_exceeded") OfferQuotaWarningDiskUsageExceeded = OfferQuotaWarning("disk_usage_exceeded") )
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: web Hosting API.
func (*API) CreateHosting ¶
func (s *API) CreateHosting(req *CreateHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
CreateHosting: order a Web Hosting plan. Order a Web Hosting plan, specifying the offer type required via the `offer_id` parameter.
func (*API) DeleteHosting ¶
func (s *API) DeleteHosting(req *DeleteHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
DeleteHosting: delete a Web Hosting plan. Delete a Web Hosting plan, specified by its `hosting_id`. Note that deletion is not immediate: it will take place at the end of the calendar month, after which time your Web Hosting plan and all its data (files and emails) will be irreversibly lost.
func (*API) GetDomainDNSRecords ¶
func (s *API) GetDomainDNSRecords(req *GetDomainDNSRecordsRequest, opts ...scw.RequestOption) (*DNSRecords, error)
GetDomainDNSRecords: get DNS records. Get the set of DNS records of a specified domain associated with a Web Hosting plan.
func (*API) GetHosting ¶
func (s *API) GetHosting(req *GetHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
GetHosting: get a Web Hosting plan. Get the details of one of your existing Web Hosting plans, specified by its `hosting_id`.
func (*API) ListHostings ¶
func (s *API) ListHostings(req *ListHostingsRequest, opts ...scw.RequestOption) (*ListHostingsResponse, error)
ListHostings: list all Web Hosting plans. List all of your existing Web Hosting plans. Various filters are available to limit the results, including filtering by domain, status, tag and Project ID.
func (*API) ListOffers ¶
func (s *API) ListOffers(req *ListOffersRequest, opts ...scw.RequestOption) (*ListOffersResponse, error)
ListOffers: list all offers. List the different Web Hosting offers, and their options, available to order from Scaleway.
func (*API) RestoreHosting ¶
func (s *API) RestoreHosting(req *RestoreHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
RestoreHosting: restore a Web Hosting plan. When you [delete a Web Hosting plan](#path-hostings-delete-a-hosting), definitive deletion does not take place until the end of the calendar month. In the time between initiating the deletion, and definitive deletion at the end of the month, you can choose to **restore** the Web Hosting plan, using this endpoint and specifying its `hosting_id`.
func (*API) UpdateHosting ¶
func (s *API) UpdateHosting(req *UpdateHostingRequest, opts ...scw.RequestOption) (*Hosting, error)
UpdateHosting: update a Web Hosting plan. Update the details of one of your existing Web Hosting plans, specified by its `hosting_id`. You can update parameters including the contact email address, tags, options and offer.
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 Web Hosting plan. OfferID string `json:"offer_id"` // ProjectID: ID of the Scaleway Project in which to create the Web Hosting plan. ProjectID string `json:"project_id"` // Email: contact email for the Web Hosting client. Email *string `json:"email"` // Tags: list of tags for the Web Hosting plan. Tags []string `json:"tags"` // Domain: domain name to link to the Web Hosting plan. You must already own this domain name, and have completed the DNS validation process beforehand. Domain string `json:"domain"` // OptionIDs: iDs of any selected additional options for the Web Hosting plan. 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 Web Hosting plan. ID string `json:"id"` // OrganizationID: ID of the Scaleway Organization the Web Hosting plan belongs to. OrganizationID string `json:"organization_id"` // ProjectID: ID of the Scaleway Project the Web Hosting plan belongs to. ProjectID string `json:"project_id"` // UpdatedAt: date on which the Web Hosting plan was last updated. UpdatedAt *time.Time `json:"updated_at"` // CreatedAt: date on which the Web Hosting plan was created. CreatedAt *time.Time `json:"created_at"` // Status: status of the Web Hosting plan. // 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 for the Web Hosting plan. OfferID string `json:"offer_id"` // OfferName: name of the active offer for the Web Hosting plan. OfferName string `json:"offer_name"` // Domain: main domain associated with the Web Hosting plan. Domain string `json:"domain"` // Tags: list of tags associated with the Web Hosting plan. Tags []string `json:"tags"` // Options: array of any options activated for the Web Hosting plan. Options []*HostingOption `json:"options"` // DNSStatus: DNS status of the Web Hosting plan. // 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 Web Hosting cPanel username. Username string `json:"username"` // OfferEndOfLife: indicates if the hosting offer has reached its end of life. OfferEndOfLife bool `json:"offer_end_of_life"` // Region: region where the Web Hosting plan is hosted. 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: page number to return, from the paginated results (must be a positive integer). Page *int32 `json:"-"` // PageSize: number of Web Hosting plans to return (must be a positive integer lower or equal to 100). PageSize *uint32 `json:"-"` // OrderBy: sort order for Web Hosting plans in the response. // Default value: created_at_asc OrderBy ListHostingsRequestOrderBy `json:"-"` // Tags: tags to filter for, only Web Hosting plans with matching tags will be returned. Tags *[]string `json:"-"` // Statuses: statuses to filter for, only Web Hosting plans with matching statuses will be returned. Statuses []HostingStatus `json:"-"` // Domain: domain to filter for, only Web Hosting plans associated with this domain will be returned. Domain *string `json:"-"` // ProjectID: project ID to filter for, only Web Hosting plans from this Project will be returned. ProjectID *string `json:"-"` // OrganizationID: organization ID to filter for, only Web Hosting plans from this Organization will be returned. 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 Web Hosting plans returned. TotalCount uint32 `json:"total_count"` // Hostings: list of Web Hosting plans. 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: sort order of offers in the response. // Default value: price_asc OrderBy ListOffersRequestOrderBy `json:"-"` // WithoutOptions: defines whether the response should consist of offers only, without options. WithoutOptions bool `json:"-"` // OnlyOptions: defines whether the response should consist of options only, without offers. OnlyOptions bool `json:"-"` // HostingID: ID of a Web Hosting plan, to check compatibility with returned offers (in case of wanting to update the plan). 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 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: defines whether the nameserver is the default one. 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: product constituting this offer. Product *OfferProduct `json:"product"` // Price: price of this offer. Price *scw.Money `json:"price"` // Available: if a hosting_id was specified in the call, defines whether this offer is available for that Web Hosting plan to migrate (update) to. Available bool `json:"available"` // QuotaWarnings: quota warnings, if the offer is not available for the specified hosting_id. QuotaWarnings []OfferQuotaWarning `json:"quota_warnings"` // EndOfLife: indicates if the offer has reached its end of life. EndOfLife bool `json:"end_of_life"` }
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 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 Web Hosting plan. Email *string `json:"email"` // Tags: new tags for the Web Hosting plan. Tags *[]string `json:"tags"` // OptionIDs: iDs of the new options for the Web Hosting plan. OptionIDs *[]string `json:"option_ids"` // OfferID: ID of the new offer for the Web Hosting plan. OfferID *string `json:"offer_id"` }