Skip to content

omnidns/gandi API reference

Floor
Provider · Omnidns
Version
1.x
Conformance suite
not wired
Verified for real
Verified in part
Licence
MIT
composer require omnidns/gandi:1.x-dev

Read from the package's own PHP files at the commit f35aa1b48045: its namespaces, classes, interfaces and enums, their public constants, properties and methods with their PHPDoc, and the options its factories take. Nothing of it is run.

Omnidns\Gandi

  • GandiFactory class

    Gandi, from its options:

    4 options · 1 method

  • GandiProvider class

    Gandi's API v5: /domain for availability, orders, the domains and their name servers; /livedns for the records. LiveDNS keeps a name and a type's values together (an rrset) under one TTL: a record here is one value of it, known by its name, type and content (Gandi gives no id); adding one extends its rrset, deleting the last one removes it.

    15 methods · 1 constant

Omnidns\Gandi

GandiFactory class

final class GandiFactory extends ProviderFactory GandiFactory.php:20

Gandi, from its options:

token a personal access token (required), made in Gandi's admin with the rights it needs: "See and renew domain names", "Manage domain name technical configurations" (LiveDNS), "Register domain names" for a registration sharing_id the organization billed and owning, when it is not the token's own endpoint https://api.gandi.net/v5 (Gandi's sandbox: https://api.sandbox.gandi.net/v5) dry_run true: a registration or a renewal is checked by Gandi and not made (Dry-Run: 1)

Options

OptionDefault
sharing_id''
endpointGandiProvider::ENDPOINT
dry_runfalse
tokenrequired

GandiFactory::__construct()

public function __construct(readonly HttpClientInterface $http)

GandiProvider class

final class GandiProvider implements AvailabilityInterface, RegistrarInterface, DomainsInterface, NameserversInterface, DnsInterface GandiProvider.php:30

Gandi's API v5: /domain for availability, orders, the domains and their name servers; /livedns for the records. LiveDNS keeps a name and a type's values together (an rrset) under one TTL: a record here is one value of it, known by its name, type and content (Gandi gives no id); adding one extends its rrset, deleting the last one removes it.

const ENDPOINT = 'https://api.gandi.net/v5'

GandiProvider::__construct()

public function __construct(readonly HttpClientInterface $http, readonly string $token, readonly ?string $sharingId = null, readonly string $endpoint = self::ENDPOINT, readonly bool $dryRun = false)

GandiProvider::getName()

public function getName(): string

GandiProvider::getTitle()

public function getTitle(): string

GandiProvider::capabilities()

public function capabilities(): Capabilities

GandiProvider::check()

public function check(string $domain): Availability

GandiProvider::register()

public function register(string $domain, int $years = 1, ?Contact $owner = null): Order

GandiProvider::renew()

public function renew(string $domain, int $years = 1): Order

GandiProvider::domains()

public function domains(): array

GandiProvider::domain()

public function domain(string $domain): DomainInfo

GandiProvider::nameservers()

public function nameservers(string $domain): array

GandiProvider::setNameservers()

public function setNameservers(string $domain, array $nameservers): void

GandiProvider::records()

public function records(string $zone, ?string $type = null, ?string $name = null): array

GandiProvider::add()

public function add(string $zone, Record $record): Record

GandiProvider::update()

public function update(string $zone, Record $current, Record $new): Record

GandiProvider::delete()

public function delete(string $zone, Record $record): void