Class: CyberSource::CredentialsApi
- Inherits:
-
Object
- Object
- CyberSource::CredentialsApi
- Defined in:
- lib/cybersource_rest_client/api/credentials_api.rb
Instance Attribute Summary collapse
-
#api_client ⇒ Object
Returns the value of attribute api_client.
Instance Method Summary collapse
-
#initialize(api_client = ApiClient.default, config) ⇒ CredentialsApi
constructor
A new instance of CredentialsApi.
-
#provision_mpp_credentials(mpp_credentials_request, opts = {}) ⇒ MppCredentialsResponse200
Provision MPP credentials Provisions an encrypted MPP credential for use as the credential payload in an Authorization: Payment header (MPP spec Section 8.2).
-
#provision_mpp_credentials_with_http_info(mpp_credentials_request, opts = {}) ⇒ Array<(MppCredentialsResponse200, Fixnum, Hash)>
Provision MPP credentials Provisions an encrypted MPP credential for use as the credential payload in an Authorization: Payment header (MPP spec Section 8.2).
Constructor Details
#initialize(api_client = ApiClient.default, config) ⇒ CredentialsApi
Returns a new instance of CredentialsApi.
18 19 20 21 |
# File 'lib/cybersource_rest_client/api/credentials_api.rb', line 18 def initialize(api_client = ApiClient.default, config) @api_client = api_client @api_client.set_configuration(config) end |
Instance Attribute Details
#api_client ⇒ Object
Returns the value of attribute api_client.
16 17 18 |
# File 'lib/cybersource_rest_client/api/credentials_api.rb', line 16 def api_client @api_client end |
Instance Method Details
#provision_mpp_credentials(mpp_credentials_request, opts = {}) ⇒ MppCredentialsResponse200
Provision MPP credentials Provisions an encrypted MPP credential for use as the credential payload in an Authorization: Payment header (MPP spec Section 8.2). The caller provides an instrument identifier (referencing a stored card in TMS) and the challenge context from the merchant’s 402 response, including the merchant’s RSA public encryption key. This service: 1. Calls TMS to retrieve the network token and cryptogram for the instrument. 2. Builds the token plaintext (MPP spec Section 8.3, type: network_token). 3. Encrypts the plaintext using RSA-OAEP with SHA-256 and the merchant’s public key. 4. Returns the MPP credential payload fields (MPP spec Section 8.2, Table 4).
29 30 31 32 |
# File 'lib/cybersource_rest_client/api/credentials_api.rb', line 29 def provision_mpp_credentials(mpp_credentials_request, opts = {}) data, status_code, headers = provision_mpp_credentials_with_http_info(mpp_credentials_request, opts) return data, status_code, headers end |
#provision_mpp_credentials_with_http_info(mpp_credentials_request, opts = {}) ⇒ Array<(MppCredentialsResponse200, Fixnum, Hash)>
Provision MPP credentials Provisions an encrypted MPP credential for use as the credential payload in an Authorization: Payment header (MPP spec Section 8.2). The caller provides an instrument identifier (referencing a stored card in TMS) and the challenge context from the merchant's 402 response, including the merchant's RSA public encryption key. This service: 1. Calls TMS to retrieve the network token and cryptogram for the instrument. 2. Builds the token plaintext (MPP spec Section 8.3, type: network_token). 3. Encrypts the plaintext using RSA-OAEP with SHA-256 and the merchant's public key. 4. Returns the MPP credential payload fields (MPP spec Section 8.2, Table 4).
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/cybersource_rest_client/api/credentials_api.rb', line 39 def provision_mpp_credentials_with_http_info(mpp_credentials_request, opts = {}) if @api_client.config.debugging begin raise @api_client.config.logger.debug 'Calling API: CredentialsApi.provision_mpp_credentials ...' rescue puts 'Cannot write to log' end end # verify the required parameter 'mpp_credentials_request' is set if @api_client.config.client_side_validation && mpp_credentials_request.nil? fail ArgumentError, "Missing the required parameter 'mpp_credentials_request' when calling CredentialsApi.provision_mpp_credentials" end # resource path local_var_path = 'acp/v1/mpp/credentials' # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/hal+json;charset=utf-8']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json;charset=utf-8']) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(mpp_credentials_request) sdk_tracker = SdkTracker.new post_body = sdk_tracker.insert_developer_id_tracker(post_body, 'MppCredentialsRequest', @api_client.config.host, @api_client.merchantconfig.defaultDeveloperId) inbound_mle_status = "mandatory" if MLEUtility.check_is_mle_for_API(@api_client.merchantconfig, inbound_mle_status, ["provision_mpp_credentials","provision_mpp_credentials_with_http_info"]) begin post_body = MLEUtility.encrypt_request_payload(@api_client.merchantconfig, post_body) rescue raise end end is_response_mle_for_api = MLEUtility.check_is_response_mle_for_api(@api_client.merchantconfig, ["provision_mpp_credentials","provision_mpp_credentials_with_http_info"]) 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 => 'MppCredentialsResponse200', :isResponseMLEForApi => is_response_mle_for_api) if @api_client.config.debugging begin raise @api_client.config.logger.debug "API called: CredentialsApi#provision_mpp_credentials\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" rescue puts 'Cannot write to log' end end return data, status_code, headers end |