-
书号通常指国际标准书号(ISBN,International Standard Book Number),是国际通行的图书唯一标识符,相当于每一本书、每一种版本的“身份证号码”。书号的构成目前使用最广的是13位ISBN(2007 年之后全面推行),其结构为:前缀元素:固定为978或979(图书产品代码)国家/语言区号:如中国为7(简体中文出版物常用)出版社代码:由书号管理机构分配给出版社书序号:出版社为具体出版物分配的编号校验码:最后一位,用于验证书号是否正确书号的作用唯一标识:一本书的不同版本(精装、平装、电子书)、不同语种、不同格式都会有各自独立的书号。全球通用:在世界范围内,通过书号可以精准定位一本出版物。出版必备:在中国,正规出版物必须配有书号,才能进入发行渠道(实体书店、电商平台、图书馆等)。流通与数据基础:图书的编目、订购、库存、销售统计、版权管理都依赖书号。#书号查询API介绍可以接入书号查询API,根据书号来查询书本的详细信息,包括:书名、作者(编者、译者)、出版社、出版日期、出版地、版次、印次、装帧信息、纸张开数、语言、字数、页数等信息。详细使用参见此处请求参数名称类型必须说明isbnString是书的isbn码(必须是10、13位的纯数字)返回样例{ "code": 200, "msg": "成功", "taskNo": "65171553403304103621", "charge": true, "data": { "details": [ { "series": "",//丛书信息(不是丛书为空字符串) "title": "2",//书名 "author": "",//作者(编者、译者)信息 "publisher": "",//出版社 "pubDate": "",//出版日期 "pubPlace": "长春",//出版地 "isbn": "9787555357902",//13位isbn号 "isbn10": "7555357909",//10位isbn号 "price": "28.80",//定价 "genus": "TP311.132.3",//中图分类号 "levelNum": "",//读者评分 "heatNum": "0",//图书热度(即:购买或评论总人次) "format": "",//纸张开数 "binding": "平装",//装帧信息 "page": "",//页数 "wordNum": "",//字数 "edition": "1版",//版次 "yinci": "1",//印次 "paper": "",//书籍纸张类型 "language": "",//语言 "keyword": "",//图书关键词 "img": "",//封面图片大图链接,有效期10天。建议自行下载保存,避免丢失 "bookCatalog": "",//目录 "gist": "",//图书内容简介 "cipTxt": "",//cip信息 "annotation": "",//一般附注 "subject": "",//主题 "batch": ""//丛编信息 } ] } }
-
前言商品条码查询在现代商业和日常生活中有着广泛的用途。比如:商品信息核实与溯源基础信息获取:快速查询商品的名称、品牌、规格、型号、生产厂家等基本信息。真伪鉴别:虽然条码本身容易被复制,但结合官方数据库(如中国物品编码中心)或品牌方的防伪系统,可以辅助判断商品是否为正规渠道产品。部分高级应用会结合“一物一码”技术进行深度溯源。产地查询:通过条码前缀初步判断注册地,或通过详细数据查询具体生产地。零售与库存管理快速结算:在超市、便利店等零售场景,扫描条码是收银结算的标准流程,极大提高了效率并减少人工输入错误。库存管理:企业利用条码系统进行入库、出库、盘点,实时掌握库存动态,优化供应链效率。价格管理:确保货架标签价格与系统结算价格一致,方便进行促销变价管理。消费者决策辅助比价购物:消费者在实体店扫描条码,通过电商平台或比价工具查看该商品在网络上的价格,寻找更优惠的购买渠道。评价参考:查询商品后,直接查看其他用户对该商品的使用评价、评分和避雷指南。成分与安全查询:对于食品、化妆品,通过条码查询详细的成分表、保质期、过敏原信息以及是否有召回记录。如果需要将商品条码查询集成到系统中,那么可以接入商品条码查询API。API介绍根据条码信息,返回此条码对应商品的名称、价格、厂家、图片等资料。能够实现来源可查、去向可追、责任可究,从而有效控制产品质量安全风险,保障消费者权益。极大的降低运营成本,提升数据质量,避免人工出错的可能。请求参数名称类型必须说明codeString是条码(必须是13、14位的纯数字,13位以69开头,14位以0开头)详见此处返回样例{ "code": 200, "msg": "成功", "taskNo": "41020892700032664119", "data": { "code": "6922266457432", // 条形码 "sptmImg": "", // 条码图片 "img": "", // 图片,有效期10天。建议自行下载保存,避免丢失 "goodsType": "", // 商品分类 "trademark": "", // 品牌 "goodsName": "", // 商品名称 "spec": "", // 规格 "note": "", // 备注信息 "price": "", // 参考价格(单位:元) "ycg": "", // 原产地(可能无此参数信息) "manuName": "", // 厂商 "manuAddress": "", // 厂商地址 "qs": "",//生产许可证号 "nw": "",//净重 "description": "",//形态描述 "gw": "",//毛重 "width": "",//宽 "hight": "",//高 "depth": "",//深 "gpc": "",//gpc分类代码 "gpcType": "",//gpc分类名称 "keyword": "",//关键词 "imgList": [] // 条码中心图片列表 } }
-
前言汇率换算(Currency Conversion)是指将一种货币的价值转换为另一种货币价值的过程。它是国际贸易、旅游、投资和金融交易中的基础操作。在金融系统常用到汇率换算功能,用于国际结算、银行汇率查询应用、开展跨国贸易、投资等参考场景。集成汇率换算API可实现实时汇率转换和汇率查询功能。汇率换算API有以下特点:支持全球一百多种货币实时汇率换算和汇率查询。数据每分钟更新。实时汇率转换币种间的汇率转换。请求参数名称类型必须说明fromCodeString是源货币类型 详见货币代码表toCodeString是目标货币类型 详见货币代码表moneyString是转换的金额,单位元参见接口文档成功返回样例{ "code": 200,//返回码,详见code返回码说明 "msg": "成功",//code对应的描述 "charge": true,//计费标志 "taskNo": "825091389158520001104287",//本次唯一请求号 "data": { "money": "120.043880",//换算后金额 "to_name": "欧元",//目标货币名称 "from": "GBP",//源货币类型 "exchange": "1.199000",//当前汇率 "to": "EUR",//目标货币类型 "from_name": "英镑",//源货币名称 "updatetime": "2024-10-29 14:00:04" //更新时间 } } 失败返回样例{ "msg": "源货币类型不能为空", "code": 400 } 汇率查询根据货币查询其汇率请求参数名称类型必须说明fromCodeString是需要查询的货币代码 详见货币代码表toCodeString否目标货币类型,会单独返回toCode对应的汇率信息,默认CNY 详见货币代码表参见接口文档成功返回样例{ "code": 200, //返回码,详见code返回码说明 "msg": "成功", //code对应的描述 "charge": true, //计费标志 "taskNo": "825091389158520001104287", //本次唯一请求号 "data": { "name": "英镑", //货币名称 "currency": "GBP", //货币代码 "toData": {//参数toCode对应的汇率信息 "rate": "1.293100", "name": "美元", "updatetime": "2025-04-01 17:25:06" }, "list": { "FJD": { "rate": "2.946800", //汇率 "name": "斐济元", //目标货币名称 "updatetime": "2024-10-29 04:37:55" //更新时间 }, "MXN": { "rate": "25.949600", "name": "墨西哥比索", "updatetime": "2024-10-29 13:54:37" } } } } 失败返回样例{ "msg": "源货币类型不能为空", "code": 400 } 附录货币代码表货币代码货币名称CNY人民币USD美元EUR欧元JPY日元HKD港币KRW韩元RUB卢布GBP英镑SGD新加坡元TWD新台币CAD加拿大元AUD澳大利亚元BRL巴西雷亚尔INR印度卢比CHF瑞士法郎THB泰国铢MOP澳门元NZD新西兰元ZAR南非兰特SEK瑞典克朗IDR印尼卢比MXN墨西哥比索ARS阿根廷比索MYR林吉特OMR阿曼里亚尔EGP埃及镑PKR巴基斯坦卢比PYG巴拉圭瓜拉尼BHD巴林第纳尔PAB巴拿马巴尔博亚BMD百慕大元BGN保加利亚列弗ISK冰岛克朗PLN波兰兹罗提BOB玻利维亚诺BWP博茨瓦纳普拉DKK丹麦克朗PHP菲律宾比索COP哥伦比亚比索CUP古巴比索KZT哈萨克斯坦坚戈ANG荷兰盾GHS加纳塞地CZK捷克克朗ZWL津巴布韦元QAR卡塔尔里亚尔KWD科威特第纳尔HRK克罗地亚库纳KES肯尼亚先令LVL拉脱维亚拉特LAK老挝基普LBP黎巴嫩镑LTL立陶宛立特RON罗马尼亚列伊MUR毛里求斯卢比MNT蒙古图格里克BDT孟加拉塔卡PEN秘鲁新索尔MAD摩洛哥迪拉姆NOK挪威克朗SAR沙特里亚尔LKR斯里兰卡卢比SOS索马里先令TZS坦桑尼亚先令TND突尼斯第纳尔TRY土耳其里拉GTQ危地马拉格查尔UYU乌拉圭比索HUF匈牙利福林JMD牙买加元ILS以色列谢克尔JOD约旦第纳尔VND越南盾CLP智利比索PGK巴布亚新几内亚基那KPW朝鲜圆LSL莱索托洛提LYD利比亚第纳尔RWF卢旺达法郎MMK缅甸元MWK马拉维克瓦查NIO尼加拉瓜科多巴NPR尼泊尔卢比SBD所罗门群岛元SCR塞舌尔法郎BND文莱元SYP叙利亚镑DZD阿尔及利亚第纳尔AED阿联酋迪拉姆BBD巴巴多斯元AFN阿富汗尼ALL阿尔巴尼亚勒克AMD亚美尼亚德拉姆AOA安哥拉宽扎AWG阿鲁巴盾弗罗林AZN阿塞拜疆新马纳特BAM波斯尼亚马尔卡BIF布隆迪法郎BSD巴哈马元BTN不丹努扎姆BYN白俄罗斯卢布BZD伯利兹美元CDF刚果法郎CRC哥斯达黎加科朗CUC古巴可兑换比索CVE佛得角埃斯库多DJF吉布提法郎DOP多明尼加比索NGN尼日利亚奈拉ERN厄立特里亚纳克法ETB埃塞俄比亚比尔FJD斐济元FKP福克兰镑GEL格鲁吉亚拉里GIP直布罗陀镑GMD冈比亚达拉西GNF几内亚法郎GYD圭亚那元HNL洪都拉斯伦皮拉HTG海地古德IQD伊拉克第纳尔IRR伊朗里亚尔KGS吉尔吉斯斯坦索姆KHR柬埔寨瑞尔KMF科摩罗法郎KYD开曼群岛元LRD利比里亚元MDL摩尔多瓦列伊MGA马尔加什阿里亚MKD马其顿第纳尔MVR马尔代夫拉菲亚MZN新莫桑比克梅蒂卡尔NAD纳米比亚元RSD塞尔维亚第纳尔SDG苏丹镑SHP圣圣赫勒拿镑SLL塞拉利昂利昂SRD苏里南元STD圣多美多布拉SZL斯威士兰里兰吉尼TJS塔吉克斯坦索莫尼TMT土库曼斯坦马纳特TOP汤加潘加TTD特立尼达多巴哥元UAH乌克兰格里夫纳UGX乌干达先令UZS乌兹别克斯坦苏姆VEF委内瑞拉玻利瓦尔VUV瓦努阿图瓦图WST萨摩亚塔拉XAF中非法郎XCD东加勒比元XOF西非法郎XPF太平洋法郎YER也门里亚尔ZMW赞比亚克瓦查SVC萨尔瓦多科朗MRU毛里塔尼亚乌吉亚
-
随着“金税四期”的全面深化和数电票(全面数字化的电子发票)的普及,如今企业财税管理已进入高度自动化与智能化的新阶段。发票作为经济活动的核心凭证,其管理效率直接关系到企业的合规性与运营成本。本文将介绍发票全生命周期API接口,包括:自动开票,发票识别,发票查验,发票下载,企业开票信息查询。自动开票企业内部的ERP、CRM或业务系统接入自动开票API,即可实现“业务发生即开票”。数据直连:系统直接抓取订单系统中的交易数据(购买方信息、商品明细、金额等),无需人工二次录入,从源头杜绝了错行、错号的风险。规则引擎:企业可预设开票规则(如:满额自动开、特定客户自动开、发货后自动开),系统根据规则自动触发开票指令。多票种支持:不仅支持传统的增值税专用/普通发票,更完美适配数电票。对于数电票,系统可直接生成XML/PDF文件并交付,无需打印纸质介质。详见此处发票识别面对海量的纸质发票、拍照件或PDF文件,如何快速将其转化为结构化数据?高精度的发票OCR识别是关键。全票种覆盖:如今的识别引擎已能精准识别增值税专票/普票、数电票、火车票、飞机行程单、出租车票、定额发票等几乎所有国内票据类型。复杂场景适应:即使发票存在褶皱、倾斜、光照不均或部分遮挡,AI算法仍能通过深度学习模型高精度提取关键字段(发票代码、号码、日期、金额、校验码、购销方信息等)。可支持自动验真联动:识别完成后,系统可自动调用查验接口进行真伪验证,实现“识别+查验”一体化。批量处理:支持一次性上传上百张发票图片,系统在几分钟内完成所有信息的提取与分类。自动归档:识别后的数据结构化存入数据库,自动关联对应的报销单或入账凭证,彻底告别手工录入。详见此处发票查验收到发票后,确认其真伪及状态是财务合规的底线。如今,发票查验渠道更加多元,查验内容也更加丰富。一键批量查验:第三方财税SaaS平台通过授权接口,允许企业上传Excel表格或扫描识别后,后台自动批量调用官方接口进行查验,并生成查验报告。风险预警:系统不仅查验真伪,还能监控发票状态(如是否已红冲、作废、失控),一旦发现异常立即预警。详见此处发票下载在数电票时代,发票的交付形式发生了根本变化,下载与归集变得更加灵活高效。邮箱/短信交付:开票方系统自动将数电票的PDF/XML文件发送至受票方指定邮箱或手机。税务数字账户下载:受票方登录电子税务局“税务数字账户”,可批量查询、下载、打印归属于本企业的进项发票。这是最权威的获取方式,确保票源完整。企业开票信息查询用户在开具发票(尤其是电子专票)时,只需输入企业名称或关键词,接口即可自动返回该企业规范化的全称、纳税人识别号(税号)、注册地址、联系电话、开户银行及账号等“开票四要素”或“五要素”信息。避免人工手动输入导致的错误(如税号输错一位导致发票作废),大幅缩短开票时间,提升用户体验。详见此处
-
发票识别通常结合光学字符识别(OCR)、自然语言处理(NLP)和机器学习技术,将电子图片格式的发票转化为结构化数据。发票识别的作用发票识别核心作用主要体现在以下几个方面:提升财务工作效率自动化录入:传统的人工录入发票信息(如发票代码、号码、日期、金额、税额、购买方/销售方信息等)耗时且容易出错。发票识别可以实现秒级自动提取,将财务人员从繁琐的打字工作中解放出来。批量处理:能够同时处理成百上千张发票,显著缩短月度结账和报销周期。降低错误率与合规风险减少人为失误:人工录入难免出现数字看错、小数点点错或名称输错的情况,机器识别的准确率通常远高于人工(尤其在清晰图像下可达99%以上)。优化业务流程与管理加速报销流程:员工只需拍照或上传电子发票,系统自动填单,审批流转更快,提升员工满意度。数据结构化与分析:将非结构化的图片数据转化为结构化数据(如Excel、数据库记录),便于企业进行多维度的财务分析(如按部门、项目、供应商统计支出),为预算控制和决策提供数据支持。档案电子化:配合电子会计档案政策,实现发票的自动归档、存储和检索,节省物理存储空间,方便审计调阅。支持发票种类增值税发票OCR识别支持对增值税普票、专票、全电发票(新版全国统一电子发票,专票/普票)、卷票、区块链发票的所有字段进行结构化识别,包括发票基本信息、销售方及购买方信息、商品信息、价税信息等字段信息的识别准确率超过 99.9%支持对增值税卷票的 21 个关键字段进行识别,包括发票类型、发票代码、发票号码、机打号码、机器编号、收款人、销售方名称、销售方纳税人识别号、开票日期、购买方名称、购买方纳税人识别号、项目、单价、数量、金额、税额、合计金额(小写)、合计金额(大写)、校验码、省、市 等字段信息的识别准确率可达95%。详见此处医疗发票OCR识别支持识别全国各地门诊/住院发票的业务流水号、发票号、住院号、门诊号、病例号、姓名、性别、社保卡号、金额大/小写、收款单位、省市、医保统筹支付、个人账户支付等关键字段,其中北京/广东/河北/河南/江苏/山东/上海/天津/浙江等地区票据识别效果较佳。支持识别收费项目明细,并可根据不同省市地区返回对应的识别参数。详见此处财务票据OCR识别支持财务场景中13种常见票据的识别,包括增值税发票、卷票、机打发票、定额发票、火车票(含铁路电子客票)、出租车票、网约车行程单、飞机行程单、汽车票、过路过桥费、船票、机动车/二手车销售发票支持多张不同种类票据在同一张图片上的混贴场景,可返回每张票据的种类及票面信息的识别结果详见此处机动车销售发票OCR识别支持对机动车销售发票的26个关键字段进行结构化识别,包括发票代码、发票号码、开票日期、机器编号、购买方名称、购买方身份证号码/组织机构代码、车辆类型、厂牌型号、产地、合格证号、发动机号码、车架号码、价税合计、价税合计小写、销货单位名称、电话、纳税人识别号、账号、地址、开户银行、税率、税额、主管税务机关及代码、不含税价格、限乘人数。详见此处
-
前言在“金税四期”和全面数字化的电子发票(数电票)推广背景下,自动开票已成为电商、外卖、生鲜配送等平台或APP必不可少的环节。而自动开票需要购买方的企业名称和税号,如果开发的APP需要手动录入企业名称和税号,这将带来输入的不便利,另外还容易出错,导致大量不必要的冲红。那么怎么能自动录入企业名称和税号呢?答案是:企业开票信息接口。用途企业开票信息接口用途非常广泛,下面列举几种:智能填充开票信息:用户在开具发票(尤其是电子专票)时,只需输入企业名称或关键词,接口即可自动返回该企业规范化的全称、纳税人识别号(税号)、注册地址、联系电话、开户银行及账号等“开票四要素”或“五要素”信息。价值:避免人工手动输入导致的错误(如税号输错一位导致发票作废),大幅缩短开票时间,提升用户体验。系统集成与自动化报销/采购:将接口嵌入企业的ERP、CRM、费控报销系统或采购平台中。当员工提交报销单或采购订单时,系统自动调用接口匹配供应商或客户的开票信息。实现从业务发生到发票开具的全流程自动化,减少财务人员重复录入工作,降低人力成本。模糊搜索与名称标准化:支持通过企业名称的部分关键词进行模糊查询,解决企业简称、别名与工商注册全称不一致的问题,返回标准的工商注册名称。确保发票抬头的规范性,避免因名称不匹配导致发票无法抵扣或报销受阻。使用说明请求参数名称类型必须说明enterpriseNameString是企业名称pageSizeString否每页条数,默认为100pageNoString否页码,默认第一页详见此处返回说明{ "code": 200, "msg": "成功", "taskNo": "41020892700032664119", "charge": true, "data": { "count": 2, //记录数 "items": [ { "enterpriseName": "",//公司名称 "taxNo": "",//税号 "address": "",//地址和电话(部分返回) "phone": "",//电话 (部分返回) "bankName": "",//开户银行名称 "bankNo": ""//开户银行账号 } , ... ] } }
-
现状当我们在做产品等推广时,向微信分享产品链接是一种常用的方式。但是,微信会拦截一些外部链接,禁止跳转,停止访问。域名在微信被拦截的3种常见情况:域名因违规或有风险被拦截,停止访问(红色感叹号图标)提醒拦截,可复制浏览器访问(无图标)提醒,可以点击按钮继续访问(蓝色感叹号图标)如果我们的推广链接被微信拦截,就会无法推广,造成业务受损。下面来介绍一种解决方法。解决方法将推广链接生成短网址,用短网址分享到微信。再用微信域名检测接口去检测短网址域名。如果出现拦截,可更换短网址域名重新生成短网址,从而能保证新生产的短网址不会被微信拦截。接口介绍请求参数名称类型必须说明urlString是网址可参见接口文档短网址生成可参考这里返回样例// 检测正常 { "code": 200, "msg": "成功", "taskNo": "41020892700032664119", "charge": true, "data": { "message": "正常", "result": true } } // 检测不正常 { "code": 200, "msg": "成功", "taskNo": "41020892700032664119", "charge": true, "data": { "message": "已被封禁", "result": false } }
-
路径规划-路线规划-驾车路径规划-步行路径规划-骑乘路径规划-公交路径规划API接口介绍当我们日常出行时,免不了需要用到导航,那么地图路线规划API可以很好地实现此功能。本文将功能、适用场景和使用说明三个方面来介绍路径规划API接口。功能介绍驾车路线规划:开发者可根据起终点坐标检索符合条件的驾车路线规划方案,支持一次请求返回多条路线结果、支持传入多个途经点、支持传入车牌规避限行、支持根据不同业务场景设置不同的算路策略等。步行路线规划:开发者可根据起终点坐标检索符合条件的步行路线规划方案。公交路线规划:开发者可根据起终点坐标检索符合条件的公共交通路线规划方案,支持结合业务场景设置不同的公交换乘策略。骑行路线规划:开发者可根据起终点坐标检索符合条件的骑行路线规划方案。电动车路线规划:开发者可根据起终点坐标检索符合条件的电动车路线规划方案,与骑行略有不同的是会考虑限行等条件。适用场景无需展现地图的场景下,进行线路查询,如以线路结果页形式展现换乘方案;根据返回线路数据,自行开发线路导航。使用说明下面介绍驾车路线规划和公交路线规划的使用,其他可参见接口文档驾车路线规划请求参数名称类型必须说明originString是起点经纬度 经度在前,纬度在后,经度和纬度用","分割,经纬度小数点后不得超过6位destinationString是目的地经纬度 经度在前,纬度在后,经度和纬度用","分割,经纬度小数点后不得超过6位originTypeString否起点处道路类型 填入此值可以辅助更精准的起点算路0:普通道路1:高架上2:高架下3:主路4:辅路5:隧道7:环岛9:停车场内部strategyInteger否驾车算路策略0:速度优先(只返回一条路线),此路线不一定距离最短1:费用优先(只返回一条路线),不走收费路段,且耗时最少的路线2:距离优先(只返回一条路线),仅走距离最短的路线,但是可能存在穿越小路/小区的情况3:速度优先(只返回一条路线),不走快速路,例如京通快速路32:默认,推荐33:躲避拥堵34:高速优先35:不走高速36:少收费37:大路优先38:速度最快39:躲避拥堵+高速优先40:躲避拥堵+不走高速41:躲避拥堵+少收费42:少收费+不走高速43:躲避拥堵+少收费+不走高速44:躲避拥堵+大路优先45:躲避拥堵+速度最快waypointsString否途经点 途径点坐标串,默认支持1个有序途径点。多个途径点坐标按顺序以英文分号;分隔。最大支持16个途经点avoidpolygonsString否避让区域 区域避让,默认支持1个避让区域,每个区域最多可有16个顶点;多个区域坐标按顺序以英文竖线符号分隔,如果是四边形则有四个坐标点,如果是五边形则有五个坐标点;最大支持32个避让区域。同时传入避让区域及避让道路,仅支持避让道路;每个避让区域不能超过81平方公里,否则避让区域会失效avoidroadString否避让道路名 只支持一条避让道路plateString否车牌号码 车牌号,如 京AHA322,支持6位传统车牌和7位新能源车牌,用于判断限行相关carTypeString否车辆类型0:普通燃油汽车1:纯电动汽车2:插电式混动汽车ferryString否是否使用轮渡0:使用渡轮1:不使用渡轮showFieldsString否返回结果控制,用来筛选接口返回结果中是否出现哪些字段。show_fields的使用需要遵循如下规则:1、具体可指定返回的字段类型有:costtmcsnavicitiespolyline任选一个或多个作为入参值,即可在返回结果中显示。2、多个值间采用“,”进行分割;3、show_fields未设置、为空时,只返回基础信息类内字段;返回样例{ "code": 200,// 返回码,详见返回码说明 "msg": "成功",// 返回码对应描述 "taskNo": "786758979152547317551847",// 本次请求号 "charge": true,// 计费标志 "data": { "strategyNum": "1",//路径规划方案总数 "strategyList": { //返回的规划方案列表 "paths": [ //算路方案详情 { "distance": "12784",//方案距离,单位:米 "restriction": "0",//0代表限行已规避或未限行,即该路线没有限行路段 1代表限行无法规避,即该线路有限行路段 "steps": [ //路线分段 { "orientation": "西", //进入道路方向 "step_distance": "81",//分段距离信息 "road_name": "", //分段道路名称 "instruction": "向西行驶81米左转", //行驶指示 //以下字段是否返回,需要根据 showFields 字段传入的值来控制 "cost": {//设置后可返回方案所需时间及费用成本 "duration": "30",//线路耗时,分段step中的耗时 "toll_road": "",//主要收费道路 "toll_distance": "0",//收费路段里程,单位:米,包括分段信息 "traffic_lights": "0",//方案中红绿灯个数,单位:个 "tolls": "0"//此路线道路收费,单位:元,包括分段信息 }, "cities": [//设置后可返回分段途径城市信息 { "citycode": "0571",//途径城市编码 "adcode": "330100",//途径区域编码 "city": "杭州市",//途径城市名称 "districts": [//途径区县信息 { "adcode": "330106",//途径区县adcode "name": "西湖区"//途径区县名称 } ] } ], "navi": {//设置后可返回详细导航动作指令 "assistant_action": "",//导航主要动作指令 "action": "左转"//导航辅助动作指令 }, "polyline": "120.109051,30.277231;120.108209,30.277183",//设置后可返回分路段坐标点串,两点间用“,”分隔 "tmcs": [//设置后可返回分段路况详情 { "tmc_distance": "81",//从当前坐标点开始step中路况相同的距离 "tmc_status": "未知",//路况信息,包括:未知、畅通、缓行、拥堵、严重拥堵 "tmc_polyline": "120.109051,30.277231;120.108209,30.277183"//此段路况涉及的道路坐标点串,点间用","分隔 } ] } ] } ], "origin": "120.10910,30.27714",//起点经纬度 "destination": "120.17931,30.25326",//终点经纬度 "taxi_cost": "27" //预计出租车费用,单位:元 } } } 公交路线规划请求参数名称类型必须说明appidString是服务商分配的唯一标识timestampLong是当前时间的毫秒数signString是签名,详见签名算法说明originString是起点经纬度 经度在前,纬度在后,经度和纬度用","分割,经纬度小数点后不得超过6位destinationString是目的地经纬度 经度在前,纬度在后,经度和纬度用","分割,经纬度小数点后不得超过6位origAddCodeString否起点所在行政区域编码 参考国家行政区域编码表destAddCodeString否终点所在行政区域编码 参考国家行政区域编码表origCityCodeString是起点所在城市 仅支持citycode,参考国家行政区域编码表 相同时代表同城,不同时代表跨城 譬如西湖区citycode为330106destCityCodeString是目的地所在城市 仅支持citycode,参考国家行政区域编码表 相同时代表同城,不同时代表跨城 譬如西湖区citycode为330106strategyString否公共交通换乘策略可选值:0:推荐模式,综合权重1:最经济模式,票价最低2:最少换乘模式,换乘次数少3:最少步行模式,尽可能减少步行距离4:最舒适模式,尽可能乘坐空调车5:不乘地铁模式,不乘坐地铁路线7:地铁优先模式,步行距离不超过4KM8:时间短模式,方案花费总时间最少alternativeRouteString否返回方案条数 可传入1-10的阿拉伯数字,代表返回的不同条数multiexPortString否地铁出入口数量0:只返回一个地铁出入口1:返回全部地铁出入口maxTransString否最大换乘次数0:直达1:最多换乘1次2:最多换乘2次3:最多换乘3次4:最多换乘4次nightFlagString否考虑夜班车0:不考虑夜班车1:考虑夜班车dateString否请求日期 例如:2013-10-28timeString否请求时间 例如:9-54showFieldsString否返回结果控制,用来筛选接口返回结果中是否出现哪些字段。show_fields的使用需要遵循如下规则:1、具体可指定返回的字段类型有:costnavipolyline任选一个或多个作为入参值,即可在返回结果中显示。2、多个值间采用“,”进行分割;3、show_fields未设置、为空时,只返回基础信息类内字段;返回样例{ "code": 200,// 返回码,详见返回码说明 "msg": "成功",// 返回码对应描述 "taskNo": "697790392161452073342933",// 本次请求号 "charge": true,// 计费标志 "data": { "strategyNum": "2",//路径规划方案总数 "strategyList": { "cost": { "taxi_fee": "32" }, "distance": "163755",//本条路线的总距离,单位:米 "origin": "120.10910,30.27714", //起点经纬度 "destination": "121.63084,29.86607",//终点经纬度 "transits": [ //公交方案列表 { "cost": { "duration": "8040", "transit_fee": "79.000000" }, "distance": "179370",//本条路线的总距离,单位:米 "nightflag": "",//0:非夜班车;1:夜班车 "segments": [ { "walking": {//步行方案信息 "distance": "621",//每段线路步行距离 单位:米 "origin": "120.215919,30.294054",//起点坐标 "destination": "120.212502,30.290972",//终点坐标 "duration": "100000",//步行预计时间 单位:秒 "cost": {//设置后可返回方案所需时间及费用成本,需传showFields才可返回 "duration": "951"//线路耗时,方案总耗时,包含等车时间 }, "steps": [//步行路段列表 { "distance": "87",//此段路的距离 "road": "",//路的名字 "instruction": "步行87米左转",//此段路的行走介绍 "duration": "",//此段路预计消耗时间 单位:秒 "polyline": "",//此段路的坐标 "action": "",//步行主要动作 "assistant_action": "", //步行辅助动作 "navi": {//设置后可返回详细导航动作指令。需传showFields才可返回 "assistant_action": "",//导航辅助动作指令 "action": "左转",//导航主要动作指令 "walk_type": "0"//算路结果中存在的道路类型:0:普通道路;1:人行横道;3:地下通道;4:过街天桥;5:地铁通道;6:公园;7:广场;8:扶梯;9:直梯;10:索道;11:空中通道;12:建筑物穿越通道;13:行人通道;14:游船路线;15:观光车路线;16:滑道;18:扩路;19:道路附属连接线;20:阶梯;21:斜坡;22:桥;23:隧道;30:轮渡; }, "polyline": {//需传showFields才可返回 "polyline": "120.109055,30.277231;120.108215,30.277187"//设置后可返回分路段坐标点串,两点间用“,”分隔 } } ] } }, { "railway": { //火车换乘信息 "trip": "G195",//线路车次号 "distance": "154600",//该item换乘段的行车总距离 "name": "G195(北京南-宁波)",//线路名称 "id": "101001614253",//线路id编号 "time": "2760",//该线路车段耗时 "type": "G字头的高铁火车",//线路车次类型 "departure_stop": { //火车始发站信息 "adcode": "330102",//上车站点所在城市的adcode "name": "杭州东",//上车站点名称 "start": "0",//是否始发站,1表示为始发站,0表示非始发站 "location": "120.212600 30.290851",//上车站点经纬度 "id": "B023B08WDR",//上车站点ID "time": "2221"//上车点发车时间 }, "arrival_stop": { //火车到站信息 "adcode": "330203",//下车站点所在城市的adcode "name": "宁波",//下车站点名称 "location": "121.536807 29.861967",//下车站点经纬度 "end": "1",//是否为终点站,1表示为终点站,0表示非终点站 "id": "B023E0YC7M",//下车站点ID "time": "2307"//到站时间,如大于24:00,则表示跨天 }, "via_stop": { //途径站点信息,extensions=all时返回 "name": "宁波",//途径站点的名称 "location": "121.536807 29.861967",//途径站点的坐标点 "id": "B023E0YC7M",//途径站点的ID "time": "2307"//途径站点的进站时间,如大于24:00,则表示跨天 "wait": "5",//途径站点的停靠时间,单位:分钟 }, "alters": { //聚合的备选方案,extensions=all时返回 "name": "宁波",//备选方案ID "id": "B023E0YC7M"//备选线路名称 }, "spaces": [//仓位及价格信息 { "code": "",//仓位编码 "cost": "120"//仓位费用 } ] } }, { "bus": {//公交方案信息 "buslines": [//步行路段列表 { "start_time": "",//首班车时间 格式如:0600,代表06:00 "distance": "2022",//公交行驶距离 单位:米 "bustimetag": "0", "id": "330200021780",//公交路线id "type": "地铁线路",//公交类型 格式如:地铁线路 "bus_time_tips": "", "name": "轨道交通2号线(栎社国际机场--红联)",//公交路线名称 "end_time": "",//末班车时间 格式如:2300,代表23:00 "via_num": "1",//此段途经公交站数 "departure_stop": { //此段起乘站信息 格式如:中关村 "name": "宁波火车站",//站点名字 "location": "121.537022,29.862141",//站点经纬度 "id": "330200021780011",//站点id "entrance": {//入口信息 "name": "B口",//入口名称 "location": "121.537102,29.860975"//入口经纬度 }, "exit": {//出口信息 "name": "B口",//出口名称 "location": "121.537102,29.860975"//出口经纬度 } }, "arrival_stop": {//此段下车站 格式如:中关村 "name": "鼓楼", //站点名字 "location": "121.548970,29.873914",//站点经纬度 "id": "330200021780013"//站点id }, "via_stops": [ //此段途经公交站点列表 { "name": "城隍庙", //途径公交站点信息 "location": "121.548778,29.867124",//公交站点经纬度 "id": "330200021780012" //公交站点编号 } ], "cost": {//设置后可返回方案所需时间及费用成本,需传showFields才可返回 "duration": "1073"//线路耗时,方案总耗时,包含等车时间 }, "polyline": {//需传showFields才可返回 "polyline": "120.109629,30.281911;120.111323,30.281943;"//设置后可返回分路段坐标点串,两点间用“,”分隔 } } ] }, "taxi": {//出租车方案信息 "price": "338",//打车预计花费金额 "drivetime": "",//打车预计花费时间 "distance": "",//打车距离 "polyline": "",//线路点集合,通过show_fields控制返回与否 "startpoint": "",//打车起点经纬度 "startname": "",//打车起点名称 "endpoint": "",//打车终点经纬度 "endname": "",//打车终点名称 } } ] } ] } } }
-
在电商平台或APP中,当我在填写快递收货地址时,收件方给我的地址杂乱无章,比如:张三13566778899杭州市爱力中心307。而电商平台如果需要按省、市、区、街道、门牌号这样的逐个信息去填写,这就非常不人性化了,还容易输错。那有没有办法把杂乱无章地址转换成省、市、区、街道、门牌号这样的结构化地址的,答案是有的,即快递地址解析API。电商平台只要快递地址解析API集成到他们的平台或AP中,就可以大大提升用户的体验。快递地址解析API的核心功能就是将用户输入的杂乱无章地的地址,转换成结构化地址。不仅如此,还能处理简写、拼音混用等复杂地址格式,支持方言输入和语音转文字的容错修正。接口说明请求参数名称类型必须说明addressString是地址详见此处返回样例{ "msg": "成功",//返回码对应描述 "code": 200,//返回码,详见返回码说明 "taskNo": "591593430181347812119657",//本次请求号 "data": { "province": "福建省",//省 "provinceCode": "350000",//省国标code "city": "莆田市",//市 "cityCode": "350300",//城市国标code "county": "涵江区",//区(县) "countyCode": "350303",//区县国标code "town": "江口镇",//街道(乡/镇) "townCode": "350303104",//街道/乡镇国标code "phoneNum": "17286356303",// 电话号码,如果出现多个则按顺序输出 "extMobile": "1590",//分机号 "person": "小魏",//姓名,如果出现多个则按顺序输出 "detail": "石庭华侨职业中专丰巢柜" //详细地址 } }
-
使用证件照制作API的核心原因在于解决传统证件照拍摄和制作过程中的效率低、成本高、标准难统一、用户体验差等痛点。对于企业、开发者或平台运营者来说,接入API不仅仅是“做一个功能”,更是为了降本增效和提升业务转化率。功能特性随时随地办理:用户无需专门跑照相馆,只需在手机/电脑端上传自拍或生活照,几秒钟即可生成合规照片。这对于急需报名考试、办理签证或入职的用户极具吸引力。即时反馈:用户可立即预览效果并调整(如更换背景色、微调美颜),满意度更高。快速集成:成熟的API通常提供完善的SDK和文档,开发人员可在几小时甚至几十分钟内完成集成上线,极大缩短产品上市时间(Time-to-Market)。降低流失率:在注册、报名或认证流程中,如果要求用户上传严格符合标准的照片,很多用户会因“不知道怎么拍”或“反复上传失败”而放弃。API提供的实时检测与自动修正功能(如自动换底、裁剪),能显著降低操作门槛,提高流程完成率。支持:替换背景、自动裁剪尺寸、设置分辨率、设置人脸在证件照中的占比、设置脸部中心在证件照中的位置、设置头顶距离接口说明请求参数名称类型必须说明base64String否照片base64串fileFile否照片文件urlString否照片urlspecString否证件照规格ID,见spec及bgColor参考bgColorString否证件照颜色值: blue, red, white等值,或者以井号开始的16进制颜色值:#FF0000,见spec及bgColor参考beautyDegreeFloat否美颜级别,浮点型,如1.5,取值范围[1.0-5.0],超出范围后的值无效。主要调节了脸部黑白平衡。sizeString否证件照像素尺寸,格式:“宽x高”(中间分隔符为小写字母x),比如"480x640"。为了避免和spec内定的像素大小冲突,使用本参数的同时,需要将spec设置为"12"。fileSizeString否证件照图片的文件大小, 如果期望证件照图片的文件大小(kb)在一定的限制范围内,可以设置这个值,值的单位为kb,格式为:“最小值,最大值”,比如"10,100"表示希望返回的证件照文件大小在10-100kb之间;说明:该参数的单位为kb,而不是字节,如果文件大小如果设置不合理,比如过大或者过小,返回的文件大小有可能不在设定范围内。dpiInteger否返回的证件照分辨率,如果不设置该值,服务端会给出默认配置,一般返回300dpi的图片,个别证件照规格会返回350dpi的图片faceRatioFloat否证件照中人脸占比参数,浮点类型,取值范围(0-1.0)不设置,则服务端会给出默认配置,一般为0.5,个别证件照规格为0.4,如果觉得我们返回的人脸过大或者过小,可以自行调节该值faceCenterRangeFloat否脸部中心高度在证件照中的位置,浮点类型,取值范围(0-1.0),默认值为0.45;这个参数可以决定人脸在证件照所处于的高度topEmptyFloat否用来约定生成证件照中,头顶距离照片顶部的距离范围,格式为“最小值,最大值”(使用英文字母逗号分隔),单位为像素,比如期望生成的证件照,人的头顶留空最少10个像素,最多30个像素,可以给出值 “10,30” 。注意不能两个值都设置为0,最大值必须大于最小值,最大值不能大于等于证件照的高度。当这个值不设置时,不做头顶留空的判断。人脸在证件照中的高度位置定位原则说明:先根据face_center_y(默认值为0.45)来定位人脸高度位置,然后对比top_empty(如有设置)参数,调整人脸位置,使其符合top_empty要求,最后还会判断人体底部是否可能悬空(原图人像高度不够时可能会发生这个问题),如果出现悬空的现象,则需要将人像向下移动至不悬空的位置base64、file、url 必须提供一个,优先级:base64 > file > url详见此处返回样例{ "code": 200,// 返回码,详见返回码说明 "msg": "成功", // 返回码对应描述 "taskNo": "254900443205524179659164",// 本次请求号 "charge": true,// 计费标志 "data": { "result": "xxx.jpg",//证件照图片URL。有效期1天,请尽快下载保存 "size": [ //证件照尺寸[宽, 高] "600", "800" ] } }
-
在数字化服务无处不在的今天,证件照作为身份认证、考试报名、政务办理等场景的“敲门砖”,其质量与合规性直接关系到业务流程的顺畅度。然而,对于广大开发者而言,自研一套能够精准检测人脸、智能抠图、自动替换背景并符合各国/各行业标准的证件照处理系统,不仅技术门槛高(涉及深度学习、图像分割、色彩校正等),而且开发周期长、维护成本巨大。随着AI技术的成熟,证件照检测接口API已成为企业快速集成该能力的最佳选择。功能特性支持多个检测项,包括:性别、年龄、头顶完整性、面部完整性、面部画质、拍摄距离、五官遮挡、胡子、头部是否摆正、露双耳、睁闭眼、嘴巴闭合、眼镜、妆容、配饰等。检测后返回所有检测项的检测结果,开发者可用于判断照片是否达到应用场景标准。接口说明请求参数名称类型必须说明imageTypeString是图片类型,支持jpg、jpeg、png、bmpbase64String否照片base64串fileFile否照片文件urlString否照片urlbase64、file、url 必须提供一个,优先级:base64 > file > url详见此处返回样例{ "code": 200,//返回码,详见code返回码说明 "msg": "成功",//code对应的描述 "charge": true,//计费标志 "taskNo": "256913605225230722458167",//本次唯一请求号 "data": { // 返回字段说明: https://file.jumdata.com/support/idphote-check/id-phote-checkv2-code.xlsx "failed_item_list": {//不符合预期 "FaceEar": [ { "msg": "左耳未露出", "code": "500031" //业务code } ], "FaceMustache": [ { "msg": "脸部存在胡须", "code": "500012" } ] }, "success_item_list": {//符合预期 "BodyInfo": [ { "msg": "身体检测符合预期", "code": "600070" } ], "FaceOutDetect": [ { "msg": "人像面部完整", "code": "600007" } ] } } }
-
现状每月开票高峰期,财务部是不是都像"战场"?手动录入客户税号、商品明细反复核对怕出错,开票后还要把数据手动录入财务系统做台账,一张发票耗时5分钟不说,月均还得处理因录各种原因的红冲重开。那么有没有办法解决如上现状呢?答案是自动开票API。随着数电发票的普及,自动开票API已成为企业财税数字化必不可少的工具。优势系统集成:企业的业务系统(如ERP、电商平台、收银系统)通过集成自动开票API,可以与税务服务平台或发票服务商直接进行数据交换 。通过这种直连,系统可以在触发特定条件(如订单支付完成、货物签收)时,自动完成发票的开具、填写、校验和推送,无需人工登录税务网站或手动录入数据。极致效率与成本优化:将人工从重复劳动中解放出来。例如,通过财务凭证接口平台,企业原本需要3-5天的手工录入工作可缩短至1小时内自动完成。数据准确与合规管理:接口直连确保了业务数据与开票数据的一致性,避免了手工录入导致的错填、漏填。提升用户体验:对于终端消费者而言,自动开票接口意味着“支付即开票”或“扫码即开票”,极大地提升了开票体验 。功能自动开票API支持:增值税专用发票,普通发票。功能包括:登录税局、实名认证、发票开具、发票交付、冲红等API。详见此处登录税局发票开具需先调用登录接口去登录税局登录之后,如果登录未过期,可一直发起开票任务,如果过期则再次调用登录接口每次发起开票任务,需要判断登录是否过期(调用判断登录状态接口)请求参数名称类型必须说明nsrsbhString是纳税人识别号dqString是地区编码sflxString是身份类型gryhmString是登录账号,该值可为:居民身份证/手机号/用户名gryhmmString是登录密码sjhmString否手机号码,除浙江外,该值必填登录成功返回样例{ "code": 200, "msg": "成功", "taskNo": "526782409178028989145499" } 发送验证码返回样例{ "code": 202, "msg": "已发送验证码,请再调用校验验证码接口完成登录", "taskNo": "526782409178028989145499", "data": { "validateCodeSmsTaskId": "12121321323123123323" // 短信验证码taskId,校验验证码时需要传入该参数 } } 实名认证登录之后还需要实名认证,步骤如下:调用获取人脸识别认证二维码接口获取二维码用税务App扫码进行人脸识别再调用获取人脸识别认证结果接口获取认证结果获取人脸识别认证二维码请求参数名称类型必须说明nsrsbhString是纳税人识别号typeString是扫码方式,1-税务app,2-个税app返回样例{ "code": 200, // 详见code返回码说明 "msg": "成功", "taskNo": "69564903663951243279", "data": { "qrcodeContent":"", // 二维码内容 "qrcodeImageUrl":"", // 二维码图片地址,有效期30分钟 "authenticationId":"" // 认证ID,通过该ID可查询是否已刷脸状态 } } 获取人脸识别认证结果请求参数名称类型必须说明nsrsbhString是纳税人识别号authenticationIdString是获取人脸识别认证二维码返回的认证IDtypeString是扫码方式,1-税务app,2-个税app认证成功返回样例{ "code": 200, "msg": "成功", "taskNo": "69564903663951243279" } 已生成二维码未扫脸返回样例{ "code": 211, "msg": "已生成二维码未扫脸", "taskNo": "69564903663951243279" } 二维码已过期返回样例{ "code": 212, "msg": "二维码已过期", "taskNo": "69564903663951243279" } 开票发票开具为异步方式,步骤如下:调用发起开票任务接口,返回任务id。用返回的任务id,调用发票开具结果查询接口,即可查询开票结果,结果主要包括:发票号码和开票日期。再用返回的发票号码和开票日期,调用发票下载接口,即可获取发票文件,支持(PDF, OFD, XML)。冲红当发票需要作废时,可调用红字发票开具接口来冲红,冲红支持全额冲红和部分冲红。详见此处
-
当我们日常出行时,免不了需要搜索一些地点,比如:餐饮、车站。那么地图搜索可以很好地实现搜索功能。地图搜索包括:关键字搜索:通过文本关键字搜索地点信息,文本可以是结构化地址,例如:浙江省杭州市余杭区文一西路890号;也可以是 POI 名称,例如:首开广场;周边搜索:可设置圆心和半径,搜索圆形区域内的地点信息;多边形区域搜索:可设置首尾连接的几何点组成多边形区域,搜索坐标对应多边形内的地点信息;ID搜索:可通过已知的地点 ID(POI ID)搜索对应地点信息,建议结合输入提示接口使用。输入提示:可根据输入的关键词查询返回建议列表。可接入地图搜索API来实现各种地图搜索功能。下面介绍关键字搜索和周边搜索的使用,其他可参见接口文档关键字搜索请求参数名称类型必须说明keywordsString是地点关键字,只支持一个关键字 ,文本总长度不可超过80字符typesString否指定地点类型,可支持传入多个分类,多个类型用 | 分割regionString否搜索区划,增加指定区域内数据返回权重,如需严格限制返回数据在区域内,请搭配使用cityLimit参数,可输入citycode,adcode,cityname,cityname仅支持城市级别和中文,如“北京市”cityLimitString否指定城市数据返回限制,可选值:true/false,为true时,仅返回region对应区域内数据showFieldsString否返回结果控制,showFields用来筛选返回结果中可选字段。例:“children,indoor,business,navi,photos”,未设置时,只返回基础信息类内字段。pageSizeString否当前分页展示的数据条数,取值1-25,默认为10pageNoString否分页,取值1-100,默认为1返回样例{ "msg": "成功",//返回码对应描述 "code": 200,//返回码,详见返回码说明 "taskNo": "202960247220113090298671",//本次请求号 "charge": true,//计费标志 "data": { "count": "10",//总数 "list": [ { "address": "龙井路1号",//详细地址 "location": "120.121282,30.222719",//经纬度 "id": "B023B13L9M",//唯一标识 "name": "杭州西湖风景名胜区",//名称 "pcode": "330000",//所属省份编码 "adcode": "330106",//所属区域编码 "pname": "浙江省",//所属省份 "cityname": "杭州市",//所属城市 "typecode": "110202",//分类编码 "adname": "西湖区",//所属区县 "citycode": "0571",//所属城市编码 "type": "风景名胜;风景名胜;国家级景点",//所属类型 "business": {//商业信息 "opentime_today": "24小时营业",//今日营业时间 "cost": "0.00",//人均消费,目前仅在餐饮、酒店、景点、影院类返回 "keytag": "5A景区",//标签 "rating": "4.9",//评分,目前仅在餐饮、酒店、景点、影院类返回 "business_area": "西湖",//所属商圈 "alias": "西湖景区",//别名 "tel": "0571-89586930",//联系电话 "tag": "面面,鸽子,东坡肉,龙井虾仁,西湖醋鱼,特色小吃",//特色美食内容 "opentime_week": "00:00-24:00"//营业时间描述 }, "photos": [ { "title": "",//图片介绍 "url": "" //图片的下载链接 } ], "children": [//子地点信息 { "typecode": "150904",//分类编码 "address": "南山路与广福里交叉口北80米",//详细地址 "subtype": "停车场",//所属类型 "name": "杭州西湖风景名胜区停车点",//名称 "location": "120.158045,30.241689",//经纬度 "id": "B0H2158T3K" //唯一标识 } ], "navi": {//导航位置相关信息 "navi_poiid": "H51F022001_476398;4093",//对应的导航引导点坐标,一般为各类出入口,方便结合导航、路线规划等服务使用 "entr_location": "120.153345,30.224729",//入口经纬度坐标 "exit_location": "" //出口经纬度坐标 }, "indoor": {//室内相关信息 "indoor_map": "0",//是否有室内地图标志,1为有,0为没有 "floor": "",//楼层索引,一般会用数字表示,例如8;indoor_map为0时不返回 "truefloor": "" //所在楼层,一般会带有字母,例如F8;indoor_map为0时不返回 } } ] } } 周边搜索请求参数名称类型必须说明keywordsString否地点关键字,只支持一个关键字 ,文本总长度不可超过80字符typesString否指定地点类型,可支持传入多个分类,多个类型用 | 分割,当keywords和types均为空的时候,默认指定types为050000(餐饮服务)、070000(生活服务)、120000(商务住宅)locationString是中心点坐标,圆形区域检索中心点,不支持多个点。经度和纬度用","分割,经度在前,纬度在后,经纬度小数点后不得超过6位radiusString否搜索半径,取值范围:0-50000,大于50000时按默认值,单位:米sortRuleString否排序规则,返回结果的排序规则。按距离排序:distance;综合排序:weight,默认distanceregionString否搜索区划,增加指定区域内数据返回权重,如需严格限制返回数据在区域内,请搭配使用cityLimit参数,可输入行政区划名或对应citycode或adcodecityLimitString否指定城市数据返回限制,可选值:true/false,为true时,仅返回region对应区域内数据showFieldsString否返回结果控制,showFields用来筛选返回结果中可选字段。例:“children,indoor,business,navi,photos”,未设置时,只返回基础信息类内字段。pageSizeString否当前分页展示的数据条数,取值1-25,默认为10pageNoString否分页,取值1-100,默认为1返回样例{ "msg": "成功",//返回码对应描述 "code": 200,//返回码,详见返回码说明 "taskNo": "202960247220113090298671",//本次请求号 "charge": true,//计费标志 "data": { "count": "10",//总数 "list": [ { "address": "龙井路1号",//详细地址 "location": "120.121282,30.222719",//经纬度 "id": "B023B13L9M",//唯一标识 "name": "杭州西湖风景名胜区",//名称 "pcode": "330000",//所属省份编码 "adcode": "330106",//所属区域编码 "pname": "浙江省",//所属省份 "cityname": "杭州市",//所属城市 "typecode": "110202",//分类编码 "adname": "西湖区",//所属区县 "citycode": "0571",//所属城市编码 "type": "风景名胜;风景名胜;国家级景点",//所属类型 "business": {//商业信息 "parking_type": "",//停车场类型 "cost": "0.00",//人均消费,目前仅在餐饮、酒店、景点、影院类返回 "keytag": "5A景区",//标签 "rating": "4.9",//评分,目前仅在餐饮、酒店、景点、影院类返回 "business_area": "西湖",//所属商圈 "alias": "西湖景区",//别名 "tel": "0571-89586930",//联系电话 "tag": "面面,鸽子,东坡肉,龙井虾仁,西湖醋鱼,特色小吃"//特色美食内容 }, "photos": [ { "title": "",//图片介绍 "url": "" //图片的下载链接 } ], "children": [//子地点信息 { "typecode": "150904",//分类编码 "address": "南山路与广福里交叉口北80米",//详细地址 "subtype": "停车场",//所属类型 "name": "杭州西湖风景名胜区停车点",//名称 "location": "120.158045,30.241689",//经纬度 "id": "B0H2158T3K" //唯一标识 } ], "navi": {//导航位置相关信息 "navi_poiid": "H51F022001_476398;4093",//对应的导航引导点坐标,一般为各类出入口,方便结合导航、路线规划等服务使用 "entr_location": "120.153345,30.224729",//入口经纬度坐标 "exit_location": "" //出口经纬度坐标 }, "indoor": {//室内相关信息 "indoor_map": "0",//是否有室内地图标志,1为有,0为没有 "floor": "",//楼层索引,一般会用数字表示,例如8;indoor_map为0时不返回 "truefloor": "" //所在楼层,一般会带有字母,例如F8;indoor_map为0时不返回 } } ] } }
-
之前笔者介绍了快递查询API接口,主要是需要输入快递单号主动查询,无论物流状态有无变化,都需要主动查询,有可能多次查询的结果是没有变化的。这种方式有一定的不足:实时性不高,需要每次查询方能知道最新状态。通常按次计费,无论物流状态有无变化,只要发起查询就计费,增加了查询成本。有没有实时性更高的,当物流状态发生变化时,主动通知我的API接口呢?答案是有的,即“快递订阅推送API接口”。与主动查询相比,它有以下优点:提交一次单号,无需频繁手动查询快递状态,提高了获取物流信息的效率和便捷性。减少查询成本(按单计费),提升系统效率不再需要反复请求接口获取最新状态。与快递查询接口类似,快递订阅推送API,同样支持1500+快递公司,与官网同步数据更新。下面来介绍快递订阅推送API接口的使用快递订阅主要分两步:先调用订阅接口,提交单号,发起订阅订阅成功后,当物流状态发生变动时,由接口提供者将当前物流状态推送给使用者详细参阅这里订阅说明请求参数名称类型必须说明expressCodeString否快递公司编号numberString是运单编号mobileString否顺丰速运、中通、跨越速运需要传入收/寄件人手机号或后四位手机号callBackUrlString是物流轨迹推送地址,以https/http协议开头,长度不能大于200推送说明当物流状态发生变动时,接口提供者将当前物流状态数据推送至接入者提供地址为callBackUrl的接口数据结构{ "expressCode":"EMS", // 快递公司编号 详见:快递公司编码对照表 "number":"9796578035309",// 运单编号 "logisticsStatus":"SIGN", // 当前最新物流状态 详见:物流状态编码对照表 "logisticsStatusDesc":"已签收", // 当前最新物流状态描述 "details":[ // 完整的物流轨迹 { "time":1632123146000, // 物流变更时间 "logisticsStatus":"ACCEPT", // 物流状态 详见:物流状态编码对照表 "subLogisticsStatus":"ACCEPT", // 物流子状态 详见:物流状态编码对照表 "desc":"", //物流路由信息描述内容 "areaCode":"CN330100000000", // 路由节点所在地区行政编码 "areaName":"浙江省,杭州市" // 路由节路由节点所在地区 }, { "time":1632140994000, "logisticsStatus":"TRANSPORT", "subLogisticsStatus":"TRANSPORT", "desc":"离开【杭州电商仓配揽投部】,下一站【杭州萧山区东片集散中心】", "areaCode":"CN330100000000", "areaName":"浙江省,杭州市" }, ... ] } 请求格式application/json返回接收结果使用者需要返回接收处理结果返回给接口提供者如果是接收失败,接口提供者会再次推送,最多推送3次//接收成功 { "success":true } // 接收失败 { "success":false, "msg": "接收失败" } 接收示例(java)@PostMapping("callbackUrl") public Map<String,Object> receive(@RequestBody String data, HttpServletRequest request) { log.info("接收到快递物流推送数据: {}", data); ... // 处理自己的业务逻辑 Map<String, Object> result = new HashMap() if (处理成功) { result.put("success",true); } else { result.put("success",false); result.put("msg","接收失败, xxx"); } return result; }
-
移动互联网发展到今天,地图应用已非常广泛,比如:实时定位:打开地图App,它会自动定位你的坐标,并显示出具体地址信息。车辆/资产追踪:监控系统收到一个GPS坐标,需要将其转换为“车辆正在京港澳高速保定段”这样的可读信息,方便管理员理解。地图搜索与导航:用户在导航App中输入目的地地址,App将其转换为坐标后才能进行路径规划。物流与配送:将收件人的地址转换为坐标,用于优化配送路线和跟踪。位置服务注册:为商家或服务地点在线上地图进行标注。照片地理标记:用手机拍摄的照片包含了GPS坐标,相册或社交软件可以通过逆地理编码自动为照片添加地点标签要实现以上功能,采用地理编码、逆地理编码就是最好的解决方法:地理编码,又称经纬度解析,是指将人类可读的地址信息转换为地理坐标(经纬度)逆地理编码,又称经纬度解析,是地理编码的逆向过程,是指将地理坐标(经纬度)转换为人类可读的地址描述的过程地图基于坐标系,目前主流的坐标系有:GCJ02:火星坐标系,国内使用,比如:腾讯、高德WGS84 :国际通用坐标系,比如:手机GPS设备、GoogleBD09:百度坐标系对于开发者,不需要自己建立庞大的地理数据库,而是调用成熟的API服务本文介绍基于火星坐标系的高德地图和百度坐标系的百度地图高德地图地理编码请求参数名称类型必须说明addressString是规则遵循:国家、省份、城市、区县、城镇、乡村、街道、门牌号码、屋邨、大厦,如:北京市朝阳区阜通东大街6号。cityString否outputString否可选输入内容包括:JSON,XML。设置 JSON 返回结果数据将会以JSON结构构成;如果设置 XML 返回结果数据将以 XML 结构构成。callbackString否callback 值是用户定义的函数名称,此参数只在 output 参数设置为 JSON 时有效。详细参阅这里返回样例{ "msg": "成功", "success": true, "code": 200, "taskNo": "74848319667949359984", "charge": true, "data": { "count": 1,//返回结果数目 "geocodes": [//地理编码信息列表 { "country": "中国",//国家 "formatted_address": "浙江省杭州市萧山区美哉美城",//格式化的地址 "province": "浙江省",//地址所在的省份名 "city": "杭州市",//地址所在的市区名称 "citycode": "0571",//城市编码 "district": "萧山区",//地址所在的区 "street": "街道",//街道 "number": "门牌",//门牌 "adcode": "330109",//区域编码 "location": "120.256544,30.224111",//经度,纬度 "level": "兴趣点",//匹配级别 } ] } 逆地理编码请求参数名称类型必须说明locationString是传入内容规则:经度在前,纬度在后,经纬度间以“,”分割,经纬度小数点后不要超过 6 位。poitypeString否支持传入POI TYPECODE及名称;支持传入多个POI类型,多值间用"radiusString否搜索半径。radius取值范围在0~3000,默认是1000。单位:米extensionsString否返回结果控制。extensions 参数默认取值是 base,也就是返回基本地址信息; extensions 参数取值为 all 时会返回基本地址信息、附近 POI 内容、道路信息以及道路交叉口信息。roadlevelString否道路等级。以下内容需要 extensions 参数为 all 时才生效。 可选值:0,1 当roadlevel=0时,显示所有道路 当roadlevel=1时,过滤非主干道路,仅输出主干道路数据outputString否返回数据格式类型。可选输入内容包括:JSON,XML。设置 JSON 返回结果数据将会以JSON结构构成;如果设置 XML 返回结果数据将以 XML 结构构成。callbackString否回调函数。callback 值是用户定义的函数名称,此参数只在 output 参数设置为 JSON 时有效homeorcorpString否是否优化POI返回顺序。以下内容需要 extensions 参数为 all 时才生效。 homeorcorp 参数的设置可以影响召回 POI 内容的排序策略,目前提供三个可选参数: 0:不对召回的排序策略进行干扰。 1:综合大数据分析将居家相关的 POI 内容优先返回,即优化返回结果中 pois 字段的poi顺序。 2:综合大数据分析将公司相关的 POI 内容优先返回,即优化返回结果中 pois 字段的poi顺序。详细参阅这里返回样例{ "msg": "成功", "success": true, "code": 200, "taskNo": "25247068960117401139", "charge": true, "data": { "regeocodes": [{ //逆地理编码列表 "formatted_address": "浙江省杭州市萧山区盈丰街道顺发·美哉美城",//坐标地址 "addressComponent": { //地址元素列表 "country": "中国",//国家 "province": "浙江省",//坐标点所在省名称 "citycode": "0571",//城市编码 "city": "杭州市",//坐标点所在城市名称 "adcode": "330109",//行政区编码 "towncode": "330109015000",//乡镇街道编码 "district": "萧山区",//坐标点所在区 "township": "盈丰街道",//坐标点所在乡镇/街道 "seaArea": "所属海域信息",//所属海域信息 "neighborhood": { //社区信息列表 "name": [],//社区名称 "type": []//POI类型 }, "building": { //楼信息列表 "name": [],//建筑名称 "type": []//类型 }, "streetNumber": { //门牌信息列表 "number": "281号",//门牌号 "distance": "52.8425",//门牌地址到请求坐标的距离 "street": "民和路",//街道名称 "location": "120.257076,30.224231",//坐标点 经度,纬度 "direction": "东"//方向 }, "businessAreas": [//经纬度所属商圈列表 { "businessArea":"",//商圈信息 "name": "宁围",//商圈名称 "location": "120.273765,30.225767",//商圈中心点经纬度 经度,纬度 "id": "330109"//商圈所在区域的adcode } ] }, "roads": [//道路信息列表 请求参数 extensions 为 all 时返回 { "id": "",//道路id "name": "",//道路名称 "distance": "",//道路到请求坐标的距离 米 "direction": "",//方位 "location": ""//坐标点 经度,纬度 } ], "roadinters": [//道路交叉口列表 请求参数 extensions 为 all 时返回 { "distance": "",//交叉路口到请求坐标的距离 米 "direction": "",//方位 "location": "",//路口经纬度 经度,纬度 "first_id": "",//第一条道路名称 "first_name": "",//第二条道路id "second_id": "",//第二条道路名称 "second_name": ""//第二条道路id } ], "pois":[//poi信息列表 { "id": "",//poi的id "name": "",//poi点名称 "type": "",//poi类型 "tel": "",//电话 "distance": "",//该POI的中心点到请求坐标的距离 米 "direction": "",//方向 "address": "",//poi地址信息 "location": "",//坐标点 经度,纬度 "businessarea": ""//poi所在商圈名称 } ], "aois":[//aoi信息列表 { "id": "",//aoi的id "name": "",//aoi点名称 "adcode": "",//所属 aoi 所在区域编码 "location": "",//所属 aoi 中心点坐标 经度,纬度 "area": "",//所属aoi点面积 "distance": ""//输入经纬度是否在aoi面之中 } ] }] } } 百度地图地理编码请求参数名称类型必须说明addressString是待解析的地址。最多支持84个字节。可以输入两种样式的值,分别是:1、标准的结构化地址信息,北京市海淀区上地十街十号【推荐,地址结构越完整,解析精度越高】2、支持“路与路交叉口”描述方式,如北一环路和阜阳路的交叉路口第二种方式并不总是有返回结果,只有当地址库中存在该地址描述时才有返回。cityString否地址所在的城市名。用于指定上述地址所在的城市,当多个城市都有上述地址时,该参数起到过滤作用,但不限制坐标召回城市。retCoordtypeString否添加后返回国测局经纬度坐标或百度米制坐标。示例:gcj02(国测局坐标,仅限中国)、bd09mc(百度墨卡托坐标)。默认bd09ll。outputString否输出格式为json或者xml,默认jsoncallbackString否将json格式的返回值通过callback函数返回以实现jsonp功能详细参阅这里返回样例{ "charge": true,//计费标志 "code": 200,//返回码,详见返回码说明 "msg": "成功",//返回码对应描述 "taskNo": "340833941206534747872156",//本次请求号 "data": { "confidence": 75,//描述打点绝对精度(即坐标点的误差范围)。confidence=100,解析误差绝对精度小于20m;confidence≥90,解析误差绝对精度小于50m;confidence≥80,解析误差绝对精度小于100m;confidence≥75,解析误差绝对精度小于200m;confidence≥70,解析误差绝对精度小于300m;confidence≥60,解析误差绝对精度小于500m;confidence≥50,解析误差绝对精度小于1000m;confidence≥40,解析误差绝对精度小于2000m;confidence≥30,解析误差绝对精度小于5000m;confidence≥25,解析误差绝对精度小于8000m;confidence≥20,解析误差绝对精度小于10000m; "analys_level": "POI",//可以解析地址文本中的最小地址结构,例如问题地址:北京市海淀区北京路百度大厦,analys_level:"POI",能精确理解的地址类型包含: 省 市 区县 乡镇 道路 门址 POI 。 "level": "商务大厦",//可以打点到地址文本中的真实地址结构,例如问题地址:北京市海淀区北京路百度大厦,level:"道路",能精确理解的地址类型,包含:UNKNOWN、国家、省、城市、区县、乡镇、村庄、道路、地产小区、商务大厦、政府机构、交叉路口、商圈、生活服务、休闲娱乐、餐饮、宾馆、购物、金融、教育、医疗 、工业园区 、旅游景点 、汽车服务、火车站、长途汽车站、桥 、停车场/停车区、港口/码头、收费区/收费站、飞机场 、机场 、收费处/收费站 、加油站、绿地、门址 "location": { "lng": 120.00135828539837,//经度值 "lat": 30.287874445189647 //纬度值 }, "precise": 1,//位置的附加信息,是否精确查找。1为精确查找,即准确打点;0为不精确,即模糊打点。 "comprehension": 35 //描述地址理解程度。分值范围0-100,分值越大,服务对地址理解程度越高(建议以该字段作为解析结果判断标准),当comprehension值为以下值时,对应的准确率如下:comprehension=100,解析误差100m内概率为91%,误差500m内概率为96%;comprehension≥90,解析误差100m内概率为89%,误差500m内概率为96%;comprehension≥80,解析误差100m内概率为88%,误差500m内概率为95%;comprehension≥70,解析误差100m内概率为84%,误差500m内概率为93%;comprehension≥60,解析误差100m内概率为81%,误差500m内概率为91%;comprehension≥50,解析误差100m内概率为79%,误差500m内概率为90%,解析误差:地理编码服务解析地址得到的坐标位置,与地址对应的真实位置间的距离。 } } 逆地理编码输入参数名称类型必须说明locationString是根据经纬度坐标获取地址,格式:纬度,经度。例如:120.067824,31.413068。coordtypeString否坐标的类型,目前支持的坐标类型包括:bd09ll(百度经纬度坐标)、bd09mc(百度米制坐标)、gcj02ll(国测局经纬度坐标,仅限中国)、wgs84( GPS经纬度)。默认bd09ll。retCoordtypeString否添加后返回国测局经纬度坐标或百度米制坐标。示例:gcj02(国测局坐标,仅限中国)、bd09mc(百度墨卡托坐标)。默认bd09ll。extensionsPoiString否extensions_poi=0,不召回pois数据。extensions_poi=1,返回pois数据(默认显示周边1000米内的poi),并返回sematic_description语义化数据。extensionsRoadString否当取值为true时,召回坐标周围最近的3条道路数据。默认false。extensionsTownString否当取值为true时,行政区划返回乡镇级数据(town),仅国内召回乡镇数据。当取值为false时,行政区划不返回乡镇级数据(town)。默认true。radiusString否以下内容需要 extensionsPoi=1时才生效;poi召回半径,允许设置区间为0-1000米,超过1000米按1000米召回。默认1000。callbackString否将json格式的返回值通过callback函数返回以实现jsonp功能。poiTypesString否以下内容需要 extensionsPoi=1时才生效;可以选择poi类型召回不同类型的poi,例如poiTypes=酒店,如想召回多个POI类型数据,可以languageString否指定召回的行政区划语言类型。 召回行政区划语言list(全量支持的语言见示例)。 当language=local时,根据请求中坐标所对应国家的母语类型,自动选择对应语言类型的行政区划召回。目前支持多语言的行政区划区划包含country、province、city、district。包含:el gu en vi ca it iw sv eu ar cs gl id es en-GB ru sr nl pt tr tl lv en-AU lt th ro fil ta fr bg hr bn de hu fa hi pt-BR fi da ja te pt-PT ml ko kn sk zh-CN pl uk sl mr locallanguageAutoString否当用户指定language参数时,是否自动填充行政区划。1填充,0不填充。填充:当服务按某种语言类别召回时,若某一行政区划层级的语言数据未覆盖,则按照“英文→中文→本地语言”类别行政区划数据对该层级行政区划进行填充,保证行政区划数据召回完整性。详细参阅这里返回样例{ "charge": true,//计费标志 "code": 200,//返回码,详见返回码说明 "msg": "成功",//返回码对应描述 "taskNo": "007493807239868764046631",//本次请求号 "data": { "formatted_address": "江苏省无锡市滨湖区",//结构化地址(不包含POI信息)。如果需要标准的结构化地址,比如获取XX路XX号,推荐使用这个参数 "business": "",//坐标所在商圈信息,如 "人民大学,中关村,苏州街"。最多返回3个。 "sematic_description": "梨梨园上草土菜馆客栈西888米",//当前位置结合POI的语义化结果描述。需设置extensionsPoi=1才能返回。 "roads": [ { "name": "",//周边道路名称 "distance": ""//传入的坐标点距离道路的大概距离 } ], "formatted_address_poi": "江苏省无锡市滨湖区马山街道梨梨园上草土菜馆客栈西888米",//结构化地址(包含POI信息)。需设置extensions_poi=1才能返回。如果需要详细的地址描述,推荐使用这个参数。 "location": { "lng": 120.06782399999993,//经度值 "lat": 31.413067895001422 //纬度值 }, "edz": { //所属开发区 "name": "" // }, "poiRegions": [ { "direction_desc": "",//请求中的坐标与所归属区域面的相对位置关系 "name": "",//归属区域面名称 "tag": "",//归属区域面类型 "distance": "",//离坐标点距离 "uid": "",//poi唯一标识 } ], "pois": [ { "zip": "",//邮编 "uid": "60c55c3bd4fbb98c276e98a7",//poi唯一标识 "distance": "888",//离坐标点距离 "poiType": "美食",// "name": "梨梨园上草土菜馆客栈",//poi名称 "tel": "",//电话 "parent_poi": { //poi对应的主点poi(如,海底捞的主点为上地华联,该字段则为上地华联的poi信息。如无,该字段为空),包含子字段和pois基础召回字段相同。 "uid": "",// "distance": "",// "name": "",// "tag": "",// "addr": "",// "point": { "x": 0,// "y": 0 // }, "direction": ""// }, "tag": "美食",//poi类型,如’美食;中餐厅’。tag与poiType字段均为poi类型,建议使用tag字段,信息更详细 "addr": "江苏省无锡市滨湖区马山镇和平村北门环山西路91号",//地址信息 "cp": " ",// "point": { //poi坐标 "x": 120.07520393899887,// "y": 31.410457606202677 // }, "direction": "西"//和当前坐标点的方向 } ], "addressComponent": { //注意,国外行政区划,字段仅代表层级 "city_level": 2,//城市所在级别(仅国外有参考意义。国外行政区划与中国有差异,城市对应的层级不一定为『city』。country、province、city、district、town分别对应0-4级,若city_level=3,则district层级为该国家的city层级) "country": "中国",//国家 "town": "马山街道",//乡镇名,需设置extensions_town=true时才会返回 "distance": "",//区县名 "city": "无锡市",//城市名 "adcode": "320211",//行政区划代码 "country_code_iso": "CHN",//国家英文缩写(三位) "country_code_iso2": "CN",//国家英文缩写(两位) "country_code": 0,//国家编码 "town_code": "320211009",//乡镇id "province": "江苏省",//省名 "street": "",//道路名 "district": "滨湖区",//相对当前坐标点的距离,当有门牌号的时候返回数据 "street_number": "",//道路门牌号 "direction": ""//相对当前坐标点的方向,当有门牌号的时候返回数据 } } }
上滑加载中
推荐直播
-
华为云码道-玩转OpenClaw,在线养虾2026/03/11 周三 19:00-21:00
刘昱,华为云高级工程师/谈心,华为云技术专家/李海仑,上海圭卓智能科技有限公司CEO
OpenClaw 火爆开发者圈,华为云码道最新推出 Skill ——开发者只需输入一句口令,即可部署一个功能完整的「小龙虾」智能体。直播带你玩转华为云码道,玩转OpenClaw
回顾中 -
华为云码道-AI时代应用开发利器2026/03/18 周三 19:00-20:00
童得力,华为云开发者生态运营总监/姚圣伟,华为云HCDE开发者专家
本次直播由华为专家带你实战应用开发,看华为云码道(CodeArts)代码智能体如何在AI时代让你的创意应用快速落地。更有华为云HCDE开发者专家带你用码道玩转JiuwenClaw,让小艺成为你的AI助理。
回顾中 -
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中
热门标签