
Registered Campaign Service Provider
A2P messaging built by people who read the carrier rules
SMS and MMS across every major US carrier, with 10DLC brand and campaign registration filed directly by us. The compliance work that gets campaigns rejected is done before you submit, not after.
Talk to a human first: +1 (332) 231-6423
Registered CSP
We file brands and campaigns with The Campaign Registry under our own Campaign Service Provider account.
US entity, US support
A New York corporation with support staffed in Eastern Time, reachable by phone.
Fees passed through at cost
Registry, aggregator, and carrier charges are billed exactly as we are billed. No markup.
Compliance reviewed by a person
Every registration is checked against carrier rules before submission, not after rejection.
Platform
Everything needed to run US messaging traffic
One API, one account, one invoice. Numbers, registration, delivery, and the compliance tooling that keeps all three working together.

SMS API
One REST endpoint, GSM-7 and UCS-2 handled for you, delivery receipts on every message, and inbound webhooks that arrive in under a second.
Learn more
MMS API
Same endpoint as SMS, one extra field.
Learn more
A2P 10DLC
We are a registered Campaign Service Provider.
Learn more
Toll-Free Messaging
Toll-free messaging carries higher throughput than 10DLC and reaches all major carriers on one number.
Learn more
Phone Numbers
Search by area code, rate center, or capability, then buy through the API and start sending as soon as the number is attached to an approved campaign..
Learn more
Number Lookup
Resolve a phone number to its carrier, line type, and portability status.
Learn moreConsole
See what the carriers see
Per-carrier delivery rates, segment counts, and opt-out rates in one view. When a message is filtered you get the carrier's reason code, not a generic failure.
- Delivery receipts passed through unmodified
- Opt-out rate tracked against the 0.5% threshold carriers watch
- Campaign registration status per carrier, updated as it changes
- Full message search and export for audit requests
console.anthonyoliva.com/messages
Delivered, 24h
48,214
+3.1%
Delivery rate
98.4%
AT&T 98.9 / TMO 98.1
Opt-out rate
0.21%
Below 0.5% threshold
Hourly delivery rate, last 14 hours
| Recipient | Campaign | Carrier | Seg | Status | Time |
|---|---|---|---|---|---|
| +1 (315) 555-0188 | C7X4M2P | Verizon | 1 | delivered | 14:02:11 |
| +1 (646) 555-0143 | C7X4M2P | T-Mobile | 1 | delivered | 14:02:11 |
| +1 (212) 555-0119 | C7X4M2P | AT&T | 2 | delivered | 14:02:10 |
| +1 (718) 555-0177 | C4K9B1T | Verizon | 1 | sent | 14:02:09 |
| +1 (585) 555-0164 | C4K9B1T | T-Mobile | 1 | opted out | 14:02:08 |
Illustrative view of the messaging console. Figures are examples, not customer data.
Compliance
The part everyone else treats as an afterthought
Most campaigns are not rejected because of the technology. They are rejected because a privacy policy is missing one clause, a consent checkbox is pre-checked, or a legal name has a comma the IRS record does not.
01
Pre-submission review, not post-rejection triage
We open your website, read your privacy policy for the mobile sharing clause, test the opt-in form, and check your legal name against your EIN. The problems that cause rejections are almost always visible before you submit.
02
Opt-out enforced at the platform level
STOP, UNSUBSCRIBE, CANCEL, END, and QUIT are intercepted before they reach your application and suppressed across your entire account. The suppression list cannot be turned off, by you or by us.
03
Consent evidence you can actually produce
Carriers can demand proof of consent for any recipient at any time. We store the opt-in source, timestamp, and the exact disclosure text presented, and keep it for four years past opt-out.
04
Honest answers about what will not get approved
Some business categories are permanently ineligible for 10DLC and no amount of copy rewriting changes that. We tell you on the first call rather than after three rejection cycles.

Developers
Plain REST, no ceremony
Basic auth over HTTPS with a scoped key pair. JSON in, JSON out. Idempotency keys on every write, signed webhooks with automatic retries, and error codes that tell you what to fix.
curl https://api.anthonyoliva.com/v1/messages \
-u "$AO_KEY_ID:$AO_KEY_SECRET" \
-H "Content-Type: application/json" \
-d '{
"from": "+13155550142",
"to": "+13155550188",
"body": "Anthony Oliva: your order 4471 shipped. Reply STOP to cancel.",
"campaign_id": "C7X4M2P"
}'
Talk to someone who has read the carrier rules
Tell us what you are sending, to whom, and how they consented. We will tell you honestly whether it will get approved, and what to change if it will not.