SDKs overview

Intelligence X provides a suite of Software Development Kits (SDKs) and client libraries designed to facilitate programmatic interaction with its OSINT search engine and data collections. These tools abstract the underlying RESTful API, allowing developers to integrate Intelligence X's threat intelligence and digital forensics capabilities into custom applications, scripts, and workflows without directly managing HTTP requests and JSON parsing. The SDKs support various programming languages, offering a streamlined approach to querying data breaches, email addresses, domains, and other indicators of compromise (IOCs) from Intelligence X's extensive datasets.

The primary benefit of using an SDK is the reduction of boilerplate code. Developers can leverage pre-built functions and classes that handle authentication, request formatting, error handling, and response parsing, enabling them to focus on the logic of their applications. The official Intelligence X documentation provides detailed guides and examples for each supported language, ensuring a consistent developer experience across different environments Intelligence X API documentation.

Official SDKs by language

Intelligence X offers official SDKs for several popular programming languages, each maintained to ensure compatibility with the latest API versions and features. These SDKs are the recommended method for integrating Intelligence X into applications, providing robust functionality and active support from the platform's developers. The table below outlines the officially supported languages, their respective package managers, installation commands, and maturity status.

Language Package Name Installation Command Maturity
Python intelx pip install intelx Stable
Go github.com/IntelligenceX/go-intelx go get github.com/IntelligenceX/go-intelx Stable
PHP intelx/php-intelx composer require intelx/php-intelx Stable
JavaScript (Node.js) intelx npm install intelx Stable
PowerShell IntelX Install-Module -Name IntelX Stable
C# (.NET) IntelX.NET dotnet add package IntelX.NET Stable

Installation

Installing an Intelligence X SDK typically involves using the package manager native to your chosen programming language. Before installation, developers should ensure they have the correct runtime environment and package manager configured. For example, Python developers need pip, while Go developers use the go get command. Each SDK's installation process is designed to be straightforward, pulling dependencies automatically.

Python

The Python SDK is distributed via PyPI. To install:

pip install intelx

Go

The Go SDK can be fetched directly using the Go module system:

go get github.com/IntelligenceX/go-intelx

PHP

For PHP projects, Composer is used:

composer require intelx/php-intelx

JavaScript (Node.js)

The Node.js SDK is available on npm:

npm install intelx

PowerShell

PowerShell users can install the module from the PowerShell Gallery:

Install-Module -Name IntelX

C# (.NET)

For .NET applications, the NuGet package manager is used:

dotnet add package IntelX.NET

After installation, an API key is required for authentication with the Intelligence X API. This key can be obtained from your Intelligence X account dashboard Intelligence X pricing and account information.

Quickstart example

This Python example demonstrates how to use the Intelligence X SDK to perform a basic search for an email address. The process involves initializing the client with your API key, initiating a search, and then retrieving and printing the results. This snippet showcases the typical workflow for interacting with the Intelligence X API through its SDK.


import intelx

# Replace with your actual Intelligence X API key
INTELX_API_KEY = "YOUR_API_KEY"

# Initialize the IntelX client
intelx_client = intelx.intelx(api_key=INTELX_API_KEY)

# Define the search term (e.g., an email address)
search_term = "[email protected]"

print(f"Searching for: {search_term}")

try:
    # Start a search
    search_id = intelx_client.search_start(search_term)
    print(f"Search started with ID: {search_id}")

    # Wait for the search to complete and get results
    results = intelx_client.search_wait(search_id)

    if results and results.records:
        print("Search results found:")
        for record in results.records:
            print(f"  - Type: {record.type}, Value: {record.value}, Date: {record.date}")
    else:
        print("No results found for the given search term.")

except Exception as e:
    print(f"An error occurred: {e}")

This example performs a search for [email protected]. Users should replace "YOUR_API_KEY" with their actual Intelligence X API key. The search_start function initiates the query, and search_wait retrieves the completed results. The structure of the results (results.records) includes details like the type of record, its value, and the date it was found Intelligence X API reference. For more advanced queries, such as searching by selector type or retrieving specific data types, refer to the detailed API documentation.

Community libraries

Beyond the officially supported SDKs, the Intelligence X API's open nature has fostered the development of community-contributed libraries and tools. These unofficial resources can offer additional language support, specialized integrations, or alternative approaches to interacting with the Intelligence X platform. While not officially maintained or endorsed by Intelligence X, community libraries can sometimes provide solutions for niche use cases or preferred development environments.

Developers considering community-contributed libraries should exercise due diligence. It is advisable to review the source code, check for active maintenance, and understand any potential security implications before integrating them into production systems. Resources like GitHub and other open-source repositories are common places to discover such projects. For example, developers often create wrappers in languages not officially supported, or tools that integrate Intelligence X data with other security platforms, similar to how developers build open-source tools around other threat intelligence APIs Cloudflare API examples.

When evaluating community libraries, consider factors such as:

  • Documentation quality: Is the library well-documented with clear examples?
  • Active development: Is the project regularly updated and maintained?
  • Community support: Are there forums or channels for assistance?
  • Licensing: Is the license compatible with your project's requirements?

For the most up-to-date and reliable integration, the official SDKs are generally recommended. However, community efforts can extend the reach and utility of the Intelligence X API within the broader developer ecosystem.