Skip to main content
February 25, 2026
AddedChanged
Core 1.20.0

Added

  • Domain object: Added locks array to the Domain response. Lists the lock types currently applied to the domain (e.g. RegistrarLock, ClientHold, ExpirationClientHold), so you can see whether and how a domain is locked. Returned by List Domains (GET /core/v1/domains) and Get Domain (GET /core/v1/domains/{domainName}). When no locks are applied, locks is an empty array.
  • URL Forwarding by ID: New endpoints so you can list, get, update, and delete URL Forwarding records by server-assigned ID. Create still uses POST /core/v1/domains/{domainName}/url/forwarding.
    • List: GET /core/v1/urlforwarding/{domainName} — returns all URL Forwarding entries for the domain. Each entry includes an id for use with the by-ID endpoints.
    • Get: GET /core/v1/urlforwarding/{domainName}/{id} — fetch a single record by ID.
    • Update: PATCH /core/v1/urlforwarding/{domainName}/{id} — update a single record by ID.
    • Delete: DELETE /core/v1/urlforwarding/{domainName}/{id} — delete a single record by ID.
  • URL Forwarding response: Added id (integer) to the URL Forwarding entry response. Returned in list and single-record responses so you can use the by-ID endpoints.
  • Error Responses: Added 502 (Bad Gateway) and 504 (Gateway Timeout) response codes to all endpoints.
    • Retry Policy: 502 errors are safe for immediate exponential backoff, while 504 errors should be preceded by a status /core/v1/hello check to avoid duplicate operations.

Changed

  • URL Forwarding (host-based): The following operations are now deprecated: List (GET /core/v1/domains/{domainName}/url/forwarding), Get (GET /core/v1/domains/{domainName}/url/forwarding/{host}), Update (PUT /core/v1/domains/{domainName}/url/forwarding/{host}), Delete (DELETE /core/v1/domains/{domainName}/url/forwarding/{host}). Create (POST /core/v1/domains/{domainName}/url/forwarding) is unchanged and not deprecated.
February 17, 2026
Added
Core 1.19.0

Added

  • Added new webhook: domain.transfer.internal_in which fires when a name.com domain is transferred to a subscriber’s account.
  • Check Availability: Added optional string response property reason to the Search result object. When present, it provides additional context (e.g. why a domain is not purchasable).
February 11, 2026
Fixed
Core 1.18.1

Fixed

  • Added missing error codes 401 403 405 429 and 500 response codes to all API response objects.
February 10, 2026
Added
Core 1.18.0

Added

  • Create Domain: Added optional promoCode parameter to POST /core/v1/domains endpoint. Valid promotional codes can be applied to domain purchases to receive discounts. Only one promo code can be applied per request.
January 27, 2026
AddedChangedFixed
Core 1.17.0

Added

Contact Verification:
  • Added new webhook: contact.verification.status_change that fires when a contact verification status changes.
  • Added POST /core/v1/contacts/verify/{verificationId}:resend endpoint to resend the verification email for a pending verification record.

Changed

  • Blocked TLD Filtering: API endpoints now reject or filter out all .in TLDs (including co.in, firm.in, gen.in, ind.in, net.in, org.in) as these are not supported in the Reseller API. API requests using unsupported TLDs will return 422 Unprocessable Entity errors or be excluded from results.

Fixed

  • Requirements: Both original and V2 Requirements endpoints now return 422 Unprocessable Entity when blocked or unsupported tlds are requested instead of 500 Internal Server Error.
January 21, 2026
Changed
Core 1.16.2

Changed

  • No functional changes. Schema updates to ensure no broken URLs between docs pages due to doumentation restructuring.
January 20, 2026
Changed
Core 1.16.1

Fixed

  • Transfer-ins with a rejected status can now be cancelled.

Changed

  • Transfer Status: Clarified that failed and rejected statuses will not be retried. Improved transfer status information for endpoints & webhooks.
January 20, 2026
Added
Core 1.16.0

Added

  • Domain Info v2 API: New GET /core/v1/domaininfo/requirementsV2/{tld} endpoint that returns TLD registration requirements in JSON Schema Draft-07 format.
    • Automatic Form Generation: The JSON Schema Draft-07 format enables direct integration with form generation libraries (e.g., react-jsonschema-form, jsonforms, Form.io), allowing developers to automatically generate dynamic registration forms without manual schema parsing or custom form logic.
    • Conditional Validation: The schema uses if/then/else structures to express complex conditional requirements (e.g., “if entity type is X, then require field Y”), making it easier to understand and implement TLD-specific registration rules that vary based on user selections.
    • Standardized Validation: JSON Schema Draft-07 is a widely-supported standard, enabling developers to leverage existing validation libraries and tooling instead of building custom validation logic for each TLD’s unique requirements.
    • Structured Data: The schema clearly separates TLD information (tldInfo), contact requirements (contacts), and TLD-specific fields (tldRequirements), providing a consistent structure that simplifies form rendering and data collection workflows.
January 16, 2026
Fixed
Core 1.15.2

Fixed

Get Order The Get Order API was incorrectly returning the response object wrapped in an extraneous order object. This has been fixed, and the response now matches the specification.
January 13, 2026
AddedFixed
Core 1.15.0

Added

  • Refunds Endpoint: New POST /core/v1/refund endpoint to delete eligible domains and privacy products during the Add Grace Period (AGP) and automatically issue refunds for the associated order items.
    • Accepts orderId and orderItemIds array in the request body
    • Supports registration and whois_privacy product types only
    • Includes idempotency support via X-Idempotency-Key header for safe request retries
    • Returns detailed refund results including individual item status and total refund amount
    • Refunds are issued to the original payment method on file, with fallback to account credit
    • Access Restriction: This endpoint is only available to select approved large API resellers. Contact name.com support to request access.
  • OrderItem isRefundable Property: New boolean field on OrderItem indicating whether the item is currently eligible for refund through the Refunds endpoint based on name.com’s refund rules.
  • List Orders Endpoint: Updated request has new optional filters to narrow response by domainName, tld, createDate, type and orderStatus.

Fixed

  • Purchase Privacy: Now returns 409 Conflict when privacy protection already exists on a domain instead of 500 Internal Server Error.
December 11, 2025
AddedChanged
Core 1.14.0

Added

  • Domain Transfer Out Status Change Webhook: New domain.transfer_out.status_change webhook that fires when a domain transfer out from name.com to another registrar has completed and the domain has been removed from the account.

Changed

  • Domain Transfer Status Change Webhook: Clarified that domain.transfer.status_change represents transfer IN to name.com (where name.com is the gaining registrar), and updated webhook descriptions to reflect this.
November 25, 2025
AddedChangedFixed
Core 1.13.0

Added

  • TLD Pricing Response Enhancement: The TLD Price List endpoint now includes retail pricing information in addition to account-level pricing, which applies to registration, renewal, domain restoration, and transfer purchase types. Each pricing entry now provides three price tiers:
    • Account-level price (includes account discounts)
    • Retail price (includes rebates/promotions/sales, but no account discounts)
    • Original/MSRP price (before any discounts)

Changed

  • Contact Schema Validation: Contact schemas have been refactored to separate validation requirements between request and response operations:
    • GET Operations (Responses): The Contact and RegistrantContact schemas used in API responses now allow nullable fields to accommodate legacy data that may contain null or empty values. This ensures GET operations can successfully return domains with legacy contact information without validation errors.
    • POST/PUT Operations (Requests): The ContactRequest and RegistrantContactRequest schemas used for creating and updating contacts enforce all validation requirements including:
      • Required fields (firstName, lastName, address1, city, state, zip, country, email, phone)
      • Minimum length constraints (minLength: 1)
      • Format validation (email format, phone/fax E.164 pattern, country code pattern)
    • This separation ensures that while GET operations can handle legacy data gracefully, all contact creation and update operations continue to enforce proper data validation and formatting requirements.

Fixed

  • Get Domain Pricing: Fixed validation order in getPricingForDomain endpoint to check TLD support before year validation. Unsupported TLDs now return 422 Unprocessable Entity with the message “TLD not supported” instead of 400 Bad Request with a misleading “Invalid value for years for this domain” message.
  • Create Domain: Added TLD privacy support check before adding WhoIs Privacy to orders. Privacy is only added when the TLD supports it, preventing failed order items for unsupported TLDs.
  • Purchase Privacy: Added TLD privacy support validation. Returns 422 Unprocessable Entity with message “TLD does not support WhoIs Privacy” when attempting to purchase privacy for unsupported TLDs.
November 21, 2025
Changed
Core 1.12.2

Changed

  • Cancel Transfer endpoint now returns a 409 conflict if an existing transfer is in a state that cannot be canceled.
November 20, 2025
Fixed
Core 1.12.1

Fixed

  • A handful of new contact schemas were missing updates to separate Request vs Response. This has been fixed.
November 18, 2025
AddedFixed
Core 1.12.0

Added

  • Create Transfer: Added 504 Gateway Timeout response when domain status cannot be retrieved due to blocked-hostname.
  • Create Transfer: Added optional warnings object to CreateTransferResponse with message and statuses to surface non-blocking registry status advisories.
  • Domain Lock Status Change Webhook: Added ExpirationClientHold to the lockType enum. This lock type is applied to expired domains of configured API Reseller accounts.

Fixed

  • Create Transfer: Fixed issue where a 400 Bad Request was returned for Insufficient Funds instead of the correct 402 Payment Required status.
  • Get Domain: Fixed intermittent 500 Server Error caused by legacy contact data by updating API definitions to allow legacy contacts to be returned while still enforcing correct formatting in requests.
November 6, 2025
AddedChanged
Core 1.11.0

Added

  • Domain Claims Period Support: Register domains during trademark claims period.
  • New endpoint: GET /core/v1/domaininfo/claims/{domain} returns claim identifiers and validity dates.

Changed

  • TLD Requirements: GET /core/v1/domaininfo/requirements/{tld} now returns claimsCheckRequired.
  • Domain Create: POST /core/v1/domains now accepts optional claims object (claimId, notBefore, notAfter) when required by the TLD.
October 28, 2025
AddedChanged
Core 1.10.0

Added

  • List Domains: New includeRenewalPrice query parameter.
    • true (default) includes renewal pricing in responses.
    • false omits renewal pricing for better performance.

Changed

  • renewalPrice field is optional when includeRenewalPrice=false.
  • Default pagination for List Domains changed from 1000 to 250.
  • Removed access restriction on GET /core/v1/contacts/unverified (now available to all reseller accounts).
  • .at TLD requirement now enforces data acknowledgement.
October 27, 2025
Fixed
Core 1.9.3

Fixed

  • Create Transfer: Block transfers for domains registered less than 60 days; returns 409 Conflict with clear message and details.
October 15, 2025
Changed
Core 1.9.1

Changed

  • Webhook documentation: standardized response code capitalization from 4xx/5xx to 4XX/5XX.
October 14, 2025
AddedFixed
Core 1.9.0

Added

  • Get Specific TLD Requirements: Added registryOperator parameter.
  • Webhook HMAC Header Documentation: X-NAMECOM-SIGNATURE now shown on all webhook endpoints.

Fixed

  • Request validation now enforces required fields as described in the API documentation.
October 10, 2025
Fixed
Core 1.8.2

Fixed

  • Create Domain: Now correctly honors privacyEnabled=false instead of overriding with account default when provided.
October 7, 2025
Fixed
Core 1.8.1

Fixed

  • Get Specific TLD Requirements: Clarified that punycode is expected (not URL-encoded params).
October 2, 2025
AddedFixed
Core 1.8.0

Added

  • Contact model: Added verification status fields.
  • Create Domain: Returns 451 Unavailable for Legal Reasons where restricted by law.
  • Create Domain: Returns detailed validation errors for contact creation failures.
  • Webhooks: All webhooks now send X-NAMECOM-SIGNATURE to verify authenticity.

Fixed

  • Contact Verification List: Corrected createDate and verifyBy values for some contacts.
September 25, 2025
Added
Core 1.7.0

Added

  • New webhook: domain.lock.status_change with registryStatuses in payload.
  • New contact verification APIs (account-restricted):
    • List Unverified Contacts
    • Verify Contact
September 24, 2025
Changed
Core 1.6.0

Changed

  • TLD Pricing: Clarified that null pricing indicates unavailability for specific TLD/duration combinations.
  • DNS Record Update: Duplicate record DB errors now return 409 Conflict instead of a generic server error.
September 23, 2025
Added
Core 1.5.2

Added

  • Domain Info: New capabilities returned per TLD:
    • supportsPrivacy
    • requiresPreDelegation
September 23, 2025
Added
Core 1.5.1

Added

  • Get Specific TLD Requirements: Added hsts, minDomainLength, minIdnDomainLength.
  • Subscribe to Notifications: Documented 409 Conflict response when already subscribed.
  • Zone Check API: Documented existing error responses.
September 15, 2025
Added
Core 1.5.0

Added

  • Download Premium Domain Lists: New account-restricted API endpoint to download premium domain lists.
September 12, 2025
AddedChangedFixed
Core 1.4.1

Added

  • Transfers: GET /transfers and GET /transfers/{id} now include a full list of possible transfer statuses.

Changed

  • Transfers: Status field standardized to snake_case; aligned with Domain Transfer Status Change webhook.

Fixed

  • Create Domain: Now honors account setting for Automatic Advanced Security for new purchases.
September 10, 2025
Changed
Core 1.4.0

Changed

  • Domain Get Pricing: When a pricing category is not available, purchasePrice, renewalPrice, and transferPrice return null instead of a 422.
September 8, 2025
FixedChanged
Core 1.3.2

Fixed

  • Create Transfer: Supports multiple concurrent transfer requests; 429 now used solely for rate limiting scenarios.
  • Pricing error handling: Added 422 Unprocessable Entity for temporary pricing unavailability across:
    • Domain Create
    • Domain Renew
    • Domain Get Pricing
  • Domain Get Pricing: Added missing 400 Bad Request documentation for invalid parameters/malformed requests.

Changed

  • Error Response Consistency: More descriptive pricing-related error details across domain endpoints.
August 25, 2025
Fixed
Core 1.3.1

Fixed

  • createDomain: Returns 400 Bad Request (not 403 Forbidden) for missing/invalid registration requirements.
August 7, 2025
AddedFixedChanged
Core 1.3.0

Added

  • Zone Check API: Fast availability checks via cached zone file data.
  • Idempotency: Support for X-Idempotency-Key on Create Domain and Purchase Privacy.
    • Replayed requests respond with header X-Idempotent-Replay: 1.
  • Domain Create docs: Improved examples including IDN domain creation.

Fixed

  • TLD Pricing API: Ensured required fields are always present in responses.
  • Check Availability: Returns 422 Unprocessable Entity when all domains have unsupported TLDs (replacing malformed dual-object JSON).

Changed

  • Check Availability: Implementation optimized for speed; no behavioral changes.
  • Organization field docs updated due to ICANN policy changes.
  • 429 Rate Limited response in OpenAPI now indicates message is optional.
July 25, 2025
Changed
Core 1.2.2

Changed

  • TLD Pricing API:
    • Enforced duration parameter validation.
    • Filter invalid/unsupported tlds; if list becomes empty after filtering, return 400 Bad Request.
July 23, 2025
Fixed
Core 1.2.1

Fixed

  • Domain Info: Return empty objects {} instead of empty arrays [] for relevant parameters.
July 18, 2025
AddedChanged
Core 1.2.0

Added

  • TLD Pricing API: View general price list with account-level pricing.

Changed

  • Response Schemas: Clarified which parameters are required and always present in responses.
July 14, 2025
AddedChanged
Core 1.1.0

Added

  • Domain Info API: Returns general TLD info and any additional registration requirements; formatted for dynamic form generation.

Changed

  • OpenAPI: Adjusted several descriptions to use v3.0-compatible structures (no functional changes).
  • Webhook docs: DomainTransferStatusChange updated with list of triggering statuses.
June 24, 2025
Fixed
Core 1.0.4

Fixed

  • List Domains: Optional filters no longer cause 500 Internal Server Error or incorrect result sets; filters are applied reliably.
June 17, 2025
Fixed
Core 1.0.3

Fixed

  • Create Domain: Missing required contact phone number returns 400 Bad Request instead of 500.
  • Validation Enforcement:
    • Contact phone and fax fields strictly validate E.164 format (^\+[1-9]\d{7,14}$); examples updated.
    • All email fields validated per RFC 822 addr-spec (with common practical exceptions).
    • Appropriate enums added; empty strings rejected for fields like first_name.
June 10, 2025
Fixed
Core 1.0.2

Fixed

  • Authentication failures return 401 Unauthorized instead of 500.
  • Pagination: perPage=0 now defaults to perPage=1000 instead of returning 500.
June 4, 2025
Fixed
Core 1.0.1

Fixed

  • Create Transfer: Intermittent 500 replaced with 409 Conflict when a transfer is already in process.
    • Message: A transfer is already processing for this domain.
May 12, 2025
ChangedRemovedAdded
v4 → Core 1.0.0
name.com is launching a new Core API — a modern, RESTful API for managing domains, DNS records, and related services. It is the successor to the legacy v4 API.

Changed

  • Documentation format upgraded to OpenAPI 3.1 for better tooling and interactivity.
  • Internal implementation rebuilt for faster iteration, better error handling, and consistent endpoint behavior.
  • Error messaging:
    • Authentication errors now return 401 Unauthorized (previously conflated with 403 Forbidden which is now reserved for actual permission issues).
    • Insufficient account credit returns 402 Payment Required instead of 500.
  • Consistent default values in responses (e.g., false, 0, "") instead of omitting them.
  • Correct Content-Type headers for JSON responses (application/json).
  • Content-Type: application/json strictly required for all PUT, POST, and PATCH requests (including body-less POST actions due to server behavior).

Removed

  • SearchStream endpoint (may return in a future version with a revised implementation).

Added

  • Domain Update endpoint for autorenew, WHOIS Privacy, and locking. See DomainUpdate docs.