API Reference
41 routes. Every endpoint documented with parameters, request/response examples, and copy-paste code.
Base URL: https://api.revaddress.com
Authentication
No API key required. IP-rate-limited: 30 req/10s. Address validation, rates, locations, service standards.
X-API-Key: rv_live_...
Labels, tracking, pickup, batch validation.
Starter 120/min · Growth 300/min · Pro 600/min. Headers: X-RateLimit-Limit, -Remaining, -Reset.
Try it live
Hit the real USPS API right now. No API key, no signup — free tier, live data.
← Enter an address and click Validate
Quick Start Examples
The four most common first requests. Hit the live API immediately.
/api/address/validate curl -s "https://api.revaddress.com/api/address/validate" \
-H "Content-Type: application/json" \
-d '{"streetAddress":"228 Park Ave S PMB 101842","city":"New York","state":"NY","ZIPCode":"10003"}' /api/rates curl -s "https://api.revaddress.com/api/rates" \
-H "Content-Type: application/json" \
-d '{"originZIPCode":"10003","destinationZIPCode":"90210","weight":2.5,"length":12,"width":9,"height":2}' /api/batch/validate curl -s "https://api.revaddress.com/api/batch/validate" \
-H "X-API-Key: rv_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{"addresses":[{"streetAddress":"228 Park Ave S","city":"New York","state":"NY","ZIPCode":"10003"},{"streetAddress":"1600 Pennsylvania Ave NW","city":"Washington","state":"DC","ZIPCode":"20500"}]}' /api/tracking/:number curl -s "https://api.revaddress.com/api/tracking/9400111899223456789012" \ -H "X-API-Key: rv_live_your_key_here"
Addresses
Free TierUS address validation and ZIP lookup. Free tier — no API key needed.
Rates
Free TierDomestic and international shipping rate quotes. Free tier.
Tracking
USPS package tracking by tracking number.
Labels
Create, download, list, and void USPS shipping labels.
Workflows
Durable label creation workflows with charge-approval gate.
Pickup
Schedule and manage free USPS carrier pickups.
Locations & Standards
Free TierUSPS drop-off locations and delivery time standards. Free tier.
BYOK
Bring your own USPS Developer Portal credentials. AES-GCM encrypted at rest.
Account
Self-service usage and key management. Scoped to your API key.
Error Reference
All errors return a consistent JSON shape with machine-readable codes.
{
"error": "usps_auth_failed",
"message": "OAuth token expired or invalid",
"status": 401,
"code": "AUTH_EXPIRED",
"retryable": true
} | Error Code | HTTP Status | Retryable | Action |
|---|---|---|---|
| api_key_required | 401 | — | Add X-API-Key header |
| invalid_api_key | 401 | — | Check key prefix (rv_live_ or rv_test_) |
| api_key_revoked | 401 | — | Generate a new key |
| rate_limit_exceeded | 429 | Yes | Check retryAfter in response, back off |
| monthly_limit_exceeded | 429 | Next month | Upgrade plan at /pricing |
| free_tier_rate_limit | 429 | Yes | Slow down or get a free API key |
| tier_required | 403 | — | Upgrade plan (batch requires Growth+) |
| usps_validation_error | 422 | No | Fix input address data |
| usps_auth_failed | 401 | Yes | Token auto-refreshes — retry once |
| payment_token_unavailable | 503 | Yes | Retry after a few seconds |
| batch_too_large | 400 | No | Split into batches of ≤50 |