-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | IP2Proxy Haskell package for proxy detection. -- -- This Haskell package allows users to query an IP address to determine -- if it was being used as VPN anonymizer, open proxies, web proxies, Tor -- exits, data center, web hosting (DCH) range, search engine robots -- (SES) and residential (RES). @package ip2proxy @version 3.2.1 -- | This Haskell package allows users to query an IP address to determine -- if it was being used as open proxy, web proxy, VPN anonymizer and TOR -- exits. -- -- IP2Proxy LITE BIN databases are available for free at -- http://lite.ip2location.com/ module IP2Proxy -- | Contains the BIN database file metadata. data Meta -- | Contains proxy results. data IP2ProxyRecord IP2ProxyRecord :: String -> String -> String -> String -> String -> String -> String -> String -> String -> String -> String -> String -> String -> Int -> IP2ProxyRecord -- | Country code [country_short] :: IP2ProxyRecord -> String -- | Country name [country_long] :: IP2ProxyRecord -> String -- | Region name [region] :: IP2ProxyRecord -> String -- | City name [city] :: IP2ProxyRecord -> String -- | ISP name [isp] :: IP2ProxyRecord -> String -- | Proxy type [proxy_type] :: IP2ProxyRecord -> String -- | Domain [domain] :: IP2ProxyRecord -> String -- | Usage type [usage_type] :: IP2ProxyRecord -> String -- | ASN [asn] :: IP2ProxyRecord -> String -- | AS [as] :: IP2ProxyRecord -> String -- | Last seen [last_seen] :: IP2ProxyRecord -> String -- | Threat [threat] :: IP2ProxyRecord -> String -- | Provider [provider] :: IP2ProxyRecord -> String -- | Is proxy [is_proxy] :: IP2ProxyRecord -> Int -- | The getModuleVersion function returns a string containing the -- module version. getModuleVersion :: String -- | The getPackageVersion function returns a string containing the -- package version. It takes 1 argument; the metadata from open -- function (Meta record). getPackageVersion :: Meta -> String -- | The getDatabaseVersion function returns a string containing the -- database version. It takes 1 argument; the metadata from open -- function (Meta record). getDatabaseVersion :: Meta -> String -- | The open function returns the Meta record containing metadata -- from the BIN database file. It takes one argument, of type -- String, which is the path to the BIN database file. open :: String -> IO Meta -- | The getAll function returns an IP2ProxyRecord containing proxy -- data for an IP address. It takes 3 arguments; the BIN database file -- path (String), the metadata from open function (Meta record) -- & either IPv4 or IPv6 address (String). getAll :: String -> Meta -> String -> IO IP2ProxyRecord -- | The getCountryShort function returns the country code for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getCountryShort :: String -> Meta -> String -> IO String -- | The getCountryLong function returns the country name for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getCountryLong :: String -> Meta -> String -> IO String -- | The getRegion function returns the region name for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getRegion :: String -> Meta -> String -> IO String -- | The getCity function returns the city name for an IP address. -- It takes 3 arguments; the BIN database file path (String), the -- metadata from open function (Meta record) & either IPv4 or -- IPv6 address (String). getCity :: String -> Meta -> String -> IO String -- | The getISP function returns the ISP name for an IP address. It -- takes 3 arguments; the BIN database file path (String), the metadata -- from open function (Meta record) & either IPv4 or IPv6 -- address (String). getISP :: String -> Meta -> String -> IO String -- | The getProxyType function returns the proxy type for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getProxyType :: String -> Meta -> String -> IO String -- | The getDomain function returns the domain name for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getDomain :: String -> Meta -> String -> IO String -- | The getUsageType function returns the usage type for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getUsageType :: String -> Meta -> String -> IO String -- | The getASN function returns the autonomous system number for an -- IP address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getASN :: String -> Meta -> String -> IO String -- | The getAS function returns the autonomous system name for an IP -- address. It takes 3 arguments; the BIN database file path (String), -- the metadata from open function (Meta record) & either IPv4 -- or IPv6 address (String). getAS :: String -> Meta -> String -> IO String -- | The getLastSeen function returns the number of days last seen -- for an IP address. It takes 3 arguments; the BIN database file path -- (String), the metadata from open function (Meta record) & -- either IPv4 or IPv6 address (String). getLastSeen :: String -> Meta -> String -> IO String -- | The getThreat function returns the threat type of the proxy. It -- takes 3 arguments; the BIN database file path (String), the metadata -- from open function (Meta record) & either IPv4 or IPv6 -- address (String). getThreat :: String -> Meta -> String -> IO String -- | The getProvider function returns the provider of the proxy. It -- takes 3 arguments; the BIN database file path (String), the metadata -- from open function (Meta record) & either IPv4 or IPv6 -- address (String). getProvider :: String -> Meta -> String -> IO String -- | The isProxy function returns 0 if IP is not a proxy, 1 if is a -- proxy and not data center IP, 2 if is a proxy and is a data center IP, -- -1 if error. It takes 3 arguments; the BIN database file path -- (String), the metadata from open function (Meta record) & -- either IPv4 or IPv6 address (String). isProxy :: String -> Meta -> String -> IO String instance GHC.Show.Show IP2Proxy.IP2ProxyRecord instance GHC.Show.Show IP2Proxy.Meta -- | This Haskell package allows users to query an IP address to determine -- if it was being used as open proxy, web proxy, VPN anonymizer and TOR -- exits. -- -- IP2Proxy Web Service API subscription at -- https://www.ip2location.com/web-service/ip2proxy module IP2ProxyWebService -- | Contains the web service results. data WSResult WSResult :: String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> WSResult -- | Response status or error [response] :: WSResult -> String -- | Country code [countryCode] :: WSResult -> Maybe String -- | Country name [countryName] :: WSResult -> Maybe String -- | Region name [regionName] :: WSResult -> Maybe String -- | City name [cityName] :: WSResult -> Maybe String -- | ISP name [isp] :: WSResult -> Maybe String -- | Domain [domain] :: WSResult -> Maybe String -- | Usage type [usageType] :: WSResult -> Maybe String -- | Autonomous System Number [asn] :: WSResult -> Maybe String -- | Autonomous System [as] :: WSResult -> Maybe String -- | Proxy last seen in days [lastSeen] :: WSResult -> Maybe String -- | Proxy type [proxyType] :: WSResult -> Maybe String -- | Threat type [threat] :: WSResult -> Maybe String -- | Whether is a proxy [isProxy] :: WSResult -> Maybe String -- | VPN provider name [provider] :: WSResult -> Maybe String -- | Contains the web service configuration. data WSConfig -- | The openWS function initializes the web service configuration. -- It takes 3 arguments; the web service API key, the API package to call -- & whether to use SSL. openWS :: String -> String -> Bool -> IO WSConfig -- | The lookUp function returns an WSResult containing proxy data -- for an IP address. It takes 2 arguments; the web service configuration -- from openWS function (WSConfig record) & either IPv4 or -- IPv6 address (String). lookUp :: WSConfig -> String -> IO WSResult -- | The getCredit function returns an WSResult containing web -- service credit balance for the API key. It takes 1 argument; the web -- service configuration from openWS function (WSConfig record). getCredit :: WSConfig -> IO WSResult instance Data.Aeson.Types.ToJSON.ToJSON IP2ProxyWebService.WSResult instance Data.Aeson.Types.FromJSON.FromJSON IP2ProxyWebService.WSResult instance GHC.Show.Show IP2ProxyWebService.WSConfig instance GHC.Classes.Eq IP2ProxyWebService.WSResult instance GHC.Show.Show IP2ProxyWebService.WSResult