ドキュメント トップ / INTEGRATION_GUIDE
使い方ローカル前処理エンジンログイン / プランレビュアーポートフォリオ最適化マスタ整合性レビューCPOS 連携 (PAT)JSON 形式データ取扱方針デプロイCLI技術

CareLinker 加算チェッカー 組込ガイド(INTEGRATION GUIDE)

version: v2026.06.11-alpha.9 date: 2026-06-11 対象読者: 介護ソフト・業務システムに本エンジンを組み込む開発者(自社プロダクト/他社ベンダー) 参照: reports/internal/alpha9/alpha9_design.md(設計正本)/ docs/RELEASE_PLAN.md / docs/SALES_READINESS_GATE.md

免責(組込先プロダクトにも転載必須) 本出力は算定可否を法的に保証するものではありません。算定判断は必ず法令・告示原文と保険者への確認に基づいて行ってください。


0. 本ガイドの前提


1. 組込の3形態

形態 想定組込先 通信 状態
① in-process SDK Python 製ソフト・社内バッチ 関数呼び出し alpha9 実装(alpha10 で extract_evidence() 追加)
② REST API 言語非依存(Java/.NET/Node 等の介護ソフト) HTTP/JSON alpha9 実装(認証はスタブ)+ alpha10: POST /v1/extract=PDFアップロード→抽出→check ワンショット・試作Web UI(GET /
③ データブリッジ ケアプランデータ連携CSV(UP1KYO)・他社介護ソフトCSV CSV→集計JSON(user_summary)→check alpha10 で UP1KYO 実装scripts/import_careplan_csv.pyschemas/user_summary.schema.json)。実データの facts 化は sample_policy ゲートにより J-23(社長GO)後。他社独自CSVは R-2

1-1. ① in-process SDK(Python 製ソフト向け)

ファサードは scripts/engine_api.py の 2 関数のみ。内部実装(judge_kasan / requirement_dsl / r1_pilot_run)には直接依存しないでください。

import sys
sys.path.insert(0, r"<kasan-manager>/scripts")  # 製品ルート配下の scripts/
from engine_api import check, list_services

# 対応サービスの列挙(service_registry.json と同期)
services = list_services()

# 判定リクエスト(dict in / dict out)
response = check({
    "service_key": "tsusho_kaigo",          # 必須: registry の service_key
    "dataset_id": "DEMO-R1-TSUSHO",         # 必須: 匿名 dataset_id(DEMO- 接頭辞推奨)
    "month": "202604",                       # 任意: 対象月 YYYYMM
    "evidence": None,                        # 任意: レセプトPDF抽出 evidence JSON(集計値のみ)
    "tenant_status": None,                   # 任意: 体制届出状況(集計値のみ)
    "staff_data": None,                      # 任意: 職員集計 staff.json(集計値のみ)
    "user_summary": None,                    # 任意: 利用者集計 JSON(集計値のみ)
    "options": {
        "include_report_markdown": True,     # Markdown レポートを response に含める
        "apply_evidence": False,             # evidence を判定に反映するか
    },
})

if response["ok"]:
    print(response["summary"])               # 件数サマリ
    print(response["disclaimer"])            # 免責文(UI 転載必須)
else:
    print(response["error"])                 # 入力不正・未対応サービス等

request のキー一覧

キー 必須 内容
service_key 必須 str registry の service_key(§5の表)
dataset_id 必須 str 匿名 dataset_id。実事業所コードは使わない
month 任意 str 対象月 YYYYMM
evidence 任意 dict レセプトPDF抽出 evidence(集計値のみ)
tenant_status 任意 dict 体制・届出状況(集計値のみ)
staff_data 任意 dict 職員集計(集計値のみ・氏名等は禁止)
user_summary 任意 dict 利用者集計(集計値のみ・氏名等は禁止)
options.include_report_markdown 任意 bool Markdown レポート同梱
options.apply_evidence 任意 bool evidence の判定反映

response のキー一覧

キー 内容 UI での扱い
ok bool 成否 false なら error を表示
error str/null エラー内容
engine_api_version str SDK API バージョン ログに記録推奨
service dict service_key・display_name・status・revision_tag status を必ず確認(§3)
summary dict 判定件数サマリ 一覧画面のヘッダ向け
judgements list 加算ごとの判定(確認待ち・対象外・不足情報を含む) 明細表示
dsl_results list 要件DSL評価結果(成立ルート・blocked 理由) 詳細ドリルダウン
evidence_checklist list 必要書類・確認事項チェックリスト ToDo 表示
draft_warning str/null draft サービス時の警告文 draft 時は必ず表示(§3)
kasan_count int 判定対象の加算・減算件数
pii_scan dict 出力自己スキャン結果(種別・件数のみ) 検出ありなら表示を中止
disclaimer str 免責文 UI 転載必須
report_markdown str Markdown レポート(options 指定時のみ) 帳票・印刷向け

スキーマの正本は schemas/check_request.schema.json / schemas/check_response.schema.json です(手動の構造アサーションで検証。jsonschema ライブラリ非依存)。

1-2. ② REST API(言語非依存)

server/app.py(FastAPI)。SDK check() の薄いラッパーであり、エンドポイントとレスポンス構造は SDK と同一契約です。OpenAPI 定義は docs/openapi.json

メソッド パス 内容
GET /v1/health 死活確認
GET /v1/services 対応サービス一覧(registry 転記)
POST /v1/check 判定実行(body は §1-1 の request と同一)
# 死活確認
curl -s http://localhost:8000/v1/health

# サービス一覧
curl -s -H "X-API-Key: <your-key>" http://localhost:8000/v1/services

# 判定実行
curl -s -X POST http://localhost:8000/v1/check \
  -H "Content-Type: application/json" \
  -H "X-API-Key: <your-key>" \
  -d '{
        "service_key": "tsusho_kaigo",
        "dataset_id": "DEMO-R1-TSUSHO",
        "month": "202604",
        "options": {"include_report_markdown": false, "apply_evidence": false}
      }'

POST /v1/extract(alpha10・PDFアップロードのワンショット)

明細書PDFを multipart でアップロードし、抽出→(既定で)checkまで一括実行します。アップロードPDFはサーバに保存されません。

curl -s -X POST http://127.0.0.1:8787/v1/extract   -F "file=@meisaisho.pdf;type=application/pdf"   -F "service_key=tsusho_kaigo" -F "dataset_id=DEMO-API-01" -F "run_check=true"
# 応答: {ok, error, extraction: {extraction_summary, evidence, ...}, check: <check_response>, disclaimer}

alpha11: check_responsegap_analysis が追加されました(数値要件の「現在値・基準値・あと何人」。rows[].status = cleared / near / not_met / no_data)。組込先は要件カタログの羅列ではなく ギャップ(現在→基準→残り)を第一に表示してください。no_data は「書類の不足」ではなく「データ未投入」の意味です(誤表示は禁止)。

alpha12: ① /v1/extractstaff_file(職員CSV・任意 multipart)を追加。templates/staff_intake_template.csv 形式(匿名ID・資格・常勤換算・勤続年数・勤務_月〜日)を渡すと、応答の staff_report に体制比率(介護福祉士/常勤/勤続・2種類の分母併記)と曜日×時間帯の資格在席表が返ります(実データはJ-23ゲートにより判定facts化はされず、事実整理として返る)。② check_response.unit_impact を追加(取れた場合の月◯単位・年◯単位概算。/日系は算定中加算の月間回数から延べ日数を推定し根拠を basis に明記。/回・率系は式のみ)。

alpha13: ① 試作UIに職員入力フォームを内蔵(行追加式・資格はチェック選択で表記ゆれゼロ・各資格にどの加算に効くかのヒント表示・曜日×時間帯は候補選択・ブラウザlocalStorageにのみ自動保存・既存CSVテンプレと相互変換)。② POST /v1/staff-report(職員CSVのみ・PDF不要)で体制レポート(比率・曜日×時間帯在席)を即時取得可能。

試作Web UI(GET /)も同じAPIを使用しています(uvicorn 起動後にブラウザで開けます)。

認証は現状スタブです。 環境変数 KASAN_API_KEY を設定した場合のみ X-API-Key ヘッダを照合します。未設定時は認証なしの開発モード(ループバック想定)です。マルチテナント認可は未実装で、R-3 前の必須ゲート項目です(docs/SALES_READINESS_GATE.md 参照)。インターネット公開・複数事業者同居での運用は現段階では行わないでください。

1-3. ③ データブリッジ(CSV → 集計JSON → check)

介護ソフトが出力する利用者・職員 CSV を集計 JSON(user_summary / staff_data)に変換してから check() に渡す経路です。


2. 接続パターン例(一般化した3類型)

実在のソフト名・事業所名ではなく、一般化した類型で示します。

2-1. ケアプラン作成支援ソフト

項目 内容
呼び出しタイミング ケアプラン確定時・月次モニタリング画面を開いたとき
渡すもの service_key(kyotaku_shien 等)・month・利用者集計値(user_summary)
表示すべきフィールド evidence_checklist(必要書類 ToDo)・judgements のうち「確認待ち」「情報不足」分類・disclaimer
UI の位置づけ 「この事業所で次に確認すべきことリスト」。算定可否の断定表示はしない

2-2. 訪問スケジュール管理ソフト

項目 内容
呼び出しタイミング 月次シフト確定時・職員の入退職/資格情報の集計更新時
渡すもの service_key(houmon_kaigo / houmon_kango_kaigo 等)・staff_data(資格別人数・常勤換算合計などの集計値のみ)
表示すべきフィールド dsl_results(配置要件の成立ルート・不足理由)・summarydisclaimer
UI の位置づけ 「体制要件の現在地」。個人名と紐づく表示はしない

2-3. 請求ソフト

項目 内容
呼び出しタイミング レセプト確定前のチェック工程(伝送前)
渡すもの evidence(レセプトPDF抽出の集計 evidence)+ options.apply_evidence: true
表示すべきフィールド judgements(算定中と推定される加算と要確認項目の突合)・kasan_countreport_markdown(帳票出力)・pii_scan(検出ありなら表示中止)・disclaimer
UI の位置づけ 「伝送前の取り漏れ・要確認の気づき」。PDF 未検出を未算定と断定する表示はしない

3. 組込先プロダクトの義務

組込先(自社・他社を問わず)は以下を遵守してください。違反構成での提供は許諾しません。

  1. disclaimer の転載必須response["disclaimer"] をエンドユーザーの見える位置に必ず表示する。最低限、次の文言を含むこと: 「本出力は算定可否を法的に保証するものではありません。算定判断は必ず法令・告示原文と保険者への確認に基づいて行ってください。」
  2. 算定可否を断定・確約する表現の禁止 — 取得を確約する文言、判定結果を断定として見せる UI(例: 緑チェックのみで注記なし)を使わない。「取得可能性」「要確認」の表現を維持する。
  3. PII を request に入れない — 氏名・被保険者番号・生年月日・住所・電話番号・メールアドレス等の個票は渡さない。渡してよいのは集計値のみ(件数・比率・常勤換算合計等)。エンジン側にも PII 検出時に facts を生成しない安全弁があるが、これは最後の砦であり、組込側で発生源を断つこと。
  4. draft サービスの判定結果を「取得可能」と表示しないservice.statusdraft の場合、出力は要確認リストの生成までであり、算定可能性の判定ではない。draft_warning を必ず UI に表示する。
  5. pii_scan の検出時は表示を中止pii_scan に検出ありが返った場合、そのレポートを表示・保存・転送しない。

4. バージョニングと互換性方針

識別子 場所 意味
engine_api_version response SDK/REST の API 契約バージョン
revision_tag response の service / 各マスタの _meta 法令改定の識別子(例: R6_2024_04
effective_from registry / マスタ 当該改定の適用開始日

互換性方針:


5. 対応サービス表(alpha9 時点)

regulatory_master/service_registry.json からの転記(implemented 4 / draft 6 / planned 1)。

service_key サービス名 ドメイン status 組込時の扱い
tsusho_kaigo 通所介護 介護保険 implemented 判定可(checked 要件のみ機械評価)
kyotaku_shien 居宅介護支援 介護保険 implemented 判定可(同上)
houmon_kaigo 訪問介護 介護保険 implemented 判定可(同上)
houmon_kango_kaigo 訪問看護(介護保険) 介護保険 implemented 判定可(同上)
shokibo_takino 小規模多機能型居宅介護 介護保険 draft 要確認リスト生成のみ(約30項目・全件 source_required・reviewer 検証待ち)
fukushi_yogu_taiyo 福祉用具貸与 介護保険 draft 要確認リスト生成のみ(加算3+減算2・全件 source_required・reviewer 検証待ち・alpha9 新規)
houmon_kango_iryo 訪問看護(医療保険) 医療保険 draft 要確認リスト生成のみ
kyotaku_kaigo_shogai 居宅介護(障害福祉) 障害福祉 draft 要確認リスト生成のみ
shugyo_keizoku_a 就労継続支援A型 障害福祉 draft 要確認リスト生成のみ
shugyo_keizoku_b 就労継続支援B型 障害福祉 draft 要確認リスト生成のみ
tokuyo 特別養護老人ホーム 介護保険 planned 未対応(registry 登録のみ)

6. 組込前チェックリスト


本出力は算定可否を法的に保証するものではありません。算定判断は必ず法令・告示原文と保険者への確認に基づいて行ってください。

このドキュメントはリポジトリ docs/ 配下の Markdown を配信しています。