Skip to main content

Import

Bulk import data into your knowledge base. The import endpoint accepts the same source configuration options as the kiwifs import CLI command.
integer
Pages created or updated.
integer
Rows unchanged since last import.
integer
Pages tombstoned with _archived_at during a full sync (when source rows disappear).
array
Per-row error messages.
Use double-brace templates to map source fields to KiwiFS file paths and frontmatter:
Large imports can take time. The endpoint responds synchronously. For very large datasets, consider using the CLI kiwifs import command with progress output.

Upload file for import

Upload a file to the server for import processing.
The uploaded file is stored temporarily and can be referenced by subsequent POST /import calls.

List supported sources

Returns the list of supported import source types and their required configuration fields.

Import browse

List tables or collections for a source before you run a full import. Same base URL prefix: http://localhost:3333/api/kiwi.
Body fields depend on from (same family as POST /import):
Unsupported from values return 400 when browse is not implemented for that source.

Import preview

Fetch sample rows without writing pages. Uses the same JSON shape as POST /import, plus optional limit (default 5, max 20).

Import connections

When a connection store is enabled, the server persists metadata only (never secrets). Re-runs require credentials in the request body.

Ingest from files

Convert supported office and document formats to markdown (MarkItDown pipeline).
  • file must use an extension the server accepts for MarkItDown.
  • split_mode defaults to single.

Export

Export your knowledge base in structured formats.
string
required
Output format: jsonl, csv, or parquet.
string
Scope export to a subdirectory (e.g. concepts).
string
Comma-separated frontmatter fields to include as columns.
boolean
default:"false"
Include the full markdown body in the export.
Include outgoing wiki links for each page.
boolean
default:"false"
Include vector embeddings (if available).
integer
Maximum number of pages to export.

JSONL output

Each line is a JSON object representing one page:

CSV output

Use JSONL export with include-content=true to create backups or to feed your knowledge base into external pipelines.

Document export

Render markdown to PDF, HTML, slides, or a static site:
See Document export for the full request body and examples.

Airbyte endpoints

See Airbyte import.
Last modified on May 31, 2026