Terraform провайдер для управления инфраструктурой

Декларативное управление API-ключами, бюджетами, лимитами и вебхуками через Infrastructure as Code (IaC).

В зрелых инженерных командах ручное создание ключей через веб-интерфейс заменяется автоматизацией по принципу Infrastructure as Code. Официальный провайдер Terraform для Api Router позволяет декларативно описывать квоты, токены доступа и настройки алертов прямо в коде вашего GitOps-репозитория.

Декларативное описание ресурсов (HCL)

Вы описываете конфигурацию ключей в файлах .tf. Terraform автоматически отслеживает состояние (state), выпускает новые ключи при деплое окружения и безопасно сохраняет секреты в HashiCorp Vault.

Ключевые технические возможности

  • Автоматизация CI/CD пайплайнов: Выпуск временного API-ключа при создании ветки тестирования и удаление после мерджа.
  • Версионирование политик бюджетов: История изменений финансовых лимитов хранится в системе контроля версий git.
  • Исключение человеческого фактора: Защита от случайного удаления ключей или ручных ошибок в настройках фаервола.
  • Совместимость с OpenTofu: Поддержка open-source форка OpenTofu без изменения синтаксиса манифестов.

Пример интеграции в коде

Ниже представлен базовый пример отправки запроса с использованием стандартного клиента. Убедитесь, что ваш токен создан в разделе Ключи управления API:


import OpenAI from "openai";

// Инициализация стандартного SDK с базовым URL Api Router
const client = new OpenAI({
  baseURL: "https://api-router.velar.plus/v1",
  apiKey: process.env.API_ROUTER_KEY, // Ваш ключ от сервиса
});

async function run() {
  const response = await client.chat.completions.create({
    model: "anthropic/claude-sonnet", // Семейство модели без жесткой привязки к устаревающим номерам
    messages: [
      { role: "system", content: "Вы профессиональный инженер-архитектор." },
      { role: "user", content: "Как настроить надежную маршрутизацию запросов?" }
    ],
    temperature: 0.2,
  });

  console.log("Ответ модели:", response.choices[0].message.content);
}

run();
  

Связанные разделы документации

Для глубокого погружения в тему изучите следующие материалы: