Building with the Hum API
The Hum API provides endpoints for discovering available internet service providers, plans, and pricing at addresses in the United States. With a single API call, you can retrieve available internet options for an address and immediately display them to your users. The partner API provides availability lookup and reporting. Residents place orders through the Hum widget checkout; the partner API does not provide an order-placement endpoint.The Hum API returns provider data immediately in the session creation response - no polling or additional requests required.
Integration Overview
Integrating with Hum is a simple three-step process:- Authenticate with your API key
- Create a session with the service address
- Display results from the immediate response
Quick Start Guide
Start in Sandbox with the examples below. To go live, switch the base URL tohttps://api.letshum.com and use your Production key; see Environments and API Keys.
1
Get Your API Key
See Environments and API Keys to request an API key and choose the matching environment.
2
Create a Session and Get Immediate Results
Make a POST request to create a session with the service address. The API returns all available providers immediately in the response.
cURL
Success Response
Verify the response includes
request_status: "ok" and provider data in the data array.3
Display Available Internet Plans
The session creation response includes all available providers and their offerings. You can immediately display this information to your users:
- Provider name and contact details
- Available plans with speeds and pricing
- Direct links to provider signup pages
- Technology types (DSL, Cable, Fiber, etc.)
Optional: Retrieve Session Details Later
If you need to retrieve session information later, you can use the session token:cURL
data object contains only the session token:
Session Details Response
GET /sessions/{token}/services/internet. See Get Internet Service Availability in the API Reference.
Session Lifecycle
Sessions stay open until you close them withDELETE /sessions/{token}. Close a session when its lookup is finished; see Close Session.
Authentication
All API requests require authentication using your API key. Include it in the Authorization header:GET /ping as the safest first call before creating a session. It verifies that the selected environment accepts your key; see Environments and API Keys.
Error Handling
The API uses HTTP status codes to indicate success or failure. Standard validation, authentication, and session errors return this format:Error Response Format
errors object with field-specific details.
Successful session metadata identifies the Hum data set with a numeric string such as "26011015". Infrastructure responses such as HTTP 415, 429, and 500 use the formats documented in the API Reference.
Common Error Scenarios
400 Bad Request
400 Bad Request
Common causes:
- Missing session parameters
- Unpermitted session parameters
- Invalid session token
415 Unsupported Media Type
415 Unsupported Media Type
Common causes:
- Unsupported or incorrect request content type
Content-Type: application/json.422 Unprocessable Entity - Validation Failed
422 Unprocessable Entity - Validation Failed
Common causes:Resolution: Use the
- Missing a valid address combination:
street1+zip,street1+city+state, orstreet1+city+zip - Invalid address, state, or ZIP format
Example
errors object to correct the address fields before retrying.429 Too Many Requests - Rate Limiting
429 Too Many Requests - Rate Limiting
Common causes:
- Rate limit exceeded
Retry-After header before retrying.500 Internal Server Error - Server Issues
500 Internal Server Error - Server Issues
Common causes:
- Unexpected server-side failure
Best Practices
Address Validation
Provide accurate address data upfront to ensure the best results. Include complete address details including street number, street name, city, state, and ZIP code.
Error Handling
Implement robust error handling for common scenarios like invalid addresses, no service availability, or API rate limits.
Session Management
Store and manage session tokens appropriately. Each session represents a unique address lookup, and tokens can be used to retrieve session details later.
Performance Optimization
Consider caching provider data for frequently requested addresses to improve response times and reduce API calls.
Example Integration
Here’s a complete example showing how to integrate the Hum API in different programming languages:Next Steps
API Reference
Explore detailed endpoint documentation, parameter specifications, and response schemas.
Postman Collection
Import ready-made requests for Sandbox or Production.
Widget Integration
Try our no-code widget solution for quick integration without custom development.
