specification: API Commons Plans specificationVersion: '0.1' schema: https://raw.githubusercontent.com/api-evangelist/interface-research/main/schema/api-commons.yml#/$defs/Plans provider: Gandi providerId: gandi created: '2026-05-04' # Provenance stamped 2026-08-11: this artifact was written by the API Evangelist # bulk sweep dated 2026-05-04, not harvested from the provider. See roadmap#35. method: generated modified: '2026-05-05' reconciled: true tags: - Domains - DNS - Hosting - Email - Registrar description: Gandi prices its services on a per-resource basis — domain names by TLD, hosting and email by mailbox. The Public API (api.gandi.net) is free for account holders; charges apply only to resources purchased through it (domain registrations, mailbox plans, certificates, etc.). Free SSL/TLS certificates and DNS are bundled with each registered domain. sources: - https://www.gandi.net/en/pricing - https://www.gandi.net/en-US/domain - https://api.gandi.net/docs/ plans: - id: gandi-domain-registration name: Domain Registration type: usage-based description: Domain registration / renewal / transfer; per-TLD pricing. Free SSL, DNSSEC, and unlimited mail-forwarding aliases included with each registered domain. entries: - label: .com registration name: domain_com_register type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '11.00' userMultiplied: false - label: .com renewal name: domain_com_renew type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '38.38' userMultiplied: false - label: .com transfer name: domain_com_transfer type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '11.00' userMultiplied: false - label: .net registration name: domain_net_register type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '12.99' userMultiplied: false - label: .net renewal name: domain_net_renew type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '39.98' userMultiplied: false - label: .net transfer name: domain_net_transfer type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '15.74' userMultiplied: false - label: .org registration name: domain_org_register type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '7.99' userMultiplied: false - label: .org renewal name: domain_org_renew type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '39.98' userMultiplied: false - label: .org transfer name: domain_org_transfer type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '14.20' userMultiplied: false - label: .fr registration name: domain_fr_register type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '8.00' userMultiplied: false - label: .fr renewal name: domain_fr_renew type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '31.98' userMultiplied: false - label: .fr transfer name: domain_fr_transfer type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '8.00' userMultiplied: false - label: .io registration name: domain_io_register type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '31.99' userMultiplied: false - label: .io renewal name: domain_io_renew type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '74.99' userMultiplied: false - label: .io transfer name: domain_io_transfer type: metered metric: domain-year limit: -1 timeFrame: year geo: global unit: 1 price: '54.00' userMultiplied: false - label: .eu registration name: domain_eu_register type: metered metric: domain-year limit: -1 timeFrame: year geo: EU unit: 1 price: '5.99' userMultiplied: false - label: .eu renewal name: domain_eu_renew type: metered metric: domain-year limit: -1 timeFrame: year geo: EU unit: 1 price: '39.98' userMultiplied: false - label: .eu transfer name: domain_eu_transfer type: metered metric: domain-year limit: -1 timeFrame: year geo: EU unit: 1 price: '16.61' userMultiplied: false elements: - name: Free SSL/TLS certificate (first year) - name: Free DNS with DNSSEC - name: Unlimited email aliases / forwarding - name: Promotional pricing on first-year on select TLDs - id: gandi-public-api name: Public API (LiveDNS / Domain / Billing) type: freemium description: Free programmatic access to Gandi services for any account holder. Charges apply only to billable actions performed through the API (domain purchases, mailbox plans, etc.). entries: - label: API access name: api_access type: flat metric: account limit: -1 timeFrame: month geo: global unit: 1 price: '0.00' userMultiplied: false elements: - name: LiveDNS API - name: Domain management API - name: Email API - name: Billing API - name: Personal Access Tokens maintainers: - FN: Kin Lane email: kin@apievangelist.com x-canonical: generated: '2026-10-08' vocabulary: all/0-working/economics/plans-canonical.yml models: - metered - subscription units: - object plans: - name: Domain Registration access: other model: metered model_how: stated units: - object periods: - year - name: Public API (LiveDNS / Domain / Billing) access: freemium model: subscription model_how: derived units: - object periods: - month