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
(Perl) 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
use 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 HttpResponse $resp = $http->SynchronousRequest("api.abuseipdb.com",443,1,$req); if ($http->get_LastMethodSuccess() == 0) { print $http->lastErrorText() . "\r\n"; exit; } $jResp = chilkat::CkJsonObject->new(); $jResp->Load($resp->bodyStr()); $jResp->put_EmitCompact(0); print "Response Body:" . "\r\n"; print $jResp->emit() . "\r\n"; $respStatusCode = $resp->get_StatusCode(); print "Response Status Code = " . $respStatusCode . "\r\n"; if ($respStatusCode >= 400) { print "Response Header:" . "\r\n"; print $resp->header() . "\r\n"; print "Failed." . "\r\n"; exit; } # 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; } $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; } $i = $i + 1; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.