WEDOS REST API está todavía en desarrollo. El acceso y las funciones pueden cambiar sin previo aviso.
Este artículo describe parcialmente el endpoint WEDOS.protection de WEDOS REST API. Dominios de WEDOS.protection y miembros tienen sus propios artículos. Para WEDOS API (WAPI), consulte WAPI – WEDOS Protection.
Encontrará información básica sobre WEDOS REST API en el artículo WEDOS REST API Manual.
En este artículo encontrará la siguiente información:
- Acceso al endpoint DNS
- Detalles del endpoint DNS:
- Notas
Acceso al endpoint WGP
WGP HTTP REST API v2 sirve para gestionar dominios, servicios e invitaciones de cogestión en WEDOS.protection (WGP).
URL base y autenticación
La URL base de los endpoints WGP es: https://api.wedos.com/v2
Para la autenticación se utiliza únicamente OAuth2: incluya un token de acceso válido en la cabecera de la solicitud (Authorization: Bearer <TOKEN>) con el scope wgp . Sin un token válido, la API devuelve el error 2000.
Puede añadir el parámetro example=1 a cualquier endpoint como parámetro GET (?example=1 en los endpoints sin parámetros GET propios; en caso contrario, &example=1). La API devuelve entonces un comando curl de ejemplo para esa llamada, sin necesidad de indicar parámetros reales. También en este modo se requiere una autenticación válida.
Resumen de endpoints
| Método | Endpoint | Descripción |
|---|---|---|
| GET | /services | Lista de sus servicios WGP independientes |
| POST | /services/{service_id}/cache/purge | Purga de la caché de la CDN |
| POST | /services/{service_id}/renew | Renovación de un servicio |
| POST | /services/{service_id}/template-replicate | Replicación de la configuración de un dominio de plantilla |
| PATCH | /services/{service_id} | Cambio de la variante o el periodo de suscripción del servicio |
| DELETE | /services/{service_id} | Eliminación o cancelación de un servicio |
Formato de la respuesta
La respuesta de la API es siempre un objeto JSON con las claves code (código de retorno), msg (descripción textual), request_id (identificador de la solicitud) y, cuando proceda, data (datos devueltos en caso de éxito).
Códigos de retorno generales válidos para todos los endpoints (capa REST, con independencia de la operación concreta):
1000– operación correcta (OK)2000– autenticación (token Bearer de OAuth2) ausente o no válida2004– se ha superado el tamaño máximo de la solicitud (URL o cuerpo de la solicitud)4000– método de la API desconocido o no admitido (la combinación de método HTTP y ruta invocada no existe)4001– la validación de la entrada ha fallado4005– no hay ningún ejemplo disponible para el endpoint actual en el modoexample=1.6000– error interno al inicializar el comando WAPI subyacente
Además, cada endpoint devuelve sus propios códigos de negocio específicos de la operación (correspondientes al comando WAPI subyacente). Se indican en el apartado Códigos de retorno de cada endpoint.
GET /services
Devuelve la lista de los servicios WEDOS Global Protection independientes propios del usuario de OAuth2 conectado (creados directamente como servicio WGP, tabla hosting_wedos_protection).
Parámetros:
status– opcional, query – filtro por un estado de servicio concreto (el valor no se valida contra la lista de códigos de estado)
Códigos de retorno:
1000– OK
Datos de la respuesta: Un array de servicios; cada elemento contiene ID, name, status, expiration.
Ejemplo:
curl -X GET -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/wgp/services?status=active'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3d4",
"data": [
{
"ID": 435,
"name": "domain1.tld",
"status": "active",
"expiration": "2027-10-01 00:00:00"
}
]
}
POST /services/{service_id}/cache/purge
Purga la caché de la CDN de un dominio conectado a WGP. Puede referirse tanto a un servicio WGP independiente como a un dominio con WGP como complemento (hosting_domain); el tipo de servicio se indica con el parámetro service_type .
Parámetros:
service_id– obligatorio, path – ID local del servicioservice_type– opcional – tipo de servicio,hosting_wedos_protection(predeterminado) ohosting_domainlimiter_decay– opcional, número – tiempo en segundos durante el cual se limita la purga repetida; predeterminado 5limiter_reset– opcional, booleano – cancela el límite actual; predeterminadofalse
Códigos de retorno:
1000– OK2100– falta un parámetro obligatorio2101– valor de parámetro no válido2406– dominio o servicio no encontrado2415– el limitador sigue activo: la purga no se puede repetir ahora mismo3223– el servicio pertenece a otra cuenta de cliente2400– error interno – código de retorno no registrado
Datos de la respuesta:
domain– nombre de dominiodomain_id– ID del dominio en WGPdomain_tld– TLD del dominioservice_id– ID del serviciowedos_client_id– ID del cliente en WGPlimiter_available_in– dentro de cuántos segundos se puede volver a usar la función (documentado solo para el error2415; sin embargo, la implementación actual no devuelve la parte data en caso de error, véanse las notas)
Ejemplo:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/wgp/services/435/cache/purge' \
--data '{"limiter_decay":5,"limiter_reset":0}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3d4",
"data": {
"domain": "domain1.tld",
"domain_id": 98765,
"domain_tld": "tld",
"service_id": 435,
"wedos_client_id": 10234
}
}
POST /services/{service_id}/renew
Renueva el servicio WGP por otro periodo de facturación.
Parámetros:
service_id– obligatorio, path – ID del servicio
Códigos de retorno:
1000– OK2100– falta un parámetro obligatorio2101– valor de parámetro no válido2152– la renovación no está permitida en el estado actual del servicio2279– la cuenta de prepago está bloqueada2281– la cuenta de prepago no está activa2282– no se puede pagar desde la cuenta de prepago en la moneda indicada2283– saldo insuficiente en la cuenta de prepago2284– error en los datos de contacto de la cuenta de prepago2293– no se puede obtener el saldo de crédito de la cuenta de prepago2297– no se puede determinar si la cuenta de prepago incluye IVA2406– servicio no encontrado2409– no se pudo renovar el servicio
Datos de la respuesta:
service_id– ID del servicioname– nombre de dominiodate_from,date_to– fechas de validez del nuevo periodofakt_order_num– número de pedido de la renovacióncurrency– moneda de la cuenta de prepagoprice– importe de la renovacióncredit– saldo de la cuenta de prepago después (nullen los servicios FREE/TRIAL)
Ejemplo:
curl -X POST -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/wgp/services/435/renew'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3d4",
"data": {
"service_id": 435,
"name": "domain1.tld",
"date_from": "2027-10-01",
"date_to": "2028-10-01",
"fakt_order_num": "2026123457",
"currency": "CZK",
"price": 499,
"credit": 502
}
}
POST /services/{service_id}/template-replicate
Replica (aplica) la configuración de un dominio de plantilla a un dominio o servicio WGP existente.
Parámetros:
service_id– obligatorio, path – ID del servicio al que se replica la configuracióntemplate_domain_id– obligatorio – ID del dominio de plantilla (véase GET /domains/templates)service_type– opcional – tipo de servicio,hosting_wedos_protection(predeterminado) ohosting_domain
Códigos de retorno:
1000– OK2100– falta un parámetro obligatorio2101– valor de parámetro no válido2401– dominio no válido para la replicación2402– dominio de plantilla no válido2403– el usuario del dominio y el del dominio de plantilla no coinciden2404– el plan de suscripción del dominio y el del dominio de plantilla no coinciden2405– se ha alcanzado el límite diario de replicaciones2406– dominio o servicio no encontrado2407– dominio de plantilla no encontrado2400– error interno – código de retorno no registrado
Datos de la respuesta:
domain– nombre de dominiodomain_id– ID del dominioservice_id– ID del servicioservice_type– tipo de serviciotemplate_domain_id– ID del dominio de plantilla utilizadoreplications_count– número de replicaciones realizadas hasta ahorareplications_limit– número máximo de replicaciones permitidas
Ejemplo:
curl -X POST -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/wgp/services/435/template-replicate' \
--data '{"template_domain_id":123}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3d4",
"data": {
"domain": "domain1.tld",
"domain_id": 98765,
"service_id": 435,
"service_type": "hosting_wedos_protection",
"template_domain_id": 123,
"replications_count": 2,
"replications_limit": 5
}
}
PATCH /services/{service_id}
Cambia la variante o el periodo de suscripción de un servicio WGP existente.
Parámetros:
service_id– obligatorio, path – ID del servicionew_variant_id– opcional, número – nueva variante del servicionew_period_id– opcional, número – nuevo periodo de suscripción
Debe indicarse al menos uno de los parámetros new_variant_id/new_period_id .
Códigos de retorno:
1000– OK2100– falta un parámetro obligatorio2101– valor de parámetro no válido2203– valor no válido denew_period_id2273– valor no válido denew_variant_id2279– la cuenta de prepago está bloqueada2281– la cuenta de prepago no está activa2282– no se puede pagar desde la cuenta de prepago en la moneda indicada2283– saldo insuficiente en la cuenta de prepago2284– error en los datos de contacto de la cuenta de prepago2293– no se puede obtener el saldo de crédito de la cuenta de prepago2294– no se puede obtener el precio del servicio2406– dominio o servicio no encontrado2408– parámetronew_variant_idonew_period_idno indicados (no se ha indicado ninguno)2400– error interno – código de retorno no registrado
Datos de la respuesta:
domain– nombre de dominiodomain_id– ID del dominiowedos_client_id– ID del cliente en WGPservice_id– ID del servicioservice_type– tipo de serviciovariant_id– ID de la variante de servicio actual tras el cambioperiod_id– ID del periodo de suscripción actual tras el cambiodirty– indicador de si realmente se produjo un cambio (0= sin cambios,1= cambiado)
Ejemplo:
curl -X PATCH -H 'Authorization: Bearer <TOKEN>' -H 'Content-Type: application/json' \
'https://api.wedos.com/v2/wgp/services/435' \
--data '{"new_variant_id":2,"new_period_id":1}'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3d4",
"data": {
"domain": "domain1.tld",
"domain_id": 98765,
"wedos_client_id": 10234,
"service_id": 435,
"service_type": "hosting_wedos_protection",
"variant_id": 2,
"period_id": 1,
"dirty": 1
}
}
DELETE /services/{service_id}
Elimina o cancela un servicio WGP a petición del cliente.
Parámetros:
service_id– obligatorio, path – ID del servicioforce– opcional, query, 0/1 – fuerza la eliminación incluso cuando WGP no dispone de token para reescribir el DNS (restaurar los registros A/AAAA a sus valores originales)
Códigos de retorno:
1000– OK2100– falta un parámetro obligatorio2292– el dominio no se encontró en WGP para esta cuenta de cliente2400– error interno2410– servicio no encontrado2411– no hay ningún token disponible para reescribir el DNS2412– la solicitud a la API para reescribir el DNS ha fallado2413– no se puede ejecutar el comando, WGP no tiene permiso para manipular el DNS del dominio (se requiereforce=1)2414– no existe ningún token para WGP y no se ha indicado el parámetroforce.3223– el servicio pertenece a otra cuenta de cliente
Datos de la respuesta:
domain– nombre de dominiodomain_id– ID del dominiowedos_client_id– ID del cliente en WGPservice_id– ID del servicioservice_type– tipo de serviciowdns_data– array de los cambios realizados en los registros DNS (direcciones IP que dejan de resolverse a través de WGP tras su cancelación)
Ejemplo:
curl -X DELETE -H 'Authorization: Bearer <TOKEN>' \
'https://api.wedos.com/v2/wgp/services/435?force=1'
{
"code": 1000,
"msg": "OK",
"request_id": "a1b2c3d4",
"data": {
"domain": "domain1.tld",
"domain_id": 98765,
"wedos_client_id": 10234,
"service_id": 435,
"service_type": "hosting_wedos_protection",
"wdns_data": []
}
}
Notas
- GET /services devuelve únicamente los servicios WGP independientes. Los dominios que tienen WGP conectado como complemento de otro servicio no figuran en esta lista y para ellos no existe un endpoint de listado similar.
- POST /services/{service_id}/cache/purge y POST /services/{service_id}/template-replicate se direccionan directamente por service_id (no por dominio) y admiten el parámetro service_type para distinguir entre un servicio WGP independiente y un dominio con WGP como complemento. El comando WAPI correspondiente busca la propiedad por user_id por sí mismo.
- En POST /services/{service_id}/cache/purge, el comentario de documentación de cmd_purge_cache() menciona también el campo limiter_available_in en los datos de la respuesta para el error 2415, pero la implementación actual devuelve en ese caso únicamente el código de error sin parte data, por lo que el campo no aparece realmente en la respuesta.
