github.com/grokify/go-ringcentral-client@v0.3.31/engagedigital/v1/client/api_communities.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 CommunitiesApiService service
    28  
    29  /*
    30  CommunitiesApiService Getting all communities
    31  This method renders communities ordered by creation date (ascending).
    32   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    33   * @param optional nil or *GetAllCommunitiesOpts - Optional Parameters:
    34   * @param "Offset" (optional.Int32) -  The record index to start. Default value is 0.
    35   * @param "Limit" (optional.Int32) -  The max number of records to return. Default value is 30, max value is 150.
    36  @return GetAllCommunitiesResponse
    37  */
    38  
    39  type GetAllCommunitiesOpts struct {
    40  	Offset optional.Int32
    41  	Limit  optional.Int32
    42  }
    43  
    44  func (a *CommunitiesApiService) GetAllCommunities(ctx context.Context, localVarOptionals *GetAllCommunitiesOpts) (GetAllCommunitiesResponse, *http.Response, error) {
    45  	var (
    46  		localVarHttpMethod   = http.MethodGet
    47  		localVarPostBody     interface{}
    48  		localVarFormFileName string
    49  		localVarFileName     string
    50  		localVarFileBytes    []byte
    51  		localVarReturnValue  GetAllCommunitiesResponse
    52  	)
    53  
    54  	// create path and map variables
    55  	localVarPath := a.client.cfg.BasePath + "/communities"
    56  
    57  	localVarHeaderParams := make(map[string]string)
    58  	localVarQueryParams := url.Values{}
    59  	localVarFormParams := url.Values{}
    60  
    61  	if localVarOptionals != nil && localVarOptionals.Offset.IsSet() {
    62  		localVarQueryParams.Add("offset", parameterToString(localVarOptionals.Offset.Value(), ""))
    63  	}
    64  	if localVarOptionals != nil && localVarOptionals.Limit.IsSet() {
    65  		localVarQueryParams.Add("limit", parameterToString(localVarOptionals.Limit.Value(), ""))
    66  	}
    67  	// to determine the Content-Type header
    68  	localVarHttpContentTypes := []string{}
    69  
    70  	// set Content-Type header
    71  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    72  	if localVarHttpContentType != "" {
    73  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    74  	}
    75  
    76  	// to determine the Accept header
    77  	localVarHttpHeaderAccepts := []string{"application/json"}
    78  
    79  	// set Accept header
    80  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    81  	if localVarHttpHeaderAccept != "" {
    82  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    83  	}
    84  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    85  	if err != nil {
    86  		return localVarReturnValue, nil, err
    87  	}
    88  
    89  	localVarHttpResponse, err := a.client.callAPI(r)
    90  	if err != nil || localVarHttpResponse == nil {
    91  		return localVarReturnValue, localVarHttpResponse, err
    92  	}
    93  
    94  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    95  	localVarHttpResponse.Body.Close()
    96  	if err != nil {
    97  		return localVarReturnValue, localVarHttpResponse, err
    98  	}
    99  
   100  	if localVarHttpResponse.StatusCode >= 300 {
   101  		newErr := GenericOpenAPIError{
   102  			body:  localVarBody,
   103  			error: localVarHttpResponse.Status,
   104  		}
   105  		if localVarHttpResponse.StatusCode == 200 {
   106  			var v GetAllCommunitiesResponse
   107  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   108  			if err != nil {
   109  				newErr.error = err.Error()
   110  				return localVarReturnValue, localVarHttpResponse, newErr
   111  			}
   112  			newErr.model = v
   113  			return localVarReturnValue, localVarHttpResponse, newErr
   114  		}
   115  		return localVarReturnValue, localVarHttpResponse, newErr
   116  	}
   117  
   118  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   119  	if err != nil {
   120  		newErr := GenericOpenAPIError{
   121  			body:  localVarBody,
   122  			error: err.Error(),
   123  		}
   124  		return localVarReturnValue, localVarHttpResponse, newErr
   125  	}
   126  
   127  	return localVarReturnValue, localVarHttpResponse, nil
   128  }
   129  
   130  /*
   131  CommunitiesApiService Getting a community from its id
   132  This method renders a community from given id.
   133   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   134   * @param communityId
   135  @return Community
   136  */
   137  func (a *CommunitiesApiService) GetCommunity(ctx context.Context, communityId string) (Community, *http.Response, error) {
   138  	var (
   139  		localVarHttpMethod   = http.MethodGet
   140  		localVarPostBody     interface{}
   141  		localVarFormFileName string
   142  		localVarFileName     string
   143  		localVarFileBytes    []byte
   144  		localVarReturnValue  Community
   145  	)
   146  
   147  	// create path and map variables
   148  	localVarPath := a.client.cfg.BasePath + "/communities/{communityId}"
   149  	localVarPath = strings.Replace(localVarPath, "{"+"communityId"+"}", fmt.Sprintf("%v", communityId), -1)
   150  
   151  	localVarHeaderParams := make(map[string]string)
   152  	localVarQueryParams := url.Values{}
   153  	localVarFormParams := url.Values{}
   154  
   155  	// to determine the Content-Type header
   156  	localVarHttpContentTypes := []string{}
   157  
   158  	// set Content-Type header
   159  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   160  	if localVarHttpContentType != "" {
   161  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   162  	}
   163  
   164  	// to determine the Accept header
   165  	localVarHttpHeaderAccepts := []string{"application/json"}
   166  
   167  	// set Accept header
   168  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   169  	if localVarHttpHeaderAccept != "" {
   170  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   171  	}
   172  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   173  	if err != nil {
   174  		return localVarReturnValue, nil, err
   175  	}
   176  
   177  	localVarHttpResponse, err := a.client.callAPI(r)
   178  	if err != nil || localVarHttpResponse == nil {
   179  		return localVarReturnValue, localVarHttpResponse, err
   180  	}
   181  
   182  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   183  	localVarHttpResponse.Body.Close()
   184  	if err != nil {
   185  		return localVarReturnValue, localVarHttpResponse, err
   186  	}
   187  
   188  	if localVarHttpResponse.StatusCode >= 300 {
   189  		newErr := GenericOpenAPIError{
   190  			body:  localVarBody,
   191  			error: localVarHttpResponse.Status,
   192  		}
   193  		if localVarHttpResponse.StatusCode == 200 {
   194  			var v Community
   195  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   196  			if err != nil {
   197  				newErr.error = err.Error()
   198  				return localVarReturnValue, localVarHttpResponse, newErr
   199  			}
   200  			newErr.model = v
   201  			return localVarReturnValue, localVarHttpResponse, newErr
   202  		}
   203  		return localVarReturnValue, localVarHttpResponse, newErr
   204  	}
   205  
   206  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   207  	if err != nil {
   208  		newErr := GenericOpenAPIError{
   209  			body:  localVarBody,
   210  			error: err.Error(),
   211  		}
   212  		return localVarReturnValue, localVarHttpResponse, newErr
   213  	}
   214  
   215  	return localVarReturnValue, localVarHttpResponse, nil
   216  }