{"openapi":"3.1.0","info":{"title":"name.com (BYOK) API","version":"0.1.0","description":"name.com (BYOK) lets an AI assistant read your own name.com data through the name.com API with a key you supply (name.com account username). Read-only: 11 tools (get_account_balance, list_domains, get_domain, list_dns_records, list_dnssec, list_email_forwardings, list_url_forwardings, list_orders, list_transfers, get_tld_pricing, get_domain_pricing). The BYOK key travels with each request, is...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-namecom.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-namecom/docs"},"termsOfService":"https://connectorbay.com/byok-namecom/terms"},"servers":[{"url":"https://byok-namecom.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-namecom/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_account_balance":{"post":{"operationId":"get_account_balance","summary":"Show the account credit balance on name.com. Use for \"How much credit do I have on name.com\".","description":"Show the account credit balance on name.com. Use for \"How much credit do I have on name.com\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_account_balanceArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_domains":{"post":{"operationId":"list_domains","summary":"List domains in your account with creation and expiry dates, auto-renew, lock and privacy flags, nameservers and optiona","description":"List domains in your account with creation and expiry dates, auto-renew, lock and privacy flags, nameservers and optional renewal price. Contact details are left out. Use for \"Which of my name.com domains expire soonest\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sort":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Property to sort by, for example expireDate or domainName.","title":"Sort"},"dir":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction.","title":"Dir"},"domain_name":{"anyOf":[{"maxLength":253,"type":"string"},{"type":"null"}],"default":null,"description":"Exact domain name, or a wildcard starting with '*'.","title":"Domain Name"},"tld":{"anyOf":[{"maxLength":30,"type":"string"},{"type":"null"}],"default":null,"description":"Only domains under this TLD, without the dot (for example com).","title":"Tld"},"locked":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True for locked domains only, false for unlocked only.","title":"Locked"},"include_renewal_price":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to include each domain's renewal price.","title":"Include Renewal Price"},"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_domainsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_domain":{"post":{"operationId":"get_domain","summary":"Get one domain's dates, lock state, auto-renew, privacy flag and nameservers. Contact details are left out. Use for \"Whe","description":"Get one domain's dates, lock state, auto-renew, privacy flag and nameservers. Contact details are left out. Use for \"When does example.com expire at name.com and is it locked\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain_name":{"description":"Domain name registered at name.com, for example 'example.com'.","maxLength":253,"title":"Domain Name","type":"string"}},"required":["domain_name"],"title":"get_domainArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_dns_records":{"post":{"operationId":"list_dns_records","summary":"List the DNS records name.com hosts for a domain: host, type, answer, TTL and priority. Use for \"What DNS records does e","description":"List the DNS records name.com hosts for a domain: host, type, answer, TTL and priority. Use for \"What DNS records does example.com have at name.com\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain_name":{"description":"Domain name registered at name.com, for example 'example.com'.","maxLength":253,"title":"Domain Name","type":"string"},"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"required":["domain_name"],"title":"list_dns_recordsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_dnssec":{"post":{"operationId":"list_dnssec","summary":"List the DNSSEC DS records set for a domain: key tag, algorithm, digest type and digest. Use for \"Does example.com have ","description":"List the DNSSEC DS records set for a domain: key tag, algorithm, digest type and digest. Use for \"Does example.com have DNSSEC set at name.com\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain_name":{"description":"Domain name registered at name.com, for example 'example.com'.","maxLength":253,"title":"Domain Name","type":"string"}},"required":["domain_name"],"title":"list_dnssecArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_email_forwardings":{"post":{"operationId":"list_email_forwardings","summary":"List email forwarding rules of a domain: the mailbox name and where mail is forwarded. Use for \"Which email addresses on","description":"List email forwarding rules of a domain: the mailbox name and where mail is forwarded. Use for \"Which email addresses on example.com forward elsewhere\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain_name":{"description":"Domain name registered at name.com, for example 'example.com'.","maxLength":253,"title":"Domain Name","type":"string"},"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"required":["domain_name"],"title":"list_email_forwardingsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_url_forwardings":{"post":{"operationId":"list_url_forwardings","summary":"List URL forwarding (redirect) entries of a domain: host, destination and type (masked, redirect or 302). Use for \"Which","description":"List URL forwarding (redirect) entries of a domain: host, destination and type (masked, redirect or 302). Use for \"Which hostnames of example.com redirect to another URL\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain_name":{"description":"Domain name registered at name.com, for example 'example.com'.","maxLength":253,"title":"Domain Name","type":"string"},"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"required":["domain_name"],"title":"list_url_forwardingsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_orders":{"post":{"operationId":"list_orders","summary":"List past orders (registrations, renewals, transfers) with date, status, amounts and items. Use for \"What did I buy on n","description":"List past orders (registrations, renewals, transfers) with date, status, amounts and items. Use for \"What did I buy on name.com this year\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"order_status":{"anyOf":[{"enum":["success","failed","initialized","review","started"],"type":"string"},{"type":"null"}],"default":null,"description":"Only orders with this status.","title":"Order Status"},"type":{"anyOf":[{"maxLength":30,"type":"string"},{"type":"null"}],"default":null,"description":"Only orders containing this item type, for example registration, renewal or transfer.","title":"Type"},"domain_name":{"anyOf":[{"maxLength":253,"type":"string"},{"type":"null"}],"default":null,"description":"Only orders for this domain name (or a wildcard starting with '*').","title":"Domain Name"},"dir":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction by date.","title":"Dir"},"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_ordersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_transfers":{"post":{"operationId":"list_transfers","summary":"List domain transfer requests into name.com with the domain, contact email and status. Use for \"What is the status of my","description":"List domain transfer requests into name.com with the domain, contact email and status. Use for \"What is the status of my domain transfers to name.com\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"list_transfersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_tld_pricing":{"post":{"operationId":"get_tld_pricing","summary":"List name.com registration, renewal, restoration and transfer prices per TLD in US dollars (all TLDs page by page, or on","description":"List name.com registration, renewal, restoration and transfer prices per TLD in US dollars (all TLDs page by page, or one TLD). Use for \"How much does a .dev or .io domain cost at name.com\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tld":{"anyOf":[{"maxLength":30,"type":"string"},{"type":"null"}],"default":null,"description":"Only this TLD, without the dot (for example 'dev'); leave out to list all TLDs page by page.","title":"Tld"},"duration":{"anyOf":[{"maximum":10,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Registration length in years (1 to 10).","title":"Duration"},"per_page":{"anyOf":[{"maximum":1000,"minimum":1,"type":"integer"},{"type":"null"}],"default":100,"description":"How many results per page (1 to 1000).","title":"Per Page"},"page":{"anyOf":[{"maximum":100000,"minimum":1,"type":"integer"},{"type":"null"}],"default":1,"description":"Page number, starting at 1.","title":"Page"}},"title":"get_tld_pricingArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_domain_pricing":{"post":{"operationId":"get_domain_pricing","summary":"Get the registration, renewal and transfer price of one specific domain (including premium domains) for a term in years.","description":"Get the registration, renewal and transfer price of one specific domain (including premium domains) for a term in years. Does not buy anything. Use for \"How much would example.com cost to renew for 2 years at name.com\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain_name":{"description":"Domain name registered at name.com, for example 'example.com'.","maxLength":253,"title":"Domain Name","type":"string"},"years":{"anyOf":[{"maximum":10,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Term in years (defaults to the TLD's minimum term).","title":"Years"}},"required":["domain_name"],"title":"get_domain_pricingArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}