Phone numbers, SMS, email, and voice for AI agents.
Project description
Agentline
Phone numbers, SMS, email, and voice for AI agents. Give your agent a phone number and email address it can actually use — for sign-ups, 2FA, voice calls, and customer communication.
pip install agentline
The 3-line DX
from agentline import Agentline
agent = Agentline(api_key="ag_live_...")
code = agent.get_verification_code("+18005551234", timeout=120)
All-in-one flow:
phone, code = agent.capture_code(area_code="415", timeout=60)
# phone = the number you give to the signup form
# code = the 2FA code received via SMS
Agent self-signup
Agents can sign themselves up — no human required:
agent = Agentline.signup(
email="my-agent@example.com",
name="Customer Support Bot",
purpose="Handle customer service inquiries",
)
phone = agent.provision_number(area_code="415")
Capabilities
Phone numbers
search_numbers(country_code, area_code, limit)— search available numbersprovision_number(phone_number=None, area_code=None)— provision a numberrelease_number(phone_number)— release when donelist_numbers()— list provisioned numbers
SMS
send_sms(from_, to, body)— send an outbound SMSget_messages(phone_number, limit)— recent messageswait_for_sms(phone_number, timeout, match)— long-poll for next inbound SMSget_verification_code(phone_number, timeout, pattern)— wait for a 2FA codecapture_code(area_code, timeout, release_after)— provision + wait + release
Voice calls
make_call(from_, to, prompt, voice, first_message, ...)— outbound AI voice callget_call(call_id)— call status + transcripthangup(call_id)— end an active call
create_email_address(local_part)— provision an emaillist_email_addresses()/release_email_address(id)send_email(from_, to, subject, body, body_html, reply_to)get_emails(email_address, limit)wait_for_email(email_address, timeout, match)get_email_verification_code(email_address, timeout, pattern)capture_email_code(local_part, timeout, release_after)
Error handling
from agentline import Agentline, AgentlineError
try:
agent.provision_number(area_code="415")
except AgentlineError as e:
print(f"{e.status_code}: {e}")
Context manager
with Agentline(api_key="ag_live_...") as agent:
code = agent.get_verification_code("+18005551234", timeout=120)
Links
- Homepage: https://www.agentline.co
- Docs: https://www.agentline.co/docs
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
agentline-0.1.0.tar.gz
(7.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentline-0.1.0.tar.gz.
File metadata
- Download URL: agentline-0.1.0.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ffa147112f6564332c79d207fe8949e27a2faf4b67b536694e2daa057f3e570
|
|
| MD5 |
d6bab898b327aeb35a8e9dc4fab92e5a
|
|
| BLAKE2b-256 |
db70ca0e5fc0d36454c7919236d22ea6088444f0528f3f1391ae74943f395cc2
|
File details
Details for the file agentline-0.1.0-py3-none-any.whl.
File metadata
- Download URL: agentline-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6748d3adb07e2db87e8e69a4e1702d649ee0e325f11f6e8785f87868d220ed1
|
|
| MD5 |
83d6e777d44795e208227d6c5b41061a
|
|
| BLAKE2b-256 |
b04a74eef80031f06a7c3f95d4c47b473c5cb71585d6159eb7c6972a9af511ce
|