github.com/grokify/go-ringcentral-client@v0.3.31/engagedigital/v1/client/api_events.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 EventsApiService service
    28  
    29  /*
    30  EventsApiService Getting all events
    31  This method renders events ordered by creation date (descending).  Authorization​: Only users whose role can search event permission.
    32   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    33   * @param optional nil or *GetAllEventsOpts - Optional Parameters:
    34   * @param "Q" (optional.String) -  To filter events on given query. Query works exactly like threads query but only have those keywords: content, content_thread, name_in, created_before, created_after, user. Order can be created_at.desc (default) or created_at.asc. e.g. q=name_in:\"content.replied\"%20content_thread:\"7f946431b6eebffafae642cc\"%20created_after:\"2014-03-20\"%20user:\"4ee91f197aa58d01b500000f\"%20order:\"created_at.asc\" * DateTime parameters should be ISO-8601 * you can specify multiple value for a given keyword: q=name_in:’content.replied’&name_in:’content.ignored’ Please refer to ​Search & filtering parameters​ for more details.
    35   * @param "Offset" (optional.Int32) -  The record index to start. Default value is 0.
    36   * @param "Limit" (optional.Int32) -  The max number of records to return. Default value is 30, max value is 150.
    37  @return GetAllEventsResponse
    38  */
    39  
    40  type GetAllEventsOpts struct {
    41  	Q      optional.String
    42  	Offset optional.Int32
    43  	Limit  optional.Int32
    44  }
    45  
    46  func (a *EventsApiService) GetAllEvents(ctx context.Context, localVarOptionals *GetAllEventsOpts) (GetAllEventsResponse, *http.Response, error) {
    47  	var (
    48  		localVarHttpMethod   = http.MethodGet
    49  		localVarPostBody     interface{}
    50  		localVarFormFileName string
    51  		localVarFileName     string
    52  		localVarFileBytes    []byte
    53  		localVarReturnValue  GetAllEventsResponse
    54  	)
    55  
    56  	// create path and map variables
    57  	localVarPath := a.client.cfg.BasePath + "/events"
    58  
    59  	localVarHeaderParams := make(map[string]string)
    60  	localVarQueryParams := url.Values{}
    61  	localVarFormParams := url.Values{}
    62  
    63  	if localVarOptionals != nil && localVarOptionals.Q.IsSet() {
    64  		localVarQueryParams.Add("q", parameterToString(localVarOptionals.Q.Value(), ""))
    65  	}
    66  	if localVarOptionals != nil && localVarOptionals.Offset.IsSet() {
    67  		localVarQueryParams.Add("offset", parameterToString(localVarOptionals.Offset.Value(), ""))
    68  	}
    69  	if localVarOptionals != nil && localVarOptionals.Limit.IsSet() {
    70  		localVarQueryParams.Add("limit", parameterToString(localVarOptionals.Limit.Value(), ""))
    71  	}
    72  	// to determine the Content-Type header
    73  	localVarHttpContentTypes := []string{}
    74  
    75  	// set Content-Type header
    76  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    77  	if localVarHttpContentType != "" {
    78  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    79  	}
    80  
    81  	// to determine the Accept header
    82  	localVarHttpHeaderAccepts := []string{"application/json"}
    83  
    84  	// set Accept header
    85  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    86  	if localVarHttpHeaderAccept != "" {
    87  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    88  	}
    89  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    90  	if err != nil {
    91  		return localVarReturnValue, nil, err
    92  	}
    93  
    94  	localVarHttpResponse, err := a.client.callAPI(r)
    95  	if err != nil || localVarHttpResponse == nil {
    96  		return localVarReturnValue, localVarHttpResponse, err
    97  	}
    98  
    99  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   100  	localVarHttpResponse.Body.Close()
   101  	if err != nil {
   102  		return localVarReturnValue, localVarHttpResponse, err
   103  	}
   104  
   105  	if localVarHttpResponse.StatusCode >= 300 {
   106  		newErr := GenericOpenAPIError{
   107  			body:  localVarBody,
   108  			error: localVarHttpResponse.Status,
   109  		}
   110  		if localVarHttpResponse.StatusCode == 200 {
   111  			var v GetAllEventsResponse
   112  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   113  			if err != nil {
   114  				newErr.error = err.Error()
   115  				return localVarReturnValue, localVarHttpResponse, newErr
   116  			}
   117  			newErr.model = v
   118  			return localVarReturnValue, localVarHttpResponse, newErr
   119  		}
   120  		return localVarReturnValue, localVarHttpResponse, newErr
   121  	}
   122  
   123  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   124  	if err != nil {
   125  		newErr := GenericOpenAPIError{
   126  			body:  localVarBody,
   127  			error: err.Error(),
   128  		}
   129  		return localVarReturnValue, localVarHttpResponse, newErr
   130  	}
   131  
   132  	return localVarReturnValue, localVarHttpResponse, nil
   133  }
   134  
   135  /*
   136  EventsApiService Getting an event from its id
   137  This method renders an event from given id. If token’s user role does not have “search event” permission a 404 HTTP response will be returned.  Authorization​: Only users who’s role can search event permission.
   138   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   139   * @param eventId
   140  @return Event
   141  */
   142  func (a *EventsApiService) GetEvent(ctx context.Context, eventId string) (Event, *http.Response, error) {
   143  	var (
   144  		localVarHttpMethod   = http.MethodGet
   145  		localVarPostBody     interface{}
   146  		localVarFormFileName string
   147  		localVarFileName     string
   148  		localVarFileBytes    []byte
   149  		localVarReturnValue  Event
   150  	)
   151  
   152  	// create path and map variables
   153  	localVarPath := a.client.cfg.BasePath + "/events/{eventId}"
   154  	localVarPath = strings.Replace(localVarPath, "{"+"eventId"+"}", fmt.Sprintf("%v", eventId), -1)
   155  
   156  	localVarHeaderParams := make(map[string]string)
   157  	localVarQueryParams := url.Values{}
   158  	localVarFormParams := url.Values{}
   159  
   160  	// to determine the Content-Type header
   161  	localVarHttpContentTypes := []string{}
   162  
   163  	// set Content-Type header
   164  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   165  	if localVarHttpContentType != "" {
   166  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   167  	}
   168  
   169  	// to determine the Accept header
   170  	localVarHttpHeaderAccepts := []string{"application/json"}
   171  
   172  	// set Accept header
   173  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   174  	if localVarHttpHeaderAccept != "" {
   175  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   176  	}
   177  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   178  	if err != nil {
   179  		return localVarReturnValue, nil, err
   180  	}
   181  
   182  	localVarHttpResponse, err := a.client.callAPI(r)
   183  	if err != nil || localVarHttpResponse == nil {
   184  		return localVarReturnValue, localVarHttpResponse, err
   185  	}
   186  
   187  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   188  	localVarHttpResponse.Body.Close()
   189  	if err != nil {
   190  		return localVarReturnValue, localVarHttpResponse, err
   191  	}
   192  
   193  	if localVarHttpResponse.StatusCode >= 300 {
   194  		newErr := GenericOpenAPIError{
   195  			body:  localVarBody,
   196  			error: localVarHttpResponse.Status,
   197  		}
   198  		if localVarHttpResponse.StatusCode == 200 {
   199  			var v Event
   200  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   201  			if err != nil {
   202  				newErr.error = err.Error()
   203  				return localVarReturnValue, localVarHttpResponse, newErr
   204  			}
   205  			newErr.model = v
   206  			return localVarReturnValue, localVarHttpResponse, newErr
   207  		}
   208  		return localVarReturnValue, localVarHttpResponse, newErr
   209  	}
   210  
   211  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   212  	if err != nil {
   213  		newErr := GenericOpenAPIError{
   214  			body:  localVarBody,
   215  			error: err.Error(),
   216  		}
   217  		return localVarReturnValue, localVarHttpResponse, newErr
   218  	}
   219  
   220  	return localVarReturnValue, localVarHttpResponse, nil
   221  }