kintone業務設計研究所 > kintone外部連携の設計方法|SaaS・基幹システム・APIの境界を決める
2026年6月12日
•約18分で読めます
kintoneを外部SaaSや基幹システムと連携するときに、外部入力・外部出力・双方向同期・通知・承認後連携、OAuth、APIトークン、Webhook、iPaaS、監査ログ、再実行をどう設計するか整理します。
kintoneを外部サービスや基幹システムと連携したいです。APIでつなげばよいでしょうか。
APIでつなぐ前に、外部入力、外部出力、双方向同期、通知のどれなのかを分けます。さらに、どちらが正本で、失敗した時にどこから再実行するかを決める必要があります。
kintone外部連携という相談は、かなり範囲が広いです。
Webフォームからkintoneへ問い合わせを登録したい。
CRMやMAからリード情報を取り込みたい。
販売管理システムの商品マスタをkintoneへ反映したい。
kintoneで承認した請求データを会計システムへ渡したい。
kintoneのステータス変更をSlackやTeamsへ通知したい。
Power AutomateやiPaaSを使って複数SaaSをつなぎたい。
Webhookでレコード追加を外部へ知らせたい。
外部のBIやデータ基盤へkintoneのデータを渡したい。
こうした要望はすべて外部連携です。
ただし、同じ外部連携でも、設計すべきことは違います。
外部からkintoneへ登録するのか。
kintoneから外部へ出すのか。
kintoneと外部の両方で同じデータを更新するのか。
kintoneの変更を外部へ通知するだけなのか。
承認後や締め後だけ外部へ送るのか。
この分類をしないまま「APIでつなぐ」と、連携は動いても業務が崩れます。
よくある失敗は、次のような状態です。
外部フォームから登録できるが、重複や必須項目の検証がない。
外部SaaSから取引先データを取り込んだが、kintoneの既存顧客と重複する。
kintoneで修正した金額が、古い外部データで上書きされる。
Webhookを送っているが、外部側で処理に失敗しても誰も気づかない。
APIトークンの権限が広すぎて、不要なアプリまで読める。
OAuthクライアントを作ったが、どのユーザーに許可するか管理されていない。
会計システムへ請求データを送った後、kintone側だけ差し替えられる。
連携失敗時に、どのデータを再送すればよいか分からない。
kintone外部連携で最初に決めるべきなのは、接続方法ではなく、「外部システムとの業務境界」と「どちらが正本か」です。
この記事では、kintone外部連携を、外部入力、外部出力、双方向同期、通知、承認後連携に分け、OAuth、APIトークン、Webhook、Power Automate、iPaaS、個別開発、認証、権限、監査ログ、連携失敗時の再実行、基幹システム連携まで整理します。
kintone連携の設計方法はこちら
kintone API制限の設計方法はこちら
kintoneバックアップ設計はこちら
外部連携は、単にサービス同士をつなぐ作業ではありません。
業務の境界を決める作業です。
どの業務をkintoneで行うのか。
どの業務を外部SaaSや基幹システムで行うのか。
どこで正式な値が決まるのか。
どのタイミングで外へ渡すのか。
外部側で失敗した時に、kintoneへ戻すのか、外部側で直すのか。
この境界を決めます。
| 外部連携の相手 | 代表例 | 境界で決めること |
|---|---|---|
| 外部フォーム | 問い合わせ、申請、アンケート | 入力検証、重複、受付後の担当 |
| CRM/MA | リード、商談、メール配信 | 顧客・商談の正本、更新タイミング |
| 会計 | 請求、入金、仕訳 | 請求確定、締め後更新、取消 |
| 販売管理 | 受注、商品、在庫 | 商品マスタ、受注番号、在庫更新 |
| チャット/メール | 通知、承認依頼、異常検知 | 通知条件、再通知、対応責任 |
| BI/データ基盤 | 集計、分析、監査 | 出力項目、更新頻度、閲覧権限 |
外部連携で最初に見るのは、API仕様ではありません。
その外部システムが、業務上どの役割を持っているかです。
たとえば、会計システムが請求の正本なら、kintoneは請求前確認や承認までを担い、確定後は会計側の番号や状態を戻す設計になります。
販売管理が商品マスタの正本なら、kintoneの商品名や単価は参照値として扱います。
kintoneが案件進捗の正本なら、外部の集計表や通知先で修正しないようにします。
外部連携は、データを流す前に「どちらで業務判断するか」を決めると、連携方向と権限が自然に決まります。
外部連携は、まず4つに分けます。
| 種類 | 例 | 設計すること |
|---|---|---|
| 外部入力 | フォーム、CRM、外部申請からkintoneへ登録 | 入力検証、重複、更新キー |
| 外部出力 | kintoneから会計、BI、帳票、社外共有へ渡す | 出力条件、項目、権限 |
| 双方向同期 | kintoneと外部SaaSの両方で更新 | 正本、競合、対象項目 |
| 通知 | レコード追加、承認、変更、異常を外部へ知らせる | きっかけ、通知先、失敗時対応 |
外部入力では、外から来た値をそのままkintoneへ入れないようにします。
必須項目、形式、選択肢、添付、重複、対象期間を確認します。
外部出力では、出してよい状態を決めます。
承認前、差戻し中、締め前、取消済みのデータを外部へ渡すと、外部側の処理が誤ります。
双方向同期では、対象項目を絞ります。
同じ顧客名、金額、状態を両方で更新できる状態にすると、どちらが正しいか分からなくなります。
通知では、通知が届いた後の処理まで決めます。
通知しただけで終わりなのか、外部側で登録や更新を行うのかを分けます。
| 外部連携の種類 | 片方向で足りるか | 注意点 |
|---|---|---|
| フォーム入力 | 原則、外部からkintoneへ片方向 | 登録後の担当と重複確認 |
| 帳票・BI出力 | 原則、kintoneから外部へ片方向 | 外部側で正式値を直さない |
| チャット通知 | 通知だけなら片方向 | 通知後の対応責任 |
| 会計連携 | 片方向または限定的な戻し | 請求番号、入金状態、取消 |
| CRM連携 | 業務により双方向 | リード、商談、顧客の正本 |
| 販売管理連携 | 外部正本になりやすい | 商品、受注、在庫の更新順 |
kintone CSVインポートの設計方法はこちら
kintone CSV出力の設計方法はこちら
kintone外部連携では、認証方式や接続方法を選びます。
ここで混同しやすいのが、OAuth、APIトークン、Webhookです。
| 方式 | 役割 | 向いているケース |
|---|---|---|
| OAuth | 外部アプリがユーザーの許可を得てAPIを使う | ユーザーごとの許可や外部アプリ連携 |
| APIトークン | アプリ単位の権限でAPIを使う | サーバー間連携、定期同期、GAS |
| Webhook | kintoneの操作をきっかけに外部へ通知する | レコード追加、更新、ステータス変更の通知 |
| ユーザー認証 | ユーザー権限でAPIを使う | 操作者に応じた権限反映が必要な処理 |
kintoneヘルプの外部サービス連携カテゴリでは、Microsoft Power Automateなどとの連携に必要な設定として、OAuthクライアント、APIトークン、Webhook送信制御などが整理されています。
Kintone Developer ProgramのOAuthクライアント追加手順では、外部アプリケーションがOAuth 2.0でkintone APIを実行するために、kintone側へアプリケーションを登録し、OAuth認証フローでアクセストークンを取得する流れが説明されています。
Kintone Developer Program:How to Add OAuth Clients
また、kintone REST API概要では、APIトークン認証でX-Cybozu-API-Tokenヘッダーを使うことや、レコードの取得、追加、更新、削除などのAPIが整理されています。
Kintone Developer Program:Kintone REST API Overview
認証方式は、次の観点で選びます。
| 観点 | OAuthが向く | APIトークンが向く |
|---|---|---|
| ユーザーごとの同意 | 必要 | 不要 |
| 外部アプリとして提供 | 向いている | 限定的 |
| 定期バッチ | やや重い | 向いている |
| アプリ単位の固定連携 | 条件次第 | 向いている |
| 権限の細かさ | スコープとユーザー許可 | アプリと操作権限 |
| 管理の注意点 | 許可ユーザー、クライアント秘密情報 | トークン保管、権限範囲 |
Webhookは認証方式ではなく、通知のきっかけです。
Webhookで外部へ送った後、外部側でAPIを呼ぶなら、その外部処理側にも認証設計が必要です。
OAuth、APIトークン、Webhookは同列の選択肢ではありません。OAuthとAPIトークンはAPIを使うための認証、Webhookは外部処理を起動するための通知です。
外部連携の実装手段として、Power Automate、iPaaS、個別開発があります。
どれが優れているかではなく、連携の重さで選びます。
| 手段 | 向いているケース | 注意点 |
|---|---|---|
| Power Automate | Microsoft 365周辺、簡単な通知や登録 | コネクタの制約、認証、実行失敗の管理 |
| iPaaS | 複数SaaSの定型連携 | フロー監視、料金、リトライ設計 |
| 個別API開発 | 複雑な業務条件、重要データ連携 | 保守、監視、テスト、障害対応が必要 |
| GAS | Google Workspace周辺の小規模連携 | 実行権限、ログ、制限、属人化に注意 |
| CSV連携 | 月次・日次の手動/半自動連携 | 形式固定、取込ログ、エラー処理が必要 |
Power AutomateやiPaaSは、早く始められることがあります。
ただし、フローを作れば終わりではありません。
どのアカウントで実行するか。
認証が切れたら誰が直すか。
失敗時に誰へ通知するか。
同じデータを再実行して重複しないか。
外部SaaS側の制限に当たったらどうするか。
こうした運用が必要です。
個別開発が向くのは、業務条件が複雑な場合です。
たとえば、請求確定後だけ会計へ送る。
入金状態だけ会計から戻す。
商品マスタは販売管理を正本にし、廃止商品はkintoneで選択不可にする。
外部IDを保持して、二重送信を防ぐ。
失敗分だけ再実行する。
このような条件が多いなら、個別API連携の方が読みやすく保守しやすい場合があります。
kintoneとスプレッドシートをGAS連携する設計方法はこちら
外部連携では、認証と権限を軽く扱わない方がよいです。
画面では更新できない項目を、API経由で更新できてしまう構成は危険です。
| 権限の観点 | 決めること |
|---|---|
| kintoneアプリ権限 | どのアプリを読める、更新できるか |
| レコード権限 | 部署や担当者ごとの閲覧・更新範囲 |
| フィールド権限 | 金額、粗利、個人情報などを出すか |
| APIトークン | 取得、追加、更新、削除のどれを許可するか |
| OAuthクライアント | どのユーザーに外部アプリ利用を許すか |
| 外部SaaS側権限 | 外部側で誰が連携設定を変更できるか |
| 連携アカウント | 個人ではなく運用可能なアカウントか |
監査ログも設計します。
kintone REST API概要では、リクエストやレスポンス、エラー形式に加えて、APIの制限や同時リクエスト数、日次APIリクエスト数なども説明されています。
Kintone Developer Program:Kintone REST API Overview
外部連携側では、次の情報を残します。
| ログ | 内容 |
|---|---|
| 実行ID | 1回の連携処理を識別する |
| 実行日時 | 開始、終了、処理時間 |
| 実行者 | 手動実行、連携アカウント、OAuthユーザー |
| 対象データ | アプリ、レコード番号、外部ID |
| 件数 | 成功、失敗、スキップ |
| 差分 | どの項目を変更したか |
| 外部レスポンス | エラーコード、メッセージ |
| 再実行可否 | そのまま再実行できるか |
監査ログは、障害時だけでなく、問い合わせ対応にも効きます。
「なぜこの請求が二重で送られたのか」
「誰の権限でこの顧客が外部に出たのか」
「いつ外部側のIDがkintoneに戻ったのか」
こうした確認に答えられるようにします。
外部連携は、失敗します。
認証が切れる。
外部SaaSのAPIが一時的に落ちる。
必須項目が不足する。
外部側の選択肢にない値を送る。
通信が途中で止まる。
API制限に当たる。
同じ外部IDが重複する。
締め後のレコードを更新しようとする。
失敗時の設計では、次を決めます。
| 観点 | 決めること |
|---|---|
| どこまで成功したか | 外部ID、送信済みフラグ、実行ID |
| 何が失敗したか | エラーコード、原因、対象項目 |
| 誰が直すか | 業務担当、管理者、実装担当 |
| どう再実行するか | 失敗分だけ、対象期間だけ、手動承認後 |
| 重複を防ぐか | 外部ID、更新キー、送信済み状態 |
| 戻し方 | 取消、差し替え、更新前CSV |
再実行は、全件ではなく失敗分だけ処理できるようにします。
全件を再実行すると、外部側に二重登録したり、すでに正しい値を上書きしたりします。
外部へデータを送る前には、必要に応じて更新前のkintoneデータを退避します。
特に一括更新、会計連携、基幹システム連携では、更新前CSVや対象レコード一覧を残します。
基幹システム連携では、SaaS同士の軽い通知より設計が重くなります。
販売管理、会計、在庫、受発注、ERPなどは、業務の正式値を持つことが多いからです。
| 連携対象 | 注意点 |
|---|---|
| 会計 | 請求確定、入金状態、取消、締め後更新 |
| 販売管理 | 受注番号、商品マスタ、単価、納品状態 |
| 在庫 | 引当、棚卸、入出庫履歴、同時更新 |
| CRM | 顧客、商談、担当者、活動履歴 |
| ERP | マスタ体系、承認、締め処理、権限 |
基幹システム連携では、kintoneをすべての正本にしない方がよい場合があります。
たとえば、請求や入金は会計システムを正本にする。
商品マスタや在庫は販売管理を正本にする。
案件進捗や社内承認はkintoneを正本にする。
このように、データ種別ごとに分けます。
| データ | 正本候補 | kintoneの役割 |
|---|---|---|
| 顧客 | CRM、販売管理、kintone | 参照、案件管理、対応履歴 |
| 商品 | 販売管理 | 選択肢、見積補助 |
| 見積 | kintone、販売管理 | 承認、帳票、外部送信 |
| 請求 | 会計、販売管理 | 請求前確認、送信状態の管理 |
| 入金 | 会計 | 入金状態の参照 |
| 在庫 | 販売管理、在庫システム | 棚卸入力、確認、履歴 |
基幹システムと連携するなら、締め処理を必ず設計します。
締め後にkintoneから外部へ再送してよいのか。
外部で取消した情報をkintoneへ戻すのか。
差し替えと再発行をどう扱うのか。
承認前のデータを外へ送らないようにするには、どのステータスを見るのか。
ここを決めてから実装します。
ここでは、よくある3つの外部連携パターンで整理します。
外部フォームは、外部入力の連携です。
| 項目 | 設計 |
|---|---|
| 入力元 | Webフォーム、外部申請、取引先入力 |
| 登録先 | kintone問い合わせアプリ |
| 検証 | 必須、メール形式、添付、選択肢 |
| 重複 | メール、会社名、問い合わせID |
| 通知 | 担当部署、受付担当 |
| 後続処理 | ステータス、期限、担当者 |
| ログ | 受付ID、登録日時、失敗理由 |
フォーム連携では、登録後の運用が重要です。
kintoneに入った後、誰が対応し、いつまでに確認し、どの状態で完了にするかを決めます。
会計連携は、承認後連携です。
| 項目 | 設計 |
|---|---|
| 正本 | 請求確定後は会計システム |
| kintoneの役割 | 請求前確認、承認、送信状態 |
| 送信条件 | 承認済み、締め前、送信未済 |
| 更新キー | 請求番号、取引先コード、対象月 |
| 二重送信防止 | 外部ID、送信済みフラグ |
| 戻り値 | 会計側ID、請求状態、エラー |
| 再実行 | 失敗分だけ再送 |
このパターンでは、承認前に外部へ送らないこと、送信済みを二重送信しないこと、会計側で確定した情報をkintone側で勝手に直さないことが重要です。
チャット通知は、通知連携です。
| 項目 | 設計 |
|---|---|
| きっかけ | レコード追加、ステータス変更、期限超過 |
| 通知先 | チャンネル、担当者、管理者 |
| 内容 | レコード番号、状態、担当者、URL |
| 抑制 | 下書き、テスト、軽微な変更は除外 |
| 失敗時 | 通知失敗ログ、再通知 |
| 後続処理 | 通知だけか、外部側で更新もするか |
通知だけなら、外部側でデータを更新しない設計にできます。
通知後に外部側でボタン操作や承認処理を行うなら、外部からkintoneへ戻す連携として別に設計します。
kintone外部連携でよくある失敗をまとめます。
| 失敗 | 起きること | 対処 |
|---|---|---|
| 連携種別を分けない | 入力、出力、通知、同期が混ざる | 目的別に分ける |
| 正本が決まらない | kintoneと外部で値が食い違う | データ種別ごとに正本を決める |
| APIトークン権限が広い | 不要な閲覧・更新ができる | 必要なアプリと操作に絞る |
| OAuth許可ユーザーが曖昧 | 誰が外部アプリを使えるか不明 | 許可ユーザーとスコープを管理する |
| Webhookだけで終わる | 外部側の失敗に気づけない | 受信ログ、再実行、通知を作る |
| 双方向同期を広く許す | 上書きや競合が起きる | 対象項目を限定する |
| 送信済み管理がない | 会計や外部SaaSへ二重送信する | 外部ID、送信済みフラグを持つ |
| 締め後更新を許す | 確定済みデータが変わる | 承認・締め状態で止める |
| 監査ログがない | 誰が何を外へ出したか追えない | 実行ID、実行者、差分を残す |
特に危ないのは、外部連携を「手作業を消すためのもの」とだけ考えることです。
外部連携は、間違ったデータも速く遠くへ送ります。
そのため、連携前の検証、送信条件、失敗時の止め方、再実行、監査ログが必要です。
外部連携を作る前に、次を確認します。
| チェック | 内容 |
|---|---|
| 連携種別 | 外部入力、外部出力、双方向同期、通知、承認後連携のどれか |
| 正本 | kintone、外部SaaS、基幹システムのどこか |
| 同期方向 | 片方向か、双方向か |
| 更新キー | 外部ID、顧客番号、請求番号、対象月など |
| 認証方式 | OAuth、APIトークン、ユーザー認証のどれか |
| 権限 | アプリ、レコード、フィールド、外部SaaS側の権限 |
| Webhook | 何をきっかけに送るか、失敗時にどうするか |
| 承認条件 | どのステータスから外部へ送るか |
| 二重送信 | 送信済みフラグ、外部ID、実行IDで防げるか |
| 失敗通知 | 誰に、どの内容で知らせるか |
| 再実行 | 失敗分だけ再実行できるか |
| 監査 | 実行者、件数、差分、外部レスポンスを残すか |
| 戻し方 | 取消、差し替え、更新前CSV、バックアップがあるか |
このチェックが埋まってから、Power Automate、iPaaS、GAS、個別API開発、連携サービスを選びます。
手段を先に決めると、業務に合わない連携ができやすいです。
Bitlightでは、kintone外部連携を、接続設定ではなく業務境界の設計として支援できます。
たとえば、次のような整理ができます。
外部入力、外部出力、双方向同期、通知、承認後連携を分ける。
kintone、外部SaaS、基幹システムのどこを正本にするか決める。
OAuth、APIトークン、Webhook、iPaaS、個別開発の使い分けを設計する。
APIトークンやOAuthクライアントの権限を必要最小限にする。
外部ID、送信済みフラグ、更新キーで二重送信を防ぐ。
連携ログ、失敗通知、失敗分だけの再実行を作る。
会計、販売管理、CRM、BIとの連携で、承認後、締め後、取消、差し替えの運用を決める。
kintone外部連携は、動かすだけなら短く作れることもあります。
ただし、業務で使うなら、どこが正式値か、いつ外へ送るか、誰の権限で動くか、失敗した時にどこから戻すかまで必要です。
そこまで決めると、外部SaaSや基幹システムとつながっても、kintone側の業務データが崩れにくくなります。
千葉県出身。10歳の頃からプログラミングを始め、ゲーム、Webサイト、ロボット、スマホアプリなどを制作。大阪大学基礎工学部情報科学科で情報工学と統計学を学び、大学時代はAIを研究。大学在学中にWeb広告代理店でのインターンや人材系Webサービスの立ち上げを経験し、卒業後はフリーランスエンジニアとしてGISシステム、データ基盤構築、Webシステムの開発に従事。10年以上のWebアプリ開発・データ分析経験を基に、2023年9月に株式会社ビットライトを設立し、現場業務の仕組み化からデータ基盤構築、データ活用支援までを一気通貫で支援。