← Back to Home

API Reference

Base URL: https://api.gatiflow.io — All responses are JSON.

Interactive Swagger UI →

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 KeyHeader X-API-Key: gf_your_key — for programmatic API access
Bearer JWTHeader Authorization: Bearer eyJ... — for dashboard/management endpoints

Intelligence

GET/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"
GET/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
GET/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

POST/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"}'
POST/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"}'
POST/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..."}'
POST/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..."
GET/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

GET/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..."
POST/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..."
DELETE/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

GET/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..."
PATCH/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

GET/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..."
POST/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"}'
DELETE/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

GET/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..."
GET/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)

GET/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
DELETE/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..."

Ready to integrate?

14-day Pro trial included. No credit card required.