Domain API

https://api.gandi.net/v5/domain

Gandi Domain Management API

Introduction

This section of our documentation will assist you in the management of domain names at Gandi.net through our REST API.

Documentation on our XML-RPC API can be found at https://doc.rpc.gandi.net

For managing Gandi's LiveDNS via our REST API, please refer to our LiveDNS documentation at:
https://api.gandi.net/docs/livedns/

General information on Gandi's domain name services can be found in our public documentation at:
https://docs.gandi.net/en/domain_names

Domain Availability

https://api.gandi.net/v5/domain/check

get Domain availability

Request

Query String
  • Required
    • namestring
      domain name to query
    Optional
    • countrystring
      ISO country code for which taxes are to be applied
    • currencystring
      request price for a specific ISO currency code
    • duration_unitstring
      define the unit for max_duration
    • extensionstring
      query a specific extension for product options
    • gridstring
      request price for a specific rate
    • langstring
      language code
    • max_durationinteger
      set a limit on the duration range for returned prices
    • periodstring
      specific registration period to query
    • processesarray[ string ]

      Default: ["create"]

      list of at least 1 process for which pricing is to be made
    • sharing_idstring
      Organization for which the pricing is to be made. See the reference.
Example - Availability and price for registration:
?name=example.com
Example - Availability and price, with processes and price rate:
?name=example.com&processes=create&processes=transfer&grid=C
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • currencystring
    • gridstring
    • productsarray

      Of items of type:

      • object

        With the following properties:

        • namestring
          product name
        • pricesarray

          Of items of type:

          • object

            With the following properties:

            • duration_unitstring
              time unit for duration
            • max_durationinteger
              maximum duration for which this price unit applies
            • min_durationinteger
              minimum duration for which this price unit applies
            • price_after_taxesnumber
              pricing after tax is applied
            • price_before_taxesnumber
              pricing before tax is applied
            Optional
            • discountboolean
              indicate if a discount is active on this price unit
            • normal_price_after_taxesnumber
              pricing after tax is applied, when no discount applies
            • normal_price_before_taxesnumber
              pricing before tax is applied, when no discount applies
            • optionsobject

              With the following properties:

              Optional
              • periodstring
                registration period
            • typestring
              pricing type involved
        • statusstring

          product availability status. Possible values are:

          • available: Domain name is available
          • available_reserved: Domain name reserved under special conditions
          • available_preorder: Domain name can be pre-ordered
          • unavailable: Domain name is not available
          • unavailable_premium: Domain name is not available
          • unavailable_restricted: Domain name is not available (forbidden)
          • error_invalid: Provided value is not a valid domain name
          • error_refused: Service is temporarily down
          • error_timeout: Service timed out, try the method again later
          • error_unknown: Internal server error
          • reserved_corporate: The TLD for the given domain name is reserved for Gandi Corporate Services customers
          • pending: Result is not yet ready, try the method again later
          • error_eoi: The TLD for the given domain name is in an Expression of Interest (EOI) period
        • taxesarray

          Of items of type:

          • object

            With the following properties:

            • namestring
              name of the tax
            • ratenumber
              rate in percent
            • typestring
              type of tax
        Optional
        • periodsarray

          Of items of type:

          • object

            With the following properties:

            • namestring
              name of the registration period
            • starts_atdatetime
              start of the registration period
            Optional
            • ends_atdatetime
              end of the registration period if it's not General Availability (golive)
        • processstring
          process for this price
    • taxesarray

      Of items of type:

      • object

        With the following properties:

        • namestring
          name of the tax
        • ratenumber
          rate in percent
        • typestring
          type of tax
    Example - Availability and price for premium domains:
    {
      "currency": "EUR",
      "grid": "A",
      "products": [
        {
          "status": "available",
          "periods": [
            {
              "name": "eap5",
              "starts_at": "2019-02-25T16:00:00Z",
              "ends_at": "2020-03-28T15:59:59Z"
            },
            {
              "name": "golive",
              "starts_at": "2020-03-28T16:00:00Z"
            }
          ],
          "name": "example.com",
          "process": "create",
          "taxes": [
            {
              "type": "service",
              "rate": 20,
              "name": "vat"
            }
          ],
          "prices": [
            {
              "max_duration": 1,
              "duration_unit": "y",
              "min_duration": 1,
              "discount": false,
              "price_after_taxes": 878.44,
              "price_before_taxes": 732.03,
              "type": "premium"
            },
            {
              "max_duration": 1,
              "duration_unit": "y",
              "min_duration": 1,
              "discount": false,
              "price_after_taxes": 775.12,
              "price_before_taxes": 645.93,
              "type": "premium"
            }
          ]
        }
      ],
      "taxes": [
        {
          "type": "service",
          "rate": 20,
          "name": "vat"
        }
      ]
    }
    Example - Availability and price, with processes and price rate:
    {
      "currency": "EUR",
      "grid": "C",
      "products": [
        {
          "status": "available",
          "name": "example.com",
          "process": "transfer",
          "taxes": [
            {
              "type": "service",
              "rate": 20,
              "name": "vat"
            }
          ],
          "prices": [
            {
              "max_duration": 1,
              "duration_unit": "y",
              "min_duration": 1,
              "discount": false,
              "price_after_taxes": 7.2,
              "price_before_taxes": 6
            }
          ]
        },
        {
          "status": "available",
          "name": "example.com",
          "process": "create",
          "taxes": [
            {
              "type": "service",
              "rate": 20,
              "name": "vat"
            }
          ],
          "prices": [
            {
              "max_duration": 2,
              "duration_unit": "y",
              "normal_price_after_taxes": 11.04,
              "min_duration": 1,
              "discount": true,
              "price_after_taxes": 5.52,
              "normal_price_before_taxes": 9.2,
              "price_before_taxes": 4.6
            },
            {
              "max_duration": 10,
              "duration_unit": "y",
              "normal_price_after_taxes": 9.38,
              "min_duration": 3,
              "discount": true,
              "price_after_taxes": 4.69,
              "normal_price_before_taxes": 7.82,
              "price_before_taxes": 3.91
            }
          ]
        }
      ],
      "taxes": [
        {
          "type": "service",
          "rate": 20,
          "name": "vat"
        }
      ]
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Domain Create and List

https://api.gandi.net/v5/domain/domains

get List domains

This route returns a list of domains owned by your user.

Request

Query String
  • Optional
    • fqdnstring
      Filters the list by domain name, with optional patterns.
      Example: example.net
      Example: example.*
      Example: *example.com
    • pageinteger

      Default: 1

      Minimum: 1

      Which result page to retrieve. If the number is greater than the last page, an empty list is returned.
    • per_pageinteger

      Minimum: 1

      How many items to display per page.
    • sharing_idstring
      Sharing ID. Organization ID used as a filter or as a billing identifier. See the reference.
    • sort_bystring

      Default: "fqdn"

      Used to specify how you want the results sorted.
    • tldstring
      Used to filter by just the extension.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
    Optional
    • Acceptstring
      When passed text/csv value, this route will return a CSV-formatted response.

Responses

200

Headers
    • Total-Countinteger
      Total number of items.
    Optional
    • Linkstring
      Links to next and last page.
Body
  • application/json
    array

    Of items of type:

    • object

      With the following properties:

      • autorenewboolean
        Automatic renewal status. Learn more about automatic renewal.
      • datesobject
        Domain's life cycle dates.

        With the following properties:

        • registry_created_atdatetime
        • updated_atdatetime
        Optional
        • authinfo_expires_atdatetime
        • created_atdatetime
        • deletes_atdatetime
        • hold_begins_atdatetime
        • hold_ends_atdatetime
        • pending_delete_ends_atdatetime
        • registry_ends_atdatetime
        • renew_begins_atdatetime
        • restore_ends_atdatetime
      • domain_ownerstring
      • fqdnstring
        Fully qualified domain name, written in its native alphabet (IDN).
      • fqdn_unicodestring
        Fully qualified domain name, written in unicode (learn more).
      • hrefstring
        Link to domain details.
      • idstring
        UUID
      • nameserverobject

        With the following properties:

        • currentstring
        Optional
        • hostsarray[ string ]
      • orga_ownerstring
      • ownerstring
      • statusarray

        Of items of type:

        • string

          One of: "clientHold", "clientUpdateProhibited", "clientTransferProhibited", "clientDeleteProhibited", "clientRenewProhibited", "serverHold", "pendingTransfer", "serverTransferProhibited"

          Information on the following domain statuses can be found in our general documentation.
      • tldstring
      Optional
      • sharing_idstring
        UUID
      • tagsarray[ string ]
        List of tags that have been assigned to the domain name.
    Example:
    [
      {
        "status": [
          "clientTransferProhibited"
        ],
        "dates": {
          "created_at": "2019-02-13T11:04:18Z",
          "registry_created_at": "2019-02-13T10:04:18Z",
          "registry_ends_at": "2021-02-13T10:04:18Z",
          "updated_at": "2019-02-25T16:20:49Z"
        },
        "tags": [],
        "fqdn": "example.net",
        "id": "ba1167be-2f76-11e9-9dfb-00163ec4cb00",
        "autorenew": false,
        "tld": "net",
        "owner": "alice_doe",
        "orga_owner": "alice_doe",
        "domain_owner": "Alice Doe",
        "nameserver": {
          "current": "livedns"
        },
        "href": "https://api.test/v5/domain/domains/example.net",
        "fqdn_unicode": "example.net"
      },
      {
        "status": [],
        "dates": {
          "created_at": "2019-01-15T14:19:59Z",
          "registry_created_at": "2019-01-15T13:19:58Z",
          "registry_ends_at": "2020-01-15T13:19:58Z",
          "updated_at": "2019-01-15T13:30:42Z"
        },
        "tags": [],
        "fqdn": "example.com",
        "id": "42927d64-18c8-11e9-b9b5-00163ec4cb00",
        "autorenew": false,
        "tld": "fr",
        "owner": "alice_doe",
        "orga_owner": "alice_doe",
        "domain_owner": "Alice Doe",
        "nameserver": {
          "current": "livedns"
        },
        "href": "https://api.test/v5/domain/domains/example.com",
        "fqdn_unicode": "example.com"
      }
    ]
  • text/csv
    any
    CSV-formatted response.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

post Create a new domain

This route is used to register domain names. Warning! This is not a free operation. Please ensure your prepaid account has enough credit.

Pay as an individual

To pay with your user organization (ie: yourself as an individual), just use the regular required parameters. The invoice will be edited with your personal information.

For this to work, you need to:

  • use the same first name and last name for the domain name's owner

Pay as another organization

To pay using another organization, you'll need to perform the request with the organization's ID as the sharing_id query string parameter (see reference). The invoice will be edited using this organization's information.

For this to work, you need to:

  • have billing permissions on the organization
  • use the same organization name for the domain name's owner

Special case - buy a domain as a reseller organization

Should you want to buy a domain for a customer using a reseller account, you'll need the ID (see reference) of your reseller account and your customer's information for the owner. Then, you'll perform the request with sharing_id=<reseller-id> in the query string and the owner information in the payload. The invoice will be edited with the reseller organization's information.

For this to work, you need to:

  • have billing permissions on the reseller organization

Request

Query String
  • Optional
    • sharing_idstring
      Sharing ID. Organization ID used as a filter or as a billing identifier. See the reference.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
    Optional
    • Dry-Runinteger
      If this header's value is 1 the request's parameters will only be checked; the operation will not actually be performed.
Body
  • application/json
    object

    With the following properties:

    Required
    • fqdnstring
    • ownerobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    Optional
    • adminobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • billobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • claimsstring
    • currencystring

      One of: "EUR", "USD", "GBP", "TWD", "CNY"

    • durationinteger

      Minimum: 1

      Maximum: 10

    • enforce_premiumboolean
      Must be set to true if the domain is a premium domain.
    • extra_parametersobject
    • langstring
      ISO-639-2 language code of the domain, required for some IDN domains.
    • nameserver_ipsobject
      For glue records only – dictionnary associating a nameserver to a list of IP addresses.
      Example:
      {
        "ns1.example.net": [
          "203.0.113.1"
        ],
        "ns2.example.net": [
          "203.0.113.2",
          "203.0.113.3"
        ]
      }
    • nameserversarray[ string ]
      List of nameservers. Gandi's LiveDNS nameservers are used if omitted.
    • pricenumber
    • resellee_idstring
    • smdstring
      Contents of a Signed Mark Data file (used for newgtld sunrises, tld_period must be sunrise)
    • techobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • tld_periodstring

      One of: "sunrise", "landrush", "eap1", "eap2", "eap3", "eap4", "eap5", "eap6", "eap7", "eap8", "eap9", "golive"

    Example:
    {
      "fqdn": "example.com",
      "duration": 5,
      "owner": {
        "city": "Paris",
        "given": "Alice",
        "family": "Doe",
        "zip": "75001",
        "country": "FR",
        "streetaddr": "5 rue neuve",
        "phone": "+33.123456789",
        "state": "FR-J",
        "type": 0,
        "email": "alice@example.org"
      }
    }

Responses

200

Dry-Run response. You will get this response when you send your request. with a Dry-Run: 1 header.
Headers
  • Optional
    • Warningstring
      Warning message
Body
  • application/json
    object

    With the following properties:

    • statusstring

      One of: "success", "error"

      Response status.
    Optional
    • errorsarray
      A list of all the errors encountered during validation.

      Of items of type:

      • object

        With the following properties:

        • descriptionstring
          Error message.
        • locationstring

          One of: "header", "path", "querystring", "body"

          The field's location in the HTTP response.
        • namestring
          The xpath of the field.

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Domain Information

https://api.gandi.net/v5/domain/domains/{domain}

get Domain details

This route is used to find and return information about a domain to which you have permissions.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • autorenewobject

      With the following properties:

      • hrefstring
      Optional
      • datesarray[ datetime ]
      • durationinteger

        Default: 1

      • enabledboolean

        Default: false

      • org_idstring
        UUID
    • can_tld_lockboolean
    • contactsobject

      With the following properties:

      • adminobject

        With the following properties:

        • countrystring
        • emailstring
        • familystring
        • givenstring
        • same_as_ownerboolean
          Will be true when the contact used is the same as the owner.
        • streetaddrstring
        • typeinteger

          One of: 0, 1, 2, 3, 4

          0=person, 1=company, 2=association, 3=public body, 4=reseller
        Optional
        • brand_numberstring
        • citystring
        • data_obfuscatedboolean
        • extra_parametersobject
        • faxstring
        • jo_announce_numberstring
        • jo_announce_pagestring
        • jo_declaration_datestring
        • jo_publication_datestring
        • mail_obfuscatedboolean
        • mobilestring
        • orgnamestring
          The legal name of the company, association, or public body if the contact type is not 0.
        • phonestring
        • reachabilitystring

          One of: "pending", "done", "failed", "deleted", "none"

          Learn more about reachability here.
        • sharing_idstring
        • sirenstring
        • statestring
          Learn more about state codes here
        • validationstring

          One of: "pending", "done", "failed", "deleted", "none"

        • zipstring
      • billobject

        With the following properties:

        • countrystring
        • emailstring
        • familystring
        • givenstring
        • same_as_ownerboolean
          Will be true when the contact used is the same as the owner.
        • streetaddrstring
        • typeinteger

          One of: 0, 1, 2, 3, 4

          0=person, 1=company, 2=association, 3=public body, 4=reseller
        Optional
        • brand_numberstring
        • citystring
        • data_obfuscatedboolean
        • extra_parametersobject
        • faxstring
        • jo_announce_numberstring
        • jo_announce_pagestring
        • jo_declaration_datestring
        • jo_publication_datestring
        • mail_obfuscatedboolean
        • mobilestring
        • orgnamestring
          The legal name of the company, association, or public body if the contact type is not 0.
        • phonestring
        • reachabilitystring

          One of: "pending", "done", "failed", "deleted", "none"

          Learn more about reachability here.
        • sharing_idstring
        • sirenstring
        • statestring
          Learn more about state codes here
        • validationstring

          One of: "pending", "done", "failed", "deleted", "none"

        • zipstring
      • ownerobject

        With the following properties:

        • countrystring
        • emailstring
        • familystring
        • givenstring
        • streetaddrstring
        • typeinteger

          One of: 0, 1, 2, 3, 4

          0=person, 1=company, 2=association, 3=public body, 4=reseller
        Optional
        • brand_numberstring
        • citystring
        • data_obfuscatedboolean
        • extra_parametersobject
        • faxstring
        • jo_announce_numberstring
        • jo_announce_pagestring
        • jo_declaration_datestring
        • jo_publication_datestring
        • mail_obfuscatedboolean
        • mobilestring
        • orgnamestring
          The legal name of the company, association, or public body if the contact type is not 0.
        • phonestring
        • reachabilitystring

          One of: "pending", "done", "failed", "deleted", "none"

          Learn more about reachability here.
        • sharing_idstring
        • sirenstring
        • statestring
          Learn more about state codes here
        • validationstring

          One of: "pending", "done", "failed", "deleted", "none"

        • zipstring
      • techobject

        With the following properties:

        • countrystring
        • emailstring
        • familystring
        • givenstring
        • same_as_ownerboolean
          Will be true when the contact used is the same as the owner.
        • streetaddrstring
        • typeinteger

          One of: 0, 1, 2, 3, 4

          0=person, 1=company, 2=association, 3=public body, 4=reseller
        Optional
        • brand_numberstring
        • citystring
        • data_obfuscatedboolean
        • extra_parametersobject
        • faxstring
        • jo_announce_numberstring
        • jo_announce_pagestring
        • jo_declaration_datestring
        • jo_publication_datestring
        • mail_obfuscatedboolean
        • mobilestring
        • orgnamestring
          The legal name of the company, association, or public body if the contact type is not 0.
        • phonestring
        • reachabilitystring

          One of: "pending", "done", "failed", "deleted", "none"

          Learn more about reachability here.
        • sharing_idstring
        • sirenstring
        • statestring
          Learn more about state codes here
        • validationstring

          One of: "pending", "done", "failed", "deleted", "none"

        • zipstring
    • datesobject
      Domain's life cycle dates.

      With the following properties:

      • registry_created_atdatetime
      • updated_atdatetime
      Optional
      • authinfo_expires_atdatetime
      • created_atdatetime
      • deletes_atdatetime
      • hold_begins_atdatetime
      • hold_ends_atdatetime
      • pending_delete_ends_atdatetime
      • registry_ends_atdatetime
      • renew_begins_atdatetime
      • restore_ends_atdatetime
    • fqdnstring
      Fully qualified domain name, written in its native alphabet (IDN).
    • fqdn_unicodestring
      Fully qualified domain name, written in unicode (learn more).
    • hrefstring
      Link to domain details.
    • nameserversarray[ string ]

      Minimum items: 1

    • servicesarray
      List of Gandi services attached to this domain.

      Of items of type:

      • string

        One of: "gandidns", "redirection", "gandimail", "packmail", "dnssec", "blog", "hosting", "paas", "site", "certificate", "gandilivedns", "mailboxv2"

    • sharing_spaceobject

      With the following properties:

      • idstring
        UUID
      • namestring
      Optional
      • resellerboolean
    • statusarray

      Of items of type:

      • string

        One of: "clientHold", "clientUpdateProhibited", "clientTransferProhibited", "clientDeleteProhibited", "clientRenewProhibited", "serverHold", "pendingTransfer", "serverTransferProhibited"

        Information on the following domain statuses can be found in our general documentation.
    • tldstring
    Optional
    • authinfostring
    • idstring
      Domain ID
    • sharing_idstring
      UUID
    • tagsarray[ string ]
      List of tags that have been assigned to the domain name.
    • trustee_rolesarray

      Of items of type:

      • string

        One of: "admin", "tech"

    Example:
    {
      "status": [
        "clientTransferProhibited"
      ],
      "dates": {
        "created_at": "2019-02-13T11:04:18Z",
        "deletes_at": "2021-03-30T00:04:18Z",
        "hold_begins_at": "2021-02-13T10:04:18Z",
        "hold_ends_at": "2021-03-30T10:04:18Z",
        "pending_delete_ends_at": "2021-05-04T10:04:18Z",
        "registry_created_at": "2019-02-13T10:04:18Z",
        "registry_ends_at": "2021-02-13T10:04:18Z",
        "renew_begins_at": "2012-01-01T00:00:00Z",
        "restore_ends_at": "2021-04-29T10:04:18Z",
        "updated_at": "2019-02-25T16:20:49Z",
        "authinfo_expires_at": "2020-02-25T16:20:49Z"
      },
      "can_tld_lock": true,
      "tags": [],
      "nameservers": [
        "ns-25-a.gnadi.net",
        "ns-113-b.gnadi.net",
        "ns-58-c.gnadi.net"
      ],
      "contacts": {
        "admin": {
          "city": "Paris",
          "given": "Alice",
          "family": "Doe",
          "zip": "75001",
          "extra_parameters": {},
          "country": "FR",
          "streetaddr": "5 rue neuve",
          "data_obfuscated": true,
          "mail_obfuscated": true,
          "phone": "+33.123456789",
          "same_as_owner": true,
          "state": "FR-J",
          "type": 0,
          "email": "alice@example.org"
        },
        "bill": {
          "city": "Paris",
          "given": "Alice",
          "family": "Doe",
          "zip": "75001",
          "extra_parameters": {},
          "country": "FR",
          "streetaddr": "5 rue neuve",
          "data_obfuscated": true,
          "mail_obfuscated": true,
          "phone": "+33.123456789",
          "same_as_owner": true,
          "state": "FR-J",
          "type": 0,
          "email": "alice@example.org"
        },
        "tech": {
          "city": "Paris",
          "given": "Alice",
          "family": "Doe",
          "zip": "75001",
          "extra_parameters": {},
          "country": "FR",
          "streetaddr": "5 rue neuve",
          "data_obfuscated": true,
          "mail_obfuscated": true,
          "phone": "+33.123456789",
          "same_as_owner": true,
          "state": "FR-J",
          "type": 0,
          "email": "alice@example.org"
        },
        "owner": {
          "city": "Paris",
          "given": "Alice",
          "family": "Doe",
          "zip": "75001",
          "extra_parameters": {},
          "country": "FR",
          "streetaddr": "5 rue neuve",
          "data_obfuscated": true,
          "mail_obfuscated": true,
          "phone": "+33.123456789",
          "state": "FR-J",
          "type": 0,
          "email": "alice@example.org"
        }
      },
      "fqdn": "example.net",
      "autorenew": {
        "dates": [
          "2021-01-13T09:04:18Z",
          "2021-01-29T10:04:18Z",
          "2021-02-12T10:04:18Z"
        ],
        "org_id": "fe0b931c-18c5-11e9-b9b5-00163ec4cb00",
        "duration": 1,
        "href": "http://api.test/v5/domain/domains/example.net/autorenew",
        "enabled": false
      },
      "authinfo": "8vyhljvJg+",
      "sharing_space": {
        "id": "fe0b931c-18c5-11e9-b9b5-00163ec4cb00",
        "name": "alice_doe"
      },
      "tld": "net",
      "services": [
        "gandilivedns",
        "mailboxv2"
      ],
      "id": "ba1167be-2f76-11e9-9dfb-00163ec4cb00",
      "trustee_roles": [],
      "href": "http://api.test/v5/domain/domains/example.net",
      "fqdn_unicode": "example.net"
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Domain Automatic Renewal

https://api.gandi.net/v5/domain/domains/{domain}/autorenew

patch Edit autorenew status

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
Body
  • application/json
    object

    With the following properties:

    Required
    • enabledboolean
    Optional
    • durationinteger

      Default: 1

      Minimum: 1

      Maximum: 9

    • org_idstring
    Example:
    {
      "duration": 1,
      "enabled": true
    }

Responses

201

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Domain Contacts

https://api.gandi.net/v5/domain/domains/{domain}/contacts

get Domain contact list

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • adminobject

      With the following properties:

      • countrystring
      • emailstring
      • familystring
      • givenstring
      • same_as_ownerboolean
        Will be true when the contact used is the same as the owner.
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • reachabilitystring

        One of: "pending", "done", "failed", "deleted", "none"

        Learn more about reachability here.
      • sharing_idstring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • billobject

      With the following properties:

      • countrystring
      • emailstring
      • familystring
      • givenstring
      • same_as_ownerboolean
        Will be true when the contact used is the same as the owner.
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • reachabilitystring

        One of: "pending", "done", "failed", "deleted", "none"

        Learn more about reachability here.
      • sharing_idstring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • ownerobject

      With the following properties:

      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • reachabilitystring

        One of: "pending", "done", "failed", "deleted", "none"

        Learn more about reachability here.
      • sharing_idstring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • techobject

      With the following properties:

      • countrystring
      • emailstring
      • familystring
      • givenstring
      • same_as_ownerboolean
        Will be true when the contact used is the same as the owner.
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • reachabilitystring

        One of: "pending", "done", "failed", "deleted", "none"

        Learn more about reachability here.
      • sharing_idstring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    Example:
    {
      "admin": {
        "city": "Paris",
        "given": "Alice",
        "family": "Doe",
        "zip": "75001",
        "extra_parameters": {},
        "country": "FR",
        "streetaddr": "5 rue neuve",
        "data_obfuscated": true,
        "mail_obfuscated": true,
        "phone": "+33.123456789",
        "same_as_owner": true,
        "state": "FR-J",
        "type": 0,
        "email": "alice@example.org"
      },
      "bill": {
        "city": "Paris",
        "given": "Alice",
        "family": "Doe",
        "zip": "75001",
        "extra_parameters": {},
        "country": "FR",
        "streetaddr": "5 rue neuve",
        "data_obfuscated": true,
        "mail_obfuscated": true,
        "phone": "+33.123456789",
        "same_as_owner": true,
        "state": "FR-J",
        "type": 0,
        "email": "alice@example.org"
      },
      "tech": {
        "city": "Paris",
        "given": "Alice",
        "family": "Doe",
        "zip": "75001",
        "extra_parameters": {},
        "country": "FR",
        "streetaddr": "5 rue neuve",
        "data_obfuscated": true,
        "mail_obfuscated": true,
        "phone": "+33.123456789",
        "same_as_owner": true,
        "state": "FR-J",
        "type": 0,
        "email": "alice@example.org"
      },
      "owner": {
        "city": "Paris",
        "given": "Alice",
        "family": "Doe",
        "zip": "75001",
        "extra_parameters": {},
        "country": "FR",
        "streetaddr": "5 rue neuve",
        "data_obfuscated": true,
        "mail_obfuscated": true,
        "phone": "+33.123456789",
        "state": "FR-J",
        "type": 0,
        "email": "alice@example.org"
      }
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

patch Domain contact update

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
Body
  • application/json
    object

    With the following properties:

    Optional
    • adminobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • billobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    • techobject

      With the following properties:

      Required
      • countrystring
      • emailstring
      • familystring
      • givenstring
      • streetaddrstring
      • typeinteger

        One of: 0, 1, 2, 3, 4

        0=person, 1=company, 2=association, 3=public body, 4=reseller
      Optional
      • brand_numberstring
      • citystring
      • data_obfuscatedboolean

        Default: true

        Learn more about WHOIS privacy at Gandi here.
      • extra_parametersobject
      • faxstring
      • jo_announce_numberstring
      • jo_announce_pagestring
      • jo_declaration_datestring
      • jo_publication_datestring
      • langstring

        One of: "en", "es", "fr", "ja", "zh-hans", "zh-hant"

      • mail_obfuscatedboolean
      • mobilestring
      • orgnamestring
        The legal name of the company, association, or public body if the contact type is not 0.
      • phonestring
      • sirenstring
      • statestring
        Learn more about state codes here
      • validationstring

        One of: "pending", "done", "failed", "deleted", "none"

      • zipstring
    Example:
    {
      "admin": {
        "lang": "en",
        "city": "Paris",
        "given": "Bob",
        "family": "Doe",
        "zip": "75001",
        "extra_parameters": {},
        "country": "FR",
        "streetaddr": "8 rue neuve",
        "data_obfuscated": true,
        "mail_obfuscated": true,
        "phone": "+33.123456788",
        "state": "FR-J",
        "type": 0,
        "email": "bob@example.org"
      }
    }

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Glue Record Management

https://api.gandi.net/v5/domain/domains/{domain}/hosts

A glue record is the association of a hostname with an IP address at the registry. Once created, add your new names to your list of nameservers. Changes will be effective within from 12 up to 72 hours, the time for the DNS new zones to propagate worldwide. Learn more.

get Glue record list

This route returns the list of glue records for the given domain, with their associated IP addresses.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    array

    Of items of type:

    • object

      With the following properties:

      • fqdnstring
        Fully qualified domain name, written in its native alphabet (IDN).
      • fqdn_unicodestring
        Fully qualified domain name, written in unicode.
      • hrefstring
        URL to this host's details.
      • ipsarray[ string ]
        List of this host's registered IP addresses.
      • namestring
        Name of this host (FQDN without the domain part).
    Example:
    [
      {
        "ips": [
          "203.0.113.1"
        ],
        "name": "ns1",
        "fqdn": "example.net",
        "href": "http://api.test/v5/domain/domains/example.net/hosts/ns1",
        "fqdn_unicode": "example.net"
      }
    ]

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

post Create a new glue record

This route is used to create a new glue record.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
Body
  • application/json
    object

    With the following properties:

    Required
    • ipsarray[ string ]
      List of IP addresses.
    • namestring
      Host name of the glue record.
    Example:
    {
      "name": "ns2",
      "ips": [
        "203.0.113.2",
        "203.0.113.3",
        "2001:db8:0:0:0:0:0:00ff"
      ]
    }

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Glue record information

https://api.gandi.net/v5/domain/domains/{domain}/hosts/{name}

get Glue record information

This route returns information on a specific glue record for the given domain.

Request

URI Parameters
    • domainstring
      Domain name.
    • namestring
      Host name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • fqdnstring
      Fully qualified domain name, written in its native alphabet (IDN).
    • fqdn_unicodestring
      Fully qualified domain name, written in unicode.
    • hrefstring
      URL to this host's details.
    • ipsarray[ string ]
      List of this host's registered IP addresses.
    • namestring
      Name of this host (FQDN without the domain part).
    Example:
    {
      "ips": [
        "203.0.113.1"
      ],
      "name": "ns1",
      "fqdn": "example.net",
      "href": "http://api.test/v5/domain/domains/example.net/hosts/ns1",
      "fqdn_unicode": "example.net"
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

put Update a glue record

This route is used to update an existing glue record.

Request

URI Parameters
    • domainstring
      Domain name.
    • namestring
      Host name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
Body
  • application/json
    object

    With the following properties:

    Required
    • ipsarray[ string ]
      List of IP addresses.
    Example:
    {
      "ips": [
        "203.0.113.2",
        "203.0.113.3",
        "2001:db8:0:0:0:0:0:00ff"
      ]
    }

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

delete Delete a glue record

Request

URI Parameters
    • domainstring
      Domain name.
    • namestring
      Host name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

LiveDNS Management

https://api.gandi.net/v5/domain/domains/{domain}/livedns

get Domain LiveDNS Information

This route returns LiveDNS status information for the given domain.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • currentstring

      One of: "classic", "livedns", "other"

      Type of nameservers currently set. classic corresponds to Gandi's classic nameservers, livedns is for the new, default, Gandi nameservers and other is for custom nameservers.
    • nameserversarray[ string ]
      List of current nameservers.
    Optional
    • dnssec_availableboolean
      Indicates if DNSSEC may be applied to the domain.
    • livednssec_availableboolean
      Indicates if DNSSEC with liveDNS may be applied to this domain.
    Example:
    {
      "dnssec_available": true,
      "livednssec_available": true,
      "nameservers": [
        "ns-190-a.gnadi.net",
        "ns-193-b.gnadi.net",
        "ns-143-c.gnadi.net"
      ],
      "current": "livedns"
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

post Enable LiveDNS

This route is used to apply the correct LiveDNS nameservers for the given domain. It takes no content. If you want to disable LiveDNS, change the nameservers.

Please note that if the domain is on the classic Gandi DNS, this will also perform a copy of all existing records immediately afterwards.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Nameservers Management

https://api.gandi.net/v5/domain/domains/{domain}/nameservers

get Domain Nameserver Information

This route returns the nameservers that are currently set on this domain.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    array[ string ]
    List of FQDNs.
    Example - Nameserver list:
    [
      "ns1.example.net",
      "ns2.example.net"
    ]
    Example - Nameserver list (livedns example):
    [
      "ns-190-a.gnadi.net",
      "ns-193-b.gnadi.net",
      "ns-143-c.gnadi.net"
    ]

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

put Update Domain Nameserver List

This route is used to change the nameservers that are set on a given domain.

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
Body
  • application/json
    object

    With the following properties:

    Required
    • nameserversarray[ string ]
      List of FQDNs.
    Example:
    {
      "nameservers": [
        "ns1.example.net",
        "ns2.example.net"
      ]
    }

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Domain Renewal

https://api.gandi.net/v5/domain/domains/{domain}/renew

get Domain renewal information

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • begins_atstring
    • durationsarray[ integer ]
    • maximuminteger
    • minimuminteger
    • prohibitedboolean
    Optional
    • ends_atstring
    • in_renew_periodboolean
    Example:
    {
      "in_renew_period": true,
      "durations": [
        1,
        2,
        3,
        4,
        5,
        6,
        7,
        8
      ],
      "maximum": 8,
      "minimum": 1,
      "prohibited": false,
      "begins_at": "2012-01-01T00:00:00Z",
      "ends_at": "2021-03-30T00:00:00Z"
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

post Renew a Domain

This route is used to renew domain names. Warning! This is not a free operation. Please ensure your prepaid account has enough credit.

Request

URI Parameters
    • domainstring
      Domain name.
Query String
  • Optional
    • sharing_idstring
      Sharing ID. Organization ID used as a filter or as a billing identifier. See the reference.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
    Optional
    • Dry-Runinteger
      If this header's value is 1 the request's parameters will only be checked; the operation will not actually be performed.
Body
  • application/json
    object

    With the following properties:

    Optional
    • durationinteger

      Default: 1

      Minimum: 1

      Maximum: 9

      The duration (in years) of the renewal.
    Example:
    {
      "duration": 2
    }

Responses

200

Dry-Run response. You will get this response when you send your request. with a Dry-Run: 1 header.
Headers
  • Optional
    • Warningstring
      Warning message
Body
  • application/json
    object

    With the following properties:

    • statusstring

      One of: "success", "error"

      Response status.
    Optional
    • errorsarray
      A list of all the errors encountered during validation.

      Of items of type:

      • object

        With the following properties:

        • descriptionstring
          Error message.
        • locationstring

          One of: "header", "path", "querystring", "body"

          The field's location in the HTTP response.
        • namestring
          The xpath of the field.

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Domain Restore

https://api.gandi.net/v5/domain/domains/{domain}/restore

get Domain restore information

Request

URI Parameters
    • domainstring
      Domain name.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • restorableboolean
    Optional
    • contractsarray

      Of items of type:

      • object

        With the following properties:

        • idstring
        • namestring
        Optional
        • hrefstring
        • registry_contract_hrefstring
    Example:
    {
      "restorable": true
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

post Restore a Domain

This route is used to restore domain names (learn more about restoration). Warning! This is not a free operation. Please ensure your prepaid account has enough credit.

Request

URI Parameters
    • domainstring
      Domain name.
Query String
  • Optional
    • sharing_idstring
      Sharing ID. Organization ID used as a filter or as a billing identifier. See the reference.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key
Body
  • application/json
    object

Responses

202

Headers
  • Optional
    • Locationstring
Body
  • application/json
    object

    With the following properties:

    • messagestring
      Confirmation message.

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

List Available TLD Extensions

https://api.gandi.net/v5/domain/tlds

get List available TLD extensions

Request

Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    array

    Of items of type:

    • object

      With the following properties:

      • hrefstring
        Link to TLD details.
      • namestring
        Name of the TLD.
    Example:
    [
      {
        "name": "com",
        "href": "https://api.test/v5/domain/tlds/com"
      },
      {
        "name": "eu",
        "href": "https://api.test/v5/domain/tlds/eu"
      },
      {
        "name": "fr",
        "href": "https://api.test/v5/domain/tlds/fr"
      },
      {
        "name": "info",
        "href": "https://api.test/v5/domain/tlds/info"
      },
      {
        "name": "net",
        "href": "https://api.test/v5/domain/tlds/net"
      },
      {
        "name": "org",
        "href": "https://api.test/v5/domain/tlds/org"
      }
    ]

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

TLD Information

https://api.gandi.net/v5/domain/tlds/{name}

get TLD Details

This route is used to find and return information about any TLD extension that Gandi manages.

Request

URI Parameters
    • namestring
      Name of the TLD, or a FQDN.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key

Responses

200

Body
  • application/json
    object

    With the following properties:

    • authinfo_for_transferboolean
      true if authinfo is required prior to transfer.
    • categorystring
      Category of this TLD.
    • change_ownerboolean
      true if change owner is allowed.
    • corporateboolean
      true if this is a corporate TLD.
    • ext_tradeboolean
    • full_tldstring
    • hrefstring
      Link to TLD details.
    • lockboolean
    • namestring
      Name of the TLD.
    Example:
    {
      "category": "ccTLD",
      "name": "eu",
      "lock": false,
      "change_owner": true,
      "authinfo_for_transfer": true,
      "full_tld": "eu",
      "corporate": false,
      "ext_trade": true,
      "href": "https://api.test/v5/domain/tlds/eu"
    }

403

Access to the resource is denied. Mainly due to a lack of permissions to access it.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

401

Bad authentication attempt because of a wrong API Key.
Body
  • application/json
    object

    With the following properties:

    • causestring
    • codeinteger
    • messagestring
    • objectstring

Secured by

Authentication with API Key

This authentication scheme allows you to pass your Gandi API Key and be granted access to your resources, as your permissions allow.
Headers
  • Required
    • Authorizationstring
      The Authorization header must start with Apikey, followed by the user's API Key.
      Example: Apikey your-api-key