PDF Scanner app - TapScanner icon

TapScanner(pdf.tap.scanner)数据 API

Tap AI · 身份

TapScanner 的云端识别是一条任务流水线:POST /v1/jobs/prepare 预留上传位并返回预签名 URL 与任务 id,POST /v1/jobs/{id}/begin 启动文字识别,POST /v1/jobs/{id}/result 轮询识别文本与逐页输出文件。

识别产物经 GET /v1/jobs/{id}/artifacts/{fileName} 下载;POST /v1/convert/office 把扫描 PDF 转成 DOCX,POST /v1/licenses/redeem 校验促销兑换码以解锁高级权益。

TapScanner 是 Tap AI 出品的拍照转 PDF 扫描与文档编辑应用,重活由端上文字识别与一组云端 API 分担。应用驱动一个多步骤的服务端识别流水线。

应用截图

  • PDF Scanner app - TapScanner 应用截图 1
  • PDF Scanner app - TapScanner 应用截图 2
  • PDF Scanner app - TapScanner 应用截图 3
  • PDF Scanner app - TapScanner 应用截图 4
  • PDF Scanner app - TapScanner 应用截图 5
  • PDF Scanner app - TapScanner 应用截图 6
  • PDF Scanner app - TapScanner 应用截图 7
  • PDF Scanner app - TapScanner 应用截图 8

API 端点一览

  • OCR 上传(预留上传位)

    POST /v1/jobs/prepare opendata

    预留一个识别任务,返回预签名上传 URL 与任务 id,用于推送扫描图。

    认证方式: integrity_token request header (Google Play Integrity token)

    • status
    • id
    • uploadURL

    依据应用界面重构的示意示例,并非实时抓包。

    POST /v1/jobs/prepare?retry=false HTTP/1.1
    integrity_token: <play-integrity-token>
    {
      "status": "ok",
      "id": "8f3c1d2e-7a9b-4c5e-9f0a-1b2c3d4e5f6a",
      "uploadURL": "https://cdn.example.com/upload/8f3c1d2e..."
    }

    依据应用界面推导;端点细节为示意说明,并非实际抓包。

    • reconstructed from the app's scan-and-recognize upload flow
    • response model carries status, id and uploadURL
  • OCR 启动(开始识别)

    POST /v1/jobs/{id}/begin opendata

    对已上传的文档图启动文字识别,返回可供轮询的任务 id。

    认证方式: integrity_token request header

    • status
    • id

    依据应用界面重构的示意示例,并非实时抓包。

    POST /v1/jobs/8f3c1d2e-7a9b-4c5e-9f0a-1b2c3d4e5f6a/begin HTTP/1.1
    integrity_token: <play-integrity-token>
    {
      "status": "started",
      "id": "8f3c1d2e-7a9b-4c5e-9f0a-1b2c3d4e5f6a"
    }

    依据应用界面推导;端点细节为示意说明,并非实际抓包。

    • reconstructed from the app's recognition start step
    • job id is carried as a path segment
  • OCR 状态 / 结果(轮询识别文本)

    POST /v1/jobs/{id}/result opendata

    轮询识别任务,返回识别文本与逐页输出文件列表。

    认证方式: integrity_token request header

    • status
    • startTimestamp
    • files
    • text

    依据应用界面重构的示意示例,并非实时抓包。

    POST /v1/jobs/8f3c1d2e-7a9b-4c5e-9f0a-1b2c3d4e5f6a/result HTTP/1.1
    integrity_token: <play-integrity-token>
    {
      "status": "done",
      "startTimestamp": 1737456000000,
      "files": ["page_1.txt", "page_2.txt"],
      "text": "Recognized document text..."
    }

    依据应用界面推导;端点细节为示意说明,并非实际抓包。

    • reconstructed from the app's polling loop for finished jobs
    • result model carries status, startTimestamp, files and text
  • 下载 OCR 结果文件

    GET /v1/jobs/{id}/artifacts/{fileName} opendata

    下载识别流水线产出的单个页面 / 文本产物。

    认证方式: integrity_token request header

    • id
    • fileName

    依据应用界面重构的示意示例,并非实时抓包。

    GET /v1/jobs/8f3c1d2e-7a9b-4c5e-9f0a-1b2c3d4e5f6a/artifacts/page_1.txt HTTP/1.1
    integrity_token: <play-integrity-token>
    <raw text/octet-stream body of the recognized page>

    依据应用界面推导;端点细节为示意说明,并非实际抓包。

    • reconstructed from the app's per-page text download step
  • PDF 转 DOCX

    POST /v1/convert/office opendata

    以 multipart 表单上传扫描 PDF,返回转换后的 DOCX 文档。

    认证方式: integrity_token request header

    • integrity_token
    • file

    依据应用界面重构的示意示例,并非实时抓包。

    POST /v1/convert/office HTTP/1.1
    integrity_token: <play-integrity-token>
    Content-Type: multipart/form-data; boundary=----x
    
    ------x
    Content-Disposition: form-data; name="file"; filename="scan.pdf"
    Content-Type: application/pdf
    
    <binary pdf bytes>
    <binary .docx ResponseBody>

    依据应用界面推导;端点细节为示意说明,并非实际抓包。

    • reconstructed from the app's PDF-to-DOCX export flow
    • the document is sent as multipart form data
  • 促销兑换码校验(权益)

    POST /v1/licenses/redeem osint

    按设备 id 校验促销兑换码,解锁高级权益。

    认证方式: none beyond the redeem code in the JSON body

    • redeemCode
    • deviceId
    • verified

    依据应用界面重构的示意示例,并非实时抓包。

    POST /v1/licenses/redeem HTTP/1.1
    Content-Type: application/json
    
    {
      "redeemCode": "SUMMER-DEAL-1234",
      "deviceId": "a1b2c3d4-e5f6-7890"
    }
    {
      "verified": true
    }

    依据应用界面推导;端点细节为示意说明,并非实际抓包。

    • reconstructed from the app's promo-code upgrade flow
    • request model pairs a redeemCode with a deviceId

数据类别

  • 文字识别
  • 文档转换
  • 订阅权益
  • 设备标识

数据使用场景与案例

  • 文档录入自动化

    后台管道驱动 OCR 任务全生命周期——申请上传位、启动识别、轮询结果——可检索文本直接落入文档管理系统,全程无人打开 App。

  • 批量格式转换

    合同与法务工具把扫描件批量从 PDF 转 DOCX 以便修订批注,文件经转换端点进出,回收可编辑文档。

  • 权益资格核验

    捆绑合作方在发放高级功能前按设备核验兑换码,让促销授权全程可审计。

常见问题

TapScanner 使用什么数据 API?

应用把重识别交给云端任务流水线:POST /v1/jobs/prepare 预留上传位、POST /v1/jobs/{id}/begin 启动识别、POST /v1/jobs/{id}/result 轮询结果,产物按文件名下载。

扫描件的文字识别流程是怎样的?

先在 POST /v1/jobs/prepare 拿到预签名上传 URL 与任务 id 并上传扫描图,再调 begin 启动识别,最后轮询 result 取得识别文本与逐页输出文件列表。

PDF 转 Word 用哪个端点?

POST /v1/convert/office 以 multipart 表单上传扫描 PDF,返回转换后的 DOCX 文档。

兑换码如何解锁高级版?

POST /v1/licenses/redeem 把促销兑换码与设备 id 绑定校验,通过后解锁高级权益(entitlement)。

相关主题

  • tapscanner api
  • pdf.tap.scanner OCR 接口
  • TapScanner 识别流水线
  • TapScanner PDF 转 DOCX
  • TapScanner 兑换码校验

需要集成这个 App 的数据 API?

我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。

获取报价