github.com/grokify/go-ringcentral-client@v0.3.31/engagedigital/v1/client/api_contents.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 ContentsApiService service
    29  
    30  /*
    31  ContentsApiService Categorizing a content
    32  This method updates the categories of a content. If token’s user does not have “read” on this content’s source a 404 HTTP response will be returned.  Authorization​: no.
    33   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    34   * @param contentId
    35   * @param categoryIds An array containing the new categories to set on the content.
    36  @return Content
    37  */
    38  func (a *ContentsApiService) CategorizeContent(ctx context.Context, contentId string, categoryIds []string) (Content, *http.Response, error) {
    39  	var (
    40  		localVarHttpMethod   = http.MethodPut
    41  		localVarPostBody     interface{}
    42  		localVarFormFileName string
    43  		localVarFileName     string
    44  		localVarFileBytes    []byte
    45  		localVarReturnValue  Content
    46  	)
    47  
    48  	// create path and map variables
    49  	localVarPath := a.client.cfg.BasePath + "/contents/{contentId}/update_categories"
    50  	localVarPath = strings.Replace(localVarPath, "{"+"contentId"+"}", fmt.Sprintf("%v", contentId), -1)
    51  
    52  	localVarHeaderParams := make(map[string]string)
    53  	localVarQueryParams := url.Values{}
    54  	localVarFormParams := url.Values{}
    55  
    56  	t := categoryIds
    57  	if reflect.TypeOf(t).Kind() == reflect.Slice {
    58  		s := reflect.ValueOf(t)
    59  		for i := 0; i < s.Len(); i++ {
    60  			localVarQueryParams.Add("category_ids[]", parameterToString(s.Index(i), "multi"))
    61  		}
    62  	} else {
    63  		localVarQueryParams.Add("category_ids[]", parameterToString(t, "multi"))
    64  	}
    65  	// to determine the Content-Type header
    66  	localVarHttpContentTypes := []string{}
    67  
    68  	// set Content-Type header
    69  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    70  	if localVarHttpContentType != "" {
    71  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    72  	}
    73  
    74  	// to determine the Accept header
    75  	localVarHttpHeaderAccepts := []string{"application/json"}
    76  
    77  	// set Accept header
    78  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    79  	if localVarHttpHeaderAccept != "" {
    80  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    81  	}
    82  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
    83  	if err != nil {
    84  		return localVarReturnValue, nil, err
    85  	}
    86  
    87  	localVarHttpResponse, err := a.client.callAPI(r)
    88  	if err != nil || localVarHttpResponse == nil {
    89  		return localVarReturnValue, localVarHttpResponse, err
    90  	}
    91  
    92  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    93  	localVarHttpResponse.Body.Close()
    94  	if err != nil {
    95  		return localVarReturnValue, localVarHttpResponse, err
    96  	}
    97  
    98  	if localVarHttpResponse.StatusCode >= 300 {
    99  		newErr := GenericOpenAPIError{
   100  			body:  localVarBody,
   101  			error: localVarHttpResponse.Status,
   102  		}
   103  		if localVarHttpResponse.StatusCode == 200 {
   104  			var v Content
   105  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   106  			if err != nil {
   107  				newErr.error = err.Error()
   108  				return localVarReturnValue, localVarHttpResponse, newErr
   109  			}
   110  			newErr.model = v
   111  			return localVarReturnValue, localVarHttpResponse, newErr
   112  		}
   113  		return localVarReturnValue, localVarHttpResponse, newErr
   114  	}
   115  
   116  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   117  	if err != nil {
   118  		newErr := GenericOpenAPIError{
   119  			body:  localVarBody,
   120  			error: err.Error(),
   121  		}
   122  		return localVarReturnValue, localVarHttpResponse, newErr
   123  	}
   124  
   125  	return localVarReturnValue, localVarHttpResponse, nil
   126  }
   127  
   128  /*
   129  ContentsApiService Creating a content
   130  This method allows you to create an new content. It can be a reply to another content or a content that initiate discussion. It use token’s user as content user if he is authorized. Content will be created in Dimelo Digital and pushed asynchronously to the source.  Replying to a customer content is usually possible (unless the source/conversation is read only).  Composing a content on the contrary depend on the source itself: * The source may not support it (and be purely reactive like Instagram, Messenger ...) * Some sources (usually public account) like Twitter or Facebook page allows to publish content without targeting specific individuals. * Some sources (usually non public media) require specific targeting (phone number for SMS, email address for email, customer_id ...) to be able to create a content. This is source specific and detailed under the generic parameters.  Authorization​: only users that can reply or initiate discussion (&#x3D; compose) on given source. it renders also an error if in_reply_to isn’t synchronized or if in_reply_to content is not under an ​open intervention.
   131   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   132   * @param body The content’s body. This parameter is mandatory.
   133   * @param optional nil or *CreateContentOpts - Optional Parameters:
   134   * @param "AuthorId" (optional.String) -  The identity id of content. This parameter is not mandatory, by default it use the token’s user first identity on source.
   135   * @param "InReplyToId" (optional.String) -  The content’s id you want to reply to. If omitted, a new discussion will be created. If source does not support to initiate discussion this parameter is mandatory.
   136   * @param "Private" (optional.Int32) -  Created contents are public by default, set this parameter to \"1\" in order to create a private reply. It is NOT supported on every source.
   137   * @param "SourceId" (optional.String) -  The source to create content to. If you specify `in_reply_to_id` parameter, source will be determined from it. Otherwise, this parameter is mandatory.
   138   * @param "AttachmentIds" (optional.Interface of []string) -  An array containing the attachments’ ids that need to be attached to this content.
   139   * @param "Title" (optional.String) -  For an email source. The subject of the email. This parameter is mandatory when initiating a discussion.
   140   * @param "To" (optional.Interface of []string) -  For an email or SMS source. For an email, an array containing the email addresses used in the “To” section of the email. This parameter is mandatory when initiating a discussion. For a SMS, the number the SMS will be sent to. It must start with 00 or +, example: +33634231224 or 0033634231224. This parameter is mandatory when initiating a discussion.
   141   * @param "Cc" (optional.Interface of []string) -  For an email source. An array containing the email addresses used in the “Cc” section of the email.
   142   * @param "Bcc" (optional.Interface of []string) -  For an email source. An array containing the email addresses used in the “Bcc” section of the email.
   143  @return Content
   144  */
   145  
   146  type CreateContentOpts struct {
   147  	AuthorId      optional.String
   148  	InReplyToId   optional.String
   149  	Private       optional.Int32
   150  	SourceId      optional.String
   151  	AttachmentIds optional.Interface
   152  	Title         optional.String
   153  	To            optional.Interface
   154  	Cc            optional.Interface
   155  	Bcc           optional.Interface
   156  }
   157  
   158  func (a *ContentsApiService) CreateContent(ctx context.Context, body string, localVarOptionals *CreateContentOpts) (Content, *http.Response, error) {
   159  	var (
   160  		localVarHttpMethod   = http.MethodPost
   161  		localVarPostBody     interface{}
   162  		localVarFormFileName string
   163  		localVarFileName     string
   164  		localVarFileBytes    []byte
   165  		localVarReturnValue  Content
   166  	)
   167  
   168  	// create path and map variables
   169  	localVarPath := a.client.cfg.BasePath + "/contents"
   170  
   171  	localVarHeaderParams := make(map[string]string)
   172  	localVarQueryParams := url.Values{}
   173  	localVarFormParams := url.Values{}
   174  
   175  	if localVarOptionals != nil && localVarOptionals.AuthorId.IsSet() {
   176  		localVarQueryParams.Add("author_id", parameterToString(localVarOptionals.AuthorId.Value(), ""))
   177  	}
   178  	localVarQueryParams.Add("body", parameterToString(body, ""))
   179  	if localVarOptionals != nil && localVarOptionals.InReplyToId.IsSet() {
   180  		localVarQueryParams.Add("in_reply_to_id", parameterToString(localVarOptionals.InReplyToId.Value(), ""))
   181  	}
   182  	if localVarOptionals != nil && localVarOptionals.Private.IsSet() {
   183  		localVarQueryParams.Add("private", parameterToString(localVarOptionals.Private.Value(), ""))
   184  	}
   185  	if localVarOptionals != nil && localVarOptionals.SourceId.IsSet() {
   186  		localVarQueryParams.Add("source_id", parameterToString(localVarOptionals.SourceId.Value(), ""))
   187  	}
   188  	if localVarOptionals != nil && localVarOptionals.AttachmentIds.IsSet() {
   189  		t := localVarOptionals.AttachmentIds.Value()
   190  		if reflect.TypeOf(t).Kind() == reflect.Slice {
   191  			s := reflect.ValueOf(t)
   192  			for i := 0; i < s.Len(); i++ {
   193  				localVarQueryParams.Add("attachment_ids[]", parameterToString(s.Index(i), "multi"))
   194  			}
   195  		} else {
   196  			localVarQueryParams.Add("attachment_ids[]", parameterToString(t, "multi"))
   197  		}
   198  	}
   199  	if localVarOptionals != nil && localVarOptionals.Title.IsSet() {
   200  		localVarQueryParams.Add("title", parameterToString(localVarOptionals.Title.Value(), ""))
   201  	}
   202  	if localVarOptionals != nil && localVarOptionals.To.IsSet() {
   203  		t := localVarOptionals.To.Value()
   204  		if reflect.TypeOf(t).Kind() == reflect.Slice {
   205  			s := reflect.ValueOf(t)
   206  			for i := 0; i < s.Len(); i++ {
   207  				localVarQueryParams.Add("to[]", parameterToString(s.Index(i), "multi"))
   208  			}
   209  		} else {
   210  			localVarQueryParams.Add("to[]", parameterToString(t, "multi"))
   211  		}
   212  	}
   213  	if localVarOptionals != nil && localVarOptionals.Cc.IsSet() {
   214  		t := localVarOptionals.Cc.Value()
   215  		if reflect.TypeOf(t).Kind() == reflect.Slice {
   216  			s := reflect.ValueOf(t)
   217  			for i := 0; i < s.Len(); i++ {
   218  				localVarQueryParams.Add("cc[]", parameterToString(s.Index(i), "multi"))
   219  			}
   220  		} else {
   221  			localVarQueryParams.Add("cc[]", parameterToString(t, "multi"))
   222  		}
   223  	}
   224  	if localVarOptionals != nil && localVarOptionals.Bcc.IsSet() {
   225  		t := localVarOptionals.Bcc.Value()
   226  		if reflect.TypeOf(t).Kind() == reflect.Slice {
   227  			s := reflect.ValueOf(t)
   228  			for i := 0; i < s.Len(); i++ {
   229  				localVarQueryParams.Add("bcc[]", parameterToString(s.Index(i), "multi"))
   230  			}
   231  		} else {
   232  			localVarQueryParams.Add("bcc[]", parameterToString(t, "multi"))
   233  		}
   234  	}
   235  	// to determine the Content-Type header
   236  	localVarHttpContentTypes := []string{}
   237  
   238  	// set Content-Type header
   239  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   240  	if localVarHttpContentType != "" {
   241  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   242  	}
   243  
   244  	// to determine the Accept header
   245  	localVarHttpHeaderAccepts := []string{"application/json"}
   246  
   247  	// set Accept header
   248  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   249  	if localVarHttpHeaderAccept != "" {
   250  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   251  	}
   252  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   253  	if err != nil {
   254  		return localVarReturnValue, nil, err
   255  	}
   256  
   257  	localVarHttpResponse, err := a.client.callAPI(r)
   258  	if err != nil || localVarHttpResponse == nil {
   259  		return localVarReturnValue, localVarHttpResponse, err
   260  	}
   261  
   262  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   263  	localVarHttpResponse.Body.Close()
   264  	if err != nil {
   265  		return localVarReturnValue, localVarHttpResponse, err
   266  	}
   267  
   268  	if localVarHttpResponse.StatusCode >= 300 {
   269  		newErr := GenericOpenAPIError{
   270  			body:  localVarBody,
   271  			error: localVarHttpResponse.Status,
   272  		}
   273  		if localVarHttpResponse.StatusCode == 200 {
   274  			var v Content
   275  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   276  			if err != nil {
   277  				newErr.error = err.Error()
   278  				return localVarReturnValue, localVarHttpResponse, newErr
   279  			}
   280  			newErr.model = v
   281  			return localVarReturnValue, localVarHttpResponse, newErr
   282  		}
   283  		return localVarReturnValue, localVarHttpResponse, newErr
   284  	}
   285  
   286  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   287  	if err != nil {
   288  		newErr := GenericOpenAPIError{
   289  			body:  localVarBody,
   290  			error: err.Error(),
   291  		}
   292  		return localVarReturnValue, localVarHttpResponse, newErr
   293  	}
   294  
   295  	return localVarReturnValue, localVarHttpResponse, nil
   296  }
   297  
   298  /*
   299  ContentsApiService Contents
   300  This method renders contents ordered by creation date (descending). Only contents in sources where token’s user has “read” permission are returned.  Authorization​: no.
   301   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   302   * @param optional nil or *GetAllContentsOpts - Optional Parameters:
   303   * @param "Q" (optional.String) -  To filter contents on given query. Query works exactly like threads query but only have those keywords: intervention,identity, identity_group, source, status_in, thread or text. Order can be created_at.desc (default) or created_at.asc. e.g. q=intervention:\"7f946431b6eebffafae642cc\"%20source:\"d19c81948c137d86dac77216\" Please refer to ​Search & filtering parameters​ for more details.
   304   * @param "Offset" (optional.Int32) -  The record index to start. Default value is 0.
   305   * @param "Limit" (optional.Int32) -  The max number of records to return. Default value is 30, max value is 150.
   306  @return GetAllContentsResponse
   307  */
   308  
   309  type GetAllContentsOpts struct {
   310  	Q      optional.String
   311  	Offset optional.Int32
   312  	Limit  optional.Int32
   313  }
   314  
   315  func (a *ContentsApiService) GetAllContents(ctx context.Context, localVarOptionals *GetAllContentsOpts) (GetAllContentsResponse, *http.Response, error) {
   316  	var (
   317  		localVarHttpMethod   = http.MethodGet
   318  		localVarPostBody     interface{}
   319  		localVarFormFileName string
   320  		localVarFileName     string
   321  		localVarFileBytes    []byte
   322  		localVarReturnValue  GetAllContentsResponse
   323  	)
   324  
   325  	// create path and map variables
   326  	localVarPath := a.client.cfg.BasePath + "/contents"
   327  
   328  	localVarHeaderParams := make(map[string]string)
   329  	localVarQueryParams := url.Values{}
   330  	localVarFormParams := url.Values{}
   331  
   332  	if localVarOptionals != nil && localVarOptionals.Q.IsSet() {
   333  		localVarQueryParams.Add("q", parameterToString(localVarOptionals.Q.Value(), ""))
   334  	}
   335  	if localVarOptionals != nil && localVarOptionals.Offset.IsSet() {
   336  		localVarQueryParams.Add("offset", parameterToString(localVarOptionals.Offset.Value(), ""))
   337  	}
   338  	if localVarOptionals != nil && localVarOptionals.Limit.IsSet() {
   339  		localVarQueryParams.Add("limit", parameterToString(localVarOptionals.Limit.Value(), ""))
   340  	}
   341  	// to determine the Content-Type header
   342  	localVarHttpContentTypes := []string{}
   343  
   344  	// set Content-Type header
   345  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   346  	if localVarHttpContentType != "" {
   347  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   348  	}
   349  
   350  	// to determine the Accept header
   351  	localVarHttpHeaderAccepts := []string{"application/json"}
   352  
   353  	// set Accept header
   354  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   355  	if localVarHttpHeaderAccept != "" {
   356  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   357  	}
   358  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   359  	if err != nil {
   360  		return localVarReturnValue, nil, err
   361  	}
   362  
   363  	localVarHttpResponse, err := a.client.callAPI(r)
   364  	if err != nil || localVarHttpResponse == nil {
   365  		return localVarReturnValue, localVarHttpResponse, err
   366  	}
   367  
   368  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   369  	localVarHttpResponse.Body.Close()
   370  	if err != nil {
   371  		return localVarReturnValue, localVarHttpResponse, err
   372  	}
   373  
   374  	if localVarHttpResponse.StatusCode >= 300 {
   375  		newErr := GenericOpenAPIError{
   376  			body:  localVarBody,
   377  			error: localVarHttpResponse.Status,
   378  		}
   379  		if localVarHttpResponse.StatusCode == 200 {
   380  			var v GetAllContentsResponse
   381  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   382  			if err != nil {
   383  				newErr.error = err.Error()
   384  				return localVarReturnValue, localVarHttpResponse, newErr
   385  			}
   386  			newErr.model = v
   387  			return localVarReturnValue, localVarHttpResponse, newErr
   388  		}
   389  		return localVarReturnValue, localVarHttpResponse, newErr
   390  	}
   391  
   392  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   393  	if err != nil {
   394  		newErr := GenericOpenAPIError{
   395  			body:  localVarBody,
   396  			error: err.Error(),
   397  		}
   398  		return localVarReturnValue, localVarHttpResponse, newErr
   399  	}
   400  
   401  	return localVarReturnValue, localVarHttpResponse, nil
   402  }
   403  
   404  /*
   405  ContentsApiService Getting a content from its id
   406  This method renders a content from given id. If token’s user does not have “read” on content’s source a 404 HTTP response will be returned.  Authorization​: no.
   407   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   408   * @param contentId
   409  @return Content
   410  */
   411  func (a *ContentsApiService) GetContent(ctx context.Context, contentId string) (Content, *http.Response, error) {
   412  	var (
   413  		localVarHttpMethod   = http.MethodGet
   414  		localVarPostBody     interface{}
   415  		localVarFormFileName string
   416  		localVarFileName     string
   417  		localVarFileBytes    []byte
   418  		localVarReturnValue  Content
   419  	)
   420  
   421  	// create path and map variables
   422  	localVarPath := a.client.cfg.BasePath + "/contents/{contentId}"
   423  	localVarPath = strings.Replace(localVarPath, "{"+"contentId"+"}", fmt.Sprintf("%v", contentId), -1)
   424  
   425  	localVarHeaderParams := make(map[string]string)
   426  	localVarQueryParams := url.Values{}
   427  	localVarFormParams := url.Values{}
   428  
   429  	// to determine the Content-Type header
   430  	localVarHttpContentTypes := []string{}
   431  
   432  	// set Content-Type header
   433  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   434  	if localVarHttpContentType != "" {
   435  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   436  	}
   437  
   438  	// to determine the Accept header
   439  	localVarHttpHeaderAccepts := []string{"application/json"}
   440  
   441  	// set Accept header
   442  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   443  	if localVarHttpHeaderAccept != "" {
   444  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   445  	}
   446  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   447  	if err != nil {
   448  		return localVarReturnValue, nil, err
   449  	}
   450  
   451  	localVarHttpResponse, err := a.client.callAPI(r)
   452  	if err != nil || localVarHttpResponse == nil {
   453  		return localVarReturnValue, localVarHttpResponse, err
   454  	}
   455  
   456  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   457  	localVarHttpResponse.Body.Close()
   458  	if err != nil {
   459  		return localVarReturnValue, localVarHttpResponse, err
   460  	}
   461  
   462  	if localVarHttpResponse.StatusCode >= 300 {
   463  		newErr := GenericOpenAPIError{
   464  			body:  localVarBody,
   465  			error: localVarHttpResponse.Status,
   466  		}
   467  		if localVarHttpResponse.StatusCode == 200 {
   468  			var v Content
   469  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   470  			if err != nil {
   471  				newErr.error = err.Error()
   472  				return localVarReturnValue, localVarHttpResponse, newErr
   473  			}
   474  			newErr.model = v
   475  			return localVarReturnValue, localVarHttpResponse, newErr
   476  		}
   477  		return localVarReturnValue, localVarHttpResponse, newErr
   478  	}
   479  
   480  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   481  	if err != nil {
   482  		newErr := GenericOpenAPIError{
   483  			body:  localVarBody,
   484  			error: err.Error(),
   485  		}
   486  		return localVarReturnValue, localVarHttpResponse, newErr
   487  	}
   488  
   489  	return localVarReturnValue, localVarHttpResponse, nil
   490  }
   491  
   492  /*
   493  ContentsApiService Ignoring a content
   494  Ignores a content. If token’s user does not have “read” on content’s source a 404 HTTP response will be returned.  Authorization​: no.
   495   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
   496   * @param contentId
   497  @return Content
   498  */
   499  func (a *ContentsApiService) IgnoreContent(ctx context.Context, contentId string) (Content, *http.Response, error) {
   500  	var (
   501  		localVarHttpMethod   = http.MethodPut
   502  		localVarPostBody     interface{}
   503  		localVarFormFileName string
   504  		localVarFileName     string
   505  		localVarFileBytes    []byte
   506  		localVarReturnValue  Content
   507  	)
   508  
   509  	// create path and map variables
   510  	localVarPath := a.client.cfg.BasePath + "/contents/{contentId}/ignore"
   511  	localVarPath = strings.Replace(localVarPath, "{"+"contentId"+"}", fmt.Sprintf("%v", contentId), -1)
   512  
   513  	localVarHeaderParams := make(map[string]string)
   514  	localVarQueryParams := url.Values{}
   515  	localVarFormParams := url.Values{}
   516  
   517  	// to determine the Content-Type header
   518  	localVarHttpContentTypes := []string{}
   519  
   520  	// set Content-Type header
   521  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   522  	if localVarHttpContentType != "" {
   523  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   524  	}
   525  
   526  	// to determine the Accept header
   527  	localVarHttpHeaderAccepts := []string{"application/json"}
   528  
   529  	// set Accept header
   530  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   531  	if localVarHttpHeaderAccept != "" {
   532  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   533  	}
   534  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes)
   535  	if err != nil {
   536  		return localVarReturnValue, nil, err
   537  	}
   538  
   539  	localVarHttpResponse, err := a.client.callAPI(r)
   540  	if err != nil || localVarHttpResponse == nil {
   541  		return localVarReturnValue, localVarHttpResponse, err
   542  	}
   543  
   544  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
   545  	localVarHttpResponse.Body.Close()
   546  	if err != nil {
   547  		return localVarReturnValue, localVarHttpResponse, err
   548  	}
   549  
   550  	if localVarHttpResponse.StatusCode >= 300 {
   551  		newErr := GenericOpenAPIError{
   552  			body:  localVarBody,
   553  			error: localVarHttpResponse.Status,
   554  		}
   555  		if localVarHttpResponse.StatusCode == 200 {
   556  			var v Content
   557  			err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   558  			if err != nil {
   559  				newErr.error = err.Error()
   560  				return localVarReturnValue, localVarHttpResponse, newErr
   561  			}
   562  			newErr.model = v
   563  			return localVarReturnValue, localVarHttpResponse, newErr
   564  		}
   565  		return localVarReturnValue, localVarHttpResponse, newErr
   566  	}
   567  
   568  	err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type"))
   569  	if err != nil {
   570  		newErr := GenericOpenAPIError{
   571  			body:  localVarBody,
   572  			error: err.Error(),
   573  		}
   574  		return localVarReturnValue, localVarHttpResponse, newErr
   575  	}
   576  
   577  	return localVarReturnValue, localVarHttpResponse, nil
   578  }