Skip to main content
GET
/
v1
/
trademarks
/
{id}
/
coverage
Trademark Coverage
curl --request GET \
  --url https://api.example.com/v1/trademarks/{id}/coverage
{
  "object": "list",
  "data": [
    {
      "territory_code": "US",
      "territory_name": "United States",
      "protection_status": "protected",
      "designation_date": "2024-03-15",
      "protection_date": "2025-01-21",
      "refusal_date": null,
      "status_effective_date": "2025-01-21",
      "is_subsequent_designation": false,
      "designation_protocol": "p",
      "goods_limitations": null,
      "status_detail": null
    },
    {
      "territory_code": "DE",
      "territory_name": "Germany",
      "protection_status": "provisionally_refused",
      "designation_date": "2024-03-15",
      "protection_date": null,
      "refusal_date": "2024-09-02",
      "status_effective_date": "2024-09-02",
      "is_subsequent_designation": false,
      "designation_protocol": "p",
      "goods_limitations": null,
      "status_detail": "Likelihood of confusion with prior right"
    }
  ],
  "has_more": false,
  "pagination": { "cursor": null },
  "livemode": true,
  "request_id": "req_xyz"
}

Overview

Lists the territories designated under a Madrid Protocol International Registration and the per-territory protection status. This endpoint is meaningful only for marks with filing_route = madrid_ir. For non-Madrid marks the response is an empty list. Use this to see which jurisdictions an IR currently covers, what each one’s status is, and when each designation was made or refused.

Path Parameters

id
string
required
Trademark ID (tm_...).

Query Parameters

protection_status
string
Filter by per-territory protection status. One of designated, provisionally_refused, finally_refused, protected, withdrawn, renounced, ceased, invalidated, limited, expired.
limit
integer
default:"20"
Page size (1-100).
cursor
string
Pagination cursor from a previous response.

Response

data
object[]
Array of coverage records.
data[].territory_code
string
Two-letter ISO territory code (e.g. US, DE, JP).
data[].territory_name
string
Human-readable territory name.
data[].protection_status
string
Current protection status in the territory.
data[].designation_date
string
ISO date the territory was first designated.
data[].protection_date
string
ISO date protection took effect, when granted.
data[].refusal_date
string
ISO date of refusal, when applicable.
data[].status_effective_date
string
ISO date the current protection status became effective.
data[].is_subsequent_designation
boolean
true when this territory was added after the original IR filing.
data[].designation_protocol
string
Madrid Protocol article under which the designation was made.
data[].goods_limitations
string
Free-text limitation of the goods/services list for this territory, when applicable.
data[].status_detail
string
Additional status detail or office note.
{
  "object": "list",
  "data": [
    {
      "territory_code": "US",
      "territory_name": "United States",
      "protection_status": "protected",
      "designation_date": "2024-03-15",
      "protection_date": "2025-01-21",
      "refusal_date": null,
      "status_effective_date": "2025-01-21",
      "is_subsequent_designation": false,
      "designation_protocol": "p",
      "goods_limitations": null,
      "status_detail": null
    },
    {
      "territory_code": "DE",
      "territory_name": "Germany",
      "protection_status": "provisionally_refused",
      "designation_date": "2024-03-15",
      "protection_date": null,
      "refusal_date": "2024-09-02",
      "status_effective_date": "2024-09-02",
      "is_subsequent_designation": false,
      "designation_protocol": "p",
      "goods_limitations": null,
      "status_detail": "Likelihood of confusion with prior right"
    }
  ],
  "has_more": false,
  "pagination": { "cursor": null },
  "livemode": true,
  "request_id": "req_xyz"
}

Code Examples

curl "https://api.signa.so/v1/trademarks/tm_abc123/coverage?protection_status=protected" \
  -H "Authorization: Bearer sig_live_YOUR_KEY_HERE"

Errors

StatusTypeDescription
400validation_errorInvalid query parameter or trademark ID
401unauthorizedMissing or invalid API key
404not_foundTrademark not found
429rate_limitedToo many requests