API ドキュメント
投稿前チェック API の認証、エンドポイント、レスポンス形式をまとめています。
概要
すべてのリクエストは HTTPS で送る JSON で、結果はレスポンスにそのまま含まれて返ります。ジョブ ID を受け取って再照会する非同期方式ではありません。
https://api.nubint.ai/api/v1レスポンスのフィールド名は camelCase です。例外として、書誌(csl)は CSL-JSON 標準のキー(container-title、DOI など)を、指摘の params は snake_case のキーをそのまま使います。
認証
毎回のリクエストで X-API-Key ヘッダーに API キーを入れます。Authorization ヘッダーではありません。
キーは Nubint アプリの 設定 → API/MCP で発行します。nbk_live_ で始まり、発行直後に一度だけ表示されます。サーバーにはハッシュだけを保存するため、紛失した場合は再発行が必要です。
有効なキーはアカウントあたり 10 個までです。漏えいが疑われる場合は同じ画面ですぐに無効化してください。無効化したキーは即座に拒否されます。
API は Pro・Max プランのアカウントから呼び出せます。無料プランのアカウントのキーで呼び出すと 403 が返ります。キーはそのまま残り、購読すると同じキーが再び使えます。
参考文献の実在確認
参考文献リストの各項目が実在する文献を指しているか、学術インデックスと照合します。言語モデルを呼び出さないため、同じ入力には同じ結果が返ります。
リクエスト
参考文献文字列の配列。本文ではなく References セクションの項目を 1 つずつ入れます。最大 100 件。DOI があれば一緒に含めてください。照合が正確になります。
レスポンス
判定。下の「判定値」を参照してください。
判定の根拠 — identifier(DOI などの識別子が一致)、title_exact、title_strong、title_partial、parsed(インデックス外、書誌のみ解析)、none。
インデックスで見つかった論文の書誌と識別子。verified と uncertain のときだけ入ります。
インデックス外の文献を原文から解析した書誌(CSL-JSON)。off_index のときだけ入ります。
採用されたインデックス候補のタイトル。uncertain のとき、利用者が自分の参考文献と照らし合わせるために使います。
タイトルの重なりが足りず不採用になった候補のタイトル(off_index のときのみ)。原稿側の表記が間違っている場合の手がかりです。採用された一致ではないため、引用として使ってはいけません。
集計。needsReview は verified 以外のすべて、つまり利用者が確認すべき件数です。
AI 作成検出
テキストが AI で書かれたように読めるかを、独立した検出モデルで判定します。段落単位で判定し、該当段落では判定の決め手になった文を順位付きで示します。
リクエスト
チェックするテキスト。段落は空行で区切ります。最大 200,000 文字。
レスポンス
文書全体の判定 — safe・caution・risk・inconclusive。
判定した段落数。
段階が付いた段落数。
このリクエストで請求されたクレジット。inconclusive は 0。
該当した文のリスト。code は段階(likely・possibly)、anchor は原文の文、params.rank はその段落内での順位です。
検出サービスが応答しない場合、このエンドポイントは 502 を返します。結果なしに safe を返すことはありません。
原稿全体チェック
本文と参考文献を一度に送ると、参考文献の実在確認、AI 作成検出、出典品質の 3 セクションを返します。参考文献の照合は 1 回だけ行うため、2 つのセクションが同じ論文を見ます。
リクエスト
原稿の本文。空の場合、AI 作成検出と出典品質は skipped になります。最大 200,000 文字。
参考文献文字列の配列。空の場合、参考文献の確認と出典品質は skipped になります。最大 100 件。
レスポンス
AI 作成検出が失敗した例です。ほかのセクションはそのまま結果を返します(一部フィールド省略)。
セクションごとにあります — ok(チェック済み)、failed(当社側の障害で実行できず、再試行で解決)、skipped(入力がなくスキップ)。failed と skipped には reason が付きます。
確認済みの参考文献だけをチェックします — 撤回(retracted_source)、懸念表明(expression_of_concern)、プレプリント(preprint_source・preprint_has_published_version)、被引用の少ない出典(low_citation_source)など。
このリクエストで請求されたクレジット。成功したセクションのみ課金し、failed・skipped と AI 検出の inconclusive は 0。
判定値
参考文献の判定 (status)
インデックスで確認済み。DOI などの識別子またはタイトルが一致します。
候補は見つかったものの、タイトルが部分的にしか一致しません。matchedTitle と照らし合わせてください。
このインデックスでは確認できませんでした。単行本・法令・非公開の学術誌など、もともとインデックスにない文献の可能性があります。存在しないという意味ではありません。
書誌項目として読み取れない行です(タイトル・年・著者が見つからない)。
AI 作成検出の判定 (verdict)
このチェックでは AI 作成の特徴が見つかりませんでした。人が書いた保証ではありません。
一部の段落に AI 作成の特徴があります。該当する文を確認してください。
複数の段落に明確な AI 作成の特徴があります。
判定できる文章が足りません(短すぎる、または表・リストが中心)。AI ではないという意味ではありません。
指摘オブジェクト
AI 作成検出と出典品質の指摘は同じ形式です。
安定した識別子。画面の文言はこの値で選んでください。
問題となった原文の文。著者-年方式(APA など)の原稿では、出典品質の指摘の anchor が空になることがあります。その場合は reference で論文を特定します。
指摘対象の論文の識別子(canonicalId)。
文言の組み立てに使う値(参考文献番号、被引用数、順位など)。
利用者の言語による指摘文。チェックが文言を生成した場合のみ入ります。
料金
AI 作成検出は 1 万トークンあたり 44 クレジット、出典品質は 1 万トークンあたり 32 クレジットです。本文の分量は英文 A4 5 ページ単位で切り上げ、その 1 単位が最低料金です。エディターの AI レビューと同じ単価です。
参考文献の確認は無料です。当社側の障害で失敗したセクション(failed)、入力がなくスキップしたセクション(skipped)、判定できる文章が足りない AI 検出(inconclusive)は差し引きません。
実行前に予想コストを確認し、残高が足りなければ実行せずに 402 を返します。
エラー
エラーレスポンスの本文は detail フィールドを 1 つ持つ JSON です。
上限超過 — 参考文献 100 件または本文 200,000 文字を超えました。切り詰めて処理することはありません。
X-API-Key ヘッダーがない、キーが誤っている、または無効化されたキーです。
クレジットが不足しています — 残高が 0 か、このリクエストの予想コストを賄えません。チェックは実行されていません。
Pro・Max プランが必要です。
リクエスト本文の形式が合っていません(フィールド名・型)。
リクエスト上限を超えました。1 分後に再試行してください。
AI 作成検出サービスが応答しませんでした(/preflight/ai-detection)。しばらくしてから再試行してください。
認証の確認が一時的にできません。キーの問題ではないので、無効化せずに再試行してください。
上限と応答時間
参考文献はリクエストあたり 100 件、本文は 200,000 文字(英文 A4 で約 80 ページ)までです。
レスポンスは同期式のため、参考文献が多いと数十秒かかることがあります。クライアントのタイムアウトは 120 秒以上に設定してください。
リクエスト上限はアカウントあたり、参考文献の確認が毎分 30 回、AI 作成検出と原稿全体チェックが毎分 10 回です。超えると 429 が返ります。
MCP
同じ 3 つのチェックを MCP ツール(preflight_check・verify_citations・detect_ai_writing)としても提供しています。ChatGPT・Claude はログイン(OAuth)で接続し、API キーは不要です — MCP の接続案内をご覧ください。
MCP の接続方法開発ツールから API キーで接続
ヘッダーを設定できる開発ツールは X-API-Key で接続できます。サーバー URL は同じです。
ターミナルで 1 行で追加します。追加後、/mcp で接続状態を確認できます。