suribs.org: free keyless RHSBL suribs.net: this site, licensed API and keyed RHSBL suribs.com: accounts and dashboard

suribs.net — licensed API

Hostname/domain reputation lookup and submission over HTTPS, keyed per account, fully configurable policy (category filters, confirmed-vs-unconfirmed threshold, your own allowlist). Get a key from your suribs.com dashboard.

Authentication

Every route except /health requires an API key:

Authorization: Bearer <your-key>

Keys carry a scope: query (lookup only), query_and_submit (lookup and submit), or admin. Scope is set when a key is issued; admin is operator-granted only.

Endpoints

Method & pathScopeDescription
GET /health none Service and database health. No auth required.
GET /v1/lookup/<hostname> query, query_and_submit, admin Look up a hostname against your account's resolved policy (category include/exclude, confirmed-vs-unconfirmed threshold, your allowlist).
POST /v1/submit query_and_submit, admin Submit a sighting. Two corroborating sightings promote a host to confirmed; a single deep=true sighting promotes immediately.

Example

curl -H "Authorization: Bearer $SURIBS_KEY" \
  https://suribs.net/v1/lookup/example.com

curl -X POST -H "Authorization: Bearer $SURIBS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"hostname":"evil.example","kind":"bad","category":"phishing",
       "confidence":0.9,"source":"my-integration","deep":false}' \
  https://suribs.net/v1/submit

Rate limits

Per-key limits (requests/minute and requests/day) are set on your account and enforced via a fixed-window counter. A 429 means you're over the configured limit. If the rate limiter itself is unreachable, requests are allowed through rather than blocked.

Free instead?

For a confirmed-bad-only, keyless lookup with no account needed, see suribs.org — the same data over DNS (RHSBL) or a simple web lookup.