Перейти к основному содержимому

Начало работы

Быстрый старт

Используйте эту страницу, когда нужен кратчайший надёжный путь от access token до созданной виртуальной машины ZennoHosting. Сценарий остаётся на уровне workflow и ссылается на generated reference там, где нужна точная форма схем.

Предварительные условия

  • Рабочий API token, уже выпущенный в аккаунтной части ZennoHosting.
  • Клиент, который умеет отправлять HTTPS-запросы с заголовком Authorization.

  • Права на чтение live-каталогов образов и тарифов до сборки payload для VM.

Проверка подключения

Когда токен уже получен, начните с безопасного read-запроса. Он подтверждает корректность base URL и bearer-заголовка до того, как вы начнёте готовить проект и VM.

curl --request GET \
  --url 'https://api.zennohosting.com/projects' \
  --header 'Authorization: Bearer <token>' \
  --header 'Accept: application/json'
  1. 1

    Получите рабочий access token

    Выпустите токен в аккаунтном flow ZennoHosting, затем сохраните его в runtime клиента или secret store.

  2. 2

    Проверьте доступ безопасным read-запросом

    Вызовите GET /projects, чтобы убедиться, что API принимает base URL и bearer-заголовок до подготовки provisioning inputs.

  3. 3

    Получите доступные provisioning inputs

    Сначала прочитайте configurations, images и VM tariffs. Если при создании VM вы хотите новый public IP, отдельно определите и тариф для public IP, а не переиспользуйте VM tariff.

  4. 4

    Создайте проект

    Проекты определяют scope для VM, SSH-ключей, сетей и public IP. Создайте проект до любых дочерних ресурсов и переиспользуйте его идентификатор в следующих вызовах.

  5. 5

    Подготовьте параметры доступа

    Решите, будет ли VM получать raw sshPublicKeys прямо в запросе создания или использовать существующие project-level sshKeyIds. Если вам нужна backup-related automation при provisioning, заранее решите, передавать ли plugins.

  6. 6

    Создайте VM

    Отправьте запрос создания VM с образом, VM tariff, именем и параметрами доступа. При необходимости в том же payload можно описать стратегию public IP, тариф public IP, подключения к private network и plugins.

  7. 7

    Сразу сохраните пароль, если он вернулся

    Ответ на создание VM может содержать пароль, который показывается только один раз. Если он есть, сохраните его немедленно, потому что API не следует рассматривать как место для повторного получения этого значения.

  8. 8

    Читайте VM, пока её состояние не станет пригодным

    Создание VM асинхронно. Воспринимайте 202 Accepted и commandId только как подтверждение приёма работы, затем читайте VM-resource и проверяйте необходимые operationStatus и bootStatus.

Ожидаемый результат

После завершения сценария у вас должен быть рабочий токен, идентификатор проекта, идентификатор VM, итоговые параметры доступа и подтверждённое состояние VM, а не просто принятая команда.

Типичные проблемы

Используйте идентификаторы из live-ответов API, а не скопированные значения из примеров. Большинство ошибок при первом provisioning возникают из-за устаревших projectId, imageId или tariffId, а также из-за предположения, что VM уже готова сразу после 202 Accepted.

Связанные endpoint