github.com/grokify/go-ringcentral-client@v0.3.31/office/v1/client/api_ring_out.go (about) 1 /* 2 * RingCentral Connect Platform API Explorer 3 * 4 * <p>This is a beta interactive API explorer for the RingCentral Connect Platform. To use this service, you will need to have an account with the proper credentials to generate an OAuth2 access token.</p><p><h2>Quick Start</h2></p><ol><li>1) Go to <b>Authentication > /oauth/token</b></li><li>2) Enter <b>app_key, app_secret, username, password</b> fields and then click \"Try it out!\"</li><li>3) Upon success, your access_token is loaded and you can access any form requiring authorization.</li></ol><h2>Links</h2><ul><li><a href=\"https://github.com/ringcentral\" target=\"_blank\">RingCentral SDKs on Github</a></li><li><a href=\"mailto:devsupport@ringcentral.com\">RingCentral Developer Support Email</a></li></ul> 5 * 6 * API version: 1.0 7 * Generated by: OpenAPI Generator (https://openapi-generator.tech) 8 */ 9 10 package ringcentral 11 12 import ( 13 "context" 14 "fmt" 15 "io/ioutil" 16 "net/http" 17 "net/url" 18 "strings" 19 ) 20 21 // Linger please 22 var ( 23 _ context.Context 24 ) 25 26 type RingOutApiService service 27 28 /* 29 RingOutApiService Cancel RingOut Call 30 <p style='font-style:italic;'></p><p>Cancels the 2-leg RingOut call.</p><h4>Required Permissions</h4><table class='fullwidth'><thead><tr><th>Permission</th><th>Description</th></tr></thead><tbody><tr><td class='code'>RingOut</td><td>Performing two-legged ring-out phone calls</td></tr></tbody></table><h4>Usage Plan Group</h4><p>Heavy</p> 31 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 32 * @param accountId Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session 33 * @param extensionId Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session 34 * @param ringoutId Internal identifier of a RingOut call 35 */ 36 func (a *RingOutApiService) CancelRingOutCall(ctx context.Context, accountId string, extensionId string, ringoutId int32) (*http.Response, error) { 37 var ( 38 localVarHttpMethod = strings.ToUpper("Delete") 39 localVarPostBody interface{} 40 localVarFormFileName string 41 localVarFileName string 42 localVarFileBytes []byte 43 ) 44 45 // create path and map variables 46 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout/{ringoutId}" 47 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 48 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 49 localVarPath = strings.Replace(localVarPath, "{"+"ringoutId"+"}", fmt.Sprintf("%v", ringoutId), -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{} 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{} 66 67 // set Accept header 68 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 69 if localVarHttpHeaderAccept != "" { 70 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 71 } 72 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 73 if err != nil { 74 return nil, err 75 } 76 77 localVarHttpResponse, err := a.client.callAPI(r) 78 if err != nil || localVarHttpResponse == nil { 79 return localVarHttpResponse, err 80 } 81 82 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 83 localVarHttpResponse.Body.Close() 84 if err != nil { 85 return localVarHttpResponse, err 86 } 87 88 if localVarHttpResponse.StatusCode >= 300 { 89 newErr := GenericOpenAPIError{ 90 body: localVarBody, 91 error: localVarHttpResponse.Status, 92 } 93 return localVarHttpResponse, newErr 94 } 95 96 return localVarHttpResponse, nil 97 } 98 99 /* 100 RingOutApiService Cancel RingOut Call 101 <p style='font-style:italic;'></p><p>Cancels the 2-leg RingOut call.</p><h4>Required Permissions</h4><table class='fullwidth'><thead><tr><th>Permission</th><th>Description</th></tr></thead><tbody><tr><td class='code'>RingOut</td><td>Performing two-legged ring-out phone calls</td></tr></tbody></table><h4>Usage Plan Group</h4><p>Heavy</p> 102 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 103 * @param accountId Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session 104 * @param extensionId Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session 105 * @param ringoutId Internal identifier of a RingOut call 106 */ 107 func (a *RingOutApiService) CancelRingOutCallNew(ctx context.Context, accountId string, extensionId string, ringoutId int32) (*http.Response, error) { 108 var ( 109 localVarHttpMethod = strings.ToUpper("Delete") 110 localVarPostBody interface{} 111 localVarFormFileName string 112 localVarFileName string 113 localVarFileBytes []byte 114 ) 115 116 // create path and map variables 117 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ring-out/{ringoutId}" 118 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 119 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 120 localVarPath = strings.Replace(localVarPath, "{"+"ringoutId"+"}", fmt.Sprintf("%v", ringoutId), -1) 121 122 localVarHeaderParams := make(map[string]string) 123 localVarQueryParams := url.Values{} 124 localVarFormParams := url.Values{} 125 126 // to determine the Content-Type header 127 localVarHttpContentTypes := []string{} 128 129 // set Content-Type header 130 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 131 if localVarHttpContentType != "" { 132 localVarHeaderParams["Content-Type"] = localVarHttpContentType 133 } 134 135 // to determine the Accept header 136 localVarHttpHeaderAccepts := []string{} 137 138 // set Accept header 139 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 140 if localVarHttpHeaderAccept != "" { 141 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 142 } 143 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 144 if err != nil { 145 return nil, err 146 } 147 148 localVarHttpResponse, err := a.client.callAPI(r) 149 if err != nil || localVarHttpResponse == nil { 150 return localVarHttpResponse, err 151 } 152 153 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 154 localVarHttpResponse.Body.Close() 155 if err != nil { 156 return localVarHttpResponse, err 157 } 158 159 if localVarHttpResponse.StatusCode >= 300 { 160 newErr := GenericOpenAPIError{ 161 body: localVarBody, 162 error: localVarHttpResponse.Status, 163 } 164 return localVarHttpResponse, newErr 165 } 166 167 return localVarHttpResponse, nil 168 } 169 170 /* 171 RingOutApiService 172 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 173 * @param accountId 174 * @param extensionId 175 * @param ringOutResource 176 */ 177 func (a *RingOutApiService) CreateDirectRingOut(ctx context.Context, accountId string, extensionId string, ringOutResource RingOutResource) (*http.Response, error) { 178 var ( 179 localVarHttpMethod = strings.ToUpper("Post") 180 localVarPostBody interface{} 181 localVarFormFileName string 182 localVarFileName string 183 localVarFileBytes []byte 184 ) 185 186 // create path and map variables 187 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout/direct" 188 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 189 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 190 191 localVarHeaderParams := make(map[string]string) 192 localVarQueryParams := url.Values{} 193 localVarFormParams := url.Values{} 194 195 // to determine the Content-Type header 196 localVarHttpContentTypes := []string{"application/json"} 197 198 // set Content-Type header 199 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 200 if localVarHttpContentType != "" { 201 localVarHeaderParams["Content-Type"] = localVarHttpContentType 202 } 203 204 // to determine the Accept header 205 localVarHttpHeaderAccepts := []string{} 206 207 // set Accept header 208 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 209 if localVarHttpHeaderAccept != "" { 210 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 211 } 212 // body params 213 localVarPostBody = &ringOutResource 214 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 215 if err != nil { 216 return nil, err 217 } 218 219 localVarHttpResponse, err := a.client.callAPI(r) 220 if err != nil || localVarHttpResponse == nil { 221 return localVarHttpResponse, err 222 } 223 224 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 225 localVarHttpResponse.Body.Close() 226 if err != nil { 227 return localVarHttpResponse, err 228 } 229 230 if localVarHttpResponse.StatusCode >= 300 { 231 newErr := GenericOpenAPIError{ 232 body: localVarBody, 233 error: localVarHttpResponse.Status, 234 } 235 return localVarHttpResponse, newErr 236 } 237 238 return localVarHttpResponse, nil 239 } 240 241 /* 242 RingOutApiService Make Direct RingOut Call 243 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 244 * @param accountId 245 * @param extensionId 246 * @param ringOutResource 247 */ 248 func (a *RingOutApiService) CreateDirectRingOutNew(ctx context.Context, accountId string, extensionId string, ringOutResource RingOutResource) (*http.Response, error) { 249 var ( 250 localVarHttpMethod = strings.ToUpper("Post") 251 localVarPostBody interface{} 252 localVarFormFileName string 253 localVarFileName string 254 localVarFileBytes []byte 255 ) 256 257 // create path and map variables 258 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/direct-ring-out" 259 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 260 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 261 262 localVarHeaderParams := make(map[string]string) 263 localVarQueryParams := url.Values{} 264 localVarFormParams := url.Values{} 265 266 // to determine the Content-Type header 267 localVarHttpContentTypes := []string{"application/json"} 268 269 // set Content-Type header 270 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 271 if localVarHttpContentType != "" { 272 localVarHeaderParams["Content-Type"] = localVarHttpContentType 273 } 274 275 // to determine the Accept header 276 localVarHttpHeaderAccepts := []string{} 277 278 // set Accept header 279 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 280 if localVarHttpHeaderAccept != "" { 281 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 282 } 283 // body params 284 localVarPostBody = &ringOutResource 285 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 286 if err != nil { 287 return nil, err 288 } 289 290 localVarHttpResponse, err := a.client.callAPI(r) 291 if err != nil || localVarHttpResponse == nil { 292 return localVarHttpResponse, err 293 } 294 295 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 296 localVarHttpResponse.Body.Close() 297 if err != nil { 298 return localVarHttpResponse, err 299 } 300 301 if localVarHttpResponse.StatusCode >= 300 { 302 newErr := GenericOpenAPIError{ 303 body: localVarBody, 304 error: localVarHttpResponse.Status, 305 } 306 return localVarHttpResponse, newErr 307 } 308 309 return localVarHttpResponse, nil 310 } 311 312 /* 313 RingOutApiService Get Status of RingOut Call 314 <p style='font-style:italic;'>Since 1.0.7 (Release 5.16)</p><p>Returns the status of a 2-leg RingOut call.</p><h4>Required Permissions</h4><table class='fullwidth'><thead><tr><th>Permission</th><th>Description</th></tr></thead><tbody><tr><td class='code'>RingOut</td><td>Performing two-legged ring-out phone calls</td></tr></tbody></table><h4>Usage Plan Group</h4><p>Light</p> 315 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 316 * @param accountId Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session 317 * @param extensionId Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session 318 * @param ringoutId Internal identifier of a RingOut call 319 @return GetRingOutStatusResponse 320 */ 321 func (a *RingOutApiService) GetRingOutCallStatus(ctx context.Context, accountId string, extensionId string, ringoutId int32) (GetRingOutStatusResponse, *http.Response, error) { 322 var ( 323 localVarHttpMethod = strings.ToUpper("Get") 324 localVarPostBody interface{} 325 localVarFormFileName string 326 localVarFileName string 327 localVarFileBytes []byte 328 localVarReturnValue GetRingOutStatusResponse 329 ) 330 331 // create path and map variables 332 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout/{ringoutId}" 333 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 334 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 335 localVarPath = strings.Replace(localVarPath, "{"+"ringoutId"+"}", fmt.Sprintf("%v", ringoutId), -1) 336 337 localVarHeaderParams := make(map[string]string) 338 localVarQueryParams := url.Values{} 339 localVarFormParams := url.Values{} 340 341 // to determine the Content-Type header 342 localVarHttpContentTypes := []string{} 343 344 // set Content-Type header 345 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 346 if localVarHttpContentType != "" { 347 localVarHeaderParams["Content-Type"] = localVarHttpContentType 348 } 349 350 // to determine the Accept header 351 localVarHttpHeaderAccepts := []string{"application/json"} 352 353 // set Accept header 354 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 355 if localVarHttpHeaderAccept != "" { 356 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 357 } 358 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 359 if err != nil { 360 return localVarReturnValue, nil, err 361 } 362 363 localVarHttpResponse, err := a.client.callAPI(r) 364 if err != nil || localVarHttpResponse == nil { 365 return localVarReturnValue, localVarHttpResponse, err 366 } 367 368 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 369 localVarHttpResponse.Body.Close() 370 if err != nil { 371 return localVarReturnValue, localVarHttpResponse, err 372 } 373 374 if localVarHttpResponse.StatusCode >= 300 { 375 newErr := GenericOpenAPIError{ 376 body: localVarBody, 377 error: localVarHttpResponse.Status, 378 } 379 if localVarHttpResponse.StatusCode == 0 { 380 var v GetRingOutStatusResponse 381 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 382 if err != nil { 383 newErr.error = err.Error() 384 return localVarReturnValue, localVarHttpResponse, newErr 385 } 386 newErr.model = v 387 return localVarReturnValue, localVarHttpResponse, newErr 388 } 389 return localVarReturnValue, localVarHttpResponse, newErr 390 } 391 392 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 393 if err != nil { 394 newErr := GenericOpenAPIError{ 395 body: localVarBody, 396 error: err.Error(), 397 } 398 return localVarReturnValue, localVarHttpResponse, newErr 399 } 400 401 return localVarReturnValue, localVarHttpResponse, nil 402 } 403 404 /* 405 RingOutApiService Get Status of RingOut Call 406 <p style='font-style:italic;'>Since 1.0.7 (Release 5.16)</p><p>Returns the status of a 2-leg RingOut call.</p><h4>Required Permissions</h4><table class='fullwidth'><thead><tr><th>Permission</th><th>Description</th></tr></thead><tbody><tr><td class='code'>RingOut</td><td>Performing two-legged ring-out phone calls</td></tr></tbody></table><h4>Usage Plan Group</h4><p>Light</p> 407 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 408 * @param accountId Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session 409 * @param extensionId Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session 410 * @param ringoutId Internal identifier of a RingOut call 411 @return GetRingOutStatusResponse 412 */ 413 func (a *RingOutApiService) GetRingOutCallStatusNew(ctx context.Context, accountId string, extensionId string, ringoutId int32) (GetRingOutStatusResponse, *http.Response, error) { 414 var ( 415 localVarHttpMethod = strings.ToUpper("Get") 416 localVarPostBody interface{} 417 localVarFormFileName string 418 localVarFileName string 419 localVarFileBytes []byte 420 localVarReturnValue GetRingOutStatusResponse 421 ) 422 423 // create path and map variables 424 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ring-out/{ringoutId}" 425 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 426 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 427 localVarPath = strings.Replace(localVarPath, "{"+"ringoutId"+"}", fmt.Sprintf("%v", ringoutId), -1) 428 429 localVarHeaderParams := make(map[string]string) 430 localVarQueryParams := url.Values{} 431 localVarFormParams := url.Values{} 432 433 // to determine the Content-Type header 434 localVarHttpContentTypes := []string{} 435 436 // set Content-Type header 437 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 438 if localVarHttpContentType != "" { 439 localVarHeaderParams["Content-Type"] = localVarHttpContentType 440 } 441 442 // to determine the Accept header 443 localVarHttpHeaderAccepts := []string{"application/json"} 444 445 // set Accept header 446 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 447 if localVarHttpHeaderAccept != "" { 448 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 449 } 450 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 451 if err != nil { 452 return localVarReturnValue, nil, err 453 } 454 455 localVarHttpResponse, err := a.client.callAPI(r) 456 if err != nil || localVarHttpResponse == nil { 457 return localVarReturnValue, localVarHttpResponse, err 458 } 459 460 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 461 localVarHttpResponse.Body.Close() 462 if err != nil { 463 return localVarReturnValue, localVarHttpResponse, err 464 } 465 466 if localVarHttpResponse.StatusCode >= 300 { 467 newErr := GenericOpenAPIError{ 468 body: localVarBody, 469 error: localVarHttpResponse.Status, 470 } 471 if localVarHttpResponse.StatusCode == 0 { 472 var v GetRingOutStatusResponse 473 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 474 if err != nil { 475 newErr.error = err.Error() 476 return localVarReturnValue, localVarHttpResponse, newErr 477 } 478 newErr.model = v 479 return localVarReturnValue, localVarHttpResponse, newErr 480 } 481 return localVarReturnValue, localVarHttpResponse, newErr 482 } 483 484 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 485 if err != nil { 486 newErr := GenericOpenAPIError{ 487 body: localVarBody, 488 error: err.Error(), 489 } 490 return localVarReturnValue, localVarHttpResponse, newErr 491 } 492 493 return localVarReturnValue, localVarHttpResponse, nil 494 } 495 496 /* 497 RingOutApiService Make RingOut Call 498 <p style='font-style:italic;'>Since 1.0.7 (Release 5.16)</p><p>Makes a 2-leg RingOut call.</p><h4>Required Permissions</h4><table class='fullwidth'><thead><tr><th>Permission</th><th>Description</th></tr></thead><tbody><tr><td class='code'>RingOut</td><td>Performing two-legged ring-out phone calls</td></tr></tbody></table><h4>Usage Plan Group</h4><p>Heavy</p> 499 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 500 * @param accountId Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session 501 * @param extensionId Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session 502 * @param makeRingOutRequest JSON body 503 @return GetRingOutStatusResponseIntId 504 */ 505 func (a *RingOutApiService) MakeRingOutCall(ctx context.Context, accountId string, extensionId string, makeRingOutRequest MakeRingOutRequest) (GetRingOutStatusResponseIntId, *http.Response, error) { 506 var ( 507 localVarHttpMethod = strings.ToUpper("Post") 508 localVarPostBody interface{} 509 localVarFormFileName string 510 localVarFileName string 511 localVarFileBytes []byte 512 localVarReturnValue GetRingOutStatusResponseIntId 513 ) 514 515 // create path and map variables 516 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ringout" 517 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 518 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 519 520 localVarHeaderParams := make(map[string]string) 521 localVarQueryParams := url.Values{} 522 localVarFormParams := url.Values{} 523 524 // to determine the Content-Type header 525 localVarHttpContentTypes := []string{"application/json"} 526 527 // set Content-Type header 528 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 529 if localVarHttpContentType != "" { 530 localVarHeaderParams["Content-Type"] = localVarHttpContentType 531 } 532 533 // to determine the Accept header 534 localVarHttpHeaderAccepts := []string{"application/json"} 535 536 // set Accept header 537 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 538 if localVarHttpHeaderAccept != "" { 539 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 540 } 541 // body params 542 localVarPostBody = &makeRingOutRequest 543 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 544 if err != nil { 545 return localVarReturnValue, nil, err 546 } 547 548 localVarHttpResponse, err := a.client.callAPI(r) 549 if err != nil || localVarHttpResponse == nil { 550 return localVarReturnValue, localVarHttpResponse, err 551 } 552 553 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 554 localVarHttpResponse.Body.Close() 555 if err != nil { 556 return localVarReturnValue, localVarHttpResponse, err 557 } 558 559 if localVarHttpResponse.StatusCode >= 300 { 560 newErr := GenericOpenAPIError{ 561 body: localVarBody, 562 error: localVarHttpResponse.Status, 563 } 564 if localVarHttpResponse.StatusCode == 0 { 565 var v GetRingOutStatusResponseIntId 566 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 567 if err != nil { 568 newErr.error = err.Error() 569 return localVarReturnValue, localVarHttpResponse, newErr 570 } 571 newErr.model = v 572 return localVarReturnValue, localVarHttpResponse, newErr 573 } 574 return localVarReturnValue, localVarHttpResponse, newErr 575 } 576 577 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 578 if err != nil { 579 newErr := GenericOpenAPIError{ 580 body: localVarBody, 581 error: err.Error(), 582 } 583 return localVarReturnValue, localVarHttpResponse, newErr 584 } 585 586 return localVarReturnValue, localVarHttpResponse, nil 587 } 588 589 /* 590 RingOutApiService Make RingOut Call 591 <p style='font-style:italic;'>Since 1.0.7 (Release 5.16)</p><p>Makes a 2-leg RingOut call.</p><h4>Required Permissions</h4><table class='fullwidth'><thead><tr><th>Permission</th><th>Description</th></tr></thead><tbody><tr><td class='code'>RingOut</td><td>Performing two-legged ring-out phone calls</td></tr></tbody></table><h4>Usage Plan Group</h4><p>Heavy</p> 592 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 593 * @param accountId Internal identifier of a RingCentral account or tilde (~) to indicate the account logged-in within the current session 594 * @param extensionId Internal identifier of an extension or tilde (~) to indicate the extension assigned to the account logged-in within the current session 595 * @param makeRingOutRequest JSON body 596 @return GetRingOutStatusResponse 597 */ 598 func (a *RingOutApiService) MakeRingOutCallNew(ctx context.Context, accountId string, extensionId string, makeRingOutRequest MakeRingOutRequest) (GetRingOutStatusResponse, *http.Response, error) { 599 var ( 600 localVarHttpMethod = strings.ToUpper("Post") 601 localVarPostBody interface{} 602 localVarFormFileName string 603 localVarFileName string 604 localVarFileBytes []byte 605 localVarReturnValue GetRingOutStatusResponse 606 ) 607 608 // create path and map variables 609 localVarPath := a.client.cfg.BasePath + "/restapi/v1.0/account/{accountId}/extension/{extensionId}/ring-out" 610 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 611 localVarPath = strings.Replace(localVarPath, "{"+"extensionId"+"}", fmt.Sprintf("%v", extensionId), -1) 612 613 localVarHeaderParams := make(map[string]string) 614 localVarQueryParams := url.Values{} 615 localVarFormParams := url.Values{} 616 617 // to determine the Content-Type header 618 localVarHttpContentTypes := []string{"application/json"} 619 620 // set Content-Type header 621 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 622 if localVarHttpContentType != "" { 623 localVarHeaderParams["Content-Type"] = localVarHttpContentType 624 } 625 626 // to determine the Accept header 627 localVarHttpHeaderAccepts := []string{"application/json"} 628 629 // set Accept header 630 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 631 if localVarHttpHeaderAccept != "" { 632 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 633 } 634 // body params 635 localVarPostBody = &makeRingOutRequest 636 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 637 if err != nil { 638 return localVarReturnValue, nil, err 639 } 640 641 localVarHttpResponse, err := a.client.callAPI(r) 642 if err != nil || localVarHttpResponse == nil { 643 return localVarReturnValue, localVarHttpResponse, err 644 } 645 646 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 647 localVarHttpResponse.Body.Close() 648 if err != nil { 649 return localVarReturnValue, localVarHttpResponse, err 650 } 651 652 if localVarHttpResponse.StatusCode >= 300 { 653 newErr := GenericOpenAPIError{ 654 body: localVarBody, 655 error: localVarHttpResponse.Status, 656 } 657 if localVarHttpResponse.StatusCode == 0 { 658 var v GetRingOutStatusResponse 659 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 660 if err != nil { 661 newErr.error = err.Error() 662 return localVarReturnValue, localVarHttpResponse, newErr 663 } 664 newErr.model = v 665 return localVarReturnValue, localVarHttpResponse, newErr 666 } 667 return localVarReturnValue, localVarHttpResponse, newErr 668 } 669 670 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 671 if err != nil { 672 newErr := GenericOpenAPIError{ 673 body: localVarBody, 674 error: err.Error(), 675 } 676 return localVarReturnValue, localVarHttpResponse, newErr 677 } 678 679 return localVarReturnValue, localVarHttpResponse, nil 680 }