Разработчикам

API, командная строка и Terraform

Управляйте серверами, доменами, DNS-записями и функциями из кода. Большинство действий из панели можно выполнять и через REST API с персональным API-ключом.

1. Создайте API-ключ

В панели создайте ключ на странице «API-ключи». Ключ привязан к одному аккаунту и не даёт больше прав, чем ваша роль в нём; его можно сделать доступным только для чтения, ограничить отдельными продуктами и задать дату окончания. Ключ целиком показывается только один раз, при создании.

Перейти к API-ключам →

2. Ваш первый запрос

Передайте ключ в заголовке Authorization:

curl -H "Authorization: Bearer hz_..." \
  https://api.haizora.com/v1/portal/servers

Что нужно знать

  • Ключи только для чтения могут выполнять лишь запросы на чтение и ведут себя в аккаунте как роль «только чтение».
  • Ключ с правом записи работает с текущей ролью создавшего его человека; если этого человека исключат из аккаунта, ключ сразу перестанет действовать.
  • С помощью ключа нельзя создать другой ключ; действия с командой и приглашениями выполняются только в панели.
  • Ответы с ошибкой содержат поля error.code и error.message.
  • Для каждого ключа допускается не более 300 запросов в минуту; при превышении возвращается 429 и заголовок Retry-After.

Инструмент командной строки: haizoraГотовится к выпуску

Инструмент на Node.js без зависимостей (Node 18 и выше): вход, список серверов и управление питанием, DNS-записи и публикация функций.

haizora login                   # paste an hz_... token
haizora servers list
haizora servers power <id> reboot
haizora dns list example.com
haizora dns add example.com A www 203.0.113.10 --ttl 300
haizora workers deploy ./worker.js --name hello

Провайдер TerraformГотовится к выпуску

Ресурсы для сервера, управляемой базы данных, бессерверной функции и DNS-записи. Ресурсы сервера и базы данных создают заказ; услуга подготавливается после оплаты счёта.

provider "haizora" {}   # HAIZORA_TOKEN

resource "haizora_dns_record" "www" {
  domain_id = data.haizora_domain.main.id
  type      = "A"
  name      = "www"
  value     = "203.0.113.10"
}

resource "haizora_function" "hello" {
  name = "hello"
  code = file("worker.js")
}

Инструмент командной строки и провайдер Terraform ещё не опубликованы в npm и Terraform Registry. До этого можно напрямую использовать REST API.

Справочник API

Этот список формируется из документа OpenAPI 3.1. Вы можете скачать документ, чтобы сгенерировать клиенты с помощью Postman, Insomnia или openapi-generator.

Скачать openapi.json

Загрузка документации API…

Ваша корзина пуста

Вы пока не добавили ни одного товара в корзину.

Начать покупки