space ocr
指南文章价格文档
OCR API

返回可验证数据的 OCR API

一次 REST 调用返回结构化 JSON,每个字段都带边界框、四个顶点和一个匹配分数。Bearer 认证、内置模板、异步任务、签名 Webhook。

大多数 OCR API 只给你一整页文本和一个全页的置信度数字。你还得自己去找发票合计、解析它、再祈祷它落到了正确的位置。space-ocr 的 OCR API 替你完成结构化:用一张图片和一个模板做一次 POST,就拿回带类型的字段 JSON。

在生产里真正起作用的,是每个值附带了什么。每个字段都连同它在页面上被读取的确切框、那个框的四个角,以及一个匹配分数一起返回。所以你的管线不必信模型的一面之词,而是可以把每个值和它在文档上的实际位置对照核验。

一份你可以亲自查看的真实响应

把鼠标悬停在下方任意字段上——发票上的框就是这个值被读取的位置。这是一份真实的解析结果:开票名 ソジュハンザン海物語様、应付金额 ¥84,263、合计 ¥46,752、每一条明细行,全都连同各自的框和匹配分数返回。这里没有任何东西是摆拍的。

Invoice with extracted-field bounding boxes
Verified fields
Invoice

Each value with a box carries a verified on-page location — bbox + 4-point vertices + match_ratio — on a 0–1000 normalized grid (0,0 top-left → 1000,1000 bottom-right), the same shape the live API returns. Hover a field to trace it back to the pixels it came from.

一次调用,带框的 JSON
向 POST /ocr/fields 发一张图片,拿回带类型的字段。每个值都带 bbox,省去再做一遍“它在哪里”的查找。
bbox、vertices、match_ratio
每个字段返回 0–1000 网格上的 xmin/ymin/xmax/ymax、跟随页面倾斜的四个旋转顶点,以及一个可以设阈值的 match_ratio。
内置模板
只需传一个 templateId——receipt、invoice、delivery、business_card、driver_license 等。也可以发你自己的 fields(明细行用 array 字段)。
异步任务 + 签名 Webhook
用 POST /upload 把图片排队,按文件拿到任务,完成时收到 HMAC-SHA256 签名的 Webhook——或用 GET /jobs/{jobId} 轮询。
CSV 与 JSON 导出
除了 REST 的 JSON,还能把已存储的表格导出为带 UTF-8 BOM 的 CSV(Excel 与中日韩安全,明细行展开)。
语言自动识别
日语、韩语、中文、英文在一个引擎里——无需设置语言提示,混合文字和全角字符也能处理。

space-ocr 里的 OCR API 如何工作

用 Bearer 令牌认证——你的密钥以 spocr_ 开头,基址是 https://api.space-ocr.com。把一张栅格图片以 URL 或 base64 发到 POST /ocr/fields(公开 API 接收图片——JPEG、PNG、GIF、BMP、TIFF、WebP——所以遇到 PDF 就发页面图片)。传一个内置 templateId 或你自己的 fields,就拿回 { status: 'success', data: {...} },每个字段都带值、bbox、vertices 和 match_ratio。

坐标不是模型编出来的。LLM 只返回每个值以及它用到的 word-token id;随后一个字符匹配器把这个值和 Google Vision 在页面上实际检测到的符号对齐,并把覆盖度打成 match_ratio。0.85 及以上是可信匹配,1.0 表示每个字符都在页面上被找到。每个响应还带一个 X-Request-Id 头,错误以 { error: { code, message, requestId } } 返回。

从图片提取字段
1
2
3
4
5
6
7
8
curl -s https://api.space-ocr.com/ocr/fields \
  -H "Authorization: Bearer $SPACE_OCR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "image": "https://example.com/invoice.png",
    "imageType": "url",
    "templateId": "invoice"
  }'
用 Python 做同样的调用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import os, requests

resp = requests.post(
    "https://api.space-ocr.com/ocr/fields",
    headers={"Authorization": f"Bearer {os.environ['SPACE_OCR_API_KEY']}"},
    json={
        "image": "https://example.com/invoice.png",
        "imageType": "url",
        "templateId": "invoice",
    },
    timeout=60,
)
resp.raise_for_status()
for name, field in resp.json()["data"].items():
    print(name, field["value"], field["bbox"], field["match_ratio"])

如何调用 OCR API

  1. 获取 API 密钥
    登录并创建一个密钥——它以 spocr_ 开头。向 https://api.space-ocr.com 的每次请求都以 Authorization: Bearer <key> 发送。
  2. 发送图片
    向 POST /ocr/fields 发送 image(一个 URL 或纯 base64)和 imageType。PDF 请发页面图片——API 接收栅格格式(JPEG、PNG、GIF、BMP、TIFF、WebP)。
  3. 选择模板或字段
    传一个内置 templateId,比如 'invoice' 或 'receipt',或提供你自己的 fields——明细行表格用带 children 的 array 字段。
  4. 读取结构化结果
    你会拿到 { status: 'success', data: {...} },其中每个值都带 bbox、vertices、match_ratio 和 bbox_source。对 match_ratio 设阈值,把低于 0.85 的值标出来。
  5. 扩展与查询
    用 POST /upload 把许多图片排队(按文件返回任务,签名 Webhook 或 GET /jobs/{jobId}),再用 GET /view 配合 where、sort、select 读取已存储的表格——无需重跑 OCR,也不额外收费。

简单、可预期的定价

每张图片 $0.05(¥10 / ₩100),含每月 100 次扫描的免费额度,无需信用卡。用 GET /view 重新读取已存储的表格不会重跑 OCR,也不收费。套餐计划增加每月扫描数、更多表格和存储空间。

Free
$0
  • 100 次扫描/月
  • 3 表格
  • 1 GB 存储
免费 — 无需信用卡
Starter
$19/月
  • 400 次扫描/月
  • 10 表格
  • 10 GB 存储
免费开始
最受欢迎
Pro
$49/月
  • 1,100 次扫描/月
  • 无限表格
  • 100 GB 存储
免费开始
如何对 OCR API 做认证?
每次请求都发一个 HTTP Bearer 令牌——Authorization: Bearer <key>。密钥以 spocr_ 开头。基址是 https://api.space-ocr.com,没有版本路径。缺失或无效的头返回 401,无法识别的密钥返回 403,每个响应都带一个用于支持追踪的 X-Request-Id 头。
OCR API 为每个字段返回什么?
一个值、一个边界框(0–1000 归一化网格上的 xmin/ymin/xmax/ymax,不是像素)、跟随文档倾斜的四个旋转顶点、一个 match_ratio 和一个 bbox_source。match_ratio 达到 0.85 及以上为可信匹配,1.0 表示每个字符都在页面上被找到。
OCR API 能读 PDF 吗?
公开 API 接收栅格图像——JPEG、PNG、GIF、BMP、TIFF、WebP——所以 PDF 要发页面图片。Web 应用直接接受 PDF,把每一页渲染成图片再做 OCR。两种方式的结构化结果一样。
OCR API 能处理大批量任务吗?
能。POST /upload 接受一张或多张图片,按文件返回 status 为 'pending' 的任务。完成时以 HMAC-SHA256 签名的 Webhook(X-Spaceocr-Signature)送达,或用 GET /jobs/{jobId} 轮询。POST /ocr/fields 对单张图片保持同步。
有速率限制和错误码吗?
限制是每个密钥每分钟 60 次请求。超过会返回 429、code 'rate_limited',等待时间在响应体的 details.retryAfterSec 里(不是 Retry-After 头)。所有错误在 400、401、402、404、429、500、502 之间共用信封 { error: { code, message, requestId } }。
OCR API 多少钱?
每张图片 $0.05(¥10 / ₩100),含每月 100 次扫描的免费额度,无需信用卡。POST /ocr/fields 和 POST /upload 的每张图片算一次扫描,GET /space、/view、/amount 不收费。套餐计划(Starter 和 Pro)增加每月扫描数、表格和存储——见上方的计划。

做一个返回可核对数据的 OCR

免费额度——每月 100 次扫描,无需信用卡。每个字段都连同它的框和匹配分数一起返回。

相关