ペットシッターの事業者が予約のフォームを Make で受け、ペットの情報・鍵の受け渡し・世話の内容を整えて、担当シッターへの指示と確認の連絡を作る
ペットシッターの予約のフォームを Make で受け、自由に書かれた世話の希望を、ペットごとの食事・薬・散歩・注意点と、鍵の受け渡しの方法に分けて抜き出します。 担当シッターへの指示書と、飼い主に確かめてもらう連絡の下書きまでを作ります。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate/Zapier
- 対象業界
- その他
- 対象部門
- カスタマーサポート/営業
- 対象業務
- データ入力・転記/書類作成
- 主な課題
- 入力作業が多い/問い合わせが多い/確認ミスが多い
- AIで行う処理
- 抽出
- 主な効果
- 入力漏れ削減/品質標準化/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 本格構成
- 費用感
- ノーコード連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- フォームの予約がメールで届く。受付の担当が開き、顧客の台帳でリピートかを確かめる
- 自由記述の欄を読み、ペットごとに食事・薬・散歩・トイレ・注意点を指示書の書式に書き直す
- リピートなら前回の指示書を開き、変わったところがないかを見比べる
- 鍵の受け渡しの方法と返し方が書かれているかを見る。書かれていなければメモする
- シッターの予定表を見て、区域と空きから担当を決める
- 飼い主へ、予約の受付と、確かめたいことを書いたメールを送る
- 担当シッターに、指示書をチャットで送る
- 自動予約のフォームの送信をきっかけに、Make のシナリオが動く
- 自動鍵と防犯の番号の欄を切り離し、閲覧を絞った台帳に書く
- 自動顧客の台帳を引き、リピートなら前回の世話のカードを取る
- 自動自由記述とペットの欄を Claude API に渡し、ペットごとの世話の内容と鍵の受け渡しの方法を項目に抜き出させる
- 自動抜き出した項目を前回のカードと比べ、変わった項目と、書かれていない項目に印を付ける
- 自動薬がある、初めての顧客、鍵の返し方が無い、などの条件で Router が受付の担当の確認の列に回す
- 自動担当シッターへの指示書の下書きと、飼い主への確認の連絡の下書きを作る
- 人受付の担当が、印の付いた項目を先に見て、指示書と連絡の下書きを直す
- 人担当シッターを決め、飼い主へ確認の連絡を送る
- 人飼い主の返事で指示書を確定し、シッターへ送る
各工程の詳しい説明を読む
- フォームの予約がメールで届く。受付の担当が開き、顧客の台帳でリピートかを確かめる
- 自由記述の欄を読み、ペットごとに食事・薬・散歩・トイレ・注意点を指示書の書式に書き直す
- リピートなら前回の指示書を開き、変わったところがないかを見比べる
- 鍵の受け渡しの方法と返し方が書かれているかを見る。書かれていなければメモする
- シッターの予定表を見て、区域と空きから担当を決める
- 飼い主へ、予約の受付と、確かめたいことを書いたメールを送る
- 担当シッターに、指示書をチャットで送る
(a)書き直しに時間がかかる。 自由記述は、飼い主の思いつく順に書かれています。犬のごはんの話の途中に猫の薬の話が入り、散歩のコースの話のあとで「そういえば」と吐き戻しの話が出てきます。ペットごとに並べ替えるだけで、1件の多くの時間を使います。
(b)前回との違いを見落とす。 「前回と同じでお願いします。」のあとに「ごはんは朝だけになりました」と一行ある。前回の指示書を横に置いて一行ずつ見比べないと、シッターは前回の指示書のとおりに夜もごはんを出します。
(c)鍵の取り決めが漏れる。 受け取り方は書かれていても、返し方が書かれていない。キーボックスの場所は書かれていても、番号は「当日お知らせします」になっている。漏れに気づくのが訪問の前日の夜になることがあります。
(d)確認のメールが担当によって違う。 何を飼い主に確かめるかは担当の経験で決まり、薬の量を確かめる担当と、確かめない担当がいます。
(e)シッターが当日に聞き返す。 指示書に「散歩:いつもどおり」と書かれていても、初めてその家に入るシッターには「いつも」が分かりません。訪問の途中で飼い主にメッセージで聞き返すことになり、飼い主は旅先でそれに答えます。 予約の時点で確かめておけば済んだ質問です。
- 【自動】 予約のフォームの送信をきっかけに、Make のシナリオが動く
- 【自動】 鍵と防犯の番号の欄を切り離し、閲覧を絞った台帳に書く
- 【自動】 顧客の台帳を引き、リピートなら前回の世話のカードを取る
- 【自動】 自由記述とペットの欄を Claude API に渡し、ペットごとの世話の内容と鍵の受け渡しの方法を項目に抜き出させる
- 【自動】 抜き出した項目を前回のカードと比べ、変わった項目と、書かれていない項目に印を付ける
- 【自動】 薬がある、初めての顧客、鍵の返し方が無い、などの条件で Router が受付の担当の確認の列に回す
- 【自動】 担当シッターへの指示書の下書きと、飼い主への確認の連絡の下書きを作る
- 【人】 受付の担当が、印の付いた項目を先に見て、指示書と連絡の下書きを直す
- 【人】 担当シッターを決め、飼い主へ確認の連絡を送る
- 【人】 飼い主の返事で指示書を確定し、シッターへ送る
8番目が、この設計の分かれ目です。人が最初に見るのは、自由記述ではありません。 変わった項目と書かれていない項目です。自由記述の原文は、印の付いた項目の根拠を確かめるときに開きます。
10番目で、飼い主の返事を待ってから指示書を確定させるのも、意図してのことです。 抜き出しが正しくても、飼い主が書き忘れていたことは抜き出せません。確認の連絡は、抜き出した内容をそのまま飼い主に見せて、違うところを言ってもらうためのものです。
02今回想定するシステム構成
予約のフォーム(自由記述・ペットの欄・鍵の欄) │ ▼【トリガー】フォームの送信 → カスタム webhook Make ├──▶ 鍵・防犯の番号の欄を切り離し、閲覧を絞った台帳へ ├──▶ 顧客の台帳・前回の世話のカードを引く(Google Sheets) ▼ Claude API(HTTP の Make a request で Messages API を呼ぶ) │ ペットごとの食事・薬・散歩・トイレ・注意点、鍵の受け渡しの方法 ▼ Make ── 前回のカードとの比較/書かれていない項目の確認 ▼ Router(薬あり/初めて/鍵の返し方なし/その他) ▼ 指示書の下書き・確認の連絡の下書き(Gmail)・受付の確認の列 ▼ 【人が確認】── 担当の決定・飼い主への送信・シッターへの送付
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | Make(カスタム webhook、HTTP、Google Sheets、Gmail、Router) | Zapier、n8n、Power Automate |
| 生成AI | Claude API(Messages API、構造化出力) | OpenAI API、Gemini API |
| 保管 | Google スプレッドシート(顧客の台帳、世話のカード、受付の確認の列、鍵の台帳) | Airtable |
| メール | Gmail(代表アドレス) | Microsoft Outlook |
シッターの予定表には書き込みません。 担当を決めるのは受付の担当で、この構成は区域と空きの候補を示すだけです。
Claude は、Make の HTTP で Messages API を呼びます。 Make の Anthropic Claude のアプリには Create a Prompt と Make an API Call のモジュールがありますが、公式のページには、Create a Prompt で構造化出力を使えるかの記載がありません。 この構成では JSON の形を決めて受けたいので、HTTP の Make a request で Messages API を直接呼び、構造化出力を指定します。HTTP のモジュールのタイムアウトは1〜300秒の範囲で決められ、HTTPS の URL だけが使えます。
03どうやって実装するのか
処理の起点を決める
予約のフォームの送信を起点にします。 フォームは送信のたびに、Make のカスタム webhook の URL へ項目を送ります。公式のページでは、即時の webhook は届いた時点でシナリオを動かし、既定では並行して処理するとされています。
この構成では、Process data in order を有効にします。 公式のページでは、これを有効にすると前の実行が終わるまで次を始めないとされています。同じ顧客が予約を送り直したときに、2つの実行が同時に顧客の台帳を書き換えるのを防ぎます。 300件の予約で並行の速さは要りません。
webhook のログは3日間残るとされています。台帳に行を書けなかった予約を後から探せるのは3日までなので、受付の確認の列に「受け取ったが処理できなかった」行を必ず書きます。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 予約 | 顧客の名前とメールアドレス、訪問の日と時間帯、ペットの欄(種類・名前・年齢)、自由記述 | カスタム webhook |
| 鍵の欄 | 受け渡しの方法の選択、キーボックスの番号、警備の解除の番号 | カスタム webhook(別の欄) |
| 顧客の台帳 | 顧客の番号、住所の区域、これまでの予約の回数、かかりつけの動物病院、緊急の連絡先 | 顧客の台帳 |
| 前回の世話のカード | ペットごとの食事・薬・散歩・トイレ・注意点、鍵の受け渡しと返し方 | 世話のカードのシート |
| 確認の決まり | 飼い主に必ず確かめる項目(薬の量と時間、脱走のおそれ、体調の異変のときの連絡先) | 決まりのシート |
質を決めるのは、前回の世話のカードです。 カードがあれば、「前と同じ」と書かれた予約でも、何が前と同じなのかを項目で示せます。無ければ、「前と同じ」は何も書かれていないのと同じです。 初めての顧客の予約で作ったカードを、次の予約のための材料として残します。
フォームの自由記述の欄の上に、「ごはん・お薬・お散歩・トイレ・気をつけてほしいこと」と見出しの例を置きます。 書き方を縛るのではなく、思い出してもらうための見出しです。
データの取得方法を決める
| 取るもの | どこから | どうやって |
|---|---|---|
| 予約の項目 | 予約のフォーム | カスタム webhook |
| 顧客の行 | 顧客の台帳 | Google Sheets の Search Rows(メールアドレス) |
| 前回の世話のカード | 世話のカードのシート | Search Rows(顧客の番号、最新の1件) |
| シッターの空きの候補 | シッターの予定表 | Search Rows(区域と日付) |
| 抜き出しの結果 | Claude API | HTTP の Make a request(応答を解析する設定にする) |
顧客の照合は、メールアドレスで行います。 名前で引くと、同じ名前の別の顧客や、家族が代わりに予約した場合に取り違えます。メールアドレスが台帳に無ければ初めての顧客として扱い、似た名前の顧客がいても自動では結び付けません。
HTTP の Make a request は、応答を解析する設定にすると、後のモジュールで項目を選んで使える形になるとされています。抜き出した JSON の項目を、そのまま比較と下書きのモジュールに渡します。
AIへ渡す前に整形する
- 鍵と防犯の番号の切り離し … キーボックスの番号と警備の解除の番号の欄は、AIへの入力に入れません。鍵の台帳に書いてから、その値をシナリオの後の処理で使わないようにします
- 自由記述の中の番号の検知 … 自由記述に4桁から8桁ほどの数字の並びがあれば、AIに渡す前に「(番号)」に置き換え、受付の確認の列に印を付けます。飼い主が自由記述に番号を書いてしまうことがあるからです
- AIに渡す範囲を絞る … 顧客の名前、住所、電話番号は渡しません。ペットの名前と世話の内容だけで抜き出しは足ります
- 前回のカードの付け足し … リピートなら、前回のカードを「前回の世話」として一緒に渡します
- 日付の確認 … 訪問の日がすでに過ぎていないか、開始が終了より後になっていないかをワークフローが確かめます
- 重複の確認 … 同じメールアドレスで同じ日の予約が届いていれば、送り直しとして印を付けます
2番目を省かないでください。 決まった欄で番号を受けていても、自由記述に「キーボックスは玄関の右、番号は〇〇〇〇です」と書く飼い主はいます。置き換える前の自由記述は、鍵の台帳と同じ閲覧の絞られた場所にだけ残します。
AIに処理させる
させるのは、自由記述とペットの欄から、ペットごとの世話の内容と鍵の受け渡しの方法を項目に抜き出すことだけです。
| 項目 | 抜き出すもの | 書かれていないとき |
|---|---|---|
| 食事 | 回数、時間、量、フードの置き場所、水 | not_stated |
| 薬 | 薬の名前、量、与える時間、与え方を原文のまま | 薬の話が無ければ none_mentioned |
| 散歩 | 回数、時間の長さ、コース、リードと首輪の注意 | 犬で書かれていなければ not_stated |
| トイレ | 猫砂・シートの交換、掃除のしかた | not_stated |
| 注意点 | 脱走のおそれ、人見知り、触ってはいけない場所、他のペットとの相性、持病 | 空 |
| 家のこと | 郵便物、植物の水、カーテン、照明、空調 | 空 |
| 鍵の受け渡し | 方法(hand / keybox / manager / post)、受け取りの日、返し方 | 返し方が無ければ not_stated |
| 前回との関係 | 「前と同じ」と書かれた項目、前回と違うと書かれた項目 | - |
| 根拠 | 項目ごとに、根拠にした自由記述の文 | - |
薬の欄を「原文のまま」にするのが、この構成でいちばん大事な決まりです。 「朝晩半錠ずつ」を「1日1錠」と整えると、シッターは朝に1錠を与えます。量と時間は、飼い主が書いた言葉をそのまま指示書に載せます。
| させないこと | 理由 |
|---|---|
| 薬の量や与え方を言い換える・まとめる | 与え方の誤りにつながる。原文のまま |
| 書かれていない世話を、一般的な世話で補う | 補うと、書かれていないという事実が消える |
| 体調や持病について見立てる | 獣医師の判断の範囲 |
| 前回のカードの内容を、今回の予約に書かれたものとして扱う | 「前と同じ」の範囲は飼い主に確かめる |
| 担当シッターを選ぶ | 区域・空き・相性は受付の担当が決める |
4行目がいちばん起きやすい失敗です。 前回のカードを渡しているので、今回の自由記述に散歩の話が無くても、AIは前回のカードから散歩の内容を写したくなります。写させず、not_stated のまま返させ、比較の段で「前回あり・今回記載なし」と出します。 それを飼い主に「前回と同じでよろしいですか」と聞くのが、確認の連絡の役目です。
指示内容を固定する
あなたはペットシッターの事業者の受付の補助です。
飼い主が予約のフォームに書いた自由記述とペットの欄から、ペットごとの
世話の内容と、鍵の受け渡しの方法を項目に抜き出してください。
【厳守事項】
- 自由記述とペットの欄に書かれたことだけを抜き出してください。
- 薬の名前・量・時間・与え方は、自由記述の言葉をそのまま写してください。
言い換えたり、まとめたり、計算したりしないでください。
- 書かれていない項目は not_stated にしてください。一般的な世話の
しかたで補わないでください。
- 「前回の世話」は比べるための参考です。今回の自由記述に書かれていない
ことを、前回の世話から写さないでください。
- 自由記述に「前と同じ」「いつもどおり」とあれば、どの項目について
そう書かれているかを same_as_last に書いてください。範囲が分から
なければ same_as_last_scope を unclear にしてください。
- 体調、持病、薬の効き目について、あなたの考えを書かないでください。
- どのペットの話か分からない文は、pet を unknown にしてください。
- 項目ごとに、根拠にした文を evidence にそのまま写してください。
- 「(番号)」と置き換えられた箇所の中身を推し量らないでください。
- 飼い主に確かめたほうがよいことを questions に、飼い主への質問の形で
書いてください。
【ペットの欄】{pets}
【前回の世話】{last_card}
【自由記述】{free_text}
「前回の世話から写さない」と「same_as_last を書く」を並べているのは、片方だけでは足りないからです。 写させないだけだと、「前と同じ」と書かれた予約がすべて not_stated になり、確認の連絡が質問だらけになります。どの項目が「前と同じ」と言われたのかを返させれば、そこだけ前回のカードの内容を飼い主に示して確かめられます。
「どのペットの話か分からない文は unknown」を入れるのは、多頭飼いの予約で取り違えが起きるからです。 「この子は薬を嫌がります」の「この子」が犬か猫かは、文の前後で決まらないことがあります。
出力形式を固定する
構造化出力で、次の形の JSON を返させます。
{
"booking_id": "",
"pets": [
{
"pet": "ココ(犬)",
"food": { "status": "stated", "text": "朝だけ。計量カップ1杯", "evidence": "" },
"medicine": { "status": "stated", "text": "朝晩半錠ずつ、ちゅーるに混ぜて", "evidence": "" },
"walk": { "status": "not_stated", "text": "", "evidence": "" },
"toilet": { "status": "not_stated", "text": "", "evidence": "" },
"cautions": ["玄関を開けると飛び出すことがある"],
"same_as_last": ["walk"]
}
],
"house": ["郵便受けの中を玄関へ"],
"key": { "method": "keybox | hand | manager | post", "handover_date": "", "return": "not_stated", "evidence": "" },
"same_as_last_scope": "clear | unclear",
"questions": ["お散歩は前回と同じく朝夕20分ずつでよろしいですか。"]
}
公式のページでは、構造化出力は output_config.format に type: "json_schema" を指定し、オブジェクトの additionalProperties を false にします。refusal や max_tokens で止まったときは、出力がスキーマに合わないことがあるとされているので、Make の側で stop_reason を見て、end_turn 以外なら受付の確認の列に回します。
1つ目の理由は、前回のカードと項目どうしで比べられることです。 Make の側で、ペットごと・項目ごとに次のように印を付けます。
| 前回のカード | 今回 | 印 |
|---|---|---|
| あり | stated で内容が違う | 「変更あり」 |
| あり | not_stated で same_as_last に含まれる | 「前回と同じ(要確認)」 |
| あり | not_stated で same_as_last に含まれない | 「記載なし」 |
| なし | stated | 「新規」 |
| 薬の項目 | どれでも | 「薬あり」 |
2つ目は、Router で振り分けられることです。 公式のページでは、Router の道は1本ずつ順に処理され、どの条件にも当たらないデータはフォールバックの道で受けられるとされています。
| 道 | 条件 |
|---|---|
| 1 | 「薬あり」が1つでもある |
| 2 | 初めての顧客 |
| 3 | 鍵の return が not_stated |
| 4 | same_as_last_scope が unclear |
| フォールバック | 上のどれにも当たらない |
どの道に入っても、受付の担当の確認を通ります。 道の違いは、確認の列のどの欄に印が付くかと、確認の連絡の下書きにどの質問が入るかです。
3つ目は、指示書と連絡の下書きを同じ項目から作れることです。 指示書には項目と根拠の文を、連絡の下書きには項目と questions を入れます。同じ JSON から作るので、指示書と飼い主への確認の内容が食い違いません。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 予約のフォーム | カスタム webhook | 予約の項目を受け取る |
| 顧客の台帳・世話のカード・予定表 | Google Sheets の Search Rows | 顧客、前回のカード、空きの候補を引く |
| 鍵の台帳 | Google Sheets の Add a Row | 鍵と防犯の番号を書く(閲覧を絞ったシート) |
| Claude API | HTTP の Make a request | 世話の内容と鍵の方法の抜き出し |
| 受付の確認の列 | Google Sheets の Add a Row | 印と下書きの場所を書く |
| Gmail | Create a draft email | 飼い主への確認の連絡の下書き |
飼い主への連絡は、下書きまでです。 Gmail のアプリには Send an email のモジュールもありますが、使いません。送るのは、受付の担当が下書きを読んでからです。
世話のカードのシートには、飼い主の返事で確定した内容だけを書きます。 抜き出しの段階の内容をカードにすると、次の予約で「前回」として誤った内容が渡ります。
人が確認する
- 「薬あり」を最初に見る … 指示書の薬の欄が、自由記述の原文と一字も違わないかを見ます
- 「変更あり」「記載なし」を見る … 確認の連絡の下書きに、その質問が入っているかを確かめます
- 鍵の取り決めを見る … 受け渡しと返し方の両方が決まっているか。番号は鍵の台帳で確かめ、指示書には書きません
- 担当シッターを決める … 予定表の候補から、区域・空き・そのペットとの相性で決めます
- 確認の連絡を送る … 下書きを直して送ります
- 飼い主の返事で指示書を確定し、世話のカードを更新する
1番目を省かないでください。 薬の量の取り違えは、シッターの訪問の中で取り返しがつきません。原文と指示書を左右に並べて表示し、薬の欄だけは担当が確認の印を押さないと次に進めないようにしておきます。
目標は、300件をならして1件5分です。 印の少ないリピートの予約は2〜3分、薬のある予約と初めての顧客の予約は10分ほどかかる想定です。
例外に対処する
| 起きること | 対応 |
|---|---|
| 自由記述に番号が書かれている | 置き換えて印を付ける。飼い主に、番号は決まった欄に書いてもらうよう伝える |
| メールアドレスが台帳に無いが、名前の似た顧客がいる | 自動では結び付けない。受付の担当が確かめる |
| どのペットの話か分からない文がある | unknown のまま確認の連絡の質問にする |
stop_reason が end_turn 以外 | 下書きを作らず、受付の確認の列に回す |
| 訪問の日が過ぎている・日付の順がおかしい | AIに渡さず、受付の担当に回す |
| 同じ日の予約が二度届く | 送り直しとして印を付け、新しいほうだけ処理する |
| webhook の待ち行列があふれる | 公式のページでは、あふれた分は400で拒まれるとされている。フォームの側で送信の失敗を飼い主に表示する |
| HTTP が時間切れになる | 受付の確認の列に「処理できなかった」行を書く |
上から3行目までが大半を占めます。 どれもAIの問題ではなく、飼い主の書き方の問題です。 フォームの見出しの例と、決まった欄の説明を直すと減ります。
記録を残す
- 予約の項目の全文(鍵と防犯の番号を除く)と、受け取った日時
- 鍵と防犯の番号(閲覧を絞った鍵の台帳にだけ)
- 抜き出しの JSON の全文と、前回のカードとの比較の結果
- 受付の担当が直した記録 … どの項目を、どう直したか
- 飼い主の返事と、確定した世話のカード
- 指示書をシッターへ送った日時
鍵の台帳は、訪問が終わって鍵を返したら番号を消します。 次の予約でまた受け取ります。番号を残し続けると、使わなくなった番号の一覧ができあがります。
04実装レベルの3段階
最小構成では件数がさばけません。 1件ずつ貼るので、300件には使えません。確かめるための段階です。 半自動化で、1件15分が9分程度になります。 抜き出しは自動になりますが、前回の指示書との見比べと、確認の連絡を書く作業が残ります。本格構成で5分になり、この段階が本記事の想定です。 差が大きいのは、前回との見比べが、項目の数だけ繰り返す手作業だからです。 段階を飛ばさないでください。 半自動化で1か月回すと、unknown の多い書き方と、「前と同じ」の範囲が分からない書き方が分かります。フォームの見出しの例を直してから比較を足すほうが、確認の連絡の質問が減ります。
05工数削減シミュレーション
導入後 300件 × 5分 ÷ 60 = 25 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 数名から十数名のシッターで、犬・猫・小動物の訪問の世話を請け負い、Web のフォームで月に数百件の予約が届く事業者。フォームの自由記述の欄に食事・薬・散歩の希望が長く書かれ、受付の担当がそれを読んでシッター向けの指示書に書き直している場合。リピートの顧客が多く、前回と何が変わったかを確かめるのに時間がかかっている場合。
- 予約のほとんどを電話で受け、文字で残らない事業者。シッターが1〜2名で、受付とシッターが同じ人の場合。訪問の前に必ず対面の打ち合わせをして世話の内容を決め直す運用の事業者。なお、薬の与え方の判断、体調の異変への対応、鍵の預かりと返却の責任の範囲の決定は、この構成では代替できません。
07最小構成で試す方法
- 先月の予約から20件を選ぶ(薬のある予約、多頭飼いの予約、「前と同じ」と書かれた予約を必ず入れる)
- 自由記述から、名前・住所・番号を消す
- 手元のAIサービスの画面に1件ずつ貼り、「ペットごとに、食事・薬・散歩・トイレ・注意点と、鍵の受け渡しの方法と返し方を抜き出してください。薬は原文のまま写してください。書かれていない項目は『記載なし』にしてください」と指示する
- 出てきた内容を、当時シッターに送った指示書と突き合わせる
20件は必ずやってください。 ワークフローを組む前に、「書かれていないことを補わないか」と「薬を原文のまま写せるか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の指示書と同じ内容が抜き出せた | フォームとワークフローの連携に進む |
| 書かれていない世話を一般的な内容で補った | 指示の書き方で直る。構成は有効 |
| 当時の指示書に無い注意点が出た | 当時、書き直しで落ちていたかもしれない。 自由記述で確かめる |
3行目が出ることは珍しくありません。 自由記述の後ろのほうに一行だけ書かれた注意点は、書き直しのときに落ちやすいものです。
シッターにも、抜き出した内容を見てもらってください。 受付の担当が「足りている」と思う指示書でも、現場で家に入る人には足りないことがあります。シッターが毎回聞き返している項目があれば、それが世話のカードに足すべき項目です。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 薬の量が言い換えられる | 原文のまま写すことを明記し、受付の担当が一字ずつ見る |
| 書かれていない世話が一般的な内容で埋まる | 補わないことを明記し、not_stated で返させる |
| 前回のカードの内容が今回の予約として写される | 写させず、same_as_last で範囲を返させる |
| 多頭飼いでペットを取り違える | 分からない文は unknown にし、確認の連絡で聞く |
| 鍵の番号がAIに渡る | 決まった欄で受けて切り離し、自由記述の数字も置き換える |
| 同じ顧客の予約が同時に処理される | Process data in order を有効にする |
| 抜き出しの段の内容がカードに残る | カードには飼い主の返事で確定した内容だけを書く |
| 確認の連絡が自動で送られる | 下書きまでにする |
| 初めての顧客を似た名前の顧客と結び付ける | メールアドレスで照合し、自動では結び付けない |
| webhook のログが消えて探せない | 処理できなかった予約も確認の列に行を書く |
上の3行が、この構成の失敗のほとんどです。 どれも、AIが「整った指示書」を作ろうとして起きます。シッターに必要なのは整った文ではなく、飼い主が書いたとおりの内容と、書かれていないという事実です。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 飼い主の名前・住所・連絡先、留守にする日、ペットの健康と薬、そして家の鍵の受け渡しの方法とキーボックス・警備の番号です。留守の日と住所と鍵の情報がそろうと、空き巣に必要な情報が一式そろいます。
- 鍵と防犯の番号をAIに渡さない … 決まった欄で受けて切り離し、自由記述の数字も置き換えます。指示書にも書かず、シッターには訪問の前に別の経路で伝えます
- 住所と留守の日をAIに渡さない … 抜き出しに要るのは世話の内容だけです。住所と日付はワークフローの中だけで扱います
- 鍵の台帳の閲覧を絞る … 鍵の台帳は受付の責任者と担当シッターだけが見られるようにし、訪問が終わったら番号を消します
- 薬と体調について判断しない … 薬の与え方の判断と、体調の異変への対応は、飼い主とかかりつけの動物病院が決めることです。 この構成は、飼い主が書いた内容をそのまま伝えるだけです
- webhook の URL を公開の場に置かない … フォームの送信先の URL が知られると、誰でも予約の形のデータを送れます。フォームの側で送信元を絞り、受けた予約は顧客の台帳と照らしてから処理します
- シッターに渡す指示書の範囲を決める … 指示書には世話の内容と、家の中で触れてよい場所・いけない場所を書きます。飼い主の勤め先や旅行の行き先のような、世話に要らない話は自由記述に書かれていても載せません。 シッターの端末に残る情報を、世話に要る分だけにします
誤りが起きた場合のリスクは、誤った世話の内容でシッターが訪問することと、鍵と留守の情報が漏れることの2つです。 前者は薬の言い換えと前回の内容の写し込みで起き、後者は番号がAIや指示書に入ると起きます。どちらも、渡すものと写すものを設計で決めておくことで守ります。
10まず何から始めるか
1週目:世話のカードの項目を決める
食事・薬・散歩・トイレ・注意点・家のこと・鍵の受け渡しと返し方を、カードの項目にします。シッターに「指示書で困ったこと」を聞き、項目に足すものを決めます。
2週目:20件で試す
先月の予約から20件を選び、手元のAIサービスで抜き出しをさせます。薬を原文のまま写しているか、書かれていない項目を補っていないかを最優先で見ます。
3週目:フォームを直す
鍵と防犯の番号を決まった欄で受けるようにし、自由記述の欄の上に見出しの例を置きます。「番号は自由記述に書かないでください」と一行足します。
4週目:フォームから抜き出しまでをつなぐ
Make でカスタム webhook を受け、鍵の欄を切り離し、抜き出しの結果を受付の確認の列に書くところまで作ります。この時点では前回との比較をせず、抜き出しの結果だけを見ます。
2か月目: 予約の多い顧客から世話のカードを作り、前回との比較と Router での振り分けを足します。3か月目以降: 指示書と確認の連絡の下書きを足し、1件15分が何分になったかを実測します。リピートの予約のほとんどに前回のカードが付き、受付の担当が印の付いた項目だけを見れば済むようになった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| webhook ごとに待ち行列があること。即時の webhook が届いた時点でシナリオを動かし、既定で並行して処理すること。Process data in order を有効にすると前の実行が終わるまで次を始めないこと。10秒あたり300件を超えると429、待ち行列があふれると400で拒まれること。webhook のログが3日間保存されること | Make Help: Webhooks | 2026-10-27 |
| Router の道が1本ずつ順に処理され、どの条件にも当たらないデータをフォールバックの道で受けられること。道ごとにフィルターで条件を付けられること | Make Help: Router | 2026-10-27 |
| HTTP のアプリに Make a request があり、タイムアウトが1〜300秒で、HTTPS の URL だけが使えること。応答を解析する設定で後のモジュールで項目を使えること | Make Apps: HTTP | 2026-10-27 |
| Google Sheets に Search Rows・Add a Row・Update a Row があること | Make Apps: Google Sheets | 2026-10-27 |
| Gmail に Create a draft email・Send an email・Watch emails があること | Make Apps: Gmail | 2026-10-27 |
| Anthropic Claude のアプリに Create a Prompt と Make an API Call があり、Create a Prompt の構造化出力についての記載が無いこと | Make Apps: Anthropic Claude | 2026-10-27 |
構造化出力を output_config.format に type: "json_schema" で指定し、additionalProperties を false にすること。refusal・max_tokens で止まったときはスキーマに合わないことがあること | Claude Docs: Structured outputs | 2026-10-27 |
薬の与え方と体調の異変への対応は、飼い主とかかりつけの動物病院の指示に従ってください。 本記事は上記の公式ページで確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-2040)についてのご相談はこちらから。
