API d'SWPanel: com obtenir el detall d'un servei
Com integrar l'endpoint /services/{id_service}/ de l'API d'SWPanel
L'API REST d'SWPanel permet automatitzar la gestió completa de serveis cloud, hosting, servidors i infraestructura mitjançant integracions externes. La seva arquitectura està dissenyada per facilitar operacions DevOps, sincronització amb ERPs, automatització de workflows i construcció de plataformes SaaS o eines internes.
Un dels endpoints més utilitzats dins de l'API és l'endpoint d'obtenció de detall de servei:
GET /v2026/services/{id_service}/
Documentació oficial OpenAPI:
https://api.swpanel.com/v2026/redoc?l=ES#tag/SERVICES/paths/~1v2026~1services~1{id_service}~1/get
Repositori oficial GitHub:
https://github.com/swpanel
La combinació entre documentació OpenAPI i exemples públics a GitHub permet accelerar enormement qualsevol integració tècnica amb SWPanel.
Què permet aquest endpoint
L'endpoint:
GET /v2026/services/{id_service}/
permet recuperar tota la informació detallada associada a un servei concret utilitzant el seu identificador únic (id_service).
Depenent del tipus de servei, la resposta pot incloure:
- Estat operatiu
- Tipus de producte
- Recursos contractats
- Configuració cloud
- Informació comercial
- Dates rellevants
- Informació de facturació
- Configuració tècnica
- Recursos assignats
- Dades específiques del servei
Aquest endpoint funciona com a nucli de consulta de pràcticament qualsevol automatització basada en SWPanel.
Importància de l'id_service
Tota l'arquitectura API d'SWPanel es basa en identificadors únics de servei.
L' id_service permet:
- Consultar informació detallada
- Automatitzar operacions
- Sincronitzar plataformes externes
- Gestionar infraestructura
- Construir dashboards
- Relacionar clients i serveis
- Executar automatitzacions DevOps
Això simplifica enormement el disseny d'integracions complexes.
Endpoint
GET /v2026/services/{id_service}/
Autenticació
L'API utilitza autenticació Bearer Token.
Capçalera requerida:
Authorization: Bearer TU_TOKEN
Els exemples publicats a GitHub per SW Hosting utilitzen aquest mateix model d'autenticació:
https://github.com/swpanel
Paràmetres
Paràmetre de ruta
| Paràmetre | Tipus | Descripció |
|---|---|---|
id_service |
integer/string | Identificador únic del servei |
Exemple CURL
curl --request GET
--url https://api.swpanel.com/v2026/services/XX012/ --header 'Authorization: Bearer TU_TOKEN'
Exemple de resposta JSON
{
"ID_service": "CJ878",
"values": {
"name": "ce2022050915002.dnssw.net",
"alias": "Cloud Web 1",
"status": "ready",
"type": {
"id_service_type": "18-CLA1",
"description": "Cloud One",
"group": {
"id_type_group": "CLD",
"description": "Cloud One"
}
},
"service": {
"customize": {
"OS": {
"id": "19-W01",
"name": "Debian - Buster v.10"
},
"specifications": {
"vcores": 4,
"GB": {
"ram": 8,
"hd": 160,
"snapshot": 160000
}
}
},
"ips": [{
"ip": "185.61.126.73"
}]
},
"location": {
"id_dc": "03"
},
"created_at": "01/06/2022"
}
}
Relació amb l'endpoint de llistat de serveis
El veritable potencial d'aquest endpoint apareix quan es combina amb l'endpoint de llistat de serveis actius:
GET /v2026/services/
Aquest patró és la base de pràcticament qualsevol integració empresarial o plataforma automatitzada.
Flux habitual:
1. Obtenir llistat de serveis
2. Recórrer cada id_service
3. Consultar detall individual
4. Processar informació
5. Executar automatitzacions
Aquest model permet construir plataformes completament automatitzades sobre SWPanel.
Avantatges d'obtenir el llistat de serveis via API
L' obtenció automàtica de serveis actius aporta enormes avantatges operatius.
Inventari automàtic
Permet sincronitzar automàticament:
- CMDB
- ITSM
- Inventaris interns
- Plataformes de monitorització
- ERPs
- Eines DevOps
Cada servei pot enriquir-se posteriorment utilitzant l'endpoint de detall.
Dashboards personalitzats
Moltes organitzacions necessiten quadres de comandament adaptats a les seves operacions.
Per exemple:
- Estat de Cloud
- Estat de dedicats
- Recursos cloud consumits
- Serveis suspesos
- Estat de renovació
- Consum d'infraestructura
- Alertes operatives
L' API permet generar dashboards completament personalitzats sense dependre exclusivament del panell gràfic.
Automatització DevOps
Aquest endpoint resulta especialment útil en entorns DevOps.
Permet:
- Automatitzar desplegaments
- Validar recursos
- Integrar Terraform
- Sincronitzar Ansible
- Construir pipelines CI/CD
- Gestionar infraestructura híbrida
SWPanel ha evolucionat especialment cap a automatització avançada i operacions API-first:
https://swpanel.com/ca/changelog
Integració amb GitHub i exemples oficials
Un dels aspectes més interessants de l'ecosistema SWPanel és la disponibilitat d'exemples públics i repositoris oficials a GitHub.
Repositori principal:
https://github.com/swpanel
Repositoris destacats:
| Repositori | Descripció |
|---|---|
| Example-Cloud-Purchase | Exemples de compra i modificació de Cloud Servers |
| Example-Login-Swpanel | Integració de login automàtic |
| Example-Domain-Lookup | Consulta de dominis mitjançant API |
| Example-Domain-Register | Registre automàtic de dominis |
| SW-WHMCS8 | Mòdul oficial WHMCS |
Aquests exemples permeten accelerar enormement integracions reals i automatitzacions empresarials.
Exemple pràctic en Python
import requests
TOKEN = "TU_TOKEN"
SERVICE_ID = XX012
url = f"https://api.swpanel.com/v2026/services/{SERVICE_ID}/"
headers = {
"Authorization": f"Bearer {TOKEN}"
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
print("Servei:", data["service_name"])
print("Estat:", data["status"])
print("CPU:", data["resources"]["cpu"])
else:
print("Error:", response.status_code)
Exemple pràctic en PHP
<?php
$token = "TU_TOKEN";
$id_service = XX012;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.swpanel.com/v2026/services/$id_service/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer $token"
],
]);
$response = curl_exec($curl);
curl_close($curl);
$data = json_decode($response, true);
print_r($data);
Automatització completa d'infraestructura
Un escenari habitual pot consistir en:
1. Consultar tots els serveis actius
2. Obtenir detall individual
3. Detectar incidències
4. Actualitzar dashboards
5. Sincronitzar ERP
6. Generar alertes
7. Automatitzar reporting
8. Executar workflows DevOps
Tot això sense intervenció manual.
Arquitectura REST moderna
L' API segueix una arquitectura REST clara i consistent.
Això facilita:
- Integracions ràpides
- Compatibilitat multi-llenguatge
- Escalabilitat
- Fàcil manteniment
- Automatització avançada
- Corba d'aprenentatge reduïda
L'estructura basada en id_service simplifica enormement la lògica d'integració.
Bones pràctiques recomanades
Emmagatzemar respostes en caché
Quan les dades no canvien constantment és recomanable utilitzar caché:
- Redis
- Memcached
- Caché local
Això millora el rendiment i redueix la càrrega sobre l'API.
Gestió d'errors HTTP
Sempre s'han de contemplar errors com:
| Codi | Significat |
|---|---|
| 401 | Token invàlid |
| 403 | Accés denegat |
| 404 | Servei inexistent |
| 429 | Rate limit |
| 500 | Error intern |
Validació d'estats
No s'ha d'assumir mai que un servei està operatiu únicament perquè existeixi.
Per exemple:
{
"status": "active"
}
Seguretat
Recomanacions habituals:
- Rotació periòdica de tokens
- Restricció d'accessos
- Registre d'auditories
- Ús exclusiu d'HTTPS
Casos d'ús empresarials
Plataformes SaaS
Permet sincronitzar automàticament infraestructura contractada.
Hosting reseller
Els revenedors poden:
- Gestionar inventari
- Automatitzar operacions
- Sincronitzar clients
- Crear panells personalitzats
Equips DevOps
Ideal per a:
- Infrastructure as Code
- Pipelines CI/CD
- Automatització cloud
- Observabilitat
Integracions ERP i CRM
Permet relacionar serveis amb:
- Clients
- Facturació
- Inventaris
- Plataformes comercials
Recursos tècnics i documentació
OpenAPI
https://api.swpanel.com/v2026/redoc
GitHub oficial
https://github.com/swpanel
Changelog SWPanel
https://swpanel.com/ca/changelog