1. Create a scoped key
Create a workspace-owned key in the signed-in app and keep it in a server-side secret manager.
Public API v2.0.0
Use stable server-to-server recipes for quick checks and governed research runs, then read source-linked results with workspace-scoped access.
Orientation
The quick start keeps credentials server-side and makes completed versus accepted work explicit.
Create a workspace-owned key in the signed-in app and keep it in a server-side secret manager.
Begin with one bounded quick-check recipe and a stable idempotency key from your server.
A completed quick check returns 200. Accepted background work returns 202 and an opaque job reference to poll.
Quick start
This example uses a reserved MAC address, environment variables and a stable idempotency key. It does not contain a real credential.
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
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.
Exact reference
Most integrations can begin with the quick start. Open this disclosure for every implemented route, lifecycle semantic and generated contract identifier.
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"}'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"}'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"}'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"}'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.
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"}}'MAC, phone, IP and DNS return a bounded product projection immediately.
Domain, mail, web/TLS and scans return an opaque jobRef. Acceptance does not claim completion.
Status, paginated results, findings and object detail remain tenant scoped. Cancellation is idempotent.
| Method | Path | Product | Scope | Success | Idempotency |
|---|---|---|---|---|---|
| POST | /v2/lookups/dns | DNS lookup Partially configured | scan:create | 200 · completed | Required |
| POST | /v2/lookups/domain | Domain core lookup Available | scan:create | 202 · accepted | Required |
| POST | /v2/lookups/ip | IP context lookup Available | scan:create | 200 · completed | Required |
| POST | /v2/lookups/mac | MAC / OUI lookup Available | scan:create | 200 · completed | Required |
| POST | /v2/lookups/mail | Mail security lookup Available | scan:create | 202 · accepted | Required |
| POST | /v2/lookups/phone | Phone format and region lookup Available | scan:create | 200 · completed | Required |
| POST | /v2/lookups/web | Web and TLS posture lookup Available | scan:create | 202 · accepted | Required |
| POST | /v2/scans | Recursive scan Available | scan:create | 202 · accepted | Required |
| Method | Path | Scope | Idempotency |
|---|---|---|---|
| GET | /v2/jobs/{job_ref} | scan:read | No |
| POST | /v2/jobs/{job_ref}/cancel | scan:create | Required |
| GET | /v2/jobs/{job_ref}/findings | scan:read | No |
| GET | /v2/jobs/{job_ref}/objects/{object_id} | scan:read | No |
| GET | /v2/jobs/{job_ref}/results | scan:read | No |
Retry-After. Partial or unavailable coverage never becomes an all-clear. Review error and governance semantics.Never embed TIGESS_API_KEY in browser code, examples or logs.
Application scope, responsible-use acceptance, workspace grants and target scope are checked independently.
Product f910aadc268ef2fd…
OpenAPI ca850d0ae1bf90a3…