Get Started in 10 Minutes

Extract clean, structured JSON from any website in just a few commands. No scraping skills required.

⏱️ Estimated time: 10 minutes · Prerequisites: curl + a free account
Account API Key Extract Schedule Notifications Team
1

Create Your Account

Sign up for a free Hobby account. You'll get an API key and JWT tokens for authentication — no credit card required.

# Register via API — or use https://extract.kafcenter.com/dashboard/register
curl -X POST "https://extract.kafcenter.com/auth/register" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "you@example.com",
    "password": "YourSecurePass123",
    "name": "Your Name"
  }'
Response: {"access_token":"eyJ...","refresh_token":"eyJ...","token_type":"bearer"}
💡 Pro tip: The access_token expires in 30 minutes. Use the refresh_token to get a new pair. Or log in to the User Dashboard to manage tokens visually.
2

Get Your API Key

API keys authorize extraction requests. Create one via the dashboard or programmatically. Hobby tier includes 1 key.

# Create an API key (requires Bearer token from Step 1)
curl -X POST "https://extract.kafcenter.com/api/v1/keys" \
  -H "Authorization: Bearer eyJ..." \
  -H "Content-Type: application/json" \
  -d '{"name":"Hobby Key","rate_limit":60}'
Response: {"id":"550e...","key":"kaf_live_AbCdEf12345","name":"Hobby Key","rate_limit":60}
💡 Pro tip: Set descriptive name values. This makes it easy to identify which key belongs to which project when reviewing usage later.
3

Your First Extraction

Pass a URL and a schema — we return structured JSON. CSS selectors for precise extraction, or AI mode for zero-configuration.

# Extract product data with CSS selectors
curl -X POST "https://extract.kafcenter.com/api/v1/extract" \
  -H "X-API-Key: kaf_live_AbCdEf12345" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://books.toscrape.com/catalogue/",
    "schema": {
      "fields": [
        {"name": "title", "selector": "h3 a", "type": "text"},
        {"name": "price", "selector": ".price_color", "type": "text"},
        {"name": "link", "selector": "h3 a", "type": "attribute", "attribute": "href"}
      ]
    }
  }'
Response: {"status":"success","data":[{"title":"A Light in the Attic","price":"£51.77","link":"a-light-in-the-attic_1000/index.html"},...]}
📌 Field types reference: text (innerText), attribute (href/src/etc), html (raw), exists (boolean), markdown (clean MD), screenshot (PNG).

🧠 AI mode: Send "mode": "ai" with an ai_prompt description. No selectors needed — kimi-k2.6:cloud figures it out.
4

Schedule Recurring Jobs

Monitor websites automatically. Cron expressions, webhook delivery, and change detection — all handled.

# Schedule: check prices every 6 hours
curl -X POST "https://extract.kafcenter.com/api/v1/extract/schedule" \
  -H "Authorization: Bearer eyJ..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Price Monitor",
    "url": "https://shop.example.com/product/123",
    "cron_expression": "0 */6 * * *",
    "fields": [{"name": "price", "selector": ".price", "type": "text"}],
    "webhook_url": "https://hooks.slack.com/services/T.../B.../xxx"
  }'
Response: {"id":"sched_...","next_run":"2026-05-28T12:00:00Z","status":"active"}
⏰ Cron examples:
0 */6 * * * — every 6 hours · 0 9 * * 1-5 — 9am weekdays · 0 0 1 * * — midnight on the 1st
5

Set Up Slack Notifications

Get formatted extraction results pushed to Slack automatically. No code changes needed — just add your webhook URL.

# 1. Create Slack Incoming Webhook: api.slack.com/messaging/webhooks
# 2. Test it from our side before scheduling

curl -X POST "https://extract.kafcenter.com/api/v1/integrations/slack/test" \
  -H "Authorization: Bearer eyJ..." \
  -H "Content-Type: application/json" \
  -d '{"webhook_url": "https://hooks.slack.com/services/T.../B.../xxx"}'
✅ Auto-detection: Kaf Extract detects Slack URLs automatically and formats messages with Block Kit (header, preview, timestamps). No configuration needed.
6

Invite Your Team

Share workspaces, API keys, and usage dashboards with your team. RBAC enforced: owner, admin, editor, viewer.

# 1. Create an organization
curl -X POST "https://extract.kafcenter.com/api/v1/orgs" \
  -H "Authorization: Bearer eyJ..." \
  -d '{"name":"Production Team","slug":"prod-team"}'

# 2. Invite a team member (they must register first)
curl -X POST "https://extract.kafcenter.com/api/v1/orgs/{org_id}/members" \
  -H "Authorization: Bearer eyJ..." \
  -d> '{"email":"colleague@example.com","role":"editor"}'
👥 Roles: owner (full control) → admin (manage members) → editor (create/modify extractions) → viewer (read-only). API keys created at org-level are shared across all members.

❓ Frequently Asked Questions

What's the rate limit?

Hobby: 60 requests/min. Pro: 300/min. Enterprise: 1,000/min. Per-API-key limits can be lower if you set them in the dashboard.

Which websites work?

Any public website. We use a headless browser so JavaScript-rendered SPAs are fully supported. Sites with aggressive bot protection may require our proxy pool (Pro/Enterprise).

How much does it cost?

Hobby is free forever — 1,000 extractions/month. Pro is $29/mo with 50K extractions, AI mode, batch jobs, and webhooks. Enterprise is $199/mo with dedicated proxies and SLA. See the pricing page.

What if I get a 429 error?

You've hit your rate limit. Wait for the 60-second window to reset, or upgrade your plan. The response includes Retry-After and X-RateLimit-* headers.

Can I export results?

Yes. Results are JSON by default. Add ?format=csv or ?format=markdown to any extraction endpoint for direct export.

How do I reset my password?

Log in to the User Dashboard → Profile → Change Password. Or via API: PUT /auth/me/password.

Ready to Extract?

Start free. No credit card required.

Get Started Free → Read API Docs