class Hubspot::CommunicationPreferences::StatusApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default) click to toggle source
# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 20
def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Public Instance Methods

get_email_status(email_address, opts = {}) click to toggle source

Get subscription statuses for a contact Returns a list of subscriptions and their status for a given contact. @param email_address [String] @param [Hash] opts the optional parameters @return [PublicSubscriptionStatusesResponse]

# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 28
def get_email_status(email_address, opts = {})
  data, _status_code, _headers = get_email_status_with_http_info(email_address, opts)
  data
end
get_email_status_with_http_info(email_address, opts = {}) click to toggle source

Get subscription statuses for a contact Returns a list of subscriptions and their status for a given contact. @param email_address [String] @param [Hash] opts the optional parameters @return [Array<(PublicSubscriptionStatusesResponse, Integer, Hash)>] PublicSubscriptionStatusesResponse data, response status code and response headers

# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 38
def get_email_status_with_http_info(email_address, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: StatusApi.get_email_status ...'
  end
  # verify the required parameter 'email_address' is set
  if @api_client.config.client_side_validation && email_address.nil?
    fail ArgumentError, "Missing the required parameter 'email_address' when calling StatusApi.get_email_status"
  end
  # resource path
  local_var_path = '/communication-preferences/v3/status/email/{emailAddress}'.sub('{' + 'emailAddress' + '}', CGI.escape(email_address.to_s))

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json', '*/*'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:body] 

  # return_type
  return_type = opts[:return_type] || 'PublicSubscriptionStatusesResponse' 

  # auth_names
  auth_names = opts[:auth_names] || ['hapikey']

  new_options = opts.merge(
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: StatusApi#get_email_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
subscribe(public_update_subscription_status_request, opts = {}) click to toggle source

Subscribe a contact Subscribes a contact to the given subscription type. This API is not valid to use for subscribing a contact at a brand or portal level and will return an error. @param public_update_subscription_status_request [PublicUpdateSubscriptionStatusRequest] @param [Hash] opts the optional parameters @return [PublicSubscriptionStatus]

# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 90
def subscribe(public_update_subscription_status_request, opts = {})
  data, _status_code, _headers = subscribe_with_http_info(public_update_subscription_status_request, opts)
  data
end
subscribe_with_http_info(public_update_subscription_status_request, opts = {}) click to toggle source

Subscribe a contact Subscribes a contact to the given subscription type. This API is not valid to use for subscribing a contact at a brand or portal level and will return an error. @param public_update_subscription_status_request [PublicUpdateSubscriptionStatusRequest] @param [Hash] opts the optional parameters @return [Array<(PublicSubscriptionStatus, Integer, Hash)>] PublicSubscriptionStatus data, response status code and response headers

# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 100
def subscribe_with_http_info(public_update_subscription_status_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: StatusApi.subscribe ...'
  end
  # verify the required parameter 'public_update_subscription_status_request' is set
  if @api_client.config.client_side_validation && public_update_subscription_status_request.nil?
    fail ArgumentError, "Missing the required parameter 'public_update_subscription_status_request' when calling StatusApi.subscribe"
  end
  # resource path
  local_var_path = '/communication-preferences/v3/subscribe'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json', '*/*'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:body] || @api_client.object_to_http_body(public_update_subscription_status_request) 

  # return_type
  return_type = opts[:return_type] || 'PublicSubscriptionStatus' 

  # auth_names
  auth_names = opts[:auth_names] || ['hapikey']

  new_options = opts.merge(
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: StatusApi#subscribe\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
unsubscribe(public_update_subscription_status_request, opts = {}) click to toggle source

Unsubscribe a contact Unsubscribes a contact from the given subscription type. This API is not valid to use for unsubscribing a contact at a brand or portal level and will return an error. @param public_update_subscription_status_request [PublicUpdateSubscriptionStatusRequest] @param [Hash] opts the optional parameters @return [PublicSubscriptionStatus]

# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 154
def unsubscribe(public_update_subscription_status_request, opts = {})
  data, _status_code, _headers = unsubscribe_with_http_info(public_update_subscription_status_request, opts)
  data
end
unsubscribe_with_http_info(public_update_subscription_status_request, opts = {}) click to toggle source

Unsubscribe a contact Unsubscribes a contact from the given subscription type. This API is not valid to use for unsubscribing a contact at a brand or portal level and will return an error. @param public_update_subscription_status_request [PublicUpdateSubscriptionStatusRequest] @param [Hash] opts the optional parameters @return [Array<(PublicSubscriptionStatus, Integer, Hash)>] PublicSubscriptionStatus data, response status code and response headers

# File lib/hubspot/codegen/communication_preferences/api/status_api.rb, line 164
def unsubscribe_with_http_info(public_update_subscription_status_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: StatusApi.unsubscribe ...'
  end
  # verify the required parameter 'public_update_subscription_status_request' is set
  if @api_client.config.client_side_validation && public_update_subscription_status_request.nil?
    fail ArgumentError, "Missing the required parameter 'public_update_subscription_status_request' when calling StatusApi.unsubscribe"
  end
  # resource path
  local_var_path = '/communication-preferences/v3/unsubscribe'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json', '*/*'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:body] || @api_client.object_to_http_body(public_update_subscription_status_request) 

  # return_type
  return_type = opts[:return_type] || 'PublicSubscriptionStatus' 

  # auth_names
  auth_names = opts[:auth_names] || ['hapikey']

  new_options = opts.merge(
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: StatusApi#unsubscribe\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end