---
title: "Start signing in or signing up with a phone number"
method: POST
path: "/api/v1/auth/phone/start"
tags: ["Auth"]
---

# Start signing in or signing up with a phone number

`POST /api/v1/auth/phone/start`

## Request

- Base URL: `https://otprun.com`
- URL: `https://otprun.com/api/v1/auth/phone/start`
- Auth: none declared

Sends a code through WhatsApp or Telegram, or returns a Telegram link. The answer is the same for new and existing numbers; an account is created after the first confirmed sign-in. Sets the otprun_login_challenge cookie that later calls need.

## Headers

- `User-Agent` string

## Request body

- StartInputBody
  - `channel` 'whatsapp' | 'telegram', required
  - `locale` string: Language of the code message and of the bot
  - `phone` string: International number, required for WhatsApp, optional for Telegram

## Response `200`

OK

- PhoneStartBody
  - `challenge_id` string, uuid, required
  - `channel` 'whatsapp' | 'telegram', required
  - `delivery` 'code' | 'link', required: code: enter the code from WhatsApp or Telegram; link: open tg_link and share the number with the bot
  - `expires_at` string, date-time, required
  - `resend_at` string, date-time, required: Earliest moment a new code can be requested
  - `tg_link` string, required: Telegram link for delivery link, empty otherwise

## Other responses

- `422`: Unprocessable Entity
- `429`: Too Many Requests
- `500`: Internal Server Error
- `503`: Service Unavailable

---

[API](https://skmtc.dev/otprun/apis/otp-run-api.md) · [All operations](https://skmtc.dev/otprun/apis/otp-run-api/llms.txt) · [OpenAPI document](https://skmtc.dev/otprun/apis/otp-run-api/revisions/43d40d5f4050?raw)
