---
title: "Create or replace a zone record"
method: PUT
path: "/zones/{id}/records"
tags: ["Domains"]
---

# Create or replace a zone record

`PUT /zones/{id}/records`

## Request

- Base URL: `https://api.crevio.co/v1`
- URL: `https://api.crevio.co/v1/zones/{id}/records`
- Auth: API key in header `Authorization`

Creates a DNS record on a Crevio-managed zone, or replaces the existing record with the same type and name. Records Crevio itself manages are protected: set `acknowledge_unowned` to overwrite a record that was not created through the API.

## Path parameters

- `id` string, required

## Request body

- object
  - `type` string, required
  - `name` string
  - `content` string, required
  - `mode` string
  - `ttl` integer
  - `priority` integer
  - `proxied` boolean
  - `acknowledge_unowned` boolean

## Response `201`

Record

- object
  - `id` string
  - `type` string
  - `name` string
  - `content` string
  - `proxied` boolean
  - `locked` boolean
  - `owned` boolean

## Other responses

- `401`: Authentication required
- `404`: Resource not found
- `422`: Validation error
- `429`: Rate limit exceeded — 600 requests per minute per credential. Retry after the number of seconds in `Retry-After`.

---

[API](https://skmtc.dev/crevio/apis/crevio-api-v1.md) · [All operations](https://skmtc.dev/crevio/apis/crevio-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/crevio/apis/crevio-api-v1/revisions/2219f18ad651?raw)
