at.marque.partner.checkAvailability
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Check up to 500 domains at once. Call it proxied through the user's PDS (atproto-proxy: did:web:marque.at#marque_registrar) with an at.marque.partnerApi-scoped token. Each result carries its own error field, so a single bad domain does not fail the batch. Prices are in whole US dollars and are indicative; the binding amount is set when createCheckout builds the Stripe session. Premium domains are flagged with isPremium and priced via premiumPrice.",
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"results": {
"description": "One result per domain, in request order; blank entries are skipped.",
"items": {
"ref": "#result",
"type": "ref"
},
"type": "array"
}
},
"required": [
"results"
],
"type": "object"
}
},
"parameters": {
"properties": {
"domains": {
"description": "Fully qualified domain names to check, e.g. example.com.",
"items": {
"maxLength": 253,
"type": "string"
},
"maxLength": 500,
"minLength": 1,
"type": "array"
}
},
"required": [
"domains"
],
"type": "params"
},
"type": "query"
},
"result": {
"properties": {
"available": {
"description": "Whether the domain can be registered now. True when status is free or premium.",
"type": "boolean"
},
"domain": {
"description": "The fully qualified domain name that was checked, lowercased.",
"maxLength": 253,
"type": "string"
},
"error": {
"description": "Per-domain failure reason when the domain could not be checked or priced, e.g. invalid format, unsupported TLD, or not available via the registrar. When set, the pricing fields are absent or zero.",
"type": "string"
},
"isPremium": {
"description": "Whether this is a premium domain, priced individually by the registry rather than at the standard TLD price.",
"type": "boolean"
},
"maxPeriod": {
"description": "Maximum registration period in years for this TLD.",
"type": "integer"
},
"minPeriod": {
"description": "Minimum registration period in years for this TLD.",
"type": "integer"
},
"premiumPrice": {
"description": "Premium registration price, in whole US dollars, when isPremium is true.",
"type": "integer"
},
"price": {
"description": "Registration price per year, in whole US dollars. Absent for unavailable or errored domains.",
"type": "integer"
},
"renewPrice": {
"description": "Renewal price per year, in whole US dollars.",
"type": "integer"
},
"status": {
"description": "Registry status of the domain: free (available), premium (available at a premium price), or active (already registered, not available). Absent when the domain could not be checked (see error).",
"knownValues": [
"free",
"premium",
"active"
],
"type": "string"
},
"transferAddsYear": {
"description": "Whether transferring this TLD adds a year of registration (and so is charged).",
"type": "boolean"
},
"transferPrice": {
"description": "Transfer price, in whole US dollars. 0 when transferring this TLD does not cost a registration period.",
"type": "integer"
},
"whoisPrivacyAllowed": {
"description": "Whether WHOIS privacy can be enabled for this TLD at registration.",
"type": "boolean"
}
},
"required": [
"domain",
"available"
],
"type": "object"
}
},
"description": "Check availability and pricing for a batch of domains, for partner integrations.",
"id": "at.marque.partner.checkAvailability",
"lexicon": 1
}
Metadata
- DID
-
did:plc:nckosudltxrtrjkt4zz4jy5y - CID
-
bafyreifb6vvgzcwjiwvmnuwdykicvbozig7dfwpjnptq6fvarch2nuih64 - Indexed At
- 2026-06-16 20:35 UTC
- AT-URI
-
at://did:plc:nckosudltxrtrjkt4zz4jy5y/com.atproto.lexicon.schema/at.marque.partner.checkAvailability
Version History (3 versions)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
List the TLDs Marque offers and their prices, for partner integrations.
-
at.marque.partner.createCheckout procedure
Create a hosted payment checkout to register one or more domains for the calling user.
-
Get the status of a partner checkout order and the resulting domain details.