> ## Documentation Index
> Fetch the complete documentation index at: https://apidocs.atom.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Transfer a domain in

> Initiate a domain transfer-in to Atom Registrar. Validates eligibility (domain not already owned, no transfer in progress, correct auth code, no transfer lock, not registered within 60 days), resolves pricing, processes payment via account balance or saved card, then initiates the transfer with the upstream registrar. A confirmation email is sent when the transfer is accepted.



## OpenAPI

````yaml POST /registrar/v1/domains/transfer
openapi: 3.0.0
info:
  title: Atom Registrar API
  version: 1.0.0
  description: >-
    REST API for domain registration, DNS management, and domain operations.
    Authentication via Bearer token in Authorization header.
servers:
  - url: https://www.atom.com/api
    description: Production server
  - url: https://dev.atom.com/api
    description: Development server
security:
  - BearerAuth: []
paths:
  /registrar/v1/domains/transfer:
    post:
      tags:
        - Registrar
      summary: Transfer a domain in
      description: >-
        Initiate a domain transfer-in to Atom Registrar. Validates eligibility
        (domain not already owned, no transfer in progress, correct auth code,
        no transfer lock, not registered within 60 days), resolves pricing,
        processes payment via account balance or saved card, then initiates the
        transfer with the upstream registrar. A confirmation email is sent when
        the transfer is accepted.
      operationId: transferDomain
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DomainTransferRequest'
      responses:
        '201':
          description: Transfer initiated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainTransferResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '402':
          description: Payment failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: Domain already in Atom Registrar or transfer already in progress
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: >-
            Transfer not eligible (locked, invalid authcode, status, or 60-day
            restriction)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    DomainTransferRequest:
      type: object
      required:
        - domain_name
        - authcode
      properties:
        domain_name:
          type: string
          example: example.com
          description: The domain name to transfer in
        authcode:
          type: string
          example: Ab1!Cd2@Ef3#
          description: >-
            Auth/EPP code from the current registrar. Required to authorize the
            transfer.
    DomainTransferResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        message:
          type: string
          example: Domain transfer initiated successfully
        data:
          type: object
          properties:
            domain:
              type: string
              example: example.com
            status:
              type: string
              example: Transfer Initiated
            payment_method:
              type: string
              enum:
                - account_balance
                - saved_card
              example: account_balance
            cart_id:
              type: integer
              example: 12345
            price_breakdown:
              type: object
              properties:
                unit_price:
                  type: number
                  format: float
                  example: 9.99
                icann_fee:
                  type: number
                  format: float
                  example: 0.18
                is_premium:
                  type: boolean
                  example: false
                total:
                  type: number
                  format: float
                  example: 10.17
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          example: Bad Request
        message:
          type: string
          example: Invalid input provided
  responses:
    BadRequest:
      description: Bad request - invalid parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    UnauthorizedError:
      description: Authentication failed - invalid or revoked API token
      content:
        application/json:
          schema:
            type: object
            properties:
              success:
                type: boolean
                example: false
              error:
                type: string
                example: Unauthorized
              message:
                type: string
                example: >-
                  Invalid registrar API token or access has been revoked. Please
                  request registrar API access from your dashboard.
    InternalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Registrar API Bearer token. Obtain from dashboard at
        /dashboard/seller/api-access after requesting Registrar API access.

````