---
title: "Keep a site online from a renewal-email link"
method: POST
path: "/site-renewal/link"
tags: ["Site renewal"]
---

# Keep a site online from a renewal-email link

`POST /site-renewal/link`

## Request

- Base URL: `https://api.nippy.host`
- URL: `https://api.nippy.host/site-renewal/link`
- Auth: none declared

Keeps a live Free site online for 30 days from now, or brings an expired one back online. A site that never expires is left as it is.

## Request body

- SiteRenewalLinkDto
  - `site` string, uuid, required: The `site` query parameter.
  - `sig` string, required: The `sig` query parameter.

## Response `200`

- APISiteRenewal
  - `siteId` string, uuid, required
  - `subdomain` string, required
  - `publicUrl` string, required
  - `state` 'online' | 'expired' | 'no_renewal_needed' | 'unavailable', required
  - `renewalDueAt` string, date-time, nullable: When the site next needs keeping online. Set only for `online`.
  - `offlineAt` string, date-time, nullable: When the site goes offline without a click: seven days after the renewal email, and never less than 24 hours after the "goes offline tomorrow" reminder. Set only for `online`.
  - `deletesAt` string, date-time, nullable: When an `expired` site and its files are deleted: never less than seven days after the deletion warning or 24 hours after the "will be deleted tomorrow" notice.

## Other responses

- `403`: The link is not valid
- `404`: The site no longer exists
- `409`: The site is offline for a reason the link cannot change

---

[API](https://skmtc.dev/nippy/apis/nippy-backend-api.md) · [All operations](https://skmtc.dev/nippy/apis/nippy-backend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nippy/apis/nippy-backend-api/revisions/7ab23f040a55?raw)
