Developer REST API Documentation

Integrate synthetic US address generation, postal validation, and developer testing utilities directly into your automated test suites, CI/CD pipelines, and seed scripts using our free REST API.

API Overview & Core Limits

API Endpoints Reference

1. Address Generation

GET /api/v1/addresses/random

Generate random synthetic US addresses with complete postal, geographic, and formatted data.

Query Parameters:

POST /api/v1/addresses/generate

Batch generate synthetic addresses using a customizable JSON configuration payload.

JSON Body Parameters:

2. Postal & State Data

GET /api/v1/states

Retrieve all 51 US states and jurisdictions (including Washington, D.C.) with capital cities, coordinate bounds, timezones, and county lists.

Parameters: None.

GET /api/v1/zip/lookup

Query postal database by 5-digit ZIP code or city name to resolve state, county, coordinates, and timezone.

Query Parameters:

GET /api/v1/validate (Alias: GET /api/v1/validate/address)

Validate and standardize a synthetic address string against USPS DPV heuristics and postal standards.

Query Parameters:

3. Developer Test Utilities

GET /api/v1/phone/generate

Generate realistic US phone numbers adhering to the North American Numbering Plan (NANPA) with valid area codes.

Query Parameters:

GET /api/v1/uuid/generate

Generate standard UUID v4 (random) or UUID v1 (timestamp-based) identifiers for database keys.

Query Parameters:

GET /api/v1/password/generate

Generate cryptographically secure random passwords for testing authentication and credential validation.

Query Parameters:

GET /api/v1/lorem/generate

Generate synthetic Lorem Ipsum placeholder text paragraphs for UI testing and typography layouts.

Query Parameters:

GET /api/v1/business-name/generate

Generate realistic synthetic US business, company, and corporate entity names.

Query Parameters:

GET /api/v1/number/generate

Generate randomized integer sequences, test code numbers, and numerical arrays across custom ranges.

Query Parameters:

GET /api/v1/health

System health check endpoint providing uptime status, service name, version, and server timestamp.

Parameters: None.

Working cURL Example & Actual Response Shape

Every street value the API returns is standardised to USPS Publication 28 — see the USPS street suffix abbreviations reference for the suffix and secondary-unit rules the API applies.

cURL Request

curl -s "https://usaddressgenerator.org/api/v1/addresses/random?count=1&state=CA&type=residential"

Actual Response Body (HTTP 200 OK)

{
  "status": "success",
  "count": 1,
  "query": {
    "count": 1,
    "state": "CA",
    "type": "residential"
  },
  "data": [
    {
      "id": "addr_92jyojq_1787034998000",
      "recipientName": "Robert Rodriguez",
      "streetNumber": "3893",
      "directional": "N",
      "streetName": "N Pioneer Rd",
      "streetType": "Rd",
      "secondary": "Apt 4B",
      "city": "Pasadena",
      "state": "CA",
      "stateName": "California",
      "zipCode": "91101",
      "zipPlus4": "3653",
      "fullZip": "91101-3653",
      "county": "Los Angeles County",
      "timezone": "America/Los_Angeles",
      "latitude": 34.148734,
      "longitude": -118.127334,
      "phone": "(626) 698-2016",
      "type": "residential",
      "rdi": "Residential",
      "isDeliverable": true,
      "deliveryPoint": "73",
      "carrierRoute": "C029",
      "formattedSingleLine": "3893 N Pioneer Rd, Apt 4B, Pasadena, CA 91101-3653",
      "formattedMultiLine": "3893 N Pioneer Rd\nApt 4B\nPasadena, CA 91101-3653",
      "formattedEnvelope": "Robert Rodriguez\n3893 N Pioneer Rd\nApt 4B\nPasadena, CA 91101-3653\nUNITED STATES"
    }
  ]
}

POST Batch Generation cURL Example

curl -s -X POST "https://usaddressgenerator.org/api/v1/addresses/generate" \
  -H "Content-Type: application/json" \
  -d '{"count": 2, "stateCode": "TX", "addressType": "commercial", "zipFormat": "5digit"}'