ultracart_api 3.4.8 → 3.4.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -4
  3. data/docs/EmailWebhookEditorValuesResponse.md +14 -0
  4. data/docs/PaymentsConfiguration.md +4 -4
  5. data/docs/PaymentsConfigurationAffirm.md +7 -7
  6. data/docs/PaymentsConfigurationAmazon.md +7 -7
  7. data/docs/PaymentsConfigurationCOD.md +5 -5
  8. data/docs/PaymentsConfigurationCash.md +1 -1
  9. data/docs/PaymentsConfigurationCheck.md +12 -13
  10. data/docs/PaymentsConfigurationCreditCard.md +11 -8
  11. data/docs/PaymentsConfigurationCreditCardType.md +17 -0
  12. data/docs/PaymentsConfigurationEcheck.md +3 -3
  13. data/docs/PaymentsConfigurationLoanHero.md +4 -4
  14. data/docs/PaymentsConfigurationMoneyOrder.md +3 -1
  15. data/docs/PaymentsConfigurationPayPal.md +28 -28
  16. data/docs/PaymentsConfigurationPurchaseOrder.md +3 -3
  17. data/docs/PaymentsConfigurationQuoteRequest.md +2 -2
  18. data/docs/PaymentsConfigurationRestrictions.md +14 -12
  19. data/docs/PaymentsConfigurationRestrictionsTheme.md +10 -0
  20. data/docs/PaymentsConfigurationSezzle.md +8 -7
  21. data/docs/PaymentsConfigurationTestMethod.md +18 -0
  22. data/docs/PaymentsConfigurationWePay.md +26 -26
  23. data/docs/PaymentsConfigurationWireTransfer.md +10 -10
  24. data/docs/StorefrontApi.md +52 -0
  25. data/lib/ultracart_api.rb +4 -0
  26. data/lib/ultracart_api/api/storefront_api.rb +59 -0
  27. data/lib/ultracart_api/models/email_webhook_editor_values_response.rb +243 -0
  28. data/lib/ultracart_api/models/payments_configuration.rb +41 -40
  29. data/lib/ultracart_api/models/payments_configuration_affirm.rb +81 -40
  30. data/lib/ultracart_api/models/payments_configuration_amazon.rb +51 -44
  31. data/lib/ultracart_api/models/payments_configuration_cash.rb +4 -3
  32. data/lib/ultracart_api/models/payments_configuration_check.rb +73 -68
  33. data/lib/ultracart_api/models/payments_configuration_cod.rb +39 -34
  34. data/lib/ultracart_api/models/payments_configuration_credit_card.rb +78 -34
  35. data/lib/ultracart_api/models/payments_configuration_credit_card_type.rb +309 -0
  36. data/lib/ultracart_api/models/payments_configuration_echeck.rb +22 -19
  37. data/lib/ultracart_api/models/payments_configuration_loan_hero.rb +23 -19
  38. data/lib/ultracart_api/models/payments_configuration_money_order.rb +25 -4
  39. data/lib/ultracart_api/models/payments_configuration_pay_pal.rb +270 -172
  40. data/lib/ultracart_api/models/payments_configuration_purchase_order.rb +19 -16
  41. data/lib/ultracart_api/models/payments_configuration_quote_request.rb +12 -10
  42. data/lib/ultracart_api/models/payments_configuration_restrictions.rb +75 -41
  43. data/lib/ultracart_api/models/payments_configuration_restrictions_theme.rb +202 -0
  44. data/lib/ultracart_api/models/payments_configuration_sezzle.rb +99 -46
  45. data/lib/ultracart_api/models/payments_configuration_test_method.rb +319 -0
  46. data/lib/ultracart_api/models/payments_configuration_we_pay.rb +186 -160
  47. data/lib/ultracart_api/models/payments_configuration_wire_transfer.rb +71 -61
  48. data/lib/ultracart_api/version.rb +1 -1
  49. metadata +10 -2
@@ -3,13 +3,14 @@
3
3
  ## Properties
4
4
  Name | Type | Description | Notes
5
5
  ------------ | ------------- | ------------- | -------------
6
- **accept_sezzle** | **BOOLEAN** | | [optional]
6
+ **accept_sezzle** | **BOOLEAN** | Master flag for this merchant accepting Sezzle payments | [optional]
7
+ **accounting_code** | **String** | Optional Quickbooks code for this payment method | [optional]
8
+ **business_id** | **String** | Business ID | [optional]
9
+ **deposit_to_account** | **String** | Optional Quickbooks Deposit to Account value | [optional]
10
+ **environment** | **String** | Sezzle environment | [optional]
11
+ **environments** | **Array<String>** | List of environments possible | [optional]
12
+ **private_api_key** | **String** | Private API key | [optional]
13
+ **public_api_key** | **String** | Public API key | [optional]
7
14
  **restrictions** | [**PaymentsConfigurationRestrictions**](PaymentsConfigurationRestrictions.md) | | [optional]
8
- **sezzle_accounting_code** | **String** | | [optional]
9
- **sezzle_business_id** | **String** | | [optional]
10
- **sezzle_deposit_to_account** | **String** | | [optional]
11
- **sezzle_environment** | **String** | | [optional]
12
- **sezzle_private_api_key** | **String** | | [optional]
13
- **sezzle_public_api_key** | **String** | | [optional]
14
15
 
15
16
 
@@ -0,0 +1,18 @@
1
+ # UltracartClient::PaymentsConfigurationTestMethod
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **bank_account_number** | **String** | Bank account number | [optional]
7
+ **bank_routing_number** | **String** | Bank routing number | [optional]
8
+ **credit_card_number** | **String** | Credit card number | [optional]
9
+ **credit_card_number_existing** | **String** | The existing credit card number | [optional]
10
+ **description** | **String** | Description | [optional]
11
+ **payment_action** | **String** | Payment action | [optional]
12
+ **payment_method** | **String** | Payment method | [optional]
13
+ **payment_method_test_oid** | **Integer** | Payment method test oid | [optional]
14
+ **skip_affiliate_transaction** | **BOOLEAN** | Skip affiliate transaction | [optional]
15
+ **skip_conversion_pixels** | **BOOLEAN** | If true, skips recording any conversion pixels to avoid sending test orders to your analysis sites | [optional]
16
+ **skip_fraud_filter** | **BOOLEAN** | Skip fraud filter | [optional]
17
+
18
+
@@ -3,33 +3,33 @@
3
3
  ## Properties
4
4
  Name | Type | Description | Notes
5
5
  ------------ | ------------- | ------------- | -------------
6
- **accept_wepay** | **BOOLEAN** | | [optional]
7
- **hide_credit_cards_non_ultra_cart_payments** | **BOOLEAN** | | [optional]
8
- **hide_surcharge_content** | **BOOLEAN** | | [optional]
6
+ **accept_wepay** | **BOOLEAN** | Master flag indicating this merchant accepts UltraCart Payments WePay | [optional]
7
+ **account_update_uri** | **String** | URI for updating the WePay account | [optional]
8
+ **address1** | **String** | Address line 1 | [optional]
9
+ **address2** | **String** | Address line 2 | [optional]
10
+ **canada_accept_debit_cards** | **BOOLEAN** | For Canadian merchants, true if they wish to accept debit cards | [optional]
11
+ **city** | **String** | City | [optional]
12
+ **company** | **String** | Company | [optional]
13
+ **company_description** | **String** | Company description | [optional]
14
+ **console_hostname** | **String** | Console hostname | [optional]
15
+ **country** | **String** | Country | [optional]
16
+ **currency** | **String** | Base currency for transactions | [optional]
17
+ **expected_revenue** | **String** | Expected Revenue | [optional]
18
+ **hide_credit_card_non_ultracart_payments** | **BOOLEAN** | Internal flag to aid UI | [optional]
19
+ **hide_surcharge_amount** | **BOOLEAN** | Internal flag to aid UI | [optional]
20
+ **industry** | **String** | Industry | [optional]
21
+ **owner_email** | **String** | Owner email | [optional]
22
+ **owner_name** | **String** | Owner name | [optional]
23
+ **owner_phone** | **String** | Owner phone | [optional]
24
+ **postal_code** | **String** | Postal code | [optional]
9
25
  **remove_pay_pal_pro** | **BOOLEAN** | | [optional]
10
26
  **restrictions** | [**PaymentsConfigurationRestrictions**](PaymentsConfigurationRestrictions.md) | | [optional]
11
- **short_pay_pal_marketing_text** | **BOOLEAN** | | [optional]
12
- **show_ultra_cart_payments_disabled** | **BOOLEAN** | | [optional]
13
- **show_ultra_cart_payments_intro** | **BOOLEAN** | | [optional]
14
- **show_ultra_cart_payments_verification** | **BOOLEAN** | | [optional]
15
- **show_ultra_cart_payments_verified** | **BOOLEAN** | | [optional]
16
- **wepay_account_update_uri** | **String** | | [optional]
17
- **wepay_address1** | **String** | | [optional]
18
- **wepay_address2** | **String** | | [optional]
19
- **wepay_canada_accept_debit_cards** | **BOOLEAN** | | [optional]
20
- **wepay_city** | **String** | | [optional]
21
- **wepay_company** | **String** | | [optional]
22
- **wepay_company_description** | **String** | | [optional]
23
- **wepay_console_hostname** | **String** | | [optional]
24
- **wepay_country** | **String** | | [optional]
25
- **wepay_currency** | **String** | | [optional]
26
- **wepay_expected_revenue** | **String** | | [optional]
27
- **wepay_industry** | **String** | | [optional]
28
- **wepay_owner_email** | **String** | | [optional]
29
- **wepay_owner_name** | **String** | | [optional]
30
- **wepay_owner_phone** | **String** | | [optional]
31
- **wepay_state** | **String** | | [optional]
32
- **wepay_website_url** | **String** | | [optional]
33
- **wepay_zip** | **String** | | [optional]
27
+ **short_paypal_marketing_text** | **BOOLEAN** | Internal UI aid | [optional]
28
+ **show_ultracart_payments_disabled** | **BOOLEAN** | Internal flag to aid UI | [optional]
29
+ **show_ultracart_payments_intro** | **BOOLEAN** | Internal flag to aid UI | [optional]
30
+ **show_ultracart_payments_verification** | **BOOLEAN** | Internal flag to aid UI | [optional]
31
+ **show_ultracart_payments_verified** | **BOOLEAN** | Internal flag to aid UI | [optional]
32
+ **state** | **String** | State | [optional]
33
+ **website_url** | **String** | Website URL | [optional]
34
34
 
35
35
 
@@ -3,16 +3,16 @@
3
3
  ## Properties
4
4
  Name | Type | Description | Notes
5
5
  ------------ | ------------- | ------------- | -------------
6
- **accept_wire_transfer** | **BOOLEAN** | | [optional]
6
+ **accept_wire_transfer** | **BOOLEAN** | Master flag indicating this merchant accepts wire transfers | [optional]
7
+ **account_number** | **String** | account_number | [optional]
8
+ **accounting_code** | **String** | Optional Quickbooks accounting code | [optional]
9
+ **bank_address** | **String** | Bank address | [optional]
10
+ **deposit_to_account** | **String** | Optional Quickbooks deposit to account | [optional]
11
+ **intermediate_routing_number** | **String** | Intermediate routing number | [optional]
7
12
  **restrictions** | [**PaymentsConfigurationRestrictions**](PaymentsConfigurationRestrictions.md) | | [optional]
8
- **wire_transfer_accounting_code** | **String** | | [optional]
9
- **wire_transfer_account_number** | **String** | | [optional]
10
- **wire_transfer_bank_address** | **String** | | [optional]
11
- **wire_transfer_deposit_to_account** | **String** | | [optional]
12
- **wire_transfer_intermediate_routing_number** | **String** | | [optional]
13
- **wire_transfer_routing_number** | **String** | | [optional]
14
- **wire_transfer_surcharge_accounting_code** | **String** | | [optional]
15
- **wire_transfer_surcharge_fee** | **String** | | [optional]
16
- **wire_transfer_surcharge_perc** | **String** | | [optional]
13
+ **routing_number** | **String** | Routing number | [optional]
14
+ **surcharge_accounting_code** | **String** | If a surcharge is present and this merchant is integrated with Quickbooks, this is the accounting code for the surcharge amount | [optional]
15
+ **surcharge_fee** | **String** | surcharge_fee | [optional]
16
+ **surcharge_percentage** | **String** | surcharge_percentage | [optional]
17
17
 
18
18
 
@@ -44,6 +44,7 @@ Method | HTTP request | Description
44
44
  [**get_email_commseq_stat_overall**](StorefrontApi.md#get_email_commseq_stat_overall) | **GET** /storefront/{storefront_oid}/email/commseqs/{commseq_uuid}/stat | Get communication sequence stats overall
45
45
  [**get_email_commseq_step_stats**](StorefrontApi.md#get_email_commseq_step_stats) | **POST** /storefront/{storefront_oid}/email/commseqs/{commseq_uuid}/stepStats | Get email communication sequence step stats
46
46
  [**get_email_commseq_step_waiting**](StorefrontApi.md#get_email_commseq_step_waiting) | **POST** /storefront/{storefront_oid}/email/commseqs/{commseq_uuid}/waiting | Get email communication sequence customers waiting at each requested step
47
+ [**get_email_commseq_webhook_editor_values**](StorefrontApi.md#get_email_commseq_webhook_editor_values) | **GET** /storefront/{storefront_oid}/email/commseqs/{commseq_uuid}/webhookEditorValues | Get email webhook editor values
47
48
  [**get_email_commseqs**](StorefrontApi.md#get_email_commseqs) | **GET** /storefront/{storefront_oid}/email/commseqs | Get email commseqs
48
49
  [**get_email_customer_editor_url**](StorefrontApi.md#get_email_customer_editor_url) | **GET** /storefront/{storefront_oid}/email/customers/{email_customer_uuid}/editor_url | Get customers editor URL
49
50
  [**get_email_customers**](StorefrontApi.md#get_email_customers) | **GET** /storefront/{storefront_oid}/email/customers | Get email customers
@@ -2193,6 +2194,57 @@ Name | Type | Description | Notes
2193
2194
 
2194
2195
 
2195
2196
 
2197
+ # **get_email_commseq_webhook_editor_values**
2198
+ > EmailWebhookEditorValuesResponse get_email_commseq_webhook_editor_values(storefront_oid, commseq_uuid)
2199
+
2200
+ Get email webhook editor values
2201
+
2202
+ ### Example
2203
+ ```ruby
2204
+ # load the gem
2205
+ require 'ultracart_api'
2206
+
2207
+ # Create a Simple Key: https://ultracart.atlassian.net/wiki/spaces/ucdoc/pages/38688545/API+Simple+Key
2208
+ simple_key = '109ee846ee69f50177018ab12f008a00748a25aa28dbdc0177018ab12f008a00'
2209
+ api_instance = UltracartClient::StorefrontApi.new_using_api_key(simple_key, false, false)
2210
+
2211
+
2212
+ storefront_oid = 56 # Integer |
2213
+
2214
+ commseq_uuid = 'commseq_uuid_example' # String |
2215
+
2216
+
2217
+ begin
2218
+ #Get email webhook editor values
2219
+ result = api_instance.get_email_commseq_webhook_editor_values(storefront_oid, commseq_uuid)
2220
+ p result
2221
+ rescue UltracartClient::ApiError => e
2222
+ puts "Exception when calling StorefrontApi->get_email_commseq_webhook_editor_values: #{e}"
2223
+ end
2224
+ ```
2225
+
2226
+ ### Parameters
2227
+
2228
+ Name | Type | Description | Notes
2229
+ ------------- | ------------- | ------------- | -------------
2230
+ **storefront_oid** | **Integer**| |
2231
+ **commseq_uuid** | **String**| |
2232
+
2233
+ ### Return type
2234
+
2235
+ [**EmailWebhookEditorValuesResponse**](EmailWebhookEditorValuesResponse.md)
2236
+
2237
+ ### Authorization
2238
+
2239
+ [ultraCartBrowserApiKey](../README.md#ultraCartBrowserApiKey), [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
2240
+
2241
+ ### HTTP request headers
2242
+
2243
+ - **Content-Type**: application/json
2244
+ - **Accept**: application/json
2245
+
2246
+
2247
+
2196
2248
  # **get_email_commseqs**
2197
2249
  > EmailCommseqsResponse get_email_commseqs(storefront_oid)
2198
2250
 
data/lib/ultracart_api.rb CHANGED
@@ -315,6 +315,7 @@ require 'ultracart_api/models/email_verify_token_request'
315
315
  require 'ultracart_api/models/email_verify_token_response'
316
316
  require 'ultracart_api/models/email_verify_token_validate_request'
317
317
  require 'ultracart_api/models/email_verify_token_validate_response'
318
+ require 'ultracart_api/models/email_webhook_editor_values_response'
318
319
  require 'ultracart_api/models/error'
319
320
  require 'ultracart_api/models/error_response'
320
321
  require 'ultracart_api/models/experiment'
@@ -498,6 +499,7 @@ require 'ultracart_api/models/payments_configuration_cod'
498
499
  require 'ultracart_api/models/payments_configuration_cash'
499
500
  require 'ultracart_api/models/payments_configuration_check'
500
501
  require 'ultracart_api/models/payments_configuration_credit_card'
502
+ require 'ultracart_api/models/payments_configuration_credit_card_type'
501
503
  require 'ultracart_api/models/payments_configuration_echeck'
502
504
  require 'ultracart_api/models/payments_configuration_loan_hero'
503
505
  require 'ultracart_api/models/payments_configuration_money_order'
@@ -506,7 +508,9 @@ require 'ultracart_api/models/payments_configuration_purchase_order'
506
508
  require 'ultracart_api/models/payments_configuration_quote_request'
507
509
  require 'ultracart_api/models/payments_configuration_response'
508
510
  require 'ultracart_api/models/payments_configuration_restrictions'
511
+ require 'ultracart_api/models/payments_configuration_restrictions_theme'
509
512
  require 'ultracart_api/models/payments_configuration_sezzle'
513
+ require 'ultracart_api/models/payments_configuration_test_method'
510
514
  require 'ultracart_api/models/payments_configuration_we_pay'
511
515
  require 'ultracart_api/models/payments_configuration_wire_transfer'
512
516
  require 'ultracart_api/models/payments_theme_transaction_type'
@@ -2369,6 +2369,65 @@ module UltracartClient
2369
2369
  end
2370
2370
  return data, status_code, headers
2371
2371
  end
2372
+ # Get email webhook editor values
2373
+ # @param storefront_oid
2374
+ # @param commseq_uuid
2375
+ # @param [Hash] opts the optional parameters
2376
+ # @return [EmailWebhookEditorValuesResponse]
2377
+ def get_email_commseq_webhook_editor_values(storefront_oid, commseq_uuid, opts = {})
2378
+ data, _status_code, _headers = get_email_commseq_webhook_editor_values_with_http_info(storefront_oid, commseq_uuid, opts)
2379
+ data
2380
+ end
2381
+
2382
+ # Get email webhook editor values
2383
+ # @param storefront_oid
2384
+ # @param commseq_uuid
2385
+ # @param [Hash] opts the optional parameters
2386
+ # @return [Array<(EmailWebhookEditorValuesResponse, Fixnum, Hash)>] EmailWebhookEditorValuesResponse data, response status code and response headers
2387
+ def get_email_commseq_webhook_editor_values_with_http_info(storefront_oid, commseq_uuid, opts = {})
2388
+ if @api_client.config.debugging
2389
+ @api_client.config.logger.debug 'Calling API: StorefrontApi.get_email_commseq_webhook_editor_values ...'
2390
+ end
2391
+ # verify the required parameter 'storefront_oid' is set
2392
+ if @api_client.config.client_side_validation && storefront_oid.nil?
2393
+ fail ArgumentError, "Missing the required parameter 'storefront_oid' when calling StorefrontApi.get_email_commseq_webhook_editor_values"
2394
+ end
2395
+ # verify the required parameter 'commseq_uuid' is set
2396
+ if @api_client.config.client_side_validation && commseq_uuid.nil?
2397
+ fail ArgumentError, "Missing the required parameter 'commseq_uuid' when calling StorefrontApi.get_email_commseq_webhook_editor_values"
2398
+ end
2399
+ # resource path
2400
+ local_var_path = '/storefront/{storefront_oid}/email/commseqs/{commseq_uuid}/webhookEditorValues'.sub('{' + 'storefront_oid' + '}', storefront_oid.to_s).sub('{' + 'commseq_uuid' + '}', commseq_uuid.to_s)
2401
+
2402
+ # query parameters
2403
+ query_params = {}
2404
+
2405
+ # header parameters
2406
+ header_params = {}
2407
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
2408
+ # HTTP header 'Accept' (if needed)
2409
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2410
+ # HTTP header 'Content-Type'
2411
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
2412
+
2413
+ # form parameters
2414
+ form_params = {}
2415
+
2416
+ # http body (model)
2417
+ post_body = nil
2418
+ auth_names = ['ultraCartBrowserApiKey', 'ultraCartOauth', 'ultraCartSimpleApiKey']
2419
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2420
+ :header_params => header_params,
2421
+ :query_params => query_params,
2422
+ :form_params => form_params,
2423
+ :body => post_body,
2424
+ :auth_names => auth_names,
2425
+ :return_type => 'EmailWebhookEditorValuesResponse')
2426
+ if @api_client.config.debugging
2427
+ @api_client.config.logger.debug "API called: StorefrontApi#get_email_commseq_webhook_editor_values\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2428
+ end
2429
+ return data, status_code, headers
2430
+ end
2372
2431
  # Get email commseqs
2373
2432
  # @param storefront_oid
2374
2433
  # @param [Hash] opts the optional parameters
@@ -0,0 +1,243 @@
1
+ =begin
2
+ #UltraCart Rest API V2
3
+
4
+ #UltraCart REST API Version 2
5
+
6
+ OpenAPI spec version: 2.0.0
7
+ Contact: support@ultracart.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.15-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module UltracartClient
16
+ class EmailWebhookEditorValuesResponse
17
+ attr_accessor :available_expansions
18
+
19
+ attr_accessor :available_tokens
20
+
21
+ attr_accessor :error
22
+
23
+ attr_accessor :metadata
24
+
25
+ attr_accessor :rest_object_type
26
+
27
+ # Indicates if API call was successful
28
+ attr_accessor :success
29
+
30
+ attr_accessor :warning
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ def self.attribute_map
34
+ {
35
+ :'available_expansions' => :'available_expansions',
36
+ :'available_tokens' => :'available_tokens',
37
+ :'error' => :'error',
38
+ :'metadata' => :'metadata',
39
+ :'rest_object_type' => :'rest_object_type',
40
+ :'success' => :'success',
41
+ :'warning' => :'warning'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ def self.swagger_types
47
+ {
48
+ :'available_expansions' => :'Array<String>',
49
+ :'available_tokens' => :'Array<String>',
50
+ :'error' => :'Error',
51
+ :'metadata' => :'ResponseMetadata',
52
+ :'rest_object_type' => :'String',
53
+ :'success' => :'BOOLEAN',
54
+ :'warning' => :'Warning'
55
+ }
56
+ end
57
+
58
+ # Initializes the object
59
+ # @param [Hash] attributes Model attributes in the form of hash
60
+ def initialize(attributes = {})
61
+ return unless attributes.is_a?(Hash)
62
+
63
+ # convert string to symbol for hash key
64
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
65
+
66
+ if attributes.has_key?(:'available_expansions')
67
+ if (value = attributes[:'available_expansions']).is_a?(Array)
68
+ self.available_expansions = value
69
+ end
70
+ end
71
+
72
+ if attributes.has_key?(:'available_tokens')
73
+ if (value = attributes[:'available_tokens']).is_a?(Array)
74
+ self.available_tokens = value
75
+ end
76
+ end
77
+
78
+ if attributes.has_key?(:'error')
79
+ self.error = attributes[:'error']
80
+ end
81
+
82
+ if attributes.has_key?(:'metadata')
83
+ self.metadata = attributes[:'metadata']
84
+ end
85
+
86
+ if attributes.has_key?(:'rest_object_type')
87
+ self.rest_object_type = attributes[:'rest_object_type']
88
+ end
89
+
90
+ if attributes.has_key?(:'success')
91
+ self.success = attributes[:'success']
92
+ end
93
+
94
+ if attributes.has_key?(:'warning')
95
+ self.warning = attributes[:'warning']
96
+ end
97
+ end
98
+
99
+ # Show invalid properties with the reasons. Usually used together with valid?
100
+ # @return Array for valid properties with the reasons
101
+ def list_invalid_properties
102
+ invalid_properties = Array.new
103
+ invalid_properties
104
+ end
105
+
106
+ # Check to see if the all the properties in the model are valid
107
+ # @return true if the model is valid
108
+ def valid?
109
+ true
110
+ end
111
+
112
+ # Checks equality by comparing each attribute.
113
+ # @param [Object] Object to be compared
114
+ def ==(o)
115
+ return true if self.equal?(o)
116
+ self.class == o.class &&
117
+ available_expansions == o.available_expansions &&
118
+ available_tokens == o.available_tokens &&
119
+ error == o.error &&
120
+ metadata == o.metadata &&
121
+ rest_object_type == o.rest_object_type &&
122
+ success == o.success &&
123
+ warning == o.warning
124
+ end
125
+
126
+ # @see the `==` method
127
+ # @param [Object] Object to be compared
128
+ def eql?(o)
129
+ self == o
130
+ end
131
+
132
+ # Calculates hash code according to all attributes.
133
+ # @return [Fixnum] Hash code
134
+ def hash
135
+ [available_expansions, available_tokens, error, metadata, rest_object_type, success, warning].hash
136
+ end
137
+
138
+ # Builds the object from hash
139
+ # @param [Hash] attributes Model attributes in the form of hash
140
+ # @return [Object] Returns the model itself
141
+ def build_from_hash(attributes)
142
+ return nil unless attributes.is_a?(Hash)
143
+ self.class.swagger_types.each_pair do |key, type|
144
+ if type =~ /\AArray<(.*)>/i
145
+ # check to ensure the input is an array given that the attribute
146
+ # is documented as an array but the input is not
147
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
148
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
149
+ end
150
+ elsif !attributes[self.class.attribute_map[key]].nil?
151
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
152
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
153
+ end
154
+
155
+ self
156
+ end
157
+
158
+ # Deserializes the data based on type
159
+ # @param string type Data type
160
+ # @param string value Value to be deserialized
161
+ # @return [Object] Deserialized data
162
+ def _deserialize(type, value)
163
+ case type.to_sym
164
+ when :DateTime
165
+ DateTime.parse(value)
166
+ when :Date
167
+ Date.parse(value)
168
+ when :String
169
+ value.to_s
170
+ when :Integer
171
+ value.to_i
172
+ when :Float
173
+ value.to_f
174
+ when :BOOLEAN
175
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
176
+ true
177
+ else
178
+ false
179
+ end
180
+ when :Object
181
+ # generic object (usually a Hash), return directly
182
+ value
183
+ when /\AArray<(?<inner_type>.+)>\z/
184
+ inner_type = Regexp.last_match[:inner_type]
185
+ value.map { |v| _deserialize(inner_type, v) }
186
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
187
+ k_type = Regexp.last_match[:k_type]
188
+ v_type = Regexp.last_match[:v_type]
189
+ {}.tap do |hash|
190
+ value.each do |k, v|
191
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
192
+ end
193
+ end
194
+ else # model
195
+ temp_model = UltracartClient.const_get(type).new
196
+ temp_model.build_from_hash(value)
197
+ end
198
+ end
199
+
200
+ # Returns the string representation of the object
201
+ # @return [String] String presentation of the object
202
+ def to_s
203
+ to_hash.to_s
204
+ end
205
+
206
+ # to_body is an alias to to_hash (backward compatibility)
207
+ # @return [Hash] Returns the object in the form of hash
208
+ def to_body
209
+ to_hash
210
+ end
211
+
212
+ # Returns the object in the form of hash
213
+ # @return [Hash] Returns the object in the form of hash
214
+ def to_hash
215
+ hash = {}
216
+ self.class.attribute_map.each_pair do |attr, param|
217
+ value = self.send(attr)
218
+ next if value.nil?
219
+ hash[param] = _to_hash(value)
220
+ end
221
+ hash
222
+ end
223
+
224
+ # Outputs non-array value in the form of hash
225
+ # For object, use to_hash. Otherwise, just return the value
226
+ # @param [Object] value Any valid value
227
+ # @return [Hash] Returns the value in the form of hash
228
+ def _to_hash(value)
229
+ if value.is_a?(Array)
230
+ value.compact.map { |v| _to_hash(v) }
231
+ elsif value.is_a?(Hash)
232
+ {}.tap do |hash|
233
+ value.each { |k, v| hash[k] = _to_hash(v) }
234
+ end
235
+ elsif value.respond_to? :to_hash
236
+ value.to_hash
237
+ else
238
+ value
239
+ end
240
+ end
241
+
242
+ end
243
+ end