contabo / contabo-sdk
SDK PHP para la API Contabo (OpenAPI v1)
Requires
- php: ^8.2
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- guzzlehttp/guzzle: ^7.9
- guzzlehttp/psr7: ^2.7
Requires (Dev)
- laravel/pint: ^1.21
- orchestra/testbench: ^9.0|^10.0
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^11.5
This package is auto-updated.
Last update: 2026-06-25 23:40:59 UTC
README
SDK PHP para la API de Contabo v1, construido desde el OpenAPI oficial de contabo/cntb y envuelto con una capa manual para OAuth2, x-request-id automático y uso opcional en Laravel.
Instalación
composer require contabo/contabo-sdk
Uso PHP
use Contabo\Auth\Credentials; use Contabo\ContaboClient; $client = ContaboClient::fromCredentials(new Credentials( clientId: getenv('CONTABO_CLIENT_ID'), clientSecret: getenv('CONTABO_CLIENT_SECRET'), apiUser: getenv('CONTABO_API_USER'), apiPassword: getenv('CONTABO_API_PASSWORD'), )); $instances = $client->instances()->retrieveInstancesList();
El wrapper agrega Authorization: Bearer ... y x-request-id automáticamente. Si Contabo responde 401, el SDK solicita un token nuevo y reintenta una vez.
Uso Laravel
Publica la configuración:
php artisan vendor:publish --tag=contabo-config
Variables de entorno:
CONTABO_CLIENT_ID= CONTABO_CLIENT_SECRET= CONTABO_API_USER= CONTABO_API_PASSWORD= CONTABO_TRACE_ID=coderic-contabo-sdk
Ejemplo:
use Contabo\Laravel\Facades\Contabo; $images = Contabo::images()->listImages();
Cobertura API
El cliente generado cubre el OpenAPI oficial actual:
- 90 paths
/v1/* - 169 operaciones HTTP
- Compute, Object Storage, Private Networks, Users, Roles, Tags, Secrets, VIP, Domains, DNS, Firewalls y Troubleshooting
La documentación pública de Contabo se encuentra en api.contabo.com. La especificación vendoreada se sincroniza desde:
https://raw.githubusercontent.com/contabo/cntb/master/openapi/api/openapi.yaml
Desarrollo
composer install
composer test
composer analyse
composer format:check
composer sync-openapi
composer generate-client
Para verificar si el OpenAPI local difiere del oficial:
bash scripts/diff-openapi.sh
Seguridad
No hagas commit de credenciales reales. Las operaciones destructivas de Contabo (cancel, delete, reinstall, shutdown, etc.) afectan recursos y costos reales.
Licencia
MIT.