shipping-address-parse
快遞地址解析
從一段雜亂文本中智能識別中國快遞收件資訊:姓名、手機號碼、身分證、郵遞區號、省/市/區、詳細地址。支援單筆與批次(≤200 筆/次),批次可按手機號碼 / 姓名去重。
呼叫價格
1 匠幣/次
快速接入
保持統一返回結構,直接透過服務端發起請求即可接入。
https://openapi.toolkk.com/v1/shipping-address-parsecURL 示例
curl --request POST \
--url 'https://openapi.toolkk.com/v1/shipping-address-parse' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "addresses": [\n "张三 13800138000 广东省深圳市南山区科技园路 1 号 518000",\n "李四 13900139000 北京市朝阳区建国路 88 号"\n ],\n "dedup": "phone"\n}'Python 示例
import os
import requests
url = "https://openapi.toolkk.com/v1/shipping-address-parse"
payload = {
"addresses": [
"张三 13800138000 广东省深圳市南山区科技园路 1 号 518000",
"李四 13900139000 北京市朝阳区建国路 88 号"
],
"dedup": "phone"
}
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 示例
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/shipping-address-parse"
payload := []byte("{\n \"addresses\": [\n \"张三 13800138000 广东省深圳市南山区科技园路 1 号 518000\",\n \"李四 13900139000 北京市朝阳区建国路 88 号\"\n ],\n \"dedup\": \"phone\"\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 示例
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 \"addresses\": [\n \"张三 13800138000 广东省深圳市南山区科技园路 1 号 518000\",\n \"李四 13900139000 北京市朝阳区建国路 88 号\"\n ],\n \"dedup\": \"phone\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/shipping-address-parse"))
.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 示例
<?php
$endpoint = 'https://openapi.toolkk.com/v1/shipping-address-parse';
$payload = "{\n \"addresses\": [\n \"张三 13800138000 广东省深圳市南山区科技园路 1 号 518000\",\n \"李四 13900139000 北京市朝阳区建国路 88 号\"\n ],\n \"dedup\": \"phone\"\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;響應示例
{
"code": "SUCCESS",
"message": "success",
"data": {
"count": 2,
"originalCount": 2,
"removed": 0,
"items": [
{
"name": "张三",
"mobile": "13800138000",
"idn": null,
"postcode": "518000",
"province": "广东省",
"city": "深圳市",
"region": "南山区",
"street": "科技园路1号",
"original": "张三 13800138000 广东省深圳市南山区科技园路 1 号 518000"
},
{
"name": "李四",
"mobile": "13900139000",
"idn": null,
"postcode": null,
"province": "北京市",
"city": "北京市",
"region": "朝阳区",
"street": "建国路88号",
"original": "李四 13900139000 北京市朝阳区建国路 88 号"
}
]
}
}範例用於理解回傳結構,實際結果以介面回傳為準。
- 鑑權方式
- 請求頭傳入 X-API-Key
- 預設限流
- 600 次/分鐘
- 超時時間
- 未標註
服務端呼叫時,將 API Key 放在 X-API-Key 請求頭中。
建議按 response code 與業務欄位雙重判斷呼叫結果。
高頻呼叫場景請結合速率限制與重試策略使用。
請求欄位
從伺服器發起請求,並在 X-API-Key 標頭中傳入金鑰。
請求欄位
以下欄位根據示例 JSON 自動提取,僅作接入參考。
| 欄位路徑 | 型別 | 必填 | 說明 | 示例值 |
|---|---|---|---|---|
| addresses | array | 未標註 | 未標註 | ["张三 13800138000 广东省深圳市南山区科技园路 1 号 518000","李四 13900139000 北京市朝阳区建国路 88 号"] |
| addresses[] | string | 未標註 | 未標註 | 张三 13800138000 广东省深圳市南山区科技园路 1 号 518000 |
| dedup | string | 未標註 | 未標註 | phone |
請求示例
{
"addresses": [
"张三 13800138000 广东省深圳市南山区科技园路 1 号 518000",
"李四 13900139000 北京市朝阳区建国路 88 号"
],
"dedup": "phone"
}- 鑑權方式
- 請求頭傳入 X-API-Key
- 預設限流
- 600 次/分鐘
- 超時時間
- 未標註
響應欄位
範例用於理解回傳結構,實際結果以介面回傳為準。
響應欄位
以下欄位根據示例 JSON 自動提取,僅作接入參考。
| 欄位路徑 | 型別 | 必填 | 說明 | 示例值 |
|---|---|---|---|---|
| code | string | 未標註 | 未標註 | SUCCESS |
| message | string | 未標註 | 未標註 | success |
| data | object | 未標註 | 未標註 | {...} |
| data.count | number | 未標註 | 未標註 | 2 |
| data.originalCount | number | 未標註 | 未標註 | 2 |
| data.removed | number | 未標註 | 未標註 | 0 |
| data.items | array | 未標註 | 未標註 | [{"name":"张三","mobile":"13800138000","idn":null,"postcode":"518000","province":"广东省","city":"深圳市","region":"南山区","street":"科技园路1号","original":"张三 13800138000 广东省深圳市南山区科技园路 1 号 518000"},{"name":"李四","mobile":"13900139000","idn":null,"postcode":null,"province":"北京市","city":"北京市","region":"朝阳区","street":"建国路88号","original":"李四 13900139000 北京市朝阳区建国路 88 号"}] |
| data.items[] | object | 未標註 | 未標註 | {...} |
響應示例
{
"code": "SUCCESS",
"message": "success",
"data": {
"count": 2,
"originalCount": 2,
"removed": 0,
"items": [
{
"name": "张三",
"mobile": "13800138000",
"idn": null,
"postcode": "518000",
"province": "广东省",
"city": "深圳市",
"region": "南山区",
"street": "科技园路1号",
"original": "张三 13800138000 广东省深圳市南山区科技园路 1 号 518000"
},
{
"name": "李四",
"mobile": "13900139000",
"idn": null,
"postcode": null,
"province": "北京市",
"city": "北京市",
"region": "朝阳区",
"street": "建国路88号",
"original": "李四 13900139000 北京市朝阳区建国路 88 号"
}
]
}
}介面簡介
介面功能、應用情境、使用限制與常見問題。
介面簡介
本介面基於自然語言處理技術,能夠從非結構化的混合文字中精準提取中國快遞收件關鍵資訊。核心能力包括自動識別並分離姓名、手機號碼、身份證號碼(如有)、郵政編碼以及標準的省/市/區/街道詳細地址。
適用場景
- 電商訂單清洗:自動規範化使用者手動輸入的模糊地址,減少發貨錯誤率。
- CRM 資料治理:批次整理歷史客戶資料,補全缺失的行政區劃欄位。
- 物流系統整合:在下單環節實時校驗並結構化地址資料,提升打單效率。
請求與返回說明
- 請求方式:POST
/v1/shipping-address-parse - 輸入要點:
addresses:字串陣列,支援單次提交最多 200 條地址文字。dedup:可選去重策略,支援按phone(手機號)或name(姓名)進行重複項過濾。- 返回結果: