github.com/grokify/go-ringcentral-client@v0.3.31/engagedigital/v1/client/api_reply_assistant_versions.go (about) 1 /* 2 * Engage Digital API 3 * 4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) 5 * 6 * API version: 1.0 7 * Generated by: OpenAPI Generator (https://openapi-generator.tech) 8 */ 9 10 package engagedigital 11 12 import ( 13 "context" 14 "fmt" 15 "github.com/antihax/optional" 16 "io/ioutil" 17 "net/http" 18 "net/url" 19 "reflect" 20 "strings" 21 ) 22 23 // Linger please 24 var ( 25 _ context.Context 26 ) 27 28 type ReplyAssistantVersionsApiService service 29 30 /* 31 ReplyAssistantVersionsApiService Creating a reply assistant version 32 This method creates a reply assistant version. In case of success it renders the version, otherwise, it renders an error (422 HTTP code, 404 if the entry_id is invalid). Authorization: only users that have the right to manage reply assistant. 33 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 34 * @param body Body of the version 35 * @param entryId Reply assistant entry id (mandatory) 36 * @param optional nil or *CreateReplyAssistantVersionOpts - Optional Parameters: 37 * @param "SourceIds" (optional.Interface of []string) - Source ids (array) 38 * @param "Format" (optional.String) - Either “text” or “html” 39 * @param "Language" (optional.String) - Language (ex: “fr”) 40 @return ReplyAssistantVersion 41 */ 42 43 type CreateReplyAssistantVersionOpts struct { 44 SourceIds optional.Interface 45 Format optional.String 46 Language optional.String 47 } 48 49 func (a *ReplyAssistantVersionsApiService) CreateReplyAssistantVersion(ctx context.Context, body string, entryId string, localVarOptionals *CreateReplyAssistantVersionOpts) (ReplyAssistantVersion, *http.Response, error) { 50 var ( 51 localVarHttpMethod = http.MethodPost 52 localVarPostBody interface{} 53 localVarFormFileName string 54 localVarFileName string 55 localVarFileBytes []byte 56 localVarReturnValue ReplyAssistantVersion 57 ) 58 59 // create path and map variables 60 localVarPath := a.client.cfg.BasePath + "/reply_assistant/versions" 61 62 localVarHeaderParams := make(map[string]string) 63 localVarQueryParams := url.Values{} 64 localVarFormParams := url.Values{} 65 66 localVarQueryParams.Add("body", parameterToString(body, "")) 67 localVarQueryParams.Add("entry_id", parameterToString(entryId, "")) 68 if localVarOptionals != nil && localVarOptionals.SourceIds.IsSet() { 69 t := localVarOptionals.SourceIds.Value() 70 if reflect.TypeOf(t).Kind() == reflect.Slice { 71 s := reflect.ValueOf(t) 72 for i := 0; i < s.Len(); i++ { 73 localVarQueryParams.Add("source_ids", parameterToString(s.Index(i), "multi")) 74 } 75 } else { 76 localVarQueryParams.Add("source_ids", parameterToString(t, "multi")) 77 } 78 } 79 if localVarOptionals != nil && localVarOptionals.Format.IsSet() { 80 localVarQueryParams.Add("format", parameterToString(localVarOptionals.Format.Value(), "")) 81 } 82 if localVarOptionals != nil && localVarOptionals.Language.IsSet() { 83 localVarQueryParams.Add("language", parameterToString(localVarOptionals.Language.Value(), "")) 84 } 85 // to determine the Content-Type header 86 localVarHttpContentTypes := []string{} 87 88 // set Content-Type header 89 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 90 if localVarHttpContentType != "" { 91 localVarHeaderParams["Content-Type"] = localVarHttpContentType 92 } 93 94 // to determine the Accept header 95 localVarHttpHeaderAccepts := []string{"application/json"} 96 97 // set Accept header 98 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 99 if localVarHttpHeaderAccept != "" { 100 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 101 } 102 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 103 if err != nil { 104 return localVarReturnValue, nil, err 105 } 106 107 localVarHttpResponse, err := a.client.callAPI(r) 108 if err != nil || localVarHttpResponse == nil { 109 return localVarReturnValue, localVarHttpResponse, err 110 } 111 112 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 113 localVarHttpResponse.Body.Close() 114 if err != nil { 115 return localVarReturnValue, localVarHttpResponse, err 116 } 117 118 if localVarHttpResponse.StatusCode >= 300 { 119 newErr := GenericOpenAPIError{ 120 body: localVarBody, 121 error: localVarHttpResponse.Status, 122 } 123 if localVarHttpResponse.StatusCode == 200 { 124 var v ReplyAssistantVersion 125 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 126 if err != nil { 127 newErr.error = err.Error() 128 return localVarReturnValue, localVarHttpResponse, newErr 129 } 130 newErr.model = v 131 return localVarReturnValue, localVarHttpResponse, newErr 132 } 133 return localVarReturnValue, localVarHttpResponse, newErr 134 } 135 136 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 137 if err != nil { 138 newErr := GenericOpenAPIError{ 139 body: localVarBody, 140 error: err.Error(), 141 } 142 return localVarReturnValue, localVarHttpResponse, newErr 143 } 144 145 return localVarReturnValue, localVarHttpResponse, nil 146 } 147 148 /* 149 ReplyAssistantVersionsApiService Deleting a reply assistant version 150 This method destroys an existing version. It renders the version itself. It renders a 404 if id is invalid. Authorization: only users that have the right to manage reply assistant. 151 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 152 * @param replyAssistantVersionId 153 @return ReplyAssistantVersion 154 */ 155 func (a *ReplyAssistantVersionsApiService) DeleteReplyAssistantVersion(ctx context.Context, replyAssistantVersionId string) (ReplyAssistantVersion, *http.Response, error) { 156 var ( 157 localVarHttpMethod = http.MethodDelete 158 localVarPostBody interface{} 159 localVarFormFileName string 160 localVarFileName string 161 localVarFileBytes []byte 162 localVarReturnValue ReplyAssistantVersion 163 ) 164 165 // create path and map variables 166 localVarPath := a.client.cfg.BasePath + "/reply_assistant/versions/{replyAssistantVersionId}" 167 localVarPath = strings.Replace(localVarPath, "{"+"replyAssistantVersionId"+"}", fmt.Sprintf("%v", replyAssistantVersionId), -1) 168 169 localVarHeaderParams := make(map[string]string) 170 localVarQueryParams := url.Values{} 171 localVarFormParams := url.Values{} 172 173 // to determine the Content-Type header 174 localVarHttpContentTypes := []string{} 175 176 // set Content-Type header 177 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 178 if localVarHttpContentType != "" { 179 localVarHeaderParams["Content-Type"] = localVarHttpContentType 180 } 181 182 // to determine the Accept header 183 localVarHttpHeaderAccepts := []string{"application/json"} 184 185 // set Accept header 186 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 187 if localVarHttpHeaderAccept != "" { 188 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 189 } 190 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 191 if err != nil { 192 return localVarReturnValue, nil, err 193 } 194 195 localVarHttpResponse, err := a.client.callAPI(r) 196 if err != nil || localVarHttpResponse == nil { 197 return localVarReturnValue, localVarHttpResponse, err 198 } 199 200 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 201 localVarHttpResponse.Body.Close() 202 if err != nil { 203 return localVarReturnValue, localVarHttpResponse, err 204 } 205 206 if localVarHttpResponse.StatusCode >= 300 { 207 newErr := GenericOpenAPIError{ 208 body: localVarBody, 209 error: localVarHttpResponse.Status, 210 } 211 if localVarHttpResponse.StatusCode == 200 { 212 var v ReplyAssistantVersion 213 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 214 if err != nil { 215 newErr.error = err.Error() 216 return localVarReturnValue, localVarHttpResponse, newErr 217 } 218 newErr.model = v 219 return localVarReturnValue, localVarHttpResponse, newErr 220 } 221 return localVarReturnValue, localVarHttpResponse, newErr 222 } 223 224 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 225 if err != nil { 226 newErr := GenericOpenAPIError{ 227 body: localVarBody, 228 error: err.Error(), 229 } 230 return localVarReturnValue, localVarHttpResponse, newErr 231 } 232 233 return localVarReturnValue, localVarHttpResponse, nil 234 } 235 236 /* 237 ReplyAssistantVersionsApiService Getting all reply assistant versions 238 This method renders all reply assistant versions ordered by creation date (ascending). Authorization: only users that have the right to manage reply assistant. 239 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 240 * @param optional nil or *GetAllReplyAssistantVersionsOpts - Optional Parameters: 241 * @param "Offset" (optional.Int32) - The record index to start. Default value is 0. 242 * @param "Limit" (optional.Int32) - The max number of records to return. Default value is 30, max value is 150. 243 @return GetAllReplyAssistantVersionsResponse 244 */ 245 246 type GetAllReplyAssistantVersionsOpts struct { 247 Offset optional.Int32 248 Limit optional.Int32 249 } 250 251 func (a *ReplyAssistantVersionsApiService) GetAllReplyAssistantVersions(ctx context.Context, localVarOptionals *GetAllReplyAssistantVersionsOpts) (GetAllReplyAssistantVersionsResponse, *http.Response, error) { 252 var ( 253 localVarHttpMethod = http.MethodGet 254 localVarPostBody interface{} 255 localVarFormFileName string 256 localVarFileName string 257 localVarFileBytes []byte 258 localVarReturnValue GetAllReplyAssistantVersionsResponse 259 ) 260 261 // create path and map variables 262 localVarPath := a.client.cfg.BasePath + "/reply_assistant/versions" 263 264 localVarHeaderParams := make(map[string]string) 265 localVarQueryParams := url.Values{} 266 localVarFormParams := url.Values{} 267 268 if localVarOptionals != nil && localVarOptionals.Offset.IsSet() { 269 localVarQueryParams.Add("offset", parameterToString(localVarOptionals.Offset.Value(), "")) 270 } 271 if localVarOptionals != nil && localVarOptionals.Limit.IsSet() { 272 localVarQueryParams.Add("limit", parameterToString(localVarOptionals.Limit.Value(), "")) 273 } 274 // to determine the Content-Type header 275 localVarHttpContentTypes := []string{} 276 277 // set Content-Type header 278 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 279 if localVarHttpContentType != "" { 280 localVarHeaderParams["Content-Type"] = localVarHttpContentType 281 } 282 283 // to determine the Accept header 284 localVarHttpHeaderAccepts := []string{"application/json"} 285 286 // set Accept header 287 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 288 if localVarHttpHeaderAccept != "" { 289 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 290 } 291 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 292 if err != nil { 293 return localVarReturnValue, nil, err 294 } 295 296 localVarHttpResponse, err := a.client.callAPI(r) 297 if err != nil || localVarHttpResponse == nil { 298 return localVarReturnValue, localVarHttpResponse, err 299 } 300 301 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 302 localVarHttpResponse.Body.Close() 303 if err != nil { 304 return localVarReturnValue, localVarHttpResponse, err 305 } 306 307 if localVarHttpResponse.StatusCode >= 300 { 308 newErr := GenericOpenAPIError{ 309 body: localVarBody, 310 error: localVarHttpResponse.Status, 311 } 312 if localVarHttpResponse.StatusCode == 200 { 313 var v GetAllReplyAssistantVersionsResponse 314 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 315 if err != nil { 316 newErr.error = err.Error() 317 return localVarReturnValue, localVarHttpResponse, newErr 318 } 319 newErr.model = v 320 return localVarReturnValue, localVarHttpResponse, newErr 321 } 322 return localVarReturnValue, localVarHttpResponse, newErr 323 } 324 325 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 326 if err != nil { 327 newErr := GenericOpenAPIError{ 328 body: localVarBody, 329 error: err.Error(), 330 } 331 return localVarReturnValue, localVarHttpResponse, newErr 332 } 333 334 return localVarReturnValue, localVarHttpResponse, nil 335 } 336 337 /* 338 ReplyAssistantVersionsApiService Getting a reply assistant version from its id 339 This method renders a version from given id. Authorization: only users that have the right to manage reply assistant. 340 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 341 * @param replyAssistantVersionId 342 @return ReplyAssistantVersion 343 */ 344 func (a *ReplyAssistantVersionsApiService) GetReplyAssistantVersion(ctx context.Context, replyAssistantVersionId string) (ReplyAssistantVersion, *http.Response, error) { 345 var ( 346 localVarHttpMethod = http.MethodGet 347 localVarPostBody interface{} 348 localVarFormFileName string 349 localVarFileName string 350 localVarFileBytes []byte 351 localVarReturnValue ReplyAssistantVersion 352 ) 353 354 // create path and map variables 355 localVarPath := a.client.cfg.BasePath + "/reply_assistant/versions/{replyAssistantVersionId}" 356 localVarPath = strings.Replace(localVarPath, "{"+"replyAssistantVersionId"+"}", fmt.Sprintf("%v", replyAssistantVersionId), -1) 357 358 localVarHeaderParams := make(map[string]string) 359 localVarQueryParams := url.Values{} 360 localVarFormParams := url.Values{} 361 362 // to determine the Content-Type header 363 localVarHttpContentTypes := []string{} 364 365 // set Content-Type header 366 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 367 if localVarHttpContentType != "" { 368 localVarHeaderParams["Content-Type"] = localVarHttpContentType 369 } 370 371 // to determine the Accept header 372 localVarHttpHeaderAccepts := []string{"application/json"} 373 374 // set Accept header 375 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 376 if localVarHttpHeaderAccept != "" { 377 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 378 } 379 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 380 if err != nil { 381 return localVarReturnValue, nil, err 382 } 383 384 localVarHttpResponse, err := a.client.callAPI(r) 385 if err != nil || localVarHttpResponse == nil { 386 return localVarReturnValue, localVarHttpResponse, err 387 } 388 389 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 390 localVarHttpResponse.Body.Close() 391 if err != nil { 392 return localVarReturnValue, localVarHttpResponse, err 393 } 394 395 if localVarHttpResponse.StatusCode >= 300 { 396 newErr := GenericOpenAPIError{ 397 body: localVarBody, 398 error: localVarHttpResponse.Status, 399 } 400 if localVarHttpResponse.StatusCode == 200 { 401 var v ReplyAssistantVersion 402 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 403 if err != nil { 404 newErr.error = err.Error() 405 return localVarReturnValue, localVarHttpResponse, newErr 406 } 407 newErr.model = v 408 return localVarReturnValue, localVarHttpResponse, newErr 409 } 410 return localVarReturnValue, localVarHttpResponse, newErr 411 } 412 413 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 414 if err != nil { 415 newErr := GenericOpenAPIError{ 416 body: localVarBody, 417 error: err.Error(), 418 } 419 return localVarReturnValue, localVarHttpResponse, newErr 420 } 421 422 return localVarReturnValue, localVarHttpResponse, nil 423 } 424 425 /* 426 ReplyAssistantVersionsApiService Updating a reply assistant version 427 This method updates an existing version from given attributes and renders it in case of success. Authorization: only users that have the right to manage reply assistant. 428 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 429 * @param replyAssistantVersionId 430 * @param optional nil or *UpdateReplyAssistantVersionOpts - Optional Parameters: 431 * @param "Body" (optional.String) - Body of the version 432 * @param "EntryId" (optional.String) - Reply assistant entry id. 433 * @param "SourceIds" (optional.Interface of []string) - Source ids (array) 434 * @param "Format" (optional.String) - Either “text” or “html” 435 * @param "Language" (optional.String) - Language (ex: “fr”) 436 @return ReplyAssistantVersion 437 */ 438 439 type UpdateReplyAssistantVersionOpts struct { 440 Body optional.String 441 EntryId optional.String 442 SourceIds optional.Interface 443 Format optional.String 444 Language optional.String 445 } 446 447 func (a *ReplyAssistantVersionsApiService) UpdateReplyAssistantVersion(ctx context.Context, replyAssistantVersionId string, localVarOptionals *UpdateReplyAssistantVersionOpts) (ReplyAssistantVersion, *http.Response, error) { 448 var ( 449 localVarHttpMethod = http.MethodPut 450 localVarPostBody interface{} 451 localVarFormFileName string 452 localVarFileName string 453 localVarFileBytes []byte 454 localVarReturnValue ReplyAssistantVersion 455 ) 456 457 // create path and map variables 458 localVarPath := a.client.cfg.BasePath + "/reply_assistant/versions/{replyAssistantVersionId}" 459 localVarPath = strings.Replace(localVarPath, "{"+"replyAssistantVersionId"+"}", fmt.Sprintf("%v", replyAssistantVersionId), -1) 460 461 localVarHeaderParams := make(map[string]string) 462 localVarQueryParams := url.Values{} 463 localVarFormParams := url.Values{} 464 465 if localVarOptionals != nil && localVarOptionals.Body.IsSet() { 466 localVarQueryParams.Add("body", parameterToString(localVarOptionals.Body.Value(), "")) 467 } 468 if localVarOptionals != nil && localVarOptionals.EntryId.IsSet() { 469 localVarQueryParams.Add("entry_id", parameterToString(localVarOptionals.EntryId.Value(), "")) 470 } 471 if localVarOptionals != nil && localVarOptionals.SourceIds.IsSet() { 472 t := localVarOptionals.SourceIds.Value() 473 if reflect.TypeOf(t).Kind() == reflect.Slice { 474 s := reflect.ValueOf(t) 475 for i := 0; i < s.Len(); i++ { 476 localVarQueryParams.Add("source_ids[]", parameterToString(s.Index(i), "multi")) 477 } 478 } else { 479 localVarQueryParams.Add("source_ids[]", parameterToString(t, "multi")) 480 } 481 } 482 if localVarOptionals != nil && localVarOptionals.Format.IsSet() { 483 localVarQueryParams.Add("format", parameterToString(localVarOptionals.Format.Value(), "")) 484 } 485 if localVarOptionals != nil && localVarOptionals.Language.IsSet() { 486 localVarQueryParams.Add("language", parameterToString(localVarOptionals.Language.Value(), "")) 487 } 488 // to determine the Content-Type header 489 localVarHttpContentTypes := []string{} 490 491 // set Content-Type header 492 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 493 if localVarHttpContentType != "" { 494 localVarHeaderParams["Content-Type"] = localVarHttpContentType 495 } 496 497 // to determine the Accept header 498 localVarHttpHeaderAccepts := []string{"application/json"} 499 500 // set Accept header 501 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 502 if localVarHttpHeaderAccept != "" { 503 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 504 } 505 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 506 if err != nil { 507 return localVarReturnValue, nil, err 508 } 509 510 localVarHttpResponse, err := a.client.callAPI(r) 511 if err != nil || localVarHttpResponse == nil { 512 return localVarReturnValue, localVarHttpResponse, err 513 } 514 515 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 516 localVarHttpResponse.Body.Close() 517 if err != nil { 518 return localVarReturnValue, localVarHttpResponse, err 519 } 520 521 if localVarHttpResponse.StatusCode >= 300 { 522 newErr := GenericOpenAPIError{ 523 body: localVarBody, 524 error: localVarHttpResponse.Status, 525 } 526 if localVarHttpResponse.StatusCode == 200 { 527 var v ReplyAssistantVersion 528 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 529 if err != nil { 530 newErr.error = err.Error() 531 return localVarReturnValue, localVarHttpResponse, newErr 532 } 533 newErr.model = v 534 return localVarReturnValue, localVarHttpResponse, newErr 535 } 536 return localVarReturnValue, localVarHttpResponse, newErr 537 } 538 539 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 540 if err != nil { 541 newErr := GenericOpenAPIError{ 542 body: localVarBody, 543 error: err.Error(), 544 } 545 return localVarReturnValue, localVarHttpResponse, newErr 546 } 547 548 return localVarReturnValue, localVarHttpResponse, nil 549 }