Ingramdomains.ingram.tech

Reference

.md

REST API

Base URL: https://domains.ingram.tech/api/v1

The authoritative reference is generated from the same schemas that validate every request, so it cannot drift from behaviour:

Authentication is Authorization: Bearer ingram_live_… (see Authentication); errors use the envelope and codes in Errors & idempotency; every mutation accepts Idempotency-Key.

Endpoint map

Method & pathAuthWhat it does
GET /check?q=…publicAvailability + retail price for a name or domain
GET /suggest?q=…publicRelated-name suggestions (names only)
GET /tldspublicRegister / renew / transfer / trade EUR prices per TLD
POST /accountspublicProgrammatic signup → user + workspace + token (optional prefund)
GET /domainsreadList the workspace portfolio, with each domain's cached registry snapshot (status, expiry, auto-renew, DNSSEC, nameservers, lock) and syncedAt
GET /domains/{name}readRegistry details: status, dates, nameservers, locks — plus renewal (next charge date, price, term state)
POST /domainswriteRegister — domain, duration, confirm_price, optional payment
POST /domains/{name}/renewwriteRenew — duration, confirm_price, optional payment
POST /domains/{name}/transferwriteTransfer in — auth_code, confirm_price, optional payment
DELETE /domains/{name}writeDelete / schedule release
PATCH /domains/{name}/settingswriteToggle auto_renew, registrar_lock, whois_privacy, dnssec (auto-renew is billed; see Conventions)
POST /domains/{name}/auth-codewriteEmail the EPP/auth code to the registrant
GET /domains/{name}/zonereadList DNS records (hosted zones only)
POST /domains/{name}/zonewriteCreate a DNS record
DELETE /domains/{name}/zonewriteDelete a DNS record (by subdomain+type+value)

Conventions

  • Prices are EUR retail; spending requires confirm_price (Payments).
  • Auto-renew is billed from your wallet about 30 days before expiry, at the renewal price. Unpaid by 10 days before expiry, the domain is left to expire. Turning it off before the charge costs nothing; after the charge the renewal stands, and PATCH …/settings returns renewed_until. A renewal of a term already being bought answers 409 renewal_in_progress.
  • GET /domains/{name} tells you when you'll be charged. Its renewal object carries auto_renew, expires_at, billed_until (what you've paid for), next_charge_at, price, and term — the current renewal's state with reason and, when the wallet is short, shortfall in EUR. See Payments.
  • Registry mutations are async — a success with registry status Pending completes at the registry moments-to-days later, depending on the operation.
  • Names are lowercased; IDN domains use their punycode (xn--…) form.
  • Responses are application/json; list endpoints send Cache-Control: private, no-store.