class CyberSource::InstrumentIdentifierApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default, config) click to toggle source
# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 19
def initialize(api_client = ApiClient.default, config)
  @api_client = api_client
      @api_client.set_configuration(config)
end

Public Instance Methods

delete_instrument_identifier(instrument_identifier_token_id, opts = {}) click to toggle source

Delete an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [nil]

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 28
def delete_instrument_identifier(instrument_identifier_token_id, opts = {})
  data, status_code, headers = delete_instrument_identifier_with_http_info(instrument_identifier_token_id, opts)
  return data, status_code, headers
end
delete_instrument_identifier_with_http_info(instrument_identifier_token_id, opts = {}) click to toggle source

Delete an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 38
def delete_instrument_identifier_with_http_info(instrument_identifier_token_id, opts = {})
  
      if @api_client.config.debugging
           begin
                    raise
                            @api_client.config.logger.debug 'Calling API: InstrumentIdentifierApi.delete_instrument_identifier ...'
                    rescue
                            puts 'Cannot write to log'
                    end
  end
  # verify the required parameter 'instrument_identifier_token_id' is set
  if @api_client.config.client_side_validation && instrument_identifier_token_id.nil?
    fail ArgumentError, "Missing the required parameter 'instrument_identifier_token_id' when calling InstrumentIdentifierApi.delete_instrument_identifier"
  end
  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length > 32
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.delete_instrument_identifier, the character length must be smaller than or equal to 32.'
  end

  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length < 12
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.delete_instrument_identifier, the character length must be great than or equal to 12.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length > 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.delete_instrument_identifier, the character length must be smaller than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length < 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.delete_instrument_identifier, the character length must be great than or equal to 36.'
  end

  # resource path
  local_var_path = 'tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}'.sub('{' + 'instrumentIdentifierTokenId' + '}', instrument_identifier_token_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
  header_params[:'profile-id'] = opts[:'profile_id'] if !opts[:'profile_id'].nil?

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = []
  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names)
  if @api_client.config.debugging
            begin
            raise
                    @api_client.config.logger.debug "API called: InstrumentIdentifierApi#delete_instrument_identifier\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
            rescue
                    puts 'Cannot write to log'
            end
      end
  return data, status_code, headers
end
get_instrument_identifier(instrument_identifier_token_id, opts = {}) click to toggle source

Retrieve an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier]

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 109
def get_instrument_identifier(instrument_identifier_token_id, opts = {})
  data, status_code, headers = get_instrument_identifier_with_http_info(instrument_identifier_token_id, opts)
  return data, status_code, headers
end
get_instrument_identifier_payment_instruments_list(instrument_identifier_token_id, opts = {}) click to toggle source

List Payment Instruments for an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @option opts [Integer] :offset Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0. (default to 0) @option opts [Integer] :limit The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100. (default to 20) @return [PaymentInstrumentList]

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 193
def get_instrument_identifier_payment_instruments_list(instrument_identifier_token_id, opts = {})
  data, status_code, headers = get_instrument_identifier_payment_instruments_list_with_http_info(instrument_identifier_token_id, opts)
  return data, status_code, headers
end
get_instrument_identifier_payment_instruments_list_with_http_info(instrument_identifier_token_id, opts = {}) click to toggle source

List Payment Instruments for an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @option opts [Integer] :offset Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0. @option opts [Integer] :limit The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100. @return [Array<(PaymentInstrumentList, Fixnum, Hash)>] PaymentInstrumentList data, response status code and response headers

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 205
def get_instrument_identifier_payment_instruments_list_with_http_info(instrument_identifier_token_id, opts = {})
  
      if @api_client.config.debugging
           begin
                    raise
                            @api_client.config.logger.debug 'Calling API: InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list ...'
                    rescue
                            puts 'Cannot write to log'
                    end
  end
  # verify the required parameter 'instrument_identifier_token_id' is set
  if @api_client.config.client_side_validation && instrument_identifier_token_id.nil?
    fail ArgumentError, "Missing the required parameter 'instrument_identifier_token_id' when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list"
  end
  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length > 32
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, the character length must be smaller than or equal to 32.'
  end

  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length < 12
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, the character length must be great than or equal to 12.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length > 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, the character length must be smaller than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length < 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, the character length must be great than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'offset'].nil? && opts[:'offset'] < 0
    fail ArgumentError, 'invalid value for "opts[:"offset"]" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, must be greater than or equal to 0.'
  end

  if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
    fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, must be smaller than or equal to 100.'
  end

  if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
    fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling InstrumentIdentifierApi.get_instrument_identifier_payment_instruments_list, must be greater than or equal to 1.'
  end

  # resource path
  local_var_path = 'tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}/paymentinstruments'.sub('{' + 'instrumentIdentifierTokenId' + '}', instrument_identifier_token_id.to_s)

  # query parameters
  query_params = {}
  query_params[:'offset'] = opts[:'offset'] if !opts[:'offset'].nil?
  query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
  header_params[:'profile-id'] = opts[:'profile_id'] if !opts[:'profile_id'].nil?

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = []
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'PaymentInstrumentList')
  if @api_client.config.debugging
            begin
            raise
                    @api_client.config.logger.debug "API called: InstrumentIdentifierApi#get_instrument_identifier_payment_instruments_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
            rescue
                    puts 'Cannot write to log'
            end
      end
  return data, status_code, headers
end
get_instrument_identifier_with_http_info(instrument_identifier_token_id, opts = {}) click to toggle source

Retrieve an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [Array<(Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier, Fixnum, Hash)>] Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier data, response status code and response headers

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 119
def get_instrument_identifier_with_http_info(instrument_identifier_token_id, opts = {})
  
      if @api_client.config.debugging
           begin
                    raise
                            @api_client.config.logger.debug 'Calling API: InstrumentIdentifierApi.get_instrument_identifier ...'
                    rescue
                            puts 'Cannot write to log'
                    end
  end
  # verify the required parameter 'instrument_identifier_token_id' is set
  if @api_client.config.client_side_validation && instrument_identifier_token_id.nil?
    fail ArgumentError, "Missing the required parameter 'instrument_identifier_token_id' when calling InstrumentIdentifierApi.get_instrument_identifier"
  end
  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length > 32
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.get_instrument_identifier, the character length must be smaller than or equal to 32.'
  end

  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length < 12
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.get_instrument_identifier, the character length must be great than or equal to 12.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length > 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.get_instrument_identifier, the character length must be smaller than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length < 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.get_instrument_identifier, the character length must be great than or equal to 36.'
  end

  # resource path
  local_var_path = 'tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}'.sub('{' + 'instrumentIdentifierTokenId' + '}', instrument_identifier_token_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
  header_params[:'profile-id'] = opts[:'profile_id'] if !opts[:'profile_id'].nil?

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  auth_names = []
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier')
  if @api_client.config.debugging
            begin
            raise
                    @api_client.config.logger.debug "API called: InstrumentIdentifierApi#get_instrument_identifier\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
            rescue
                    puts 'Cannot write to log'
            end
      end
  return data, status_code, headers
end
patch_instrument_identifier(instrument_identifier_token_id, patch_instrument_identifier_request, opts = {}) click to toggle source

Update an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param patch_instrument_identifier_request Specify the previous transaction ID to update. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @option opts [String] :if_match Contains an ETag value from a GET request to make the request conditional. @return [Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier]

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 293
def patch_instrument_identifier(instrument_identifier_token_id, patch_instrument_identifier_request, opts = {})
  data, status_code, headers = patch_instrument_identifier_with_http_info(instrument_identifier_token_id, patch_instrument_identifier_request, opts)
  return data, status_code, headers
end
patch_instrument_identifier_with_http_info(instrument_identifier_token_id, patch_instrument_identifier_request, opts = {}) click to toggle source

Update an Instrument Identifier @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param patch_instrument_identifier_request Specify the previous transaction ID to update. @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @option opts [String] :if_match Contains an ETag value from a GET request to make the request conditional. @return [Array<(Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier, Fixnum, Hash)>] Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier data, response status code and response headers

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 305
def patch_instrument_identifier_with_http_info(instrument_identifier_token_id, patch_instrument_identifier_request, opts = {})
  
      if @api_client.config.debugging
           begin
                    raise
                            @api_client.config.logger.debug 'Calling API: InstrumentIdentifierApi.patch_instrument_identifier ...'
                    rescue
                            puts 'Cannot write to log'
                    end
  end
  # verify the required parameter 'instrument_identifier_token_id' is set
  if @api_client.config.client_side_validation && instrument_identifier_token_id.nil?
    fail ArgumentError, "Missing the required parameter 'instrument_identifier_token_id' when calling InstrumentIdentifierApi.patch_instrument_identifier"
  end
  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length > 32
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.patch_instrument_identifier, the character length must be smaller than or equal to 32.'
  end

  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length < 12
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.patch_instrument_identifier, the character length must be great than or equal to 12.'
  end

  # verify the required parameter 'patch_instrument_identifier_request' is set
  if @api_client.config.client_side_validation && patch_instrument_identifier_request.nil?
    fail ArgumentError, "Missing the required parameter 'patch_instrument_identifier_request' when calling InstrumentIdentifierApi.patch_instrument_identifier"
  end
  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length > 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.patch_instrument_identifier, the character length must be smaller than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length < 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.patch_instrument_identifier, the character length must be great than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'if_match'].nil? && opts[:'if_match'].to_s.length > 32
    fail ArgumentError, 'invalid value for "opts[:"if_match"]" when calling InstrumentIdentifierApi.patch_instrument_identifier, the character length must be smaller than or equal to 32.'
  end

  if @api_client.config.client_side_validation && !opts[:'if_match'].nil? && opts[:'if_match'].to_s.length < 1
    fail ArgumentError, 'invalid value for "opts[:"if_match"]" when calling InstrumentIdentifierApi.patch_instrument_identifier, the character length must be great than or equal to 1.'
  end

  # resource path
  local_var_path = 'tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}'.sub('{' + 'instrumentIdentifierTokenId' + '}', instrument_identifier_token_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
  header_params[:'profile-id'] = opts[:'profile_id'] if !opts[:'profile_id'].nil?
  header_params[:'if-match'] = opts[:'if_match'] if !opts[:'if_match'].nil?

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(patch_instrument_identifier_request)
  auth_names = []
  data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier')
  if @api_client.config.debugging
            begin
            raise
                    @api_client.config.logger.debug "API called: InstrumentIdentifierApi#patch_instrument_identifier\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
            rescue
                    puts 'Cannot write to log'
            end
      end
  return data, status_code, headers
end
post_instrument_identifier(post_instrument_identifier_request, opts = {}) click to toggle source

Create an Instrument Identifier @param post_instrument_identifier_request Specify either a Card, Bank Account or Enrollable Card @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier]

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 390
def post_instrument_identifier(post_instrument_identifier_request, opts = {})
  data, status_code, headers = post_instrument_identifier_with_http_info(post_instrument_identifier_request, opts)
  return data, status_code, headers
end
post_instrument_identifier_enrollment(instrument_identifier_token_id, post_instrument_identifier_enrollment_request, opts = {}) click to toggle source

Enroll an Instrument Identifier for Network Tokenization @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param post_instrument_identifier_enrollment_request Specify Enrollable Card details @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [nil]

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 465
def post_instrument_identifier_enrollment(instrument_identifier_token_id, post_instrument_identifier_enrollment_request, opts = {})
  data, status_code, headers = post_instrument_identifier_enrollment_with_http_info(instrument_identifier_token_id, post_instrument_identifier_enrollment_request, opts)
  return data, status_code, headers
end
post_instrument_identifier_enrollment_with_http_info(instrument_identifier_token_id, post_instrument_identifier_enrollment_request, opts = {}) click to toggle source

Enroll an Instrument Identifier for Network Tokenization @param instrument_identifier_token_id The TokenId of a Instrument Identifier. @param post_instrument_identifier_enrollment_request Specify Enrollable Card details @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 476
def post_instrument_identifier_enrollment_with_http_info(instrument_identifier_token_id, post_instrument_identifier_enrollment_request, opts = {})
  
      if @api_client.config.debugging
           begin
                    raise
                            @api_client.config.logger.debug 'Calling API: InstrumentIdentifierApi.post_instrument_identifier_enrollment ...'
                    rescue
                            puts 'Cannot write to log'
                    end
  end
  # verify the required parameter 'instrument_identifier_token_id' is set
  if @api_client.config.client_side_validation && instrument_identifier_token_id.nil?
    fail ArgumentError, "Missing the required parameter 'instrument_identifier_token_id' when calling InstrumentIdentifierApi.post_instrument_identifier_enrollment"
  end
  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length > 32
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.post_instrument_identifier_enrollment, the character length must be smaller than or equal to 32.'
  end

  if @api_client.config.client_side_validation && instrument_identifier_token_id.to_s.length < 12
    fail ArgumentError, 'invalid value for "instrument_identifier_token_id" when calling InstrumentIdentifierApi.post_instrument_identifier_enrollment, the character length must be great than or equal to 12.'
  end

  # verify the required parameter 'post_instrument_identifier_enrollment_request' is set
  if @api_client.config.client_side_validation && post_instrument_identifier_enrollment_request.nil?
    fail ArgumentError, "Missing the required parameter 'post_instrument_identifier_enrollment_request' when calling InstrumentIdentifierApi.post_instrument_identifier_enrollment"
  end
  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length > 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.post_instrument_identifier_enrollment, the character length must be smaller than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length < 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.post_instrument_identifier_enrollment, the character length must be great than or equal to 36.'
  end

  # resource path
  local_var_path = 'tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}/enrollment'.sub('{' + 'instrumentIdentifierTokenId' + '}', instrument_identifier_token_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
  header_params[:'profile-id'] = opts[:'profile_id'] if !opts[:'profile_id'].nil?

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(post_instrument_identifier_enrollment_request)
  auth_names = []
  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names)
  if @api_client.config.debugging
            begin
            raise
                    @api_client.config.logger.debug "API called: InstrumentIdentifierApi#post_instrument_identifier_enrollment\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
            rescue
                    puts 'Cannot write to log'
            end
      end
  return data, status_code, headers
end
post_instrument_identifier_with_http_info(post_instrument_identifier_request, opts = {}) click to toggle source

Create an Instrument Identifier @param post_instrument_identifier_request Specify either a Card, Bank Account or Enrollable Card @param [Hash] opts the optional parameters @option opts [String] :profile_id The id of a profile containing user specific TMS configuration. @return [Array<(Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier, Fixnum, Hash)>] Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier data, response status code and response headers

# File lib/cybersource_rest_client/api/instrument_identifier_api.rb, line 400
def post_instrument_identifier_with_http_info(post_instrument_identifier_request, opts = {})
  
      if @api_client.config.debugging
           begin
                    raise
                            @api_client.config.logger.debug 'Calling API: InstrumentIdentifierApi.post_instrument_identifier ...'
                    rescue
                            puts 'Cannot write to log'
                    end
  end
  # verify the required parameter 'post_instrument_identifier_request' is set
  if @api_client.config.client_side_validation && post_instrument_identifier_request.nil?
    fail ArgumentError, "Missing the required parameter 'post_instrument_identifier_request' when calling InstrumentIdentifierApi.post_instrument_identifier"
  end
  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length > 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.post_instrument_identifier, the character length must be smaller than or equal to 36.'
  end

  if @api_client.config.client_side_validation && !opts[:'profile_id'].nil? && opts[:'profile_id'].to_s.length < 36
    fail ArgumentError, 'invalid value for "opts[:"profile_id"]" when calling InstrumentIdentifierApi.post_instrument_identifier, the character length must be great than or equal to 36.'
  end

  # resource path
  local_var_path = 'tms/v1/instrumentidentifiers'

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json;charset=utf-8'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8'])
  header_params[:'profile-id'] = opts[:'profile_id'] if !opts[:'profile_id'].nil?

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(post_instrument_identifier_request)
  auth_names = []
  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier')
  if @api_client.config.debugging
            begin
            raise
                    @api_client.config.logger.debug "API called: InstrumentIdentifierApi#post_instrument_identifier\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
            rescue
                    puts 'Cannot write to log'
            end
      end
  return data, status_code, headers
end