Список провайдеров
GET /v1/infra/providers
Возвращает список облачных провайдеров, на которых можно создавать серверы. Поле available показывает, настроены ли у платформы учётные данные для провайдера и готов ли он создавать новые виртуальные машины (VM).
Примеры
curl — личный ключ
curl -H "X-Api-Key: YOUR_API_KEY" \
https://vibecode.bitrix24.tech/v1/infra/providers
curl — OAuth-приложение
curl -H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
https://vibecode.bitrix24.tech/v1/infra/providers
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/infra/providers', {
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data } = await res.json()
const active = data.filter(p => p.available)
console.log('Доступные провайдеры:', active.map(p => p.id))
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/infra/providers', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
array | Массив провайдеров |
data[].id |
string | ID провайдера для передачи в provider при создании сервера (например bitrix-cloud) |
data[].name |
string | Название для отображения пользователю |
data[].available |
boolean | true, если провайдер сконфигурирован на платформе и готов создавать серверы. false — создание закончится ошибкой NO_CREDENTIALS |
Пример ответа
{
"success": true,
"data": [
{
"id": "bitrix-cloud",
"name": "Bitrix Cloud",
"available": true
}
]
}
Пример ответа при ошибке
401 — не передан API-ключ:
{
"success": false,
"error": {
"code": "MISSING_API_KEY",
"message": "API key required. Pass via X-Api-Key header."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 401 | MISSING_API_KEY |
Не передан заголовок X-Api-Key |
| 401 | INVALID_API_KEY |
Неверный или просроченный API-ключ |
| 403 | SCOPE_DENIED |
У ключа нет скоупа vibe:infra (добавляется автоматически — сообщите в feedback если встретили) |
| 429 | RATE_LIMITED |
Превышен общий лимит запросов платформы |
Полный список общих ошибок API — Ошибки.
Известные особенности
- Ответ не пагинируется — список небольшой, возвращается целиком.
Смотрите также
- Тарифы провайдера —
GET /v1/infra/providers/:providerId/plans. - Регионы провайдера —
GET /v1/infra/providers/:providerId/regions. - Образы ОС провайдера —
GET /v1/infra/providers/:providerId/images. - Создание сервера — куда уходит выбранный
provider.
Тарифы провайдера
GET /v1/infra/providers/:providerId/plans
Возвращает список тарифов провайдера с характеристиками (CPU, RAM, диск, цена за работу и за сон). Значение id используется как параметр plan при создании сервера.
Параметры
| Параметр | В | Тип | Обяз. | Описание |
|---|---|---|---|---|
providerId |
path | string | да | ID провайдера из `GET /v1/infra/providers`, например bitrix-cloud |
Примеры
curl — личный ключ
curl -H "X-Api-Key: YOUR_API_KEY" \
https://vibecode.bitrix24.tech/v1/infra/providers/bitrix-cloud/plans
curl — OAuth-приложение
curl -H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
https://vibecode.bitrix24.tech/v1/infra/providers/bitrix-cloud/plans
JavaScript — личный ключ
const res = await fetch(
'https://vibecode.bitrix24.tech/v1/infra/providers/bitrix-cloud/plans',
{ headers: { 'X-Api-Key': 'YOUR_API_KEY' } }
)
const { data: plans } = await res.json()
plans.forEach(p => console.log(
`${p.id}: ${p.cpu}C / ${p.ram}MB / ${p.disk}GB — ${p.priceMonthly}₽/мес`
))
JavaScript — OAuth-приложение
const res = await fetch(
'https://vibecode.bitrix24.tech/v1/infra/providers/bitrix-cloud/plans',
{
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
}
)
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
array | Массив тарифов |
data[].id |
string | ID тарифа, передаётся как plan при создании сервера (bc-small, bc-medium, bc-large, bc-xlarge, bc-micro, bc-agent) |
data[].name |
string | Название тарифа с характеристиками для отображения пользователю |
data[].cpu |
number | Количество ядер |
data[].ram |
number | Оперативная память, МБ |
data[].disk |
number | Диск, ГБ |
data[].diskType |
string | Тип диска (network-ssd) |
data[].bandwidth |
number | Пропускная способность сети, Мбит/с |
data[].priceMonthly |
number | Цена за работающий сервер. Валюта зависит от провайдера: для bitrix-cloud — рубли (₽/месяц), для aws — доллары США (USD/месяц). Поля currency в ответе пока нет — ориентируйтесь по providerId |
data[].sleepPriceMonthly |
number | Цена за сервер в режиме sleeping. Валюта — как у priceMonthly: bitrix-cloud — рубли, aws — доллары США (USD) |
data[].description |
string | (Опционально) Доп. описание тарифа, например "Для ботов и агентов" у bc-micro |
data[].platformId |
string | (Опционально) Платформа виртуализации провайдера, например standard-v2 |
data[].coreFraction |
string | (Опционально) Доля CPU — например "5" для 5% загрузки ядра (preemptible-тарифы bc-micro, bc-agent) |
Пример ответа
{
"success": true,
"data": [
{
"id": "bc-small",
"name": "Small (2C / 2GB / 20GB SSD)",
"cpu": 2,
"ram": 2048,
"disk": 20,
"diskType": "network-ssd",
"bandwidth": 100,
"priceMonthly": 1200,
"sleepPriceMonthly": 180
},
{
"id": "bc-micro",
"name": "Micro (2C 5% / 4GB / 15GB SSD)",
"description": "Для ботов и агентов",
"cpu": 2,
"ram": 4096,
"disk": 15,
"diskType": "network-ssd",
"bandwidth": 100,
"priceMonthly": 600,
"sleepPriceMonthly": 130,
"platformId": "standard-v2",
"coreFraction": "5"
}
]
}
Пример ответа при ошибке
404 — неизвестный providerId:
{
"success": false,
"error": {
"code": "NO_CREDENTIALS",
"message": "No credentials configured for provider nonexistent"
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 401 | MISSING_API_KEY |
Не передан заголовок X-Api-Key |
| 401 | INVALID_API_KEY |
Неверный или просроченный API-ключ |
| 404 | NO_CREDENTIALS |
Провайдер с таким providerId не сконфигурирован на платформе |
| 429 | RATE_LIMITED |
Превышен общий лимит запросов платформы |
Полный список общих ошибок API — Ошибки.
Известные особенности
- Тарифы
bc-micro(2C 5% / 4GB / 15GB SSD, 600₽/мес) иbc-agent(2C 5% / 2GB / 20GB SSD, 300₽/мес) — вытесняемые (preemptible) с 5% загрузкой ядра. Предназначены для ботов и агентов, где CPU расходуется точечно. Обычные приложения ставьте наbc-smallи выше. - Следствие вытесняемости. Вытесняемый тариф дешевле, но облако принудительно перезапускает такую машину примерно раз в сутки (с коротким окном недоступности); платформа авто-будит её обратно. Для непрерывных 24/7-нагрузок (демоны, обработчики срочных заявок, всегда-онлайн агенты/боты) выбирайте невытесняемый тариф —
bc-smallи выше. В ответе каждого тарифа полеpreemptible(true= вытесняемый; отсутствует/false= невытесняемый) позволяет отличить их программно. priceMonthlyиsleepPriceMonthlyотдаются в валюте провайдера: дляbitrix-cloud— в рублях, дляaws— в долларах США (USD). Поляcurrencyв ответе пока нет — определяйте валюту поproviderIdзапроса.- Ответ не пагинируется.
Смотрите также
- Список провайдеров —
GET /v1/infra/providers. - Регионы провайдера —
GET /v1/infra/providers/:providerId/regions. - Образы ОС провайдера —
GET /v1/infra/providers/:providerId/images. - Создание сервера — параметр
plan.