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