文本工具
正常
NEW
独立的文本处理接口:字数统计、大小写与命名转换、Base64、URL 编解码、Hash、JSON 格式化/压缩/校验、邮箱/URL/手机号/IP/日期/数字提取、全角半角转换。纯本地计算,不依赖数据库、Redis 或第三方服务。
协议:HTTP
格式:JSON
版本:v1.0.0日调用量:1268次
健康检查
健康检查
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/text/ping
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.name |
string |
- |
| data.version |
string |
- |
| data.time |
string |
- |
| data.timezone |
string |
- |
| data.limits |
object |
- |
| data.case_modes |
array |
- |
| data.hash_algos |
array |
- |
| data.endpoints |
array |
- |
请求示例
返回示例
{"msg":"pong","code":0,"data":{"name":"文本工具 API","time":"2026-11-01 14:00:00","limits":{"url_length":2048,"array_items":20,"text_length":100000,"base64_decode_bytes":65536},"version":"1.0.0","timezone":"Asia/Shanghai","endpoints":["ping","stats","case","base64","url","hash","json","extract","width"],"case_modes":["upper","lower","title","sentence","camel","pascal","snake","kebab","constant"],"hash_algos":["md5","sha1","sha256","sha512","crc32b"]}}
文本统计
文本统计
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/stats
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待统计文本,可为空字符串 |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.length |
int |
- |
| data.length_no_spaces |
int |
- |
| data.bytes |
int |
- |
| data.lines |
int |
- |
| data.paragraphs |
int |
- |
| data.words |
int |
- |
| data.chars |
object |
- |
| data.reading_time_seconds |
int |
- |
| data.reading_time |
string |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"bytes":22,"chars":{"cjk":5,"latin":5,"other":0,"digits":0,"whitespace":2,"punctuation":0},"lines":2,"words":1,"length":12,"paragraphs":1,"reading_time":"不到 1 分钟","length_no_spaces":10,"reading_time_seconds":2}}
大小写 / 命名转换
大小写 / 命名转换
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/case
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待转换文本 |
| mode |
string |
否 |
转换模式,默认 lower |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.mode |
string |
- |
| data.text |
string |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"mode":"snake","text":"xml_http_request"}}
Base64 编解码
Base64 编解码
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/base64
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待编码文本或待解码 Base64 |
| action |
string |
否 |
encode(默认)/ decode |
| urlsafe |
bool |
否 |
1 时使用 URL-safe Base64(-_、去掉 =),默认 0 |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.action |
string |
- |
| data.urlsafe |
bool |
- |
| data.text |
string |
- |
| data.length |
int |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"text":"aGVsbG8_Pg","action":"encode","length":10,"urlsafe":true}}
URL 编解码
URL 编解码
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/url
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待编码文本或待解码字符串 |
| action |
string |
否 |
encode(默认)/ decode |
| raw |
bool |
否 |
1 时使用 rawurlencode / rawurldecode(空格为 %20),默认 0(空格为 +) |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.action |
string |
- |
| data.raw |
bool |
- |
| data.text |
string |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"raw":false,"text":"%E4%BD%A0%E5%A5%BD+world","action":"encode"}}
哈希计算
哈希计算
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/hash
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待计算文本 |
| algo |
string |
否 |
md5 / sha1 / sha256(默认)/ sha512 / crc32b |
| upper |
bool |
否 |
1 返回大写十六进制,默认小写 |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.algo |
string |
- |
| data.upper |
bool |
- |
| data.hash |
string |
- |
| data.length |
int |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"algo":"sha256","hash":"2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824","upper":false,"length":64}}
JSON 格式化 / 压缩 / 校验
非法 JSON 在 validate 下返回 valid=false 和 error;format / minify 下返回 4001。
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/json
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
JSON 字符串 |
| action |
string |
否 |
format(默认)/ minify / validate |
| indent |
string |
否 |
2(默认)/ 4 / tab,仅 format 有效 |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.action |
string |
- |
| data.valid |
bool |
- |
| data.text |
string |
- |
| data.length |
int |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"text":"{\n \"b\": 2,\n \"a\": 1\n}","valid":true,"action":"format","length":22}}
信息提取
phones 目前匹配中国大陆 11 位手机号(1[3-9] 开头)。
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/extract
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待提取文本 |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.total |
int |
- |
| data.counts |
object |
- |
| data.emails |
array |
- |
| data.urls |
array |
- |
| data.phones |
array |
- |
| data.ipv4 |
array |
- |
| data.dates |
array |
- |
| data.numbers |
array |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"ipv4":["8.8.8.8"],"urls":["https://example.com/x"],"dates":["2026-11-01"],"total":9,"counts":{"ipv4":1,"urls":1,"dates":1,"emails":1,"phones":1,"numbers":4},"emails":["a@b.com"],"phones":["13800138000"],"numbers":["13800138000","2026","11","01"]}}
全角 / 半角转换
全角 / 半角转换
调用方式:在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/text/width
JSON
请求参数
| 参数名 | 类型 | 必填 | 说明 |
| key |
string |
是 |
您的API密钥,可在个人中心获取 |
| text |
string |
是 |
待转换文本 |
| mode |
string |
否 |
full_to_half(默认)/ half_to_full |
返回参数说明
| 参数名 | 类型 | 说明 |
| code |
int |
- |
| msg |
string |
- |
| data |
object |
- |
| data.mode |
string |
- |
| data.text |
string |
- |
请求示例
返回示例
{"msg":"success","code":0,"data":{"mode":"full_to_half","text":"ABC123 "}}
产品说明
产品概述
独立的文本处理接口:字数统计、大小写与命名转换、Base64、URL 编解码、Hash、JSON 格式化/压缩/校验、邮箱/URL/手机号/IP/日期/数字提取、全角半角转换。纯本地计算,不依赖数据库、Redis 或第三方服务。
使用场景
数据查询:快速集成 文本工具 到您的应用中
业务系统:将 文本工具 数据嵌入业务流程
开发工具:通过 API 接口获取 开发工具 数据
数据分析:基于 文本工具 数据进行分析和决策
费用计算
按次计费单价
¥0.002
/ 次
每次调用接口从账户余额中扣除相应费用,VIP 用户可享折扣
扣费优先级
计费方式详解
· 接口每日免费额度已关闭
· VIP 用户月度免费额度:
· 个人版:每月 5000 次,本接口月上限 5000 次
· 专业版:每月 30000 次,本接口月上限 30000 次
· 企业版:每月 200000 次,本接口月上限 200000 次
· 账户如有注册/活动赠送的免费次数,会优先于接口免费额度扣减
· VIP 月度免费额度仅适用于单次售价不高于 ¥0.0800/次 的接口;接口每日免费额度按接口配置执行
VIP 月度免费额度每月重置,未使用部分不累计至下月。
预付费购买固定调用次数,折算单价与按次付费相同,用完为止。
次数包为独立计费,不与 VIP 折扣叠加。
请在有效期内使用,过期后未使用的次数不可再用。
按次从账户余额扣除费用;所有用户可享量折扣,VIP 用户额外享 VIP 折扣。
扣费公式:实际扣费 = 接口单价 × (1 - VIP 折扣比例 - 量折扣比例),并受总折扣上限和最低利润率保护约束
VIP 折扣:
个人版9折
专业版8折
企业版7折
量折扣:
月付费调用 ≥1000 次享 2%、
月付费调用 ≥10000 次享 5%、
月付费调用 ≥20000 次享 10%
· 量折扣按账号当月全部接口的付费调用次数统计,达到更高档位时按更高档位计算
总折扣上限:VIP 折扣 + 量折扣合计不超过 50%
最低利润率保护:折后价不得低于成本价 × (1 + 15%);若接口售价本身低于该保护价,则取消折扣并按售价计费
余额不足时调用将失败,请及时充值。
VIP 权益对比
| 等级 | 每月免费次数 | 本接口月免费上限 | 折扣 | VIP 折后单价 |
| 免费版 |
按接口配置 |
— |
- |
¥0.002/次 |
| 个人版 |
5000 次 |
5000 次 |
10% |
¥0.0018/次 |
| 专业版 |
30000 次 |
30000 次 |
20% |
¥0.0016/次 |
| 企业版推荐 |
200000 次 |
200000 次 |
30% |
¥0.0014/次 |
* VIP 月度免费额度每月重置。每月免费次数为账号级 VIP 月额度,本接口月免费上限为其中对本接口的限制(接口可单独设置上限或关闭)。VIP 折扣仅适用于余额扣费方式,VIP 折后单价不含量折扣。
本接口已关闭接口级月度免费额度(不影响 VIP 月度免费额度)。接口每日免费额度已关闭。
费用计算示例
* 以下示例未包含量折扣,量折扣按账号当月全部接口的付费调用量另行计算。
示例1:普通用户按次付费
调用 1000 次,费用 = 0.002 × 1000 = ¥2.00
示例2:个人版用户按次付费(仅 VIP 折扣,已考虑最低利润率保护)
调用 1000 次,折扣约 10%,费用 = 0.002 × (1 - 10%) × 1000 ≈ ¥1.80
错误码说明
本接口未定义专属错误码,调用时请参考通用错误码体系。
查看通用错误码参考
| 错误码 | 说明 | 解决方案 |
| 200 | 请求成功 | - |
| 400000 | 请求参数错误 | 检查参数名、格式与取值 |
| 401000 | 认证失败 | 检查 Authorization: Bearer 密钥是否正确、是否过期 |
| 401002 | 缺少 API 认证参数 | 请求未携带 key,请通过 URL 参数 key 或请求头 Authorization 传递密钥 |
| 402000 | 账户余额不足 | 充值后重试 |
| 403000 | 无访问权限 | 确认密钥权限、接口范围与 IP 白名单是否满足要求 |
| 404001 | 接口或端点不存在 | 检查 API 与端点的请求路径 |
| 409000 | 请求冲突 | 请稍后重试 |
| 422000 | 参数校验失败 | 检查参数格式与取值 |
| 429001 | 请求频率超限(QPS) | 降低请求频率,或升级套餐提升额度 |
| 429002 | 分钟级调用频率超限 | 降低调用频率,或升级套餐提升额度 |
| 429003 | 小时级调用额度已用完 | 升级套餐提升额度,或整点后重试 |
| 429004 | 今日调用额度已用完 | 升级套餐提升额度,或次日重试 |
| 500000 | 服务器内部错误 | 携带响应中的 request_id 联系技术支持 |
| 502000 | 服务暂时不可用 | 稍后重试 |
| 503000 | 服务暂时不可用 | 稍后重试 |
| 504000 | 请求超时 | 稍后重试 |