← Home

構造化データ抽出 API

/ocr.json エンドポイントは、画像または文書から名前付きフィールドを抽出します。

このエンドポイントは型付き JSON を返します。レスポンスに含める値は、fields クエリパラメーターで選択します。

エンドポイント

POST https://api.ocrskill.com/ocr.json

各リクエストには bearer トークンが必要です。

Authorization: Bearer sk-your-key-here

無料の API キーを取得するには、次のコマンドを使用します。

curl https://api.ocrskill.com/get-key.json

クイックスタート

フィールド名を fields に追加します。次に、ファイルをアップロードします。

curl "https://api.ocrskill.com/ocr.json?fields=last_name,first_name,nationality,birthdate" \
  -H "Authorization: Bearer sk-your-key-here" \
  -F "file=@identity-card.pdf"

エンドポイントは次の JSON を返します。

{
  "last_name": "MUSTERMANN",
  "first_name": "ERIKA",
  "nationality": "DEUTSCH",
  "birthdate": "1964-08-12"
}

ファイルの送信

エンドポイントは、マルチパートアップロード、未加工ファイル、JSON データ URI を受け付けます。

最大ファイルサイズは 20 MB です。

マルチパートアップロード

fileimagedocumentdata のいずれかのフォームフィールドでファイルを送信します。

curl "https://api.ocrskill.com/ocr.json?fields=thumbnail_hook_text,video_title,video_channel" \
  -H "Authorization: Bearer sk-your-key-here" \
  -F "file=@thumbnail.jpg"

未加工バイナリのアップロード

正しい Content-Type を指定して、ファイルのバイト列を送信します。

curl "https://api.ocrskill.com/ocr.json?fields=company_name,invoice_date" \
  -H "Authorization: Bearer sk-your-key-here" \
  -H "Content-Type: application/pdf" \
  --data-binary "@invoice.pdf"

データ URI を含む JSON 本文

document_url にデータ URI を指定した JSON オブジェクトを送信します(Mistral API と同様で互換性があります)。

curl "https://api.ocrskill.com/ocr.json?fields=title,publish_date" \
  -H "Authorization: Bearer sk-your-key-here" \
  -H "Content-Type: application/json" \
  -d '{
    "document_url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQ..."
  }'

対応ファイル形式

エンドポイントは次の画像形式に対応します。

  • PNG
  • JPEG
  • WebP
  • GIF
  • BMP
  • TIFF

エンドポイントは次の文書形式にも対応します。

  • PDF
  • Microsoft Word(DOC および DOCX
  • Microsoft Excel(XLS および XLSX
  • Microsoft PowerPoint(PPT および PPTX
  • OpenDocument の文書、表計算、プレゼンテーションファイル(ODTODSODP
  • RTF
  • CSV

フィールドの選択

fields パラメーターには、フィールド名をカンマで区切って指定します。

必須フィールド

接尾辞のないフィールド名には値が必要です。値が見つからない場合、エンドポイントは 400 を返します。

?fields=last_name,first_name,birthdate

任意フィールド

フィールドを任意にするには ? を追加します。値が見つからない場合、レスポンスにはその任意フィールドが含まれません。

?fields=last_name,first_name,birthdate?,nationality?

検出モードの使用

検出モードを使用するには、fields を省略します。このモードでは、対応するすべてのフィールドが任意になります。

レスポンスには、エンドポイントが検出したフィールドのみが含まれます。

curl "https://api.ocrskill.com/ocr.json" \
  -H "Authorization: Bearer sk-your-key-here" \
  -F "file=@report.docx"

エラー処理

状況 ステータス 詳細
fields に不明なフィールド名がある 400 エラーは未対応のフィールドを示します。
フィールド名が空 400 空の値と末尾のカンマを削除します。
フィールド名が重複 400 各フィールドは一度だけ指定します。
必須フィールドがない 400 エラーには抽出の詳細と、抽出された input_text が含まれます。
bearer トークンがない、または無効 401 Authorization: Bearer sk-... を送信します。
未対応または不明なファイル形式 400 対応ファイル形式のいずれかを送信します。

エンドポイントは日付フィールドを YYYY-MM-DD 形式にします。文字列値の先頭と末尾にある空白を削除します。

エンドポイントはリテラル文字列 "null" を拒否します。

対応フィールド

1 回のリクエストで、次のフィールド名を任意に組み合わせて選択できます。

人物

フィールド 説明
last_name string 姓。
first_name string 名。
birthdate date 生年月日(YYYY-MM-DD)。
sex_gender string 性別。

住所

フィールド 説明
street_name string 住所の通り名。
street_number string 通り、建物、または家屋の番号。
address_rest string 街区、入口、階、部屋、または私書箱。
town_or_city string 町、市、自治体、または地域。
county string 郡、地区、または行政区画。
judet string ルーマニアの județ または同等の郡レベルの行政区画。
region string 地方、州、または広域地域。
country string 国名。

ID カード

フィールド 説明
nationality string 国籍。
cnp string 個人識別番号(Cod numeric personal)。
id_card_series_number string ID カードのシリーズ番号または番号。
expiration_date date ID カードの有効期限(YYYY-MM-DD)。
issue_date date ID カードの発行日(YYYY-MM-DD)。
id_card_issuer string ID カード発行者の名前。
id_card_birth_place string ID カードに記載された出生地。

車両登録

フィールド 説明
certificate_id string 登録証明書の番号またはシリーズ番号。
license_plate string A: 車両登録番号またはナンバープレート。
first_registration_date date B: 初回登録日(YYYY-MM-DD)。
holder_last_name string C.1.1: 所有名義人の姓。
holder_company string C.1.1: 所有名義人の会社名。
holder_first_name string C.1.2: 所有名義人の名。
holder_full_address string C.1.3: 所有名義人の完全な住所または本社所在地。
owner_last_name string C.2.1: 所有者の姓。
owner_company string C.2.1: 所有者の会社名。
owner_first_name string C.2.2: 所有者の名。
owner_full_address string C.2.3: 所有者の完全な住所または本社所在地。
vehicle_brand string D.1: 車両のメーカーまたはブランド。
vehicle_model string D.2: 種類、バリエーション、バージョン、またはモデル。
vehicle_commercial_summary string D.3: 商用上の説明またはモデルの概要。
vehicle_identification_number string E: VIN または車台番号。
max_technical_weight string F.1: 技術的に許容される最大積載時質量。
vehicle_mass string G: 使用中の車両質量。
registration_valid_until date H: 登録の有効期限(YYYY-MM-DD)。
registration_date date I: 登録日(YYYY-MM-DD)。
certificate_issue_date date I.1: 証明書の発行日(YYYY-MM-DD)。
vehicle_category string J: 車両カテゴリー。
type_approval_number string K: 型式認証番号。
engine_capacity string P.1: エンジンの総排気量。
engine_power string P.2: エンジンの最大正味出力。
fuel_type string P.3: 燃料の種類または動力源。
power_to_weight_ratio string Q: 記載がある場合の出力重量比。
vehicle_color string R: 車両の色。
seats string S.1: 運転席を含む座席数。
standing_places string S.2: 記載がある場合の立席数。
vehicle_identification_series string Y: 車両識別書のシリーズ番号。
certificate_issuer string Z: 証明書発行者の名前。
last_itp_date date 前回の定期技術検査日(YYYY-MM-DD)。

会社、請求書、領収書

フィールド 説明
company_name string 会社、組織、または法人の名前。
buyer_name string 購入者名。
seller_name string 販売者名。
total_amount number 請求または支払いの合計金額。
invoice_date date 請求書の発行日。
receipt_date date 領収書の発行日。

著作物

フィールド 説明
title string 記事のタイトル。
sub_title string 記事のサブタイトル。
article_abstract string 記事の抄録または要約のセクション。
article_body string 記事本文。
publish_date date コンテンツの公開日(YYYY-MM-DD)。
article_tags string カンマ区切りのコンテンツタグ。
tags string カンマ区切りのコンテンツタグ。
concise_summary string コンテンツの簡潔な要約。要約がない場合は新しく作成します。

イベント

フィールド 説明
event_name string イベントの名前またはタイトル。
event_venue string イベントの会場、場所、または複数の会場。
event_dates string テキスト形式のイベントの日付または期間。
event_date date イベントの日付または部分的な日付(YYYY-MM-DD)。

動画サムネイル

フィールド 説明
thumbnail_hook_text string 記載どおりの動画またはクリップのフックテキスト。
video_title string 動画またはクリップのタイトル。
video_channel string クリエイターのチャンネル名。
video_length_str string 記載どおりの動画またはクリップの長さ。
date_posted_str string 記載どおりの公開日。

構造化 JSON の代わりに Markdown として抽出

構造化フィールドではなく Markdown が必要な場合は、/ocr エンドポイントを使用します。同じファイル形式に対応します。

curl https://api.ocrskill.com/ocr \
  -H "Authorization: Bearer sk-your-key-here" \
  -F "file=@example.pdf"

よくある質問

構造化データとは何ですか?

構造化データは、名前付きフィールドと一貫した型を使用します。/ocr.json エンドポイントは、アプリケーションが直接読み取れる文字列、数値、日付を返します。

Google の構造化データまたは schema.org のマークアップですか?

いいえ。Google の構造化データは、検索エンジン向けに Web ページを説明します。Web ページ内で JSON-LD または microdata を使用します。

OCRskill は、ファイルから型付き JSON を抽出します。アプリケーションは、この JSON を保存または処理できます。

出力に JSON スキーマはありますか?

はい。OCRskill は、リクエストされた fields からレスポンススキーマを作成します。

日付フィールドは YYYY-MM-DD を使用します。このリファレンスの各フィールドは、型付き JSON プロパティ 1 つに対応します。

PDF から JSON、画像から PDF、または PDF から画像に変換できますか?

PDF は /ocr.json に直接送信できます。ページを画像に変換する必要はありません。

OCRskill は、画像から PDF または PDF から画像への変換をしません。

画像からテキストを抽出するにはどうすればよいですか(image to text)?

Markdown を抽出するには /ocr を呼び出します。名前付きの値を抽出するには、fields を指定して /ocr.json を呼び出します。

画像をプロンプトに変換できますか(image to prompt)?

プロンプト用の Markdown を抽出するには /ocr を呼び出します。プロンプトに特定の値だけが必要な場合は、/ocr.json を使用します。

抽出に失敗したのはなぜですか?

抽出を完了できない場合、エンドポイントは 400 を返します。原因を確認するには、エラーメッセージを読みます。

一般的な原因は、必須フィールドの欠落、不明なフィールド、重複したフィールド、未対応のファイル形式です。

エラーには input_text も含まれます。この値で、構造化抽出が失敗する前に OCRskill が抽出したテキストを確認します。

OCRskill を Claude と使用できますか?

はい。OCRskill で Markdown または JSON を抽出します。次に、結果を Claude に送信します。