api_zones.go raw

   1  /*
   2  Intelligent DNS API
   3  
   4  No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
   5  
   6  API version: 1.0.0
   7  */
   8  
   9  // Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
  10  
  11  package idns
  12  
  13  import (
  14  	"bytes"
  15  	"context"
  16  	"io"
  17  	"net/http"
  18  	"net/url"
  19  	"strings"
  20  )
  21  
  22  
  23  // ZonesAPIService ZonesAPI service
  24  type ZonesAPIService service
  25  
  26  type ApiDeleteZoneRequest struct {
  27  	ctx context.Context
  28  	ApiService *ZonesAPIService
  29  	zoneId int32
  30  }
  31  
  32  func (r ApiDeleteZoneRequest) Execute() (string, *http.Response, error) {
  33  	return r.ApiService.DeleteZoneExecute(r)
  34  }
  35  
  36  /*
  37  DeleteZone Remove an Intelligent DNS hosted zone
  38  
  39   @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
  40   @param zoneId The hosted zone id
  41   @return ApiDeleteZoneRequest
  42  */
  43  func (a *ZonesAPIService) DeleteZone(ctx context.Context, zoneId int32) ApiDeleteZoneRequest {
  44  	return ApiDeleteZoneRequest{
  45  		ApiService: a,
  46  		ctx: ctx,
  47  		zoneId: zoneId,
  48  	}
  49  }
  50  
  51  // Execute executes the request
  52  //  @return string
  53  func (a *ZonesAPIService) DeleteZoneExecute(r ApiDeleteZoneRequest) (string, *http.Response, error) {
  54  	var (
  55  		localVarHTTPMethod   = http.MethodDelete
  56  		localVarPostBody     interface{}
  57  		formFiles            []formFile
  58  		localVarReturnValue  string
  59  	)
  60  
  61  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ZonesAPIService.DeleteZone")
  62  	if err != nil {
  63  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
  64  	}
  65  
  66  	localVarPath := localBasePath + "/intelligent_dns/{zone_id}"
  67  	localVarPath = strings.Replace(localVarPath, "{"+"zone_id"+"}", url.PathEscape(parameterValueToString(r.zoneId, "zoneId")), -1)
  68  
  69  	localVarHeaderParams := make(map[string]string)
  70  	localVarQueryParams := url.Values{}
  71  	localVarFormParams := url.Values{}
  72  	if r.zoneId < 1 {
  73  		return localVarReturnValue, nil, reportError("zoneId must be greater than 1")
  74  	}
  75  
  76  	// to determine the Content-Type header
  77  	localVarHTTPContentTypes := []string{}
  78  
  79  	// set Content-Type header
  80  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
  81  	if localVarHTTPContentType != "" {
  82  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
  83  	}
  84  
  85  	// to determine the Accept header
  86  	localVarHTTPHeaderAccepts := []string{"application/json; version=3"}
  87  
  88  	// set Accept header
  89  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
  90  	if localVarHTTPHeaderAccept != "" {
  91  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
  92  	}
  93  	if r.ctx != nil {
  94  		// API Key Authentication
  95  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
  96  			if apiKey, ok := auth["tokenAuth"]; ok {
  97  				var key string
  98  				if apiKey.Prefix != "" {
  99  					key = apiKey.Prefix + " " + apiKey.Key
 100  				} else {
 101  					key = apiKey.Key
 102  				}
 103  				localVarHeaderParams["Authorization"] = key
 104  			}
 105  		}
 106  	}
 107  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
 108  	if err != nil {
 109  		return localVarReturnValue, nil, err
 110  	}
 111  
 112  	localVarHTTPResponse, err := a.client.callAPI(req)
 113  	if err != nil || localVarHTTPResponse == nil {
 114  		return localVarReturnValue, localVarHTTPResponse, err
 115  	}
 116  
 117  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
 118  	localVarHTTPResponse.Body.Close()
 119  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
 120  	if err != nil {
 121  		return localVarReturnValue, localVarHTTPResponse, err
 122  	}
 123  
 124  	if localVarHTTPResponse.StatusCode >= 300 {
 125  		newErr := &GenericOpenAPIError{
 126  			body:  localVarBody,
 127  			error: localVarHTTPResponse.Status,
 128  		}
 129  		if localVarHTTPResponse.StatusCode == 404 {
 130  			var v ErrorResponse
 131  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 132  			if err != nil {
 133  				newErr.error = err.Error()
 134  				return localVarReturnValue, localVarHTTPResponse, newErr
 135  			}
 136  					newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
 137  					newErr.model = v
 138  		}
 139  		return localVarReturnValue, localVarHTTPResponse, newErr
 140  	}
 141  
 142  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 143  	if err != nil {
 144  		newErr := &GenericOpenAPIError{
 145  			body:  localVarBody,
 146  			error: err.Error(),
 147  		}
 148  		return localVarReturnValue, localVarHTTPResponse, newErr
 149  	}
 150  
 151  	return localVarReturnValue, localVarHTTPResponse, nil
 152  }
 153  
 154  type ApiGetZoneRequest struct {
 155  	ctx context.Context
 156  	ApiService *ZonesAPIService
 157  	zoneId int32
 158  }
 159  
 160  func (r ApiGetZoneRequest) Execute() (*GetZoneResponse, *http.Response, error) {
 161  	return r.ApiService.GetZoneExecute(r)
 162  }
 163  
 164  /*
 165  GetZone Get an Intelligent DNS hosted zone
 166  
 167   @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
 168   @param zoneId The hosted zone id
 169   @return ApiGetZoneRequest
 170  */
 171  func (a *ZonesAPIService) GetZone(ctx context.Context, zoneId int32) ApiGetZoneRequest {
 172  	return ApiGetZoneRequest{
 173  		ApiService: a,
 174  		ctx: ctx,
 175  		zoneId: zoneId,
 176  	}
 177  }
 178  
 179  // Execute executes the request
 180  //  @return GetZoneResponse
 181  func (a *ZonesAPIService) GetZoneExecute(r ApiGetZoneRequest) (*GetZoneResponse, *http.Response, error) {
 182  	var (
 183  		localVarHTTPMethod   = http.MethodGet
 184  		localVarPostBody     interface{}
 185  		formFiles            []formFile
 186  		localVarReturnValue  *GetZoneResponse
 187  	)
 188  
 189  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ZonesAPIService.GetZone")
 190  	if err != nil {
 191  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
 192  	}
 193  
 194  	localVarPath := localBasePath + "/intelligent_dns/{zone_id}"
 195  	localVarPath = strings.Replace(localVarPath, "{"+"zone_id"+"}", url.PathEscape(parameterValueToString(r.zoneId, "zoneId")), -1)
 196  
 197  	localVarHeaderParams := make(map[string]string)
 198  	localVarQueryParams := url.Values{}
 199  	localVarFormParams := url.Values{}
 200  	if r.zoneId < 1 {
 201  		return localVarReturnValue, nil, reportError("zoneId must be greater than 1")
 202  	}
 203  
 204  	// to determine the Content-Type header
 205  	localVarHTTPContentTypes := []string{}
 206  
 207  	// set Content-Type header
 208  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
 209  	if localVarHTTPContentType != "" {
 210  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
 211  	}
 212  
 213  	// to determine the Accept header
 214  	localVarHTTPHeaderAccepts := []string{"application/json; version=3"}
 215  
 216  	// set Accept header
 217  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
 218  	if localVarHTTPHeaderAccept != "" {
 219  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
 220  	}
 221  	if r.ctx != nil {
 222  		// API Key Authentication
 223  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
 224  			if apiKey, ok := auth["tokenAuth"]; ok {
 225  				var key string
 226  				if apiKey.Prefix != "" {
 227  					key = apiKey.Prefix + " " + apiKey.Key
 228  				} else {
 229  					key = apiKey.Key
 230  				}
 231  				localVarHeaderParams["Authorization"] = key
 232  			}
 233  		}
 234  	}
 235  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
 236  	if err != nil {
 237  		return localVarReturnValue, nil, err
 238  	}
 239  
 240  	localVarHTTPResponse, err := a.client.callAPI(req)
 241  	if err != nil || localVarHTTPResponse == nil {
 242  		return localVarReturnValue, localVarHTTPResponse, err
 243  	}
 244  
 245  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
 246  	localVarHTTPResponse.Body.Close()
 247  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
 248  	if err != nil {
 249  		return localVarReturnValue, localVarHTTPResponse, err
 250  	}
 251  
 252  	if localVarHTTPResponse.StatusCode >= 300 {
 253  		newErr := &GenericOpenAPIError{
 254  			body:  localVarBody,
 255  			error: localVarHTTPResponse.Status,
 256  		}
 257  		if localVarHTTPResponse.StatusCode == 404 {
 258  			var v ErrorResponse
 259  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 260  			if err != nil {
 261  				newErr.error = err.Error()
 262  				return localVarReturnValue, localVarHTTPResponse, newErr
 263  			}
 264  					newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
 265  					newErr.model = v
 266  		}
 267  		return localVarReturnValue, localVarHTTPResponse, newErr
 268  	}
 269  
 270  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 271  	if err != nil {
 272  		newErr := &GenericOpenAPIError{
 273  			body:  localVarBody,
 274  			error: err.Error(),
 275  		}
 276  		return localVarReturnValue, localVarHTTPResponse, newErr
 277  	}
 278  
 279  	return localVarReturnValue, localVarHTTPResponse, nil
 280  }
 281  
 282  type ApiGetZonesRequest struct {
 283  	ctx context.Context
 284  	ApiService *ZonesAPIService
 285  	orderBy *string
 286  	sort *string
 287  	page *int64
 288  	pageSize *int64
 289  }
 290  
 291  // Identifies which property the return should be sorted by.
 292  func (r ApiGetZonesRequest) OrderBy(orderBy string) ApiGetZonesRequest {
 293  	r.orderBy = &orderBy
 294  	return r
 295  }
 296  
 297  // Defines whether objects are shown in ascending or descending order depending on the value set in order_by.
 298  func (r ApiGetZonesRequest) Sort(sort string) ApiGetZonesRequest {
 299  	r.sort = &sort
 300  	return r
 301  }
 302  
 303  // Identifies which page should be returned, if the return is paginated.
 304  func (r ApiGetZonesRequest) Page(page int64) ApiGetZonesRequest {
 305  	r.page = &page
 306  	return r
 307  }
 308  
 309  // Identifies how many items should be returned per page.
 310  func (r ApiGetZonesRequest) PageSize(pageSize int64) ApiGetZonesRequest {
 311  	r.pageSize = &pageSize
 312  	return r
 313  }
 314  
 315  func (r ApiGetZonesRequest) Execute() (*GetZonesResponse, *http.Response, error) {
 316  	return r.ApiService.GetZonesExecute(r)
 317  }
 318  
 319  /*
 320  GetZones Get a collection of Intelligent DNS zones
 321  
 322   @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
 323   @return ApiGetZonesRequest
 324  */
 325  func (a *ZonesAPIService) GetZones(ctx context.Context) ApiGetZonesRequest {
 326  	return ApiGetZonesRequest{
 327  		ApiService: a,
 328  		ctx: ctx,
 329  	}
 330  }
 331  
 332  // Execute executes the request
 333  //  @return GetZonesResponse
 334  func (a *ZonesAPIService) GetZonesExecute(r ApiGetZonesRequest) (*GetZonesResponse, *http.Response, error) {
 335  	var (
 336  		localVarHTTPMethod   = http.MethodGet
 337  		localVarPostBody     interface{}
 338  		formFiles            []formFile
 339  		localVarReturnValue  *GetZonesResponse
 340  	)
 341  
 342  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ZonesAPIService.GetZones")
 343  	if err != nil {
 344  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
 345  	}
 346  
 347  	localVarPath := localBasePath + "/intelligent_dns"
 348  
 349  	localVarHeaderParams := make(map[string]string)
 350  	localVarQueryParams := url.Values{}
 351  	localVarFormParams := url.Values{}
 352  
 353  	if r.orderBy != nil {
 354  		parameterAddToHeaderOrQuery(localVarQueryParams, "order_by", r.orderBy, "")
 355  	} else {
 356  		var defaultValue string = "name"
 357  		r.orderBy = &defaultValue
 358  	}
 359  	if r.sort != nil {
 360  		parameterAddToHeaderOrQuery(localVarQueryParams, "sort", r.sort, "")
 361  	} else {
 362  		var defaultValue string = "asc"
 363  		r.sort = &defaultValue
 364  	}
 365  	if r.page != nil {
 366  		parameterAddToHeaderOrQuery(localVarQueryParams, "page", r.page, "")
 367  	} else {
 368  		var defaultValue int64 = 1
 369  		r.page = &defaultValue
 370  	}
 371  	if r.pageSize != nil {
 372  		parameterAddToHeaderOrQuery(localVarQueryParams, "page_size", r.pageSize, "")
 373  	} else {
 374  		var defaultValue int64 = 10
 375  		r.pageSize = &defaultValue
 376  	}
 377  	// to determine the Content-Type header
 378  	localVarHTTPContentTypes := []string{}
 379  
 380  	// set Content-Type header
 381  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
 382  	if localVarHTTPContentType != "" {
 383  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
 384  	}
 385  
 386  	// to determine the Accept header
 387  	localVarHTTPHeaderAccepts := []string{"application/json", "application/json; version=3"}
 388  
 389  	// set Accept header
 390  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
 391  	if localVarHTTPHeaderAccept != "" {
 392  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
 393  	}
 394  	if r.ctx != nil {
 395  		// API Key Authentication
 396  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
 397  			if apiKey, ok := auth["tokenAuth"]; ok {
 398  				var key string
 399  				if apiKey.Prefix != "" {
 400  					key = apiKey.Prefix + " " + apiKey.Key
 401  				} else {
 402  					key = apiKey.Key
 403  				}
 404  				localVarHeaderParams["Authorization"] = key
 405  			}
 406  		}
 407  	}
 408  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
 409  	if err != nil {
 410  		return localVarReturnValue, nil, err
 411  	}
 412  
 413  	localVarHTTPResponse, err := a.client.callAPI(req)
 414  	if err != nil || localVarHTTPResponse == nil {
 415  		return localVarReturnValue, localVarHTTPResponse, err
 416  	}
 417  
 418  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
 419  	localVarHTTPResponse.Body.Close()
 420  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
 421  	if err != nil {
 422  		return localVarReturnValue, localVarHTTPResponse, err
 423  	}
 424  
 425  	if localVarHTTPResponse.StatusCode >= 300 {
 426  		newErr := &GenericOpenAPIError{
 427  			body:  localVarBody,
 428  			error: localVarHTTPResponse.Status,
 429  		}
 430  		if localVarHTTPResponse.StatusCode == 400 {
 431  			var v ErrorsResponse
 432  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 433  			if err != nil {
 434  				newErr.error = err.Error()
 435  				return localVarReturnValue, localVarHTTPResponse, newErr
 436  			}
 437  					newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
 438  					newErr.model = v
 439  		}
 440  		return localVarReturnValue, localVarHTTPResponse, newErr
 441  	}
 442  
 443  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 444  	if err != nil {
 445  		newErr := &GenericOpenAPIError{
 446  			body:  localVarBody,
 447  			error: err.Error(),
 448  		}
 449  		return localVarReturnValue, localVarHTTPResponse, newErr
 450  	}
 451  
 452  	return localVarReturnValue, localVarHTTPResponse, nil
 453  }
 454  
 455  type ApiPostZoneRequest struct {
 456  	ctx context.Context
 457  	ApiService *ZonesAPIService
 458  	zone *Zone
 459  }
 460  
 461  func (r ApiPostZoneRequest) Zone(zone Zone) ApiPostZoneRequest {
 462  	r.zone = &zone
 463  	return r
 464  }
 465  
 466  func (r ApiPostZoneRequest) Execute() (*PostOrPutZoneResponse, *http.Response, error) {
 467  	return r.ApiService.PostZoneExecute(r)
 468  }
 469  
 470  /*
 471  PostZone Add a new Intelligent DNS zone
 472  
 473   @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
 474   @return ApiPostZoneRequest
 475  */
 476  func (a *ZonesAPIService) PostZone(ctx context.Context) ApiPostZoneRequest {
 477  	return ApiPostZoneRequest{
 478  		ApiService: a,
 479  		ctx: ctx,
 480  	}
 481  }
 482  
 483  // Execute executes the request
 484  //  @return PostOrPutZoneResponse
 485  func (a *ZonesAPIService) PostZoneExecute(r ApiPostZoneRequest) (*PostOrPutZoneResponse, *http.Response, error) {
 486  	var (
 487  		localVarHTTPMethod   = http.MethodPost
 488  		localVarPostBody     interface{}
 489  		formFiles            []formFile
 490  		localVarReturnValue  *PostOrPutZoneResponse
 491  	)
 492  
 493  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ZonesAPIService.PostZone")
 494  	if err != nil {
 495  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
 496  	}
 497  
 498  	localVarPath := localBasePath + "/intelligent_dns"
 499  
 500  	localVarHeaderParams := make(map[string]string)
 501  	localVarQueryParams := url.Values{}
 502  	localVarFormParams := url.Values{}
 503  
 504  	// to determine the Content-Type header
 505  	localVarHTTPContentTypes := []string{"application/json"}
 506  
 507  	// set Content-Type header
 508  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
 509  	if localVarHTTPContentType != "" {
 510  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
 511  	}
 512  
 513  	// to determine the Accept header
 514  	localVarHTTPHeaderAccepts := []string{"application/json; version=3"}
 515  
 516  	// set Accept header
 517  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
 518  	if localVarHTTPHeaderAccept != "" {
 519  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
 520  	}
 521  	// body params
 522  	localVarPostBody = r.zone
 523  	if r.ctx != nil {
 524  		// API Key Authentication
 525  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
 526  			if apiKey, ok := auth["tokenAuth"]; ok {
 527  				var key string
 528  				if apiKey.Prefix != "" {
 529  					key = apiKey.Prefix + " " + apiKey.Key
 530  				} else {
 531  					key = apiKey.Key
 532  				}
 533  				localVarHeaderParams["Authorization"] = key
 534  			}
 535  		}
 536  	}
 537  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
 538  	if err != nil {
 539  		return localVarReturnValue, nil, err
 540  	}
 541  
 542  	localVarHTTPResponse, err := a.client.callAPI(req)
 543  	if err != nil || localVarHTTPResponse == nil {
 544  		return localVarReturnValue, localVarHTTPResponse, err
 545  	}
 546  
 547  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
 548  	localVarHTTPResponse.Body.Close()
 549  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
 550  	if err != nil {
 551  		return localVarReturnValue, localVarHTTPResponse, err
 552  	}
 553  
 554  	if localVarHTTPResponse.StatusCode >= 300 {
 555  		newErr := &GenericOpenAPIError{
 556  			body:  localVarBody,
 557  			error: localVarHTTPResponse.Status,
 558  		}
 559  		if localVarHTTPResponse.StatusCode == 400 {
 560  			var v ErrorsResponse
 561  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 562  			if err != nil {
 563  				newErr.error = err.Error()
 564  				return localVarReturnValue, localVarHTTPResponse, newErr
 565  			}
 566  					newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
 567  					newErr.model = v
 568  			return localVarReturnValue, localVarHTTPResponse, newErr
 569  		}
 570  		if localVarHTTPResponse.StatusCode == 404 {
 571  			var v ErrorResponse
 572  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 573  			if err != nil {
 574  				newErr.error = err.Error()
 575  				return localVarReturnValue, localVarHTTPResponse, newErr
 576  			}
 577  					newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
 578  					newErr.model = v
 579  		}
 580  		return localVarReturnValue, localVarHTTPResponse, newErr
 581  	}
 582  
 583  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 584  	if err != nil {
 585  		newErr := &GenericOpenAPIError{
 586  			body:  localVarBody,
 587  			error: err.Error(),
 588  		}
 589  		return localVarReturnValue, localVarHTTPResponse, newErr
 590  	}
 591  
 592  	return localVarReturnValue, localVarHTTPResponse, nil
 593  }
 594  
 595  type ApiPutZoneRequest struct {
 596  	ctx context.Context
 597  	ApiService *ZonesAPIService
 598  	zoneId int32
 599  	zone *Zone
 600  }
 601  
 602  func (r ApiPutZoneRequest) Zone(zone Zone) ApiPutZoneRequest {
 603  	r.zone = &zone
 604  	return r
 605  }
 606  
 607  func (r ApiPutZoneRequest) Execute() (*PostOrPutZoneResponse, *http.Response, error) {
 608  	return r.ApiService.PutZoneExecute(r)
 609  }
 610  
 611  /*
 612  PutZone Update an Intelligent DNS hosted zone
 613  
 614   @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
 615   @param zoneId The hosted zone id
 616   @return ApiPutZoneRequest
 617  */
 618  func (a *ZonesAPIService) PutZone(ctx context.Context, zoneId int32) ApiPutZoneRequest {
 619  	return ApiPutZoneRequest{
 620  		ApiService: a,
 621  		ctx: ctx,
 622  		zoneId: zoneId,
 623  	}
 624  }
 625  
 626  // Execute executes the request
 627  //  @return PostOrPutZoneResponse
 628  func (a *ZonesAPIService) PutZoneExecute(r ApiPutZoneRequest) (*PostOrPutZoneResponse, *http.Response, error) {
 629  	var (
 630  		localVarHTTPMethod   = http.MethodPut
 631  		localVarPostBody     interface{}
 632  		formFiles            []formFile
 633  		localVarReturnValue  *PostOrPutZoneResponse
 634  	)
 635  
 636  	localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "ZonesAPIService.PutZone")
 637  	if err != nil {
 638  		return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
 639  	}
 640  
 641  	localVarPath := localBasePath + "/intelligent_dns/{zone_id}"
 642  	localVarPath = strings.Replace(localVarPath, "{"+"zone_id"+"}", url.PathEscape(parameterValueToString(r.zoneId, "zoneId")), -1)
 643  
 644  	localVarHeaderParams := make(map[string]string)
 645  	localVarQueryParams := url.Values{}
 646  	localVarFormParams := url.Values{}
 647  	if r.zoneId < 1 {
 648  		return localVarReturnValue, nil, reportError("zoneId must be greater than 1")
 649  	}
 650  
 651  	// to determine the Content-Type header
 652  	localVarHTTPContentTypes := []string{"application/json"}
 653  
 654  	// set Content-Type header
 655  	localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
 656  	if localVarHTTPContentType != "" {
 657  		localVarHeaderParams["Content-Type"] = localVarHTTPContentType
 658  	}
 659  
 660  	// to determine the Accept header
 661  	localVarHTTPHeaderAccepts := []string{"application/json; version=3"}
 662  
 663  	// set Accept header
 664  	localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
 665  	if localVarHTTPHeaderAccept != "" {
 666  		localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
 667  	}
 668  	// body params
 669  	localVarPostBody = r.zone
 670  	if r.ctx != nil {
 671  		// API Key Authentication
 672  		if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
 673  			if apiKey, ok := auth["tokenAuth"]; ok {
 674  				var key string
 675  				if apiKey.Prefix != "" {
 676  					key = apiKey.Prefix + " " + apiKey.Key
 677  				} else {
 678  					key = apiKey.Key
 679  				}
 680  				localVarHeaderParams["Authorization"] = key
 681  			}
 682  		}
 683  	}
 684  	req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
 685  	if err != nil {
 686  		return localVarReturnValue, nil, err
 687  	}
 688  
 689  	localVarHTTPResponse, err := a.client.callAPI(req)
 690  	if err != nil || localVarHTTPResponse == nil {
 691  		return localVarReturnValue, localVarHTTPResponse, err
 692  	}
 693  
 694  	localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
 695  	localVarHTTPResponse.Body.Close()
 696  	localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
 697  	if err != nil {
 698  		return localVarReturnValue, localVarHTTPResponse, err
 699  	}
 700  
 701  	if localVarHTTPResponse.StatusCode >= 300 {
 702  		newErr := &GenericOpenAPIError{
 703  			body:  localVarBody,
 704  			error: localVarHTTPResponse.Status,
 705  		}
 706  		if localVarHTTPResponse.StatusCode == 400 {
 707  			var v ErrorsResponse
 708  			err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 709  			if err != nil {
 710  				newErr.error = err.Error()
 711  				return localVarReturnValue, localVarHTTPResponse, newErr
 712  			}
 713  					newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
 714  					newErr.model = v
 715  		}
 716  		return localVarReturnValue, localVarHTTPResponse, newErr
 717  	}
 718  
 719  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
 720  	if err != nil {
 721  		newErr := &GenericOpenAPIError{
 722  			body:  localVarBody,
 723  			error: err.Error(),
 724  		}
 725  		return localVarReturnValue, localVarHTTPResponse, newErr
 726  	}
 727  
 728  	return localVarReturnValue, localVarHTTPResponse, nil
 729  }
 730