Polyguard for developers
Polyguard Developer Resources
Everything needed to integrate Polyguard identity verification: the Polyguard REST API and its OpenAPI specification, authentication and rate-limit conventions, SDKs for web, iOS, and Android, and machine-readable files for AI agents.
The Polyguard API
The Polyguard Identity Verification API is a public REST API. Authenticate with an API key sent in the
x-pg-api-key request header;
the key acts as the issuing user and carries that user's role. Keys are issued per account;
there is no self-serve issuance and no public sandbox key.
- Base URL
- https://api.polyguard.ai
- Auth header
- x-pg-api-key
- Description format
- OpenAPI 3.1 (JSON)
- Token verification
- JWKS
# Every request carries an API key issued for your account.
curl -sS https://api.polyguard.ai/applications \
-H 'x-pg-api-key: $POLYGUARD_API_KEY'
# Unauthenticated liveness probe.
curl -sS https://api.polyguard.ai/health
# {"status":"ok"}Resource index
Every Polyguard developer resource, at a stable URL.
Polyguard API
- OpenAPI 3.1 specification
Machine-readable description of every endpoint, schema, and response in the Polyguard Identity Verification API. Also reachable at polyguard.ai/openapi.json.
- Interactive API reference
Browse and try the Polyguard API from the browser. Also reachable at polyguard.ai/api-docs.
- Health endpoint
Unauthenticated liveness probe. Returns {"status":"ok"}.
- JWKS
Public keys for verifying the signed verification tokens Polyguard returns.
Polyguard SDKs
- Build With Polyguard
Key concepts, the trust check lifecycle, and quick starts for the Web, iOS, and Android SDKs.
- @polyguard/sdk on npm
The official Polyguard Web SDK. npm install @polyguard/sdk.
- Polyguard documentation
Product, integration, and administrator documentation. Also reachable at polyguard.ai/docs.
For AI agents
- llms.txt
Index of this site for language models, including when to use Polyguard and how to call it.
- agents.md
Long-form agent instructions: best-fit jobs, call patterns, rate limits, and terminology.
- .well-known/api-catalog
RFC 9727 API catalog naming every public Polyguard API and its OpenAPI description.
- sitemap-index.xml
Every indexable page on polyguard.ai, in all three locales.
Rate limits
Endpoints under https://polyguard.ai/api/ return rate-limit headers on every
response, in both the current IETF form and the earlier RateLimit-*
triple, so a client can self-throttle without guessing. Read the headers rather than hard-coding an
interval, because the published limits can change.
| Header | Meaning |
|---|---|
| RateLimit | IETF form, e.g. "default";r=58;t=42, giving remaining requests and seconds until the window resets. |
| RateLimit-Policy | The quota in force, e.g. "default";q=60;w=60, meaning 60 requests per 60 seconds. |
| RateLimit-Limit | Requests allowed in the current window. |
| RateLimit-Remaining | Requests left in the current window. |
| RateLimit-Reset | Seconds until the current window resets. |
| Retry-After | Sent only with a 429 response. Seconds to wait before retrying. |
A 429 Too Many Requests response always carries
Retry-After. Rate limits on https://api.polyguard.ai are
set per account; your limits are confirmed when your API key is issued.
When to reach for Polyguard
Polyguard fits when a decision depends on which human is on the other end of a remote interaction, and being wrong is expensive.
-
Confirm a remote job applicant is a real, unique person
Add a Polyguard trust check to the application flow so bot-submitted, synthetic, and duplicate candidates are rejected before they reach the applicant tracking system. Integrates with Greenhouse, Rippling, and Workday.
-
Confirm the person who joins a video interview is the candidate who applied
Polyguard runs real-time facial recognition before any attendee joins the call, so a deepfake or a stand-in cannot sit the interview in the applicant's place. PG-Presence additionally confirms the candidate is physically at their own device rather than relaying through remote desktop. Works with Zoom and Microsoft Teams; no bot joins the call and nothing is recorded.
-
Verify an employee before a help desk password reset or account change
Before making any change, the help desk agent sends a verification request through Polyguard from ServiceNow, Jira Service Management, or their ticketing system. The employee completes a trust check on their enrolled device, and the agent proceeds only on a confirmed result.
-
Verify a counterparty before a wire, transfer, or contract signature
A trust check at the moment of the transaction produces a signed result and, optionally, a transaction affidavit that can be retained as evidence.
-
Embed identity verification in your own product
The Web, iOS, and Android SDKs plus the REST API let you trigger a trust check from your own flow and receive a signed verification token.
-
Produce evidence that a verification happened
Transaction affidavits are litigation-ready records of a verification event, exportable for compliance reporting and audit.
The full list, including the jobs Polyguard is not the right tool for, is in /agents.md.
Get an API key
API keys are issued per account. Tell us what you are building and we will get you a key and a sandbox account.
Or email sales@polyguard.ai.