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