POST/api/v6/urlshortener/links/{domain}/{code}/restore

Restaurar 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

Alcance

API key con el servicio urlshortener habilitado y la capacidad urlshortener.write concedida

Límite de uso

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

domain
stringobligatorio
Dominio del enlace, tal como lo devuelve la API en domain. 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.
code
stringobligatorio
Código o alias del enlace. Se compara en minúsculas.

Parámetros de consulta

domainStatus
stringopcional
Con released, 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.
released

Respuestas

200

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
  }
}
401

Credenciales inválidas o faltantes.

403

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.

404

No existe un enlace de tu organización con ese dominio y código (eliminado o no).

409

El enlace está bloqueado por Hablame.

429

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.

Ver el catálogo completo
POST /api/v6/urlshortener/links/{domain}/{code}/restore
curl -X POST 'https://developers.hablame.co/api/v6/urlshortener/links/h0b.co/a1b2c3d/restore' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer hk_TU_API_KEY'

Try-It

Ejecuta la petición contra la API real con tu propia API key.

La key se usa solo en tu navegador para esta petición. No se guarda ni se envía a ningún otro lado.

Parámetros

Dominio del enlace, tal como lo devuelve la API en domain. 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.

Código o alias del enlace. Se compara en minúsculas.

Con released, 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.

POST https://developers.hablame.co/api/v6/urlshortener/links/h0b.co/a1b2c3d/restore

Respuesta

Todavía no has enviado ninguna petición.