The page
At/settings/api:

Top-right buttons:
- API Docs ↗ — opens the API reference (Postman documentation at
apidocs.threataware.com) - + Generate Key — create a new token
Generating a token
1
Click + Generate Key
The dialog opens with a name field and an Expiration dropdown.
2
Name the token
Use a description that identifies the owner and purpose —
[Power Automate] Daily inventory sync, [Data warehouse] Hourly device ingest, [Personal] Notebook explorations.3
Set expiration
The dropdown surfaces four fixed options:
- 1 day
- 1 week
- 1 month
- Never
Never option show “in 174 years” in the Expiration Date column (the underlying timestamp is set far in the future). Prefer short-lived tokens wherever possible.4
Click Save
The full key is revealed once in a follow-up dialog with the warning “Copy this key, it will only appear once.” Copy and store in your secret manager immediately — Protect cannot recover it.
Token format
Generated tokens are two UUIDs concatenated with a hyphen, e.g.55b736f9-994c-2cca-af80-83c19d3c6705-8604c319-260d-42ed-a670-c9cc8d1acabd. The displayed ..ac65c suffix on the row is the trailing fragment of this string.
Using the API
- The auth header is
X-ThreatAware-ApiKey(exact case). - The current public API version is
v1. v1 is GET-only. - v1 uses Offset + Limit pagination, capped at 10,000 records. Responses include a
warningfield directing high-offset consumers to migrate to v1.1 cursor pagination. - Successful responses are JSON:
{cursor, limit, total, warning?, data: [...]}.
Disabling / deleting
Hovering a token row reveals two buttons (active tokens only):- Disable key — keeps the row but invalidates the key. Useful when you want to retain audit trail / re-enable later.
- Delete key — removes the token entirely after a Confirm dialog (
Do you want to delete the following key: <name>?).
Security best practices
Short-lived tokens
Short-lived tokens
Default to 1 day or 1 week for development; 1 month for production batch jobs. The
Never option is dangerous — a leaked token persists indefinitely. Rotate regularly.One token per consumer
One token per consumer
Don’t share tokens across multiple consumers. If one consumer is compromised or retired, you can delete just that token.
Dedicated service-account users
Dedicated service-account users
Don’t generate tokens against your personal user. Create a
svc-warehouse@company.com user, assign a narrow custom role, and issue the token from there. When you leave, the token survives.Monitor for leaked tokens
Monitor for leaked tokens
Hash-check your public source repos. Tokens accidentally committed to GitHub get scraped fast. Delete immediately if discovered.
Never embed tokens in client-side code
Never embed tokens in client-side code
Browser-side, mobile, anywhere a user can see. Always proxy through a server you control.
Audit token usage
Audit token usage
The Audit Log records API token lifecycle events.
Token lifecycle
Cross-references
API Reference
Endpoint documentation
Access Control → API
Permissions model
Audit Log
Monitor token activity