SDKs in 4 languages

Native SDKs for Python, TypeScript, Go, and Java.
One call does everything — discover, fetch, extract. Type-safe. Idiomatic.

Python

kloakd-sdk-python

$ pip install kloakd

Features

  • One-call crawl() orchestrator
  • Auto-escalation 4-tier engine
  • Streaming progress (SSE)
  • Async/await support
  • Type hints (PEP 484)
python_example.py
from kloakd import Kloakd

client = Kloakd(
    api_key="sk-live-...",
    organization_id="your-org-id",
)

# One call: discover → fetch → extract
result = client.crawl(
    "https://example.com",
    max_pages=50,
    extract_schema={"title": "css:h1", "price": "css:.price"},
)

for page in result.pages:
    if page.ok:
        print(f"{page.url} → {page.structured_data}")

TypeScript

kloakd-sdk-js

$ npm install kloakd

Features

  • One-call crawl() orchestrator
  • Auto-escalation 4-tier engine
  • Streaming progress (SSE)
  • Strict TypeScript types
  • ESM + CommonJS
typescript_example.ts
import { Kloakd } from "kloakd";

const client = new Kloakd({
  apiKey: "sk-live-...",
  organizationId: "your-org-id",
});

// One call: discover → fetch → extract
const result = await client.crawl("https://example.com", {
  maxPages: 50,
  extractSchema: { title: "css:h1", price: "css:.price" },
});

for (const page of result.pages) {
  if (page.ok) {
    console.log(`${page.url} →`, page.structuredData);
  }
}

Go

kloakd-sdk-go

$ go get kloakd.dev/sdk/go

Features

  • One-call Crawl() orchestrator
  • Auto-escalation 4-tier engine
  • Streaming via channels
  • Context-aware
  • Goroutine-safe
go_example.go
package main

import (
    "context"
    "fmt"
    "kloakd.dev/sdk/go/kloakd"
)

func main() {
    client := kloakd.MustNew(kloakd.Config{
        APIKey:         "sk-live-...",
        OrganizationID: "your-org-id",
    })
    ctx := context.Background()

    // One call: discover → fetch → extract
    result, _ := client.Crawl(ctx, "https://example.com",
        &kloakd.CrawlOptions{
            MaxPages:      50,
            ExtractSchema: map[string]string{"title": "css:h1"},
        })

    for _, page := range result.Pages {
        if page.Success {
            fmt.Printf("%s → %v\n", page.URL, page.StructuredData)
        }
    }
}

Java

kloakd-sdk-java

$ implementation 'dev.kloakd:sdk:latest'

Features

  • One-call crawl() orchestrator
  • Auto-escalation 4-tier engine
  • Streaming progress (Stream)
  • Maven + Gradle
  • Java 21+
java_example.java
import dev.kloakd.sdk.Kloakd;
import dev.kloakd.sdk.models.*;

public class Main {
    public static void main(String[] args) {
        Kloakd client = Kloakd.builder()
            .apiKey("sk-live-...")
            .organizationId("your-org-id")
            .build();

        // One call: discover → fetch → extract
        SiteCrawlResult result = client.crawl("https://example.com",
            CrawlOptions.builder()
                .maxPages(50)
                .extractSchema(Map.of("title", "css:h1"))
                .build());

        for (CrawlPage page : result.pages()) {
            if (page.success()) {
                System.out.println(page.url() + " → " + page.structuredData());
            }
        }
    }
}

Feature Parity

Every module, every language

All 7 modules are fully accessible across all 4 SDKs. No partial coverage. No language-specific limitations.

ModulePythonTypeScriptGoJava
Evadr
Webgrph
Nexus
Parlyr
Fetchyr
Kolektr
Kloakd (Fetch Engine)

Start building in minutes

Get an API key from your dashboard. Install the SDK. Start extracting.