{"code":200,"data":{"auth":"Bearer Token 或 X-API-Key（免费工具可匿名）","count":19,"tools":[{"accepts":"json","description":"科学计算器（expr 表达式引擎）：四则 / 幂 / 取模、三角与反三角（角度制 / 弧度制）、双曲、对数指数、开方、阶乘、排列组合、取整与聚合函数，常量 pi / e / phi / tau","endpoint":"/api/v1/open/calculator","name":"计算器","params":[{"name":"expression","type":"string","required":true,"description":"数学表达式，如 (1+2)*3^2、sqrt(2)、sin(30)、log(1000)、fact(10)、combine(49,6)；支持 × ÷ ^ 全角括号与 π"},{"name":"angle","type":"string","required":false,"default":"deg","options":["deg","rad"],"description":"三角函数角度制：deg 角度（sin(30)=0.5）/ rad 弧度"},{"name":"precision","type":"number","required":false,"default":10,"description":"结果有效数字（1-15，默认 10）"}],"slug":"calculator"},{"accepts":"json","description":"JSON / SQL / HTML / XML / JS / JSX / TS / CSS 美化与压缩：esbuild + tdewolff 业界标准引擎，SQL 字符串/注释/括号感知","endpoint":"/api/v1/open/code-format","name":"代码格式化","params":[{"name":"text","type":"string","required":true,"description":"代码文本（最长 2MB）"},{"name":"lang","type":"string","required":false,"default":"json","options":["json","sql","html","xml","js","jsx","ts","tsx","css"],"description":"代码语言"},{"name":"action","type":"string","required":false,"default":"beautify","options":["beautify","compress"],"description":"beautify 美化 / compress 压缩"},{"name":"indent","type":"string","required":false,"default":"2","options":["2","4","tab"],"description":"美化缩进（JS/CSS 由 esbuild 固定 2 空格）"},{"name":"keyword_case","type":"string","required":false,"default":"upper","options":["upper","lower","preserve"],"description":"SQL 关键字大小写"},{"name":"keep_comments","type":"boolean","required":false,"default":false,"description":"压缩时保留注释"}],"slug":"code-format"},{"accepts":"json","description":"实时汇率查询、货币换算与 30/90/365 天历史走势（数据源每日更新）","endpoint":"/api/v1/open/exchange","name":"汇率换算","params":[{"name":"action","type":"string","required":false,"default":"convert","options":["convert","history","rates"],"description":"操作类型：convert 换算 / history 走势 / rates 汇率表"},{"name":"amount","type":"number","required":false,"default":1,"description":"金额（convert）"},{"name":"from","type":"string","required":false,"default":"USD","description":"源货币代码（如 USD / CNY / EUR / JPY）"},{"name":"to","type":"string","required":false,"default":"CNY","description":"目标货币代码"},{"name":"days","type":"number","required":false,"default":30,"description":"history：历史天数（7-365）"}],"slug":"exchange"},{"accepts":"multipart","description":"图片格式互转：JPG / PNG / GIF / WEBP / BMP / TIFF 输入，输出 JPG / PNG / WebP；动图 GIF 可转动画 WebP（保帧序与速度），手机照片 EXIF 方向自动校正","endpoint":"/api/v1/open/file-convert","name":"文件格式转换","params":[{"name":"files","type":"file","required":true,"description":"图片文件（单个，最大 20MB）"},{"name":"output","type":"string","required":false,"default":"png","options":["png","jpg","webp"],"description":"输出格式"},{"name":"quality","type":"number","required":false,"default":90,"description":"JPG 输出质量（40-100）"},{"name":"max_side","type":"number","required":false,"default":0,"description":"最长边限制（像素，0 = 原尺寸）"}],"slug":"file-convert"},{"accepts":"multipart","description":"专业图片压缩：Lanczos3 高质量缩放、按质量或目标体积压缩、JPG / PNG / WebP / AVIF 输出，动图保留动画（GIF / WebP / AVIF 互转），EXIF 方向自动校正。WebP 与 AVIF 由 libwebp / libavif WASM 引擎编码，同画质体积更小。","endpoint":"/api/v1/open/image-compress","name":"图片压缩","params":[{"name":"files","type":"file","required":true,"description":"图片文件（单张，最大 20MB）"},{"name":"mode","type":"string","required":false,"default":"quality","options":["quality","target"],"description":"压缩模式：quality 按质量 / target 按目标体积"},{"name":"quality","type":"number","required":false,"default":75,"description":"编码质量（40-95，target 模式作为质量下限）"},{"name":"target_kb","type":"number","required":false,"default":0,"description":"目标体积（KB，10-20480；仅 target 模式且 JPG / WebP / AVIF 有效）"},{"name":"max_side","type":"number","required":false,"default":0,"description":"最长边限制（像素，0 = 保持原尺寸）"},{"name":"output","type":"string","required":false,"default":"auto","options":["auto","jpeg","png","webp","avif"],"description":"输出格式：auto 智能选择（透明 → PNG / 不透明 → JPG）；动图 auto 保持原��式"}],"slug":"image-compress"},{"accepts":"multipart","description":"按预设比例或自由区域裁剪，支持锚点定位、90° 直角旋转、任意角度旋转与水平 / 垂直翻转，输出 JPG / PNG / WebP","endpoint":"/api/v1/open/image-crop","name":"图片裁剪","params":[{"name":"files","type":"file","required":true,"description":"图片文件（单张，最大 20MB；动图取首帧）"},{"name":"ratio","type":"string","required":false,"default":"1:1","options":["1:1","4:3","3:4","16:9","9:16","free"],"description":"裁剪比例；free 时使用 x/y/width/height"},{"name":"anchor","type":"string","required":false,"default":"center","options":["center","top","bottom","left","right"],"description":"裁剪区域定位"},{"name":"x","type":"number","required":false,"description":"free：左上角 x"},{"name":"y","type":"number","required":false,"description":"free：左上角 y"},{"name":"width","type":"number","required":false,"description":"free：裁剪宽度"},{"name":"height","type":"number","required":false,"description":"free：裁剪高度"},{"name":"rotate","type":"number","required":false,"default":0,"options":["0","90","180","270"],"description":"直角旋转（度）"},{"name":"angle","type":"number","required":false,"default":0,"description":"任意角度旋转（1-359，rotate 之外的微调；空白底填充）"},{"name":"flip","type":"string","required":false,"default":"none","options":["none","h","v"],"description":"翻转：h 水平 / v 垂直"},{"name":"output","type":"string","required":false,"default":"keep","options":["keep","png","jpg","webp"],"description":"输出格式：keep 智能（透明 → PNG / 不透明 → JPG）"},{"name":"quality","type":"number","required":false,"default":90,"description":"JPG 输出质量（40-100）"}],"slug":"image-crop"},{"accepts":"json","description":"格式化、压缩、键排序、语法校验、jq 查询、JSON ↔ YAML、转义反转义；保留键序与数字精度","endpoint":"/api/v1/open/json-tool","name":"JSON 工具箱","params":[{"name":"text","type":"string","required":true,"description":"JSON 或 YAML 文本（最长 2MB）"},{"name":"action","type":"string","required":false,"default":"format","options":["format","compress","sort","validate","jq","to_yaml","from_yaml","escape","unescape"],"description":"format 格式化 / compress 压缩 / sort 键排序 / validate 校验 / jq 查询 / to_yaml 转 YAML / from_yaml YAML 转 JSON / escape 转义 / unescape 反转义"},{"name":"indent","type":"string","required":false,"default":"2","options":["2","4","tab"],"description":"格式化缩进（2/4 空格或 tab）"},{"name":"sort_keys","type":"boolean","required":false,"default":false,"description":"format 时按键名排序"},{"name":"query","type":"string","required":false,"description":"jq 查询表达式，如 .users[] | select(.age \u003e 18) | .name"},{"name":"raw_output","type":"boolean","required":false,"default":false,"description":"jq 字符串结果原样输出（不加 JSON 引号）"}],"slug":"json-tool"},{"accepts":"multipart","description":"服务端 RapidOCR（PP-OCRv6）开源引擎，高精度识别图片中的中英文与数字，支持印刷体、截图与扫描件","endpoint":"/api/v1/open/ocr","name":"文字识别","params":[{"name":"files","type":"file","required":true,"description":"图片文件（PNG / JPG / BMP / WebP，最大 15MB）"}],"slug":"ocr"},{"accepts":"multipart","description":"PDF 全流程工具：合并 / 拆分 / 旋转 / 压缩 / 加密 / 解密 / 提取图片，由 pdfcpu 引擎完成","endpoint":"/api/v1/open/pdf-merge","name":"PDF工具箱","params":[{"name":"action","type":"string","required":false,"default":"merge","options":["merge","split","rotate","compress","encrypt","decrypt","extract-images"],"description":"操作类型"},{"name":"files","type":"file","required":true,"description":"PDF 文件（合并 2-10 个；其他操作单个，最大 20MB）"},{"name":"ranges","type":"string","required":false,"description":"merge：与文件顺序对应的页码 JSON 数组，如 [\"1-3,5\",\"\"]；split(ranges)：页码段数组，如 [\"1-3\",\"4-6\"]"},{"name":"split_mode","type":"string","required":false,"default":"each","options":["each","span","ranges"],"description":"split：拆分方式（每页 / 每 N 页 / 自定义页码段）"},{"name":"span","type":"number","required":false,"default":1,"description":"split(span)：每份页数（1-50）"},{"name":"rotation","type":"number","required":false,"default":90,"options":["90","180","270"],"description":"rotate：顺时针旋转角度"},{"name":"pages","type":"string","required":false,"description":"rotate / extract-images：页码选择，如 1-3,5（空=全部页）"},{"name":"user_password","type":"string","required":false,"description":"encrypt：打开文档所需密码"},{"name":"owner_password","type":"string","required":false,"description":"encrypt：所有者密码（可选，默认同用户密码）"},{"name":"key_length","type":"number","required":false,"default":256,"options":["128","256"],"description":"encrypt：AES 密钥长度"},{"name":"permissions","type":"string","required":false,"default":"all","options":["all","print","none"],"description":"encrypt：权限（全部 / 仅打印 / 不允许）"},{"name":"password","type":"string","required":false,"description":"decrypt：PDF 打开密码"},{"name":"output","type":"string","required":false,"description":"输出文件名（可选）"}],"slug":"pdf-merge"},{"accepts":"multipart","description":"PDF 转 Word：安装 pdf2docx 引擎时版面级高保真转换（保留排版 / 图片 / 表格），否则回退到文本提取生成可编辑 DOCX","endpoint":"/api/v1/open/pdf-to-word","name":"PDF转Word","params":[{"name":"files","type":"file","required":true,"description":"PDF 文件（单个，最大 20MB）"},{"name":"mode","type":"string","required":false,"default":"auto","options":["auto","hifi","text"],"description":"转换模式：auto 优先 pdf2docx 高保真自动回退 / hifi 强制高保真（libreoffice 为兼容别名） / text 强制文本提取"}],"slug":"pdf-to-word"},{"accepts":"both","description":"生成高清个性二维码：纯色 / 渐变配色、圆点 / 液体 / 条纹 / 链条码点样式、圆角定位角、中央 Logo、图片半调风格，支持透明底，PNG / JPG 输出","endpoint":"/api/v1/open/qrcode","name":"二维码生成","params":[{"name":"content","type":"string","required":true,"description":"二维码内容（文本 / 链接，最长 1000 字符）"},{"name":"size","type":"number","required":false,"default":320,"description":"图片边长（像素，128-1024，实际输出按码点整数取近似值）"},{"name":"level","type":"string","required":false,"default":"M","options":["L","M","Q","H"],"description":"容错级别：L 7% / M 15% / Q 25% / H 30%（带 Logo 建议用 H）"},{"name":"shape","type":"string","required":false,"default":"square","options":["square","circle","liquid","stripe","chain"],"description":"码点样式：square 方块 / circle 圆点 / liquid 液体流 / stripe 条纹 / chain 链条"},{"name":"finder","type":"string","required":false,"default":"auto","options":["auto","square","rounded"],"description":"定位角样式：auto 时方块码点配方角、其余配圆角"},{"name":"fg_color","type":"string","required":false,"default":"#000000","description":"前景色（HEX，如 #1e6dfe）；设置渐变后失效"},{"name":"bg_color","type":"string","required":false,"default":"#ffffff","description":"背景色（HEX，或 transparent 透明底；透明底强制 PNG 输出）"},{"name":"gradient_from","type":"string","required":false,"description":"渐变起点色（HEX，与 gradient_to 同时提供时启用渐变前景）"},{"name":"gradient_to","type":"string","required":false,"description":"渐变终点色（HEX）"},{"name":"gradient_angle","type":"number","required":false,"default":45,"description":"渐变角度（0 右 / 90 上 / 180 左 / 270 下）"},{"name":"mode","type":"string","required":false,"default":"none","options":["none","logo","halftone"],"description":"上传图片用途：logo 中央图标（自动留安全区）/ halftone 半调图片风格（图片即背景）"},{"name":"files","type":"file","required":false,"description":"图片文件（mode 非 none 时必传，PNG / JPG / GIF / WEBP，最大 5MB）"},{"name":"output","type":"string","required":false,"default":"png","options":["png","jpg"],"description":"输出格式（透明底强制 PNG）"}],"slug":"qrcode"},{"accepts":"multipart","description":"批量重命名：支持模板变量（原名 / 扩展名 / 序号 / 日期时间）、多种排序与大小写转换，重名自动编号，ZIP 打包下载","endpoint":"/api/v1/open/rename","name":"文件重命名","params":[{"name":"files","type":"file","required":true,"description":"文件（可多选，最多 100 个 / 总计 50MB）"},{"name":"pattern","type":"string","required":false,"default":"{name}_{nn}","description":"命名模板：{name} 原名 / {ext} 扩展名 / {n} 序号 / {nn} 补零序号 / {date} 日期 / {time} 时间 / {datetime} 日期时间 / {original} 原文件名"},{"name":"start","type":"number","required":false,"default":1,"description":"起始序号"},{"name":"padding","type":"number","required":false,"default":3,"description":"序号补零位数（1-6）"},{"name":"case","type":"string","required":false,"default":"none","options":["none","upper","lower"],"description":"文件名大小写转换"},{"name":"sort","type":"string","required":false,"default":"none","options":["none","name","size","ext"],"description":"处理顺序：none 保持上传顺序 / name 按原文件名 / size 按大小 / ext 按扩展名"},{"name":"keep_ext","type":"boolean","required":false,"default":true,"description":"自动保留原扩展名（模板中使用 {ext} 时不再重复追加）"},{"name":"prefix","type":"string","required":false,"description":"兼容旧参数：未提供 pattern 时使用前缀命名"},{"name":"output","type":"string","required":false,"description":"ZIP 文件名"}],"slug":"rename"},{"accepts":"both","description":"CSV / JSON / Markdown / Excel 全互通：Excel 带表头样式、冻结首行、自动筛选与列宽，支持多工作表","endpoint":"/api/v1/open/sheet-convert","name":"表格转换","params":[{"name":"text","type":"string","required":false,"description":"表格文本（与 files 二选一，最长 2MB）"},{"name":"files","type":"file","required":false,"description":"上传文件：csv / json / md / txt / xlsx（≤20MB）"},{"name":"from","type":"string","required":false,"default":"auto","options":["auto","csv","json","md","xlsx"],"description":"输入格式（auto 按扩展名/内容识别）"},{"name":"to","type":"string","required":false,"default":"json","options":["json","csv","md","xlsx"],"description":"输出格式"},{"name":"delimiter","type":"string","required":false,"default":"auto","description":"CSV 分隔符：auto / , / ; / | / \\\\t"},{"name":"header","type":"boolean","required":false,"default":true,"description":"首行是否为表头"},{"name":"sheet","type":"string","required":false,"description":"Excel 读取的工作表名；all 表示全部工作表"},{"name":"infer_types","type":"boolean","required":false,"default":false,"description":"输出 Excel 时自动识别数字 / 布尔值"}],"slug":"sheet-convert"},{"accepts":"json","description":"文本工作台：大小写 / 空白 / 行操作 / 自然排序 / 编码解码 / 提取 / 正则替换，支持实时统计","endpoint":"/api/v1/open/text-edit","name":"文本处理","params":[{"name":"text","type":"string","required":true,"description":"文本内容（最长 200 万字符）"},{"name":"action","type":"string","required":true,"options":["upper","lower","title","trim","trim_lines","remove_empty","dedup","dedup_ci","sort_asc","sort_desc","sort_natural","sort_length","reverse_lines","reverse_text","shuffle","numbering","indent","outdent","collapse_spaces","remove_spaces","wrap","fullwidth","halfwidth","extract_emails","extract_urls","extract_numbers","escape_html","unescape_html","strip_html","base64_encode","base64_decode","url_encode","url_decode","json_escape","json_unescape","slugify","replace"],"description":"处理动作"},{"name":"find","type":"string","required":false,"description":"replace 动作：查找内容（regex=true 时为正则）"},{"name":"replace_with","type":"string","required":false,"description":"replace 动作：替换为（$1 引用捕获组）"},{"name":"regex","type":"boolean","required":false,"default":false,"description":"replace 动作是否使用正则"},{"name":"width","type":"number","required":false,"default":80,"description":"wrap / indent / outdent 的宽度（wrap 默认 80，缩进默认 2）"}],"slug":"text-edit"},{"accepts":"json","description":"多语言互译（中文 / 英文 / 日文 / 韩文 / 法文 / 德文 / 西班牙文等），支持自动识别源语言","endpoint":"/api/v1/open/translate","name":"在线翻译","params":[{"name":"text","type":"string","required":true,"description":"待翻译文本（最长 5000 字符）"},{"name":"from","type":"string","required":false,"default":"auto","description":"源语言代码（auto = 自动识别；zh-CN / en / ja / ko / fr / de / es / ru…）"},{"name":"to","type":"string","required":false,"default":"en","description":"目标语言代码"}],"slug":"translate"},{"accepts":"multipart","description":"AVI / MKV / MOV / FLV / WMV / WEBM 等格式转为通用 MP4（H.264 + AAC），支持裁剪、分辨率与静音","endpoint":"/api/v1/open/video-to-mp4","name":"视频转MP4","params":[{"name":"files","type":"file","required":true,"description":"视频文件（最大 20MB，转码在服务器完成）"},{"name":"quality","type":"string","required":false,"default":"standard","options":["high","standard","low"],"description":"输出质量（high=高画质 / standard=均衡 / low=小体积）"},{"name":"trim_start","type":"number","required":false,"default":0,"description":"从第几秒开始截取（0-3600）"},{"name":"trim_duration","type":"number","required":false,"default":0,"description":"截取时长（秒，0 = 到结尾，最大 600）"},{"name":"max_height","type":"number","required":false,"default":0,"description":"分辨率上限高度（0=原尺寸，可选 360/480/720/1080）"},{"name":"mute","type":"boolean","required":false,"default":false,"description":"移除音轨"},{"name":"fps","type":"number","required":false,"default":0,"description":"输出帧率（0=保持原帧率，可选 24/30/60）"}],"slug":"video-to-mp4"},{"accepts":"json","description":"输入网址生成 PC / 平板 / 手机三端精美展示图，也可输出单张网页截图","endpoint":"/api/v1/open/webshot","name":"网页截图","params":[{"name":"url","type":"string","required":true,"description":"目标网页地址（http:// 或 https:// 开头）"},{"name":"mode","type":"string","required":false,"default":"single","options":["mockup","single"],"description":"输出模式：mockup = 三端展示素材（桌面 / 平板 / 手机三张）；single = 单张截图"},{"name":"wait_ms","type":"number","required":false,"default":1200,"description":"页面渲染完成后额外等待毫秒数（0-10000）"},{"name":"scale","type":"number","required":false,"default":1,"description":"设备像素比（1-3；mockup 模式默认 2 倍高清）"},{"name":"dark_mode","type":"boolean","required":false,"default":false,"description":"模拟系统深色模式（prefers-color-scheme: dark）"},{"name":"width","type":"number","required":false,"default":1440,"description":"single 模式视口宽度（320 - 3840）"},{"name":"height","type":"number","required":false,"default":900,"description":"single 模式视口高度（240 - 2160，整页模式为最小高度）"},{"name":"full_page","type":"boolean","required":false,"default":true,"description":"single 模式是否截取整页"},{"name":"format","type":"string","required":false,"default":"png","options":["png","jpg"],"description":"single 模式输出格式"},{"name":"quality","type":"number","required":false,"default":85,"description":"single 模式 JPG 质量 1-100"},{"name":"mobile","type":"boolean","required":false,"default":false,"description":"single 模式模拟移动设备"}],"slug":"webshot"},{"accepts":"json","description":"统计文本的字数、字符数、词数、段落数与高频词","endpoint":"/api/v1/open/word-count","name":"字数统计","params":[{"name":"text","type":"string","required":true,"description":"待统计文本（最长 200 万字符）"},{"name":"top","type":"number","required":false,"default":10,"description":"高频词数量（1-50）"}],"slug":"word-count"},{"accepts":"json","description":"全球主要时区实时时间、夏令时与跨日提示、时间戳互转（前端使用 Luxon + SunCalc 呈现日出日落与会议时段）","endpoint":"/api/v1/open/world-clock","name":"世界时钟","params":[{"name":"timestamp","type":"number","required":false,"description":"可选：Unix 时间戳（秒或毫秒），提供则换算各时区对应时间"},{"name":"iso","type":"string","required":false,"description":"可选：ISO8601 时间字符串，提供则换算各时区对应时间"},{"name":"zones","type":"string","required":false,"description":"可选：自定义时区列表，逗号分隔 IANA 名称（如 Asia/Shanghai,Europe/London，最多 24 个）"}],"slug":"world-clock"}]},"message":"success","request_id":"req_e87ae0d9d1e6b57d2d0e1e7c369a95c1"}
