---
title: "🔒 #26729 Код подтверждения телефона или email своей учётной записи: привязка, смена, второй контакт при регистрации. Контакт другой записи отклоняется до отправки кода. Код действует 5 минут; прежний контакт действует до подтверждения нового."
method: GET
path: "/user/contact/code"
tags: ["Users"]
---

# 🔒 #26729 Код подтверждения телефона или email своей учётной записи: привязка, смена, второй контакт при регистрации. Контакт другой записи отклоняется до отправки кода. Код действует 5 минут; прежний контакт действует до подтверждения нового.

`GET /user/contact/code`

## Request

- Base URL: `http://localhost`
- URL: `http://localhost/user/contact/code`
- Auth: API key in header `sid` and API key in header `rts` and API key in header `sig`

#26729 Код подтверждения телефона или email своей учётной записи: привязка, смена, второй контакт при регистрации. Контакт другой записи отклоняется до отправки кода. Код действует 5 минут; прежний контакт действует до подтверждения нового.

**Access:** `authorized` (10 ) · **allowNullCompany:** true · **Scope:** `write` · **только веб-сессия**

**Allows:** не требуются — own sign-in contacts, confirmed by a code sent to the contact itself

### TypeScript (copy-paste)

**`GET /user/contact/code`**

<details open><summary><b>Params</b></summary>

```typescript
export interface UserContactCodeParams {
  kind: user_contact_code_kind
  value: string
}
```

</details>

<details open><summary><b>Response</b></summary>

```typescript
export type UserContactCodeResponse = IServerResponse<Resp_user_contact_code>

export interface IServerResponse<T = any> {
  code: number
  data: T
  srvTS: number
  rkey: string
}
```

</details>

> Полный файл типов: [`/docs/types`](/docs/types) · raw: [`/docs/api-types.ts`](/docs/api-types.ts)

## Query parameters

- `kind` 'phone' | 'email', required: `phone` = "phone", `email` = "email"
- `value` string, required

## Headers

- `devID` string, uuid, required
- `tz` string, required
- `app` string, required
- `appVer` string, required
- `rKey` string

## Response `200`

OK — `IServerResponse<Resp_user_contact_code>`

- object
  - `code` integer, required
  - `data` RespUserContactCode, required: ResponseData for user/contact/code
    - `codeStatus` 0 | 1 | -1, required: `wait` = 0, `sended` = 1, `error` = -1
  - `srvTS` integer, required: Server timestamp (ms)
  - `rkey` string, required: Request key

## Other responses

- `400`: BadRequest: invalid phone or email
- `401`: Authorize — сессия отсутствует, истекла или невалидна
- `403`: AccessNotAllowed — недостаточно прав или неверная подпись
- `406`: TimeResync — расхождение rts с сервером
- `422`: UnprocessableContent: Request limit exceeded (100 requests per day); params.code - contact_taken, contact_confirmed (already confirmed), code_already_sent, code_requests_exceeded, code_send_failed, email_unavailable

---

[API](https://skmtc.dev/kosmodrom/apis/kosmodrom-backend-api.md) · [All operations](https://skmtc.dev/kosmodrom/apis/kosmodrom-backend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/kosmodrom/apis/kosmodrom-backend-api/revisions/a143b51ba29a?raw)
