/api/v6/urlshortener/links/{domain}/{code}/restoreRestaurar un enlace eliminado
Devuelve a la vida un enlace tuyo que eliminaste, con el mismo código y sin nuevo cobro.
Alcance y límites
API key con el servicio urlshortener habilitado y la capacidad urlshortener.write concedida
35 solicitudes por segundo
El código de un enlace eliminado no se libera nunca, así que no lo puedes volver a crear (crear con ese alias responde 409 ALIAS_RETIRED). Con este endpoint lo restauras: vuelve con su destino, su vencimiento y el estado que tenía al eliminarlo —si estaba desactivado, vuelve desactivado—, y sus visitas de antes siguen contando. No se cobra de nuevo. Se puede durante 90 días desde que lo eliminaste: después el enlace se archiva y restaurarlo responde 404 LINK_NOT_FOUND.
- Restaurar un enlace que no está eliminado lo devuelve tal cual: puedes reintentar sin miedo.
- Un enlace bloqueado por Hablame no se puede restaurar (
409 LINK_BLOCKED). - Queda registrado quién lo restauró. Comparte el límite de uso de la edición.
Pide una key que pueda escribir
Además del servicio urlshortener, la API key necesita la capacidad urlshortener.write, y solo la concede un propietario o un administrador de tu organización al crear la key. Sin ella, la key lista y consulta enlaces, estadísticas, el resumen, los dominios y la tarifa, y aquí recibe 403 AUTH_CAPABILITY_NOT_ALLOWED.
Parámetros de ruta
domaindomain. Se compara en minúsculas. Nombra al enlace que hoy responde en esa URL corta; para uno de un dominio que ya no es de tu organización (domainStatus: released), añade domainStatus=released.codeParámetros de consulta
domainStatusreleased, el enlace es el de un dominio que ya no es de tu organización (el que la lista devuelve con domainStatus: released), aunque ese nombre sea hoy el de otro dominio con el mismo código. Sin él, domain nombra al dominio que hoy se llama así. Otro valor responde 400 VALIDATION_INVALID_PARAMETER.releasedRespuestas
El enlace, ya restaurado.
{
"success": true,
"data": {
"domain": "h0b.co",
"code": "a1b2c3d",
"shortUrl": "https://h0b.co/a1b2c3d",
"longUrl": "https://example.com/landing?utm_source=sms",
"isAlias": false,
"status": "active",
"domainStatus": "active",
"expiresAt": null,
"createdAt": "2026-09-23T15:04:05Z",
"clicks": 0,
"uniqueClicks": 0,
"firstClickAt": null,
"lastClickAt": null
},
"meta": {
"requestId": "8f0c0e2a4b1d4c8fae2b7a91e0c5d3f6",
"timestamp": "2026-09-23T18:30:00+00:00",
"responseTimeMs": 7.2
}
}Credenciales inválidas o faltantes.
La API key no tiene habilitado el acortador (o está apagado para tu organización), no tiene la capacidad urlshortener.write para crear y editar enlaces, no se puede usar desde la red de la petición, o la organización no está activa.
No existe un enlace de tu organización con ese dominio y código (eliminado o no).
El enlace está bloqueado por Hablame.
Se excedió el límite de solicitudes.
Errores posibles
Códigos que este endpoint puede devolver en error.code. El detalle completo está en el catálogo.
AUTH_REQUIREDNo se envió un token Bearer y cada llamada lo requiere.401AUTH_INVALID_KEYLa API key no se reconoce: formato equivocado, revocada o vencida.403AUTH_SERVICE_NOT_ALLOWEDLa key no tiene permitido el servicio detrás de este endpoint.403AUTH_IP_NOT_ALLOWEDLa key solo funciona desde ciertas redes y tu IP no está entre ellas.403ACCOUNT_NOT_ACTIVETu organización está suspendida o cerrada.403AUTH_CAPABILITY_NOT_ALLOWEDLa key tiene el servicio, pero no la capacidad que exige este endpoint.404LINK_NOT_FOUNDNo hay un enlace con ese dominio y código.409LINK_BLOCKEDEl enlace está bloqueado por seguridad.429RATE_TPS_EXCEEDEDExcediste el cupo de tu organización para este endpoint.