AIActify REST API
aiactify-backend.vercel.app
HTTPS only
JSON
Bearer Token
Authentifizierung
JWT Token
# Login → Token POST /api/auth/login Content-Type: application/json { "email": "you@example.com", "password": "••••••••" } # Response: { "token": "eyJhbGci...", "user": { ... } } Authorization: Bearer eyJhbGci...
API Key (Pro+)
Authorization: Bearer aak_a1b2c3d4e5f6...
API Key Scopes
| Scope | Aktionen | Plan |
|---|---|---|
| read | Pro+ | |
| write | Pro+ | |
| audit:read | Pro+ | |
| content:write | Pro+ | |
| sites:read | Pro+ |
Endpunkte
Auth
POST/api/auth/loginLogin → JWT
POST/api/auth/registerRegister
GET/api/auth/meCurrent user
POST/api/auth/change-passwordChange password
POST/api/auth/forgot-passwordPassword reset
DELETE/api/auth/accountDelete account & all data (GDPR Art. 17)
Sites
GET/api/sitesList sites
POST/api/sitesCreate site
GET/api/sites/:idGet site
PUT/api/sites/:idUpdate site
DELETE/api/sites/:idDelete site
GET/api/sites/config/:siteKeyPublic config (Site Key, kein Token)
Content
GET/api/content/site/:siteIdList items
GET/api/content/site/:siteId/statsItem statistics
PUT/api/content/:id/validateSet status (ai / ai_modified / human)
PUT/api/content/:id/exemptMark exempt (Art. 50(4))
PUT/api/content/bulk-validateBulk validate
POST/api/content/:id/provenanceAdd provenance record
POST/api/content/site/:siteId/archive-staleArchive items no longer seen
Audit
GET/api/audit/site/:siteIdAudit logs
GET/api/audit/allAudit logs across all sites
GET/api/audit/export/:siteIdCSV export
KI-Inventar
GET/api/inventoryList AI systems + stats
GET/api/inventory/catalogPrefilled system catalogue
POST/api/inventoryAdd AI system
PUT/api/inventory/:idUpdate AI system
DELETE/api/inventory/:idDelete AI system
API Keys (Pro+)
GET/api/apikeysList keys
POST/api/apikeysCreate key
DELETE/api/apikeys/:idRevoke key
Snippet / Visual Editor (Public)
GET/api/content/manifest/:siteKeyCDN status manifest
POST/api/content/registerRegister scanned items
POST/api/content/onsite/validateVisual Editor save (single or bulk)
GET/api/scripts/blocklist/:siteKeyArt. 5 blocklist + patterns
POST/api/scripts/reportReport Art.-5 findings
GET/api/agents/config/:siteKeyChatbot disclosure config
POST/api/auth/verify-editor-tokenVerify Visual Editor session
Schnellstart-Beispiel
# List content items curl -X GET \ https://aiactify-backend.vercel.app/api/content/site/{siteId} \ -H "Authorization: Bearer aak_yourkey..."
Fehlercodes
| Status | Bedeutung | Ursache |
|---|---|---|
| 400 | Bad Request | |
| 401 | Unauthorized | |
| 403 | Forbidden | |
| 404 | Not Found | |
| 429 | Rate Limit | |
| 500 | Server Error |
Rate Limits
| Gruppe | Limit |
|---|---|
| Auth | 15 / 15 min |
| Snippet (öffentliche Endpunkte) | 30 / min |
| Alle anderen | kein eigenes Limit |