API reference

Network surfaces

The REST, PostgreSQL wire and Arrow Flight SQL interfaces, their default ports and compatible clients.

Fabric Current 2 min read Updated

All three surfaces share one engine instance. No query logic is duplicated, and security rules are enforced identically on each.

Surface Protocol Default port Typical clients
REST API HTTP/JSON 8080 SDK clients, curl, Swagger UI, the Web UI
PostgreSQL wire PostgreSQL protocol v3 5432 psql, pgAdmin, Tableau, Power BI, DBeaver, JDBC, ODBC
Arrow Flight SQL gRPC over HTTP/2 8815 Apache Arrow ADBC, Polars, Spark, pandas, DuckDB

Authentication per surface#

Surface How to authenticate
REST Authorization: Bearer <api-key>, X-Api-Key: <api-key>, or Basic auth
PostgreSQL wire SCRAM-SHA-256 with your user name and password
Arrow Flight gRPC metadata Authorization: Bearer <api-key> or Authorization: Basic base64(userId:password)

Client libraries#

Official SDKs wrap the REST API for Python, .NET, Java and Node.js. See Client SDKs for installation and every sample.

.NET
using var client = new KiwiFabricClient("http://localhost:8080", apiKey);
var result = await client.QueryAsync("SELECT 1 AS one");
Java
KiwiFabricClient client = new KiwiFabricClient("http://localhost:8080", apiKey);
QueryResponse result = client.query("SELECT 1 AS one");
Node.js
const client = new KiwiFabricClient("http://localhost:8080", apiKey);
const result = await client.query("SELECT 1 AS one");
Python
with KiwiFabricClient("http://localhost:8080", api_key=api_key) as client:
    result = client.query("SELECT 1 AS one")