Infrastructure API
Один API, чтобы управлять проектами.
Плоскость /platform/v1 управляет вашими проектами, участниками, потребителями, устройствами, биллингом, доменами и SSO. Создайте проект, выпустите привязанный к нему ключ API и сделайте первый авторизованный вызов за минуты.
Плоскость /platform/v1
Всё, что нужно вашей интеграции.
Проекты и участники
Создавайте проекты, приглашайте участников и назначайте роли. Каждый запрос привязан к одному проекту.
Потребители и устройства
Заводите конечных пользователей вашего продукта и устройства, с которых они подключаются.
Биллинг
Тарифы, подписки, способы оплаты и права доступа — по каталогу вашего проекта.
Домены
Добавляйте и подтверждайте собственные домены для поверхностей вашего проекта.
SSO
Подключайте единый вход по OIDC для вашей команды и ваших клиентов.
Ключи API
самообслуживаниеВыпускайте, просматривайте, ротируйте и отзывайте привязанные к проекту ключи fvpn_ — самостоятельно, из консоли или через сам API.
От нуля до первого вызова
Создайте ключ, сделайте вызов.
Создайте проект
POST /platform/v1/projects — или выберите существующий проект в консоли.
Выпустите ключ API
POST /platform/v1/api-keys с меткой. Открытый секрет fvpn_v1_ возвращается ровно один раз — сохраните его сразу.
Сделайте первый авторизованный вызов
Передайте ключ как Bearer-токен в любой эндпоинт /platform/v1 — начните с GET /platform/v1/projects.
# 1. Mint a project-scoped key — the plaintext fvpn_v1_ secret is returned ONCE.
curl -X POST https://api.fvpn.net/platform/v1/api-keys \
-H "Authorization: Bearer $FORESTVPN_TOKEN" \
-H "X-Project-Id: $PROJECT_ID" \
-H "Content-Type: application/json" \
-d '{"name":"ci"}'
# 2. First authenticated call — present the new key as a Bearer token.
curl https://api.fvpn.net/platform/v1/projects \
-H "Authorization: Bearer fvpn_v1_…"import {
Configuration,
PlatformApiKeysApi,
ProjectsApi,
type CreateApiKeyRequest,
} from "@forestvpn/console-api";
const config = new Configuration({ basePath: "https://api.fvpn.net" });
// Mint a key (the secret is on the response exactly once).
const body: CreateApiKeyRequest = { name: "ci" };
const minted = await new PlatformApiKeysApi(config)
.createPlatformApiKey(projectId, body);
const secret = minted.data.secret; // fvpn_v1_…
// First authenticated call with the new key.
const keyed = new Configuration({ basePath: "https://api.fvpn.net", accessToken: secret });
const { data } = await new ProjectsApi(keyed).listMyProjects();Один источник API, авторизация Bearer по привязанному к проекту ключу. Открытый секрет показывается один раз при создании или ротации — API больше никогда его не возвращает.
Стройте на Infrastructure API.
Создайте проект, выпустите ключ API и сделайте первый авторизованный вызов за минуты.