Folio provides structured API access to US intellectual property data. Query Delaware entity formations, USPTO trademarks, patent and trademark assignments, and TTAB proceedings from a single, consistent REST API.
All responses are JSON. Endpoints follow REST conventions with predictable pagination, error handling, and rate limiting.
All endpoints except /v1/health require an X-API-Key header. You can get a free API key from the pricing section of the homepage.
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/health"
Requests without a valid key receive a 401 Unauthorized response.
Rate limits are applied per API key. Exceeding your tier's limits returns 429 Too Many Requests with a Retry-After header.
| Tier | Requests/sec | Daily Limit | Formation Lookback |
|---|---|---|---|
| Free | 1 |
50 |
-- |
| Pro ($49/mo) | 5 |
5,000 |
24 hours |
| Business ($199/mo) | 20 |
50,000 |
7 days |
| Enterprise | Custom | Custom | 30 days |
The Formation Lookback column indicates the maximum lookback window for the /v1/delaware/entities/recent endpoint. Free-tier keys cannot access this endpoint.
List endpoints return results in an envelope with pagination metadata:
{
"results": [...],
"total": 142,
"limit": 50,
"offset": 0,
"data_freshness": "2026-04-10"
}
The data_freshness field (present on trademark, TTAB, and assignment endpoints) indicates the date of the most recent USPTO bulk data ingestion. Delaware endpoints return live ICIS data and do not include this field.
Errors return an appropriate HTTP status code with a JSON body:
{
"error": "at least one of owner_name, mark_name, or serial_number is required"
}
Common status codes: 400 (bad request), 401 (missing or invalid API key), 403 (tier restriction), 404 (not found), 429 (rate limit exceeded), 502 (upstream failure).
Real-time access to Delaware ICIS (Division of Corporations) entity data. Search by name or file number, or fetch a single entity by file number.
Search Delaware entities by name. Returns entities matching the query string with prefix matching.
| Parameter | Type | Required | Description |
|---|---|---|---|
| q | string | Required | Search query (min 2 characters) |
| limit | integer | Optional | Results per page (default 50, max 50) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/delaware/entities/search?q=APPLE+INC&limit=2"
{
"results": [
{
"file_number": 3284654,
"entity_name": "APPLE INC.",
"formation_date": "1977-01-03",
"entity_kind": "Corporation",
"entity_type": "General",
"residency": "Domestic",
"registered_agent": {
"name": "CORPORATION TRUST COMPANY, THE",
"address": "1209 ORANGE ST",
"city": "WILMINGTON",
"state": "DE",
"zip": "19801"
},
"cached": true,
"last_verified": "2026-04-10T14:22:00Z"
}
],
"total": 12,
"limit": 2,
"offset": 0
}
Look up a single Delaware entity by its ICIS file number.
| Parameter | Type | Required | Description |
|---|---|---|---|
| file_number | integer | Required | Delaware entity file number (path parameter) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/delaware/entities/3284654"
{
"file_number": 3284654,
"entity_name": "APPLE INC.",
"formation_date": "1977-01-03",
"entity_kind": "Corporation",
"entity_type": "General",
"residency": "Domestic",
"registered_agent": {
"name": "CORPORATION TRUST COMPANY, THE",
"address": "1209 ORANGE ST",
"city": "WILMINGTON",
"state": "DE",
"zip": "19801"
},
"cached": true,
"last_verified": "2026-04-10T14:22:00Z"
}
List recently formed Delaware entities. The lookback window is gated by your API tier -- free-tier keys cannot access this endpoint. See the rate limits table for per-tier lookback limits.
| Parameter | Type | Required | Description |
|---|---|---|---|
| since | string | Required | Earliest formation date (YYYY-MM-DD). Must be within your tier's lookback limit. |
| limit | integer | Optional | Results per page (default 50, max 50) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/delaware/entities/recent?since=2026-04-09&limit=5"
{
"results": [
{
"file_number": 10567234,
"entity_name": "HORIZON MERGER SUB, INC.",
"formation_date": "2026-04-09",
"entity_kind": "Corporation",
"entity_type": "General",
"residency": "Domestic",
"registered_agent": {
"name": "CORPORATION SERVICE COMPANY",
"address": "251 LITTLE FALLS DRIVE",
"city": "WILMINGTON",
"state": "DE",
"zip": "19808"
},
"cached": true,
"last_verified": "2026-04-10T08:15:00Z"
}
],
"total": 847,
"limit": 5,
"offset": 0
}
Registered agent frequency statistics across Delaware entities. Coming soon.
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/delaware/agents/stats"
Search and retrieve USPTO trademark data. The trademark database is updated daily from USPTO bulk data files.
Search trademarks by owner name, mark text, or serial number. At least one search parameter is required.
| Parameter | Type | Required | Description |
|---|---|---|---|
| owner_name | string | At least one | Trademark owner name (partial match) |
| mark_name | string | At least one | Mark text to search for (partial match) |
| serial_number | string | At least one | USPTO serial number |
| status_alive_only | boolean | Optional | Set to true to exclude dead marks |
| intl_class | string | Optional | International trademark classification code |
| filing_date_from | string | Optional | Earliest filing date (YYYY-MM-DD or YYYYMMDD) |
| filing_date_to | string | Optional | Latest filing date (YYYY-MM-DD or YYYYMMDD) |
| limit | integer | Optional | Results per page (default 50, max 100) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/trademarks/search?owner_name=Apple+Inc&status_alive_only=true&limit=2"
{
"results": [
{
"serial_number": "97120345",
"mark_text": "APPLE VISION PRO",
"status_code": "800",
"filing_date": "2022-09-12",
"transaction_date": "2024-01-15",
"owners": ["Apple Inc."]
}
],
"total": 847,
"limit": 2,
"offset": 0,
"data_freshness": "2026-04-10"
}
Get full details for a single trademark by its serial number, including owners, classifications, design search codes, and statements.
| Parameter | Type | Required | Description |
|---|---|---|---|
| serial_number | string | Required | USPTO serial number (path parameter) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/trademarks/97120345"
{
"serial_number": "97120345",
"mark_text": "APPLE VISION PRO",
"status_code": "800",
"filing_date": "2022-09-12",
"registration_number": "7234567",
"registration_date": "2024-01-15",
"transaction_date": "2024-01-15",
"attorney_name": "J. SMITH",
"owners": [
{
"owner_name": "Apple Inc.",
"city": "Cupertino",
"state": "CA",
"country": "US"
}
],
"classifications": ["009", "042"],
"data_freshness": "2026-04-10"
}
Get the event and transaction history for a trademark. Events are ordered by date descending.
| Parameter | Type | Required | Description |
|---|---|---|---|
| serial_number | string | Required | USPTO serial number (path parameter) |
| limit | integer | Optional | Results per page (default 50, max 100) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/trademarks/97120345/events?limit=3"
{
"serial_number": "97120345",
"latest_transaction_date": "2024-01-15",
"events": [
{
"transaction_date": "2024-01-15",
"type_code": "REGISTERED",
"text": "Registration certificate issued"
},
{
"transaction_date": "2023-06-20",
"type_code": "PUBLISHED",
"text": "Published for opposition"
}
],
"total": 8,
"limit": 3,
"offset": 0,
"data_freshness": "2026-04-10"
}
Search trademark and patent assignment records from USPTO bulk data files. These are historical chain-of-title records showing ownership transfers.
Search trademark assignment records. At least one of serial_number, party_name, or conv_group is required.
Historical dataset: trademark assignments 1952--2023. Updated annually.
| Parameter | Type | Required | Description |
|---|---|---|---|
| serial_number | string | At least one | Trademark serial number |
| party_name | string | At least one | Assignor or assignee name (partial match) |
| conv_group | string | At least one | Conveyance group (e.g., "assignment", "merger") |
| date_from | string | Optional | Earliest record date (YYYY-MM-DD or YYYYMMDD) |
| date_to | string | Optional | Latest record date (YYYY-MM-DD or YYYYMMDD) |
| limit | integer | Optional | Results per page (default 50, max 100) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/trademarks/historical/assignments?party_name=Pfizer&limit=1"
{
"results": [
{
"reel_frame": "5678/0001",
"record_date": "2020-03-15",
"conveyances": ["assignment"],
"assignors": [
{
"party_name": "ARENA PHARMACEUTICALS, INC.",
"city": "San Diego",
"state": "CA"
}
],
"assignees": [
{
"party_name": "PFIZER INC.",
"city": "New York",
"state": "NY"
}
],
"serial_numbers": ["88123456", "88123457"]
}
],
"total": 234,
"limit": 1,
"offset": 0,
"coverage_note": "Historical trademark assignment data from USPTO bulk files"
}
Search patent assignment records. At least one of patent_number, application_number, or party_name is required.
Historical dataset: patent assignments 1970--2024. Updated annually.
| Parameter | Type | Required | Description |
|---|---|---|---|
| patent_number | string | At least one | Patent number |
| application_number | string | At least one | Patent application number |
| party_name | string | At least one | Assignor or assignee name (partial match) |
| convey_type | string | Optional | Conveyance type filter |
| date_from | string | Optional | Earliest record date (YYYY-MM-DD or YYYYMMDD) |
| date_to | string | Optional | Latest record date (YYYY-MM-DD or YYYYMMDD) |
| limit | integer | Optional | Results per page (default 50, max 100) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/patents/historical/assignments?party_name=Google+LLC&limit=1"
{
"results": [
{
"reel_frame": "048123/0456",
"record_date": "2019-06-01",
"convey_type": "ASSIGNMENT OF ASSIGNORS INTEREST",
"assignors": [
{
"party_name": "DOE, JOHN",
"city": "Mountain View",
"state": "CA"
}
],
"assignees": [
{
"party_name": "GOOGLE LLC",
"city": "Mountain View",
"state": "CA"
}
],
"patent_numbers": ["10234567"],
"application_numbers": ["16/123456"]
}
],
"total": 15432,
"limit": 1,
"offset": 0,
"coverage_note": "Historical patent assignment data from USPTO bulk files"
}
Search and retrieve Trademark Trial and Appeal Board (TTAB) proceedings, including opposition and cancellation actions.
Search TTAB proceedings. At least one of serial_number, party_name, or proceeding_number is required.
| Parameter | Type | Required | Description |
|---|---|---|---|
| serial_number | string | At least one | Trademark serial number involved in the proceeding |
| party_name | string | At least one | Party name (partial match) |
| proceeding_number | string | At least one | TTAB proceeding number |
| limit | integer | Optional | Results per page (default 50, max 100) |
| offset | integer | Optional | Pagination offset (default 0) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/ttab/proceedings?party_name=Nike&limit=1"
{
"results": [
{
"proceeding_number": "91234567",
"transaction_date": "2023-11-01",
"type_code": "OPP",
"filing_date": "2023-05-15",
"status_code": "ACT"
}
],
"total": 23,
"limit": 1,
"offset": 0,
"data_freshness": "2026-04-10"
}
Get full details for a TTAB proceeding, including all parties and their associated marks.
| Parameter | Type | Required | Description |
|---|---|---|---|
| proceeding_number | string | Required | TTAB proceeding number (path parameter) |
curl -H "X-API-Key: fo_live_abc123" \
"https://folioapi.com/v1/ttab/proceedings/91234567"
{
"proceeding_number": "91234567",
"transaction_date": "2023-11-01",
"type_code": "OPP",
"filing_date": "2023-05-15",
"status_code": "ACT",
"parties": [
{
"role_code": "P",
"party_name": "NIKE, INC.",
"serial_number": "73000001",
"mark_text": "JUST DO IT"
},
{
"role_code": "D",
"party_name": "ACME SPORTSWEAR LLC",
"serial_number": "97654321",
"mark_text": "JUST DID IT"
}
],
"data_freshness": "2026-04-10"
}
Health check endpoint. No authentication required.
curl "https://folioapi.com/v1/health"
{
"status": "ok"
}