github.com/launchdarkly/api-client-go@v5.3.0+incompatible/api_environments.go (about) 1 2 /* 3 * LaunchDarkly REST API 4 * 5 * Build custom integrations with the LaunchDarkly REST API 6 * 7 * API version: 5.3.0 8 * Contact: support@launchdarkly.com 9 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) 10 */ 11 12 package ldapi 13 14 import ( 15 "context" 16 "io/ioutil" 17 "net/http" 18 "net/url" 19 "strings" 20 "fmt" 21 "github.com/antihax/optional" 22 ) 23 24 // Linger please 25 var ( 26 _ context.Context 27 ) 28 29 type EnvironmentsApiService service 30 31 /* 32 EnvironmentsApiService Delete an environment in a specific project. 33 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 34 * @param projectKey The project key, used to tie the flags together under one project so they can be managed together. 35 * @param environmentKey The environment key, used to tie together flag configuration and users under one environment so they can be managed together. 36 37 38 */ 39 func (a *EnvironmentsApiService) DeleteEnvironment(ctx context.Context, projectKey string, environmentKey string) (*http.Response, error) { 40 var ( 41 localVarHttpMethod = strings.ToUpper("Delete") 42 localVarPostBody interface{} 43 localVarFileName string 44 localVarFileBytes []byte 45 46 ) 47 48 // create path and map variables 49 localVarPath := a.client.cfg.BasePath + "/projects/{projectKey}/environments/{environmentKey}" 50 localVarPath = strings.Replace(localVarPath, "{"+"projectKey"+"}", fmt.Sprintf("%v", projectKey), -1) 51 localVarPath = strings.Replace(localVarPath, "{"+"environmentKey"+"}", fmt.Sprintf("%v", environmentKey), -1) 52 53 localVarHeaderParams := make(map[string]string) 54 localVarQueryParams := url.Values{} 55 localVarFormParams := url.Values{} 56 57 // to determine the Content-Type header 58 localVarHttpContentTypes := []string{"application/json"} 59 60 // set Content-Type header 61 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 62 if localVarHttpContentType != "" { 63 localVarHeaderParams["Content-Type"] = localVarHttpContentType 64 } 65 66 // to determine the Accept header 67 localVarHttpHeaderAccepts := []string{"application/json"} 68 69 // set Accept header 70 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 71 if localVarHttpHeaderAccept != "" { 72 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 73 } 74 if ctx != nil { 75 // API Key Authentication 76 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 77 var key string 78 if auth.Prefix != "" { 79 key = auth.Prefix + " " + auth.Key 80 } else { 81 key = auth.Key 82 } 83 localVarHeaderParams["Authorization"] = key 84 85 } 86 } 87 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 88 if err != nil { 89 return nil, err 90 } 91 92 localVarHttpResponse, err := a.client.callAPI(r) 93 if err != nil || localVarHttpResponse == nil { 94 return localVarHttpResponse, err 95 } 96 97 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 98 localVarHttpResponse.Body.Close() 99 if err != nil { 100 return localVarHttpResponse, err 101 } 102 103 104 if localVarHttpResponse.StatusCode >= 300 { 105 newErr := GenericSwaggerError{ 106 body: localVarBody, 107 error: localVarHttpResponse.Status, 108 } 109 110 return localVarHttpResponse, newErr 111 } 112 113 return localVarHttpResponse, nil 114 } 115 116 /* 117 EnvironmentsApiService Get an environment given a project and key. 118 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 119 * @param projectKey The project key, used to tie the flags together under one project so they can be managed together. 120 * @param environmentKey The environment key, used to tie together flag configuration and users under one environment so they can be managed together. 121 122 @return Environment 123 */ 124 func (a *EnvironmentsApiService) GetEnvironment(ctx context.Context, projectKey string, environmentKey string) (Environment, *http.Response, error) { 125 var ( 126 localVarHttpMethod = strings.ToUpper("Get") 127 localVarPostBody interface{} 128 localVarFileName string 129 localVarFileBytes []byte 130 localVarReturnValue Environment 131 ) 132 133 // create path and map variables 134 localVarPath := a.client.cfg.BasePath + "/projects/{projectKey}/environments/{environmentKey}" 135 localVarPath = strings.Replace(localVarPath, "{"+"projectKey"+"}", fmt.Sprintf("%v", projectKey), -1) 136 localVarPath = strings.Replace(localVarPath, "{"+"environmentKey"+"}", fmt.Sprintf("%v", environmentKey), -1) 137 138 localVarHeaderParams := make(map[string]string) 139 localVarQueryParams := url.Values{} 140 localVarFormParams := url.Values{} 141 142 // to determine the Content-Type header 143 localVarHttpContentTypes := []string{"application/json"} 144 145 // set Content-Type header 146 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 147 if localVarHttpContentType != "" { 148 localVarHeaderParams["Content-Type"] = localVarHttpContentType 149 } 150 151 // to determine the Accept header 152 localVarHttpHeaderAccepts := []string{"application/json"} 153 154 // set Accept header 155 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 156 if localVarHttpHeaderAccept != "" { 157 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 158 } 159 if ctx != nil { 160 // API Key Authentication 161 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 162 var key string 163 if auth.Prefix != "" { 164 key = auth.Prefix + " " + auth.Key 165 } else { 166 key = auth.Key 167 } 168 localVarHeaderParams["Authorization"] = key 169 170 } 171 } 172 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 173 if err != nil { 174 return localVarReturnValue, nil, err 175 } 176 177 localVarHttpResponse, err := a.client.callAPI(r) 178 if err != nil || localVarHttpResponse == nil { 179 return localVarReturnValue, localVarHttpResponse, err 180 } 181 182 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 183 localVarHttpResponse.Body.Close() 184 if err != nil { 185 return localVarReturnValue, localVarHttpResponse, err 186 } 187 188 if localVarHttpResponse.StatusCode < 300 { 189 // If we succeed, return the data, otherwise pass on to decode error. 190 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 191 return localVarReturnValue, localVarHttpResponse, err 192 } 193 194 if localVarHttpResponse.StatusCode >= 300 { 195 newErr := GenericSwaggerError{ 196 body: localVarBody, 197 error: localVarHttpResponse.Status, 198 } 199 200 if localVarHttpResponse.StatusCode == 200 { 201 var v Environment 202 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 203 if err != nil { 204 newErr.error = err.Error() 205 return localVarReturnValue, localVarHttpResponse, newErr 206 } 207 newErr.model = v 208 return localVarReturnValue, localVarHttpResponse, newErr 209 } 210 211 return localVarReturnValue, localVarHttpResponse, newErr 212 } 213 214 return localVarReturnValue, localVarHttpResponse, nil 215 } 216 217 /* 218 EnvironmentsApiService Modify an environment by ID. If you try to patch the environment by setting both required and requiredApprovalTags, it will result in an error. Users can specify either required approvals for all flags in an environment or those with specific tags, but not both. Only customers on an Enterprise plan can require approval for flag updates with either mechanism. 219 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 220 * @param projectKey The project key, used to tie the flags together under one project so they can be managed together. 221 * @param environmentKey The environment key, used to tie together flag configuration and users under one environment so they can be managed together. 222 * @param patchDelta Requires a JSON Patch representation of the desired changes to the project. 'http://jsonpatch.com/' 223 224 @return Environment 225 */ 226 func (a *EnvironmentsApiService) PatchEnvironment(ctx context.Context, projectKey string, environmentKey string, patchDelta []PatchOperation) (Environment, *http.Response, error) { 227 var ( 228 localVarHttpMethod = strings.ToUpper("Patch") 229 localVarPostBody interface{} 230 localVarFileName string 231 localVarFileBytes []byte 232 localVarReturnValue Environment 233 ) 234 235 // create path and map variables 236 localVarPath := a.client.cfg.BasePath + "/projects/{projectKey}/environments/{environmentKey}" 237 localVarPath = strings.Replace(localVarPath, "{"+"projectKey"+"}", fmt.Sprintf("%v", projectKey), -1) 238 localVarPath = strings.Replace(localVarPath, "{"+"environmentKey"+"}", fmt.Sprintf("%v", environmentKey), -1) 239 240 localVarHeaderParams := make(map[string]string) 241 localVarQueryParams := url.Values{} 242 localVarFormParams := url.Values{} 243 244 // to determine the Content-Type header 245 localVarHttpContentTypes := []string{"application/json"} 246 247 // set Content-Type header 248 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 249 if localVarHttpContentType != "" { 250 localVarHeaderParams["Content-Type"] = localVarHttpContentType 251 } 252 253 // to determine the Accept header 254 localVarHttpHeaderAccepts := []string{"application/json"} 255 256 // set Accept header 257 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 258 if localVarHttpHeaderAccept != "" { 259 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 260 } 261 // body params 262 localVarPostBody = &patchDelta 263 if ctx != nil { 264 // API Key Authentication 265 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 266 var key string 267 if auth.Prefix != "" { 268 key = auth.Prefix + " " + auth.Key 269 } else { 270 key = auth.Key 271 } 272 localVarHeaderParams["Authorization"] = key 273 274 } 275 } 276 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 277 if err != nil { 278 return localVarReturnValue, nil, err 279 } 280 281 localVarHttpResponse, err := a.client.callAPI(r) 282 if err != nil || localVarHttpResponse == nil { 283 return localVarReturnValue, localVarHttpResponse, err 284 } 285 286 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 287 localVarHttpResponse.Body.Close() 288 if err != nil { 289 return localVarReturnValue, localVarHttpResponse, err 290 } 291 292 if localVarHttpResponse.StatusCode < 300 { 293 // If we succeed, return the data, otherwise pass on to decode error. 294 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 295 return localVarReturnValue, localVarHttpResponse, err 296 } 297 298 if localVarHttpResponse.StatusCode >= 300 { 299 newErr := GenericSwaggerError{ 300 body: localVarBody, 301 error: localVarHttpResponse.Status, 302 } 303 304 if localVarHttpResponse.StatusCode == 200 { 305 var v Environment 306 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 307 if err != nil { 308 newErr.error = err.Error() 309 return localVarReturnValue, localVarHttpResponse, newErr 310 } 311 newErr.model = v 312 return localVarReturnValue, localVarHttpResponse, newErr 313 } 314 315 return localVarReturnValue, localVarHttpResponse, newErr 316 } 317 318 return localVarReturnValue, localVarHttpResponse, nil 319 } 320 321 /* 322 EnvironmentsApiService Create a new environment in a specified project with a given name, key, and swatch color. 323 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 324 * @param projectKey The project key, used to tie the flags together under one project so they can be managed together. 325 * @param environmentBody New environment. 326 327 @return Environment 328 */ 329 func (a *EnvironmentsApiService) PostEnvironment(ctx context.Context, projectKey string, environmentBody EnvironmentPost) (Environment, *http.Response, error) { 330 var ( 331 localVarHttpMethod = strings.ToUpper("Post") 332 localVarPostBody interface{} 333 localVarFileName string 334 localVarFileBytes []byte 335 localVarReturnValue Environment 336 ) 337 338 // create path and map variables 339 localVarPath := a.client.cfg.BasePath + "/projects/{projectKey}/environments" 340 localVarPath = strings.Replace(localVarPath, "{"+"projectKey"+"}", fmt.Sprintf("%v", projectKey), -1) 341 342 localVarHeaderParams := make(map[string]string) 343 localVarQueryParams := url.Values{} 344 localVarFormParams := url.Values{} 345 346 // to determine the Content-Type header 347 localVarHttpContentTypes := []string{"application/json"} 348 349 // set Content-Type header 350 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 351 if localVarHttpContentType != "" { 352 localVarHeaderParams["Content-Type"] = localVarHttpContentType 353 } 354 355 // to determine the Accept header 356 localVarHttpHeaderAccepts := []string{"application/json"} 357 358 // set Accept header 359 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 360 if localVarHttpHeaderAccept != "" { 361 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 362 } 363 // body params 364 localVarPostBody = &environmentBody 365 if ctx != nil { 366 // API Key Authentication 367 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 368 var key string 369 if auth.Prefix != "" { 370 key = auth.Prefix + " " + auth.Key 371 } else { 372 key = auth.Key 373 } 374 localVarHeaderParams["Authorization"] = key 375 376 } 377 } 378 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 379 if err != nil { 380 return localVarReturnValue, nil, err 381 } 382 383 localVarHttpResponse, err := a.client.callAPI(r) 384 if err != nil || localVarHttpResponse == nil { 385 return localVarReturnValue, localVarHttpResponse, err 386 } 387 388 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 389 localVarHttpResponse.Body.Close() 390 if err != nil { 391 return localVarReturnValue, localVarHttpResponse, err 392 } 393 394 if localVarHttpResponse.StatusCode < 300 { 395 // If we succeed, return the data, otherwise pass on to decode error. 396 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 397 return localVarReturnValue, localVarHttpResponse, err 398 } 399 400 if localVarHttpResponse.StatusCode >= 300 { 401 newErr := GenericSwaggerError{ 402 body: localVarBody, 403 error: localVarHttpResponse.Status, 404 } 405 406 if localVarHttpResponse.StatusCode == 201 { 407 var v Environment 408 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 409 if err != nil { 410 newErr.error = err.Error() 411 return localVarReturnValue, localVarHttpResponse, newErr 412 } 413 newErr.model = v 414 return localVarReturnValue, localVarHttpResponse, newErr 415 } 416 417 return localVarReturnValue, localVarHttpResponse, newErr 418 } 419 420 return localVarReturnValue, localVarHttpResponse, nil 421 } 422 423 /* 424 EnvironmentsApiService Reset an environment's mobile key. The optional expiry for the old key is deprecated for this endpoint, so the old key will always expire immediately. 425 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 426 * @param projectKey The project key, used to tie the flags together under one project so they can be managed together. 427 * @param environmentKey The environment key, used to tie together flag configuration and users under one environment so they can be managed together. 428 * @param optional nil or *EnvironmentsApiResetEnvironmentMobileKeyOpts - Optional Parameters: 429 * @param "Expiry" (optional.Int64) - The expiry parameter is deprecated for this endpoint, so the old mobile key will always expire immediately. This parameter will be removed in an upcoming major API client version. 430 431 @return Environment 432 */ 433 434 type EnvironmentsApiResetEnvironmentMobileKeyOpts struct { 435 Expiry optional.Int64 436 } 437 438 func (a *EnvironmentsApiService) ResetEnvironmentMobileKey(ctx context.Context, projectKey string, environmentKey string, localVarOptionals *EnvironmentsApiResetEnvironmentMobileKeyOpts) (Environment, *http.Response, error) { 439 var ( 440 localVarHttpMethod = strings.ToUpper("Post") 441 localVarPostBody interface{} 442 localVarFileName string 443 localVarFileBytes []byte 444 localVarReturnValue Environment 445 ) 446 447 // create path and map variables 448 localVarPath := a.client.cfg.BasePath + "/projects/{projectKey}/environments/{environmentKey}/mobileKey" 449 localVarPath = strings.Replace(localVarPath, "{"+"projectKey"+"}", fmt.Sprintf("%v", projectKey), -1) 450 localVarPath = strings.Replace(localVarPath, "{"+"environmentKey"+"}", fmt.Sprintf("%v", environmentKey), -1) 451 452 localVarHeaderParams := make(map[string]string) 453 localVarQueryParams := url.Values{} 454 localVarFormParams := url.Values{} 455 456 if localVarOptionals != nil && localVarOptionals.Expiry.IsSet() { 457 localVarQueryParams.Add("expiry", parameterToString(localVarOptionals.Expiry.Value(), "")) 458 } 459 // to determine the Content-Type header 460 localVarHttpContentTypes := []string{"application/json"} 461 462 // set Content-Type header 463 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 464 if localVarHttpContentType != "" { 465 localVarHeaderParams["Content-Type"] = localVarHttpContentType 466 } 467 468 // to determine the Accept header 469 localVarHttpHeaderAccepts := []string{"application/json"} 470 471 // set Accept header 472 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 473 if localVarHttpHeaderAccept != "" { 474 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 475 } 476 if ctx != nil { 477 // API Key Authentication 478 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 479 var key string 480 if auth.Prefix != "" { 481 key = auth.Prefix + " " + auth.Key 482 } else { 483 key = auth.Key 484 } 485 localVarHeaderParams["Authorization"] = key 486 487 } 488 } 489 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 490 if err != nil { 491 return localVarReturnValue, nil, err 492 } 493 494 localVarHttpResponse, err := a.client.callAPI(r) 495 if err != nil || localVarHttpResponse == nil { 496 return localVarReturnValue, localVarHttpResponse, err 497 } 498 499 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 500 localVarHttpResponse.Body.Close() 501 if err != nil { 502 return localVarReturnValue, localVarHttpResponse, err 503 } 504 505 if localVarHttpResponse.StatusCode < 300 { 506 // If we succeed, return the data, otherwise pass on to decode error. 507 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 508 return localVarReturnValue, localVarHttpResponse, err 509 } 510 511 if localVarHttpResponse.StatusCode >= 300 { 512 newErr := GenericSwaggerError{ 513 body: localVarBody, 514 error: localVarHttpResponse.Status, 515 } 516 517 if localVarHttpResponse.StatusCode == 200 { 518 var v Environment 519 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 520 if err != nil { 521 newErr.error = err.Error() 522 return localVarReturnValue, localVarHttpResponse, newErr 523 } 524 newErr.model = v 525 return localVarReturnValue, localVarHttpResponse, newErr 526 } 527 528 return localVarReturnValue, localVarHttpResponse, newErr 529 } 530 531 return localVarReturnValue, localVarHttpResponse, nil 532 } 533 534 /* 535 EnvironmentsApiService Reset an environment's SDK key with an optional expiry time for the old key. 536 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 537 * @param projectKey The project key, used to tie the flags together under one project so they can be managed together. 538 * @param environmentKey The environment key, used to tie together flag configuration and users under one environment so they can be managed together. 539 * @param optional nil or *EnvironmentsApiResetEnvironmentSDKKeyOpts - Optional Parameters: 540 * @param "Expiry" (optional.Int64) - An expiration time for the old environment SDK key, expressed as a Unix epoch time in milliseconds. By default, the key will expire immediately. 541 542 @return Environment 543 */ 544 545 type EnvironmentsApiResetEnvironmentSDKKeyOpts struct { 546 Expiry optional.Int64 547 } 548 549 func (a *EnvironmentsApiService) ResetEnvironmentSDKKey(ctx context.Context, projectKey string, environmentKey string, localVarOptionals *EnvironmentsApiResetEnvironmentSDKKeyOpts) (Environment, *http.Response, error) { 550 var ( 551 localVarHttpMethod = strings.ToUpper("Post") 552 localVarPostBody interface{} 553 localVarFileName string 554 localVarFileBytes []byte 555 localVarReturnValue Environment 556 ) 557 558 // create path and map variables 559 localVarPath := a.client.cfg.BasePath + "/projects/{projectKey}/environments/{environmentKey}/apiKey" 560 localVarPath = strings.Replace(localVarPath, "{"+"projectKey"+"}", fmt.Sprintf("%v", projectKey), -1) 561 localVarPath = strings.Replace(localVarPath, "{"+"environmentKey"+"}", fmt.Sprintf("%v", environmentKey), -1) 562 563 localVarHeaderParams := make(map[string]string) 564 localVarQueryParams := url.Values{} 565 localVarFormParams := url.Values{} 566 567 if localVarOptionals != nil && localVarOptionals.Expiry.IsSet() { 568 localVarQueryParams.Add("expiry", parameterToString(localVarOptionals.Expiry.Value(), "")) 569 } 570 // to determine the Content-Type header 571 localVarHttpContentTypes := []string{"application/json"} 572 573 // set Content-Type header 574 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 575 if localVarHttpContentType != "" { 576 localVarHeaderParams["Content-Type"] = localVarHttpContentType 577 } 578 579 // to determine the Accept header 580 localVarHttpHeaderAccepts := []string{"application/json"} 581 582 // set Accept header 583 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 584 if localVarHttpHeaderAccept != "" { 585 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 586 } 587 if ctx != nil { 588 // API Key Authentication 589 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 590 var key string 591 if auth.Prefix != "" { 592 key = auth.Prefix + " " + auth.Key 593 } else { 594 key = auth.Key 595 } 596 localVarHeaderParams["Authorization"] = key 597 598 } 599 } 600 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) 601 if err != nil { 602 return localVarReturnValue, nil, err 603 } 604 605 localVarHttpResponse, err := a.client.callAPI(r) 606 if err != nil || localVarHttpResponse == nil { 607 return localVarReturnValue, localVarHttpResponse, err 608 } 609 610 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 611 localVarHttpResponse.Body.Close() 612 if err != nil { 613 return localVarReturnValue, localVarHttpResponse, err 614 } 615 616 if localVarHttpResponse.StatusCode < 300 { 617 // If we succeed, return the data, otherwise pass on to decode error. 618 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 619 return localVarReturnValue, localVarHttpResponse, err 620 } 621 622 if localVarHttpResponse.StatusCode >= 300 { 623 newErr := GenericSwaggerError{ 624 body: localVarBody, 625 error: localVarHttpResponse.Status, 626 } 627 628 if localVarHttpResponse.StatusCode == 200 { 629 var v Environment 630 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")); 631 if err != nil { 632 newErr.error = err.Error() 633 return localVarReturnValue, localVarHttpResponse, newErr 634 } 635 newErr.model = v 636 return localVarReturnValue, localVarHttpResponse, newErr 637 } 638 639 return localVarReturnValue, localVarHttpResponse, newErr 640 } 641 642 return localVarReturnValue, localVarHttpResponse, nil 643 } 644