Loading...
Loading...
Phone numbers for AI agents with calls, SMS, and sybil resistance via World ID
npx skill4agent add trionlabs/ahoy ahoynpx skills add github:trionlabs/ahoy# 1. Get a temp number for 5 minutes
POST https://useahoy.app/oneshot
# Returns: { id, phoneNumber, endpoints: { send, inbox, call, release } }
# 2. Send SMS from your temp number
POST https://useahoy.app/oneshot/:id/send
{ "to": "+15551234567", "message": "Hello from ahoy" }
# 3. Read received SMS
GET https://useahoy.app/oneshot/:id/inbox
# 4. Make a TTS call
POST https://useahoy.app/oneshot/:id/call
{ "to": "+15551234567", "message": "Hello, this is ahoy" }
# 5. Release early (or wait 5 min for auto-release)
POST https://useahoy.app/oneshot/:id/release# 1. Provision a sybil-resistant number
POST https://useahoy.app/provision
# 2. Enable XMTP forwarding
POST https://useahoy.app/provision?notify=xmtp
# 3. Check your numbers (free)
GET https://useahoy.app/number
# 4. Read SMS inbox (free)
GET https://useahoy.app/messages
# 5. Check billing status (free)
GET https://useahoy.app/status
# 6. Verify a phone is backed by a verified human
GET https://useahoy.app/verify-phone?phone=+14155551234
# 7. Renew for 30 more days
POST https://useahoy.app/renew0x1C66D49FB1e9782Aa838A2Ec9fa6F346C85096E0| Command | Description |
|---|---|
| Read recent messages |
| Number info |
| Show commands |
| Any other text | Stored in inbox + forwarded to XMTP |
| Command | Description |
|---|---|
| Send SMS from your ahoy number |
| Read recent SMS messages |
| Check registration |
| Show commands |
?notify=xmtpPOST https://useahoy.app/provision?notify=xmtp| Method | Path | Price | Description |
|---|---|---|---|
| | $0.99 | Get a temp number for 5 min |
| | free | Send SMS from temp number |
| | free | Read received SMS |
| | free | Make TTS call from temp number |
| | free | Release early |
| | $0.01 | Check if a phone is backed by a verified human |
| Method | Path | Price | Description |
|---|---|---|---|
| | $3.99 | Provision a persistent number with sybil resistance |
| | $3.99 | Same + registers wallet for XMTP SMS forwarding |
| | $3.99 | Extend billing 30 days |
| Method | Path | Description |
|---|---|---|
| | Get your assigned number |
| | Read your SMS inbox |
| | Check number status + billing |
| Method | Path | Description |
|---|---|---|
| | Health check + XMTP bot address |
| | x402 service discovery |
| | OpenAPI spec |
# agentcash
npx agentcash discover https://useahoy.app
# x402 discovery
GET https://useahoy.app/.well-known/x402
GET https://useahoy.app/openapi.jsonuint256 humanId, bool isVerified1. Agent calls POST /oneshot
2. x402: agent pays $0.99 USDC on Base
3. ahoy provisions a temp Twilio number
4. Returns: { id: "abc", phoneNumber: "+14155551234", endpoints: {...} }
5. Agent sends SMS: POST /oneshot/abc/send { to: "+1555...", message: "hello" }
6. Agent checks inbox: GET /oneshot/abc/inbox
7. After 5 min: number auto-releases from Twilio1. Agent wallet 0xAAA calls POST /provision
2. x402: agent pays $3.99 USDC on Base
3. AgentKit: verifies wallet -> resolves to humanId via World ID
4. ahoy: checks if human already has a number
5. ahoy: provisions Twilio number with SMS + voice webhooks
6. ahoy: creates EAS attestation on World Chain
7. Returns: { numbers: [...], provisioned: true }
8. Someone texts the number -> stored in inbox
9. Agent reads via GET /messages or receives via XMTP
10. Someone calls the number -> AI assistant answers (Claude)