API reference
PixGuard exposes a REST API for scanning images for copyright risk. Every scan runs the same detection pipeline the web app uses and returns a 0 to 100 risk score with the signals behind it.
Base URL
https://api.pixguard.ioThe machine-readable description lives at /v2/openapi.json, and the discovery catalog at /.well-known/api-catalog.
Authentication
Every /v2 endpoint requires authentication. There are two ways to authenticate, and you only need one.
An API key, which you create under Settings. Keys work on every plan for the Chrome extension and WordPress plugin; direct REST API use is offered on the Business plan.
X-API-Key: pg_live_...Or a Clerk session token, which is what the web app itself sends.
Authorization: Bearer <clerk-session-token>Endpoints
/v2/meThe caller's plan and credit balance.
/v2/scan/imageScan an uploaded image for copyright risk. Multipart upload.
/v2/scan/urlScan an image by URL. The URL is SSRF-validated and redirects are not followed.
/v2/report/{report_id}Retrieve a previous scan report. Scoped to the reports you own.
/v2/monitoringCreate a recurring monitoring subscription for a website.
/v2/monitoringList your monitoring subscriptions.
/v2/monitoring/{subscription_id}Deactivate a monitoring subscription.
/v2/inboxHigh-risk findings that have not been actioned yet.
/v2/remediationsRecord the action you took on an inbox finding.
Example
curl -X POST https://api.pixguard.io/v2/scan/url \
-H "X-API-Key: pg_live_..." \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/photo.jpg"}'Credits and rate limits
Scans are billed in credits against your plan, and a cached image costs nothing. Your current balance is on GET /v2/me.
The two scan endpoints are rate limited per account, on a per-minute and a per-day window. Exceeding either returns 429 with a Retry-After header.
| Plan | Scans / minute | Scans / day |
|---|---|---|
| Free | 30 | 150 |
| Pro | 60 | 2000 |
| Business | 120 | 10000 |
| Starter (legacy plan, no longer sold) | 30 | 500 |
The other endpoints carry no per-account limit; a per-IP limit applies across the API as a whole.
PixGuard flags copyright risk for review. It does not provide legal advice and a score is not a determination of infringement.