cluster-autoscaler/cloudprovider/ionoscloud/ionos-cloud-sdk-go/api_servers.go (3,298 lines of code) (raw):
/*
* CLOUD API
*
* IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on.
*
* API version: 6.0
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package ionoscloud
import (
_context "context"
"fmt"
"io"
_nethttp "net/http"
_neturl "net/url"
"strings"
)
// Linger please
var (
_ _context.Context
)
// ServersApiService ServersApi service
type ServersApiService service
type ApiDatacentersServersCdromsDeleteRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
cdromId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersCdromsDeleteRequest) Pretty(pretty bool) ApiDatacentersServersCdromsDeleteRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersCdromsDeleteRequest) Depth(depth int32) ApiDatacentersServersCdromsDeleteRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersCdromsDeleteRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersCdromsDeleteRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersCdromsDeleteRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersCdromsDeleteExecute(r)
}
/*
- DatacentersServersCdromsDelete Detach a CD-ROM by ID
- Detachs the specified CD-ROM from the server.
Detaching a CD-ROM deletes the CD-ROM. The image will not be deleted.
Note that detaching a CD-ROM leads to a reset of the server.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @param cdromId The unique ID of the CD-ROM.
- @return ApiDatacentersServersCdromsDeleteRequest
*/
func (a *ServersApiService) DatacentersServersCdromsDelete(ctx _context.Context, datacenterId string, serverId string, cdromId string) ApiDatacentersServersCdromsDeleteRequest {
return ApiDatacentersServersCdromsDeleteRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
cdromId: cdromId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersCdromsDeleteExecute(r ApiDatacentersServersCdromsDeleteRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodDelete
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersCdromsDelete")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/cdroms/{cdromId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"cdromId"+"}", _neturl.PathEscape(parameterToString(r.cdromId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersCdromsDelete",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersCdromsFindByIdRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
cdromId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersCdromsFindByIdRequest) Pretty(pretty bool) ApiDatacentersServersCdromsFindByIdRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersCdromsFindByIdRequest) Depth(depth int32) ApiDatacentersServersCdromsFindByIdRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersCdromsFindByIdRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersCdromsFindByIdRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersCdromsFindByIdRequest) Execute() (Image, *APIResponse, error) {
return r.ApiService.DatacentersServersCdromsFindByIdExecute(r)
}
/*
* DatacentersServersCdromsFindById Get Attached CD-ROM by ID
* Retrieves the properties of the CD-ROM attached to the specified server.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @param cdromId The unique ID of the CD-ROM.
* @return ApiDatacentersServersCdromsFindByIdRequest
*/
func (a *ServersApiService) DatacentersServersCdromsFindById(ctx _context.Context, datacenterId string, serverId string, cdromId string) ApiDatacentersServersCdromsFindByIdRequest {
return ApiDatacentersServersCdromsFindByIdRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
cdromId: cdromId,
}
}
/*
* Execute executes the request
* @return Image
*/
func (a *ServersApiService) DatacentersServersCdromsFindByIdExecute(r ApiDatacentersServersCdromsFindByIdRequest) (Image, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Image
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersCdromsFindById")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/cdroms/{cdromId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"cdromId"+"}", _neturl.PathEscape(parameterToString(r.cdromId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersCdromsFindById",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersCdromsGetRequest struct {
ctx _context.Context
ApiService *ServersApiService
filters _neturl.Values
orderBy *string
maxResults *int32
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
offset *int32
limit *int32
}
func (r ApiDatacentersServersCdromsGetRequest) Pretty(pretty bool) ApiDatacentersServersCdromsGetRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersCdromsGetRequest) Depth(depth int32) ApiDatacentersServersCdromsGetRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersCdromsGetRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersCdromsGetRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersCdromsGetRequest) Offset(offset int32) ApiDatacentersServersCdromsGetRequest {
r.offset = &offset
return r
}
func (r ApiDatacentersServersCdromsGetRequest) Limit(limit int32) ApiDatacentersServersCdromsGetRequest {
r.limit = &limit
return r
}
// Filters query parameters limit results to those containing a matching value for a specific property.
func (r ApiDatacentersServersCdromsGetRequest) Filter(key string, value string) ApiDatacentersServersCdromsGetRequest {
filterKey := fmt.Sprintf(FilterQueryParam, key)
r.filters[filterKey] = append(r.filters[filterKey], value)
return r
}
// OrderBy query param sorts the results alphanumerically in ascending order based on the specified property.
func (r ApiDatacentersServersCdromsGetRequest) OrderBy(orderBy string) ApiDatacentersServersCdromsGetRequest {
r.orderBy = &orderBy
return r
}
// MaxResults query param limits the number of results returned.
func (r ApiDatacentersServersCdromsGetRequest) MaxResults(maxResults int32) ApiDatacentersServersCdromsGetRequest {
r.maxResults = &maxResults
return r
}
func (r ApiDatacentersServersCdromsGetRequest) Execute() (Cdroms, *APIResponse, error) {
return r.ApiService.DatacentersServersCdromsGetExecute(r)
}
/*
* DatacentersServersCdromsGet Get Attached CD-ROMs
* Lists all CD-ROMs attached to the specified server.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersCdromsGetRequest
*/
func (a *ServersApiService) DatacentersServersCdromsGet(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersCdromsGetRequest {
return ApiDatacentersServersCdromsGetRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
filters: _neturl.Values{},
}
}
/*
* Execute executes the request
* @return Cdroms
*/
func (a *ServersApiService) DatacentersServersCdromsGetExecute(r ApiDatacentersServersCdromsGetRequest) (Cdroms, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Cdroms
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersCdromsGet")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/cdroms"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
if r.offset != nil {
localVarQueryParams.Add("offset", parameterToString(*r.offset, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("offset")
if defaultQueryParam == "" {
localVarQueryParams.Add("offset", parameterToString(0, ""))
}
}
if r.limit != nil {
localVarQueryParams.Add("limit", parameterToString(*r.limit, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("limit")
if defaultQueryParam == "" {
localVarQueryParams.Add("limit", parameterToString(1000, ""))
}
}
if r.orderBy != nil {
localVarQueryParams.Add("orderBy", parameterToString(*r.orderBy, ""))
}
if r.maxResults != nil {
localVarQueryParams.Add("maxResults", parameterToString(*r.maxResults, ""))
}
if len(r.filters) > 0 {
for k, v := range r.filters {
for _, iv := range v {
localVarQueryParams.Add(k, iv)
}
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersCdromsGet",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersCdromsPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
cdrom *Image
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersCdromsPostRequest) Cdrom(cdrom Image) ApiDatacentersServersCdromsPostRequest {
r.cdrom = &cdrom
return r
}
func (r ApiDatacentersServersCdromsPostRequest) Pretty(pretty bool) ApiDatacentersServersCdromsPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersCdromsPostRequest) Depth(depth int32) ApiDatacentersServersCdromsPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersCdromsPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersCdromsPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersCdromsPostRequest) Execute() (Image, *APIResponse, error) {
return r.ApiService.DatacentersServersCdromsPostExecute(r)
}
/*
- DatacentersServersCdromsPost Attach a CD-ROM
- Attachs a CD-ROM to an existing server specified by its ID.
CD-ROMs cannot be created stand-alone like volumes. They are either attached to a server or do not exist. They always have an ISO-Image associated; empty CD-ROMs can not be provisioned. It is possible to attach up to two CD-ROMs to the same server.
Note that attaching a CD-ROM leads to a reset of the server.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersCdromsPostRequest
*/
func (a *ServersApiService) DatacentersServersCdromsPost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersCdromsPostRequest {
return ApiDatacentersServersCdromsPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
* @return Image
*/
func (a *ServersApiService) DatacentersServersCdromsPostExecute(r ApiDatacentersServersCdromsPostRequest) (Image, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Image
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersCdromsPost")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/cdroms"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.cdrom == nil {
return localVarReturnValue, nil, reportError("cdrom is required and must be specified")
}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
// body params
localVarPostBody = r.cdrom
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersCdromsPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersDeleteRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
deleteVolumes *bool
}
func (r ApiDatacentersServersDeleteRequest) Pretty(pretty bool) ApiDatacentersServersDeleteRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersDeleteRequest) Depth(depth int32) ApiDatacentersServersDeleteRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersDeleteRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersDeleteRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersDeleteRequest) DeleteVolumes(deleteVolumes bool) ApiDatacentersServersDeleteRequest {
r.deleteVolumes = &deleteVolumes
return r
}
func (r ApiDatacentersServersDeleteRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersDeleteExecute(r)
}
/*
* DatacentersServersDelete Delete servers
* Delete the specified server in your data center. The attached storage volumes will also be removed if the query parameter is set to true otherwise a separate API call must be made for these actions.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersDeleteRequest
*/
func (a *ServersApiService) DatacentersServersDelete(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersDeleteRequest {
return ApiDatacentersServersDeleteRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersDeleteExecute(r ApiDatacentersServersDeleteRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodDelete
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersDelete")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
if r.deleteVolumes != nil {
localVarQueryParams.Add("deleteVolumes", parameterToString(*r.deleteVolumes, ""))
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersDelete",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersFindByIdRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersFindByIdRequest) Pretty(pretty bool) ApiDatacentersServersFindByIdRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersFindByIdRequest) Depth(depth int32) ApiDatacentersServersFindByIdRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersFindByIdRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersFindByIdRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersFindByIdRequest) Execute() (Server, *APIResponse, error) {
return r.ApiService.DatacentersServersFindByIdExecute(r)
}
/*
* DatacentersServersFindById Retrieve servers by ID
* Retrieve information about the specified server within the data center, such as its configuration, provisioning status, and so on.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersFindByIdRequest
*/
func (a *ServersApiService) DatacentersServersFindById(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersFindByIdRequest {
return ApiDatacentersServersFindByIdRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
* @return Server
*/
func (a *ServersApiService) DatacentersServersFindByIdExecute(r ApiDatacentersServersFindByIdRequest) (Server, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Server
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersFindById")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersFindById",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersGetRequest struct {
ctx _context.Context
ApiService *ServersApiService
filters _neturl.Values
orderBy *string
maxResults *int32
datacenterId string
pretty *bool
depth *int32
upgradeNeeded *bool
xContractNumber *int32
offset *int32
limit *int32
}
func (r ApiDatacentersServersGetRequest) Pretty(pretty bool) ApiDatacentersServersGetRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersGetRequest) Depth(depth int32) ApiDatacentersServersGetRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersGetRequest) UpgradeNeeded(upgradeNeeded bool) ApiDatacentersServersGetRequest {
r.upgradeNeeded = &upgradeNeeded
return r
}
func (r ApiDatacentersServersGetRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersGetRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersGetRequest) Offset(offset int32) ApiDatacentersServersGetRequest {
r.offset = &offset
return r
}
func (r ApiDatacentersServersGetRequest) Limit(limit int32) ApiDatacentersServersGetRequest {
r.limit = &limit
return r
}
// Filters query parameters limit results to those containing a matching value for a specific property.
func (r ApiDatacentersServersGetRequest) Filter(key string, value string) ApiDatacentersServersGetRequest {
filterKey := fmt.Sprintf(FilterQueryParam, key)
r.filters[filterKey] = append(r.filters[filterKey], value)
return r
}
// OrderBy query param sorts the results alphanumerically in ascending order based on the specified property.
func (r ApiDatacentersServersGetRequest) OrderBy(orderBy string) ApiDatacentersServersGetRequest {
r.orderBy = &orderBy
return r
}
// MaxResults query param limits the number of results returned.
func (r ApiDatacentersServersGetRequest) MaxResults(maxResults int32) ApiDatacentersServersGetRequest {
r.maxResults = &maxResults
return r
}
func (r ApiDatacentersServersGetRequest) Execute() (Servers, *APIResponse, error) {
return r.ApiService.DatacentersServersGetExecute(r)
}
/*
* DatacentersServersGet List servers
* List all servers within the data center.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @return ApiDatacentersServersGetRequest
*/
func (a *ServersApiService) DatacentersServersGet(ctx _context.Context, datacenterId string) ApiDatacentersServersGetRequest {
return ApiDatacentersServersGetRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
filters: _neturl.Values{},
}
}
/*
* Execute executes the request
* @return Servers
*/
func (a *ServersApiService) DatacentersServersGetExecute(r ApiDatacentersServersGetRequest) (Servers, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Servers
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersGet")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
if r.upgradeNeeded != nil {
localVarQueryParams.Add("upgradeNeeded", parameterToString(*r.upgradeNeeded, ""))
}
if r.offset != nil {
localVarQueryParams.Add("offset", parameterToString(*r.offset, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("offset")
if defaultQueryParam == "" {
localVarQueryParams.Add("offset", parameterToString(0, ""))
}
}
if r.limit != nil {
localVarQueryParams.Add("limit", parameterToString(*r.limit, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("limit")
if defaultQueryParam == "" {
localVarQueryParams.Add("limit", parameterToString(1000, ""))
}
}
if r.orderBy != nil {
localVarQueryParams.Add("orderBy", parameterToString(*r.orderBy, ""))
}
if r.maxResults != nil {
localVarQueryParams.Add("maxResults", parameterToString(*r.maxResults, ""))
}
if len(r.filters) > 0 {
for k, v := range r.filters {
for _, iv := range v {
localVarQueryParams.Add(k, iv)
}
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersGet",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersPatchRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
server *ServerProperties
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersPatchRequest) Server(server ServerProperties) ApiDatacentersServersPatchRequest {
r.server = &server
return r
}
func (r ApiDatacentersServersPatchRequest) Pretty(pretty bool) ApiDatacentersServersPatchRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersPatchRequest) Depth(depth int32) ApiDatacentersServersPatchRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersPatchRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersPatchRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersPatchRequest) Execute() (Server, *APIResponse, error) {
return r.ApiService.DatacentersServersPatchExecute(r)
}
/*
* DatacentersServersPatch Partially modify servers
* Update the properties of the specified server within the data center.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersPatchRequest
*/
func (a *ServersApiService) DatacentersServersPatch(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersPatchRequest {
return ApiDatacentersServersPatchRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
* @return Server
*/
func (a *ServersApiService) DatacentersServersPatchExecute(r ApiDatacentersServersPatchRequest) (Server, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPatch
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Server
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersPatch")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.server == nil {
return localVarReturnValue, nil, reportError("server is required and must be specified")
}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
// body params
localVarPostBody = r.server
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersPatch",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
server *Server
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersPostRequest) Server(server Server) ApiDatacentersServersPostRequest {
r.server = &server
return r
}
func (r ApiDatacentersServersPostRequest) Pretty(pretty bool) ApiDatacentersServersPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersPostRequest) Depth(depth int32) ApiDatacentersServersPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersPostRequest) Execute() (Server, *APIResponse, error) {
return r.ApiService.DatacentersServersPostExecute(r)
}
/*
* DatacentersServersPost Create a Server
* Creates a server within the specified data center. You can also use this request to configure the boot volumes and connect to existing LANs at the same time.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @return ApiDatacentersServersPostRequest
*/
func (a *ServersApiService) DatacentersServersPost(ctx _context.Context, datacenterId string) ApiDatacentersServersPostRequest {
return ApiDatacentersServersPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
}
}
/*
* Execute executes the request
* @return Server
*/
func (a *ServersApiService) DatacentersServersPostExecute(r ApiDatacentersServersPostRequest) (Server, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Server
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersPost")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.server == nil {
return localVarReturnValue, nil, reportError("server is required and must be specified")
}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
// body params
localVarPostBody = r.server
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersPutRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
server *Server
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersPutRequest) Server(server Server) ApiDatacentersServersPutRequest {
r.server = &server
return r
}
func (r ApiDatacentersServersPutRequest) Pretty(pretty bool) ApiDatacentersServersPutRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersPutRequest) Depth(depth int32) ApiDatacentersServersPutRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersPutRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersPutRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersPutRequest) Execute() (Server, *APIResponse, error) {
return r.ApiService.DatacentersServersPutExecute(r)
}
/*
- DatacentersServersPut Modify a Server by ID
- Modifies the properties of the specified server within the data center.
Starting with v5, the 'allowReboot' attribute is retired; while previously required for changing certain server properties, this behavior is now implicit, and the backend will perform this automatically. For example, in earlier versions, when the CPU family is changed, 'allowReboot' had to be set to 'true'; this is no longer required, the reboot will be performed automatically.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersPutRequest
*/
func (a *ServersApiService) DatacentersServersPut(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersPutRequest {
return ApiDatacentersServersPutRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
* @return Server
*/
func (a *ServersApiService) DatacentersServersPutExecute(r ApiDatacentersServersPutRequest) (Server, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPut
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Server
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersPut")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.server == nil {
return localVarReturnValue, nil, reportError("server is required and must be specified")
}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
// body params
localVarPostBody = r.server
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersPut",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersRebootPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersRebootPostRequest) Pretty(pretty bool) ApiDatacentersServersRebootPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersRebootPostRequest) Depth(depth int32) ApiDatacentersServersRebootPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersRebootPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersRebootPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersRebootPostRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersRebootPostExecute(r)
}
/*
* DatacentersServersRebootPost Reboot servers
* Force a hard reboot of the specified server within the data center. Don't use this method if you wish to reboot gracefully. This is an equivalent of powering down a computer and turning it back on.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersRebootPostRequest
*/
func (a *ServersApiService) DatacentersServersRebootPost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersRebootPostRequest {
return ApiDatacentersServersRebootPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersRebootPostExecute(r ApiDatacentersServersRebootPostRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersRebootPost")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/reboot"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersRebootPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersRemoteConsoleGetRequest struct {
ctx _context.Context
ApiService *ServersApiService
filters _neturl.Values
orderBy *string
maxResults *int32
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersRemoteConsoleGetRequest) Pretty(pretty bool) ApiDatacentersServersRemoteConsoleGetRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersRemoteConsoleGetRequest) Depth(depth int32) ApiDatacentersServersRemoteConsoleGetRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersRemoteConsoleGetRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersRemoteConsoleGetRequest {
r.xContractNumber = &xContractNumber
return r
}
// Filters query parameters limit results to those containing a matching value for a specific property.
func (r ApiDatacentersServersRemoteConsoleGetRequest) Filter(key string, value string) ApiDatacentersServersRemoteConsoleGetRequest {
filterKey := fmt.Sprintf(FilterQueryParam, key)
r.filters[filterKey] = append(r.filters[filterKey], value)
return r
}
// OrderBy query param sorts the results alphanumerically in ascending order based on the specified property.
func (r ApiDatacentersServersRemoteConsoleGetRequest) OrderBy(orderBy string) ApiDatacentersServersRemoteConsoleGetRequest {
r.orderBy = &orderBy
return r
}
// MaxResults query param limits the number of results returned.
func (r ApiDatacentersServersRemoteConsoleGetRequest) MaxResults(maxResults int32) ApiDatacentersServersRemoteConsoleGetRequest {
r.maxResults = &maxResults
return r
}
func (r ApiDatacentersServersRemoteConsoleGetRequest) Execute() (RemoteConsoleUrl, *APIResponse, error) {
return r.ApiService.DatacentersServersRemoteConsoleGetExecute(r)
}
/*
* DatacentersServersRemoteConsoleGet Get Remote Console link
* Retrieve a link with a JSON Web Token for accessing the server's Remote Console.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersRemoteConsoleGetRequest
*/
func (a *ServersApiService) DatacentersServersRemoteConsoleGet(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersRemoteConsoleGetRequest {
return ApiDatacentersServersRemoteConsoleGetRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
filters: _neturl.Values{},
}
}
/*
* Execute executes the request
* @return RemoteConsoleUrl
*/
func (a *ServersApiService) DatacentersServersRemoteConsoleGetExecute(r ApiDatacentersServersRemoteConsoleGetRequest) (RemoteConsoleUrl, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue RemoteConsoleUrl
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersRemoteConsoleGet")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/remoteconsole"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
if r.orderBy != nil {
localVarQueryParams.Add("orderBy", parameterToString(*r.orderBy, ""))
}
if r.maxResults != nil {
localVarQueryParams.Add("maxResults", parameterToString(*r.maxResults, ""))
}
if len(r.filters) > 0 {
for k, v := range r.filters {
for _, iv := range v {
localVarQueryParams.Add(k, iv)
}
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersRemoteConsoleGet",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersResumePostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersResumePostRequest) Pretty(pretty bool) ApiDatacentersServersResumePostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersResumePostRequest) Depth(depth int32) ApiDatacentersServersResumePostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersResumePostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersResumePostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersResumePostRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersResumePostExecute(r)
}
/*
- DatacentersServersResumePost Resume a Cube Server by ID
- Resumes a suspended Cube Server specified by its ID.
Since the suspended instance was not deleted the allocated resources continue to be billed. You can perform this operation only for Cube Servers.
To check the status of the request, you can use the 'Location' HTTP header in the response (see 'Requests' for more information).
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersResumePostRequest
*/
func (a *ServersApiService) DatacentersServersResumePost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersResumePostRequest {
return ApiDatacentersServersResumePostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersResumePostExecute(r ApiDatacentersServersResumePostRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersResumePost")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/resume"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersResumePost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersStartPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersStartPostRequest) Pretty(pretty bool) ApiDatacentersServersStartPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersStartPostRequest) Depth(depth int32) ApiDatacentersServersStartPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersStartPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersStartPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersStartPostRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersStartPostExecute(r)
}
/*
- DatacentersServersStartPost Start an Enterprise Server by ID
- Starts the Enterprise Server specified by its ID.
>Note that you cannot use this method to start a Cube Server.
By starting the Enterprise Server, cores and RAM are provisioned, and the billing continues.
If the server's public IPv4 address has been deallocated, a new IPv4 address will be assigned. IPv6 blocks and addresses will remain unchanged when stopping and starting a server.
To check the status of the request, you can use the 'Location' HTTP header in the response (see 'Requests' for more information).
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersStartPostRequest
*/
func (a *ServersApiService) DatacentersServersStartPost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersStartPostRequest {
return ApiDatacentersServersStartPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersStartPostExecute(r ApiDatacentersServersStartPostRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersStartPost")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/start"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersStartPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersStopPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersStopPostRequest) Pretty(pretty bool) ApiDatacentersServersStopPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersStopPostRequest) Depth(depth int32) ApiDatacentersServersStopPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersStopPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersStopPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersStopPostRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersStopPostExecute(r)
}
/*
- DatacentersServersStopPost Stop an Enterprise Server by ID
- Stops the Enterprise Server specified by its ID.
>Note that you cannot use this method to stop a Cube Server.
By stopping the Enterprise Server, cores and RAM are freed and no longer charged.
Public IPv4 IPs that are not reserved are returned to the IPv4 pool. IPv6 blocks and addresses will remain unchanged when stopping and starting a server.
To check the status of the request, you can use the 'Location' HTTP header in the response (see 'Requests' for more information).
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersStopPostRequest
*/
func (a *ServersApiService) DatacentersServersStopPost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersStopPostRequest {
return ApiDatacentersServersStopPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersStopPostExecute(r ApiDatacentersServersStopPostRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersStopPost")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/stop"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersStopPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersSuspendPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersSuspendPostRequest) Pretty(pretty bool) ApiDatacentersServersSuspendPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersSuspendPostRequest) Depth(depth int32) ApiDatacentersServersSuspendPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersSuspendPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersSuspendPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersSuspendPostRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersSuspendPostExecute(r)
}
/*
- DatacentersServersSuspendPost Suspend a Cube Server by ID
- Suspends the specified Cubes instance within the data center.
The instance is not deleted and allocated resources continue to be billed. You can perform this operation only for Cube Servers.
To check the status of the request, you can use the 'Location' HTTP header in the response (see 'Requests' for more information).
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersSuspendPostRequest
*/
func (a *ServersApiService) DatacentersServersSuspendPost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersSuspendPostRequest {
return ApiDatacentersServersSuspendPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersSuspendPostExecute(r ApiDatacentersServersSuspendPostRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersSuspendPost")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/suspend"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersSuspendPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersTokenGetRequest struct {
ctx _context.Context
ApiService *ServersApiService
filters _neturl.Values
orderBy *string
maxResults *int32
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersTokenGetRequest) Pretty(pretty bool) ApiDatacentersServersTokenGetRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersTokenGetRequest) Depth(depth int32) ApiDatacentersServersTokenGetRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersTokenGetRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersTokenGetRequest {
r.xContractNumber = &xContractNumber
return r
}
// Filters query parameters limit results to those containing a matching value for a specific property.
func (r ApiDatacentersServersTokenGetRequest) Filter(key string, value string) ApiDatacentersServersTokenGetRequest {
filterKey := fmt.Sprintf(FilterQueryParam, key)
r.filters[filterKey] = append(r.filters[filterKey], value)
return r
}
// OrderBy query param sorts the results alphanumerically in ascending order based on the specified property.
func (r ApiDatacentersServersTokenGetRequest) OrderBy(orderBy string) ApiDatacentersServersTokenGetRequest {
r.orderBy = &orderBy
return r
}
// MaxResults query param limits the number of results returned.
func (r ApiDatacentersServersTokenGetRequest) MaxResults(maxResults int32) ApiDatacentersServersTokenGetRequest {
r.maxResults = &maxResults
return r
}
func (r ApiDatacentersServersTokenGetRequest) Execute() (Token, *APIResponse, error) {
return r.ApiService.DatacentersServersTokenGetExecute(r)
}
/*
* DatacentersServersTokenGet Get JASON Web Token
* Retrieve a JSON Web Token from the server for use in login operations (such as accessing the server's console).
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersTokenGetRequest
*/
func (a *ServersApiService) DatacentersServersTokenGet(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersTokenGetRequest {
return ApiDatacentersServersTokenGetRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
filters: _neturl.Values{},
}
}
/*
* Execute executes the request
* @return Token
*/
func (a *ServersApiService) DatacentersServersTokenGetExecute(r ApiDatacentersServersTokenGetRequest) (Token, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Token
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersTokenGet")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/token"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
if r.orderBy != nil {
localVarQueryParams.Add("orderBy", parameterToString(*r.orderBy, ""))
}
if r.maxResults != nil {
localVarQueryParams.Add("maxResults", parameterToString(*r.maxResults, ""))
}
if len(r.filters) > 0 {
for k, v := range r.filters {
for _, iv := range v {
localVarQueryParams.Add(k, iv)
}
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersTokenGet",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersUpgradePostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersUpgradePostRequest) Pretty(pretty bool) ApiDatacentersServersUpgradePostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersUpgradePostRequest) Depth(depth int32) ApiDatacentersServersUpgradePostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersUpgradePostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersUpgradePostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersUpgradePostRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersUpgradePostExecute(r)
}
/*
* DatacentersServersUpgradePost Upgrade a Server by ID
* Upgrades the server version.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersUpgradePostRequest
*/
func (a *ServersApiService) DatacentersServersUpgradePost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersUpgradePostRequest {
return ApiDatacentersServersUpgradePostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersUpgradePostExecute(r ApiDatacentersServersUpgradePostRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersUpgradePost")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/upgrade"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersUpgradePost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersVolumesDeleteRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
volumeId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersVolumesDeleteRequest) Pretty(pretty bool) ApiDatacentersServersVolumesDeleteRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersVolumesDeleteRequest) Depth(depth int32) ApiDatacentersServersVolumesDeleteRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersVolumesDeleteRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersVolumesDeleteRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersVolumesDeleteRequest) Execute() (*APIResponse, error) {
return r.ApiService.DatacentersServersVolumesDeleteExecute(r)
}
/*
- DatacentersServersVolumesDelete Detach a Volume by ID
- Detachs the specified volume from the server.
Note that only the volume's connection to the specified server is disconnected. If you want to delete the volume, you must submit a separate request to perform the deletion.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @param volumeId The unique ID of the volume.
- @return ApiDatacentersServersVolumesDeleteRequest
*/
func (a *ServersApiService) DatacentersServersVolumesDelete(ctx _context.Context, datacenterId string, serverId string, volumeId string) ApiDatacentersServersVolumesDeleteRequest {
return ApiDatacentersServersVolumesDeleteRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
volumeId: volumeId,
}
}
/*
* Execute executes the request
*/
func (a *ServersApiService) DatacentersServersVolumesDeleteExecute(r ApiDatacentersServersVolumesDeleteRequest) (*APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodDelete
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersVolumesDelete")
if err != nil {
return nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/volumes/{volumeId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"volumeId"+"}", _neturl.PathEscape(parameterToString(r.volumeId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersVolumesDelete",
}
if err != nil || localVarHTTPResponse == nil {
return localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarAPIResponse, newErr
}
newErr.model = v
return localVarAPIResponse, newErr
}
return localVarAPIResponse, nil
}
type ApiDatacentersServersVolumesFindByIdRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
volumeId string
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersVolumesFindByIdRequest) Pretty(pretty bool) ApiDatacentersServersVolumesFindByIdRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersVolumesFindByIdRequest) Depth(depth int32) ApiDatacentersServersVolumesFindByIdRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersVolumesFindByIdRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersVolumesFindByIdRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersVolumesFindByIdRequest) Execute() (Volume, *APIResponse, error) {
return r.ApiService.DatacentersServersVolumesFindByIdExecute(r)
}
/*
* DatacentersServersVolumesFindById Get Attached Volume by ID
* Retrieves the properties of the volume attached to the specified server.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @param volumeId The unique ID of the volume.
* @return ApiDatacentersServersVolumesFindByIdRequest
*/
func (a *ServersApiService) DatacentersServersVolumesFindById(ctx _context.Context, datacenterId string, serverId string, volumeId string) ApiDatacentersServersVolumesFindByIdRequest {
return ApiDatacentersServersVolumesFindByIdRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
volumeId: volumeId,
}
}
/*
* Execute executes the request
* @return Volume
*/
func (a *ServersApiService) DatacentersServersVolumesFindByIdExecute(r ApiDatacentersServersVolumesFindByIdRequest) (Volume, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Volume
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersVolumesFindById")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/volumes/{volumeId}"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"volumeId"+"}", _neturl.PathEscape(parameterToString(r.volumeId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersVolumesFindById",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersVolumesGetRequest struct {
ctx _context.Context
ApiService *ServersApiService
filters _neturl.Values
orderBy *string
maxResults *int32
datacenterId string
serverId string
pretty *bool
depth *int32
xContractNumber *int32
offset *int32
limit *int32
}
func (r ApiDatacentersServersVolumesGetRequest) Pretty(pretty bool) ApiDatacentersServersVolumesGetRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersVolumesGetRequest) Depth(depth int32) ApiDatacentersServersVolumesGetRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersVolumesGetRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersVolumesGetRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersVolumesGetRequest) Offset(offset int32) ApiDatacentersServersVolumesGetRequest {
r.offset = &offset
return r
}
func (r ApiDatacentersServersVolumesGetRequest) Limit(limit int32) ApiDatacentersServersVolumesGetRequest {
r.limit = &limit
return r
}
// Filters query parameters limit results to those containing a matching value for a specific property.
func (r ApiDatacentersServersVolumesGetRequest) Filter(key string, value string) ApiDatacentersServersVolumesGetRequest {
filterKey := fmt.Sprintf(FilterQueryParam, key)
r.filters[filterKey] = append(r.filters[filterKey], value)
return r
}
// OrderBy query param sorts the results alphanumerically in ascending order based on the specified property.
func (r ApiDatacentersServersVolumesGetRequest) OrderBy(orderBy string) ApiDatacentersServersVolumesGetRequest {
r.orderBy = &orderBy
return r
}
// MaxResults query param limits the number of results returned.
func (r ApiDatacentersServersVolumesGetRequest) MaxResults(maxResults int32) ApiDatacentersServersVolumesGetRequest {
r.maxResults = &maxResults
return r
}
func (r ApiDatacentersServersVolumesGetRequest) Execute() (AttachedVolumes, *APIResponse, error) {
return r.ApiService.DatacentersServersVolumesGetExecute(r)
}
/*
* DatacentersServersVolumesGet Get Attached Volumes
* Lists all volumes attached to the specified server.
* @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
* @param datacenterId The unique ID of the data center.
* @param serverId The unique ID of the server.
* @return ApiDatacentersServersVolumesGetRequest
*/
func (a *ServersApiService) DatacentersServersVolumesGet(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersVolumesGetRequest {
return ApiDatacentersServersVolumesGetRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
filters: _neturl.Values{},
}
}
/*
* Execute executes the request
* @return AttachedVolumes
*/
func (a *ServersApiService) DatacentersServersVolumesGetExecute(r ApiDatacentersServersVolumesGetRequest) (AttachedVolumes, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodGet
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue AttachedVolumes
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersVolumesGet")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/volumes"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
if r.offset != nil {
localVarQueryParams.Add("offset", parameterToString(*r.offset, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("offset")
if defaultQueryParam == "" {
localVarQueryParams.Add("offset", parameterToString(0, ""))
}
}
if r.limit != nil {
localVarQueryParams.Add("limit", parameterToString(*r.limit, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("limit")
if defaultQueryParam == "" {
localVarQueryParams.Add("limit", parameterToString(1000, ""))
}
}
if r.orderBy != nil {
localVarQueryParams.Add("orderBy", parameterToString(*r.orderBy, ""))
}
if r.maxResults != nil {
localVarQueryParams.Add("maxResults", parameterToString(*r.maxResults, ""))
}
if len(r.filters) > 0 {
for k, v := range r.filters {
for _, iv := range v {
localVarQueryParams.Add(k, iv)
}
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersVolumesGet",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}
type ApiDatacentersServersVolumesPostRequest struct {
ctx _context.Context
ApiService *ServersApiService
datacenterId string
serverId string
volume *Volume
pretty *bool
depth *int32
xContractNumber *int32
}
func (r ApiDatacentersServersVolumesPostRequest) Volume(volume Volume) ApiDatacentersServersVolumesPostRequest {
r.volume = &volume
return r
}
func (r ApiDatacentersServersVolumesPostRequest) Pretty(pretty bool) ApiDatacentersServersVolumesPostRequest {
r.pretty = &pretty
return r
}
func (r ApiDatacentersServersVolumesPostRequest) Depth(depth int32) ApiDatacentersServersVolumesPostRequest {
r.depth = &depth
return r
}
func (r ApiDatacentersServersVolumesPostRequest) XContractNumber(xContractNumber int32) ApiDatacentersServersVolumesPostRequest {
r.xContractNumber = &xContractNumber
return r
}
func (r ApiDatacentersServersVolumesPostRequest) Execute() (Volume, *APIResponse, error) {
return r.ApiService.DatacentersServersVolumesPostExecute(r)
}
/*
- DatacentersServersVolumesPost Attach a Volume to a Server
- Attachs an existing storage volume to the specified server.
You can attach an existing volume in the VDC to a server. To move a volume from one server to another, you must first detach the volume from the first server and attach it to the second server.
It is also possible to create and attach a volume in one step by simply providing a new volume description as a payload. The only difference is the URL; see 'Creating a Volume' for details about volumes.
Note that the combined total of attached volumes and NICs cannot exceed 24 per server.
- @param ctx _context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
- @param datacenterId The unique ID of the data center.
- @param serverId The unique ID of the server.
- @return ApiDatacentersServersVolumesPostRequest
*/
func (a *ServersApiService) DatacentersServersVolumesPost(ctx _context.Context, datacenterId string, serverId string) ApiDatacentersServersVolumesPostRequest {
return ApiDatacentersServersVolumesPostRequest{
ApiService: a,
ctx: ctx,
datacenterId: datacenterId,
serverId: serverId,
}
}
/*
* Execute executes the request
* @return Volume
*/
func (a *ServersApiService) DatacentersServersVolumesPostExecute(r ApiDatacentersServersVolumesPostRequest) (Volume, *APIResponse, error) {
var (
localVarHTTPMethod = _nethttp.MethodPost
localVarPostBody interface{}
localVarFormFileName string
localVarFileName string
localVarFileBytes []byte
localVarReturnValue Volume
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ServersApiService.DatacentersServersVolumesPost")
if err != nil {
return localVarReturnValue, nil, GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/datacenters/{datacenterId}/servers/{serverId}/volumes"
localVarPath = strings.Replace(localVarPath, "{"+"datacenterId"+"}", _neturl.PathEscape(parameterToString(r.datacenterId, "")), -1)
localVarPath = strings.Replace(localVarPath, "{"+"serverId"+"}", _neturl.PathEscape(parameterToString(r.serverId, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := _neturl.Values{}
localVarFormParams := _neturl.Values{}
if r.volume == nil {
return localVarReturnValue, nil, reportError("volume is required and must be specified")
}
if r.pretty != nil {
localVarQueryParams.Add("pretty", parameterToString(*r.pretty, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("pretty")
if defaultQueryParam == "" {
localVarQueryParams.Add("pretty", parameterToString(true, ""))
}
}
if r.depth != nil {
localVarQueryParams.Add("depth", parameterToString(*r.depth, ""))
} else {
defaultQueryParam := a.client.cfg.DefaultQueryParams.Get("depth")
if defaultQueryParam == "" {
localVarQueryParams.Add("depth", parameterToString(0, ""))
}
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
if r.xContractNumber != nil {
localVarHeaderParams["X-Contract-Number"] = parameterToString(*r.xContractNumber, "")
}
// body params
localVarPostBody = r.volume
if r.ctx != nil {
// API Key Authentication
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
if apiKey, ok := auth["Token Authentication"]; ok {
var key string
if apiKey.Prefix != "" {
key = apiKey.Prefix + " " + apiKey.Key
} else {
key = apiKey.Key
}
localVarHeaderParams["Authorization"] = key
}
}
}
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, httpRequestTime, err := a.client.callAPI(req)
localVarAPIResponse := &APIResponse{
Response: localVarHTTPResponse,
Method: localVarHTTPMethod,
RequestURL: localVarPath,
RequestTime: httpRequestTime,
Operation: "DatacentersServersVolumesPost",
}
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarAPIResponse, err
}
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarAPIResponse.Payload = localVarBody
if err != nil {
return localVarReturnValue, localVarAPIResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, string(localVarBody)),
}
var v Error
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = fmt.Sprintf(FormatStringErr, localVarHTTPResponse.Status, err.Error())
return localVarReturnValue, localVarAPIResponse, newErr
}
newErr.model = v
return localVarReturnValue, localVarAPIResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := GenericOpenAPIError{
statusCode: localVarHTTPResponse.StatusCode,
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarAPIResponse, newErr
}
return localVarReturnValue, localVarAPIResponse, nil
}