Search Shortcut cmd + k | ctrl + k
keboola

DuckDB extension for Keboola Storage — query and write Keboola tables using standard SQL

Maintainer(s): keboola

Installing and Loading

INSTALL keboola FROM community;
LOAD keboola;

Example

-- Install and load the extension
INSTALL keboola FROM community;
LOAD keboola;

-- Connect to Keboola Storage
ATTACH 'https://connection.keboola.com' AS kbc (
    TYPE keboola,
    TOKEN 'my-storage-api-token'
);

-- Read data
SELECT * FROM kbc."in.c-crm".contacts WHERE status = 'active';

-- Write data
INSERT INTO kbc."in.c-crm".contacts VALUES ('42', 'Alice', '[email protected]');

-- Use secrets for credential management
CREATE SECRET my_kbc (
    TYPE keboola,
    TOKEN 'my-storage-api-token',
    URL 'https://connection.keboola.com'
);
ATTACH '' AS kbc2 (TYPE keboola, SECRET my_kbc);

About keboola

The Keboola extension exposes Keboola Storage as a native DuckDB database. Once attached, you can use standard SQL to read from and write to Keboola tables, join Keboola data with local DuckDB tables, and manage schemas.

Features:

  • SELECT with filter and projection pushdown to Keboola Query Service
  • INSERT, UPDATE, DELETE via Keboola Storage Importer API
  • CREATE TABLE, CREATE SCHEMA, DROP TABLE, DROP SCHEMA DDL support
  • SNAPSHOT mode: pull all data locally for offline/low-latency queries
  • Secret management for secure credential storage
  • Native Keboola type mapping (Snowflake types → DuckDB types)
  • Table and column descriptions from KBC metadata

Added Functions

function_name function_type description comment examples
keboola_pull table NULL NULL  
keboola_refresh_catalog scalar NULL NULL  
keboola_tables table NULL NULL  
keboola_version scalar NULL NULL  

Overloaded Functions

| function_name | function_type | description | comment | examples | |—————|—————|————-|———|———-|

Added Types

| type_name | type_size | logical_type | type_category | internal | |———–|———-:|————–|—————|———-|

Added Settings

| name | description | input_type | scope | aliases | |——|————-|————|——-|———|