文档中心

提供标准化开发文档,免费提供技术支持。

全国物流快递查询接口

全国物流快递查询接口

正常 点数包

【快递查询API,快递物流自动单号识别】可查询快递物流信息近1000+家全国快递查询API,单号自动识别,包括全球快递物流查询接口:顺丰、邮政,京东,极兔,申通、圆通、韵达、中通、极兔、百世、EMS、天天、国通、德邦、宅急送,等千家快递物流查询接口,同时返回物流耗时等相关信息。

更新日期
2025-10-18
调用权限
正常

计费说明:

  • 点数包计费的用户,不限制每日请求次数和QPS
  • 套餐规格

    次数 价格
    10000次 60元

    接口地址: https://api.dmcr.cn/api/wuliu

    返回格式: json

    请求方式: GET

    请求示例: https://api.dmcr.cn/api/wuliu?apikey=你开通的apikey&no=780098068058&type=快递公司字母简写:不知道可不填 95%能自动识别,填写查询速度会更快

    请求参数说明:

    名称必填格式说明
    apikey
    必填string
    你开通的apikey
    no
    必填string780098068058
    type
    string
    快递公司字母简写:不知道可不填 95%能自动识别,填写查询速度会更快

    返回参数说明:

    返回示例:

    {
        "status": true,
        "http_code": 200,
        "response": {
            "status": "0",
            "msg": "ok",
            "result": {
                "number": "7733777502529",
                "type": "STO",
                "list": [{
                    "time": "2025-09-18 12:14:11",
                    "status": "【驿站】包裹已签收!如有问题请联系:兔喜快递超市15100000008,您的快递已经妥投,投诉电话:0870000000。有事呼叫我,勿找平台,少一次投诉,多一份感恩。"
                },
                {
                    "time": "2025-09-17 16:33:03",
                    "status": "【驿站】您的包裹已存放至【 兔喜快递超市 】,取件地址【个旧人民医院兔喜快递超市人民医院兔喜快递超市】,如有取件码问题或找不到包裹等问题,请联系:站点【15100000008】,快递员【13600000001】,投诉电话【08738800404】"
                },
                {
                    "time": "2025-09-17 16:07:19",
                    "status": "【红河哈尼族彝族自治州】云南个旧市公司 的快递员(048人民医院-XX\/13600000001)正在为您派送,【物流问题无需找商家或平台,请致电(08738800404)或专属渠道95543更快解决】"
                },
                {
                    "time": "2025-09-17 12:56:29",
                    "status": "【红河哈尼族彝族自治州】快件已到达 云南个旧市公司 ,【物流问题无需找商家或平台,请致电(08738800404)或专属渠道95543更快解决】"
                },
                {
                    "time": "2025-09-17 12:45:03",
                    "status": "【昆明市】快件已发往 云南个旧市公司,【物流问题无需找商家或平台,请致电专属渠道95543更快解决】"
                },
                {
                    "time": "2025-09-17 01:44:08",
                    "status": "【昆明市】快件已到达 云南昆明转运中心 "
                },
                {
                    "time": "2025-09-16 04:37:35",
                    "status": "【广州市】快件已发往 贵州贵阳转运中心"
                },
                {
                    "time": "2025-09-16 04:33:51",
                    "status": "【广州市】快件已到达 广东增城转运中心 "
                },
                {
                    "time": "2025-09-16 01:34:56",
                    "status": "【广州市】广东广州白云区广汕公司(02022326129)的广汕揽收员(18000000003) 已揽收"
                }],
                "deliverystatus": "3",
                "issign": "0",
                "expName": "申通快递",
                "expSite": "www.sto.cn ",
                "expPhone": "95543",
                "logo": "https:\/\/img3.fegine.com\/express\/sto.jpg",
                "courier": "",
                "courierPhone": "15100000008",
                "updateTime": "2025-09-18 12:14:11",
                "takeTime": "2天10小时39分"
            }
        }
    }
    错误码 说明
    100 您的apikey值为空!
    101 您的apikey值不存在!
    102 当前来源地址不在白名单内!
    103 当前接口为实名认证后可用,请您先进行实名!
    104 当前接口为企业认证后可用,请您先进行企业认证!
    105 当前接口未通过审核或已停止运营!
    106 您的余额不足,请及时充值!
    107 您当前的接口免费期限已过期,请及时续费!
    108 您的点数包已用完,请及时充值!
    109 您的账号已被封禁,不可使用任何接口!
    
                
    <?php
    //你申请的key密钥
    $API_KEY = '你的接口密钥,接口开通后获得的密钥';
    
    //API接口地址
    $API_URL = 'https://api.dmcr.cn/api/wuliu';
    
    $get_post_data = array(
        //接口参数,一行一个,可按照接口文档-请求参数 的参数填写,或者直接复制开发工具下面的测试代码。
        'apikey' => $API_KEY,
        '参数名' => '参数值',
    );
    
    $resdata = posturl($API_URL, $get_post_data, 'GET');  //发起请求,注意这里要选择接口支持的协议,默认GET,可选POST
    
    //打印请求结果
    print($resdata);
    ///////////////你的业务代码可写在这里处理API返回的数据
    
    /**
     * API请求函数
     */
    function posturl($url, $data, $type = 'POST') {
        $queryString = http_build_query($data);
    
        if ($type === 'GET') {
            $url .= (strpos($url, '?') !== false) ? '&' : '?';
            $url .= $queryString;
        } else {
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $queryString);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    
            $response = curl_exec($ch);
    
            if ($response === FALSE) {
                return '请求失败';
            }
    
            curl_close($ch);
    
            return $response;
        }
    
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    
        $response = curl_exec($ch);
    
        if ($response === FALSE) {
            return '请求失败';
        }
    
        curl_close($ch);
    
        return $response;
    }
    ?>
                
                
    
    //jQuery-Ajax
    $.ajax({
    	url: 'https://api.dmcr.cn/api/wuliu',
    	data: {
    	//接口参数,一行一个,可按照接口文档-请求参数 的参数填写,或者直接复制开发工具下面的测试代码。
    		key: '你的接口密钥,登录控制台后在密钥管理页面申请',
    		参数名: '参数值',
    
    	},
    	type: 'GET', //请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
    	dataType: 'json',
    	success: function(data) {
    		console.log(data); //请求成功,输出结果到控制台
    	},
    	timeout: 3000, //超时时间
    	error: function(data) {
    		console.log('请求失败'); //失败处理
    	}
    });
                
    
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Map.Entry;
    import java.io.OutputStream;
    import java.io.OutputStreamWriter;
    
    public class APICaller {
    
        private static String API_KEY = "你的接口密钥,接口开通后获得的密钥";
        private static String API_URL = "https://api.dmcr.cn/api/wuliu";
    
        public static void main(String[] args) {
            Map<String, String> postData = new HashMap<>();
            postData.put("apikey", API_KEY);
            postData.put("参数名", "参数值");
    
            try {
                String response = postUrl(API_URL, postData, "GET");
                System.out.println(response);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
        public static String postUrl(String url, Map<String, String> data, String type) throws Exception {
            StringBuilder queryString = new StringBuilder();
            for (Entry<String, String> entry : data.entrySet()) {
                queryString.append(entry.getKey()).append("=").append(entry.getValue()).append("&");
            }
    
            if (type.equals("GET")) {
                url += (url.contains("?") ? "&" : "?") + queryString.toString();
            } else {
                URL apiUrl = new URL(url);
                HttpURLConnection conn = (HttpURLConnection) apiUrl.openConnection();
                conn.setRequestMethod("POST");
                conn.setDoOutput(true);
    
                OutputStream os = conn.getOutputStream();
                OutputStreamWriter osw = new OutputStreamWriter(os, "UTF-8");
                osw.write(queryString.toString());
                osw.flush();
                osw.close();
                os.close();
    
                BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
                StringBuilder response = new StringBuilder();
                String line;
                while ((line = br.readLine()) != null) {
                    response.append(line);
                }
    
                br.close();
                conn.disconnect();
    
                return response.toString();
            }
    
            URL apiUrl = new URL(url);
            HttpURLConnection conn = (HttpURLConnection) apiUrl.openConnection();
            conn.setRequestMethod("GET");
    
            BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            StringBuilder response = new StringBuilder();
            String line;
            while ((line = br.readLine()) != null) {
                response.append(line);
            }
    
            br.close();
            conn.disconnect();
    
            return response.toString();
        }
    }
                
    
    package main
    
    import (
    	"bytes"
    	"fmt"
    	"net/http"
    	"net/url"
    )
    
    var API_KEY = "你的接口密钥,接口开通后获得的密钥"
    var API_URL = "https://api.dmcr.cn/api/wuliu"
    
    func main() {
    	postData := map[string]string{
    		"apikey":    API_KEY,
    		"参数名":     "参数值",
    	}
    
    	response, err := postURL(API_URL, postData, "GET")
    	if err != nil {
    		fmt.Println("请求失败:", err)
    	} else {
    		fmt.Println(response)
    	}
    }
    
    func postURL(url string, data map[string]string, method string) (string, error) {
    	queryString := url.Values{}
    	for key, value := range data {
    		queryString.Set(key, value)
    	}
    
    	var req *http.Request
    	var err error
    
    	if method == "GET" {
    		req, err = http.NewRequest("GET", url+"?"+queryString.Encode(), nil)
    	} else {
    		req, err = http.NewRequest("POST", url, bytes.NewBufferString(queryString.Encode()))
    	}
    
    	if err != nil {
    		return "", err
    	}
    
    	req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
    
    	client := &http.Client{}
    	resp, err := client.Do(req)
    	if err != nil {
    		return "", err
    	}
    	defer resp.Body.Close()
    
    	buf := new(bytes.Buffer)
    	buf.ReadFrom(resp.Body)
    	response := buf.String()
    
    	return response, nil
    }
                
    
    import requests
    
    API_KEY = '你的接口密钥,接口开通后获得的密钥'
    API_URL = 'https://api.dmcr.cn/api/wuliu'
    
    def post_url(url, data, method='POST'):
        if method == 'GET':
            response = requests.get(url, params=data)
        else:
            response = requests.post(url, data=data)
    
        if response.status_code == 200:
            return response.text
        else:
            return "请求失败"
    
    if __name__ == "__main__":
        post_data = {
            'apikey': API_KEY,
            '参数名': '参数值',
        }
    
        response_data = post_url(API_URL, post_data, 'GET')
        print(response_data)
                
    
    const axios = require('axios');
    
    const API_KEY = '你的接口密钥,接口开通后获得的密钥';
    const API_URL = 'https://api.dmcr.cn/api/wuliu';
    
    async function postUrl(url, data, method = 'POST') {
        try {
            let response;
            if (method === 'GET') {
                response = await axios.get(url, { params: data });
            } else {
                response = await axios.post(url, data);
            }
            return response.data;
        } catch (error) {
            return '请求失败';
        }
    }
    
    async function main() {
        const postData = {
            'apikey': API_KEY,
            '参数名': '参数值',
        };
    
        const response = await postUrl(API_URL, postData, 'GET');
        console.log(response);
    }
    
    main();
                
    
    #include <stdio.h>
    #include <curl/curl.h>
    #include <string.h>
    
    #define API_KEY "你的接口密钥,接口开通后获得的密钥"
    #define API_URL "https://api.dmcr.cn/api/wuliu"
    
    // 发起 HTTP 请求
    char *posturl(char *url, char *data, char *type) {
        CURL *curl;
        CURLcode res;
        char *response = NULL;
        curl = curl_easy_init();
    
        if (curl) {
            if (strcmp(type, "GET") == 0) {
                char get_url[256];
                snprintf(get_url, sizeof(get_url), "%s?%s", url, data);
                curl_easy_setopt(curl, CURLOPT_URL, get_url);
            } else {
                curl_easy_setopt(curl, CURLOPT_URL, url);
                curl_easy_setopt(curl, CURLOPT_POST, 1);
                curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
            }
    
            curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
            curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
            res = curl_easy_perform(curl);
    
            if (res != CURLE_OK) {
                fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
                response = "请求失败";
            }
    
            curl_easy_cleanup(curl);
        }
    
        return response;
    }
    
    // 写入回调函数
    static size_t write_callback(void *contents, size_t size, size_t nmemb, void *userp) {
        size_t realsize = size * nmemb;
        char *temp = realloc(userp, realsize + 1);
    
        if (temp == NULL) {
            fprintf(stderr, "realloc() failed\n");
            return 0;
        }
    
        userp = temp;
        memcpy((char *) userp, contents, realsize);
        ((char *) userp)[realsize] = 0;
    
        return realsize;
    }
    
    int main() {
        char *api_key = API_KEY;
        char *api_url = API_URL;
        char *data = "apikey=API_KEY&参数名=参数值"; // 替换为实际参数
    
        char *resdata = posturl(api_url, data, "GET"); // 发起 GET 请求
        if (resdata != NULL) {
            printf("%s\n", resdata); // 打印请求结果
            free(resdata);
        }
    
        return 0;
    }
    //这个示例代码使用了libcurl库进行HTTP请求。
                
    
    #include <iostream>
    #include <string>
    #include <curl/curl.h>
    
    // 定义 API 密钥和 API 地址
    std::string API_KEY = "你的接口密钥,接口开通后获得的密钥";
    std::string API_URL = "https://api.dmcr.cn/api/wuliu";
    
    // 发起 HTTP 请求
    std::string posturl(const std::string& url, const std::string& data, const std::string& type = "POST") {
        CURL *curl;
        CURLcode res;
        std::string response;
    
        curl = curl_easy_init();
        if (curl) {
            curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
    
            if (type == "POST") {
                curl_easy_setopt(curl, CURLOPT_POST, 1L);
                curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data.c_str());
            }
    
            curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, [](void *ptr, size_t size, size_t nmemb, std::string *data) -> size_t {
                data->append((char *)ptr, size * nmemb);
                return size * nmemb;
            });
    
            curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
    
            res = curl_easy_perform(curl);
    
            if (res != CURLE_OK) {
                response = "请求失败";
            }
    
            curl_easy_cleanup(curl);
        }
    
        return response;
    }
    
    int main() {
        std::string queryString = "apikey=" + API_KEY + "&参数名=参数值";  // 构建查询字符串
        std::string fullURL = API_URL + "?" + queryString;  // 拼接完整的 URL
    
        std::string resdata = posturl(fullURL, "", "GET");
    
        // 处理请求结果
        std::cout << resdata << std::endl;
    
        return 0;
    }
    //这个示例代码使用了libcurl库进行HTTP请求。
                
    
    using System;
    using System.IO;
    using System.Net;
    
    class Program
    {
        static void Main()
        {
            string API_KEY = "你的接口密钥,接口开通后获得的密钥";
            string API_URL = "https://api.dmcr.cn/api/wuliu";
    
            var get_post_data = new System.Collections.Specialized.NameValueCollection
            {
                { "apikey", API_KEY },
                { "参数名", "参数值" }
            };
    
            string resdata = PostUrl(API_URL, get_post_data, "GET");
            Console.WriteLine(resdata);
    
            // 在这里处理 API 返回的数据
        }
    
        static string PostUrl(string url, System.Collections.Specialized.NameValueCollection data, string type = "POST")
        {
            string queryString = string.Join("&", Array.ConvertAll(data.AllKeys, key => $"{key}={WebUtility.UrlEncode(data[key])}"));
    
            if (type == "GET")
            {
                url += (url.Contains("?") ? "&" : "?") + queryString;
            }
            else
            {
                using (var client = new WebClient())
                {
                    client.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
                    byte[] responseBytes = client.UploadValues(url, "POST", data);
                    return System.Text.Encoding.UTF8.GetString(responseBytes);
                }
            }
    
            using (var client = new WebClient())
            {
                return client.DownloadString(url);
            }
        }
    }
    //这个示例代码使用了WebClient类进行HTTP请求。
                

    仅需三步即可快速接入

    1
    在线调试

    填写业务相关参数免费在线调试

    2
    生成代码

    生成符合你的开发语言代码,复制即可

    3
    业务上线

    调整你后端部分逻辑代码即可上线使用

    数据驱动未来

    立即注册

    客服微信

    djt16789

    请打开手机微信,扫一扫联系我们

    联系我们
    在线咨询
    点击咨询

    工作时间:8:00-22:00

    返回顶部