Class: SecurityTrails::Clients::Feeds

Inherits:
SecurityTrails::Client show all
Defined in:
lib/securitytrails/clients/feeds.rb

Constant Summary

Constants inherited from SecurityTrails::Client

SecurityTrails::Client::API_KEY_HEADER, SecurityTrails::Client::HOST, SecurityTrails::Client::URL, SecurityTrails::Client::VERSION

Instance Attribute Summary

Attributes inherited from SecurityTrails::Client

#api_key

Instance Method Summary collapse

Methods inherited from SecurityTrails::Client

#initialize

Constructor Details

This class inherits a constructor from SecurityTrails::Client

Instance Method Details

#domains(type, filter: nil, tld: nil, ns: nil, date: nil) ⇒ <Type>

Fetch zone files including authoritative nameservers with ease

Parameters:

  • type (String)

    valid values are “all”, “dropped”, “new” or “registered”

  • filter (String, nil) (defaults to: nil)

    valid values are “cctld” and “gtld”

  • tld (String, nil) (defaults to: nil)

    Can be used to only return domains of a specific tld, such as “com”

  • ns (Boolean, nil) (defaults to: nil)

    show nameservers in the list

  • date (String, nil) (defaults to: nil)

    Date to fetch data for, format YYYY-MM-DD,

Returns:

  • (<Type>)

    <description>

See Also:



19
20
21
22
23
24
25
26
# File 'lib/securitytrails/clients/feeds.rb', line 19

def domains(type, filter: nil, tld: nil, ns: nil, date: nil)
  params = { filter: filter, tld: tld, ns: ns, date: date }.compact

  get("/feeds/domains/#{type}", params) do |csv_gz|
    unziped_text = Utility.ungzip(csv_gz)
    unziped_text.lines.map(&:chomp)
  end
end