This API allows you to manage your domains, DNS zones and records.
- TLS certificate management
- DNS records management
- Transaction SIGnature key management
- DNS zones version management
- DNS Zones management
TLS certificate management.
Create a new TLS certificate or retrieve information about an existing TLS certificate.
Usage:
scw dns certificate create <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | |
alternative-dns-zones.{index} |
Delete an existing TLS certificate specified by its DNS zone. Deleting a TLS certificate is permanent and cannot be undone.
Usage:
scw dns certificate delete <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required |
Get the DNS zone's TLS certificate. If you do not have a certificate, the ouptut returns no certificate found
.
Usage:
scw dns certificate get <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required |
List all the TLS certificates a user has created, specified by the user's Project ID and the DNS zone.
Usage:
scw dns certificate list <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | |
project-id |
DNS records management.
Usage:
scw dns record add <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone in which to add the record |
data | Required | |
name | ||
priority | ||
ttl | Required Default: 3600 |
|
type | Required One of: A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR |
|
comment | ||
geo-ip-config.matches.{index}.countries.{index} | ||
geo-ip-config.matches.{index}.continents.{index} | ||
geo-ip-config.matches.{index}.data | ||
geo-ip-config.default | ||
http-service-config.ips.{index} | ||
http-service-config.must-contain | ||
http-service-config.url | ||
http-service-config.user-agent | ||
http-service-config.strategy | One of: random , hashed |
|
weighted-config.weighted-ips.{index}.ip | ||
weighted-config.weighted-ips.{index}.weight | ||
view-config.views.{index}.subnet | ||
view-config.views.{index}.data |
Examples:
Add a CNAME
scw dns record add my-domain.tld data=www name=www2 type=CNAME
Add an IP
scw dns record add my-domain.tld data=1.2.3.4 name=vpn type=A
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.
Usage:
scw dns record bulk-update <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone in which to update the DNS zone records |
changes.{index}.add.records.{index}.data | ||
changes.{index}.add.records.{index}.name | ||
changes.{index}.add.records.{index}.priority | ||
changes.{index}.add.records.{index}.ttl | ||
changes.{index}.add.records.{index}.type | One of: unknown , A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR , DNAME , SVCB , HTTPS |
|
changes.{index}.add.records.{index}.comment | ||
changes.{index}.add.records.{index}.geo-ip-config.matches.{index}.countries.{index} | ||
changes.{index}.add.records.{index}.geo-ip-config.matches.{index}.continents.{index} | ||
changes.{index}.add.records.{index}.geo-ip-config.matches.{index}.data | ||
changes.{index}.add.records.{index}.geo-ip-config.default | ||
changes.{index}.add.records.{index}.http-service-config.ips.{index} | ||
changes.{index}.add.records.{index}.http-service-config.must-contain | ||
changes.{index}.add.records.{index}.http-service-config.url | ||
changes.{index}.add.records.{index}.http-service-config.user-agent | ||
changes.{index}.add.records.{index}.http-service-config.strategy | One of: random , hashed , all |
|
changes.{index}.add.records.{index}.weighted-config.weighted-ips.{index}.ip | ||
changes.{index}.add.records.{index}.weighted-config.weighted-ips.{index}.weight | ||
changes.{index}.add.records.{index}.view-config.views.{index}.subnet | ||
changes.{index}.add.records.{index}.view-config.views.{index}.data | ||
changes.{index}.add.records.{index}.id | ||
changes.{index}.set.id | ||
changes.{index}.set.id-fields.name | ||
changes.{index}.set.id-fields.type | One of: unknown , A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR , DNAME , SVCB , HTTPS |
|
changes.{index}.set.id-fields.data | ||
changes.{index}.set.id-fields.ttl | ||
changes.{index}.set.records.{index}.data | ||
changes.{index}.set.records.{index}.name | ||
changes.{index}.set.records.{index}.priority | ||
changes.{index}.set.records.{index}.ttl | ||
changes.{index}.set.records.{index}.type | One of: unknown , A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR , DNAME , SVCB , HTTPS |
|
changes.{index}.set.records.{index}.comment | ||
changes.{index}.set.records.{index}.geo-ip-config.matches.{index}.countries.{index} | ||
changes.{index}.set.records.{index}.geo-ip-config.matches.{index}.continents.{index} | ||
changes.{index}.set.records.{index}.geo-ip-config.matches.{index}.data | ||
changes.{index}.set.records.{index}.geo-ip-config.default | ||
changes.{index}.set.records.{index}.http-service-config.ips.{index} | ||
changes.{index}.set.records.{index}.http-service-config.must-contain | ||
changes.{index}.set.records.{index}.http-service-config.url | ||
changes.{index}.set.records.{index}.http-service-config.user-agent | ||
changes.{index}.set.records.{index}.http-service-config.strategy | One of: random , hashed , all |
|
changes.{index}.set.records.{index}.weighted-config.weighted-ips.{index}.ip | ||
changes.{index}.set.records.{index}.weighted-config.weighted-ips.{index}.weight | ||
changes.{index}.set.records.{index}.view-config.views.{index}.subnet | ||
changes.{index}.set.records.{index}.view-config.views.{index}.data | ||
changes.{index}.set.records.{index}.id | ||
changes.{index}.delete.id | ||
changes.{index}.delete.id-fields.name | ||
changes.{index}.delete.id-fields.type | One of: unknown , A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR , DNAME , SVCB , HTTPS |
|
changes.{index}.delete.id-fields.data | ||
changes.{index}.delete.id-fields.ttl | ||
return-all-records | Specifies whether or not to return all the records | |
disallow-new-zone-creation | Disable the creation of the target zone if it does not exist. Target zone creation is disabled by default | |
serial | Use the provided serial (0) instead of the auto-increment serial |
Delete all records within a DNS zone that has default name servers.
All edits will be versioned.
Usage:
scw dns record clear <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to clear |
Usage:
scw dns record delete <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone in which to delete the record |
data | ||
name | ||
ttl | ||
type | Required One of: A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR |
Examples:
Delete a CNAME
scw dns record delete my-domain.tld name=www type=CNAME
Delete a single IP from a record with more than one
scw dns record delete my-domain.tld data=1.2.3.4 name=vpn type=A
Retrieve a list of DNS records within a DNS zone that has default name servers. You can filter records by type and name.
Usage:
scw dns record list <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
project-id | Project ID on which to filter the returned DNS zone records | |
order-by | One of: name_asc , name_desc |
Sort order of the returned DNS zone records |
dns-zone | Required | DNS zone on which to filter the returned DNS zone records |
name | Name on which to filter the returned DNS zone records | |
type | One of: unknown , A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR , DNAME , SVCB , HTTPS |
Record type on which to filter the returned DNS zone records |
id | Record ID on which to filter the returned DNS zone records |
Retrieve a list of name servers within a DNS zone and their optional glue records.
Usage:
scw dns record list-nameservers <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
project-id | Project ID on which to filter the returned DNS zone name servers | |
dns-zone | Required | DNS zone on which to filter the returned DNS zone name servers |
This command will replace all the data for this record with the given values.
Usage:
scw dns record set <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone in which to set the record |
values.{index} | Required | A list of values for replacing the record data. (multiple values cannot be used for all type) |
name | Required | |
priority | ||
ttl | Required Default: 3600 |
|
type | Required One of: A , AAAA , CNAME , TXT , SRV , TLSA , MX , NS , PTR , CAA , ALIAS , LOC , SSHFP , HINFO , RP , URI , DS , NAPTR |
|
comment | ||
geo-ip-config.matches.{index}.countries.{index} | ||
geo-ip-config.matches.{index}.continents.{index} | ||
geo-ip-config.matches.{index}.data | ||
geo-ip-config.default | ||
http-service-config.ips.{index} | ||
http-service-config.must-contain | ||
http-service-config.url | ||
http-service-config.user-agent | ||
http-service-config.strategy | One of: random , hashed |
|
weighted-config.weighted-ips.{index}.ip | ||
weighted-config.weighted-ips.{index}.weight | ||
view-config.views.{index}.subnet | ||
view-config.views.{index}.data |
Examples:
Add or replace a CNAME
scw dns record set my-domain.tld values.0=www name=www2 type=CNAME
Add or replace a list of IP
scw dns record set my-domain.tld values.0=1.2.3.4 values.1=1.2.3.5 name=vpn type=A
Update name servers within a DNS zone and set optional glue records.
Usage:
scw dns record update-nameservers <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone in which to update the DNS zone name servers |
ns.{index}.name | ||
ns.{index}.ip.{index} |
Transaction SIGnature key management.
Delete an existing TSIG key specified by its DNS zone. Deleting a TSIG key is permanent and cannot be undone.
Usage:
scw dns tsig-key delete <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required |
Retrieve information about the TSIG key of a given DNS zone to allow AXFR requests.
Usage:
scw dns tsig-key get <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required |
DNS zones version management.
Access a previous DNS zone version to see the differences from another specific version.
Usage:
scw dns version diff <dns-zone-version-id ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone-version-id | Required |
Retrieve a list of a DNS zone's versions.
The maximum version count is 100. If the count reaches this limit, the oldest version will be deleted after each new modification.
Usage:
scw dns version list <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required |
Restore and activate a version of a specific DNS zone.
Usage:
scw dns version restore <dns-zone-version-id ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone-version-id | Required |
Retrieve a list of records from a specific DNS zone version.
Usage:
scw dns version show <dns-zone-version-id ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone-version-id | Required |
DNS Zones management.
Clone an existing DNS zone with all its records into a new DNS zone.
Usage:
scw dns zone clone [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to clone |
dest-dns-zone | Required | Destination DNS zone in which to clone the chosen DNS zone |
overwrite | Specifies whether or not the destination DNS zone will be overwritten | |
project-id | Project ID of the destination DNS zone |
Create a new DNS zone specified by the domain name, the subdomain and the Project ID.
Usage:
scw dns zone create [arg=value ...]
Args:
Name | Description | |
---|---|---|
domain | Required | Domain in which to crreate the DNS zone |
subdomain | Required | Subdomain of the DNS zone to create |
project-id | Project ID to use. If none is passed the default project ID will be used |
Delete a DNS zone and all its records.
Usage:
scw dns zone delete <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to delete |
project-id | Project ID to use. If none is passed the default project ID will be used |
Export a DNS zone with default name servers, in a specific format.
Usage:
scw dns zone export <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to export |
format | Default: bind One of: unknown_raw_format , bind |
DNS zone format |
Import and replace the format of records from a given provider, with default name servers.
Usage:
scw dns zone import <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to import |
Deprecated | ||
project-id | Project ID to use. If none is passed the default project ID will be used | |
Deprecated One of: unknown_raw_format , bind |
||
bind-source.content | ||
axfr-source.name-server | ||
axfr-source.tsig-key.name | ||
axfr-source.tsig-key.key | ||
axfr-source.tsig-key.algorithm |
Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names.
Usage:
scw dns zone list [arg=value ...]
Args:
Name | Description | |
---|---|---|
project-id | Project ID on which to filter the returned DNS zones | |
order-by | One of: domain_asc , domain_desc , subdomain_asc , subdomain_desc , created_at_asc , created_at_desc , updated_at_asc , updated_at_desc |
Sort order of the returned DNS zones |
domain | Domain on which to filter the returned DNS zones | |
Deprecated | DNS zone on which to filter the returned DNS zones | |
dns-zones.{index} | DNS zones on which to filter the returned DNS zones | |
created-after | Only list DNS zones created after this date | |
created-before | Only list DNS zones created before this date | |
updated-after | Only list DNS zones updated after this date | |
updated-before | Only list DNS zones updated before this date | |
organization-id | Organization ID on which to filter the returned DNS zones |
Refresh an SOA DNS zone to reload the records in the DNS zone and update the SOA serial. You can recreate the given DNS zone and its sub DNS zone if needed.
Usage:
scw dns zone refresh <dns-zone ...> [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to refresh |
recreate-dns-zone | Specifies whether or not to recreate the DNS zone | |
recreate-sub-dns-zone | Specifies whether or not to recreate the sub DNS zone |
Update the name and/or the Organizations for a DNS zone.
Usage:
scw dns zone update [arg=value ...]
Args:
Name | Description | |
---|---|---|
dns-zone | Required | DNS zone to update |
new-dns-zone | Required | Name of the new DNS zone to create |
project-id | Project ID to use. If none is passed the default project ID will be used |