Run the server
Start inndx in dev mode to get a long-running HTTP API for creating and managing crawl jobs.
The run command from Your first crawl executes one job and exits. To create jobs on demand, manage their runs, and query results over HTTP, you want a long-running server. The dev command starts every service in a single process and exposes their HTTP APIs on one port. It is the simplest way to explore the API surface before deploying the real distributed shape.
Start the server
docker run --rm -d \
--name inndx \
-p 8021:8021 \
inndx-image:0.3.0 \
devThis boots the orchestrator, fetcher, parser, sink, and analytics services together, applies an in-memory broker, cache, and database, and serves the HTTP API on port 8021.
dev mode keeps all state in memory and runs everything in one process. It is ideal for learning the API and local testing. For anything resembling production, see Evaluate with Compose for the multi-service shape and your onboarding materials for a real deployment.
Explore the API
Once the container is running, the live API reference is served by the application itself:
http://localhost:8021/.well-known/docsThis is the authoritative, always-current description of every endpoint. The HTTP API reference explains how the endpoints are grouped per service.
Create a crawl job over HTTP
Instead of passing a manifest to run, you submit the same job configuration to the orchestrator's API. Create a job:
curl -X POST http://localhost:8021/crawl_jobs \
-H 'content-type: application/json' \
-d '{
"name": "first-api-crawl",
"config": {
"seeds": [{ "kind": "static_list", "params": { "urls": ["https://example.com/"] } }],
"stopping_criteria": [{ "kind": "max_urls", "params": { "max_urls": 10 } }],
"ranker": { "kind": "breadth" },
"fetcher": { "client": { "kind": "standard" }, "timeout": "30s" },
"pipelines": [{
"navigator": { "kind": "anchor" },
"steps": [{ "kind": "extractor", "params": { "kind": "markdown" } }],
"actions": [{ "kind": "to_blob", "params": { "directory": "output" } }]
}]
}
}'The job configuration is the same config object you wrote as YAML in the previous page, here sent as JSON. Starting a run, watching its progress, and reading results are all done through further API calls; the exact endpoints are listed at /.well-known/docs and summarized in the HTTP API reference.
Stop the server
docker stop inndxNext
Dev mode runs everything in one process. To see inndx as the separate, independently scalable services it becomes in production, continue to Evaluate with Compose.