Разделы
Начало работы
Быстрый стартCLI-флаги и конфиг
SQL
Диалект FileDB SQLDDLDMLSELECTФункции и выраженияТранзакции
Клиенты
HTTP APIНативные драйверыPostgreSQL / MySQL wire-протоколБинарный RPC
Возможности
RBAC (multi-user)Эмбеддинги (семантический поиск)Импорт файловБэкапыДемо-режим-витрина и управление .fdb
Эксплуатация
ДеплойАрхитектураFileDB на Windows: трей и автозагрузка
Справка
Сравнение с PostgreSQL / MySQL
AI
AI-функции: обзорAI-чат и AI-агентУмный экспорт и AI-маппинг импортаЭмбеддинги и гибридный поискНастройка AI: провайдеры и пресеты
Дашборды
Дашборды: обзорДатасеты и чартыNo-Code конструктор запросовAI-ассистент дашбордовВиджеты, сетка и фильтрыПубличные ссылки и экспортРаскладка, текстовые карточки и KPI-сравнение

HTTP API

Базовый цикл: логин → opendb → query

TOKEN=$(curl -s -X POST http://localhost:8080/api/auth/login 
  -H "Content-Type: application/json" 
  -d '{"password":"mypass"}' | jq -r .data.token)

curl -X POST http://localhost:8080/api/createdb 
  -H "X-Token: $TOKEN" --data-urlencode "name=blog"

curl -X POST http://localhost:8080/api/opendb 
  -H "X-Token: $TOKEN" --data-urlencode "name=blog"

curl -X POST http://localhost:8080/api/query 
  -H "X-Token: $TOKEN" 
  -H "Content-Type: application/json" 
  -d '{"sql":"CREATE TABLE posts (id INT AUTO_INCREMENT PRIMARY KEY, title TEXT, body TEXT)"}'

/api/opendb создаёт .fdb-файл, если его ещё нет — отдельно вызывать /api/createdb для уже существующей базы не обязательно.

Диалекты PostgreSQL/MySQL через HTTP

Тот же транслятор диалектов, что и в wire-протоколе, доступен и через HTTP — удобно, если вы уже ходите по HTTP, но пишете SQL в PG/MySQL-синтаксисе:

-- PG-style:
INSERT INTO users (name) VALUES ($1) RETURNING id;
INSERT INTO users (id, name) VALUES (1, 'Alice') ON CONFLICT (id) DO UPDATE SET name = EXCLUDED.name;

-- MySQL-style:
INSERT INTO users (name) VALUES (?);
INSERT INTO users (id, name) VALUES (1, 'Alice') ON DUPLICATE KEY UPDATE name = VALUES(name);
INSERT IGNORE INTO users ...
REPLACE INTO users ...

Передайте flavor через JSON-тело запроса, ?flavor=mysql в URL, либо заголовок X-SQL-Flavor: mysql.

Метрики

GET /api/metrics (JSON) и GET /metrics (формат Prometheus): filedb_open_databases, filedb_active_sessions, filedb_select_total/_insert_total/_update_total/_delete_total, filedb_auth_attempts_total/_auth_success_total, filedb_table_rows{database, table}.

Похожие страницы
← Назад
Транзакции
Далее →
Нативные драйверы