---
title: "Renew a domain"
method: POST
path: "/{account}/registrar/domains/{domain}/renewals"
tags: ["registrar renewal"]
---

# Renew a domain

`POST /{account}/registrar/domains/{domain}/renewals`

## Request

- Base URL: `https://api.dnsimple.com/v2`
- URL: `https://api.dnsimple.com/v2/{account}/registrar/domains/{domain}/renewals`
- Auth: one of:
  - HTTP basic
  - HTTP bearer
- TypeScript: <https://skmtc.dev/dnsimple/apis/dnsimple-api/docs/:account/registrar/domains/:domain/renewals/post.ts> (a function with typed inputs; its response is checked against the schema)

Explicitly renews a domain, if the registry supports this function.

Your account must be active for this command to complete successfully. You will be automatically charged the renewal fee upon successful renewal, so please be careful with this command.

## Path parameters

- `account` integer, required
- `domain` string, required

## Request body

- object
  - `period` integer, required
  - `premium_price` string: Required as confirmation of the price, only if the domain is premium.

## Response `201`

Domain renewal created

- object
  - `data` DomainRenewal, required
    - `id` integer, required
    - `domain_id` integer, required
    - `period` integer, required
    - `state` 'cancelled' | 'new' | 'renewing' | 'renewed' | 'failed', required
    - `created_at` string, date-time, required: A date-time value, representing when the entry was created, formatted as ISO 8601.
    - `updated_at` string, date-time, required: A date-time value, representing when the entry was last updated, formatted as ISO 8601.

## Other responses

- `400`: A required parameter is missing or the request is invalid.

## Changes

- **2026-09-17** (v2) `079e0a7250a7`: 1 info
  - api operation id `domainRenew` removed and replaced with `renewDomain`
- **2025-07-11** (v2) `06780be0ef17`: 1 breaking, 9 info
  - the request property `period` became required
  - the response property `data` became required for the status `201`
  - the response property `data/created_at` became required for the status `201`
  - the response property `data/domain_id` became required for the status `201`
  - …6 more
- **2023-08-29** (v2) `e3e181e43246`: 1 info
  - api tag `registrar` removed
- **2023-07-18** (v2) `c8591dcf8c29`: 9 breaking, 2 info
  - the response property `data` became optional for the status `201`
  - the response property `data/created_at` became optional for the status `201`
  - the response property `data/domain_id` became optional for the status `201`
  - the response property `data/id` became optional for the status `201`
  - …7 more

[Operation history](https://skmtc.dev/dnsimple/apis/dnsimple-api/changes/:account/registrar/domains/:domain/renewals/post.md)

---

[API](https://skmtc.dev/dnsimple/apis/dnsimple-api.md) - [All operations](https://skmtc.dev/dnsimple/apis/dnsimple-api/llms.txt) - [OpenAPI document](https://skmtc.dev/dnsimple/apis/dnsimple-api/revisions/2d2e7a8fb60a?raw)
