Authentication
Authenticate every request with a personal Bearer API key.
Every /api/v1 request must include your personal API key.
Create a key
- Sign in to Zog
- Open Settings → API keys
- Name the key and click Create key
- Copy the secret immediately — it is shown once
Keys look like:
zog_sk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxYou can keep up to 10 active keys. Revoke any key from Settings at any time.
Authorization header
Authorization: Bearer zog_sk_...Example:
curl https://zog.watch/api/v1/uploads \
-H "Authorization: Bearer $ZOG_API_KEY" \
-H "Content-Type: application/json" \
-d '{"filename":"photo.jpg","mimeType":"image/jpeg","sizeBytes":204800}'Security notes
- Keys are stored as SHA-256 hashes — Zog never stores the full secret after creation
- Treat keys like passwords; prefer environment variables over hardcoding
- Revoke a key the moment a machine or repo is compromised
- Disabled accounts cannot use API keys
Errors
| Status | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing, invalid, expired, or revoked key |
403 | account_disabled | The account behind the key is disabled |