{"name":"IATO API","version":"10.1.0","manifest":"/api/manifest","idempotency":{"header":"X-Idempotency-Key","description":"Include for safe retries on POST/PUT/DELETE"},"endpoints":{"auth":{"description":"Authentication and user management","base":"/api/auth","endpoints":[{"method":"POST","path":"/api/auth/register","description":"Register new user"},{"method":"POST","path":"/api/auth/login","description":"Login and get token"},{"method":"POST","path":"/api/auth/logout","description":"Logout"},{"method":"GET","path":"/api/auth/me","description":"Get current user"}]},"api_keys":{"description":"API key management","base":"/api/auth/api-keys","endpoints":[{"method":"GET","path":"/api/auth/api-keys","description":"List API keys"},{"method":"POST","path":"/api/auth/api-keys","description":"Create API key"},{"method":"DELETE","path":"/api/auth/api-keys/{id}","description":"Revoke API key"}]},"crawl":{"description":"Crawl management","base":"/api/crawl","endpoints":[{"method":"POST","path":"/api/crawl/start","description":"Start a new crawl"},{"method":"GET","path":"/api/crawl/jobs","description":"List all crawl jobs"},{"method":"GET","path":"/api/crawl/jobs/{job_id}","description":"Get job details"},{"method":"DELETE","path":"/api/crawl/jobs/{job_id}","description":"Delete a job"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/pages","description":"Get crawled pages"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/stats","description":"Get job statistics"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/progress","description":"Get live progress"},{"method":"POST","path":"/api/crawl/jobs/{job_id}/cancel","description":"Cancel running job"},{"method":"WS","path":"/api/crawl/jobs/{job_id}/stream","description":"WebSocket progress stream"}]},"batch":{"description":"Batch operations","base":"/api/crawl/jobs","endpoints":[{"method":"POST","path":"/api/crawl/jobs/batch-delete","description":"Batch delete jobs (max 100)"},{"method":"POST","path":"/api/crawl/jobs/batch-export","description":"Batch export jobs (max 20)"}]},"webhooks":{"description":"Webhook management","base":"/api/webhooks","endpoints":[{"method":"GET","path":"/api/webhooks","description":"List webhooks"},{"method":"POST","path":"/api/webhooks","description":"Create webhook"},{"method":"POST","path":"/api/webhooks/{id}/test","description":"Test webhook"},{"method":"DELETE","path":"/api/webhooks/{id}","description":"Delete webhook"}]},"analysis":{"description":"SEO and content analysis","base":"/api/crawl/jobs/{job_id}","endpoints":[{"method":"GET","path":"/api/crawl/jobs/{job_id}/seo-issues","description":"SEO issues"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/broken-links","description":"Broken links"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/redirects","description":"Redirects"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/duplicates","description":"Duplicate content"}]},"export":{"description":"Data export","base":"/api/crawl/jobs/{job_id}/export","endpoints":[{"method":"GET","path":"/api/crawl/jobs/{job_id}/export/csv","description":"Export as CSV"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/export/json","description":"Export as JSON"},{"method":"GET","path":"/api/crawl/jobs/{job_id}/export/sitemap","description":"Export as XML sitemap"}]},"workspaces":{"description":"Workspace management","base":"/api/workspaces","endpoints":[{"method":"GET","path":"/api/workspaces","description":"List workspaces"},{"method":"POST","path":"/api/workspaces","description":"Create workspace"},{"method":"GET","path":"/api/workspaces/{id}","description":"Get workspace"},{"method":"DELETE","path":"/api/workspaces/{id}","description":"Delete workspace"}]},"schedules":{"description":"Scheduled crawls","base":"/api/schedules","endpoints":[{"method":"GET","path":"/api/schedules","description":"List schedules"},{"method":"POST","path":"/api/schedules","description":"Create schedule"},{"method":"DELETE","path":"/api/schedules/{id}","description":"Delete schedule"}]},"user":{"description":"User settings and quota","base":"/api/user","endpoints":[{"method":"GET","path":"/api/user/quota","description":"Get usage quota"},{"method":"GET","path":"/api/user/preferences","description":"Get preferences"},{"method":"POST","path":"/api/user/preferences","description":"Update preferences"}]}}}