Retrieve Jurisdiction
curl --request GET \
--url https://api.signa.so/v1/jurisdictions/{code} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.signa.so/v1/jurisdictions/{code}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.signa.so/v1/jurisdictions/{code}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.signa.so/v1/jurisdictions/{code}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.signa.so/v1/jurisdictions/{code}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.signa.so/v1/jurisdictions/{code}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.signa.so/v1/jurisdictions/{code}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"code": "EU",
"object": "jurisdiction",
"name": "European Union",
"office_code": "EM",
"office_status": "live",
"scope_type": "regional",
"madrid_member": true,
"member_jurisdictions": ["AT", "BE", "BG", "HR", "CY", "CZ", "DK", "EE", "FI", "FR", "DE", "GR", "HU", "IE", "IT", "LV", "LT", "LU", "MT", "NL", "PL", "PT", "RO", "SK", "SI", "ES", "SE"],
"wipo_contracting_party_code": "EM"
}
Jurisdictions
Retrieve Jurisdiction
Retrieve a single jurisdiction with Madrid Protocol membership details
GET
/
v1
/
jurisdictions
/
{code}
Retrieve Jurisdiction
curl --request GET \
--url https://api.signa.so/v1/jurisdictions/{code} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.signa.so/v1/jurisdictions/{code}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.signa.so/v1/jurisdictions/{code}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.signa.so/v1/jurisdictions/{code}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.signa.so/v1/jurisdictions/{code}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.signa.so/v1/jurisdictions/{code}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.signa.so/v1/jurisdictions/{code}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"code": "EU",
"object": "jurisdiction",
"name": "European Union",
"office_code": "EM",
"office_status": "live",
"scope_type": "regional",
"madrid_member": true,
"member_jurisdictions": ["AT", "BE", "BG", "HR", "CY", "CZ", "DK", "EE", "FI", "FR", "DE", "GR", "HU", "IE", "IT", "LV", "LT", "LU", "MT", "NL", "PL", "PT", "RO", "SK", "SI", "ES", "SE"],
"wipo_contracting_party_code": "EM"
}
Overview
Returns a single jurisdiction record. For regional jurisdictions like the EU, the response includes the member jurisdictions. For Madrid Protocol members, the WIPO contracting party code is included so you can map between national filings and Madrid designations.Path Parameters
string
required
Jurisdiction code (e.g.
US, EU, GB, DE).Response
This endpoint is publicly cacheable, so the response never includesrequest_id.
string
Jurisdiction code.
string
Always
jurisdiction.string
Jurisdiction name.
string | null
Office code for this jurisdiction’s trademark office, or
null when office_status is not live.string
live when the office connection is shipping data, roadmap when an office is planned but not yet live, not_covered when no office is associated with this jurisdiction.string
national, regional, or international.boolean
Whether the jurisdiction is a Madrid Protocol member.
string[] | null
For regional jurisdictions, the list of member country codes.
null for jurisdictions with no members list.string | null
WIPO contracting party code for Madrid filings, or
null when not applicable.{
"code": "EU",
"object": "jurisdiction",
"name": "European Union",
"office_code": "EM",
"office_status": "live",
"scope_type": "regional",
"madrid_member": true,
"member_jurisdictions": ["AT", "BE", "BG", "HR", "CY", "CZ", "DK", "EE", "FI", "FR", "DE", "GR", "HU", "IE", "IT", "LV", "LT", "LU", "MT", "NL", "PL", "PT", "RO", "SK", "SI", "ES", "SE"],
"wipo_contracting_party_code": "EM"
}
Code Examples
curl "https://api.signa.so/v1/jurisdictions/EU" \
-H "Authorization: Bearer sig_YOUR_KEY"
import { Signa } from "@signa-so/sdk";
const signa = new Signa({ api_key: process.env.SIGNA_API_KEY });
const jurisdiction = await signa.references.jurisdiction("EU");
Errors
| Status | Type | Description |
|---|---|---|
| 401 | unauthorized | Missing or invalid API key |
| 403 | forbidden | API key missing the trademarks:read scope |
| 404 | not_found | Jurisdiction code not recognized |
Related Endpoints
- List Jurisdictions
- Retrieve Office
- Deadline Rules, maintenance rules across all jurisdictions
- Opposition Rules, third-party opposition windows
- Madrid Protocol guide