Skip to content
RequestGuard Documentation
Pricing
API Reference Updated Sep 8, 2026

API Overview

Base URL, authentication, errors, rate limits, and links to RequestGuard API resource docs.

Use the RequestGuard API for fraud decisioning, intelligence lookups, website security scans, protected links, rules, webhooks, events, analytics, and public vulnerability evidence. This overview covers shared REST behavior. Resource-specific endpoints live in their own docs sections.

Base URL

https://api.requestguard.com/v1

All endpoint paths in these docs are relative to /v1.

Authentication

Every intelligence endpoint requires an active workspace API key, including Free geolocation and vulnerability lookups:

curl "https://api.requestguard.com/v1/{resource}" \
  -H "Authorization: Bearer rg_sk_live_..." \
  -H "Content-Type: application/json" \
  --data '{"example":true}'

You can also send X-API-Key for platforms where bearer auth is hard to configure.

Access depends on the workspace plan:

EndpointAuthentication
POST /go/linksAPI key optional. Anonymous link creation is supported. Invalid keys are rejected.
GET /vulnerabilities/npm/{package}/API key required; included in Free.
GET /vulnerabilities/packages/{ecosystem}/{coordinate}/API key required; included in Free.
GET /vulnerabilities/cve/{cveId}/API key required; included in Free.
GET /vulnerabilities/kev/API key required; included in Free.

See Authorization for header formats and endpoint-specific behavior.

Request and Response Conventions

JSON endpoints accept Content-Type: application/json and return JSON responses unless a resource documents a different media type, such as CSV exports.

Use ISO 8601 strings for timestamps, URL-encode path parameters, and include only fields supported by the target resource. Response objects can include nullable fields when upstream intelligence is unavailable or not applicable.

Errors

Errors return an error object directly:

{
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Missing or invalid RequestGuard API key."
  }
}

Common status conventions:

StatusMeaning
400Invalid or missing request input.
401Required API key is missing or invalid.
402Monthly lookup allowance exhausted (QUOTA_EXCEEDED).
403Missing capability, bulk access or an included key; browser Origin may also be denied.
404Resource, package, domain, IP, or record was not found.
409The request conflicts with an existing resource state.
429Endpoint burst limit exceeded (RATE_LIMITED).
503Required upstream intelligence source is unavailable.

Rate Limits

Free workspaces share 1,000 geolocation/vulnerability lookup units per UTC calendar month across one API key. Full intelligence requires Suite or Lookups. Monthly limits are 1,000 for Suite Starter, 25,000 for Suite Business/Lookups Developer, and 250,000 for Suite Agency/Lookups Growth. Email subscriptions do not unlock full lookups. Compatible plans combine by the highest allowance, never by addition.

A lookup normally consumes one unit. Blocklist batches consume one per target; CIDR checks consume one per sampled address. Bulk requires Suite Business, Suite Agency or Lookups Growth and reserves all units before provider work. Rejected requests consume no units; admitted analysis attempts count even if a provider fails. Events, analytics, lookup history, rules and webhook management are unmetered but retain their capability checks. Go has separate creation limits and consumes no lookup units.

Monthly exhaustion returns 402 QUOTA_EXCEEDED; burst limits return 429 RATE_LIMITED. Metered responses expose X-RequestGuard-Quota-Limit, -Used, -Remaining and -Reset. See Authorization for capabilities, bulk costs, key pauses and browser CORS.

Idempotency

GET requests do not mutate the target resource, but each admitted lookup retry consumes units. Retry transient failures with bounded backoff. For create or update requests, retry only after checking the resource docs for reuse behavior or conflict handling.

Protected link creation can reuse active, non-expiring links with the same normalized destination and account scope. Other write endpoints may return 409 when the requested state conflicts with an existing resource.

Resource Docs

AreaDocs
AuthorizationAuthentication, optional keys, and invalid-key behavior
Protected LinksCreate go.requestguard.com links
Fraud DecisioningAssess signups, logins, checkout, forms, and API events
RulesManage custom allow, review, challenge, and block rules
Events and AnalyticsSearch investigation events and summary metrics
WebhooksSend high-risk assessment notifications
Email CheckCheck disposable, free, role, and risky mailbox signals
Email SecurityInspect SPF, DKIM, and DMARC posture
Abuse ContactsFind abuse reporting contacts
BlocklistsIP and domain blocklist behavior
Package Vulnerabilitiesnpm, Composer, PyPI, Maven, and Go advisory evidence
CVE and CISA KEVCVE lookup and known-exploited catalog search
Legacy npm VulnerabilitiesCompatibility endpoint
IP IntelligenceIP reputation, geolocation, and RDAP endpoints
Domain IntelligenceDomain risk and RDAP endpoints
Website SecurityScans, score model, leaderboard, privacy, and badges
DNSDNS lookup endpoint
Network ChecksASN, host, online, and CIDR checks
Device and CAPTCHA DiagnosticsFingerprint and CAPTCHA test endpoints

OpenAPI

Use the machine-readable OpenAPI document when you need schemas, parameters, and the complete endpoint list:

https://requestguard.com/openapi/requestguard.v1.json