trademark-search
Trademark Search
Paginated search for public trademark registration information including name, registration number, international class, and status via keywords, suitable for company name verification and preliminary search reference.
Usage Cost
10 coins/call
Quick Start
Use a unified response envelope and call directly from your backend.
https://openapi.toolkk.com/v1/trademark-searchcURL Example
curl --request GET \
--url 'https://openapi.toolkk.com/v1/trademark-search' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "keyword": "华为",\n "pagenum": 1,\n "pagesize": 10,\n "ismatch": 0\n}'Python Example
import os
import requests
url = "https://openapi.toolkk.com/v1/trademark-search"
payload = {
"keyword": "华为",
"pagenum": 1,
"pagesize": 10,
"ismatch": 0
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.get(url, headers=headers, params=payload, timeout=30)
response.raise_for_status()
print(response.json())Go Example
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/trademark-search"
payload := []byte("{\n \"keyword\": \"华为\",\n \"pagenum\": 1,\n \"pagesize\": 10,\n \"ismatch\": 0\n}")
req, err := http.NewRequest("GET", endpoint, bytes.NewBuffer(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
}Java Example
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class ToolkkExample {
public static void main(String[] args) throws Exception {
String payload = "{\n \"keyword\": \"华为\",\n \"pagenum\": 1,\n \"pagesize\": 10,\n \"ismatch\": 0\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/trademark-search"))
.method("GET", HttpRequest.BodyPublishers.ofString(payload))
.header("Content-Type", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}PHP Example
<?php
$endpoint = 'https://openapi.toolkk.com/v1/trademark-search';
$payload = "{\n \"keyword\": \"华为\",\n \"pagenum\": 1,\n \"pagesize\": 10,\n \"ismatch\": 0\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY',
],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($ch);
if ($response === false) {
throw new RuntimeException(curl_error($ch));
}
curl_close($ch);
echo $response;Response Example
{
"status": 0,
"msg": "ok",
"result": {
"keyword": "华为",
"pagenum": "1",
"pagesize": "10",
"total": "1",
"list": [
{
"name": "示例商标",
"regno": "1234****",
"classid": "9",
"status": "注册申请完成"
}
]
}
}Examples illustrate the response structure. Actual results depend on the API response.
- Authentication
- Send X-API-Key in request headers
- Rate limit
- 30 req/min
- Timeout
- 15000 ms
Send your API Key in the X-API-Key header from your backend.
Check both HTTP status and business fields before treating a call as successful.
Use retries and backoff together with rate limits in high-frequency scenarios.
Request Fields
Send requests from your server with the key in the X-API-Key header.
Request Fields
The fields below are derived from example JSON for integration reference only.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| keyword | string | Unspecified | Unspecified | 华为 |
| pagenum | number | Unspecified | Unspecified | 1 |
| pagesize | number | Unspecified | Unspecified | 10 |
| ismatch | number | Unspecified | Unspecified | 0 |
Request Example
{
"keyword": "华为",
"pagenum": 1,
"pagesize": 10,
"ismatch": 0
}- Authentication
- Send X-API-Key in request headers
- Rate limit
- 30 req/min
- Timeout
- 15000 ms
Response Fields
Examples illustrate the response structure. Actual results depend on the API response.
Response Fields
The fields below are derived from example JSON for integration reference only.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| status | number | Unspecified | Unspecified | 0 |
| msg | string | Unspecified | Unspecified | ok |
| result | object | Unspecified | Unspecified | {...} |
| result.keyword | string | Unspecified | Unspecified | 华为 |
| result.pagenum | string | Unspecified | Unspecified | 1 |
| result.pagesize | string | Unspecified | Unspecified | 10 |
| result.total | string | Unspecified | Unspecified | 1 |
| result.list | array | Unspecified | Unspecified | [{"name":"示例商标","regno":"1234****","classid":"9","status":"注册申请完成"}] |
| result.list[] | object | Unspecified | Unspecified | {...} |
Response Example
{
"status": 0,
"msg": "ok",
"result": {
"keyword": "华为",
"pagenum": "1",
"pagesize": "10",
"total": "1",
"list": [
{
"name": "示例商标",
"regno": "1234****",
"classid": "9",
"status": "注册申请完成"
}
]
}
}API overview
Capabilities, use cases, limitations, and frequently asked questions.
API Capabilities
This API provides retrieval services for public trademark registration information. It supports paginated keyword searches for detailed trademark information, including trademark name, registration number, international class (classes 1-45), application status (e.g., registration application completed, substantive examination, etc.), and applicant information.
Request and Response
- Request Parameters: Requires
keyword(search keyword, e.g., company name or trademark name),pagenum(current page number),pagesize(items per page), andismatch(matching mode). - Response Result: Returns a list of matching trademarks, including the total number of records (
total) and specific trademark entries (name, registration number, class ID, current status, etc.).
Use Cases
- Enterprise Service Platforms: Provide preliminary trademark name verification tools in business processes such as company registration and brand planning.
- Intellectual Property Management: Assist businesses or agencies in quickly searching for trademark registration status for specific keywords and understanding industry brand layouts.