# Vultr Integration via LowCodeAPI
**Last Updated**: January 27, 2025
## Overview
Cloud infrastructure platform offering GPU instances for AI and machine learning workloads with global data centers.
**Categories:**
- {'id': 'ai-cloud', 'name': 'AI Cloud'}
## Base Endpoint
https://api.lowcodeapi.com/vultr
**Important**: Always include the provider name in the URL path after `api.lowcodeapi.com/`
## Authentication
**Type:** TOKEN
**Official Documentation:** https://www.vultr.com/api
## URL Format (Important)
LowCodeAPI supports two URL formats. **Always try the New Format first**, then fall back to Old Format if needed.
### New Format (Priority)
- Path parameters stay in the URL path
- Do NOT include path parameters as query parameters
- Example: `https://api.lowcodeapi.com/{provider}/resource/{id}?api_token=XXX`
### Old Format (Fallback)
- Path parameters become query parameters
- Example: `https://api.lowcodeapi.com/{provider}/resource/id?id={id}&api_token=XXX`
### Decision Flow for AI Agents
1. Always use **New Format** first - keep path parameters in the URL path
2. If you get a 404 or error, try **Old Format** with sanitized path
3. Log which format worked for future requests to this provider
## API Categories
## Common Endpoints
### Get Account Info
**Method:** GET
**LowCodeAPI Path:** /account
**New Format URL:**
https://api.lowcodeapi.com/vultr/account?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/account?api_token=YOUR_API_TOKEN
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/account?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/account/operation/get-account
### Get Account BGP Info
**Method:** GET
**LowCodeAPI Path:** /account/bgp
**New Format URL:**
https://api.lowcodeapi.com/vultr/account/bgp?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/account/bgp?api_token=YOUR_API_TOKEN
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/account/bgp?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/account/operation/get-account-bgp
### Get Account Bandwidth Info
**Method:** GET
**LowCodeAPI Path:** /account/bandwidth
**New Format URL:**
https://api.lowcodeapi.com/vultr/account/bandwidth?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/account/bandwidth?api_token=YOUR_API_TOKEN
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/account/bandwidth?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/account/operation/get-account-bandwidth
### List Applications
**Method:** GET
**LowCodeAPI Path:** /applications
**New Format URL:**
https://api.lowcodeapi.com/vultr/applications?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/applications?api_token=YOUR_API_TOKEN
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| type | string | |
| cursor | string | |
| per_page | number | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/applications?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/applications/operation/list-applications
### List API Keys
**Method:** GET
**LowCodeAPI Path:** /apikeys
**New Format URL:**
https://api.lowcodeapi.com/vultr/apikeys?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/apikeys?api_token=YOUR_API_TOKEN
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/apikeys?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/api-keys/operation/list-apikeys
### Get API Key
**Method:** GET
**LowCodeAPI Path:** /apikeys/{apikey-id}
**New Format URL:**
https://api.lowcodeapi.com/vultr/apikeys/{apikey-id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/apikeys/apikeyid?apikey-id={apikey-id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| apikey-id | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/apikeys/{apikey-id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/api-keys/operation/get-apikeys
### Create API Key
**Method:** POST
**LowCodeAPI Path:** /apikeys
**New Format URL:**
https://api.lowcodeapi.com/vultr/apikeys?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/apikeys?api_token=YOUR_API_TOKEN
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| date_expire | string | |
| expire | boolean | |
| name | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/vultr/apikeys?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/api-keys/operation/post-apikeys
### Delete API Key
**Method:** DELETE
**LowCodeAPI Path:** /apikeys/{apikey-id}
**New Format URL:**
https://api.lowcodeapi.com/vultr/apikeys/{apikey-id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/apikeys/apikeyid?apikey-id={apikey-id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| apikey-id | string | |
**Example Request (New Format):**
```bash
curl -X DELETE 'https://api.lowcodeapi.com/vultr/apikeys/{apikey-id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/api-keys/operation/delete-apikeys
### List Backups
**Method:** GET
**LowCodeAPI Path:** /backups
**New Format URL:**
https://api.lowcodeapi.com/vultr/backups?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/backups?api_token=YOUR_API_TOKEN
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| cursor | string | |
| instance_id | string | |
| per_page | number | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/backups?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/backups/operation/get-backups
### Get Backup
**Method:** GET
**LowCodeAPI Path:** /backups/{backup-id}
**New Format URL:**
https://api.lowcodeapi.com/vultr/backups/{backup-id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/vultr/v2/backups/backupid?backup-id={backup-id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| backup-id | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/vultr/backups/{backup-id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://www.vultr.com/api/#tag/backups/operation/get-backups-backup-id
## Usage Examples
### Example 1: Basic API Request (New Format)
Making a simple GET request to retrieve resources:
```bash
# Get a list of resources - no path parameters needed
curl -X GET "https://api.lowcodeapi.com/vultr/endpoint?api_token=YOUR_API_TOKEN"
```
### Example 2: Request with Path Parameters (New Format)
Retrieving a specific resource using its ID:
```bash
# Get specific resource by ID - replace RESOURCE_ID with actual ID from previous response
curl -X GET "https://api.lowcodeapi.com/vultr/endpoint/{RESOURCE_ID}?api_token=YOUR_API_TOKEN"
# Note: RESOURCE_ID typically comes from a previous list request or from the provider dashboard
```
### Example 3: POST Request with Body (New Format)
Creating a new resource:
```bash
# Create a new resource
curl -X POST "https://api.lowcodeapi.com/vultr/endpoint?api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"field": "value", "another_field": "another_value"}'
```
## Error Handling
LowCodeAPI returns standard HTTP status codes. Common errors:
| Status Code | Description |
|-------------|-------------|
| 200 | Success - Request completed successfully |
| 400 | Bad Request - Invalid parameters or request body |
| 401 | Unauthorized - Invalid or missing API token |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Endpoint or resource doesn't exist |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Server Error - Provider API error |
All error responses include error details:
```json
{
"data": {
"error": {
"message": "Error description",
"code": "ERROR_CODE"
}
}
}
```
## Complete Endpoint Reference
| Endpoint | Method | Category |
|----------|--------|----------|
| Get Account Info | GET | Account |
| Get Account BGP Info | GET | Account |
| Get Account Bandwidth Info | GET | Account |
| List Applications | GET | Applications |
| List API Keys | GET | API Keys |
| Get API Key | GET | API Keys |
| Create API Key | POST | API Keys |
| Delete API Key | DELETE | API Keys |
| List Backups | GET | Backups |
| Get Backup | GET | Backups |
| List Billing History | GET | Billing |
| List Invoices | GET | Billing |
| Get Invoice | GET | Billing |
| Get Invoice Items | GET | Billing |
| List Pending Charges | GET | Billing |
| Get Pending Charges CSV | GET | Billing |
| List Block Storage | GET | Block Storage |
| Create Block Storage | POST | Block Storage |
| Get Block Storage | GET | Block Storage |
| Update Block Storage | PATCH | Block Storage |
| Delete Block Storage | DELETE | Block Storage |
| Attach Block Storage | POST | Block Storage |
| Detach Block Storage | POST | Block Storage |
| List Instances | GET | Instances |
| Create Instance | POST | Instances |
| Get Instance | GET | Instances |
| Update Instance | PATCH | Instances |
| Delete Instance | DELETE | Instances |
| Start Instance | POST | Instances |
| Reboot Instance | POST | Instances |
| Halt Instance | POST | Instances |
| Reinstall Instance | POST | Instances |
| Get Instance Bandwidth | GET | Instances |
| List Instance IPv4 Information | GET | Instances |
| Create IPv4 | POST | Instances |
| Get Instance IPv6 Information | GET | Instances |
| List Instance VPCs | GET | Instances |
| Attach VPC to Instance | POST | Instances |
| Detach VPC from Instance | POST | Instances |
| Get Instance User Data | GET | Instances |
| Halt Instances | POST | Instances |
| Reboot Instances | POST | Instances |
| Start Instances | POST | Instances |
| List DNS Domains | GET | DNS |
| Create DNS Domain | POST | DNS |
| Get DNS Domain | GET | DNS |
| Update DNS Domain | PUT | DNS |
| Delete Domain | DELETE | DNS |
| List DNS Records | GET | DNS |
| Create DNS Record | POST | DNS |
| Get DNS Record | GET | DNS |
| Update DNS Record | PATCH | DNS |
| Delete DNS Record | DELETE | DNS |
| List Firewall Groups | GET | Firewall |
| Create Firewall Group | POST | Firewall |
| Get Firewall Group | GET | Firewall |
| Update Firewall Group | PUT | Firewall |
| Delete Firewall Group | DELETE | Firewall |
| List Firewall Rules | GET | Firewall |
| Create Firewall Rule | POST | Firewall |
| Get Firewall Rule | GET | Firewall |
| Delete Firewall Rule | DELETE | Firewall |
| List Bare Metal Instances | GET | Bare Metal |
| Create Bare Metal Instance | POST | Bare Metal |
| Get Bare Metal Instance | GET | Bare Metal |
| Update Bare Metal Instance | PATCH | Bare Metal |
| Delete Bare Metal Instance | DELETE | Bare Metal |
| Start Bare Metal Instance | POST | Bare Metal |
| Reboot Bare Metal Instance | POST | Bare Metal |
| Halt Bare Metal Instance | POST | Bare Metal |
| Reinstall Bare Metal Instance | POST | Bare Metal |
| List Bare Metal IPv4 Addresses | GET | Bare Metal |
| List Bare Metal IPv6 Addresses | GET | Bare Metal |
| Get Bare Metal Bandwidth | GET | Bare Metal |
| Get Bare Metal User Data | GET | Bare Metal |
| List Load Balancers | GET | Load Balancers |
| Create Load Balancer | POST | Load Balancers |
| Get Load Balancer | GET | Load Balancers |
| Update Load Balancer | PUT | Load Balancers |
| Delete Load Balancer | DELETE | Load Balancers |
| List Snapshots | GET | Snapshots |
| Create Snapshot | POST | Snapshots |
| Get Snapshot | GET | Snapshots |
| Update Snapshot | PUT | Snapshots |
| Delete Snapshot | DELETE | Snapshots |
| Create Snapshot from URL | POST | Snapshots |
| List SSH Keys | GET | SSH Keys |
| Create SSH Key | POST | SSH Keys |
| Get SSH Key | GET | SSH Keys |
| Update SSH Key | PATCH | SSH Keys |
| Delete SSH Key | DELETE | SSH Keys |
| List Startup Scripts | GET | Startup Scripts |
| Create Startup Script | POST | Startup Scripts |
| Get Startup Script | GET | Startup Scripts |
| Update Startup Script | PATCH | Startup Scripts |
| Delete Startup Script | DELETE | Startup Scripts |
| List Regions | GET | Regions |
| List Available Plans in Region | GET | Regions |
| List Plans | GET | Plans |
| List Bare Metal Plans | GET | Plans |
| List Operating Systems | GET | Operating Systems |
| List ISOs | GET | ISO |
| Create ISO | POST | ISO |
| Get ISO | GET | ISO |
| Delete ISO | DELETE | ISO |
| List Public ISOs | GET | ISO |
| List VPCs | GET | VPCs |
| Create VPC | POST | VPCs |
| Get VPC | GET | VPCs |
| Update VPC | PUT | VPCs |
| Delete VPC | DELETE | VPCs |
| List VPC Attachments | GET | VPCs |
| Attach VPC to Resource | POST | VPCs |
| Detach VPC from Resource | DELETE | VPCs |
| List Reserved IPs | GET | Reserved IPs |
| Create Reserved IP | POST | Reserved IPs |
| Get Reserved IP | GET | Reserved IPs |
| Update Reserved IP | PATCH | Reserved IPs |
| Delete Reserved IP | DELETE | Reserved IPs |
| Attach Reserved IP | POST | Reserved IPs |
| Detach Reserved IP | POST | Reserved IPs |
| Convert Instance IP to Reserved IP | POST | Reserved IPs |
| List Users | GET | Users |
| Create User | POST | Users |
| Get User | GET | Users |
| Update User | PATCH | Users |
| Delete User | DELETE | Users |
| List Kubernetes Clusters | GET | Kubernetes |
| Create Kubernetes Cluster | POST | Kubernetes |
| Get Kubernetes Cluster | GET | Kubernetes |
| Update Kubernetes Cluster | PUT | Kubernetes |
| Delete Kubernetes Cluster | DELETE | Kubernetes |
| Get Kubernetes Cluster Config | GET | Kubernetes |
| List Kubernetes Node Pools | GET | Kubernetes |
| Create Kubernetes Node Pool | POST | Kubernetes |
| Get Kubernetes Node Pool | GET | Kubernetes |
| Update Kubernetes Node Pool | PATCH | Kubernetes |
| Delete Kubernetes Node Pool | DELETE | Kubernetes |
| List Kubernetes Versions | GET | Kubernetes |
| List Managed Databases | GET | Managed Databases |
| Create Managed Database | POST | Managed Databases |
| Get Managed Database | GET | Managed Databases |
| Update Managed Database | PATCH | Managed Databases |
| Delete Managed Database | DELETE | Managed Databases |
| List Managed Database Plans | GET | Managed Databases |
| List Object Storage | GET | Object Storage |
| Create Object Storage | POST | Object Storage |
| Get Object Storage | GET | Object Storage |
| Update Object Storage | PUT | Object Storage |
| Delete Object Storage | DELETE | Object Storage |
| Regenerate Object Storage Keys | POST | Object Storage |
| List Object Storage Clusters | GET | Object Storage |
| List CDN Endpoints | GET | CDN |
| Create CDN Endpoint | POST | CDN |
| Get CDN Endpoint | GET | CDN |
| Update CDN Endpoint | PATCH | CDN |
| Delete CDN Endpoint | DELETE | CDN |
| List Container Registries | GET | Container Registry |
| Create Container Registry | POST | Container Registry |
| Get Container Registry | GET | Container Registry |
| Update Container Registry | PUT | Container Registry |
| Delete Container Registry | DELETE | Container Registry |
| List Container Registry Repositories | GET | Container Registry |
| Get Container Registry Repository | GET | Container Registry |
| List Container Registry Artifacts | GET | Container Registry |
| List Serverless Functions | GET | Serverless Inference |
| Create Serverless Function | POST | Serverless Inference |
| Get Serverless Function | GET | Serverless Inference |
| Update Serverless Function | PATCH | Serverless Inference |
| Delete Serverless Function | DELETE | Serverless Inference |
| Get Serverless Function Usage | GET | Serverless Inference |
| List Storage Gateways | GET | Storage Gateways |
| Create Storage Gateway | POST | Storage Gateways |
| Get Storage Gateway | GET | Storage Gateways |
| Update Storage Gateway | PATCH | Storage Gateways |
| Delete Storage Gateway | DELETE | Storage Gateways |
| List Storage Gateway Exports | GET | Storage Gateways |
| List VFS Regions | GET | VFS |
| List VFS | GET | VFS |
| Create VFS | POST | VFS |
| Get VFS | GET | VFS |
| Update VFS | PATCH | VFS |
| Delete VFS | DELETE | VFS |
| List VFS Attachments | GET | VFS |
| List Logs | GET | Logs |
## API Definition Endpoints
You can fetch the complete API specification for this provider:
**New Format (OpenAPI spec):**
```bash
curl 'https://backend.lowcodeapi.com/vultr/openapi'
```
**Old Format (API definition):**
```bash
curl 'https://backend.lowcodeapi.com/vultr/definition'
```
## Response Format
All responses are wrapped in a `data` key:
```json
{
"data": {
// Actual response from provider (object or array)
}
}
```