Skip to main content
GET
/
v1
/
firms
List Firms
curl --request GET \
  --url https://api.example.com/v1/firms
{
  "object": "list",
  "data": [
    {
      "id": "firm_2kLm9X",
      "object": "firm",
      "canonical_name": "Smith & Associates LLP",
      "display_name": "Smith & Associates LLP",
      "country_code": "US",
      "attorney_count": 42,
      "trademark_count": 15823,
      "registration_rate": 0.78,
      "latest_filing": "2026-04-08",
      "created_at": "2024-09-12T11:42:01Z"
    }
  ],
  "has_more": true,
  "pagination": { "cursor": "eyJpZCI6..." },
  "livemode": true,
  "request_id": "req_xyz"
}

Overview

Returns a paginated list of law firms derived from attorney affiliations on ingested trademarks. Filter by country, attorney count, filing volume, and sort by activity metrics.

Query Parameters

q
string
Case-insensitive substring search on firm name.
country_code
string
ISO 3166-1 alpha-2 country code filter.
min_attorneys
integer
Minimum number of attorneys at the firm.
min_filings
integer
Minimum number of trademark filings handled.
sort
string
default:"-trademark_count"
Sort field. One of -trademark_count, trademark_count, -attorney_count, attorney_count, -registration_rate, registration_rate, -name, name.
limit
integer
default:"20"
Page size (1-50).
cursor
string
Pagination cursor from a previous response.

Response

data
object[]
Array of firm summary records.
data[].id
string
Firm ID (firm_...).
data[].canonical_name
string
Normalized firm name.
data[].display_name
string
Original display name as it appears on records.
data[].country_code
string
Two-letter country code.
data[].attorney_count
integer
Number of distinct attorneys at the firm.
data[].trademark_count
integer
Total trademarks handled by the firm’s attorneys.
data[].registration_rate
number
Share of handled marks that reached registered status (0-1).
data[].latest_filing
string
ISO date of the most recent filing handled.
data[].created_at
string
ISO 8601 timestamp when this firm record was created.
{
  "object": "list",
  "data": [
    {
      "id": "firm_2kLm9X",
      "object": "firm",
      "canonical_name": "Smith & Associates LLP",
      "display_name": "Smith & Associates LLP",
      "country_code": "US",
      "attorney_count": 42,
      "trademark_count": 15823,
      "registration_rate": 0.78,
      "latest_filing": "2026-04-08",
      "created_at": "2024-09-12T11:42:01Z"
    }
  ],
  "has_more": true,
  "pagination": { "cursor": "eyJpZCI6..." },
  "livemode": true,
  "request_id": "req_xyz"
}

Code Examples

curl "https://api.signa.so/v1/firms?country_code=US&min_filings=500&sort=-trademark_count&limit=20" \
  -H "Authorization: Bearer sig_live_YOUR_KEY_HERE"

Errors

StatusTypeDescription
400validation_errorInvalid query parameter
401unauthorizedMissing or invalid API key
429rate_limitedToo many requests