Quick Start
# 1. Register (includes 14-day Pro trial)
curl -X POST https://api.gatiflow.io/api/v1/auth/register \
-H "Content-Type: application/json" \
-d '{"org_name":"MyOrg","email":"me@co.com","password":"Pass1234"}'
# 2. Create API key (use access_token from step 1)
curl -X POST "https://api.gatiflow.io/api/v1/api-keys?name=production" \
-H "Authorization: Bearer ACCESS_TOKEN"
# 3. Get intelligence report
curl https://api.gatiflow.io/api/v1/intelligence/report \
-H "X-API-Key: gf_YOUR_KEY"Authentication
| API Key | Header X-API-Key: gf_your_key — for programmatic API access |
| Bearer JWT | Header Authorization: Bearer eyJ... — for dashboard/management endpoints |
Intelligence
/api/v1/intelligence/reportX-API-Key● All plans
Generate intelligence report. Signal count and features vary by plan (Free: 3, Pro: 10, Business: 50+).
curl https://api.gatiflow.io/api/v1/intelligence/report \ -H "X-API-Key: gf_your_key_here"
/api/v1/intelligence/report/export?format=csvX-API-Key● Pro (csv) · Business (csv, pdf)
Export report as CSV (Pro+) or PDF (Business). Free plan returns 403.
curl "https://api.gatiflow.io/api/v1/intelligence/report/export?format=csv" \ -H "X-API-Key: gf_your_key_here" \ -o report.csv # PDF (Business only) curl "https://api.gatiflow.io/api/v1/intelligence/report/export?format=pdf" \ -H "X-API-Key: gf_your_key_here" \ -o report.pdf
/api/v1/public/weekly-reportNone● Public
Free weekly intelligence preview. No authentication required. Updated every 6 hours.
curl https://api.gatiflow.io/api/v1/public/weekly-report
Authentication
/api/v1/auth/registerNone● Public
Create account + org. Returns JWT tokens immediately. Starts a 14-day Pro trial automatically.
curl -X POST https://api.gatiflow.io/api/v1/auth/register \
-H "Content-Type: application/json" \
-d '{"org_name": "Acme", "email": "dev@acme.com", "password": "SecurePass1"}'/api/v1/auth/loginNone● Public
Login with email and password. Returns JWT access + refresh tokens.
curl -X POST https://api.gatiflow.io/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "dev@acme.com", "password": "SecurePass1"}'/api/v1/auth/refreshNone (refresh token)● Public
Refresh access token using a valid refresh token. Old refresh token is invalidated (rotation).
curl -X POST https://api.gatiflow.io/api/v1/auth/refresh \
-H "Content-Type: application/json" \
-d '{"refresh_token": "eyJ..."}'/api/v1/auth/logoutBearer JWT● Public
Logout and revoke both access and refresh tokens immediately (server-side blacklist).
curl -X POST https://api.gatiflow.io/api/v1/auth/logout \ -H "Authorization: Bearer eyJ..."
/api/v1/auth/verify?token=TOKENNone● Public
Verify email address using the token sent on registration. Token expires in 24 hours.
curl https://api.gatiflow.io/api/v1/auth/verify?token=YOUR_TOKEN
API Keys
/api/v1/api-keysBearer JWT● All plans
List all API keys for your organization.
curl https://api.gatiflow.io/api/v1/api-keys \ -H "Authorization: Bearer eyJ..."
/api/v1/api-keys?name=NAME&scopes=SCOPESBearer JWT● All plans
Create a new API key. Limits: Free=1, Pro=5, Business=unlimited. Key is shown only once.
curl -X POST "https://api.gatiflow.io/api/v1/api-keys?name=production&scopes=intelligence:read" \ -H "Authorization: Bearer eyJ..."
/api/v1/api-keys/{key_id}Bearer JWT● All plans
Revoke an API key permanently. Any requests using this key will be rejected immediately.
curl -X DELETE https://api.gatiflow.io/api/v1/api-keys/KEY_ID \ -H "Authorization: Bearer eyJ..."
Organization & Watchlist
/api/v1/org/meBearer JWT● All plans
Get current organization and user info.
curl https://api.gatiflow.io/api/v1/org/me \ -H "Authorization: Bearer eyJ..."
/api/v1/org/topicsBearer JWT● All plans
Set custom topics for Company Watchlist. GatiFlow will collect signals specifically for these topics. Max 20 topics.
curl -X PATCH https://api.gatiflow.io/api/v1/org/topics \
-H "Authorization: Bearer eyJ..." \
-H "Content-Type: application/json" \
-d '{"topics": ["kubernetes", "rust", "stripe"]}'Webhooks
/api/v1/org/webhooksBearer JWT● Pro · Business
List all webhooks for your organization.
curl https://api.gatiflow.io/api/v1/org/webhooks \ -H "Authorization: Bearer eyJ..."
/api/v1/org/webhooksBearer JWT● Pro · Business
Create a webhook. Payloads are signed with HMAC-SHA256. Max 5 webhooks. HTTPS only.
curl -X POST https://api.gatiflow.io/api/v1/org/webhooks \
-H "Authorization: Bearer eyJ..." \
-H "Content-Type: application/json" \
-d '{"url": "https://your-endpoint.com/webhook"}'/api/v1/org/webhooks/{webhook_id}Bearer JWT● Pro · Business
Delete a webhook permanently.
curl -X DELETE https://api.gatiflow.io/api/v1/org/webhooks/WEBHOOK_ID \ -H "Authorization: Bearer eyJ..."
Usage & History
/api/v1/usageBearer JWT● All plans
Get daily usage stats for your organization.
curl https://api.gatiflow.io/api/v1/usage \ -H "Authorization: Bearer eyJ..."
/api/v1/history/signalsBearer JWT● Pro · Business
Retrieve historical signal snapshots for trend analysis.
curl https://api.gatiflow.io/api/v1/history/signals \ -H "Authorization: Bearer eyJ..."
Data & Privacy (GDPR/LGPD)
/api/v1/org/exportBearer JWT● All plans
Export all organization data as JSON (GDPR Art. 20 — Right to data portability). Includes org info, users, API keys, webhooks, topics, and usage history.
curl https://api.gatiflow.io/api/v1/org/export \ -H "Authorization: Bearer eyJ..." \ -o gatiflow-data-export.json
/api/v1/org/delete?confirm=CONFIRM-DELETEBearer JWT● All plans
Permanently delete your organization and all associated data (GDPR Art. 17 — Right to erasure). Irreversible. Requires confirm=CONFIRM-DELETE query param.
curl -X DELETE "https://api.gatiflow.io/api/v1/org/delete?confirm=CONFIRM-DELETE" \ -H "Authorization: Bearer eyJ..."