---
title: "Purchase Disarm Number"
method: POST
path: "/parents/{parent_id}/disarm-number"
tags: ["parents"]
---

# Purchase Disarm Number

`POST /parents/{parent_id}/disarm-number`

## Request

- Base URL: `https://api.verdun.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.verdun.ai/parents/{parent_id}/disarm-number`
- Auth: HTTP bearer

## Path parameters

- `parent_id` string, required

## Request body

- PurchaseDisarmNumberRequest: Buy (or reconcile) the dealer's one SMS line. RE-POSTING IS THE RECONCILE, deliberately, rather than a second endpoint: a network failure during the purchase leaves the parent in `purchasing` with no number, and the honest recovery is to ask Surge what we actually own before buying again. A separate /reconcile route would be a second owner-only mutating surface for what is naturally retry semantics on the route that created the ambiguity.
  - `area_code` string, nullable: Preferred NANP area code for the new number. Omit to let Surge choose. Ignored when an in-flight purchase is being reconciled.

## Response `200`

Successful Response

- DisarmNumberResponse: The dealer's one SMS line and where it is in its lifecycle.
  - `disarm_number` string, nullable: The dealer's Surge line in E.164, which their customers text with a site passcode. Null while a purchase is unconfirmed.
  - `disarm_number_state` string, nullable: 'purchasing' means a purchase was started and its outcome is not yet confirmed — re-POST to reconcile against Surge rather than buying a second number. 'attached' is display only: inbound texts route regardless of campaign attachment. 'releasing' means a release is in flight or unconfirmed: this client's sites cannot be disarmed until it clears, and re-DELETE reconciles it.
  - `surge_phone_number_id` string, nullable: Surge's own id for the number, used by the attach webhook and release.
  - `adopted` boolean: True when this call RECONCILED an earlier ambiguous purchase by adopting a number Surge already had, rather than buying a new one.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/verdun/apis/verdun-api.md) - [All operations](https://skmtc.dev/verdun/apis/verdun-api/llms.txt) - [OpenAPI document](https://skmtc.dev/verdun/apis/verdun-api/revisions/35a2a6ebedda?raw)
