選考を終えた応募者の個人情報のうち保存期限が来たものを応募者台帳から拾い、削除の対象と残す理由がある例外を判定して、採用担当の確認を経てから消す
選考を終えた応募者のうち、社内で決めた保存期限が来た人を毎月応募者台帳から拾い、削除してよいか、残す理由がある例外かを判定して採用担当に示します。担当と責任者の確認を経たものだけを、フローが消して記録に残します。
- 生成AI
- Azure OpenAI Service/Claude
- 連携・自動化
- Make/n8n/Power Automate
- 対象業界
- IT・SaaS/人材/小売/飲食
- 対象部門
- 人事/採用
- 対象業務
- 内容確認・チェック/台帳・マスタ管理
- 主な課題
- 人手が足りない/期限・対応漏れが起きる/確認ミスが多い
- AIで行う処理
- 判定
- 主な効果
- 判断支援/品質標準化/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 半自動化
- 費用感
- ノーコード連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 月初に、応募者台帳を選考終了日で並べ、保存期間を過ぎた人を書き出す
- 1人ずつ、台帳の対応の記録を読み、残す理由が無いかを確かめる
- 人材プールへの同意の有無と期限を確かめる
- 同じ人が新しい求人に応募して選考中でないかを、氏名とメールアドレスで探す
- 残す理由の無い人について、応募書類のフォルダを消し、台帳の氏名と連絡先を消す
- 消した人数と日付を、表に記録する
- 自動毎月1日の朝、フローが応募者台帳から保存期限を過ぎた人を拾う
- 自動人材プールへの同意の期限と、同じメールアドレスでの選考中の応募を規則で確かめる
- 自動対応の記録の文を、氏名と連絡先を除いてプロンプトに渡す
- 自動プロンプトが、残す理由に当たる事情があるかを判定し、根拠の文を写す
- 自動削除確認のリストに、1人1行で判定と根拠を書き込む
- 人採用担当が、「残す」「判断できない」と出た人を中心にリストを見て、「担当の判断」の列を埋める
- 人採用責任者が、その月の削除の一覧を見て承認する
- 自動承認を受けて、フローが応募書類を消し、台帳の氏名・連絡先を消して、消した記録を残す
- 自動例外として残した人には、次に見直す日を台帳に入れる
各工程の詳しい説明を読む
- 月初に、応募者台帳を選考終了日で並べ、保存期間を過ぎた人を書き出す
- 1人ずつ、台帳の対応の記録を読み、残す理由が無いかを確かめる
- 人材プールへの同意の有無と期限を確かめる
- 同じ人が新しい求人に応募して選考中でないかを、氏名とメールアドレスで探す
- 残す理由の無い人について、応募書類のフォルダを消し、台帳の氏名と連絡先を消す
- 消した人数と日付を、表に記録する
(a)作業そのものが後回しになる。 期限の来た人を消しても、採用の成果には何も出ません。繁忙期には1か月分、2か月分と飛ばされ、たまった分は次の閑散期にも片付きません。
(b)残す理由が、対応の記録の文の中にある。 「本人から、自分の情報をどう使ったか教えてほしいと問い合わせあり。法務と対応中」「面接での発言について本人から苦情。録音の有無を確認中」。こうした事情は台帳の決まった欄ではなく、記録の自由な文に書かれています。 読まずに消すと、対応中の事案の資料を自分たちで消すことになります。
(c)同じ人の再応募を見落とす。 1年前に不採用だった人が、別の職種で先月応募して選考中かもしれません。古いほうの記録を消すと、選考中の面接官が前回の評価を見られなくなります。 消してよいかどうかは、社内の決め方次第です。
(d)消した記録が残らない。 誰が、いつ、何人分を、どの理由で消したかが残っていないと、本人から問い合わせを受けたときに「消した」と答える根拠がありません。
- 【自動】 毎月1日の朝、フローが応募者台帳から保存期限を過ぎた人を拾う
- 【自動】 人材プールへの同意の期限と、同じメールアドレスでの選考中の応募を規則で確かめる
- 【自動】 対応の記録の文を、氏名と連絡先を除いてプロンプトに渡す
- 【自動】 プロンプトが、残す理由に当たる事情があるかを判定し、根拠の文を写す
- 【自動】 削除確認のリストに、1人1行で判定と根拠を書き込む
- 【人】 採用担当が、「残す」「判断できない」と出た人を中心にリストを見て、「担当の判断」の列を埋める
- 【人】 採用責任者が、その月の削除の一覧を見て承認する
- 【自動】 承認を受けて、フローが応募書類を消し、台帳の氏名・連絡先を消して、消した記録を残す
- 【自動】 例外として残した人には、次に見直す日を台帳に入れる
6番目と7番目が、この設計の分かれ目です。 消すことは、取り消せない操作です。判定を出すのはAIと規則ですが、消すと決めるのは担当で、それを承認するのは責任者です。 2人の目を通ったものだけが消えます。
4番目のAIに「消してよい」と言わせていないのも、意図してのことです。 AIが返すのは「残す理由に当たる事情が書かれているか」だけで、書かれていなければ「削除の候補」になります。 候補を削除にするのは6番目の人です。
02今回想定するシステム構成
応募者台帳(SharePoint のリスト) ▼【トリガー】毎月1日 7時(繰り返し) Power Automate(クラウド フロー①:判定) ├──▶ Get items で保存期限を過ぎた人を拾う ├──▶ 規則:人材プールの同意の期限/選考中の再応募/入社 ├──▶ 対応の記録から氏名・連絡先を除く ├──▶ AI Builder のプロンプト(プロンプトを実行する) │ 残す理由に当たる事情・根拠の文を JSON で返す └──▶ 削除確認のリストに1人1行(Create item) ▼ 【採用担当が「担当の判断」を埋める】 ▼ 開始して承認を待機(採用責任者) ▼ 承認 クラウド フロー②:削除 ├──▶ List folder + Delete file で応募書類を消す ├──▶ Update item で台帳の氏名・連絡先を消し「消去済み」に └──▶ 削除の記録(応募者ID・日付・判断した人)
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | Power Automate(スケジュールされたクラウド フロー、SharePoint コネクタ、承認) | Make、n8n |
| 生成AI | AI Builder のプロンプト(「プロンプトを実行する」アクション、JSON 出力) | Azure OpenAI(Microsoft Foundry)、Claude |
| 保管 | SharePoint のリスト(応募者台帳、対応の記録、削除確認、削除の記録)とドキュメント ライブラリ | Dataverse |
| 通知 | Microsoft Teams | Outlook のメール |
新しく足すのは、フロー2本と、削除確認と削除の記録の2つのリストだけです。 応募者台帳と書類のフォルダは今のものを使います。台帳に「保存期限」「状態」「次に見直す日」の3列を足すのが最初の準備作業です。
応募者台帳は SharePoint コネクタの Get items で読みます。 OData のフィルター クエリで、保存期限が今日より前で、状態が「保管中」の行だけを取ります。取得件数(Top Count)は既定ですべてです。
応募書類は、List folder で応募者のフォルダの中身を並べ、Delete file で1つずつ消します。 台帳の行は Delete item で消さず、Update item で氏名・連絡先・書類へのリンクを空にして「消去済み」にします。 個人情報保護委員会のガイドラインでは、個人データの消去は、データを削除することのほか、特定の個人を識別できないようにすることを含むとされています。行を残すのは、何人を、いつ消したかを数えるためです。
承認は、Power Automate の「開始して承認を待機」で行います。 承認の種類には「承認/拒否 - 最初に応答」などがあり、割り当てられた人は Outlook のメール、Teams のアダプティブ カード、Power Automate から直接応答できるとされています。
03どうやって実装するのか
処理の起点を決める
毎月1日の朝7時に、スケジュールされたクラウド フローを動かします。 作ると繰り返しのトリガーがフローに入り、「毎週月曜日の午前9時」のような定期的なスケジュールで実行できます。日次にしないのは、確認と承認を月に1回のまとまった作業にするためです。 毎日数人ずつ確認を頼むと、担当は後回しにします。
判定の結果は、その月の「削除確認」として1つのまとまりにします。 削除確認のリストに「対象月」の列を持たせ、同じ月の行は同じ承認にかけます。 前の月の確認が終わっていない行があれば、新しい月の判定を出す前に Teams で担当に知らせます。
フロー②の起点は、承認の結果です。 フロー①の最後で「開始して承認を待機」を置き、承認が返ってきたらフロー②を呼びます。 承認が拒否されたら何も消さず、拒否の理由を削除確認のリストに残します。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 応募者台帳 | 応募者ID、氏名、メールアドレス、応募職種、選考の結果(不採用/辞退/入社)、選考終了日、保存期限、状態 | SharePoint のリスト |
| 人材プールの同意 | 同意の有無、同意した日、同意の期限 | 台帳の列 |
| 対応の記録 | 日付、書いた人、本文(日程調整、問い合わせ、苦情、請求への対応など) | SharePoint のリスト(応募者IDで結ぶ) |
| 選考中の応募 | 同じメールアドレスでの、状態が「選考中」の応募 | 応募者台帳 |
| 応募書類 | 履歴書、職務経歴書、課題の提出物、面接の評価票 | 応募者IDのフォルダ |
質を決めるのは、対応の記録の本文です。 残す理由のほとんどは、ここにしか書かれていません。逆に言えば、記録に書かれていない事情はこの構成では拾えません。 本人とのやり取りを個人のメールだけで行い、記録に残さない運用だと、判定は「削除の候補」と出ます。
保存期限は、台帳の列で持ちます。 選考終了日から計算する式で埋めますが、列として持つことで、例外として残した人の期限を担当が延ばせるようにします。
データの取得方法を決める
| 取るもの | どこから | どう取るか |
|---|---|---|
| 期限を過ぎた応募者 | 応募者台帳 | Get items(保存期限が今日より前、状態が「保管中」) |
| 同じ人の選考中の応募 | 応募者台帳 | Get items(同じメールアドレス、状態が「選考中」) |
| 対応の記録 | 対応の記録のリスト | Get items(応募者IDで絞る、日付順) |
| 書類の一覧 | ドキュメント ライブラリ | List folder(応募者IDのフォルダ) |
選考中の再応募は、メールアドレスで探します。 氏名で探すと、同姓同名の別人を拾い、表記の違いで同じ人を落とします。メールアドレスを変えて応募した人は拾えません。 そこは担当の確認に残します。
書類の一覧は、判定のときには中身を開きません。 履歴書や職務経歴書をAIに渡す理由はありません。残す理由は書類ではなく、対応の記録に書かれているからです。 一覧はフォルダが空でないか、消す対象が何件あるかを数えるためだけに取ります。
AIへ渡す前に整形する
- 入社した人を除く … 選考の結果が「入社」の行は、人事の管理へ移す対象なので、この構成では扱いません
- 人材プールの同意を規則で見る … 同意があり、同意の期限が今日より後なら「同意期間中」として、AIに渡さずに残す側へ回します
- 選考中の再応募を規則で見る … 同じメールアドレスで選考中の応募があれば「再応募の選考中」として、AIに渡さずに担当の確認へ回します
- 対応の記録から個人を識別できる情報を除く … 氏名、メールアドレス、電話番号、住所を、記録の本文から置き換えます。「〇〇様」は「本人」に、アドレスは「(メール)」にします
- 記録を日付順に並べてつなぐ … 1人分の記録を、日付と書いた人の役職だけを付けて1つの文にします
- 記録が無い人 … 対応の記録が1件も無ければ、AIに渡さずに「記録なし」として削除の候補にします
4番目を省かないでください。 判定に氏名は要りません。AIに渡す文に氏名や連絡先が残っていると、期限が来て消すはずの情報を、消す直前にもう一度外へ渡すことになります。
2番目と3番目をAIに任せないのは、決まった欄で決まるからです。 同意の期限も選考中の応募も、日付と状態の比較で答えが出ます。AIに渡すと、記録の文の「また応募したいと言っていた」を同意と取り違えます。
AIに処理させる
させるのは、1人分の対応の記録を読み、決まった「残す理由」に当たる事情が書かれているかを判定し、根拠にした文を写すことだけです。
| 理由のコード | 当たる事情 |
|---|---|
open_request | 本人からの開示・訂正・利用停止などの請求や、情報の扱いについての問い合わせが対応中 |
complaint | 選考や面接についての苦情が対応中、または対応を終えた記録が無い |
dispute | 弁護士・行政機関からの連絡など、紛争や法的な請求のおそれがある |
consent_unclear | 「次の募集があれば連絡がほしい」など、人材プールへの同意に近いが、同意の記録が無い |
other_hold | 上のどれでもないが、残すよう求める記載がある |
| 判定 | 意味 |
|---|---|
delete_candidate | 残す理由に当たる事情が書かれていない |
keep_candidate | 残す理由のコードのどれかに当たる |
needs_human | 書かれている事情が、残す理由に当たるか決められない |
4行目の consent_unclear が、この構成でいちばん大事な区別です。 本人が「また声をかけてほしい」と言ったことは、人材プールへの同意の記録ではありません。残すなら同意を取り直し、取れないなら消すのが筋で、どちらにするかは担当が決めます。 AIには「同意に近い記載がある」と示させるだけにします。
| させないこと | 理由 |
|---|---|
| 消してよいかの結論 | 消すと決めるのは担当、承認するのは責任者 |
| 保存期間の延長の判断 | 何か月延ばすかは規程と担当が決める |
| 適法かどうかの判断 | 残すことが許されるかは、法務と決める |
| 書類の中身の要約 | 判定に要らない。書類は渡さない |
| 書かれていない事情の推測 | 「苦情があったかもしれない」で残す側に倒さない |
最後の行が、思ったより起きやすい失敗です。 「面接後、本人から電話あり」とだけ書かれた記録を渡すと、AIは苦情だった可能性を考えて complaint を付けがちです。書かれた内容で決められないものは needs_human にさせます。 残す側にも消す側にも、推測で倒さないことが大事です。
指示内容を固定する
あなたは人事部で、選考を終えた応募者の個人情報を、保存期限が来たときに見直す担当です。
1人分の対応の記録を読み、決まった「残す理由」に当たる事情が書かれているかを判定してください。
記録に書かれていることだけを根拠にしてください。
【残す理由のコード】
open_request:本人からの開示・訂正・利用停止などの請求や、情報の扱いについての問い合わせが対応中
complaint:選考や面接についての苦情が対応中、または対応を終えた記録が無い
dispute:弁護士・行政機関からの連絡など、紛争や法的な請求のおそれがある
consent_unclear:今後の連絡を望む記載があるが、人材プールへの同意の記録ではない
other_hold:上のどれでもないが、残すよう求める記載がある
【判定】
delete_candidate:残す理由に当たる事情が書かれていない
keep_candidate:残す理由のどれかに当たる
needs_human:書かれた事情が、残す理由に当たるか決められない
【厳守事項】
- 記録に書かれていない事情を推測しないでください。
「電話あり」とだけ書かれていて内容が分からないときは needs_human にしてください。
- 「また応募したい」「次の募集を教えてほしい」は、同意の記録ではありません。
consent_unclear とし、keep_candidate にしてください。
- 「対応済み」「解決」と書かれている請求や苦情は、残す理由に当たりません。
ただし、対応を終えた記録が無いものは対応中として扱ってください。
- 根拠にした文は、記録の文をそのまま evidence に写してください。
- 消してよいかどうか、保存期間を何か月延ばすべきかは書かないでください。
- 残すことが法的に許されるかどうかの意見を書かないでください。
- 回答に JSON マークダウンを含めないでください。
【保存期限】{retention_date}
【選考の結果と選考終了日】{result}/{closed_date}
【対応の記録(日付順。氏名と連絡先は置き換え済み)】{records}
「対応済み」の扱いを1行で書いているのは、古い苦情で全員が残る側に倒れるのを防ぐためです。 苦情という語があるだけで complaint を付けると、1年前に解決した苦情の記録がある人まで、いつまでも消えません。 対応を終えた記録があるかで分けます。
プロンプトの温度は既定の0のまま使います。 同じ記録を毎月見直すことがあるので、月によって判定が変わらないことを優先します。
出力形式を固定する
次の形のJSONで受け取ります。 プロンプトの出力を JSON にし、形式をカスタムで保存します。
{
"applicant_id": "A-2025-03812",
"verdict": "delete_candidate | keep_candidate | needs_human",
"reasons": [
{ "code": "open_request", "evidence": "" }
],
"note": ""
}
JSONで受け取る1つ目の理由は、判定と理由を別の列に書けることです。 削除確認のリストに「AIの判定」「理由のコード」「根拠の文」「担当の判断」の列を並べ、担当は「AIの判定」で絞り込んで、keep_candidate と needs_human から見ます。
2つ目は、規則の判定と同じ列に並べられることです。 前処理で決まった「同意期間中」「再応募の選考中」「記録なし」も、同じリストの「AIの判定」の列に、規則で決まったことが分かる値で入れます。 担当は1つのリストで全員を見られます。
| 判定の出どころ | 「AIの判定」の列に入る値 | 担当の扱い |
|---|---|---|
| 規則 | 同意期間中 | 確認不要。次に見直す日を同意の期限にする |
| 規則 | 再応募の選考中 | 担当が残すかを決める |
| 規則 | 記録なし | 削除の候補 |
| AI | delete_candidate | 一覧で流し見る |
| AI | keep_candidate | 根拠の文を読み、残す期間を決める |
| AI | needs_human | 記録の全文を開いて決める |
3つ目は、evidence で確認が速くなることです。 担当は記録の全文を開く前に、どの文を見て判定したかを一覧で読めます。
公式の説明では、プロンプトを保存すると形式が固定され、フローで使うときは保存された形式が使われるとされています。reasons をキーを持つ要素の配列にしているのは、キーの無い配列の形式がサポートされないためです。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 応募者台帳 | SharePoint コネクタ(Get items/Update item) | 期限を過ぎた人を拾う/消去済みにする |
| 対応の記録 | SharePoint コネクタ(Get items) | 1人分の記録を読む |
| 削除確認のリスト | SharePoint コネクタ(Create item) | 1人1行で判定を書く |
| AI Builder のプロンプト | プロンプトを実行する | 残す理由の判定と根拠 |
| 採用責任者 | 承認(開始して承認を待機) | その月の削除を承認する |
| 応募書類 | SharePoint コネクタ(List folder/Delete file) | 承認後に書類を消す |
| 削除の記録 | SharePoint コネクタ(Create item) | 応募者ID、消した日、判断した人、承認した人 |
フロー②が消すのは、「担当の判断」が「削除する」になっている行だけです。 AIの判定が delete_candidate でも、担当の判断が空なら消しません。担当の判断の列を空のまま承認に回すことは、フローの条件で止めます。
メールボックスと日程調整の道具に残る情報は、このフローでは消しません。 採用の共有メールボックスにある応募者とのメールや、面接の日程調整に使った道具の記録は、それぞれ別の消し方が要ります。 削除の記録に「メールボックスは手作業で消す」の列を設け、担当が月に1回まとめて消して印を付けます。
人が確認する
採用担当が見るのは、削除確認のリストの全員ですが、時間をかけるのは一部です。
keep_candidateとneeds_humanを先に見る … 根拠の文を読み、必要なら記録の全文を開いて、残すか消すかを決めます- 残すなら、次に見直す日を入れる … 請求の対応が終わる見込みの日など。期限を決めずに残さないのが決まりです
consent_unclearは同意を取り直すか決める … 取り直すなら本人に連絡し、取れなければ翌月に消します- 再応募の選考中は、選考の担当に聞く … 前回の記録を選考に使っているかを確かめます
delete_candidateは一覧で流し見る … 根拠の欄が空であること、選考の結果と終了日に違和感が無いことを見て、「削除する」を入れます
採用責任者は、その月の一覧で件数と「残す」の理由を見て承認します。 1人ずつを見直すのではなく、残す人の理由が規程に合っているかと、削除の人数が月ごとに大きく変わっていないかを見ます。
1番目を省かないでください。 keep_candidate を見ずに承認すると、残す理由のある人まで、担当の判断の列が「削除する」のまま消えることがあります。
例外に対処する
| 起きること | 対応 |
|---|---|
| 対応の記録が1件も無い | 規則で「記録なし」。削除の候補にする |
| 記録の本文に氏名が残っていた | 置き換えの規則を足す。AIに渡した記録をログで確かめる |
| 選考中の再応募がある | 規則で「再応募の選考中」。担当が残すかを決める |
| メールアドレスを変えて再応募していた | 規則では拾えない。担当が氏名と経歴で気づいたら、削除確認の行で止める |
| 応募者のフォルダが無い・空 | 台帳だけを消去済みにする。削除の記録に「書類なし」 |
| Delete file が失敗した | その応募者の台帳を消去済みにしない。翌日にやり直し、続けば担当へ |
| 承認が月内に返ってこない | 何も消さない。翌月の判定の前に Teams で責任者に知らせる |
| 承認が拒否された | 何も消さない。拒否の理由をリストに残し、担当が直して再度承認に回す |
| プロンプトがJSONを返さない | 1回だけやり直し、だめなら needs_human にする |
| 本人から利用停止の請求が届いた | この構成を待たずに請求の手順で対応する(UC-0159) |
6行目の順番が大事です。 書類を消し終えてから台帳を消去済みにします。逆にすると、書類が消えていないのに台帳では消したことになり、どこにも記録の無い個人情報がフォルダに残ります。
記録を残す
- 判定にかけた応募者ID、保存期限、選考の結果と終了日
- プロンプトに渡した文(置き換えた後の記録)と、返ってきた JSON
- 担当の判断、判断した人と日時、残す場合の次に見直す日
- 承認の結果、承認した人と日時
- 消した書類の件数とファイル名、台帳を消去済みにした日時
- メールボックスなどを手作業で消した印
ログには、消した人の氏名を残しません。 応募者IDと日付と件数だけにします。消した個人情報を、削除の記録の側に写して残してしまっては意味がありません。 本人から「自分の情報は消えたか」と問い合わせを受けたときは、本人のメールアドレスから台帳の応募者IDを引けないので、問い合わせの時点で受け取った情報と応募者IDの対応を、請求の手順の側で確かめます。
04実装レベルの3段階
本記事の想定は半自動化です。 1件4分が1分になる見込みは、この段階で置いています。消すと決めるのは担当で、承認するのは責任者のままです。 本格構成は、道具ごとに消し方を確かめてから足します。 採用媒体や日程調整の道具が、外から記録を消す手段を持っているかは、それぞれの提供元に確かめる必要があります。 確かめられないうちは、手作業で消して印を付ける運用のままにします。
05工数削減シミュレーション
導入後 480件 × 1分 ÷ 60 = 8 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 中途採用と新卒採用で年に数千人の応募を受けるIT企業・小売・飲食などで、不採用・辞退の応募者の個人情報について「選考終了から1年で消す」といった保存期間を社内で決めているのに、期限が来た人を探して消す作業が追いつかず、台帳と応募書類のフォルダに古い応募者がたまっている場合。応募者台帳と書類を SharePoint で持ち、Microsoft 365 を使っている場合。
- 応募が月に数十人で、担当者が期限の来た人を一覧で見て消せば足りる場合。採用管理のシステムに保存期間を過ぎた応募者を自動で消す機能があり、それで運用できている場合。応募者の個人情報の保存期間を社内でまだ決めていない場合(期間を決めるのが先)。なお、保存期間をどう定めるか、例外として残すことが適法かの判断は、この構成では代替できません。
07最小構成で試す方法
- 保存期限を過ぎた応募者から50人を選ぶ(うち数人は、対応中の問い合わせや苦情があると分かっている人を入れる)
- 50人分の対応の記録から、氏名と連絡先を置き換える
- 手元のAIサービスに、第7章のプロンプトと1人分の記録を貼る
- 返ってきた判定を、担当が記録を読んで決めた判断と見比べる
- 残す理由のある人を
delete_candidateにした件数を数える
見るべきは、残す理由のある人を落とさないかです。
| 出てきた内容 | 判断 |
|---|---|
残す理由のある人が、すべて keep_candidate か needs_human になった | フローの作成に進む |
| 「また応募したい」を同意として扱った | 指示の書き方で直る。構成は有効 |
| 解決済みの古い苦情で残す側に倒れた | 「対応済み」の扱いの1行を足す |
| 残す理由が記録に書かれていない人がいた | 記録の残し方が先。 AIの問題ではない |
4行目が出たら、対応の記録の書き方から直します。 本人とのやり取りが記録に残らない運用では、この構成は残す理由を見つけられません。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 「また応募したい」が同意として扱われる | 同意は台帳の欄で決める。記録の文は consent_unclear にとどめる |
| 解決済みの苦情で、いつまでも消えない | 「対応済み」の扱いを指示に書く |
| AIに渡す記録に氏名が残る | 前処理で置き換え、渡した文をログで抜き取って確かめる |
| 担当の判断が空のまま消える | 担当の判断が「削除する」の行だけを消す条件にする |
| 書類が消えていないのに台帳が消去済みになる | 書類を消し終えてから台帳を更新する順にする |
| 残した人が二度と見直されない | 残すときに次に見直す日を必須にする |
| メールアドレスを変えた再応募を落とす | 規則では拾えない。担当の確認で止める |
| 削除の記録に氏名を写してしまう | 応募者IDと件数だけにする |
| メールボックスに応募書類が残る | 手作業で消す列を設け、月に1回印を付ける |
| 保存期間を決めずに始める | 規程が先。 期限が無ければ拾えない |
上の2行が、判定の失敗のほとんどです。 どちらも、記録の文にある言葉を、規程の言葉と同じものとして扱ってしまうことから起きます。同意と対応の完了は、文ではなく欄や記録の有無で決め、AIには「近い記載がある」と示させるだけにすると、取り違えの出どころが1つに決まります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 応募者の氏名・連絡先・選考の結果と、対応の記録です。記録には、苦情や請求の経緯など、本人にとって慎重に扱うべき内容が含まれることがあります。
- AIに渡すのは、置き換えた後の対応の記録だけにする … 氏名・連絡先・書類は渡しません。判定に要らない情報を、消す直前に外へ渡さないためです
- モデルの処理の場所を確かめる … 公式の説明では、日本で GPT-4.1 mini などが「GA(クロスジオ)」とされ、クロスジオのモデルはリージョン外でデータを処理する可能性があるとされています。応募者の情報を扱ってよいかを、自社の規程と照らしてから使います
- 消す操作は2人の確認を経てから … 担当の判断と責任者の承認の両方がそろったものだけを消します。AIの判定だけで消す経路を作りません
- 保存期間と例外の決め方は法務と決める … 個人情報保護委員会のガイドラインでは、利用目的が達成され、保有する合理的な理由が存在しなくなった場合などに遅滞なく消去するよう努めるとされ、採用に至らなかった応募者の情報について、再応募への対応等のための合理的な期間が経過した後の利用停止等の請求が事例に挙がっています。どの期間を合理的とするかは自社で決めることです
- 法令で保存期間が決まっている情報は別に扱う … ガイドラインでは、法令の定めにより保存期間等が定められている場合は消去の努力義務の限りではないとされています。入社した人の情報は、この構成の対象から外します
- 削除確認のリストの閲覧を採用チームに限る … 判定の根拠の文には、苦情や請求の経緯が写っています
誤りが起きた場合のリスクは、残すべき人を消すことと、消すべき人を残し続けることの2つです。 前者は対応中の事案の資料を失い、後者は規程と実態がずれたままになります。判定と削除の間に人の判断と承認を必ず挟み、残す人には次に見直す日を必ず付けることで、どちらも設計で防ぎます。
10まず何から始めるか
1週目:規程と台帳の列をそろえる
不採用・辞退の応募者の保存期間と、例外として残す理由の一覧を、法務と確かめます。応募者台帳に「保存期限」「状態」「次に見直す日」の列を足し、保存期限を選考終了日から計算して埋めます。
2週目:50人で試す
第8章のとおり、期限を過ぎた50人の記録を置き換えて手元のAIサービスに貼り、担当の判断と見比べます。残す理由のある人を delete_candidate にしていないかを最優先で見ます。
3週目:判定のフローを作る
フロー①で、期限を過ぎた人を拾い、規則とプロンプトで判定し、削除確認のリストに書くところまで作ります。この時点では、何も消しません。 1か月分の判定を担当が見て、判定の質を確かめます。
4週目:承認と削除をつなぐ
「開始して承認を待機」とフロー②を足し、まず10人分だけ、承認の後に書類と台帳を消します。削除の記録が正しく残ったかを確かめます。
2か月目: その月の全員を判定と承認にかけ、たまっていた過去の分を月に数百人ずつ片付けます。3か月目以降: 1件4分が何分になったかと、残す側に出た人の割合を実測します。たまっていた古い応募者がなくなり、毎月の削除が承認だけで回るようになった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 利用する必要がなくなったときとは、利用目的が達成され保有する合理的な理由が存在しなくなった場合などであり、遅滞なく消去するよう努めること。法令の定めにより保存期間等が定められている場合はこの限りでないこと。個人データの消去に、特定の個人を識別できないようにすることが含まれること。採用に至らなかった応募者の情報について、再応募への対応等のための合理的な期間が経過した後に本人が利用停止等を請求した場合が事例に挙がっていること | 個人情報保護委員会: 個人情報の保護に関する法律についてのガイドライン(通則編) | 2026-10-08 |
| 第22条で、利用する必要がなくなったときは個人データを遅滞なく消去するよう努めなければならないとされていること | e-Gov 法令API: 個人情報の保護に関する法律 | 2026-10-08 |
| SharePoint コネクタに Get items(OData のフィルター クエリ、Top Count の既定はすべて)、Create item、Update item、Delete item、List folder、Delete file のアクションがあること | Microsoft Learn: SharePoint connector | 2026-10-08 |
| フローの中で「プロンプトを実行する」アクションでプロンプトを使えること。Azure OpenAI サービスを活用した GPT モデルで動き、一部の地域に限定され、使用制限の対象になる場合があること | Microsoft Learn: Power Automate でプロンプトを使用する | 2026-10-08 |
| プロンプトの出力を JSON にでき、保存した形式がフローで使われること。「回答に JSON マークダウンを含めないでください」を加える対策。フィールドのキーの無い JSON 形式がサポートされないこと | Microsoft Learn: JSON 出力 | 2026-10-08 |
| 日本で GPT-4.1 mini などが「GA(クロスジオ)」とされ、クロスジオのモデルはリージョン外でデータを処理する可能性があること | Microsoft Learn: リージョンと更新プログラムによるモデルの可用性 | 2026-10-08 |
| 「開始して承認を待機」アクションと、「承認/拒否 - 最初に応答」などの承認の種類。割り当てられた人が Outlook のメール、Teams のアダプティブ カード、Power Automate から応答できること | Microsoft Learn: Power Automate の承認を始めましょう | 2026-10-08 |
| スケジュールされたクラウド フローが定期的なスケジュールで実行され、繰り返しのトリガーがフローに入ること | Microsoft Learn: トリガー | 2026-10-08 |
| Power Automate でプロンプトを使うとプロンプト ビルダーのクレジットが使われること。温度が0から1の範囲で、低いほど予測可能な出力になり、既定が0であること | Microsoft Learn: モデルのバージョンと設定を変更する | 2026-10-08 |
応募者の個人情報の保存期間と、例外として残してよい範囲は、法務と決めてください。 本記事は公式の説明で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1019)についてのご相談はこちらから。
