# How to Register Accounts

This guide walks you through the entire process of registering new Telegram accounts from scratch. By the end, you will have new accounts in your database ready to use.

## Before You Begin

Make sure you have:

* MVS Web installed and running ([Installation guide](/mvs-docs/getting-started/installation.md))
* A valid license key activated
* An SMS service account with funds (SMS Activate or Firefox)
* An email service account with funds (Antisafety, Bower, or Corp Mail)
* A Core API key for captcha solving and push tokens
* Proxies ready to use

## Step 1: Add Proxies

You need proxies before registering accounts. Telegram blocks IPs that register too many accounts.

1. Click **Proxies** in the sidebar (under Settings)
2. Click **+ Add List** in the top right
3. Name your list (e.g., "Registration proxies")
4. Paste your proxies, one per line:

   ```
   socks5://user:pass@host:port
   ```
5. Save the list

{% hint style="info" %}
**Use mobile or residential proxies** for registration. Datacenter proxies have higher ban rates. One proxy per 1-3 simultaneous registrations works well.
{% endhint %}

For more details, see [Working with Proxies](/mvs-docs/guides/proxy-guide.md).

## Step 2: Open the Registration Module

Click **Registration** in the sidebar. You will see the registration settings form.

![Registration settings](/files/j8I9kuTUc5WOqi2rw05o)

## Step 3: Configure Execution Settings

| Setting      | Recommended Value         | Why                                       |
| ------------ | ------------------------- | ----------------------------------------- |
| **Platform** | iOS                       | Works reliably                            |
| **Threads**  | 1-3 (for your first time) | Start small to make sure everything works |
| **Target**   | 5-10                      | Register a small batch first              |
| **2FA**      | Random or Custom          | Protects your accounts from hijacking     |
| **Passkey**  | On                        | Allows session recovery later             |

## Step 4: Configure the Region

1. Select a **Country** that matches your proxy country and SMS service numbers
2. The Language, System Language, and Timezone fields will auto-fill based on the country
3. Leave **Operator** as `any` unless you need a specific carrier

{% hint style="warning" %}
**Match your country to your proxies and SMS numbers.** Registering a Colombian number through a German proxy is suspicious and may result in bans.
{% endhint %}

## Step 5: Configure SMS Service

1. Select your **Provider** (SMS Activate or Firefox)
2. Enter your **API Key** (or login/password for Firefox)
3. Leave **Service ID** as default (usually `tg`)
4. Set **Max Price** if you want to limit per-number cost (0 = no limit)

## Step 6: Configure Email Service

1. Select your **Provider** (Antisafety, Bower, or Corp Mail)
2. Enter the **API Key** for your chosen provider
3. For Bower: enter the **Domain** (e.g., `gmail.com`)

## Step 7: Check Timeouts

The default timeouts work well for most cases:

* SMS: 120s
* Captcha: 120s
* Email: 90s
* APNS: 120s

Only increase these if you experience frequent timeouts.

## Step 8: Enter Core API Key

Scroll down to **Core API** and enter your Core API key. This is required for captcha solving and push token generation.

![Registration settings (bottom)](/files/ZuZidn1GwpEPOiIvyK2P)

## Step 9: Select Proxy List

In the **Select proxy...** dropdown at the top of the settings panel, select the proxy list you created in Step 1.

## Step 10: Save Your Configuration

1. Type a name in the **Config Name** field (e.g., "Colombia iOS")
2. Click **Save**

Now you can reload this configuration anytime without filling everything in again.

## Step 11: Start Registration

Click the green **Start** button in the top right corner.

The log panel will show the registration progress:

```
Starting registrator: 3 thread(s), platform=ios, sms=sms_activate, country=33
W-0 Push token OK (2048 chars)
W-0 Got number: +573012271620
W-0 SUCCESS: +573012271620 -- registered
```

## Step 12: Check Your New Accounts

After the task finishes:

1. Click **Accounts** in the sidebar
2. Your new accounts will appear with status **new** and source **registered**
3. Run the [Checker](/mvs-docs/modules/checker.md) on them to verify they are alive and fill in additional data

## Troubleshooting

| Problem                        | Solution                                                                 |
| ------------------------------ | ------------------------------------------------------------------------ |
| **"Insufficient balance"**     | Add funds to your SMS service account                                    |
| **"No numbers available"**     | Try a different country or wait a few minutes                            |
| **Push token errors**          | Check your Core API key and balance                                      |
| **Captcha timeouts**           | Check your Core API key; increase the captcha timeout                    |
| **All registrations fail**     | Check your proxies; try mobile/residential proxies instead of datacenter |
| **"Config validation failed"** | Make sure all required fields are filled in                              |

{% hint style="info" %}
**Start small.** Register 5-10 accounts with 1-2 threads first. Once everything works smoothly, scale up the threads and target count.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mvs-3.gitbook.io/mvs-docs/guides/registration-guide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
