An async C# library for interacting with the AlienVault OTX DirectConnect APIs.
$ dotnet add package AlienVault
👾 An async C# library for interacting with the AlienVault OTX DirectConnect APIs.
Provides an easy interface for interacting with all AlienVault OTX DirectConnect APIs.
To get started, add the library into your solution with either the NuGet Package Manager or the dotnet CLI.
dotnet add package AlienVault
For the primary classes to become available, import one or more of the used namespaces.
using AlienVault;
using AlienVault.Entities;
using AlienVault.Modules;
An API key is required to interact with the API. Create your own key at: https://otx.alienvault.com/settings
Need more examples? Under the Example directory you can find a working demo project that implements this library.
AlienVaultException) for advanced catchingUnder the Example directory you can find a working demo project that implements this library.
AlienVaultClient client = new(new AlienVaultClientConfig()
{
Key = "cebf8dc104f90bf27153190a24e0fcc31945a5e6fcc1937c5f8640e0fcefc0ec",
StrictLimit = false
});
Pulse pulse = await client.Pulses.Create(new()
{
Name = "Testing Pulse",
Description = "This pulse was created through the C# AlienVault library!",
Public = true,
Tags = new string[]
{
"test",
"pulse"
},
TLP = TLP.White,
Indicators = new IndicatorParameters[]
{
new()
{
Id = 0,
Type = IndicatorType.IPv4,
Role = IndicatorRole.Unknown,
Value = "1.1.1.1",
Title = "A sample IP address",
Expiration = DateTime.Now.AddYears(1)
}
}
});int revision = await client.Pulses.AddIndicators("622b4458e11410ea56c68052", new IndicatorParameters[]
{
new()
{
Id = 1,
Type = IndicatorType.Domain,
Role = IndicatorRole.Unknown,
Value = "alienvault.com",
Title = "A sample domain indicator",
Expiration = DateTime.Now.AddMonths(1)
}
});FileSubmission fileSubmission = await client.Analysis.SubmitFile("C://sample.exe");URLSubmission urlSubmission = await client.Analysis.SubmitURL("http://pzxdvpao.ml/");GeneralIPInfo ipv4Info = await client.Data.GetGeneralIPInfo("1.1.1.1");GeneralDomainInfo domainInfo = await client.Data.GetGeneralDomainInfo("example.com");WhoisEntry[] whoisEntries = await client.Data.GetWhois("t4ck0wsvvpbmktxzluyee11uce27kbct.nl");You can find all available methods at DOCS.md.
This is a community-ran library. Not affiliated with AT&T Cybersecurity.