Integrations And API
Knowlume exposes automation through the Public API, MCP, and export webhooks.
For the human workflow these integrations automate, see Quickstart and Fragments, Scores, And Export.
Public API
Base URL:
https://app.knowlu.me/api/public/v1
OpenAPI:
https://app.knowlu.me/api/public/v1/docs
https://app.knowlu.me/api/public/v1/redoc
https://app.knowlu.me/api/public/v1/openapi.json
Authentication:
Authorization: Bearer kn_...
Source submission also requires:
Idempotency-Key: <unique-key-per-submit-attempt>
Public API Flow
The current API is source-scoped. It is designed for integrations that submit one URL, wait for completion, then consume fragments or an export.
| Step | Endpoint |
|---|---|
| List projects | GET /projects |
| Submit one URL source | POST /sources |
| Poll source status | GET /sources/{source_id} |
| Read fragments | GET /sources/{source_id}/fragments |
| Queue Markdown export | POST /sources/{source_id}/export |
| Poll export | GET /exports/{export_id} |
Submit A Source
curl -i https://app.knowlu.me/api/public/v1/sources \
-H "Authorization: Bearer $KNOWLUME_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"source_url": "https://example.com/article",
"title": "Optional title",
"project_slug": "inbox"
}'
A successful request returns 202 Accepted and a source_id.
Poll Status
curl -sS https://app.knowlu.me/api/public/v1/sources/$SOURCE_ID \
-H "Authorization: Bearer $KNOWLUME_API_KEY"
Terminal statuses are succeeded and failed.
Fetch Filtered Fragments
curl -sS "https://app.knowlu.me/api/public/v1/sources/$SOURCE_ID/fragments?reproducibility_min=7&originality_min=6&sourcesness_min=5&limit=50" \
-H "Authorization: Bearer $KNOWLUME_API_KEY"
Score filters are inclusive. sourcesness keeps the existing public spelling.
Queue A Markdown Export
curl -sS -X POST "https://app.knowlu.me/api/public/v1/sources/$SOURCE_ID/export" \
-H "Authorization: Bearer $KNOWLUME_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"format": "markdown",
"reproducibility_min": 7,
"originality_min": 6,
"sourcesness_min": 5
}'
Then poll:
curl -sS "https://app.knowlu.me/api/public/v1/exports/$EXPORT_ID" \
-H "Authorization: Bearer $KNOWLUME_API_KEY"
MCP
MCP endpoint:
https://app.knowlu.me/mcp/
Authentication:
Authorization: Bearer kn_...
Claude Code example:
claude mcp add --transport http knowlume https://app.knowlu.me/mcp/ \
--header "Authorization: Bearer kn_..."
MCP is for agent clients that need direct access to Knowlume sources, fragments, and exports.
Export Webhooks
Users configure Integration Webhook in app settings.
The webhook payload is sent after successful Markdown export. It includes:
- event name;
- export id;
- source metadata;
- selected fragment Markdown;
- file URL when file delivery is enabled;
- API key metadata prefix.
The webhook is not a source-submission callback URL. It is a user-level export delivery setting.
Integration Design Rules
Use idempotency keys for source submission retries.
Poll source status before reading fragments.
Read Retry-After on retryable responses.
Avoid logging bearer tokens, source text, webhook payload bodies, or full exported content.
Keep external clients source-scoped until they need a project-wide query model.
For user-facing export behavior, see Fragments, Scores, And Export. For common request failures, see Troubleshooting.