---
title: Initiate Transfer
---

[Skip to content](#_top)

[API Reference](https://developers.cloudflare.com/api/go)

[Registrar](https://developers.cloudflare.com/api/go/resources/registrar)

[Transfer In](https://developers.cloudflare.com/api/go/resources/registrar/subresources/transfer_in)

Copy Markdown

Open in **Claude**Open in **ChatGPT**Open in **Cursor**

---

**Copy Markdown****View as Markdown**

# Initiate Transfer

client.Registrar.TransferIn.New(ctx, domainName, params) (\*[WorkflowStatus](<https://developers.cloudflare.com/api/go/resources/registrar#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)>), error)

POST/accounts/{account\_id}/registrar/registrations/{domain\_name}/transfer-in

Starts a domain transfer-in workflow. This is typically a billable operation — successful transfers charge the account’s default payment method, except for extensions with zero transfer pricing (e.g. UK extensions). All successful domain transfers are non-refundable.

### How transfers work

Domain transfers move a domain from another registrar to Cloudflare. Transfers typically take 1-10 days due to ICANN-mandated approval windows.

### Prerequisites

- The domain must already have a zone in the Cloudflare account (added through the dashboard or zone API).
- The zone must have DNSSec disabled.
- For billable transfers (i.e. extensions with non-zero transfer pricing), the account must have a billing profile with a valid default payment method. Set this up at `https://dash.cloudflare.com/{account_id}/billing/payment-info`.
- The domain must be unlocked at the current registrar.
- An authorization/EPP code from the current registrar is required, except for UK extensions — see Auth code below.

### Auth code

An authorization code (also called EPP code, transfer key, or auth-info code) is required for most extensions, with the exception of UK extensions. Obtain this from your current registrar’s control panel.

The auth code in the request body must be base64-encoded per RFC 4648 §4 (standard alphabet, no line breaks).

### Response behavior

Successful transfer initiation returns `202 Accepted`. Validation or initiation failures return the documented `4XX` responses. Poll `GET /accounts/{account_id}/registrar/registrations/{domain_name}/transfer-in-status` to track progress.

### Premium domains

Premium domain transfers are not currently supported by this API. Please use the [dashboard](https://dash.cloudflare.com/) for now.

### Billing

The account’s default payment method is charged upon successful transfer completion, unless the extension has zero transfer pricing (e.g. UK extensions). The transfer adds time to the domain’s existing expiration date (typically 1 year).

##### Security

<details>

<summary>API Token</summary>



The preferred authorization scheme for interacting with the Cloudflare API. <a href="https://developers.cloudflare.com/fundamentals/api/get-started/create-token/">Create a token</a>.

**Example:**<code>Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY</code>

</details>

<details>

<summary>API Email + API Key</summary>



The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

**Example:**<code>X-Auth-Email: user@example.com</code>

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

**Example:**<code>X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194</code>

</details>

##### ParametersExpand Collapse

domainName string

Provides a fully qualified domain name (FQDN), including the extension (e.g., `example.com`, `mybrand.app`). The domain name uniquely identifies a registration. Cloudflare permits only one registration per domain, making the domain name a natural idempotency key for registration requests.

[Link to this property](<#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20domain_name%20%3E%20(schema)>)

<details>

<summary>

params TransferInNewParams

</summary>

AccountID param.Field\[string]

Path param: Identifier.

maxLength32

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20account_id">Link to this property</a>

AuthCode param.Field\[string]Optional

Body param: The EPP/authorization code from your current registrar, base64-encoded per RFC 4648 §4. Obtain this from your current registrar’s control panel. Required for all extensions, except for UK.

formatbyte

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20auth_code">Link to this property</a>

AutoRenew param.Field\[bool]Optional

Body param: Enable or disable automatic renewal after transfer. Defaults to <code>false</code> if omitted.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20auto_renew">Link to this property</a>

ContactExtensions param.Field\[map\[string, unknown]]Optional

Body param: Registry-specific contact extension values for the registrant. <code>GET /accounts/{account_id}/registrar/extensions/{extension}</code> documents the required keys and allowed values for each extension in the <code>transfer_schema.properties.contact_extensions</code> object.

Examples include <code>.us</code> nexus fields, <code>.uk</code> registrant type fields, and <code>.ca</code> legal type fields. Include this object only when the extension’s transfer schema defines <code>contact_extensions</code>.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contact_extensions">Link to this property</a>

<details>

<summary>

Contacts param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/registrar/subresources/transfer_in/methods/create#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)">TransferInNewParamsContacts</a>]Optional

Body param: Provides contact data for the registration request.

The per-extension schema from <code>GET /accounts/{account_id}/registrar/extensions/{extension}</code> defines the accepted contact roles. Every currently supported extension requires only <code>contacts.registrant</code> from API callers. Callers may provide additional roles such as <code>technical</code>, <code>administrator</code>, and <code>billing</code> when the extension schema includes them. When a registry requires an omitted role, Cloudflare may derive that contact from <code>contacts.registrant</code>.

When the request omits either the entire <code>contacts</code> object or <code>contacts.registrant</code>, the system uses the account’s default address book entry as the registrant contact. The account owner must configure this default at <code>https://dash.cloudflare.com/{account_id}/domains/registrations</code>, where they can create or update the address book entry and accept the required agreement. Dashboard settings currently provide the only way to manage address book entries.

Without either a default address book entry or a registrant contact, the registration request fails validation.

</summary>

<details>

<summary>

Administrator TransferInNewParamsContactsAdministratorOptional

Optional administrator contact. Accepted only when the extension schema includes this role. When the registry requires an omitted contact, Cloudflare may derive it from <code>contacts.registrant</code>.

</summary>

Email string

Email address for the registrant. Used for domain-related communications from the registry, including ownership verification and renewal notices.

formatemail

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20email">Link to this property</a>

Phone string

Phone number in E.164 format: <code>+{country_code}.{number}</code> without spaces or dashes. Examples: <code>+1.5555555555</code> (US), <code>+44.2071234567</code> (UK), <code>+81.312345678</code> (Japan).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20phone">Link to this property</a>

<details>

<summary>

PostalInfo TransferInNewParamsContactsAdministratorPostalInfo

Postal/mailing information for the contact. The <code>name</code> field is the complete contact name in one string. Some registries require a complete personal name, including a family or last name where applicable, but this API does not accept separate first-name and last-name fields for registration contacts.

</summary>

<details>

<summary>

Address TransferInNewParamsContactsAdministratorPostalInfoAddress

Physical mailing address for the registrant contact.

</summary>

City string

City or locality name.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20city">Link to this property</a>

CountryCode string

Two-letter country code per ISO 3166-1 alpha-2 (e.g., <code>US</code>, <code>GB</code>, <code>CA</code>, <code>DE</code>).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20country_code">Link to this property</a>

PostalCode string

Postal or ZIP code.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20postal_code">Link to this property</a>

State string

State, province, or region. Use the standard abbreviation where applicable (e.g., <code>TX</code> for Texas, <code>ON</code> for Ontario).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20state">Link to this property</a>

Street string

Street address including building/suite number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20street">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20address">Link to this property</a>

Name string

Full legal name of the contact, including all required name components for an individual or authorized representative. Some registries require a complete personal name that includes a family or last name where applicable. Provide the complete name in this single field, for example <code>Ada Lovelace</code>; do not send separate first-name or last-name fields.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20name">Link to this property</a>

Organization stringOptional

Organization or company name. Optional for individual registrants.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info%20%3E%20(property)%20organization">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20postal_info">Link to this property</a>

Fax stringOptional

Fax number in E.164 format (e.g., <code>+1.5555555555</code>). Optional. Most registrations do not require a fax number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator%20%3E%20(property)%20fax">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20administrator">Link to this property</a>

<details>

<summary>

Billing TransferInNewParamsContactsBillingOptional

Optional billing contact. Accepted only when the extension schema includes this role. When the registry requires an omitted contact, Cloudflare may derive it from <code>contacts.registrant</code>.

</summary>

Email string

Email address for the registrant. Used for domain-related communications from the registry, including ownership verification and renewal notices.

formatemail

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20email">Link to this property</a>

Phone string

Phone number in E.164 format: <code>+{country_code}.{number}</code> without spaces or dashes. Examples: <code>+1.5555555555</code> (US), <code>+44.2071234567</code> (UK), <code>+81.312345678</code> (Japan).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20phone">Link to this property</a>

<details>

<summary>

PostalInfo TransferInNewParamsContactsBillingPostalInfo

Postal/mailing information for the contact. The <code>name</code> field is the complete contact name in one string. Some registries require a complete personal name, including a family or last name where applicable, but this API does not accept separate first-name and last-name fields for registration contacts.

</summary>

<details>

<summary>

Address TransferInNewParamsContactsBillingPostalInfoAddress

Physical mailing address for the registrant contact.

</summary>

City string

City or locality name.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20city">Link to this property</a>

CountryCode string

Two-letter country code per ISO 3166-1 alpha-2 (e.g., <code>US</code>, <code>GB</code>, <code>CA</code>, <code>DE</code>).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20country_code">Link to this property</a>

PostalCode string

Postal or ZIP code.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20postal_code">Link to this property</a>

State string

State, province, or region. Use the standard abbreviation where applicable (e.g., <code>TX</code> for Texas, <code>ON</code> for Ontario).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20state">Link to this property</a>

Street string

Street address including building/suite number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20street">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20address">Link to this property</a>

Name string

Full legal name of the contact, including all required name components for an individual or authorized representative. Some registries require a complete personal name that includes a family or last name where applicable. Provide the complete name in this single field, for example <code>Ada Lovelace</code>; do not send separate first-name or last-name fields.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20name">Link to this property</a>

Organization stringOptional

Organization or company name. Optional for individual registrants.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info%20%3E%20(property)%20organization">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20postal_info">Link to this property</a>

Fax stringOptional

Fax number in E.164 format (e.g., <code>+1.5555555555</code>). Optional. Most registrations do not require a fax number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing%20%3E%20(property)%20fax">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20billing">Link to this property</a>

<details>

<summary>

Registrant TransferInNewParamsContactsRegistrantOptional

Optional registrant contact. If omitted, the account’s default address book entry is used instead.

</summary>

Email string

Email address for the registrant. Used for domain-related communications from the registry, including ownership verification and renewal notices.

formatemail

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20email">Link to this property</a>

Phone string

Phone number in E.164 format: <code>+{country_code}.{number}</code> without spaces or dashes. Examples: <code>+1.5555555555</code> (US), <code>+44.2071234567</code> (UK), <code>+81.312345678</code> (Japan).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20phone">Link to this property</a>

<details>

<summary>

PostalInfo TransferInNewParamsContactsRegistrantPostalInfo

Postal/mailing information for the contact. The <code>name</code> field is the complete contact name in one string. Some registries require a complete personal name, including a family or last name where applicable, but this API does not accept separate first-name and last-name fields for registration contacts.

</summary>

<details>

<summary>

Address TransferInNewParamsContactsRegistrantPostalInfoAddress

Physical mailing address for the registrant contact.

</summary>

City string

City or locality name.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20city">Link to this property</a>

CountryCode string

Two-letter country code per ISO 3166-1 alpha-2 (e.g., <code>US</code>, <code>GB</code>, <code>CA</code>, <code>DE</code>).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20country_code">Link to this property</a>

PostalCode string

Postal or ZIP code.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20postal_code">Link to this property</a>

State string

State, province, or region. Use the standard abbreviation where applicable (e.g., <code>TX</code> for Texas, <code>ON</code> for Ontario).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20state">Link to this property</a>

Street string

Street address including building/suite number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20street">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20address">Link to this property</a>

Name string

Full legal name of the contact, including all required name components for an individual or authorized representative. Some registries require a complete personal name that includes a family or last name where applicable. Provide the complete name in this single field, for example <code>Ada Lovelace</code>; do not send separate first-name or last-name fields.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20name">Link to this property</a>

Organization stringOptional

Organization or company name. Optional for individual registrants.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info%20%3E%20(property)%20organization">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20postal_info">Link to this property</a>

Fax stringOptional

Fax number in E.164 format (e.g., <code>+1.5555555555</code>). Optional. Most registrations do not require a fax number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant%20%3E%20(property)%20fax">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20registrant">Link to this property</a>

<details>

<summary>

Technical TransferInNewParamsContactsTechnicalOptional

Optional technical contact. Accepted only when the extension schema includes this role. When the registry requires an omitted contact, Cloudflare may derive it from <code>contacts.registrant</code>.

</summary>

Email string

Email address for the registrant. Used for domain-related communications from the registry, including ownership verification and renewal notices.

formatemail

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20email">Link to this property</a>

Phone string

Phone number in E.164 format: <code>+{country_code}.{number}</code> without spaces or dashes. Examples: <code>+1.5555555555</code> (US), <code>+44.2071234567</code> (UK), <code>+81.312345678</code> (Japan).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20phone">Link to this property</a>

<details>

<summary>

PostalInfo TransferInNewParamsContactsTechnicalPostalInfo

Postal/mailing information for the contact. The <code>name</code> field is the complete contact name in one string. Some registries require a complete personal name, including a family or last name where applicable, but this API does not accept separate first-name and last-name fields for registration contacts.

</summary>

<details>

<summary>

Address TransferInNewParamsContactsTechnicalPostalInfoAddress

Physical mailing address for the registrant contact.

</summary>

City string

City or locality name.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20city">Link to this property</a>

CountryCode string

Two-letter country code per ISO 3166-1 alpha-2 (e.g., <code>US</code>, <code>GB</code>, <code>CA</code>, <code>DE</code>).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20country_code">Link to this property</a>

PostalCode string

Postal or ZIP code.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20postal_code">Link to this property</a>

State string

State, province, or region. Use the standard abbreviation where applicable (e.g., <code>TX</code> for Texas, <code>ON</code> for Ontario).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20state">Link to this property</a>

Street string

Street address including building/suite number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20address%20%3E%20(property)%20street">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20address">Link to this property</a>

Name string

Full legal name of the contact, including all required name components for an individual or authorized representative. Some registries require a complete personal name that includes a family or last name where applicable. Provide the complete name in this single field, for example <code>Ada Lovelace</code>; do not send separate first-name or last-name fields.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20name">Link to this property</a>

Organization stringOptional

Organization or company name. Optional for individual registrants.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info%20%3E%20(property)%20organization">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20postal_info">Link to this property</a>

Fax stringOptional

Fax number in E.164 format (e.g., <code>+1.5555555555</code>). Optional. Most registrations do not require a fax number.

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical%20%3E%20(property)%20fax">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts%20%3E%20(schema)%20%3E%20(property)%20technical">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20contacts">Link to this property</a>

<details>

<summary>

PrivacyMode param.Field\[<a href="https://developers.cloudflare.com/api/go/resources/registrar/subresources/transfer_in/methods/create#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20privacy_mode%20%3E%20(schema)">TransferInNewParamsPrivacyMode</a>]Optional

Body param: WHOIS privacy mode to apply after transfer completes. Defaults to the extension’s default privacy mode (typically <code>redaction</code>).

</summary>

const TransferInNewParamsPrivacyModeOff <a href="https://developers.cloudflare.com/api/go/resources/registrar/subresources/transfer_in/methods/create#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20privacy_mode%20%3E%20(schema)">TransferInNewParamsPrivacyMode</a> = "off"

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20privacy_mode%20%3E%20(schema)%20%3E%20(member)%200">Link to this property</a>

const TransferInNewParamsPrivacyModeRedaction <a href="https://developers.cloudflare.com/api/go/resources/registrar/subresources/transfer_in/methods/create#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20privacy_mode%20%3E%20(schema)">TransferInNewParamsPrivacyMode</a> = "redaction"

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20privacy_mode%20%3E%20(schema)%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20privacy_mode">Link to this property</a>

Prefer param.Field\[string]Optional

Header param: Set to <code>respond-async</code> to indicate a preference for asynchronous processing (RFC 7240).

<a href="#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default%20%3E%20(param)%20Prefer">Link to this property</a>

</details>

[Link to this property](<#(resource)%20registrar.transfer_in%20%3E%20(method)%20create%20%3E%20(params)%20default>)

##### ReturnsExpand Collapse

<details>

<summary>

type WorkflowStatus struct{…}

Status of an async registration workflow.

</summary>

Completed bool

Indicates whether the workflow reached a terminal state. A <code>succeeded</code> or <code>failed</code> state returns <code>true</code>; <code>pending</code>, <code>in_progress</code>, <code>action_required</code>, and <code>blocked</code> return <code>false</code>.

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20completed">Link to this property</a>

CreatedAt Time

formatdate-time

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20created_at">Link to this property</a>

<details>

<summary>

Links WorkflowStatusLinks

</summary>

Self string

URL to this status resource.

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20links%20%3E%20(property)%20self">Link to this property</a>

Resource stringOptional

URL to the domain resource.

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20links%20%3E%20(property)%20resource">Link to this property</a>

</details>

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20links">Link to this property</a>

<details>

<summary>

State WorkflowStatusState

Describes the workflow lifecycle state.

- <code>pending</code>: The workflow awaits processing.
- <code>in_progress</code>: Processing started. Continue polling <code>links.self</code>. An internal deadline limits the duration of this state.
- <code>action_required</code>: The workflow pauses for user action. See <code>context.action</code> for details. Stop automated polling until the user completes the required action.
- <code>blocked</code>: A third party, such as the domain extension’s registry or a losing registrar, prevents progress. Continue polling because the block may resolve when the third party responds.
- <code>succeeded</code>: Terminal state. The operation completed successfully. <code>completed</code> equals <code>true</code>. For registrations, <code>context.registration</code> contains the resulting registration resource.
- <code>failed</code>: Terminal state. The operation failed. <code>completed</code> equals <code>true</code>. See <code>error.code</code> and <code>error.message</code> for the reason. Require user review before retrying.

</summary>

One of the following:

const WorkflowStatusStatePending WorkflowStatusState = "pending"

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state%20%3E%20(member)%200">Link to this property</a>

const WorkflowStatusStateInProgress WorkflowStatusState = "in\_progress"

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state%20%3E%20(member)%201">Link to this property</a>

const WorkflowStatusStateActionRequired WorkflowStatusState = "action\_required"

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state%20%3E%20(member)%202">Link to this property</a>

const WorkflowStatusStateBlocked WorkflowStatusState = "blocked"

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state%20%3E%20(member)%203">Link to this property</a>

const WorkflowStatusStateSucceeded WorkflowStatusState = "succeeded"

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state%20%3E%20(member)%204">Link to this property</a>

const WorkflowStatusStateFailed WorkflowStatusState = "failed"

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state%20%3E%20(member)%205">Link to this property</a>

</details>

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20state">Link to this property</a>

UpdatedAt Time

formatdate-time

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20updated_at">Link to this property</a>

Context map\[string, unknown]Optional

Provides workflow-specific data.

For domain-centric workflows, <code>context.domain_name</code> identifies the workflow subject.

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20context">Link to this property</a>

<details>

<summary>

Error WorkflowStatusErrorOptional

Provides error details when a workflow reaches the <code>failed</code> state. The workflow type (registration, update, etc.) and underlying registry response determine the specific codes and messages. Workflow error codes differ from immediate HTTP error <code>errors[].code</code> values in non-2xx responses. Surface <code>error.message</code> to the user for context.

</summary>

Code string

Machine-readable error code identifying the failure reason.

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20error%20%3E%20(property)%20code">Link to this property</a>

Message string

Human-readable explanation of the failure. May include registry-specific details.

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20error%20%3E%20(property)%20message">Link to this property</a>

</details>

<a href="#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)%20%3E%20(property)%20error">Link to this property</a>

</details>

[Link to this property](<#(resource)%20registrar%20%3E%20(model)%20workflow_status%20%3E%20(schema)>)

### Initiate Transfer

Go

HTTPTypeScriptPythonGoTerraform

```
package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/option"
  "github.com/cloudflare/cloudflare-go/registrar"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  workflowStatus, err := client.Registrar.TransferIn.New(
    context.TODO(),
    "example.com",
    registrar.TransferInNewParams{
      AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
      AuthCode: cloudflare.F("bml4b3M+Pj5hcmNoLWxpbnV4"),
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", workflowStatus.Completed)
}
```

202 example

4XX example

4XX example

4XX example

4XX example

4XX example

4XX example

4XX example

```
{
  "errors": [],
  "messages": [],
  "result": {
    "completed": false,
    "context": {
      "domain_name": "example.com"
    },
    "created_at": "2025-10-27T10:00:00Z",
    "links": {
      "resource": "/accounts/abc/registrar/registrations/example.com",
      "self": "/accounts/abc/registrar/registrations/example.com/transfer-in-status"
    },
    "state": "pending",
    "updated_at": "2025-10-27T10:00:01Z"
  },
  "success": true
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "object at root is missing required properties: auth_code",
      "source": {
        "pointer": "/auth_code"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "Auth code must be a base64 encoded string",
      "source": {
        "pointer": "/auth_code"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "Domain not found",
      "source": {
        "pointer": "/domain_name"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "TLD Not supported by the API",
      "source": {
        "pointer": "/domain_name"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "Domain registration term would exceed maximum",
      "source": {
        "pointer": "/domain_name"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "No registrant contact provided and no default address book entry found for this account."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "A workflow already exists for this resource. Use GET status to check its progress."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

##### Returns Examples

202 example

4XX example

4XX example

4XX example

4XX example

4XX example

4XX example

4XX example

```
{
  "errors": [],
  "messages": [],
  "result": {
    "completed": false,
    "context": {
      "domain_name": "example.com"
    },
    "created_at": "2025-10-27T10:00:00Z",
    "links": {
      "resource": "/accounts/abc/registrar/registrations/example.com",
      "self": "/accounts/abc/registrar/registrations/example.com/transfer-in-status"
    },
    "state": "pending",
    "updated_at": "2025-10-27T10:00:01Z"
  },
  "success": true
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "object at root is missing required properties: auth_code",
      "source": {
        "pointer": "/auth_code"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "Auth code must be a base64 encoded string",
      "source": {
        "pointer": "/auth_code"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "Domain not found",
      "source": {
        "pointer": "/domain_name"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "TLD Not supported by the API",
      "source": {
        "pointer": "/domain_name"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "Domain registration term would exceed maximum",
      "source": {
        "pointer": "/domain_name"
      }
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "No registrant contact provided and no default address book entry found for this account."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```

```
{
  "errors": [
    {
      "code": 10000,
      "message": "A workflow already exists for this resource. Use GET status to check its progress."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
```