Skip to main content

Networking APIs

The artemis API allows a user to make HTTP network requests using the reqwest crate. It can be used to interact with external services or services that expose an API.

request(client, body) -> ClientResponse | HttpError​

Make a very simple GET or POST request to the provided URL. You may specify an optional body.

The body must be in raw bytes if provided. This function is async

ParamTypeDescription
clientClientRequestClientRequest object
bodyUint8ArrayOptional body to send with request

VirusTotal Class​

A very basic class to help interact with the VirusTotal API using the JS HTTP client. Can be used to check VT for any additional data on hashes. Requires an API key.

warning

DO NOT use this to lookup hashes for your entire filesystem!

Your key or IP will be blocked if you do!

lookupHash(hash) -> VTResponse | HttpError​

Lookup a MD5, SHA1, or SHA256 hash on VirusTotal. This function is async

ParamTypeDescription
hashstringMD5, SHA1, or SHA256 hash

lookupDomain(domain) -> VTResponse | HttpError​

Lookup a domain on VirusTotal. This function is async

ParamTypeDescription
domainstringDomain to submit

lookupIP(ip) -> VTResponse | HttpError​

Lookup an IP on VirusTotal. This function is async

ParamTypeDescription
ipstringIP to submit

checkEolStatus(name, version) -> EolStatus | HttpError​

Check software status at https://endoflife.date. This can be used to determine if installed software is still supported. Only the name of the software is submitted to https://endoflife.date.

ParamTypeDescription
namestringSoftware name
versionstringSoftware version

lookupExtension(id, version, browser) -> CrxResponse | HttpError​

Lookup browser extension reports on https://crxcavator.io. Will submit the extension ID and version to https://crxcavator.io.

ParamTypeDescription
idstringExtension ID
versionstringExtension version
browserBrowserBrowser associated with the extension

circluHashlookup(hashes, hash_type) -> ashlookupResponse | HashlookupResponse[] | HttpError​

Check hash against the Cirlu Hashlookup service (https://www.circl.lu/services/hashlookup/). This checks hashes aginst known files from public respositories. Hashlookup includes hashes from:

  • Common Windows 10 and Windows 11 build (French, Dutch, German, UK, US)
  • NIST NSRL - All RDS hash sets including current, modern, android, iOS and legacy + SHA256 mapping.
  • Ubuntu packages distribution
  • CentOS core OS distribution
  • Fedora project EPEL repository
  • Kali linux packages distribution
  • OpenSUSE distribution packages
  • OpenBSD binary tar.gz distribution
  • CDNJS
  • Snap public repository
ParamTypeDescription
hashesstring or string[]MD5, SHA1, or SHA256 hash to submit. You may not submit an array of SH256 hashes
hash_typeHashTypeThe hash type to submit