Gandi

Connect Gandi with Webflow to publish your site on a Gandi-registered domain while LiveDNS and Gandi Mail stay where they are.

→
↗
►
↓
←
↑
Install app
→
↗
►
↓
←
↑
View website
→
↗
►
↓
←
↑
View lesson
→
↗
►
↓
←
↑
A record settings
→
↗
►
↓
←
↑
CNAME record settings
Gandi

Webflow hosting serves your pages, issues SSL, and runs a global CDN, but it does not run DNS for a domain registered elsewhere and does not host email. A domain bought at Gandi keeps its zone, mailboxes, and forwarding rules in the Gandi admin. Nothing in Site settings can write records into that zone for you, so the domain stays disconnected until someone edits it on the Gandi side.

Adding three records in Gandi LiveDNS points the domain at Webflow hosting. You verify ownership in Site settings, publish, and SSL provisions once the records resolve. Gandi Mail, SPF, and DKIM records stay untouched, so company email keeps delivering through the switch. Agencies with many client zones can script the same records and the publish step with the Gandi v5 and Webflow Data APIs.

This setup fits freelancers launching a client's existing .fr or .eu domain, marketing teams moving a site to Webflow while mailboxes stay at Gandi, and agency DevOps teams who onboard dozens of client domains. European founders who want a French registrar with WHOIS privacy on by default use the same pattern.

How to integrate Gandi with Webflow

Gandi is a French domain registrar that also sells email hosting, SSL certificates, and VPS servers. Every domain registered at Gandi includes free LiveDNS nameservers with automatic DNSSEC and a public API. WHOIS privacy is free, automatic, and on by default.

Teams pair the two when a domain already lives at Gandi, and the website moves to Webflow. The domain, DNS zone, and mailboxes stay put, and only the web-facing records change. Gandi publishes no Webflow Marketplace app and no connector on Zapier, Make, n8n, IFTTT, or viaSocket, so the connection runs through DNS records and, for automation, the two public APIs.

The Gandi-Webflow integration supports three approaches:

  • Gandi LiveDNS records point the root domain, www, or a subdomain at Webflow hosting without code.
  • Gandi Web Forwarding redirects a secondary Gandi domain to your Webflow default domain.
  • With the Webflow and Gandi APIs, server-side code gives you full control over DNS records, domain checks, and publishing.

Most implementations combine two or more of these methods, depending on the setup's complexity.

Point Gandi LiveDNS records at Webflow hosting

Three records in Gandi LiveDNS connect a domain to Webflow: an A record for the root, a CNAME for www, and a TXT record that proves ownership. The domain must use Gandi's LiveDNS nameservers before the DNS Records tab becomes editable, and the Webflow site needs a paid Site plan. You don't change nameservers; Webflow hosting works with your registrar's default nameservers. Gandi's generic linking guide describes the same A-plus-CNAME pattern with another host's values.

Connect the root domain and www

Start in Webflow to get the site-specific verification value, then enter the records in Gandi. The Manually connect a custom domain article lists the current record values.

To connect the domain:

  1. Go to Site settings > Publishing > Production, click Add a custom domain, then Manually add domain. Enter the root domain; this connects root and www together.
  2. Copy the records shown on the Production screen. Current published values are A @ to 198.202.211.1, CNAME www to cdn.webflow.com, and TXT _webflow with a value starting one-time-verification=. Use the values on your own screen, because record sets vary by site since the April 9, 2025 migration.
  3. In Gandi, click Domain, open the domain, and open the DNS Records tab. Click Add for each record. Leave the A record name as @, end the CNAME value with a dot (cdn.webflow.com.), and keep the default TTL.
  4. Delete any other A record on @ and any other CNAME on www left over from previous hosting. Leave MX, SPF, and DKIM records alone.
  5. Back in Webflow, click Check status, then Verify domain. When the status reads Custom domain verified, click Make default on the www domain and then Publish > Publish to selected domains.

Set www as the default rather than the root. A root default without DNS adjustments can produce a "too many redirects" error, which the Fix the too many redirects error article covers. If the zone still holds the legacy values 75.2.70.75, 99.83.190.102, or proxy-ssl.webflow.com, replace them; publishing to domains on those records has been blocked since January 13, 2026.

Connect a subdomain

A subdomain such as blog.example.com can point at a Webflow site while the root domain stays on other infrastructure. Pages can't publish to a specific subdomain, so each subdomain needs its own Webflow site. The Manually add domain option accepts a domain or a subdomain.

To connect a subdomain:

  1. Add the subdomain under Site settings > Publishing > Production with Manually add domain, and copy the records shown.
  2. In Gandi's DNS Records tab, add a CNAME with the subdomain as the name (for example blog) and cdn.webflow.com. as the value.
  3. Add the _webflow TXT record exactly as shown on the Production screen.
  4. Keep exactly one CNAME on that subdomain, since extra CNAMEs conflict.
  5. Click Verify domain, then publish to the subdomain.

A site accepts up to 50 custom domains; beyond that, use a domain forwarding service. Set one default domain per site so the other domains redirect to it instead of serving duplicate content.

Keep Gandi Mail working during the switch

Webflow hosting does not include email, so your Gandi mailboxes keep handling mail as long as the MX records stay in the zone. Gandi Mail depends on Gandi's MX records regardless of which nameservers the domain uses. When you add the Webflow records, the mail records sit beside them in the same LiveDNS zone.

Records that must stay in place:

  • MX @ 10800 IN MX 10 spool.mail.gandi.net. and @ 10800 IN MX 50 fb.mail.gandi.net.
  • SPF TXT on @ containing include:_mailcust.gandi.net (docs.gandi.net shows ?all; an older helpdesk article shows ~all)
  • DKIM CNAMEs gm1._domainkey, gm2._domainkey, and gm3._domainkey pointing to gm1.gandimail.net., gm2.gandimail.net., and gm3.gandimail.net.; all three are needed for key rollover
  • Any _dmarc TXT you have set; p=reject can stop forwarded mail from being delivered

The anti-spoofing article lists the SPF, DKIM, and DMARC values. If you ever switch the domain to external nameservers, Gandi does not copy records across, and email stops until you re-add them; staying on LiveDNS avoids that risk.

Redirect a secondary domain with Gandi Web Forwarding

Gandi recommends a web forward over duplicate DNS records when several domains should open one site. A forward sends example.fr to www.example.com without connecting the second domain to Webflow or spending a custom-domain slot. Forwards work best on LiveDNS, and HTTPS forwards get an automatic certificate when one is available.

To create a forward:

  1. In Gandi, open the domain and click the Web Forwarding tab, then Create.
  2. Enter the hostname to forward (root, www, or a subdomain) and the destination URL on your Webflow default domain.
  3. Choose http, https, or both, and pick a permanent, temporary, or masked forward.
  4. Save, then test the redirect after propagation.

Masked and wildcard forwards can't use HTTPS, so use a permanent forward for a secondary brand domain. Redirects between paths inside the Webflow site belong in Site settings > Publishing > 301 redirects, which needs a paid Site plan or paid Workspace plan.

Build with the Webflow and Gandi APIs

The Gandi v5 REST API writes LiveDNS records, checks domain availability, and lists the domains in an organization. The Webflow Data API v2 lists a site's custom domains, publishes to them, and sends webhooks when events happen. Together they let an agency script the DNS and publish steps across many client zones. Both APIs authenticate with bearer tokens, so run the calls on a server or in a serverless function. Keep these calls out of page code.

Available APIs:

Gandi calls use Authorization: Bearer <PAT>; the older Apikey scheme is deprecated and can't be scoped. Create a personal access token under ORGANIZATIONS > your organization > Sharing > Create a token, set an expiry between 7 days and 1 year, and grant the "Manage domain name technical configurations" permission. Webflow calls use a Site token from Site settings > Apps & integrations > API access > Generate API token; site tokens expire after 365 days of inactivity. The Gandi v5 reference documents no outbound webhooks, so a Gandi-to-Webflow sync polls GET /v5/domain/domains and reads dates.registry_ends_at and status values such as pendingTransfer.

Create the Webflow records with the LiveDNS API

Agencies onboarding many client domains can write the Webflow records in one scripted pass instead of clicking through each zone. Add the domain in Webflow first, because the Data API only lists custom domains; no documented endpoint adds or verifies one.

To create the records:

  1. Add the domain under Site settings > Publishing > Production and copy the one-time-verification= value.
  2. Enrol the zone if it isn't on LiveDNS yet: POST https://api.gandi.net/v5/livedns/domains with body {"fqdn":"example.org"} and Content-Type: application/json. The response is 201. An optional zone.items array can carry records in the same call.
  3. Create each record with POST https://api.gandi.net/v5/livedns/domains/{fqdn}/records. Built from the documented fields, the A record body is {"rrset_name":"@","rrset_type":"A","rrset_values":["198.202.211.1"],"rrset_ttl":3600}. Repeat for the www CNAME with rrset_values of ["cdn.webflow.com."] and for the _webflow TXT.
  4. Verify the domain in Webflow, then publish.

rrset_ttl accepts 300 to 2592000 seconds. On zones with many records, PATCH /v5/livedns/domains/{fqdn} with {"automatic_snapshots": false} speeds up modifications, and GET /v5/livedns/domains returns only your personal organization's domains unless you pass sharing_id. Test against the sandbox at https://api.sandbox.gandi.net/v5/, which supports .com, .net, .org, and .fr.

Publish to the domain with the Webflow Data API

Once the records resolve and the domain shows as verified, the publish step can run from the same script. The custom domains endpoint returns the IDs the publish call needs.

To publish from code:

  1. Call GET https://api.webflow.com/v2/sites/{site_id}/custom_domains with a token holding sites:read. The response lists customDomains with id, url, and lastPublished.
  2. Call POST https://api.webflow.com/v2/sites/{site_id}/publish with sites:write and a body containing customDomains (an array of domain IDs) and/or publishToWebflowSubdomain. At least one is required, and the response is 202. Add pageId to publish a single page.
  3. Register a site_publish webhook instead of polling for completion. Its payload nests siteId, publishedOn, domains, publishedBy, publishScope, and pageId under payload, per the event docs.

The publish endpoint succeeds only for domains that have passed ownership verification, so run the LiveDNS step and wait for propagation before calling it.

Check domain availability from a Webflow form

A Webflow form plus a serverless function can run a live availability check against Gandi for visitors typing in a domain name. Agencies that resell Gandi domains can offer the check on their own Webflow site. The form submission arrives as a signed webhook, and the function calls the Domain API.

To implement the check:

  1. Create the webhook with POST https://api.webflow.com/v2/sites/{site_id}/webhooks, body triggerType: "form_submission", your function's url, and an optional filter.name matching the form name. The token needs forms:read.
  2. In the function, verify the x-webflow-timestamp and x-webflow-signature headers. The signature is a SHA-256 HMAC over timestamp + ":" + JSON.stringify(body), and the webhooks guide says to treat requests older than 5 minutes as possible replays.
  3. Read the submitted domain from payload.data, then call GET https://api.gandi.net/v5/domain/check?name=<domain> with the Bearer PAT. The response returns products with a status of available or unavailable plus prices.
  4. Write the result to a collection with POST https://api.webflow.com/v2/collections/{collection_id}/items and scope CMS:write, then show it in a Collection List. The create item page notes new integrations should use Create Items.
  5. To register on the visitor's behalf, call POST https://api.gandi.net/v5/domain/domains with fqdn, owner, and duration (1 to 10). Send the Dry-Run: 1 header first to validate; registration needs prepaid credit.

Submissions also remain available for later processing through GET /v2/sites/{site_id}/forms/{form_id}/submissions, which the list submissions page documents.

What can you build with the Gandi Webflow integration?

  • Client launch on an existing .fr domain: A freelance designer rebuilds a Paris consultancy's site on Webflow, adds the A, CNAME, and TXT records in the client's Gandi DNS Records tab, verifies, and publishes to www.example.fr. The client keeps domain ownership and renewal at Gandi.
  • Marketing site on Webflow with email left on Gandi: A SaaS marketing team moves example.com to Webflow. The MX, SPF, and DKIM records stay in the zone, so sales mailboxes keep delivering while the new homepage goes live.
  • Blog subdomain beside a product app: app.example.com stays on the product team's infrastructure while blog.example.com points at a Webflow site through one CNAME and a _webflow TXT record.
  • Scripted onboarding for an agency portfolio: An agency with dozens of client zones runs a script that enrols each domain in LiveDNS, writes the Webflow records through /v5/livedns/domains/{fqdn}/records, and calls POST /v2/sites/{site_id}/publish once each domain verifies.

Frequently asked questions

  • Use the A, CNAME, and ownership TXT values listed in the root-domain connection steps. Confirm the exact set in Site settings > Publishing > Production, since sites created before April 21, 2025 with no in-app notification need two A records. The Manually connect a custom domain article shows the current values, and Gandi's CNAME record page explains why the target must end with a final dot.

  • No. Keep Gandi's LiveDNS nameservers and edit only the DNS Records tab. Webflow hosting doesn't require custom nameservers, and LiveDNS is what keeps the Gandi interface and API able to manage records. Gandi announced the end of Classic DNS (a/b/c.dns.gandi.net) on August 24, 2026; most domains migrate to LiveDNS automatically, and you can switch early from the domain's Nameservers page.

  • Yes, as long as the MX records stay in the zone. The hosting overview states that email hosting isn't part of Webflow hosting and that you keep your MX records. Gandi Mail depends on Gandi's MX records regardless of which nameservers the domain uses. Leave the SPF TXT and the three DKIM CNAMEs from the anti-spoofing article in place as well.

  • Only Enterprise customers can use a Gandi certificate or another provider's certificate on a Webflow site. On standard plans, SSL issues automatically through Let's Encrypt and Google Trust Services once DNS points to Webflow, and it renews while DNS stays pointed there. If your Gandi zone contains CAA records, add 0 issue "letsencrypt.org" and 0 issue "pki.goog; cansignhttpexchanges=yes" as described in the CAA records article. The free one-year Standard certificate bundled with a Gandi domain isn't needed for a Webflow-hosted site.

  • Typically a few hours, with a maximum of 48 hours before the domain verifies, per the Manually connect a custom domain article. Gandi's DNS records article says new records usually appear within minutes while replacement records wait out the existing TTL, and its general guide allows up to 72 hours. For a live-site cutover, the migration guide suggests lowering the TTL one full TTL period before the switch; LiveDNS enforces a 300-second minimum. If the domain still shows an error after that window, work through Troubleshoot your DNS settings to find conflicting root A records or duplicate CNAMEs.

Gandi
Gandi
Joined in

Category

Domains

Description

Publish a Webflow site on a Gandi-registered domain by adding A, CNAME, and TXT records in Gandi LiveDNS, or script DNS and publishing with the Gandi v5 and [Webflow Data APIs](https://developers.webflow.com/data/reference/authentication).

→
↗
►
↓
←
↑
Install app

This integration page is provided for informational and convenience purposes only.


Other Domains integrations

Other Domains integrations

DNSimple

DNSimple

Connect DNSimple with Webflow to point custom domains at your site and automate DNS management across client projects.

Domains
Learn more
DNS Made Easy — CNAME flattening

DNS Made Easy — CNAME flattening

Set your root domain as the default domain by setting an ANAME record for your DNS Made Easy domain

Domains
Learn more
DNSimple — CNAME flattening

DNSimple — CNAME flattening

Set your root domain as the default domain by setting an ALIAS record for your DNSimple domain

Domains
Learn more
CrazyDomains

CrazyDomains

Connect CrazyDomains with Webflow to point your registered domain at Webflow's hosting through manual DNS configuration.

Domains
Learn more
DNS Made Easy

DNS Made Easy

Connect DNS Made Easy with Webflow to configure custom domain DNS records for production-ready hosting with automatic SSL.

Domains
Learn more
ClouDNS — CNAME flattening

ClouDNS — CNAME flattening

ClouDNS calls its apex ALIAS record CNAME flattening. Compare it against the A record Webflow documents for the root domain, and see where ClouDNS says flattening does not fit.

Domains
Learn more
ClouDNS

ClouDNS

Connect ClouDNS with Webflow to point a ClouDNS-managed domain at your Webflow site and add DNS failover for eligible A/AAAA records, DNSSEC, and API-driven record management.

Domains
Learn more
Cloudflare

Cloudflare

Connect Cloudflare with Webflow to manage DNS, add security layers, and run server-side logic at the edge for your Webflow site.

Domains
Learn more
Cloudflare — CNAME flattening

Cloudflare — CNAME flattening

Use Cloudflare to set your root domain as the default domain.

Domains
Learn more

Related integrations

No items found.

Get started for free

Try Webflow for as long as you like with our free Starter plan. Purchase a paid Site plan to publish, host, and unlock additional features.

Get started — it’s free