Scaleway logo
DNS zones and records API

A DNS record holds information translating a domain or subdomain to an IP address, mail server or other domain/subdomain.


List name servers within a DNS zone

GET
https://api.scaleway.com
/domain/v2beta1/dns-zones/{dns_zone}/nameservers

Retrieve a list of name servers within a DNS zone and their optional glue records.

List name servers within a DNS zone › path Parameters

dns_zone
​string · required

DNS zone on which to filter the returned DNS zone name servers.

List name servers within a DNS zone › query Parameters

project_id
​string

Project ID on which to filter the returned DNS zone name servers.

List name servers within a DNS zone › Responses


Update name servers within a DNS zone

PUT
https://api.scaleway.com
/domain/v2beta1/dns-zones/{dns_zone}/nameservers

Update name servers within a DNS zone and set optional glue records.

Update name servers within a DNS zone › path Parameters

dns_zone
​string · required

DNS zone in which to update the DNS zone name servers.

Update name servers within a DNS zone › Request Body

​scaleway.domain.v2beta1.Nameserver[] · required

New DNS zone name servers.

Update name servers within a DNS zone › Responses


List records within a DNS zone

GET
https://api.scaleway.com
/domain/v2beta1/dns-zones/{dns_zone}/records

Retrieve a list of DNS records within a DNS zone that has default name servers. You can filter records by type and name.

List records within a DNS zone › path Parameters

dns_zone
​string · required

DNS zone on which to filter the returned DNS zone records.

List records within a DNS zone › query Parameters

name
​string · required

Name on which to filter the returned DNS zone records.

project_id
​string

Project ID on which to filter the returned DNS zone records.

Sort order of the returned DNS zone records.

Enum values:
name_asc
name_desc
Default: name_asc
page
​integer · int32

Page number to return, from the paginated results.

page_size
​integer · uint32

Maximum number of DNS zone records per page.

type
​scaleway.domain.v2beta1.Record.Type · enum

Record type on which to filter the returned DNS zone records.

Enum values:
unknown
A
AAAA
CNAME
TXT
SRV
TLSA
MX
Default: unknown
id
​string

Record ID on which to filter the returned DNS zone records.

List records within a DNS zone › Responses

200
total_count
​integer · uint32

Total number of DNS zone records.

Paginated returned DNS zone records.


Clear records within a DNS zone

DELETE
https://api.scaleway.com
/domain/v2beta1/dns-zones/{dns_zone}/records

Delete all records within a DNS zone that has default name servers.
All edits will be versioned.

Clear records within a DNS zone › path Parameters

dns_zone
​string · required

DNS zone to clear.

Clear records within a DNS zone › Responses


Update records within a DNS zone

PATCH
https://api.scaleway.com
/domain/v2beta1/dns-zones/{dns_zone}/records

Update records within a DNS zone that has default name servers and perform several actions on your records.

Actions include:

  • add: allows you to add a new record or add a new IP to an existing A record, for example
  • set: allows you to edit a record or edit an IP from an existing A record, for example
  • delete: allows you to delete a record or delete an IP from an existing A record, for example
  • clear: allows you to delete all records from a DNS zone

All edits will be versioned.

Update records within a DNS zone › path Parameters

dns_zone
​string · required

DNS zone in which to update the DNS zone records.

Update records within a DNS zone › Request Body

​scaleway.domain.v2beta1.RecordChange[] · required

Changes made to the records.

return_all_records
​boolean | null

Specifies whether or not to return all the records.

disallow_new_zone_creation
​boolean

Disable the creation of the target zone if it does not exist. Target zone creation is disabled by default.

serial
​integer | null · uint64

Use the provided serial (0) instead of the auto-increment serial.

Update records within a DNS zone › Responses