ipgeolocation_sdk 1.0.0
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.
- checksums.yaml +7 -0
- data/Gemfile +9 -0
- data/LICENSE +21 -0
- data/README.md +2124 -0
- data/Rakefile +10 -0
- data/docs/ASNConnection.md +22 -0
- data/docs/ASNDetails.md +48 -0
- data/docs/ASNLookupApi.md +89 -0
- data/docs/ASNResponse.md +20 -0
- data/docs/ASNResponseXML.md +20 -0
- data/docs/ASNResponseXMLAsn.md +48 -0
- data/docs/Abuse.md +40 -0
- data/docs/AbuseContactApi.md +85 -0
- data/docs/AbuseResponse.md +20 -0
- data/docs/AbuseResponseXML.md +20 -0
- data/docs/Astronomy.md +68 -0
- data/docs/AstronomyApi.md +97 -0
- data/docs/AstronomyEvening.md +36 -0
- data/docs/AstronomyLocation.md +50 -0
- data/docs/AstronomyMorning.md +36 -0
- data/docs/AstronomyResponse.md +22 -0
- data/docs/AstronomyXMLResponse.md +22 -0
- data/docs/BulkIPGeolocation.md +42 -0
- data/docs/BulkIPSecurity.md +42 -0
- data/docs/CountryMetadata.md +22 -0
- data/docs/Currency.md +22 -0
- data/docs/ErrorResponse.md +18 -0
- data/docs/ErrorXMLResponse.md +18 -0
- data/docs/ErrorXMLResponseArray.md +18 -0
- data/docs/GeolocationResponse.md +38 -0
- data/docs/GeolocationXMLResponse.md +38 -0
- data/docs/GeolocationXMLResponseArray.md +38 -0
- data/docs/GetBulkIpGeolocation200ResponseInner1.md +49 -0
- data/docs/GetBulkIpGeolocationRequest.md +18 -0
- data/docs/GetBulkIpSecurityInfo200ResponseInner1.md +49 -0
- data/docs/IPLocationApi.md +175 -0
- data/docs/Location.md +58 -0
- data/docs/LocationMinimal.md +52 -0
- data/docs/Network.md +22 -0
- data/docs/NetworkAsn.md +38 -0
- data/docs/NetworkCompany.md +22 -0
- data/docs/NetworkMinimal.md +20 -0
- data/docs/NetworkMinimalAsn.md +22 -0
- data/docs/NetworkMinimalCompany.md +18 -0
- data/docs/ParseBulkUserAgentStringsRequest.md +18 -0
- data/docs/ParseUserAgentStringRequest.md +18 -0
- data/docs/Security.md +38 -0
- data/docs/SecurityAPIResponse.md +34 -0
- data/docs/SecurityAPIXMLResponse.md +34 -0
- data/docs/SecurityAPIXMLResponseArray.md +34 -0
- data/docs/SecurityApi.md +175 -0
- data/docs/TimeConversionApi.md +109 -0
- data/docs/TimeConversionResponse.md +24 -0
- data/docs/TimeConversionXMLResponse.md +24 -0
- data/docs/TimeZone.md +36 -0
- data/docs/TimeZoneDetailedResponse.md +26 -0
- data/docs/TimeZoneDetailedXMLResponse.md +26 -0
- data/docs/TimeZoneDstEnd.md +28 -0
- data/docs/TimeZoneDstStart.md +28 -0
- data/docs/TimezoneAirport.md +40 -0
- data/docs/TimezoneApi.md +99 -0
- data/docs/TimezoneDetail.md +56 -0
- data/docs/TimezoneDetailDstEnd.md +28 -0
- data/docs/TimezoneDetailDstStart.md +28 -0
- data/docs/TimezoneLocation.md +48 -0
- data/docs/TimezoneLocode.md +32 -0
- data/docs/UserAgentApi.md +235 -0
- data/docs/UserAgentData.md +32 -0
- data/docs/UserAgentDataDevice.md +24 -0
- data/docs/UserAgentDataEngine.md +24 -0
- data/docs/UserAgentDataOperatingSystem.md +26 -0
- data/docs/UserAgentXMLData.md +32 -0
- data/docs/UserAgentXMLDataArray.md +32 -0
- data/git_push.sh +57 -0
- data/ipgeolocation_sdk.gemspec +29 -0
- data/lib/ipgeolocation_sdk/api/abuse_contact_api.rb +86 -0
- data/lib/ipgeolocation_sdk/api/asn_lookup_api.rb +92 -0
- data/lib/ipgeolocation_sdk/api/astronomy_api.rb +116 -0
- data/lib/ipgeolocation_sdk/api/ip_geolocation_api.rb +186 -0
- data/lib/ipgeolocation_sdk/api/ip_security_api.rb +184 -0
- data/lib/ipgeolocation_sdk/api/time_conversion_api.rb +122 -0
- data/lib/ipgeolocation_sdk/api/timezone_api.rb +113 -0
- data/lib/ipgeolocation_sdk/api/user_agent_api.rb +158 -0
- data/lib/ipgeolocation_sdk/api_client.rb +393 -0
- data/lib/ipgeolocation_sdk/api_error.rb +58 -0
- data/lib/ipgeolocation_sdk/configuration.rb +308 -0
- data/lib/ipgeolocation_sdk/models/abuse.rb +305 -0
- data/lib/ipgeolocation_sdk/models/abuse_response.rb +229 -0
- data/lib/ipgeolocation_sdk/models/abuse_response_xml.rb +229 -0
- data/lib/ipgeolocation_sdk/models/asn_connection.rb +238 -0
- data/lib/ipgeolocation_sdk/models/asn_response.rb +230 -0
- data/lib/ipgeolocation_sdk/models/asn_response_asn.rb +368 -0
- data/lib/ipgeolocation_sdk/models/asn_response_xml.rb +229 -0
- data/lib/ipgeolocation_sdk/models/asn_response_xml_asn.rb +364 -0
- data/lib/ipgeolocation_sdk/models/astronomy.rb +445 -0
- data/lib/ipgeolocation_sdk/models/astronomy_evening.rb +301 -0
- data/lib/ipgeolocation_sdk/models/astronomy_location.rb +364 -0
- data/lib/ipgeolocation_sdk/models/astronomy_morning.rb +301 -0
- data/lib/ipgeolocation_sdk/models/astronomy_response.rb +238 -0
- data/lib/ipgeolocation_sdk/models/astronomy_xml_response.rb +238 -0
- data/lib/ipgeolocation_sdk/models/bulk_ip_geolocation.rb +113 -0
- data/lib/ipgeolocation_sdk/models/bulk_ip_security.rb +113 -0
- data/lib/ipgeolocation_sdk/models/country_metadata.rb +240 -0
- data/lib/ipgeolocation_sdk/models/currency.rb +238 -0
- data/lib/ipgeolocation_sdk/models/error_response.rb +220 -0
- data/lib/ipgeolocation_sdk/models/error_xml_response.rb +220 -0
- data/lib/ipgeolocation_sdk/models/error_xml_response_array.rb +220 -0
- data/lib/ipgeolocation_sdk/models/geolocation_response.rb +310 -0
- data/lib/ipgeolocation_sdk/models/geolocation_xml_response.rb +310 -0
- data/lib/ipgeolocation_sdk/models/geolocation_xml_response_array.rb +310 -0
- data/lib/ipgeolocation_sdk/models/get_bulk_ip_geolocation200_response_inner1.rb +105 -0
- data/lib/ipgeolocation_sdk/models/get_bulk_ip_geolocation_request.rb +241 -0
- data/lib/ipgeolocation_sdk/models/get_bulk_ip_security_info200_response_inner1.rb +105 -0
- data/lib/ipgeolocation_sdk/models/location.rb +400 -0
- data/lib/ipgeolocation_sdk/models/location_minimal.rb +373 -0
- data/lib/ipgeolocation_sdk/models/network.rb +238 -0
- data/lib/ipgeolocation_sdk/models/network_asn.rb +310 -0
- data/lib/ipgeolocation_sdk/models/network_company.rb +238 -0
- data/lib/ipgeolocation_sdk/models/network_minimal.rb +229 -0
- data/lib/ipgeolocation_sdk/models/network_minimal_asn.rb +238 -0
- data/lib/ipgeolocation_sdk/models/network_minimal_company.rb +220 -0
- data/lib/ipgeolocation_sdk/models/parse_bulk_user_agent_strings_request.rb +222 -0
- data/lib/ipgeolocation_sdk/models/parse_user_agent_string_request.rb +220 -0
- data/lib/ipgeolocation_sdk/models/security.rb +310 -0
- data/lib/ipgeolocation_sdk/models/security_api_response.rb +292 -0
- data/lib/ipgeolocation_sdk/models/security_apixml_response.rb +292 -0
- data/lib/ipgeolocation_sdk/models/security_apixml_response_array.rb +292 -0
- data/lib/ipgeolocation_sdk/models/time_conversion_response.rb +247 -0
- data/lib/ipgeolocation_sdk/models/time_conversion_xml_response.rb +247 -0
- data/lib/ipgeolocation_sdk/models/time_zone.rb +301 -0
- data/lib/ipgeolocation_sdk/models/time_zone_detailed_response.rb +256 -0
- data/lib/ipgeolocation_sdk/models/time_zone_detailed_xml_response.rb +256 -0
- data/lib/ipgeolocation_sdk/models/time_zone_dst_end.rb +265 -0
- data/lib/ipgeolocation_sdk/models/time_zone_dst_start.rb +265 -0
- data/lib/ipgeolocation_sdk/models/timezone_airport.rb +319 -0
- data/lib/ipgeolocation_sdk/models/timezone_detail.rb +391 -0
- data/lib/ipgeolocation_sdk/models/timezone_detail_dst_end.rb +265 -0
- data/lib/ipgeolocation_sdk/models/timezone_detail_dst_start.rb +265 -0
- data/lib/ipgeolocation_sdk/models/timezone_location.rb +355 -0
- data/lib/ipgeolocation_sdk/models/timezone_locode.rb +283 -0
- data/lib/ipgeolocation_sdk/models/user_agent_data.rb +283 -0
- data/lib/ipgeolocation_sdk/models/user_agent_data_device.rb +247 -0
- data/lib/ipgeolocation_sdk/models/user_agent_data_engine.rb +247 -0
- data/lib/ipgeolocation_sdk/models/user_agent_data_operating_system.rb +256 -0
- data/lib/ipgeolocation_sdk/models/user_agent_xml_data.rb +283 -0
- data/lib/ipgeolocation_sdk/models/user_agent_xml_data_array.rb +283 -0
- data/lib/ipgeolocation_sdk/version.rb +15 -0
- data/lib/ipgeolocation_sdk.rb +107 -0
- data/spec/api/abuse_contact_api_spec.rb +48 -0
- data/spec/api/asn_lookup_api_spec.rb +50 -0
- data/spec/api/astronomy_api_spec.rb +54 -0
- data/spec/api/ip_location_api_spec.rb +67 -0
- data/spec/api/security_api_spec.rb +67 -0
- data/spec/api/time_conversion_api_spec.rb +60 -0
- data/spec/api/timezone_api_spec.rb +56 -0
- data/spec/api/user_agent_api_spec.rb +74 -0
- data/spec/models/abuse_response_spec.rb +42 -0
- data/spec/models/abuse_response_xml_spec.rb +42 -0
- data/spec/models/abuse_spec.rb +90 -0
- data/spec/models/asn_connection_spec.rb +48 -0
- data/spec/models/asn_response_asn_spec.rb +126 -0
- data/spec/models/asn_response_spec.rb +42 -0
- data/spec/models/asn_response_xml_asn_spec.rb +126 -0
- data/spec/models/asn_response_xml_spec.rb +42 -0
- data/spec/models/astronomy_evening_spec.rb +90 -0
- data/spec/models/astronomy_location_spec.rb +132 -0
- data/spec/models/astronomy_morning_spec.rb +90 -0
- data/spec/models/astronomy_response_spec.rb +48 -0
- data/spec/models/astronomy_spec.rb +186 -0
- data/spec/models/astronomy_xml_response_spec.rb +48 -0
- data/spec/models/country_metadata_spec.rb +48 -0
- data/spec/models/currency_spec.rb +48 -0
- data/spec/models/error_response_spec.rb +36 -0
- data/spec/models/error_xml_response_array_spec.rb +36 -0
- data/spec/models/error_xml_response_spec.rb +36 -0
- data/spec/models/geolocation_response_spec.rb +96 -0
- data/spec/models/geolocation_xml_response_array_spec.rb +96 -0
- data/spec/models/geolocation_xml_response_spec.rb +96 -0
- data/spec/models/get_bulk_ip_geolocation200_response_inner1_spec.rb +32 -0
- data/spec/models/get_bulk_ip_geolocation200_response_inner_spec.rb +32 -0
- data/spec/models/get_bulk_ip_geolocation_request_spec.rb +36 -0
- data/spec/models/get_bulk_ip_security_info200_response_inner1_spec.rb +32 -0
- data/spec/models/get_bulk_ip_security_info200_response_inner_spec.rb +32 -0
- data/spec/models/location_minimal_spec.rb +138 -0
- data/spec/models/location_spec.rb +156 -0
- data/spec/models/network_asn_spec.rb +96 -0
- data/spec/models/network_company_spec.rb +48 -0
- data/spec/models/network_minimal_asn_spec.rb +48 -0
- data/spec/models/network_minimal_company_spec.rb +36 -0
- data/spec/models/network_minimal_spec.rb +42 -0
- data/spec/models/network_spec.rb +48 -0
- data/spec/models/parse_bulk_user_agent_strings_request_spec.rb +36 -0
- data/spec/models/parse_user_agent_string_request_spec.rb +36 -0
- data/spec/models/security_api_response_spec.rb +84 -0
- data/spec/models/security_apixml_response_array_spec.rb +84 -0
- data/spec/models/security_apixml_response_spec.rb +84 -0
- data/spec/models/security_spec.rb +96 -0
- data/spec/models/time_conversion_response_spec.rb +54 -0
- data/spec/models/time_conversion_xml_response_spec.rb +54 -0
- data/spec/models/time_zone_detailed_response_spec.rb +60 -0
- data/spec/models/time_zone_detailed_xml_response_spec.rb +60 -0
- data/spec/models/time_zone_dst_end_spec.rb +66 -0
- data/spec/models/time_zone_dst_start_spec.rb +66 -0
- data/spec/models/time_zone_spec.rb +90 -0
- data/spec/models/timezone_airport_spec.rb +102 -0
- data/spec/models/timezone_detail_dst_end_spec.rb +66 -0
- data/spec/models/timezone_detail_dst_start_spec.rb +66 -0
- data/spec/models/timezone_detail_spec.rb +150 -0
- data/spec/models/timezone_location_spec.rb +126 -0
- data/spec/models/timezone_locode_spec.rb +78 -0
- data/spec/models/user_agent_data_device_spec.rb +54 -0
- data/spec/models/user_agent_data_engine_spec.rb +54 -0
- data/spec/models/user_agent_data_operating_system_spec.rb +60 -0
- data/spec/models/user_agent_data_spec.rb +78 -0
- data/spec/models/user_agent_xml_data_array_spec.rb +78 -0
- data/spec/models/user_agent_xml_data_spec.rb +78 -0
- data/spec/spec_helper.rb +111 -0
- metadata +373 -0
@@ -0,0 +1,86 @@
|
|
1
|
+
=begin
|
2
|
+
#IPGeolocation.io - IP intelligence products
|
3
|
+
|
4
|
+
#Ipgeolocation provides a set of APIs to make ip based decisions.
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
Generator version: 7.13.0
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'cgi'
|
14
|
+
|
15
|
+
module IpgeolocationSdk
|
16
|
+
class AbuseContactApi
|
17
|
+
attr_accessor :api_client
|
18
|
+
|
19
|
+
def initialize(api_client = ApiClient.default)
|
20
|
+
@api_client = api_client
|
21
|
+
end
|
22
|
+
# The Abuse Contact API provides essential contact information to report abusive activity associated with IP addresses. By querying an IP address (IPv4 or IPv6), users receive detailed abuse contact data, including the responsible organization, abuse handling role, contact emails, phone numbers, and registered address. This enables users to swiftly take action to report and mitigate threats such as spam, DDoS attacks, and phishing. In addition to abuse-specific contacts, the API also includes registration metadata like the registered country and abuse handle. This empowers cybersecurity teams, hosting providers, and compliance entities to take appropriate legal or administrative action.
|
23
|
+
# @param [Hash] opts the optional parameters
|
24
|
+
# @option opts [String] :ip query parameter 'ip'.
|
25
|
+
# @option opts [String] :excludes You can exclude specific fields from the API response (except the ip field) by listing them in the excludes parameter as a comma-separated list. For example, you want to remove emails and handle from api response, you can put the keys in excludes parameter like this.
|
26
|
+
# @option opts [String] :fields You can customize the API response by using the fields parameter to include only the specific data you need. For example, to retrieve only the role and emails, specify these keys in the fields parameter as shown below.
|
27
|
+
# @return [AbuseResponse]
|
28
|
+
def get_abuse_contact_info(opts = {})
|
29
|
+
data, _status_code, _headers = get_abuse_contact_info_with_http_info(opts)
|
30
|
+
data
|
31
|
+
end
|
32
|
+
|
33
|
+
# The Abuse Contact API provides essential contact information to report abusive activity associated with IP addresses. By querying an IP address (IPv4 or IPv6), users receive detailed abuse contact data, including the responsible organization, abuse handling role, contact emails, phone numbers, and registered address. This enables users to swiftly take action to report and mitigate threats such as spam, DDoS attacks, and phishing. In addition to abuse-specific contacts, the API also includes registration metadata like the registered country and abuse handle. This empowers cybersecurity teams, hosting providers, and compliance entities to take appropriate legal or administrative action.
|
34
|
+
# @param [Hash] opts the optional parameters
|
35
|
+
# @option opts [String] :ip query parameter 'ip'.
|
36
|
+
# @option opts [String] :excludes You can exclude specific fields from the API response (except the ip field) by listing them in the excludes parameter as a comma-separated list. For example, you want to remove emails and handle from api response, you can put the keys in excludes parameter like this.
|
37
|
+
# @option opts [String] :fields You can customize the API response by using the fields parameter to include only the specific data you need. For example, to retrieve only the role and emails, specify these keys in the fields parameter as shown below.
|
38
|
+
# @return [Array<(AbuseResponse, Integer, Hash)>] AbuseResponse data, response status code and response headers
|
39
|
+
def get_abuse_contact_info_with_http_info(opts = {})
|
40
|
+
if @api_client.config.debugging
|
41
|
+
@api_client.config.logger.debug 'Calling API: AbuseContactApi.get_abuse_contact_info ...'
|
42
|
+
end
|
43
|
+
# resource path
|
44
|
+
local_var_path = '/abuse'
|
45
|
+
|
46
|
+
# query parameters
|
47
|
+
query_params = opts[:query_params] || {}
|
48
|
+
query_params[:'ip'] = opts[:'ip'] if !opts[:'ip'].nil?
|
49
|
+
query_params[:'excludes'] = opts[:'excludes'] if !opts[:'excludes'].nil?
|
50
|
+
query_params[:'fields'] = opts[:'fields'] if !opts[:'fields'].nil?
|
51
|
+
|
52
|
+
# header parameters
|
53
|
+
header_params = opts[:header_params] || {}
|
54
|
+
# HTTP header 'Accept' (if needed)
|
55
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/xml']) unless header_params['Accept']
|
56
|
+
|
57
|
+
# form parameters
|
58
|
+
form_params = opts[:form_params] || {}
|
59
|
+
|
60
|
+
# http body (model)
|
61
|
+
post_body = opts[:debug_body]
|
62
|
+
|
63
|
+
# return_type
|
64
|
+
return_type = opts[:debug_return_type] || 'AbuseResponse'
|
65
|
+
|
66
|
+
# auth_names
|
67
|
+
auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
|
68
|
+
|
69
|
+
new_options = opts.merge(
|
70
|
+
:operation => :"AbuseContactApi.get_abuse_contact_info",
|
71
|
+
:header_params => header_params,
|
72
|
+
:query_params => query_params,
|
73
|
+
:form_params => form_params,
|
74
|
+
:body => post_body,
|
75
|
+
:auth_names => auth_names,
|
76
|
+
:return_type => return_type
|
77
|
+
)
|
78
|
+
|
79
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
80
|
+
if @api_client.config.debugging
|
81
|
+
@api_client.config.logger.debug "API called: AbuseContactApi#get_abuse_contact_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
82
|
+
end
|
83
|
+
return data, status_code, headers
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
@@ -0,0 +1,92 @@
|
|
1
|
+
=begin
|
2
|
+
#IPGeolocation.io - IP intelligence products
|
3
|
+
|
4
|
+
#Ipgeolocation provides a set of APIs to make ip based decisions.
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
Generator version: 7.13.0
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'cgi'
|
14
|
+
|
15
|
+
module IpgeolocationSdk
|
16
|
+
class ASNLookupApi
|
17
|
+
attr_accessor :api_client
|
18
|
+
|
19
|
+
def initialize(api_client = ApiClient.default)
|
20
|
+
@api_client = api_client
|
21
|
+
end
|
22
|
+
# ASN API provides comprehensive details for an ASN including the as name, organization name, the country of registration, associated domain, and its type (ISP, host provider, or business). The API also shows the allocation date of provided ASN and if it is currently allocated or not. It also contains the routing information including peering, upstreams, and downstreams to help understand the relationship between different ASNs. Example Use Cases: - Looking up ASN information for an IP address (e.g., `GET /asn?ip=8.8.8.8`) - Retrieving ASN information for a specific ASN number (e.g., `GET /asn?asn=12345`) - Getting peering relationships for an ASN (e.g., `GET /asn?asn=12345&include=peers`)
|
23
|
+
# @param [Hash] opts the optional parameters
|
24
|
+
# @option opts [String] :ip query parameter 'ip'.
|
25
|
+
# @option opts [Integer] :asn query paramter 'asn'.
|
26
|
+
# @option opts [String] :include This parameter can have four options: a) peers b) downstreams c) upstreams d) routes e) whois_response. You may add any of them in comma-separated way. In order to get the ASN details with peering data, pass peers string in the include parameter like mentioned below.
|
27
|
+
# @option opts [String] :excludes You can exclude fields from the response according to you requirement with the exception of ip field. For example, you want to remove date_allocated and allocation_status from api response, you can put the keys in excludes parameter like this.
|
28
|
+
# @option opts [String] :fields You can filter out only those fields which you want to see in the response by using the fields parameter. To retrieve only the AS organization, its country and downstreams in api response, you can put the keys in fields parameter like this. API will combine these fields with the default ASN response. Note: Parameters `peers, downstreams, upstreams, routes, whois_response` can be used in both `include` , and `fields`. If you use include and fields at the same time, fields parameter will be considered only.
|
29
|
+
# @return [ASNResponse]
|
30
|
+
def get_asn_info(opts = {})
|
31
|
+
data, _status_code, _headers = get_asn_info_with_http_info(opts)
|
32
|
+
data
|
33
|
+
end
|
34
|
+
|
35
|
+
# ASN API provides comprehensive details for an ASN including the as name, organization name, the country of registration, associated domain, and its type (ISP, host provider, or business). The API also shows the allocation date of provided ASN and if it is currently allocated or not. It also contains the routing information including peering, upstreams, and downstreams to help understand the relationship between different ASNs. Example Use Cases: - Looking up ASN information for an IP address (e.g., `GET /asn?ip=8.8.8.8`) - Retrieving ASN information for a specific ASN number (e.g., `GET /asn?asn=12345`) - Getting peering relationships for an ASN (e.g., `GET /asn?asn=12345&include=peers`)
|
36
|
+
# @param [Hash] opts the optional parameters
|
37
|
+
# @option opts [String] :ip query parameter 'ip'.
|
38
|
+
# @option opts [Integer] :asn query paramter 'asn'.
|
39
|
+
# @option opts [String] :include This parameter can have four options: a) peers b) downstreams c) upstreams d) routes e) whois_response. You may add any of them in comma-separated way. In order to get the ASN details with peering data, pass peers string in the include parameter like mentioned below.
|
40
|
+
# @option opts [String] :excludes You can exclude fields from the response according to you requirement with the exception of ip field. For example, you want to remove date_allocated and allocation_status from api response, you can put the keys in excludes parameter like this.
|
41
|
+
# @option opts [String] :fields You can filter out only those fields which you want to see in the response by using the fields parameter. To retrieve only the AS organization, its country and downstreams in api response, you can put the keys in fields parameter like this. API will combine these fields with the default ASN response. Note: Parameters `peers, downstreams, upstreams, routes, whois_response` can be used in both `include` , and `fields`. If you use include and fields at the same time, fields parameter will be considered only.
|
42
|
+
# @return [Array<(ASNResponse, Integer, Hash)>] ASNResponse data, response status code and response headers
|
43
|
+
def get_asn_info_with_http_info(opts = {})
|
44
|
+
if @api_client.config.debugging
|
45
|
+
@api_client.config.logger.debug 'Calling API: ASNLookupApi.get_asn_info ...'
|
46
|
+
end
|
47
|
+
# resource path
|
48
|
+
local_var_path = '/asn'
|
49
|
+
|
50
|
+
# query parameters
|
51
|
+
query_params = opts[:query_params] || {}
|
52
|
+
query_params[:'ip'] = opts[:'ip'] if !opts[:'ip'].nil?
|
53
|
+
query_params[:'asn'] = opts[:'asn'] if !opts[:'asn'].nil?
|
54
|
+
query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
|
55
|
+
query_params[:'excludes'] = opts[:'excludes'] if !opts[:'excludes'].nil?
|
56
|
+
query_params[:'fields'] = opts[:'fields'] if !opts[:'fields'].nil?
|
57
|
+
|
58
|
+
# header parameters
|
59
|
+
header_params = opts[:header_params] || {}
|
60
|
+
# HTTP header 'Accept' (if needed)
|
61
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/xml']) unless header_params['Accept']
|
62
|
+
|
63
|
+
# form parameters
|
64
|
+
form_params = opts[:form_params] || {}
|
65
|
+
|
66
|
+
# http body (model)
|
67
|
+
post_body = opts[:debug_body]
|
68
|
+
|
69
|
+
# return_type
|
70
|
+
return_type = opts[:debug_return_type] || 'ASNResponse'
|
71
|
+
|
72
|
+
# auth_names
|
73
|
+
auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
|
74
|
+
|
75
|
+
new_options = opts.merge(
|
76
|
+
:operation => :"ASNLookupApi.get_asn_info",
|
77
|
+
:header_params => header_params,
|
78
|
+
:query_params => query_params,
|
79
|
+
:form_params => form_params,
|
80
|
+
:body => post_body,
|
81
|
+
:auth_names => auth_names,
|
82
|
+
:return_type => return_type
|
83
|
+
)
|
84
|
+
|
85
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
86
|
+
if @api_client.config.debugging
|
87
|
+
@api_client.config.logger.debug "API called: ASNLookupApi#get_asn_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
88
|
+
end
|
89
|
+
return data, status_code, headers
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
@@ -0,0 +1,116 @@
|
|
1
|
+
=begin
|
2
|
+
#IPGeolocation.io - IP intelligence products
|
3
|
+
|
4
|
+
#Ipgeolocation provides a set of APIs to make ip based decisions.
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
Generator version: 7.13.0
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'cgi'
|
14
|
+
|
15
|
+
module IpgeolocationSdk
|
16
|
+
class AstronomyApi
|
17
|
+
attr_accessor :api_client
|
18
|
+
|
19
|
+
def initialize(api_client = ApiClient.default)
|
20
|
+
@api_client = api_client
|
21
|
+
end
|
22
|
+
# The Astronomy API provides the location-based rise and set times for the Sun and Moon along with the current position, distance from earth, and azimuth of the Sun and the Moon for a specific date at the queried time.
|
23
|
+
# @param [Hash] opts the optional parameters
|
24
|
+
# @option opts [String] :ip query paramter 'ip'. If not provided, will be your network IP
|
25
|
+
# @option opts [String] :location query paramter 'location'. If not provided, will be your ip location
|
26
|
+
# @option opts [String] :lat query paramter 'lat'.
|
27
|
+
# @option opts [String] :long query paramter 'long'.
|
28
|
+
# @option opts [String] :time_zone
|
29
|
+
# @option opts [String] :date The date (YYYY-MM-DD) to lookup for. default will be the current date
|
30
|
+
# @option opts [Float] :elevation query parameter 'elevation'
|
31
|
+
# @option opts [String] :output Desired output format.
|
32
|
+
# @option opts [String] :lang By default, the API responds in English. You can change the response language by passing the language code as a query parameter `lang`. Multi language feature is available only for `paid users`.
|
33
|
+
# @return [AstronomyResponse]
|
34
|
+
def get_astronomy_details(opts = {})
|
35
|
+
data, _status_code, _headers = get_astronomy_details_with_http_info(opts)
|
36
|
+
data
|
37
|
+
end
|
38
|
+
|
39
|
+
# The Astronomy API provides the location-based rise and set times for the Sun and Moon along with the current position, distance from earth, and azimuth of the Sun and the Moon for a specific date at the queried time.
|
40
|
+
# @param [Hash] opts the optional parameters
|
41
|
+
# @option opts [String] :ip query paramter 'ip'. If not provided, will be your network IP
|
42
|
+
# @option opts [String] :location query paramter 'location'. If not provided, will be your ip location
|
43
|
+
# @option opts [String] :lat query paramter 'lat'.
|
44
|
+
# @option opts [String] :long query paramter 'long'.
|
45
|
+
# @option opts [String] :time_zone
|
46
|
+
# @option opts [String] :date The date (YYYY-MM-DD) to lookup for. default will be the current date
|
47
|
+
# @option opts [Float] :elevation query parameter 'elevation'
|
48
|
+
# @option opts [String] :output Desired output format.
|
49
|
+
# @option opts [String] :lang By default, the API responds in English. You can change the response language by passing the language code as a query parameter `lang`. Multi language feature is available only for `paid users`.
|
50
|
+
# @return [Array<(AstronomyResponse, Integer, Hash)>] AstronomyResponse data, response status code and response headers
|
51
|
+
def get_astronomy_details_with_http_info(opts = {})
|
52
|
+
if @api_client.config.debugging
|
53
|
+
@api_client.config.logger.debug 'Calling API: AstronomyApi.get_astronomy_details ...'
|
54
|
+
end
|
55
|
+
if @api_client.config.client_side_validation && !opts[:'elevation'].nil? && opts[:'elevation'] > 10000
|
56
|
+
fail ArgumentError, 'invalid value for "opts[:"elevation"]" when calling AstronomyApi.get_astronomy_details, must be smaller than or equal to 10000.'
|
57
|
+
end
|
58
|
+
|
59
|
+
if @api_client.config.client_side_validation && !opts[:'elevation'].nil? && opts[:'elevation'] < 0
|
60
|
+
fail ArgumentError, 'invalid value for "opts[:"elevation"]" when calling AstronomyApi.get_astronomy_details, must be greater than or equal to 0.'
|
61
|
+
end
|
62
|
+
|
63
|
+
allowable_values = ["en", "de", "ru", "ja", "fr", "cn", "es", "cs", "it", "ko", "fa", "pt"]
|
64
|
+
if @api_client.config.client_side_validation && opts[:'lang'] && !allowable_values.include?(opts[:'lang'])
|
65
|
+
fail ArgumentError, "invalid value for \"lang\", must be one of #{allowable_values}"
|
66
|
+
end
|
67
|
+
# resource path
|
68
|
+
local_var_path = '/astronomy'
|
69
|
+
|
70
|
+
# query parameters
|
71
|
+
query_params = opts[:query_params] || {}
|
72
|
+
query_params[:'ip'] = opts[:'ip'] if !opts[:'ip'].nil?
|
73
|
+
query_params[:'location'] = opts[:'location'] if !opts[:'location'].nil?
|
74
|
+
query_params[:'lat'] = opts[:'lat'] if !opts[:'lat'].nil?
|
75
|
+
query_params[:'long'] = opts[:'long'] if !opts[:'long'].nil?
|
76
|
+
query_params[:'time_zone'] = opts[:'time_zone'] if !opts[:'time_zone'].nil?
|
77
|
+
query_params[:'date'] = opts[:'date'] if !opts[:'date'].nil?
|
78
|
+
query_params[:'elevation'] = opts[:'elevation'] if !opts[:'elevation'].nil?
|
79
|
+
query_params[:'output'] = opts[:'output'] if !opts[:'output'].nil?
|
80
|
+
query_params[:'lang'] = opts[:'lang'] if !opts[:'lang'].nil?
|
81
|
+
|
82
|
+
# header parameters
|
83
|
+
header_params = opts[:header_params] || {}
|
84
|
+
# HTTP header 'Accept' (if needed)
|
85
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/xml']) unless header_params['Accept']
|
86
|
+
|
87
|
+
# form parameters
|
88
|
+
form_params = opts[:form_params] || {}
|
89
|
+
|
90
|
+
# http body (model)
|
91
|
+
post_body = opts[:debug_body]
|
92
|
+
|
93
|
+
# return_type
|
94
|
+
return_type = opts[:debug_return_type] || 'AstronomyResponse'
|
95
|
+
|
96
|
+
# auth_names
|
97
|
+
auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
|
98
|
+
|
99
|
+
new_options = opts.merge(
|
100
|
+
:operation => :"AstronomyApi.get_astronomy_details",
|
101
|
+
:header_params => header_params,
|
102
|
+
:query_params => query_params,
|
103
|
+
:form_params => form_params,
|
104
|
+
:body => post_body,
|
105
|
+
:auth_names => auth_names,
|
106
|
+
:return_type => return_type
|
107
|
+
)
|
108
|
+
|
109
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
110
|
+
if @api_client.config.debugging
|
111
|
+
@api_client.config.logger.debug "API called: AstronomyApi#get_astronomy_details\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
112
|
+
end
|
113
|
+
return data, status_code, headers
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
@@ -0,0 +1,186 @@
|
|
1
|
+
=begin
|
2
|
+
#IPGeolocation.io - IP intelligence products
|
3
|
+
|
4
|
+
#Ipgeolocation provides a set of APIs to make ip based decisions.
|
5
|
+
|
6
|
+
The version of the OpenAPI document: 2.0
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
Generator version: 7.13.0
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'cgi'
|
14
|
+
|
15
|
+
module IpgeolocationSdk
|
16
|
+
class IPGeolocationApi
|
17
|
+
attr_accessor :api_client
|
18
|
+
|
19
|
+
def initialize(api_client = ApiClient.default)
|
20
|
+
@api_client = api_client
|
21
|
+
end
|
22
|
+
# This feature is available only on our paid API subscriptions (STANDARD or ADVANCED). This endpoint allows you to perform the geolocation lookup for multiple IPv4, IPv6 addresses or domain names (maximum 50,000) at the same time. The requests count per lookup is equal to total IP addresses or domain names passed. To perform bulk IP Geolocation Lookup, send a POST request and pass the \"ips\" array as JSON data along with it.
|
23
|
+
# @param get_bulk_ip_geolocation_request [GetBulkIpGeolocationRequest]
|
24
|
+
# @param [Hash] opts the optional parameters
|
25
|
+
# @option opts [String] :lang By default, the API responds in English. You can change the response language by passing the language code as a query parameter `lang`. Multi language feature is available only for `paid users`.
|
26
|
+
# @option opts [String] :fields you can filter the API response by specifying the fields that you need, instead of getting the full response. To do this, pass the desired field names using the `fields` query parameter with each field represented as a dot-separated path.
|
27
|
+
# @option opts [String] :excludes you can also filter the API response by excluding specific fields (except the IP address) that you don't need. To do this, pass the unwanted field names using the excludes query parameter, with each field represented as a dot-separated path
|
28
|
+
# @option opts [String] :include IP Geolocation API also provides IP-Security, abuse, timezone, user-agent and DMA (Designated Market Area) code, which is specifically used in the US for marketing and regional targeting information on Advanced API subscription, but doesn't respond it by default. To get these information along with the geolocation information, you must pass the `include=security` or `include=abuse` or `include=dma` or `include=time_zone` or `include=user-agent` or you can fetch multiples by adding values in comma-separated way. In addition to that, IPGeolocation API also provide hostname lookup for an IP address on all the paid API subscriptions (STANDARD and ADVANCED), but doesn't respond it by default. To get the hostname for an IP address, you can pass one of the three values `hostname, liveHostname, hostnameFallbackLive` as a URL parameter `include=`.
|
29
|
+
# @option opts [String] :output Desired output format(json or xml).
|
30
|
+
# @return [Array<GetBulkIpGeolocation200ResponseInner>]
|
31
|
+
def get_bulk_ip_geolocation(opts = {})
|
32
|
+
data, _status_code, _headers = get_bulk_ip_geolocation_with_http_info(opts)
|
33
|
+
data
|
34
|
+
end
|
35
|
+
|
36
|
+
# This feature is available only on our paid API subscriptions (STANDARD or ADVANCED). This endpoint allows you to perform the geolocation lookup for multiple IPv4, IPv6 addresses or domain names (maximum 50,000) at the same time. The requests count per lookup is equal to total IP addresses or domain names passed. To perform bulk IP Geolocation Lookup, send a POST request and pass the \"ips\" array as JSON data along with it.
|
37
|
+
# @param get_bulk_ip_geolocation_request [GetBulkIpGeolocationRequest]
|
38
|
+
# @param [Hash] opts the optional parameters
|
39
|
+
# @option opts [String] :lang By default, the API responds in English. You can change the response language by passing the language code as a query parameter `lang`. Multi language feature is available only for `paid users`.
|
40
|
+
# @option opts [String] :fields you can filter the API response by specifying the fields that you need, instead of getting the full response. To do this, pass the desired field names using the `fields` query parameter with each field represented as a dot-separated path.
|
41
|
+
# @option opts [String] :excludes you can also filter the API response by excluding specific fields (except the IP address) that you don't need. To do this, pass the unwanted field names using the excludes query parameter, with each field represented as a dot-separated path
|
42
|
+
# @option opts [String] :include IP Geolocation API also provides IP-Security, abuse, timezone, user-agent and DMA (Designated Market Area) code, which is specifically used in the US for marketing and regional targeting information on Advanced API subscription, but doesn't respond it by default. To get these information along with the geolocation information, you must pass the `include=security` or `include=abuse` or `include=dma` or `include=time_zone` or `include=user-agent` or you can fetch multiples by adding values in comma-separated way. In addition to that, IPGeolocation API also provide hostname lookup for an IP address on all the paid API subscriptions (STANDARD and ADVANCED), but doesn't respond it by default. To get the hostname for an IP address, you can pass one of the three values `hostname, liveHostname, hostnameFallbackLive` as a URL parameter `include=`.
|
43
|
+
# @option opts [String] :output Desired output format(json or xml).
|
44
|
+
# @return [Array<(Array<GetBulkIpGeolocation200ResponseInner>, Integer, Hash)>] Array<GetBulkIpGeolocation200ResponseInner> data, response status code and response headers
|
45
|
+
def get_bulk_ip_geolocation_with_http_info(opts = {})
|
46
|
+
if @api_client.config.debugging
|
47
|
+
@api_client.config.logger.debug 'Calling API: IPGeolocationApi.get_bulk_ip_geolocation ...'
|
48
|
+
end
|
49
|
+
# verify the required parameter 'ips' in opts is set
|
50
|
+
|
51
|
+
if @api_client.config.client_side_validation && (!opts[:ips].is_a?(Array) || opts[:ips].empty?)
|
52
|
+
fail ArgumentError, "Missing the required parameter 'ips' (non-empty Array) when calling IPGeolocationApi.get_bulk_ip_geolocation"
|
53
|
+
end
|
54
|
+
|
55
|
+
allowable_values = ["en", "de", "ru", "ja", "fr", "cn", "es", "cs", "it", "ko", "fa", "pt"]
|
56
|
+
if @api_client.config.client_side_validation && opts[:'lang'] && !allowable_values.include?(opts[:'lang'])
|
57
|
+
fail ArgumentError, "invalid value for \"lang\", must be one of #{allowable_values}"
|
58
|
+
end
|
59
|
+
# resource path
|
60
|
+
local_var_path = '/ipgeo-bulk'
|
61
|
+
|
62
|
+
# query parameters
|
63
|
+
query_params = opts[:query_params] || {}
|
64
|
+
query_params[:'lang'] = opts[:'lang'] if !opts[:'lang'].nil?
|
65
|
+
query_params[:'fields'] = opts[:'fields'] if !opts[:'fields'].nil?
|
66
|
+
query_params[:'excludes'] = opts[:'excludes'] if !opts[:'excludes'].nil?
|
67
|
+
query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
|
68
|
+
query_params[:'output'] = opts[:'output'] if !opts[:'output'].nil?
|
69
|
+
|
70
|
+
# header parameters
|
71
|
+
header_params = opts[:header_params] || {}
|
72
|
+
# HTTP header 'Accept' (if needed)
|
73
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/xml']) unless header_params['Accept']
|
74
|
+
# HTTP header 'Content-Type'
|
75
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
76
|
+
if !content_type.nil?
|
77
|
+
header_params['Content-Type'] = content_type
|
78
|
+
end
|
79
|
+
|
80
|
+
# form parameters
|
81
|
+
form_params = opts[:form_params] || {}
|
82
|
+
|
83
|
+
# http body (model)
|
84
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body({ ips: opts[:ips] })
|
85
|
+
|
86
|
+
# return_type
|
87
|
+
return_type = opts[:debug_return_type] || 'Array<BulkIPGeolocation>'
|
88
|
+
|
89
|
+
# auth_names
|
90
|
+
auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
|
91
|
+
|
92
|
+
new_options = opts.merge(
|
93
|
+
:operation => :"IPLocationApi.get_bulk_ip_geolocation",
|
94
|
+
:header_params => header_params,
|
95
|
+
:query_params => query_params,
|
96
|
+
:form_params => form_params,
|
97
|
+
:body => post_body,
|
98
|
+
:auth_names => auth_names,
|
99
|
+
:return_type => return_type
|
100
|
+
)
|
101
|
+
|
102
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
103
|
+
if @api_client.config.debugging
|
104
|
+
@api_client.config.logger.debug "API called: IPGeolocationApi#get_bulk_ip_geolocation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
105
|
+
end
|
106
|
+
return data, status_code, headers
|
107
|
+
end
|
108
|
+
|
109
|
+
# IP Geolocation API provides real-time and accurate geolocation, network, abuse, and security information for any IPv4 or IPv6 address and domain name along with the user-agent detail for the provided user-agent string. You can geolocate your online visitors and provide them the customized user-experience accordingly.
|
110
|
+
# @param [Hash] opts the optional parameters
|
111
|
+
# @option opts [String] :ip In order to find geolocation information about an IP (ipv4 ipv6) address or a domain name, pass it as a query parameter ip. When this endpoint is queried without an IP address, it returns the geolocation information of the device/client which is calling it
|
112
|
+
# @option opts [String] :lang By default, the API responds in English. You can change the response language by passing the language code as a query parameter `lang`. Multi language feature is available only for `paid users`.
|
113
|
+
# @option opts [String] :fields you can filter the API response by specifying the fields that you need, instead of getting the full response. To do this, pass the desired field names using the `fields` query parameter with each field represented as a dot-separated path.
|
114
|
+
# @option opts [String] :excludes you can also filter the API response by excluding specific fields (except the IP address) that you don't need. To do this, pass the unwanted field names using the excludes query parameter, with each field represented as a dot-separated path
|
115
|
+
# @option opts [String] :include IP Geolocation API also provides IP-Security, abuse, timezone, user-agent and DMA (Designated Market Area) code, which is specifically used in the US for marketing and regional targeting information on Advanced API subscription, but doesn't respond it by default. To get these information along with the geolocation information, you must pass the `include=security` or `include=abuse` or `include=dma` or `include=time_zone` or `include=user-agent` or you can fetch multiples by adding values in comma-separated way. In addition to that, IPGeolocation API also provide hostname lookup for an IP address on all the paid API subscriptions (STANDARD and ADVANCED), but doesn't respond it by default. To get the hostname for an IP address, you can pass one of the three values `hostname, liveHostname, hostnameFallbackLive` as a URL parameter `include=`.
|
116
|
+
# @option opts [String] :output Desired output format (json or xml).
|
117
|
+
# @return [GeolocationResponse]
|
118
|
+
def get_ip_geolocation(opts = {})
|
119
|
+
data, _status_code, _headers = get_ip_geolocation_with_http_info(opts)
|
120
|
+
data
|
121
|
+
end
|
122
|
+
|
123
|
+
# IP Geolocation API provides real-time and accurate geolocation, network, abuse, and security information for any IPv4 or IPv6 address and domain name along with the user-agent detail for the provided user-agent string. You can geolocate your online visitors and provide them the customized user-experience accordingly.
|
124
|
+
# @param [Hash] opts the optional parameters
|
125
|
+
# @option opts [String] :ip In order to find geolocation information about an IP (ipv4 ipv6) address or a domain name, pass it as a query parameter ip. When this endpoint is queried without an IP address, it returns the geolocation information of the device/client which is calling it
|
126
|
+
# @option opts [String] :lang By default, the API responds in English. You can change the response language by passing the language code as a query parameter `lang`. Multi language feature is available only for `paid users`.
|
127
|
+
# @option opts [String] :fields you can filter the API response by specifying the fields that you need, instead of getting the full response. To do this, pass the desired field names using the `fields` query parameter with each field represented as a dot-separated path.
|
128
|
+
# @option opts [String] :excludes you can also filter the API response by excluding specific fields (except the IP address) that you don't need. To do this, pass the unwanted field names using the excludes query parameter, with each field represented as a dot-separated path
|
129
|
+
# @option opts [String] :include IP Geolocation API also provides IP-Security, abuse, timezone, user-agent and DMA (Designated Market Area) code, which is specifically used in the US for marketing and regional targeting information on Advanced API subscription, but doesn't respond it by default. To get these information along with the geolocation information, you must pass the `include=security` or `include=abuse` or `include=dma` or `include=time_zone` or `include=user-agent` or you can fetch multiples by adding values in comma-separated way. In addition to that, IPGeolocation API also provide hostname lookup for an IP address on all the paid API subscriptions (STANDARD and ADVANCED), but doesn't respond it by default. To get the hostname for an IP address, you can pass one of the three values `hostname, liveHostname, hostnameFallbackLive` as a URL parameter `include=`.
|
130
|
+
# @option opts [String] :output Desired output format (json or xml).
|
131
|
+
# @return [Array<(GeolocationResponse, Integer, Hash)>] GeolocationResponse data, response status code and response headers
|
132
|
+
def get_ip_geolocation_with_http_info(opts = {})
|
133
|
+
if @api_client.config.debugging
|
134
|
+
@api_client.config.logger.debug 'Calling API: IPGeolocationApi.get_ip_geolocation ...'
|
135
|
+
end
|
136
|
+
allowable_values = ["en", "de", "ru", "ja", "fr", "cn", "es", "cs", "it", "ko", "fa", "pt"]
|
137
|
+
if @api_client.config.client_side_validation && opts[:'lang'] && !allowable_values.include?(opts[:'lang'])
|
138
|
+
fail ArgumentError, "invalid value for \"lang\", must be one of #{allowable_values}"
|
139
|
+
end
|
140
|
+
# resource path
|
141
|
+
local_var_path = '/ipgeo'
|
142
|
+
|
143
|
+
# query parameters
|
144
|
+
query_params = opts[:query_params] || {}
|
145
|
+
query_params[:'ip'] = opts[:'ip'] if !opts[:'ip'].nil?
|
146
|
+
query_params[:'lang'] = opts[:'lang'] if !opts[:'lang'].nil?
|
147
|
+
query_params[:'fields'] = opts[:'fields'] if !opts[:'fields'].nil?
|
148
|
+
query_params[:'excludes'] = opts[:'excludes'] if !opts[:'excludes'].nil?
|
149
|
+
query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
|
150
|
+
query_params[:'output'] = opts[:'output'] if !opts[:'output'].nil?
|
151
|
+
|
152
|
+
# header parameters
|
153
|
+
header_params = opts[:header_params] || {}
|
154
|
+
# HTTP header 'Accept' (if needed)
|
155
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json', 'application/xml']) unless header_params['Accept']
|
156
|
+
|
157
|
+
# form parameters
|
158
|
+
form_params = opts[:form_params] || {}
|
159
|
+
|
160
|
+
# http body (model)
|
161
|
+
post_body = opts[:debug_body]
|
162
|
+
|
163
|
+
# return_type
|
164
|
+
return_type = opts[:debug_return_type] || 'GeolocationResponse'
|
165
|
+
|
166
|
+
# auth_names
|
167
|
+
auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
|
168
|
+
|
169
|
+
new_options = opts.merge(
|
170
|
+
:operation => :"IPLocationApi.get_ip_geolocation",
|
171
|
+
:header_params => header_params,
|
172
|
+
:query_params => query_params,
|
173
|
+
:form_params => form_params,
|
174
|
+
:body => post_body,
|
175
|
+
:auth_names => auth_names,
|
176
|
+
:return_type => return_type
|
177
|
+
)
|
178
|
+
|
179
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
180
|
+
if @api_client.config.debugging
|
181
|
+
@api_client.config.logger.debug "API called: IPGeolocationApi#get_ip_geolocation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
182
|
+
end
|
183
|
+
return data, status_code, headers
|
184
|
+
end
|
185
|
+
end
|
186
|
+
end
|