Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Ruby) AbuseIPDB Check EndpointThe check endpoint accepts a single IP address (v4 or v6). Optionally you may set the maxAgeInDays parameter to only return reports within the last x amount of days. For more information, see https://docs.abuseipdb.com/?shell#check-endpoint
require 'chilkat' # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. http = Chilkat::CkHttp.new() # Implements the following CURL command: # curl -G https://api.abuseipdb.com/api/v2/check \ # --data-urlencode "ipAddress=118.25.6.39" \ # -d maxAgeInDays=90 \ # -d verbose \ # -H "Key: $YOUR_API_KEY" \ # -H "Accept: application/json" # Use the following online tool to generate HTTP code from a CURL command # Convert a cURL Command to HTTP Source Code req = Chilkat::CkHttpRequest.new() req.put_HttpVerb("GET") req.put_Path("/api/v2/check") req.put_ContentType("application/x-www-form-urlencoded") req.AddParam("maxAgeInDays","90") req.AddParam("verbose","") req.AddParam("ipAddress","118.25.6.39") req.AddHeader("Key","$YOUR_API_KEY") req.AddHeader("Accept","application/json") # resp is a CkHttpResponse resp = http.SynchronousRequest("api.abuseipdb.com",443,true,req) if (http.get_LastMethodSuccess() == false) print http.lastErrorText() + "\n"; exit end jResp = Chilkat::CkJsonObject.new() jResp.Load(resp.bodyStr()) jResp.put_EmitCompact(false) print "Response Body:" + "\n"; print jResp.emit() + "\n"; respStatusCode = resp.get_StatusCode() print "Response Status Code = " + respStatusCode.to_s() + "\n"; if (respStatusCode >= 400) print "Response Header:" + "\n"; print resp.header() + "\n"; print "Failed." + "\n"; exit end # Sample JSON response: # (Sample code for parsing the JSON response is shown below) # { # "data": { # "ipAddress": "118.25.6.39", # "isPublic": true, # "ipVersion": 4, # "isWhitelisted": false, # "abuseConfidenceScore": 1, # "countryCode": "CN", # "usageType": "Data Center\/Web Hosting\/Transit", # "isp": "Tencent Cloud Computing (Beijing) Co. Ltd", # "domain": "tencent.com", # "hostnames": [ # ], # "countryName": "China", # "totalReports": 2, # "numDistinctUsers": 1, # "lastReportedAt": "2021-04-03T18:55:00+00:00", # "reports": [ # { # "reportedAt": "2021-03-10T10:07:53+00:00", # "comment": "SSH login attempts with user root.", # "categories": [ # 18, # 22 # ], # "reporterId": 54484, # "reporterCountryCode": "CN", # "reporterCountryName": "China" # }, # { # "reportedAt": "2021-03-09T09:47:57+00:00", # "comment": "SSH login attempts with user root.", # "categories": [ # 18, # 22 # ], # "reporterId": 54484, # "reporterCountryCode": "CN", # "reporterCountryName": "China" # } # ] # } # } # Sample code for parsing the JSON response... # Use the following online tool to generate parsing code from sample JSON: # Generate Parsing Code from JSON dataIpAddress = jResp.stringOf("data.ipAddress") dataIsPublic = jResp.BoolOf("data.isPublic") dataIpVersion = jResp.IntOf("data.ipVersion") dataIsWhitelisted = jResp.BoolOf("data.isWhitelisted") dataAbuseConfidenceScore = jResp.IntOf("data.abuseConfidenceScore") dataCountryCode = jResp.stringOf("data.countryCode") dataUsageType = jResp.stringOf("data.usageType") dataIsp = jResp.stringOf("data.isp") dataDomain = jResp.stringOf("data.domain") dataCountryName = jResp.stringOf("data.countryName") dataTotalReports = jResp.IntOf("data.totalReports") dataNumDistinctUsers = jResp.IntOf("data.numDistinctUsers") dataLastReportedAt = jResp.stringOf("data.lastReportedAt") i = 0 count_i = jResp.SizeOfArray("data.hostnames") while i < count_i jResp.put_I(i) i = i + 1 end i = 0 count_i = jResp.SizeOfArray("data.reports") while i < count_i jResp.put_I(i) reportedAt = jResp.stringOf("data.reports[i].reportedAt") comment = jResp.stringOf("data.reports[i].comment") reporterId = jResp.IntOf("data.reports[i].reporterId") reporterCountryCode = jResp.stringOf("data.reports[i].reporterCountryCode") reporterCountryName = jResp.stringOf("data.reports[i].reporterCountryName") j = 0 count_j = jResp.SizeOfArray("data.reports[i].categories") while j < count_j jResp.put_J(j) intVal = jResp.IntOf("data.reports[i].categories[j]") j = j + 1 end i = i + 1 end |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.