cloudmersive-validate-api-client 1.3.3 → 1.3.9

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 (122) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +30 -9
  3. data/cloudmersive-validate-api-client.gemspec +1 -1
  4. data/docs/AddressApi.md +118 -0
  5. data/docs/AddressGetServersResponse.md +2 -2
  6. data/docs/AddressVerifySyntaxOnlyResponse.md +3 -0
  7. data/docs/DomainApi.md +112 -2
  8. data/docs/EmailApi.md +3 -3
  9. data/docs/IPAddressApi.md +1 -1
  10. data/docs/LeadEnrichmentApi.md +61 -0
  11. data/docs/LeadEnrichmentRequest.md +21 -0
  12. data/docs/LeadEnrichmentResponse.md +25 -0
  13. data/docs/NameApi.md +59 -4
  14. data/docs/ParseAddressRequest.md +9 -0
  15. data/docs/ParseAddressResponse.md +16 -0
  16. data/docs/PhoneNumberApi.md +1 -1
  17. data/docs/UserAgentApi.md +63 -0
  18. data/docs/UserAgentValidateRequest.md +8 -0
  19. data/docs/UserAgentValidateResponse.md +21 -0
  20. data/docs/ValidateCountryRequest.md +8 -0
  21. data/docs/ValidateCountryResponse.md +12 -0
  22. data/docs/ValidateIdentifierRequest.md +15 -0
  23. data/docs/ValidateIdentifierResponse.md +9 -0
  24. data/docs/ValidateUrlRequestFull.md +8 -0
  25. data/docs/ValidateUrlRequestSyntaxOnly.md +8 -0
  26. data/docs/ValidateUrlResponseFull.md +12 -0
  27. data/docs/ValidateUrlResponseSyntaxOnly.md +9 -0
  28. data/docs/VatApi.md +1 -1
  29. data/docs/VatLookupRequest.md +1 -1
  30. data/docs/VatLookupResponse.md +12 -5
  31. data/docs/WhoisResponse.md +11 -0
  32. data/lib/cloudmersive-validate-api-client.rb +18 -1
  33. data/lib/cloudmersive-validate-api-client/api/address_api.rb +133 -0
  34. data/lib/cloudmersive-validate-api-client/api/domain_api.rb +113 -3
  35. data/lib/cloudmersive-validate-api-client/api/email_api.rb +4 -4
  36. data/lib/cloudmersive-validate-api-client/api/ip_address_api.rb +2 -2
  37. data/lib/cloudmersive-validate-api-client/api/lead_enrichment_api.rb +78 -0
  38. data/lib/cloudmersive-validate-api-client/api/name_api.rb +60 -5
  39. data/lib/cloudmersive-validate-api-client/api/phone_number_api.rb +2 -2
  40. data/lib/cloudmersive-validate-api-client/api/user_agent_api.rb +78 -0
  41. data/lib/cloudmersive-validate-api-client/api/vat_api.rb +2 -2
  42. data/lib/cloudmersive-validate-api-client/api_client.rb +1 -1
  43. data/lib/cloudmersive-validate-api-client/api_error.rb +1 -1
  44. data/lib/cloudmersive-validate-api-client/configuration.rb +1 -1
  45. data/lib/cloudmersive-validate-api-client/models/address_get_servers_response.rb +3 -1
  46. data/lib/cloudmersive-validate-api-client/models/address_verify_syntax_only_response.rb +35 -5
  47. data/lib/cloudmersive-validate-api-client/models/check_response.rb +1 -1
  48. data/lib/cloudmersive-validate-api-client/models/first_name_validation_request.rb +1 -1
  49. data/lib/cloudmersive-validate-api-client/models/first_name_validation_response.rb +1 -1
  50. data/lib/cloudmersive-validate-api-client/models/full_email_validation_response.rb +1 -1
  51. data/lib/cloudmersive-validate-api-client/models/full_name_validation_request.rb +1 -1
  52. data/lib/cloudmersive-validate-api-client/models/full_name_validation_response.rb +1 -1
  53. data/lib/cloudmersive-validate-api-client/models/geolocate_response.rb +1 -1
  54. data/lib/cloudmersive-validate-api-client/models/get_gender_request.rb +1 -1
  55. data/lib/cloudmersive-validate-api-client/models/get_gender_response.rb +1 -1
  56. data/lib/cloudmersive-validate-api-client/models/last_name_validation_request.rb +1 -1
  57. data/lib/cloudmersive-validate-api-client/models/last_name_validation_response.rb +1 -1
  58. data/lib/cloudmersive-validate-api-client/models/lead_enrichment_request.rb +319 -0
  59. data/lib/cloudmersive-validate-api-client/models/lead_enrichment_response.rb +359 -0
  60. data/lib/cloudmersive-validate-api-client/models/parse_address_request.rb +199 -0
  61. data/lib/cloudmersive-validate-api-client/models/parse_address_response.rb +269 -0
  62. data/lib/cloudmersive-validate-api-client/models/phone_number_validate_request.rb +1 -1
  63. data/lib/cloudmersive-validate-api-client/models/phone_number_validation_response.rb +1 -1
  64. data/lib/cloudmersive-validate-api-client/models/user_agent_validate_request.rb +189 -0
  65. data/lib/cloudmersive-validate-api-client/models/user_agent_validate_response.rb +319 -0
  66. data/lib/cloudmersive-validate-api-client/models/validate_country_request.rb +189 -0
  67. data/lib/cloudmersive-validate-api-client/models/validate_country_response.rb +229 -0
  68. data/lib/cloudmersive-validate-api-client/models/validate_identifier_request.rb +259 -0
  69. data/lib/cloudmersive-validate-api-client/models/validate_identifier_response.rb +199 -0
  70. data/lib/cloudmersive-validate-api-client/models/validate_url_request_full.rb +189 -0
  71. data/lib/cloudmersive-validate-api-client/models/validate_url_request_syntax_only.rb +189 -0
  72. data/lib/cloudmersive-validate-api-client/models/validate_url_response_full.rb +229 -0
  73. data/lib/cloudmersive-validate-api-client/models/validate_url_response_syntax_only.rb +199 -0
  74. data/lib/cloudmersive-validate-api-client/models/vat_lookup_request.rb +2 -1
  75. data/lib/cloudmersive-validate-api-client/models/vat_lookup_response.rb +80 -5
  76. data/lib/cloudmersive-validate-api-client/models/whois_response.rb +112 -2
  77. data/lib/cloudmersive-validate-api-client/version.rb +2 -2
  78. data/spec/api/address_api_spec.rb +59 -0
  79. data/spec/api/domain_api_spec.rb +25 -1
  80. data/spec/api/email_api_spec.rb +1 -1
  81. data/spec/api/ip_address_api_spec.rb +1 -1
  82. data/spec/api/lead_enrichment_api_spec.rb +47 -0
  83. data/spec/api/name_api_spec.rb +13 -1
  84. data/spec/api/phone_number_api_spec.rb +1 -1
  85. data/spec/api/user_agent_api_spec.rb +47 -0
  86. data/spec/api/vat_api_spec.rb +1 -1
  87. data/spec/api_client_spec.rb +1 -1
  88. data/spec/configuration_spec.rb +1 -1
  89. data/spec/models/address_get_servers_response_spec.rb +1 -1
  90. data/spec/models/address_verify_syntax_only_response_spec.rb +19 -1
  91. data/spec/models/check_response_spec.rb +1 -1
  92. data/spec/models/first_name_validation_request_spec.rb +1 -1
  93. data/spec/models/first_name_validation_response_spec.rb +1 -1
  94. data/spec/models/full_email_validation_response_spec.rb +1 -1
  95. data/spec/models/full_name_validation_request_spec.rb +1 -1
  96. data/spec/models/full_name_validation_response_spec.rb +1 -1
  97. data/spec/models/geolocate_response_spec.rb +1 -1
  98. data/spec/models/get_gender_request_spec.rb +1 -1
  99. data/spec/models/get_gender_response_spec.rb +1 -1
  100. data/spec/models/last_name_validation_request_spec.rb +1 -1
  101. data/spec/models/last_name_validation_response_spec.rb +1 -1
  102. data/spec/models/lead_enrichment_request_spec.rb +120 -0
  103. data/spec/models/lead_enrichment_response_spec.rb +144 -0
  104. data/spec/models/parse_address_request_spec.rb +48 -0
  105. data/spec/models/parse_address_response_spec.rb +90 -0
  106. data/spec/models/phone_number_validate_request_spec.rb +1 -1
  107. data/spec/models/phone_number_validation_response_spec.rb +1 -1
  108. data/spec/models/user_agent_validate_request_spec.rb +42 -0
  109. data/spec/models/user_agent_validate_response_spec.rb +120 -0
  110. data/spec/models/validate_country_request_spec.rb +42 -0
  111. data/spec/models/validate_country_response_spec.rb +66 -0
  112. data/spec/models/validate_identifier_request_spec.rb +84 -0
  113. data/spec/models/validate_identifier_response_spec.rb +48 -0
  114. data/spec/models/validate_url_request_full_spec.rb +42 -0
  115. data/spec/models/validate_url_request_syntax_only_spec.rb +42 -0
  116. data/spec/models/validate_url_response_full_spec.rb +66 -0
  117. data/spec/models/validate_url_response_syntax_only_spec.rb +48 -0
  118. data/spec/models/vat_lookup_request_spec.rb +1 -1
  119. data/spec/models/vat_lookup_response_spec.rb +43 -1
  120. data/spec/models/whois_response_spec.rb +67 -1
  121. data/spec/spec_helper.rb +1 -1
  122. metadata +66 -16
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -54,7 +54,7 @@ module CloudmersiveValidateApiClient
54
54
  # HTTP header 'Accept' (if needed)
55
55
  header_params['Accept'] = @api_client.select_header_accept(['application/json', 'text/json', 'application/xml', 'text/xml'])
56
56
  # HTTP header 'Content-Type'
57
- header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'text/json', 'application/xml', 'text/xml', 'application/x-www-form-urlencoded'])
57
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'text/json'])
58
58
 
59
59
  # form parameters
60
60
  form_params = {}
@@ -0,0 +1,78 @@
1
+ =begin
2
+ #validateapi
3
+
4
+ #The validation APIs help you validate data. Check if an E-mail address is real. Check if a domain is real. Check up on an IP address, and even where it is located. All this and much more is available in the validation API.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.1
10
+
11
+ =end
12
+
13
+ require "uri"
14
+
15
+ module CloudmersiveValidateApiClient
16
+ class UserAgentApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+ # Parse an HTTP User-Agent string, identify robots
24
+ # Uses a parsing system and database to parse the User-Agent into its structured component parts, such as Browser, Browser Version, Browser Engine, Operating System, and importantly, Robot identification.
25
+ # @param request Input parse request
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [UserAgentValidateResponse]
28
+ def user_agent_parse(request, opts = {})
29
+ data, _status_code, _headers = user_agent_parse_with_http_info(request, opts)
30
+ return data
31
+ end
32
+
33
+ # Parse an HTTP User-Agent string, identify robots
34
+ # Uses a parsing system and database to parse the User-Agent into its structured component parts, such as Browser, Browser Version, Browser Engine, Operating System, and importantly, Robot identification.
35
+ # @param request Input parse request
36
+ # @param [Hash] opts the optional parameters
37
+ # @return [Array<(UserAgentValidateResponse, Fixnum, Hash)>] UserAgentValidateResponse data, response status code and response headers
38
+ def user_agent_parse_with_http_info(request, opts = {})
39
+ if @api_client.config.debugging
40
+ @api_client.config.logger.debug "Calling API: UserAgentApi.user_agent_parse ..."
41
+ end
42
+ # verify the required parameter 'request' is set
43
+ if @api_client.config.client_side_validation && request.nil?
44
+ fail ArgumentError, "Missing the required parameter 'request' when calling UserAgentApi.user_agent_parse"
45
+ end
46
+ # resource path
47
+ local_var_path = "/validate/useragent/parse"
48
+
49
+ # query parameters
50
+ query_params = {}
51
+
52
+ # header parameters
53
+ header_params = {}
54
+ # HTTP header 'Accept' (if needed)
55
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'text/json', 'application/xml', 'text/xml'])
56
+ # HTTP header 'Content-Type'
57
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'text/json'])
58
+
59
+ # form parameters
60
+ form_params = {}
61
+
62
+ # http body (model)
63
+ post_body = @api_client.object_to_http_body(request)
64
+ auth_names = ['Apikey']
65
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
66
+ :header_params => header_params,
67
+ :query_params => query_params,
68
+ :form_params => form_params,
69
+ :body => post_body,
70
+ :auth_names => auth_names,
71
+ :return_type => 'UserAgentValidateResponse')
72
+ if @api_client.config.debugging
73
+ @api_client.config.logger.debug "API called: UserAgentApi#user_agent_parse\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
74
+ end
75
+ return data, status_code, headers
76
+ end
77
+ end
78
+ end
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -54,7 +54,7 @@ module CloudmersiveValidateApiClient
54
54
  # HTTP header 'Accept' (if needed)
55
55
  header_params['Accept'] = @api_client.select_header_accept(['application/json', 'text/json', 'application/xml', 'text/xml'])
56
56
  # HTTP header 'Content-Type'
57
- header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'text/json', 'application/xml', 'text/xml', 'application/x-www-form-urlencoded'])
57
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'text/json'])
58
58
 
59
59
  # form parameters
60
60
  form_params = {}
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -15,8 +15,10 @@ require 'date'
15
15
  module CloudmersiveValidateApiClient
16
16
  # Result of a partial email address validation
17
17
  class AddressGetServersResponse
18
+ # True if partial address validation was successufl, false otherwise
18
19
  attr_accessor :success
19
20
 
21
+ # Email servers for this email address
20
22
  attr_accessor :servers
21
23
 
22
24
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -18,18 +18,33 @@ module CloudmersiveValidateApiClient
18
18
  # True if the email address is syntactically valid, false if it is not
19
19
  attr_accessor :valid_address
20
20
 
21
+ # Domain name of the email address
22
+ attr_accessor :domain
23
+
24
+ # True if the email domain name is a free provider (typically a free to sign up web email provider for consumers / personal use), false otherwise.
25
+ attr_accessor :is_free_email_provider
26
+
27
+ # True if the email address is a disposable email address, false otherwise; these disposable providers are not typically used to receive email and so will have a low likelihood of opening mail sent there.
28
+ attr_accessor :is_disposable
29
+
21
30
 
22
31
  # Attribute mapping from ruby-style variable name to JSON key.
23
32
  def self.attribute_map
24
33
  {
25
- :'valid_address' => :'ValidAddress'
34
+ :'valid_address' => :'ValidAddress',
35
+ :'domain' => :'Domain',
36
+ :'is_free_email_provider' => :'IsFreeEmailProvider',
37
+ :'is_disposable' => :'IsDisposable'
26
38
  }
27
39
  end
28
40
 
29
41
  # Attribute type mapping.
30
42
  def self.swagger_types
31
43
  {
32
- :'valid_address' => :'BOOLEAN'
44
+ :'valid_address' => :'BOOLEAN',
45
+ :'domain' => :'String',
46
+ :'is_free_email_provider' => :'BOOLEAN',
47
+ :'is_disposable' => :'BOOLEAN'
33
48
  }
34
49
  end
35
50
 
@@ -45,6 +60,18 @@ module CloudmersiveValidateApiClient
45
60
  self.valid_address = attributes[:'ValidAddress']
46
61
  end
47
62
 
63
+ if attributes.has_key?(:'Domain')
64
+ self.domain = attributes[:'Domain']
65
+ end
66
+
67
+ if attributes.has_key?(:'IsFreeEmailProvider')
68
+ self.is_free_email_provider = attributes[:'IsFreeEmailProvider']
69
+ end
70
+
71
+ if attributes.has_key?(:'IsDisposable')
72
+ self.is_disposable = attributes[:'IsDisposable']
73
+ end
74
+
48
75
  end
49
76
 
50
77
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -65,7 +92,10 @@ module CloudmersiveValidateApiClient
65
92
  def ==(o)
66
93
  return true if self.equal?(o)
67
94
  self.class == o.class &&
68
- valid_address == o.valid_address
95
+ valid_address == o.valid_address &&
96
+ domain == o.domain &&
97
+ is_free_email_provider == o.is_free_email_provider &&
98
+ is_disposable == o.is_disposable
69
99
  end
70
100
 
71
101
  # @see the `==` method
@@ -77,7 +107,7 @@ module CloudmersiveValidateApiClient
77
107
  # Calculates hash code according to all attributes.
78
108
  # @return [Fixnum] Hash code
79
109
  def hash
80
- [valid_address].hash
110
+ [valid_address, domain, is_free_email_provider, is_disposable].hash
81
111
  end
82
112
 
83
113
  # Builds the object from hash
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  OpenAPI spec version: v1
7
7
 
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: unset
9
+ Swagger Codegen version: 2.3.1
10
10
 
11
11
  =end
12
12
 
@@ -0,0 +1,319 @@
1
+ =begin
2
+ #validateapi
3
+
4
+ #The validation APIs help you validate data. Check if an E-mail address is real. Check if a domain is real. Check up on an IP address, and even where it is located. All this and much more is available in the validation API.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveValidateApiClient
16
+ # Input lead contact; fill in known fields to extend them with matched field values
17
+ class LeadEnrichmentRequest
18
+ # The person's business email address for the lead
19
+ attr_accessor :contact_business_email
20
+
21
+ # The person's first name for the lead
22
+ attr_accessor :contact_first_name
23
+
24
+ # The person's last name for the lead
25
+ attr_accessor :contact_last_name
26
+
27
+ # Name of the company for the lead
28
+ attr_accessor :company_name
29
+
30
+ # Domain name / website for the lead
31
+ attr_accessor :company_domain_name
32
+
33
+ # House number of the address of the company for the lead
34
+ attr_accessor :company_house_number
35
+
36
+ # Street name of the address of the company for the lead
37
+ attr_accessor :company_street
38
+
39
+ # City of the address of the company for the lead
40
+ attr_accessor :company_city
41
+
42
+ # State or Province of the address of the company for the lead
43
+ attr_accessor :company_state_or_province
44
+
45
+ # Postal Code of the address of the company for the lead
46
+ attr_accessor :company_postal_code
47
+
48
+ # Country of the address of the company for the lead
49
+ attr_accessor :company_country
50
+
51
+ # Country Code (2-letter ISO 3166-1) of the address of the company for the lead
52
+ attr_accessor :company_country_code
53
+
54
+ # Telephone of the company office for the lead
55
+ attr_accessor :company_telephone
56
+
57
+ # VAT number of the company for the lead
58
+ attr_accessor :company_vat_number
59
+
60
+
61
+ # Attribute mapping from ruby-style variable name to JSON key.
62
+ def self.attribute_map
63
+ {
64
+ :'contact_business_email' => :'ContactBusinessEmail',
65
+ :'contact_first_name' => :'ContactFirstName',
66
+ :'contact_last_name' => :'ContactLastName',
67
+ :'company_name' => :'CompanyName',
68
+ :'company_domain_name' => :'CompanyDomainName',
69
+ :'company_house_number' => :'CompanyHouseNumber',
70
+ :'company_street' => :'CompanyStreet',
71
+ :'company_city' => :'CompanyCity',
72
+ :'company_state_or_province' => :'CompanyStateOrProvince',
73
+ :'company_postal_code' => :'CompanyPostalCode',
74
+ :'company_country' => :'CompanyCountry',
75
+ :'company_country_code' => :'CompanyCountryCode',
76
+ :'company_telephone' => :'CompanyTelephone',
77
+ :'company_vat_number' => :'CompanyVATNumber'
78
+ }
79
+ end
80
+
81
+ # Attribute type mapping.
82
+ def self.swagger_types
83
+ {
84
+ :'contact_business_email' => :'String',
85
+ :'contact_first_name' => :'String',
86
+ :'contact_last_name' => :'String',
87
+ :'company_name' => :'String',
88
+ :'company_domain_name' => :'String',
89
+ :'company_house_number' => :'String',
90
+ :'company_street' => :'String',
91
+ :'company_city' => :'String',
92
+ :'company_state_or_province' => :'String',
93
+ :'company_postal_code' => :'String',
94
+ :'company_country' => :'String',
95
+ :'company_country_code' => :'String',
96
+ :'company_telephone' => :'String',
97
+ :'company_vat_number' => :'String'
98
+ }
99
+ end
100
+
101
+ # Initializes the object
102
+ # @param [Hash] attributes Model attributes in the form of hash
103
+ def initialize(attributes = {})
104
+ return unless attributes.is_a?(Hash)
105
+
106
+ # convert string to symbol for hash key
107
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
108
+
109
+ if attributes.has_key?(:'ContactBusinessEmail')
110
+ self.contact_business_email = attributes[:'ContactBusinessEmail']
111
+ end
112
+
113
+ if attributes.has_key?(:'ContactFirstName')
114
+ self.contact_first_name = attributes[:'ContactFirstName']
115
+ end
116
+
117
+ if attributes.has_key?(:'ContactLastName')
118
+ self.contact_last_name = attributes[:'ContactLastName']
119
+ end
120
+
121
+ if attributes.has_key?(:'CompanyName')
122
+ self.company_name = attributes[:'CompanyName']
123
+ end
124
+
125
+ if attributes.has_key?(:'CompanyDomainName')
126
+ self.company_domain_name = attributes[:'CompanyDomainName']
127
+ end
128
+
129
+ if attributes.has_key?(:'CompanyHouseNumber')
130
+ self.company_house_number = attributes[:'CompanyHouseNumber']
131
+ end
132
+
133
+ if attributes.has_key?(:'CompanyStreet')
134
+ self.company_street = attributes[:'CompanyStreet']
135
+ end
136
+
137
+ if attributes.has_key?(:'CompanyCity')
138
+ self.company_city = attributes[:'CompanyCity']
139
+ end
140
+
141
+ if attributes.has_key?(:'CompanyStateOrProvince')
142
+ self.company_state_or_province = attributes[:'CompanyStateOrProvince']
143
+ end
144
+
145
+ if attributes.has_key?(:'CompanyPostalCode')
146
+ self.company_postal_code = attributes[:'CompanyPostalCode']
147
+ end
148
+
149
+ if attributes.has_key?(:'CompanyCountry')
150
+ self.company_country = attributes[:'CompanyCountry']
151
+ end
152
+
153
+ if attributes.has_key?(:'CompanyCountryCode')
154
+ self.company_country_code = attributes[:'CompanyCountryCode']
155
+ end
156
+
157
+ if attributes.has_key?(:'CompanyTelephone')
158
+ self.company_telephone = attributes[:'CompanyTelephone']
159
+ end
160
+
161
+ if attributes.has_key?(:'CompanyVATNumber')
162
+ self.company_vat_number = attributes[:'CompanyVATNumber']
163
+ end
164
+
165
+ end
166
+
167
+ # Show invalid properties with the reasons. Usually used together with valid?
168
+ # @return Array for valid properties with the reasons
169
+ def list_invalid_properties
170
+ invalid_properties = Array.new
171
+ return invalid_properties
172
+ end
173
+
174
+ # Check to see if the all the properties in the model are valid
175
+ # @return true if the model is valid
176
+ def valid?
177
+ return true
178
+ end
179
+
180
+ # Checks equality by comparing each attribute.
181
+ # @param [Object] Object to be compared
182
+ def ==(o)
183
+ return true if self.equal?(o)
184
+ self.class == o.class &&
185
+ contact_business_email == o.contact_business_email &&
186
+ contact_first_name == o.contact_first_name &&
187
+ contact_last_name == o.contact_last_name &&
188
+ company_name == o.company_name &&
189
+ company_domain_name == o.company_domain_name &&
190
+ company_house_number == o.company_house_number &&
191
+ company_street == o.company_street &&
192
+ company_city == o.company_city &&
193
+ company_state_or_province == o.company_state_or_province &&
194
+ company_postal_code == o.company_postal_code &&
195
+ company_country == o.company_country &&
196
+ company_country_code == o.company_country_code &&
197
+ company_telephone == o.company_telephone &&
198
+ company_vat_number == o.company_vat_number
199
+ end
200
+
201
+ # @see the `==` method
202
+ # @param [Object] Object to be compared
203
+ def eql?(o)
204
+ self == o
205
+ end
206
+
207
+ # Calculates hash code according to all attributes.
208
+ # @return [Fixnum] Hash code
209
+ def hash
210
+ [contact_business_email, contact_first_name, contact_last_name, company_name, company_domain_name, company_house_number, company_street, company_city, company_state_or_province, company_postal_code, company_country, company_country_code, company_telephone, company_vat_number].hash
211
+ end
212
+
213
+ # Builds the object from hash
214
+ # @param [Hash] attributes Model attributes in the form of hash
215
+ # @return [Object] Returns the model itself
216
+ def build_from_hash(attributes)
217
+ return nil unless attributes.is_a?(Hash)
218
+ self.class.swagger_types.each_pair do |key, type|
219
+ if type =~ /\AArray<(.*)>/i
220
+ # check to ensure the input is an array given that the the attribute
221
+ # is documented as an array but the input is not
222
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
223
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
224
+ end
225
+ elsif !attributes[self.class.attribute_map[key]].nil?
226
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
227
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
228
+ end
229
+
230
+ self
231
+ end
232
+
233
+ # Deserializes the data based on type
234
+ # @param string type Data type
235
+ # @param string value Value to be deserialized
236
+ # @return [Object] Deserialized data
237
+ def _deserialize(type, value)
238
+ case type.to_sym
239
+ when :DateTime
240
+ DateTime.parse(value)
241
+ when :Date
242
+ Date.parse(value)
243
+ when :String
244
+ value.to_s
245
+ when :Integer
246
+ value.to_i
247
+ when :Float
248
+ value.to_f
249
+ when :BOOLEAN
250
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
251
+ true
252
+ else
253
+ false
254
+ end
255
+ when :Object
256
+ # generic object (usually a Hash), return directly
257
+ value
258
+ when /\AArray<(?<inner_type>.+)>\z/
259
+ inner_type = Regexp.last_match[:inner_type]
260
+ value.map { |v| _deserialize(inner_type, v) }
261
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
262
+ k_type = Regexp.last_match[:k_type]
263
+ v_type = Regexp.last_match[:v_type]
264
+ {}.tap do |hash|
265
+ value.each do |k, v|
266
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
267
+ end
268
+ end
269
+ else # model
270
+ temp_model = CloudmersiveValidateApiClient.const_get(type).new
271
+ temp_model.build_from_hash(value)
272
+ end
273
+ end
274
+
275
+ # Returns the string representation of the object
276
+ # @return [String] String presentation of the object
277
+ def to_s
278
+ to_hash.to_s
279
+ end
280
+
281
+ # to_body is an alias to to_hash (backward compatibility)
282
+ # @return [Hash] Returns the object in the form of hash
283
+ def to_body
284
+ to_hash
285
+ end
286
+
287
+ # Returns the object in the form of hash
288
+ # @return [Hash] Returns the object in the form of hash
289
+ def to_hash
290
+ hash = {}
291
+ self.class.attribute_map.each_pair do |attr, param|
292
+ value = self.send(attr)
293
+ next if value.nil?
294
+ hash[param] = _to_hash(value)
295
+ end
296
+ hash
297
+ end
298
+
299
+ # Outputs non-array value in the form of hash
300
+ # For object, use to_hash. Otherwise, just return the value
301
+ # @param [Object] value Any valid value
302
+ # @return [Hash] Returns the value in the form of hash
303
+ def _to_hash(value)
304
+ if value.is_a?(Array)
305
+ value.compact.map{ |v| _to_hash(v) }
306
+ elsif value.is_a?(Hash)
307
+ {}.tap do |hash|
308
+ value.each { |k, v| hash[k] = _to_hash(v) }
309
+ end
310
+ elsif value.respond_to? :to_hash
311
+ value.to_hash
312
+ else
313
+ value
314
+ end
315
+ end
316
+
317
+ end
318
+
319
+ end