# StablePhone Number Top-Up

> StablePhone Number Top-Up is a paid API for AI agents from StablePhone at stablephone.dev, paid per call via MPP or x402, $15/call, status unknown (last checked 2026-10-09).

Extends the expiry of an existing US phone number by 30 days, stackable, payable via x402 at $15 USDC per call.

## Facts

- Endpoint: POST https://stablephone.dev/api/number/topup?utm_source=zero.xyz
- Price: $15/call
- Payment: MPP, x402
- Status: unknown
- Last checked: 2026-10-09
- Activations on Zero: 0
- Provider: StablePhone
- Docs: https://stablephone.dev
- Website: https://stablephone.dev
- Tags: phone, call, voice, ai-call, imessage, ai, social
- Canonical page: https://www.zero.xyz/c/stablephone-topup-8fc10a01
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Pq0jYdaqaqiQzCN8LE6GT

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability stablephone-topup-8fc10a01 -d '<json body>'
```

Example prompt: Top up my StablePhone number +12125551234 for another 30 days.

## When to prefer this

Use this endpoint when you need to extend the active period of an existing US phone number on StablePhone by 30 days. Particularly useful for keeping a dedicated outbound caller ID active, preventing expiry, or stacking multiple renewals in advance. Anyone can top up any number — no ownership authentication required, unlike other StablePhone endpoints.

## Known failure modes

- Invalid phone number format (must match ^\+1\d{10}$) — returns validation error
- Phone number not found in StablePhone system
- Payment failure via x402 — insufficient USDC balance or payment not accepted
- Network or server error returning non-200 response

## How this service works

Extend a phone number by 30 days from current expiry ($15.00 via x402). Top-ups stack. Anyone can top up any number.

## Output

Returns a JSON object with success: true, the phone_number that was topped up, and the new expires_at timestamp reflecting the 30-day extension from the previous expiry.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "phone_number"
 ],
 "properties": {
  "phone_number": {
   "type": "string",
   "pattern": "^\\+1\\d{10}$"
  }
 },
 "additionalProperties": false
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "success",
  "phone_number",
  "expires_at"
 ],
 "properties": {
  "success": {
   "type": "boolean",
   "const": true
  },
  "expires_at": {
   "type": "string"
  },
  "phone_number": {
   "type": "string"
  }
 },
 "additionalProperties": false
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/stablephone-topup-8fc10a01/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stablephone.dev](https://www.zero.xyz/host/stablephone.dev/llms.txt)
