---
title: "Assign a phone number"
method: POST
path: "/v1/logins/{id}/sms-number"
tags: ["two_factor"]
---

# Assign a phone number

`POST /v1/logins/{id}/sms-number`

## Request

- Base URL: `https://api.pomerado.ai`
- URL: `https://api.pomerado.ai/v1/logins/{id}/sms-number`
- Auth: HTTP bearer

Gives a saved login a Pomerado phone number to receive its website's text-message sign-in codes, so sign-ins need no one to read them.

- Assigning again returns the same number.
- Next, the person sets this number as the website account's phone for codes. Then call logins.verify_sms_number to check that codes arrive.
- features.sms_numbers on your account says whether you may assign one.

## Path parameters

- `id` string, required

## Response `200`

The login's number

- SmsNumber
  - `phone_number` string, required
  - `status` 'linked' | 'verified', required
  - `linked_at` string, required
  - `verified_at` string, nullable, required
  - `verification` object, nullable, required
    - `expires_at` string, required
    - `code_received` boolean, required
    - `code` string, nullable, required

## Other responses

- `400`: invalid_request
- `401`: unauthorized, reauthentication_required
- `403`: sms_number_not_allowed, forbidden
- `404`: not_found, sms_number_not_linked
- `500`: internal_error
- `501`: not_configured
- `503`: temporarily_unavailable, sms_number_cap_reached, sms_number_purchase_failed

---

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