Public API v2.0.0

Start with one bounded request.

Use stable server-to-server recipes for quick checks and governed research runs, then read source-linked results with workspace-scoped access.

Orientation

Key, request, response.

The quick start keeps credentials server-side and makes completed versus accepted work explicit.

1. Create a scoped key

Create a workspace-owned key in the signed-in app and keep it in a server-side secret manager.

2. Call one product

Begin with one bounded quick-check recipe and a stable idempotency key from your server.

3. Read the right response

A completed quick check returns 200. Accepted background work returns 202 and an opaque job reference to poll.

Quick start

Make one completed quick-check request.

This example uses a reserved MAC address, environment variables and a stable idempotency key. It does not contain a real credential.

MAC / OUI · POST /v2/lookups/mac

curl -sS -X POST "${TIGESS_API_BASE_URL}/v2/lookups/mac" \
  -H "Authorization: Bearer ${TIGESS_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: docs-mac-1" \
  --data '{"value":"0c:11:22:33:44:55"}'

Safe interactive example

Inspect a free response or a no-request fixture.

Live mode calls only the four zero-credit recipes through the bounded website proxy. Paid products and research runs remain fixed, labelled fixtures for anonymous visitors.

The optional interactive example loads when it is near the viewport.

Exact reference

Need contract-level detail?

Most integrations can begin with the quick start. Open this disclosure for every implemented route, lifecycle semantic and generated contract identifier.

Open exact Public API v2 contract details

Four completed lookup examples

MAC / OUI · POST /v2/lookups/mac

curl -sS -X POST "${TIGESS_API_BASE_URL}/v2/lookups/mac" \
  -H "Authorization: Bearer ${TIGESS_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: docs-mac-1" \
  --data '{"value":"0c:11:22:33:44:55"}'

Phone · POST /v2/lookups/phone

curl -sS -X POST "${TIGESS_API_BASE_URL}/v2/lookups/phone" \
  -H "Authorization: Bearer ${TIGESS_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: docs-phone-1" \
  --data '{"defaultRegion":"GB","value":"020 7946 0018"}'

IP context · POST /v2/lookups/ip

curl -sS -X POST "${TIGESS_API_BASE_URL}/v2/lookups/ip" \
  -H "Authorization: Bearer ${TIGESS_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: docs-ip-1" \
  --data '{"includeContext":false,"value":"192.0.2.1"}'

DNS · POST /v2/lookups/dns

curl -sS -X POST "${TIGESS_API_BASE_URL}/v2/lookups/dns" \
  -H "Authorization: Bearer ${TIGESS_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: docs-dns-1" \
  --data '{"value":"example.org"}'

One accepted recursive scan

Quick, Balanced and Deep scans are passive by request. Advanced additionally requires options.active=true, workspace permission and approved target scope. maxCredits is mandatory and profile-bounded.

Quick scan · POST /v2/scans

curl -sS -X POST "${TIGESS_API_BASE_URL}/v2/scans" \
  -H "Authorization: Bearer ${TIGESS_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: docs-quick-scan-1" \
  --data '{"options":{"active":false,"maxCredits":100},"profile":"quick","target":{"type":"domain_name","value":"example.org"}}'

200 · completed or partial

MAC, phone, IP and DNS return a bounded product projection immediately.

202 · accepted

Domain, mail, web/TLS and scans return an opaque jobRef. Acceptance does not claim completion.

GET · retained state

Status, paginated results, findings and object detail remain tenant scoped. Cancellation is idempotent.

Public API v2 product routes
MethodPathProductScopeSuccessIdempotency
POST/v2/lookups/dnsDNS lookup
Partially configured
scan:create200 · completedRequired
POST/v2/lookups/domainDomain core lookup
Available
scan:create202 · acceptedRequired
POST/v2/lookups/ipIP context lookup
Available
scan:create200 · completedRequired
POST/v2/lookups/macMAC / OUI lookup
Available
scan:create200 · completedRequired
POST/v2/lookups/mailMail security lookup
Available
scan:create202 · acceptedRequired
POST/v2/lookups/phonePhone format and region lookup
Available
scan:create200 · completedRequired
POST/v2/lookups/webWeb and TLS posture lookup
Available
scan:create202 · acceptedRequired
POST/v2/scansRecursive scan
Available
scan:create202 · acceptedRequired
Public API v2 retained-job routes
MethodPathScopeIdempotency
GET/v2/jobs/{job_ref}scan:readNo
POST/v2/jobs/{job_ref}/cancelscan:createRequired
GET/v2/jobs/{job_ref}/findingsscan:readNo
GET/v2/jobs/{job_ref}/objects/{object_id}scan:readNo
GET/v2/jobs/{job_ref}/resultsscan:readNo
Rate, credits and coverage remain explicit.  Honor Retry-After. Partial or unavailable coverage never becomes an all-clear. Review error and governance semantics.

Server-side keys

Never embed TIGESS_API_KEY in browser code, examples or logs.

Exact authorization

Application scope, responsible-use acceptance, workspace grants and target scope are checked independently.

Generated identifiers

Product f910aadc268ef2fd…
OpenAPI ca850d0ae1bf90a3…