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…