AbuseIPDB 1.2.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package AbuseIPDB --version 1.2.0                
NuGet\Install-Package AbuseIPDB -Version 1.2.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AbuseIPDB" Version="1.2.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add AbuseIPDB --version 1.2.0                
#r "nuget: AbuseIPDB, 1.2.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install AbuseIPDB as a Cake Addin
#addin nuget:?package=AbuseIPDB&version=1.2.0

// Install AbuseIPDB as a Cake Tool
#tool nuget:?package=AbuseIPDB&version=1.2.0                

AbuseIPDB ⛔

alternate text is missing from this package README image

An async C# library for interacting with the v2 AbuseIPDB API.

Usage

Available on NuGet as AbuseIPDB, methods can be found under the class AbuseIPDBClient.

Create your own API key: https://www.abuseipdb.com/account/api

https://www.nuget.org/packages/AbuseIPDB

Features

  • Made with .NET 6
  • Fully async
  • Full coverage of the FREE and Premium v2 API
  • Deep documentation
  • No external dependencies (uses integrated HTTP and JSON)
  • Easily lookup IP addresses and report abuse
  • Custom exceptions (AbuseIPDBException) for advanced catching
  • Parsing of server errors
  • Automatic request retries
  • Example project to demonstrate all capabilities of the library

Example

Under the Example directory you can find a working demo project that implements this library.

Code Samples

Creating a new AbuseIPDB API client

AbuseIPDBClient client = new("API KEY");

Checking an IP

CheckedIP check = await client.Check("1.1.1.1", true, 90);

Reporting an abusive IP

ReportedIP report = await client.Report("127.0.0.1", new IPReportCategory[] { IPReportCategory.WebSpam, IPReportCategory.SSH }, "Test Report");

Bulk-reporting many IPs at once with a CSV stream

BulkReport bulkReport = await client.BulkReport(stream);

Requesting reports for an IP

IPReport[] reports = await client.GetReports("91.240.118.222", 300, 90);

Downloading a blacklist

BlacklistedIP[] ips = await client.GetBlacklist(10000);

Checking a CIDR block for recently reported IPs

CheckedBlock checkedBlock = await client.CheckBlock("186.2.163.0/24", 30);

Clearing reports on an IP

ClearedAddress cleared = await client.ClearAddress("127.0.0.1");

Available methods

  • Task<BlacklistedIP[]> GetBlacklist( int limit = 10000, int? confidenceMinimum = null, string[] onlyCountries = null, string[] exceptCountries = null)
  • Task<BulkReport> BulkReport(Stream csvStream)
  • Task<ClearedAddress> ClearAddress(string ip)
  • Task<CheckedBlock> CheckBlock(string network, int maxAge)
  • Task<CheckedIP> Check(string ip, bool verbose = true, int maxAge = 90)
  • Task<IPReport[]> GetReports(string ip, int limit = 100, int maxAge = 90)
  • Task<ReportedIP> Report(string ip, IPReportCategory[] categories, string comment)

Resources

Website: https://www.abuseipdb.com

This is a community-ran library. Not affiliated with Marathon Studios, Inc.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.3.2 340 11/25/2023
1.3.1 101 11/25/2023
1.3.0 103 11/25/2023
1.2.3 344 2/19/2023
1.2.2 457 11/17/2022
1.2.1 313 11/15/2022
1.2.0 367 10/28/2022
1.1.0 406 9/23/2022
1.0.0 428 9/18/2022