github.com/grokify/go-ringcentral-client@v0.3.31/engagedigital/v1/client/api_identities.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 IdentitiesApiService service
    28  
    29  /*
    30  IdentitiesApiService Getting all identities
    31  This method renders identities ordered by creation date (descending). Only identities in sources where token’s user has “read” permission are returned.
    32   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    33   * @param optional nil or *GetAllIdentitiesOpts - Optional Parameters:
    34   * @param "CommunityId" (optional.String) -  To filter identities on given community id.
    35   * @param "IdentityGroupId" (optional.String) -  To filter on given group id.
    36   * @param "UserId" (optional.String) -  To filter identities on given user id.
    37   * @param "Sort" (optional.String) -  To change the criteria chosen to sort the identities. The value can be “created_at” or
    38   * @param "ForeignId" (optional.String) -  To filter identities on given user id
    39   * @param "Uuid" (optional.String) -  To filter identities on given uuid
    40   * @param "Offset" (optional.Int32) -  The record index to start. Default value is 0.
    41   * @param "Limit" (optional.Int32) -  The max number of records to return. Default value is 30, max value is 150.
    42  @return GetAllIdentitiesResponse
    43  */
    44  
    45  type GetAllIdentitiesOpts struct {
    46  	CommunityId     optional.String
    47  	IdentityGroupId optional.String
    48  	UserId          optional.String
    49  	Sort            optional.String
    50  	ForeignId       optional.String
    51  	Uuid            optional.String
    52  	Offset          optional.Int32
    53  	Limit           optional.Int32
    54  }
    55  
    56  func (a *IdentitiesApiService) GetAllIdentities(ctx context.Context, localVarOptionals *GetAllIdentitiesOpts) (GetAllIdentitiesResponse, *http.Response, error) {
    57  	var (
    58  		localVarHttpMethod   = http.MethodGet
    59  		localVarPostBody     interface{}
    60  		localVarFormFileName string
    61  		localVarFileName     string
    62  		localVarFileBytes    []byte
    63  		localVarReturnValue  GetAllIdentitiesResponse
    64  	)
    65  
    66  	// create path and map variables
    67  	localVarPath := a.client.cfg.BasePath + "/identities"
    68  
    69  	localVarHeaderParams := make(map[string]string)
    70  	localVarQueryParams := url.Values{}
    71  	localVarFormParams := url.Values{}
    72  
    73  	if localVarOptionals != nil && localVarOptionals.CommunityId.IsSet() {
    74  		localVarQueryParams.Add("community_id", parameterToString(localVarOptionals.CommunityId.Value(), ""))
    75  	}
    76  	if localVarOptionals != nil && localVarOptionals.IdentityGroupId.IsSet() {
    77  		localVarQueryParams.Add("identity_group_id", parameterToString(localVarOptionals.IdentityGroupId.Value(), ""))
    78  	}
    79  	if localVarOptionals != nil && localVarOptionals.UserId.IsSet() {
    80  		localVarQueryParams.Add("user_id", parameterToString(localVarOptionals.UserId.Value(), ""))
    81  	}
    82  	if localVarOptionals != nil && localVarOptionals.Sort.IsSet() {
    83  		localVarQueryParams.Add("sort", parameterToString(localVarOptionals.Sort.Value(), ""))
    84  	}
    85  	if localVarOptionals != nil && localVarOptionals.ForeignId.IsSet() {
    86  		localVarQueryParams.Add("foreign_id", parameterToString(localVarOptionals.ForeignId.Value(), ""))
    87  	}
    88  	if localVarOptionals != nil && localVarOptionals.Uuid.IsSet() {
    89  		localVarQueryParams.Add("uuid", parameterToString(localVarOptionals.Uuid.Value(), ""))
    90  	}
    91  	if localVarOptionals != nil && localVarOptionals.Offset.IsSet() {
    92  		localVarQueryParams.Add("offset", parameterToString(localVarOptionals.Offset.Value(), ""))
    93  	}
    94  	if localVarOptionals != nil && localVarOptionals.Limit.IsSet() {
    95  		localVarQueryParams.Add("limit", parameterToString(localVarOptionals.Limit.Value(), ""))
    96  	}
    97  	// to determine the Content-Type header
    98  	localVarHttpContentTypes := []string{}
    99  
   100  	// set Content-Type header
   101  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   102  	if localVarHttpContentType != "" {
   103  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   104  	}
   105  
   106  	// to determine the Accept header
   107  	localVarHttpHeaderAccepts := []string{"application/json"}
   108  
   109  	// set Accept header
   110  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   111  	if localVarHttpHeaderAccept != "" {
   112  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   113  	}
   114  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   115  	if err != nil {
   116  		return localVarReturnValue, nil, err
   117  	}
   118  
   119  	localVarHttpResponse, err := a.client.callAPI(r)
   120  	if err != nil || localVarHttpResponse == nil {
   121  		return localVarReturnValue, localVarHttpResponse, err
   122  	}
   123  
   124  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   125  	localVarHttpResponse.Body.Close()
   126  	if err != nil {
   127  		return localVarReturnValue, localVarHttpResponse, err
   128  	}
   129  
   130  	if localVarHttpResponse.StatusCode >= 300 {
   131  		newErr := GenericOpenAPIError{
   132  			body:  localVarBody,
   133  			error: localVarHttpResponse.Status,
   134  		}
   135  		if localVarHttpResponse.StatusCode == 200 {
   136  			var v GetAllIdentitiesResponse
   137  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   138  			if err != nil {
   139  				newErr.error = err.Error()
   140  				return localVarReturnValue, localVarHttpResponse, newErr
   141  			}
   142  			newErr.model = v
   143  			return localVarReturnValue, localVarHttpResponse, newErr
   144  		}
   145  		return localVarReturnValue, localVarHttpResponse, newErr
   146  	}
   147  
   148  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   149  	if err != nil {
   150  		newErr := GenericOpenAPIError{
   151  			body:  localVarBody,
   152  			error: err.Error(),
   153  		}
   154  		return localVarReturnValue, localVarHttpResponse, newErr
   155  	}
   156  
   157  	return localVarReturnValue, localVarHttpResponse, nil
   158  }
   159  
   160  /*
   161  IdentitiesApiService Getting an identity from its id
   162  This method renders an identity from given id. If token’s user does not have “read” on identity’s source community a 404 HTTP response will be returned.
   163   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   164   * @param identityId
   165  @return Identity
   166  */
   167  func (a *IdentitiesApiService) GetIdentity(ctx context.Context, identityId string) (Identity, *http.Response, error) {
   168  	var (
   169  		localVarHttpMethod   = http.MethodGet
   170  		localVarPostBody     interface{}
   171  		localVarFormFileName string
   172  		localVarFileName     string
   173  		localVarFileBytes    []byte
   174  		localVarReturnValue  Identity
   175  	)
   176  
   177  	// create path and map variables
   178  	localVarPath := a.client.cfg.BasePath + "/identities/{identityId}"
   179  	localVarPath = strings.Replace(localVarPath, "{"+"identityId"+"}", fmt.Sprintf("%v", identityId), -1)
   180  
   181  	localVarHeaderParams := make(map[string]string)
   182  	localVarQueryParams := url.Values{}
   183  	localVarFormParams := url.Values{}
   184  
   185  	// to determine the Content-Type header
   186  	localVarHttpContentTypes := []string{}
   187  
   188  	// set Content-Type header
   189  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   190  	if localVarHttpContentType != "" {
   191  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   192  	}
   193  
   194  	// to determine the Accept header
   195  	localVarHttpHeaderAccepts := []string{"application/json"}
   196  
   197  	// set Accept header
   198  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   199  	if localVarHttpHeaderAccept != "" {
   200  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   201  	}
   202  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   203  	if err != nil {
   204  		return localVarReturnValue, nil, err
   205  	}
   206  
   207  	localVarHttpResponse, err := a.client.callAPI(r)
   208  	if err != nil || localVarHttpResponse == nil {
   209  		return localVarReturnValue, localVarHttpResponse, err
   210  	}
   211  
   212  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   213  	localVarHttpResponse.Body.Close()
   214  	if err != nil {
   215  		return localVarReturnValue, localVarHttpResponse, err
   216  	}
   217  
   218  	if localVarHttpResponse.StatusCode >= 300 {
   219  		newErr := GenericOpenAPIError{
   220  			body:  localVarBody,
   221  			error: localVarHttpResponse.Status,
   222  		}
   223  		if localVarHttpResponse.StatusCode == 200 {
   224  			var v Identity
   225  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   226  			if err != nil {
   227  				newErr.error = err.Error()
   228  				return localVarReturnValue, localVarHttpResponse, newErr
   229  			}
   230  			newErr.model = v
   231  			return localVarReturnValue, localVarHttpResponse, newErr
   232  		}
   233  		return localVarReturnValue, localVarHttpResponse, newErr
   234  	}
   235  
   236  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   237  	if err != nil {
   238  		newErr := GenericOpenAPIError{
   239  			body:  localVarBody,
   240  			error: err.Error(),
   241  		}
   242  		return localVarReturnValue, localVarHttpResponse, newErr
   243  	}
   244  
   245  	return localVarReturnValue, localVarHttpResponse, nil
   246  }