github.com/grokify/go-ringcentral-client@v0.3.31/engagedigital/v1/client/api_intervention_comments.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 "strings" 20 ) 21 22 // Linger please 23 var ( 24 _ context.Context 25 ) 26 27 type InterventionCommentsApiService service 28 29 /* 30 InterventionCommentsApiService Creating an intervention comment 31 This method creates a new intervention comment. In case of success it renders the created comment, otherwise, it renders an error (422 HTTP code). It creates comment as token’s user. If token’s user does not have “read” on given intervention’s source a 404 HTTP response will be returned. 32 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 33 * @param body The comment body (mandatory). 34 * @param interventionId The comment intervention id (mandatory). 35 * @param userId The comment user id (mandatory). 36 @return InterventionComment 37 */ 38 func (a *InterventionCommentsApiService) CreateInterventionComment(ctx context.Context, body string, interventionId string, userId string) (InterventionComment, *http.Response, error) { 39 var ( 40 localVarHttpMethod = http.MethodPost 41 localVarPostBody interface{} 42 localVarFormFileName string 43 localVarFileName string 44 localVarFileBytes []byte 45 localVarReturnValue InterventionComment 46 ) 47 48 // create path and map variables 49 localVarPath := a.client.cfg.BasePath + "/intervention_comments" 50 51 localVarHeaderParams := make(map[string]string) 52 localVarQueryParams := url.Values{} 53 localVarFormParams := url.Values{} 54 55 localVarQueryParams.Add("body", parameterToString(body, "")) 56 localVarQueryParams.Add("intervention_id", parameterToString(interventionId, "")) 57 localVarQueryParams.Add("user_id", parameterToString(userId, "")) 58 // to determine the Content-Type header 59 localVarHttpContentTypes := []string{} 60 61 // set Content-Type header 62 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 63 if localVarHttpContentType != "" { 64 localVarHeaderParams["Content-Type"] = localVarHttpContentType 65 } 66 67 // to determine the Accept header 68 localVarHttpHeaderAccepts := []string{"application/json"} 69 70 // set Accept header 71 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 72 if localVarHttpHeaderAccept != "" { 73 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 74 } 75 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 76 if err != nil { 77 return localVarReturnValue, nil, err 78 } 79 80 localVarHttpResponse, err := a.client.callAPI(r) 81 if err != nil || localVarHttpResponse == nil { 82 return localVarReturnValue, localVarHttpResponse, err 83 } 84 85 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 86 localVarHttpResponse.Body.Close() 87 if err != nil { 88 return localVarReturnValue, localVarHttpResponse, err 89 } 90 91 if localVarHttpResponse.StatusCode >= 300 { 92 newErr := GenericOpenAPIError{ 93 body: localVarBody, 94 error: localVarHttpResponse.Status, 95 } 96 if localVarHttpResponse.StatusCode == 200 { 97 var v InterventionComment 98 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 99 if err != nil { 100 newErr.error = err.Error() 101 return localVarReturnValue, localVarHttpResponse, newErr 102 } 103 newErr.model = v 104 return localVarReturnValue, localVarHttpResponse, newErr 105 } 106 return localVarReturnValue, localVarHttpResponse, newErr 107 } 108 109 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 110 if err != nil { 111 newErr := GenericOpenAPIError{ 112 body: localVarBody, 113 error: err.Error(), 114 } 115 return localVarReturnValue, localVarHttpResponse, newErr 116 } 117 118 return localVarReturnValue, localVarHttpResponse, nil 119 } 120 121 /* 122 InterventionCommentsApiService Deleting an intervention comment 123 This method destroys an intervention comment. It renders comment itself. If token’s user does not have “read” on comment’s source a 404 HTTP response will be returned. Authorization: no. 124 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 125 * @param interventionCommentId 126 @return InterventionComment 127 */ 128 func (a *InterventionCommentsApiService) DeleteInterventionComment(ctx context.Context, interventionCommentId string) (InterventionComment, *http.Response, error) { 129 var ( 130 localVarHttpMethod = http.MethodDelete 131 localVarPostBody interface{} 132 localVarFormFileName string 133 localVarFileName string 134 localVarFileBytes []byte 135 localVarReturnValue InterventionComment 136 ) 137 138 // create path and map variables 139 localVarPath := a.client.cfg.BasePath + "/intervention_comments/{interventionCommentId}" 140 localVarPath = strings.Replace(localVarPath, "{"+"interventionCommentId"+"}", fmt.Sprintf("%v", interventionCommentId), -1) 141 142 localVarHeaderParams := make(map[string]string) 143 localVarQueryParams := url.Values{} 144 localVarFormParams := url.Values{} 145 146 // to determine the Content-Type header 147 localVarHttpContentTypes := []string{} 148 149 // set Content-Type header 150 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 151 if localVarHttpContentType != "" { 152 localVarHeaderParams["Content-Type"] = localVarHttpContentType 153 } 154 155 // to determine the Accept header 156 localVarHttpHeaderAccepts := []string{"application/json"} 157 158 // set Accept header 159 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 160 if localVarHttpHeaderAccept != "" { 161 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 162 } 163 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 164 if err != nil { 165 return localVarReturnValue, nil, err 166 } 167 168 localVarHttpResponse, err := a.client.callAPI(r) 169 if err != nil || localVarHttpResponse == nil { 170 return localVarReturnValue, localVarHttpResponse, err 171 } 172 173 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 174 localVarHttpResponse.Body.Close() 175 if err != nil { 176 return localVarReturnValue, localVarHttpResponse, err 177 } 178 179 if localVarHttpResponse.StatusCode >= 300 { 180 newErr := GenericOpenAPIError{ 181 body: localVarBody, 182 error: localVarHttpResponse.Status, 183 } 184 if localVarHttpResponse.StatusCode == 200 { 185 var v InterventionComment 186 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 187 if err != nil { 188 newErr.error = err.Error() 189 return localVarReturnValue, localVarHttpResponse, newErr 190 } 191 newErr.model = v 192 return localVarReturnValue, localVarHttpResponse, newErr 193 } 194 return localVarReturnValue, localVarHttpResponse, newErr 195 } 196 197 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 198 if err != nil { 199 newErr := GenericOpenAPIError{ 200 body: localVarBody, 201 error: err.Error(), 202 } 203 return localVarReturnValue, localVarHttpResponse, newErr 204 } 205 206 return localVarReturnValue, localVarHttpResponse, nil 207 } 208 209 /* 210 InterventionCommentsApiService Getting all intervention comments 211 This method renders interventions comments ordered by creation date (descending). Only comments in sources where token’s user has “read” permission are returned. Authorization: no. 212 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 213 * @param optional nil or *GetAllInterventionCommentsOpts - Optional Parameters: 214 * @param "InterventionId" (optional.String) - To filter comments on given intervention id. 215 * @param "ThreadId" (optional.String) - To filter comments on given thread id. 216 * @param "UserId" (optional.String) - To filter comments on given user id. 217 * @param "IdentityId" (optional.String) - To filter comments on given identity id. 218 * @param "Offset" (optional.Int32) - The record index to start. Default value is 0. 219 * @param "Limit" (optional.Int32) - The max number of records to return. Default value is 30, max value is 150. 220 @return GetAllInterventionCommentsResponse 221 */ 222 223 type GetAllInterventionCommentsOpts struct { 224 InterventionId optional.String 225 ThreadId optional.String 226 UserId optional.String 227 IdentityId optional.String 228 Offset optional.Int32 229 Limit optional.Int32 230 } 231 232 func (a *InterventionCommentsApiService) GetAllInterventionComments(ctx context.Context, localVarOptionals *GetAllInterventionCommentsOpts) (GetAllInterventionCommentsResponse, *http.Response, error) { 233 var ( 234 localVarHttpMethod = http.MethodGet 235 localVarPostBody interface{} 236 localVarFormFileName string 237 localVarFileName string 238 localVarFileBytes []byte 239 localVarReturnValue GetAllInterventionCommentsResponse 240 ) 241 242 // create path and map variables 243 localVarPath := a.client.cfg.BasePath + "/intervention_comments" 244 245 localVarHeaderParams := make(map[string]string) 246 localVarQueryParams := url.Values{} 247 localVarFormParams := url.Values{} 248 249 if localVarOptionals != nil && localVarOptionals.InterventionId.IsSet() { 250 localVarQueryParams.Add("intervention_id", parameterToString(localVarOptionals.InterventionId.Value(), "")) 251 } 252 if localVarOptionals != nil && localVarOptionals.ThreadId.IsSet() { 253 localVarQueryParams.Add("thread_id", parameterToString(localVarOptionals.ThreadId.Value(), "")) 254 } 255 if localVarOptionals != nil && localVarOptionals.UserId.IsSet() { 256 localVarQueryParams.Add("user_id", parameterToString(localVarOptionals.UserId.Value(), "")) 257 } 258 if localVarOptionals != nil && localVarOptionals.IdentityId.IsSet() { 259 localVarQueryParams.Add("identity_id", parameterToString(localVarOptionals.IdentityId.Value(), "")) 260 } 261 if localVarOptionals != nil && localVarOptionals.Offset.IsSet() { 262 localVarQueryParams.Add("offset", parameterToString(localVarOptionals.Offset.Value(), "")) 263 } 264 if localVarOptionals != nil && localVarOptionals.Limit.IsSet() { 265 localVarQueryParams.Add("limit", parameterToString(localVarOptionals.Limit.Value(), "")) 266 } 267 // to determine the Content-Type header 268 localVarHttpContentTypes := []string{} 269 270 // set Content-Type header 271 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 272 if localVarHttpContentType != "" { 273 localVarHeaderParams["Content-Type"] = localVarHttpContentType 274 } 275 276 // to determine the Accept header 277 localVarHttpHeaderAccepts := []string{"application/json"} 278 279 // set Accept header 280 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 281 if localVarHttpHeaderAccept != "" { 282 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 283 } 284 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 285 if err != nil { 286 return localVarReturnValue, nil, err 287 } 288 289 localVarHttpResponse, err := a.client.callAPI(r) 290 if err != nil || localVarHttpResponse == nil { 291 return localVarReturnValue, localVarHttpResponse, err 292 } 293 294 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 295 localVarHttpResponse.Body.Close() 296 if err != nil { 297 return localVarReturnValue, localVarHttpResponse, err 298 } 299 300 if localVarHttpResponse.StatusCode >= 300 { 301 newErr := GenericOpenAPIError{ 302 body: localVarBody, 303 error: localVarHttpResponse.Status, 304 } 305 if localVarHttpResponse.StatusCode == 200 { 306 var v GetAllInterventionCommentsResponse 307 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 308 if err != nil { 309 newErr.error = err.Error() 310 return localVarReturnValue, localVarHttpResponse, newErr 311 } 312 newErr.model = v 313 return localVarReturnValue, localVarHttpResponse, newErr 314 } 315 return localVarReturnValue, localVarHttpResponse, newErr 316 } 317 318 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 319 if err != nil { 320 newErr := GenericOpenAPIError{ 321 body: localVarBody, 322 error: err.Error(), 323 } 324 return localVarReturnValue, localVarHttpResponse, newErr 325 } 326 327 return localVarReturnValue, localVarHttpResponse, nil 328 } 329 330 /* 331 InterventionCommentsApiService Getting an intervention comment from its id 332 This method renders an intervention comment from given id. If token’s user does not have “read” on comment’s source a 404 HTTP response will be returned. 333 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 334 * @param interventionCommentId 335 @return InterventionComment 336 */ 337 func (a *InterventionCommentsApiService) GetInterventionComment(ctx context.Context, interventionCommentId string) (InterventionComment, *http.Response, error) { 338 var ( 339 localVarHttpMethod = http.MethodGet 340 localVarPostBody interface{} 341 localVarFormFileName string 342 localVarFileName string 343 localVarFileBytes []byte 344 localVarReturnValue InterventionComment 345 ) 346 347 // create path and map variables 348 localVarPath := a.client.cfg.BasePath + "/intervention_comments/{interventionCommentId}" 349 localVarPath = strings.Replace(localVarPath, "{"+"interventionCommentId"+"}", fmt.Sprintf("%v", interventionCommentId), -1) 350 351 localVarHeaderParams := make(map[string]string) 352 localVarQueryParams := url.Values{} 353 localVarFormParams := url.Values{} 354 355 // to determine the Content-Type header 356 localVarHttpContentTypes := []string{} 357 358 // set Content-Type header 359 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 360 if localVarHttpContentType != "" { 361 localVarHeaderParams["Content-Type"] = localVarHttpContentType 362 } 363 364 // to determine the Accept header 365 localVarHttpHeaderAccepts := []string{"application/json"} 366 367 // set Accept header 368 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 369 if localVarHttpHeaderAccept != "" { 370 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 371 } 372 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 373 if err != nil { 374 return localVarReturnValue, nil, err 375 } 376 377 localVarHttpResponse, err := a.client.callAPI(r) 378 if err != nil || localVarHttpResponse == nil { 379 return localVarReturnValue, localVarHttpResponse, err 380 } 381 382 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 383 localVarHttpResponse.Body.Close() 384 if err != nil { 385 return localVarReturnValue, localVarHttpResponse, err 386 } 387 388 if localVarHttpResponse.StatusCode >= 300 { 389 newErr := GenericOpenAPIError{ 390 body: localVarBody, 391 error: localVarHttpResponse.Status, 392 } 393 if localVarHttpResponse.StatusCode == 200 { 394 var v InterventionComment 395 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 396 if err != nil { 397 newErr.error = err.Error() 398 return localVarReturnValue, localVarHttpResponse, newErr 399 } 400 newErr.model = v 401 return localVarReturnValue, localVarHttpResponse, newErr 402 } 403 return localVarReturnValue, localVarHttpResponse, newErr 404 } 405 406 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 407 if err != nil { 408 newErr := GenericOpenAPIError{ 409 body: localVarBody, 410 error: err.Error(), 411 } 412 return localVarReturnValue, localVarHttpResponse, newErr 413 } 414 415 return localVarReturnValue, localVarHttpResponse, nil 416 }