domains
Creates, updates, deletes, gets or lists a domains resource.
Overview​
| Name | domains |
| Type | Resource |
| Id | ovh.domain.domains |
Fields​
The following fields are returned by SELECT queries:
- get
- list
successful operation
| Name | Datatype | Description |
|---|---|---|
service_id | integer | Technical service identifier (wire: serviceId) |
contact_admin | object | Administrative contact data (wire: contactAdmin) |
contact_billing | object | Billing contact data (wire: contactBilling) |
contact_owner | object | Owner (registrant) contact data (wire: contactOwner) |
contact_tech | object | Technical contact data (wire: contactTech) |
dnssec_state | string | Current DNSSEC state of the domain name (disabled, enabled, not_supported) (wire: dnssecState) |
dnssec_supported | boolean | Whether DNSSEC is activated for this domain name (wire: dnssecSupported) |
domain | string | Domain name |
expiration_date | string (date-time) | Date when the domain name will expire, if not renewed (wire: expirationDate) |
glue_record_ipv_6_supported | boolean | Whether the registry supports IPv6 glue records (wire: glueRecordIpv6Supported) |
glue_record_multi_ip_supported | boolean | Whether the registry supports multi-ip glue records (wire: glueRecordMultiIpSupported) |
host_supported | boolean | Whether the registry supports hosts as independent entities (wire: hostSupported) |
iam | object | IAM resource metadata |
last_update | string (date-time) | Last update date (wire: lastUpdate) |
name_server_type | string | Name servers type (anycast, dedicated, empty, external, hold, hosted, hosting, mixed, parking) (wire: nameServerType) |
name_servers | array | Name servers list (wire: nameServers) |
offer | string | Offer associated with the domain name (diamond, gold, platinum) |
owo_supported | boolean | Whether Whois data obfuscation is supported for this domain name (wire: owoSupported) |
parent_service | object | Parent service (wire: parentService) |
renewal_date | string (date-time) | Date when the domain name should be renewed (relevant if renewalState is automatic_renew) (wire: renewalDate) |
renewal_state | string | Current renewal state of the domain name (automatic_renew, cancellation_complete, cancellation_requested, manual_renew, unpaid) (wire: renewalState) |
state | string | Current state of the domain name (autorenew_in_progress, autorenew_registry_in_progress, deleted, dispute, expired, ok, outgoing_transfer, pending_create, pending_delete, pending_incoming_transfer, pending_installation, registry_suspended, restorable, technical_suspended) |
suspension_state | string | Current suspension state of the domain name (not_suspended, suspended) (wire: suspensionState) |
transfer_lock_status | string | Current transfer lock status of the domain name (locked, locking, unavailable, unlocked, unlocking) (wire: transferLockStatus) |
whois_owner | string | Owner (registrant) contact ID (contact data can be edited via /me/contact/<ID>) (wire: whoisOwner) |
General information about a domain name service
| Name | Datatype | Description |
|---|---|---|
service_id | integer | Technical service identifier (wire: serviceId) |
contact_admin | object | Administrative contact data (wire: contactAdmin) |
contact_billing | object | Billing contact data (wire: contactBilling) |
contact_owner | object | Owner (registrant) contact data (wire: contactOwner) |
contact_tech | object | Technical contact data (wire: contactTech) |
dnssec_state | string | Current DNSSEC state of the domain name (disabled, enabled, not_supported) (wire: dnssecState) |
dnssec_supported | boolean | Whether DNSSEC is activated for this domain name (wire: dnssecSupported) |
domain | string | Domain name |
expiration_date | string (date-time) | Date when the domain name will expire, if not renewed (wire: expirationDate) |
glue_record_ipv_6_supported | boolean | Whether the registry supports IPv6 glue records (wire: glueRecordIpv6Supported) |
glue_record_multi_ip_supported | boolean | Whether the registry supports multi-ip glue records (wire: glueRecordMultiIpSupported) |
host_supported | boolean | Whether the registry supports hosts as independent entities (wire: hostSupported) |
iam | object | IAM resource metadata |
last_update | string (date-time) | Last update date (wire: lastUpdate) |
name_server_type | string | Name servers type (anycast, dedicated, empty, external, hold, hosted, hosting, mixed, parking) (wire: nameServerType) |
name_servers | array | Name servers list (wire: nameServers) |
offer | string | Offer associated with the domain name (diamond, gold, platinum) |
owo_supported | boolean | Whether Whois data obfuscation is supported for this domain name (wire: owoSupported) |
parent_service | object | Parent service (wire: parentService) |
renewal_date | string (date-time) | Date when the domain name should be renewed (relevant if renewalState is automatic_renew) (wire: renewalDate) |
renewal_state | string | Current renewal state of the domain name (automatic_renew, cancellation_complete, cancellation_requested, manual_renew, unpaid) (wire: renewalState) |
state | string | Current state of the domain name (autorenew_in_progress, autorenew_registry_in_progress, deleted, dispute, expired, ok, outgoing_transfer, pending_create, pending_delete, pending_incoming_transfer, pending_installation, registry_suspended, restorable, technical_suspended) |
suspension_state | string | Current suspension state of the domain name (not_suspended, suspended) (wire: suspensionState) |
transfer_lock_status | string | Current transfer lock status of the domain name (locked, locking, unavailable, unlocked, unlocking) (wire: transferLockStatus) |
whois_owner | string | Owner (registrant) contact ID (contact data can be edited via /me/contact/<ID>) (wire: whoisOwner) |
Methods​
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | service_name | Get domain name information | |
list | select | iam_tags, whois_owner, x_pagination_mode | Get the list of managed domain names | |
update | update | service_name | Edit domain name properties | |
order_create | exec | domain | dryRun | Order a new domain name (Beta version) |
change_contact | exec | serviceName | Launch a contact change procedure | |
name_servers_update | exec | serviceName, nameServers | Update DNS servers | |
uk_outgoing_transfer | exec | serviceName, tag | Schedule an outgoing transfer task for this domain (.uk only) |
Parameters​
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
api_host | string | The OVHcloud API host. Selected by OVH_ENDPOINT (ovh-eu, ovh-ca or ovh-us; default ovh-eu). (default: api.eu.ovhcloud.com, x-stackQL-envVarSelector: {"envVar":"OVH_ENDPOINT","default":"ovh-eu","values":{"ovh-eu":"api.eu.ovhcloud.com","ovh-ca":"api.ca.ovhcloud.com","ovh-us":"api.us.ovhcloud.com"}}) |
serviceName | string | Service name |
service_name | string | Service name (wire: serviceName) |
dryRun | boolean | If true, simulate the order and return the pricing without actually placing it. Default to false. |
iam_tags | object | Filter resources on IAM tags (wire: iamTags) |
whois_owner | string | Filter domain names by owner ID (wire: whoisOwner) |
x_pagination_mode | string | Sent as CachedObjectList-Pages by default so the list returns the full objects rather than their identifiers. (wire: X-Pagination-Mode) |
SELECT examples​
- get
- list
Get domain name information
SELECT
service_id,
contact_admin,
contact_billing,
contact_owner,
contact_tech,
dnssec_state,
dnssec_supported,
domain,
expiration_date,
glue_record_ipv_6_supported,
glue_record_multi_ip_supported,
host_supported,
iam,
last_update,
name_server_type,
name_servers,
offer,
owo_supported,
parent_service,
renewal_date,
renewal_state,
state,
suspension_state,
transfer_lock_status,
whois_owner
FROM ovh.domain.domains
WHERE service_name = '{{ service_name }}' -- required
;
Get the list of managed domain names
SELECT
service_id,
contact_admin,
contact_billing,
contact_owner,
contact_tech,
dnssec_state,
dnssec_supported,
domain,
expiration_date,
glue_record_ipv_6_supported,
glue_record_multi_ip_supported,
host_supported,
iam,
last_update,
name_server_type,
name_servers,
offer,
owo_supported,
parent_service,
renewal_date,
renewal_state,
state,
suspension_state,
transfer_lock_status,
whois_owner
FROM ovh.domain.domains
WHERE iam_tags = '{{ iam_tags }}'
AND whois_owner = '{{ whois_owner }}'
AND x_pagination_mode = '{{ x_pagination_mode }}'
;
UPDATE examples​
- update
Edit domain name properties
UPDATE ovh.domain.domains
SET
name_server_type = '{{ name_server_type }}',
transfer_lock_status = '{{ transfer_lock_status }}'
WHERE
service_name = '{{ service_name }}' --required
RETURNING
service_id,
contact_admin,
contact_billing,
contact_owner,
contact_tech,
dnssec_state,
dnssec_supported,
domain,
expiration_date,
glue_record_ipv_6_supported,
glue_record_multi_ip_supported,
host_supported,
last_update,
name_server_type,
name_servers,
offer,
owo_supported,
parent_service,
renewal_date,
renewal_state,
state,
suspension_state,
transfer_lock_status,
whois_owner;
Lifecycle Methods​
EXEC variables use wire (API) names.
- order_create
- change_contact
- name_servers_update
- uk_outgoing_transfer
Order a new domain name (Beta version)
EXEC ovh.domain.domains.order_create
@dryRun={{ dryRun }}
@@json=
'{
"contacts": "{{ contacts }}",
"dns": "{{ dns }}",
"domain": "{{ domain }}",
"duration": "{{ duration }}",
"priceAcknowledge": "{{ priceAcknowledge }}",
"promoCodes": "{{ promoCodes }}",
"waiveRetractationPeriod": {{ waiveRetractationPeriod }},
"zone": "{{ zone }}"
}'
;
Launch a contact change procedure
EXEC ovh.domain.domains.change_contact
@serviceName='{{ serviceName }}' --required
@@json=
'{
"contactAdmin": "{{ contactAdmin }}",
"contactBilling": "{{ contactBilling }}",
"contactTech": "{{ contactTech }}"
}'
;
Update DNS servers
EXEC ovh.domain.domains.name_servers_update
@serviceName='{{ serviceName }}' --required
@@json=
'{
"nameServers": "{{ nameServers }}"
}'
;
Schedule an outgoing transfer task for this domain (.uk only)
EXEC ovh.domain.domains.uk_outgoing_transfer
@serviceName='{{ serviceName }}' --required
@@json=
'{
"tag": "{{ tag }}"
}'
;