judgment-document-detail
China Judgment Document Detail API
Retrieve court, title, case number, document text and publication date using a judgment-document search result ID.
Usage Cost
25 coins/call
Quick Start
Use a unified response envelope and call directly from your backend.
https://openapi.toolkk.com/v1/judgment-document-detailcURL Example
curl --request POST \
--url 'https://openapi.toolkk.com/v1/judgment-document-detail' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "sign": "841ef7c95cd3a25b3187cf4aa193c016",\n "id": "64FA350DFE6CBB25"\n}'Python Example
import os
import requests
url = "https://openapi.toolkk.com/v1/judgment-document-detail"
payload = {
"sign": "841ef7c95cd3a25b3187cf4aa193c016",
"id": "64FA350DFE6CBB25"
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.request("POST", url, headers=headers, json=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/judgment-document-detail"
payload := []byte("{\n \"sign\": \"841ef7c95cd3a25b3187cf4aa193c016\",\n \"id\": \"64FA350DFE6CBB25\"\n}")
req, err := http.NewRequest("POST", 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 \"sign\": \"841ef7c95cd3a25b3187cf4aa193c016\",\n \"id\": \"64FA350DFE6CBB25\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/judgment-document-detail"))
.method("POST", 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/judgment-document-detail';
$payload = "{\n \"sign\": \"841ef7c95cd3a25b3187cf4aa193c016\",\n \"id\": \"64FA350DFE6CBB25\"\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
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
[
{
"court": "河北省高级人民法院",
"title": "厦门***有限公司与**侵害商标权纠纷二审民事判决书",
"caseCode": "(2015)冀民三终字第21号",
"content": "上诉人厦门***有限公司(以下简称厦门**公司)因与被上诉人**侵害商标...",
"publishDate": "2014-04-27"
}
]Examples illustrate the response structure. Actual results depend on the API response.
- Authentication
- Send X-API-Key in request headers
- Rate limit
- 60 req/min
- Timeout
- 10000 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
Fields are read from the API schema. Missing descriptions and examples are marked as unspecified.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| sign | string | Yes | 调用当日签名:对 6tj4u 与调用日期 yyyyMMdd 的拼接字符串计算 32 位 MD5。日期以供应商当日校验为准;示例仅适用于 2026-10-09,跨日需重新生成。 | 841ef7c95cd3a25b3187cf4aa193c016 |
| id | string | Yes | 裁判文书id,必填,填写法院裁判文书检索得到的一个id | 64FA350DFE6CBB25 |
Request Example
{
"sign": "841ef7c95cd3a25b3187cf4aa193c016",
"id": "64FA350DFE6CBB25"
}- Authentication
- Send X-API-Key in request headers
- Rate limit
- 60 req/min
- Timeout
- 10000 ms
Response Fields
Examples illustrate the response structure. Actual results depend on the API response.
Response Fields
Fields are read from the API schema. Missing descriptions and examples are marked as unspecified.
| Path | Type | Required | Description | Sample |
|---|---|---|---|---|
| [] | object | Unspecified | Unspecified | Unspecified |
| [].court | string | No | 法院 | 河北省高级人民法院 |
| [].title | string | No | 标题 | 厦门***有限公司与**侵害商标权纠纷二审民事判决书 |
| [].caseCode | string | No | 案号 | (2015)冀民三终字第21号 |
| [].content | string | No | 详情正文;长度与完整性以实际返回为准 | 上诉人厦门***有限公司(以下简称厦门**公司)因与被上诉人**侵害商标... |
| [].publishDate | string | No | 发布日期,不等同于裁判或开庭日期 | 2014-04-27 |
Response Example
[
{
"court": "河北省高级人民法院",
"title": "厦门***有限公司与**侵害商标权纠纷二审民事判决书",
"caseCode": "(2015)冀民三终字第21号",
"content": "上诉人厦门***有限公司(以下简称厦门**公司)因与被上诉人**侵害商标...",
"publishDate": "2014-04-27"
}
]$.rc == '0000'API overview
Capabilities, use cases, limitations, and frequently asked questions.
What the API provides
Retrieve details of a China judgment document identified by an associated search result ID. Records can contain court, title, case number, document text and publication date. Use the endpoint to expand a located search record into a reading view. Read the title together with the text rather than inferring an outcome from the title alone.
Where to use it
Case information tools can display a court and case number, company information pages can open a selected document, and research systems can link IDs to text. Summaries, keyword extraction, similar-case recommendations and entity matching must be implemented by the application. The endpoint does not predict judgments or calculate risk scores.
Calling and interpreting results
Obtain a detail ID from the matching judgment search, generate the current-day sign value according to the request rules, and submit both by POST. Do not substitute a case number or company name for id, or mix IDs from different record types. Check the business response code before reading the data array. Display the returned fields and preserve missing values.
Scope and limitations
The public response has no separate judgment date, effective date, appeal status, outcome label or attachment URL. Do not infer these from the publication date. Text length, redaction and availability depend on the actual response; the sample demonstrates structure. NO_RESULTS means no usable detail for that ID. Verify important conclusions against the original document and later records rather than treating one document as an entity’s entire litigation history.
Frequently asked questions
Can I search directly by case number?
No. Supply a detail ID from the associated search. The case number is an output field here.