API Documentation
Search and retrieve Florida business filing data programmatically
Overview
The Sunbiz Daily API provides read-only access to Florida business filing records. Query newly registered businesses by name, city, industry, officer, filing type, and date range. All responses are JSON.
Interactive API explorer available at /api/v1/docs/ (requires authentication).
Authentication
All API requests require an API key sent via the X-API-Key header.
API access is available to all authenticated users.
curl -H "X-API-Key: sb_your_key_here" \
https://sunbizdaily.com/api/v1/filings/
Keys use the format sb_<32 characters>. The full key is shown once at creation
time — store it securely. You can create and manage keys from your
API Keys dashboard.
Endpoints
GET /api/v1/filings/
Search and list business filings. Returns paginated results with optional filters.
curl -H "X-API-Key: sb_your_key_here" \
"https://sunbizdaily.com/api/v1/filings/?city=miami&industry=restaurant&per_page=5"Example response:
{
"filings": [
{
"corporation_number": "P24000012345",
"corporation_name": "MIAMI GRILL LLC",
"filing_type": "FLAL",
"filing_type_display": "Florida Limited Liability",
"status": "A",
"file_date": "2025-01-15",
"source_date": "2025-01-16",
"city": "MIAMI",
"state": "FL",
"zip": "33101",
"industries": ["Restaurant"],
"url": "https://sunbizdaily.com/filings/P24000012345/miami-grill-llc/"
}
],
"pagination": {
"total": 142,
"page": 1,
"per_page": 5,
"total_pages": 29
}
}GET /api/v1/filings/{corporation_number}/
Get full details for a single filing, including officers, registered agent, addresses, and industry classifications.
curl -H "X-API-Key: sb_your_key_here" \
"https://sunbizdaily.com/api/v1/filings/P24000012345/"Example response:
{
"corporation_number": "P24000012345",
"corporation_name": "MIAMI GRILL LLC",
"filing_type": "FLAL",
"filing_type_display": "Florida Limited Liability",
"status": "A",
"file_date": "2025-01-15",
"source_date": "2025-01-16",
"fei_number": "12-3456789",
"principal_address": {
"address_1": "123 BISCAYNE BLVD",
"address_2": "STE 400",
"city": "MIAMI",
"state": "FL",
"zip": "33101",
"country": "US",
"latitude": "25.7751",
"longitude": "-80.1870"
},
"mailing_address": null,
"registered_agent": {
"name": "JOHN SMITH",
"agent_type": "Person",
"address": {
"address_1": "456 FLAGLER ST",
"address_2": "",
"city": "MIAMI",
"state": "FL",
"zip": "33130",
"country": "US",
"latitude": null,
"longitude": null
}
},
"officers": [
{
"position": 1,
"name": "JOHN SMITH",
"title": "MGR",
"officer_type": "Manager"
}
],
"industries": [
{"label": "Restaurant", "is_primary": true}
],
"url": "https://sunbizdaily.com/filings/P24000012345/miami-grill-llc/"
}Query Parameters
All parameters are optional. Filters are combined with AND logic.
Multi-value parameters (like types) accept comma-separated values.
Filters
| Parameter | Type | Description | Example |
|---|---|---|---|
q |
string | Natural language search query (AI-parsed) | restaurants in miami |
corporation_name |
string | Filter by business name (substring match) | GRILL |
city |
string | Filter by city (case-insensitive) | miami |
state |
string | Filter by state code | FL |
zip |
string | Filter by ZIP code prefix | 331 |
industry |
string | Filter by AI-classified industry | restaurant |
officer_name |
string | Search by officer name | smith |
registered_agent_name |
string | Search by registered agent name | CT CORPORATION |
types |
string | Comma-separated filing type codes | DOMP,FLAL |
period |
string | Date preset: yesterday, 7d, 30d, all |
7d |
start_date |
date | Start of date range (YYYY-MM-DD) | 2025-01-01 |
end_date |
date | End of date range (YYYY-MM-DD) | 2025-01-31 |
Pagination & Sorting
| Parameter | Type | Default | Description |
|---|---|---|---|
page |
integer | 1 |
Page number (1-indexed) |
per_page |
integer | 25 |
Results per page (max 100) |
sort |
string | source_date |
Sort field (see below) |
order |
string | desc |
asc or desc |
Sortable fields: corporation_name, corporation_number,
filing_type, file_date, source_date,
city, state, zip
Rate Limits
Rate limits are enforced per API key using a sliding 1-hour window.
Every response includes rate limit headers:
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 998
When the limit is exceeded, the API returns a 429 status.
Wait for the window to reset before retrying.
Error Responses
Errors return a JSON object with error and optional detail fields.
| Status | Meaning | When |
|---|---|---|
200 |
OK | Request succeeded |
401 |
Unauthorized | Missing, invalid, or expired API key |
404 |
Not Found | Corporation number does not exist |
429 |
Too Many Requests | Rate limit exceeded |
500 |
Internal Server Error | Unexpected server error |
Example error response:
{
"error": "Rate limit exceeded.",
"detail": "1000 requests per hour."
}Get Started
Create an API key to start making requests. Free for all authenticated users.
Manage API Keys Interactive Docs