API利用説明
Explicatio communicationis API
掲載日 2026年6月20日
本アプリでは、無料ユーザーのPDF保存時に、無料保存枠の確認および不正利用防止のため、開発者が管理するAPIへ通信します。
API 01
APIを利用する目的
APIは、無料保存に必要な次の処理を行います。
- 通信状態と無料保存枠を確認します。
- 保存に使う無料枠を予約し、完了時に消費します。
- PDF保存に失敗した場合、予約した無料枠の復元を試みます。
- 過度なリクエストや不正利用を検知します。
API 02
送信しない情報
次の情報は、開発者のAPIへ送信しません。
- 作成したPDFとその本文
- 学名、採集地、採集者名、同定者名、所有者名
- 採集方法、備考など、ラベルへ入力した内容
開発者はAPIを通じて、ラベルやPDFの内容を閲覧できません。
API 03
APIへ送信する情報
無料保存機能は、次の情報を開発者のAPIへ送信します。
- DeviceCheckトークン
- Keychainに保存したインストール識別子
- アプリのバージョン
- リクエスト、広告セッション、無料枠予約の各識別子
APIはインストール識別子を秘密値で一方向変換し、変換後の識別子をデータベースへ保存します。
API 04
DeviceCheckによるトークン検証
無料保存枠の不正取得を減らすため、AppleのDeviceCheckを利用します。アプリはAppleが発行する一時的なDeviceCheckトークンを取得し、開発者のAPIへ送信します。APIはそのトークンをAppleの検証用エンドポイントへ送ります。
検証成功は、不正利用を判断するための一つの信号です。端末やアプリが改変されていないことを、DeviceCheckだけで完全に証明するものではありません。APIはDeviceCheckトークン自体をデータベースへ保存しません。
Reference: Apple DeviceCheck
API 05
利用できない場合
無料ユーザーは、通信できない場合、無料保存枠を確認できない場合、またはサーバが混雑、停止している場合、PDF保存を実行できません。サーバ障害時は「無料保存の確認ができませんでした。時間をおいて再度お試しください。」と表示されます。
API 06
プレミアムユーザー
プレミアムユーザーは、広告視聴や無料保存枠の消費を行わずにPDFを保存できます。プレミアム状態の確認にはAppleのStoreKitを利用します。