CensysEx

Tiny Elixir ⚗️ wrapper for the Censys Search 2.0 API

PRs Welcome

Note: this is NOT an official Censys library, and is not supported by or affiliated with Censys at this time. I do not own Censys Trademarks or Copyrights

Setup

via environment variables

$ export CENSYS_API_ID="*****"
$ export CENSYS_API_SECRET="*****"
{:ok, _} = CensysEx.API.start_link

or directly

{:ok, _} = CensysEx.API.start_link("*****", "*****")
  • API secrets can be found here

View

View all the data on an IP at a given time.

CensysEx.Hosts.view("127.0.0.1")

# Lookup the host as it was at a certain time
CensysEx.Hosts.view("127.0.0.1", ~U[2021-06-07 12:53:27.450073Z])

Search

Search returns a stream of results using the cursors provided by the API.

CensysEx.Hosts.search("services.service_name: HTTP")
|> Stream.take(500)
|> Enum.to_list()

Aggregate

Aggregate data about hosts on the internet.

CensysEx.Hosts.aggregate("location.country_code", "services.service_name: MEMCACHED")

CensysEx.Hosts.aggregate("location.country_code", "services.service_name: MEMCACHED", 10)