For AI agents: markdown of this page — /docs-content-en/infra/providers/list.md documentation index — /llms.txt
List of providers
GET /v1/infra/providers
Returns the list of cloud providers on which servers can be created. The available field shows whether the platform has credentials configured for the provider and whether it is ready to create new virtual machines (VMs).
Examples
curl — personal key
curl -H "X-Api-Key: YOUR_API_KEY" \
https://vibecode.bitrix24.com/v1/infra/providers
curl — OAuth application
curl -H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
https://vibecode.bitrix24.com/v1/infra/providers
JavaScript — personal key
const res = await fetch('https://vibecode.bitrix24.com/v1/infra/providers', {
headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const { data } = await res.json()
const active = data.filter(p => p.available)
console.log('Available providers:', active.map(p => p.id))
JavaScript — OAuth application
const res = await fetch('https://vibecode.bitrix24.com/v1/infra/providers', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data } = await res.json()
Response fields
| Field | Type | Description |
|---|---|---|
success |
boolean | Always true on success |
data |
array | Array of providers |
data[].id |
string | Provider ID to pass in provider when creating a server (e.g. bitrix-cloud) |
data[].name |
string | Display name for the user |
data[].available |
boolean | true if the provider is configured on the platform and ready to create servers. false — creation will fail with a NO_CREDENTIALS error |
Response example
{
"success": true,
"data": [
{
"id": "bitrix-cloud",
"name": "Bitrix24 Cloud",
"available": true
}
]
}
Error response example
401 — API key not provided:
{
"success": false,
"error": {
"code": "MISSING_API_KEY",
"message": "API key required. Pass via X-Api-Key header."
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| 401 | MISSING_API_KEY |
The X-Api-Key header was not provided |
| 401 | INVALID_API_KEY |
Invalid or expired API key |
| 403 | SCOPE_DENIED |
The key lacks the vibe:infra scope (added automatically — report it in feedback if you hit this) |
| 429 | RATE_LIMITED |
The platform's overall request limit was exceeded |
Full list of common API errors — Errors.
Known specifics
- The response is not paginated — the list is small and returned in full.
See also
- Provider plans —
GET /v1/infra/providers/:providerId/plans. - Provider regions —
GET /v1/infra/providers/:providerId/regions. - Provider OS images —
GET /v1/infra/providers/:providerId/images. - Creating a server — where the chosen
providergoes.
Provider plans
GET /v1/infra/providers/:providerId/plans
Returns the provider's plans with their specs (CPU, RAM, disk, price while running and price while sleeping). The id value is used as the plan parameter when creating a server.
Parameters
| Parameter | In | Type | Req. | Description |
|---|---|---|---|---|
providerId |
path | string | yes | Provider ID from GET /v1/infra/providers, e.g. bitrix-cloud |
Examples
curl — personal key
curl -H "X-Api-Key: YOUR_API_KEY" \
https://vibecode.bitrix24.com/v1/infra/providers/bitrix-cloud/plans
curl — OAuth application
curl -H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
https://vibecode.bitrix24.com/v1/infra/providers/bitrix-cloud/plans
JavaScript — personal key
const res = await fetch(
'https://vibecode.bitrix24.com/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} Ꝟ/mo`
))
JavaScript — OAuth application
const res = await fetch(
'https://vibecode.bitrix24.com/v1/infra/providers/bitrix-cloud/plans',
{
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
}
)
Response fields
| Field | Type | Description |
|---|---|---|
success |
boolean | Always true on success |
data |
array | Array of plans |
data[].id |
string | Plan ID, passed as plan when creating a server (bc-small, bc-medium, bc-large, bc-xlarge) |
data[].name |
string | Display name of the plan, including its specs |
data[].cpu |
number | Number of cores |
data[].ram |
number | RAM, MB |
data[].disk |
number | Disk, GB |
data[].diskType |
string | Disk type (network-ssd) |
data[].bandwidth |
number | Network bandwidth, Mbps |
data[].priceMonthly |
number | Catalog price of a running server in Vibe credits (Ꝟ) per month. The amount actually billed for a given Bitrix24 account may differ from the catalog price |
data[].sleepPriceMonthly |
number | Catalog price of a server in sleeping mode in Vibe credits (Ꝟ) per month. The amount actually billed may differ |
Response example
{
"success": true,
"data": [
{
"id": "bc-small",
"name": "Small (2C / 2GB / 20GB SSD)",
"cpu": 2,
"ram": 2048,
"disk": 20,
"diskType": "network-ssd",
"bandwidth": 100,
"priceMonthly": 24,
"sleepPriceMonthly": 2.5
},
{
"id": "bc-medium",
"name": "Medium (2C / 4GB / 40GB SSD)",
"cpu": 2,
"ram": 4096,
"disk": 40,
"diskType": "network-ssd",
"bandwidth": 100,
"priceMonthly": 50,
"sleepPriceMonthly": 5
}
]
}
Error response example
404 — unknown providerId:
{
"success": false,
"error": {
"code": "NO_CREDENTIALS",
"message": "No credentials configured for provider nonexistent"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| 401 | MISSING_API_KEY |
The X-Api-Key header was not provided |
| 401 | INVALID_API_KEY |
Invalid or expired API key |
| 404 | NO_CREDENTIALS |
A provider with this providerId is not configured on the platform |
| 429 | RATE_LIMITED |
The platform's overall request limit was exceeded |
Full list of common API errors — Errors.
Known specifics
- Plans range from
bc-small(2C / 2GB / 20GB SSD) tobc-xlarge(4C / 16GB / 160GB SSD). Pick a plan based on your application's RAM and disk requirements. - The response is not paginated.
See also
- List of providers —
GET /v1/infra/providers. - Provider regions —
GET /v1/infra/providers/:providerId/regions. - Provider OS images —
GET /v1/infra/providers/:providerId/images. - Creating a server — the
planparameter.