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