CORPOHOSTING SCI
CORPOHOSTING SCI

Acceso a:

  • Servicios Esenciales
  • Consola de orquestación.
  • Tickets y soporte NOC.
Iniciar Sesión Segura
¿Necesita ayuda? Contáctenos

Autenticación

La API de Corpohosting se basa en principios REST. Aceptamos cuerpos de solicitud codificados en JSON, devolvemos respuestas JSON y utilizamos códigos de respuesta HTTP estándar.

Toda solicitud a la API debe estar autenticada utilizando un Bearer Token. Puede generar tokens de API con distintos privilegios desde el Portal de Administración VDC.

BASE URL https://api.corpohosting.com/v2/

Tipos de Tokens

  • sk_live_*** : Tokens de Producción (Cobro activo).
  • sk_test_*** : Tokens de Sandbox (Sin facturación, recursos efímeros).
cURL Copiar
# Autenticar una petición de prueba comprobando la cuenta
curl -X GET https://api.corpohosting.com/v2/account \
  -H "Authorization: Bearer sk_live_y8bH1..." \
  -H "Content-Type: application/json"
                    

Manejo de Errores

Corpohosting utiliza códigos de respuesta HTTP convencionales para indicar el éxito o el fracaso de una solicitud de API.

CÓDIGO HTTP DESCRIPCIÓN
200 - OK Todo funcionó como se esperaba.
400 - Bad Request Faltan parámetros requeridos o hay un error de sintaxis en el JSON.
401 - Unauthorized Token de API inválido, expirado o revocado.
403 - Forbidden El Token no tiene permisos (Scopes) para ejecutar esta acción.
429 - Too Many Requests Ha superado el Rate Limit de 1000 req/minuto por endpoint.
JSON (Ejemplo de Error)
{
  "error": {
    "code": "invalid_parameter",
    "message": "El parámetro 'flavor_id' es requerido.",
    "doc_url": "https://docs.corpohosting.com/errors#invalid-parameter",
    "request_id": "req_c7f8a92b"
  }
}
                    

GET /v2/instances

Listar Instancias Activas

Retorna una lista paginada de todos los servidores virtuales aprovisionados bajo su Tenant actual. Puede utilizar parámetros de consulta para filtrar.

PARÁMETROS DE CONSULTA

limit
entero
Número de resultados a retornar (1 a 100). Default: 20.
status
string
Filtra por estado: ACTIVE, OFFLINE, PROVISIONING.
cURL
curl -X GET https://api.corpohosting.com/v2/instances?status=ACTIVE&limit=5 \
  -H "Authorization: Bearer sk_live_YOUR_TOKEN"
                    
Respuesta (200 OK)
{
  "object": "list",
  "data": [
    {
      "id": "inst-c7d8e9",
      "name": "erp-db-primary",
      "status": "ACTIVE",
      "ipv4_public": "192.168.10.55"
    }
  ],
  "has_more": true
}
                    

POST /v2/instances

Aprovisionar Instancia

Aprovisiona un nuevo servidor virtual KVM de alto rendimiento. Las instancias se facturan de forma horaria. Puede inyectar scripts de inicio mediante user_data.

BODY PARAMS (JSON)

name *
string
El hostname que se asignará al servidor. Ejemplo: erp-node-01.
flavor_id *
string
El ID de la plantilla de hardware. Define CPU, RAM y NVMe. Ejemplo: FLV-NVME-8C-16G.
image_id *
string
El sistema operativo base. Ejemplo: almalinux-9-x64 o ubuntu-24-04-lts.
vpc_id *
string
El ID de la red privada (VPC) donde se conectará la instancia.
ssh_keys
array of strings
Lista de IDs o Fingerprints de las llaves SSH públicas a inyectar en el usuario root. Recomendado para seguridad Zero-Trust.
user_data
string (Base64)
Un script cloud-init codificado en Base64 que se ejecutará en el primer arranque. Ideal para instalar Docker o Nginx automáticamente.
Petición de Ejemplo (cURL)
curl -X POST https://api.corpohosting.com/v2/instances \
  -H "Authorization: Bearer sk_live_YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "erp-node-01",
    "flavor_id": "FLV-NVME-8C-16G",
    "image_id": "ubuntu-24-04-lts",
    "vpc_id": "vpc-8f92a3",
    "ssh_keys": ["key-2b4c5"],
    "user_data": "I2Nsb3VkLWNvbmZpZwpwYWNrYWdlczoKICAtIGRvY2tlci5pbwo="
  }'
                    
Respuesta Estructurada (202 Accepted)
{
  "id": "inst-c7d8e9",
  "name": "erp-node-01",
  "status": "PROVISIONING",
  "created_at": "2026-05-01T17:20:27Z",
  "networks": [
    {
      "type": "private",
      "ipv4": "10.0.1.15",
      "mac_address": "00:1A:2B:3C:4D:5E"
    }
  ]
}