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