API と MCP による接続済みアカウント管理

TrekMail のメッセージ API と MCP ツールで Gmail などの外部メールを接続、管理し、スコープ、制限、ルーティング例を確認できます。

記事の詳細

種類・難易度・対象プラン・最終更新の情報。

種類
ガイド
難易度
上級
プラン
Pro · Agency
最終更新
2026年8月23日

接続済みアカウントを使用すると、ウェブメールのメールボックスから外部メールボックス、Gmail、Yahoo、iCloud、Outlook.com/Microsoft 365、または任意の IMAP サーバーにあるメールを読んだり送信したりできます。メッセージ API と MCP ツールは、同じ機能をプログラムから利用できるようにします。接続済みアカウントの一覧表示、追加、テスト、編集、削除のほか、通常のメッセージ呼び出し(一覧、閲覧、送信、フラグ、移動、削除、フォルダー)を、トークン自身のメールボックスではなく接続済みアカウントに向けることができます。

簡単に言うと、mailbox_id はエージェントが代理で操作できる TrekMail メールボックスを選び、external_account_id はその中の Gmail または別の接続済みメールボックスを選びます。両者を入れ替えることはできません。

プラン、制限、カタログの規模

プラン メールボックスごとの接続済みアカウント ダッシュボード/ウェブメール API と MCP による管理
Nano 0 いいえ いいえ
Starter 5 はい いいえ
Pro 10 はい はい
Agency 30 はい はい

接続済みアカウントの管理には 7 つのメッセージツールがあります。スコープが限定されたトークンには、製品カタログ全体ではなく、実際に使用できるツールだけが表示されます。

始める前に

  • 接続済みアカウントはウェブメール機能であり、メッセージトークンのインターフェース (/api/v1/messages/...) を使用します。ダッシュボード API トークンではなく、以下のスコープを持つメッセージトークンで認証します。
  • プランの制限はメールボックスごとに適用されます:Starter 5, Pro 10, Agency 30。Nano プランには接続済みアカウントが含まれません。
  • 各 endpoint の範囲はトークン自身のメールボックスに限定されます。トークンが表示、管理できるのは自身の接続済みアカウントだけであり、別のメールボックスのアカウントにはアクセスできません。
  • 認証情報と OAuth トークンは、応答では常にマスクされます。パスワードまたはアプリパスワードを書き込むことはできますが、後から読み戻すことはできません。
  • Outlook.com および Microsoft 365 アカウントは、ウェブメール UI の Microsoft サインイン (OAuth) で接続します。接続後は API で管理、使用できますが、対話型の Microsoft 同意手順を API が実行することはありません。

スコープ

スコープ 機能
messages:read 接続済みアカウントを一覧表示し、メールアドレスからプロバイダーを検出する
messages:write 接続済みアカウントを追加、テスト、編集、削除する

メッセージ呼び出しで接続済みアカウントを指定するには、その呼び出しで通常必要となるものと同じスコープが必要です(たとえばメッセージの一覧には messages:read、送信には messages:send が必要です)。

接続済みアカウントの管理

ベースパス:/api/v1/messages/external-accounts

メソッド パス スコープ 目的
GET /external-accounts messages:read メールボックスの接続済みアカウントを一覧表示する
POST /external-accounts/detect messages:read メールアドレスからプロバイダーと推奨サーバー設定を検出する
POST /external-accounts/test messages:write 未保存の認証情報をテストする(アカウントは作成されません)
POST /external-accounts messages:write 接続済みアカウントを追加する(テスト必須。不正な認証情報は保存されません)
PATCH /external-accounts/{id} messages:write ラベル、色、統合表示の設定、または認証情報を編集する
POST /external-accounts/{id}/test messages:write 保存済みアカウントを再テストする
DELETE /external-accounts/{id} messages:write アカウントを削除する(保存された認証情報を消去し、リモートメールボックスには影響しません)

アカウントを追加する

POST /api/v1/messages/external-accounts
Scope: messages:write

リクエスト本文:

フィールド 必須 説明
email string はい 外部メールボックスのアドレス
provider string はい gmailyahooaolicloudzohogmxyandexfastmail、または custom
password string はい パスワードまたはアプリパスワード(ほとんどのプロバイダーではアプリパスワードが必要です)
imap_host string はい IMAP ホスト名
imap_port integer はい 143 または 993
imap_encryption string はい ssl または tls
smtp_host string はい SMTP ホスト名
smtp_port integer はい 465587、または 2525(ポート 25 は拒否されます)
smtp_encryption string はい ssl または tls
imap_username string いいえ デフォルトはメールアドレス
smtp_username string いいえ デフォルトは IMAP ユーザー名
smtp_password string いいえ デフォルトは IMAP パスワード
label string いいえ 表示ラベル(デフォルトはメールアドレス)
include_in_unified boolean いいえ すべての受信トレイに表示する(デフォルトは true

最初に POST /external-accounts/detect を呼び出すと、provider とサーバー設定が自動入力されます。保存処理は保存前に実際の IMAP + SMTP テストを実行します。422 とエラーカテゴリー (authtlsnetworktransient_throttle) が返された場合、認証情報が機能せず、何も保存されなかったことを意味します。

メッセージ呼び出しで接続済みアカウントを指定する

メールボックスを操作するすべてのメッセージ endpoint は、任意の external_account_id を受け取ります。これを指定するとトークン自身のメールボックスではなく、その接続済みアカウントに対して呼び出しを実行します。メールボックス自体を使う場合は省略します。これは一覧、閲覧、送信、返信、フラグ、移動、削除、フォルダー一覧に適用されます。

GET /api/v1/messages?external_account_id=42&folder=INBOX
Scope: messages:read
POST /api/v1/messages/send
Scope: messages:send
{
  "external_account_id": 42,
  "to": "someone@example.com",
  "subject": "Sent from my connected account",
  "text": "..."
}

external_account_id だけを指定した送信では、そのアカウント自身の SMTP サーバー(プロバイダーの SPF/DKIM)が使われます。代わりにソースに紐づいた identity_id を指定すると、その差出人 ID のドメインまたは保存済みプロファイルのルートを使用しながら、送信済みコピーは接続済み受信トレイに保存されます。アカウントは正常 (status: active) である必要があります。切断されたアカウントでは、再接続を求めるエラーが返されます。API と MCP による差出人アドレスを参照してください。

MCP ツール

同じ機能は MCP を介して AI エージェントでも利用できます(プライベート stdio サーバーとパブリック MCP サーバーの両方):

ツール スコープ 目的
list_external_accounts read メールボックスの接続済みアカウントを一覧表示する
detect_external_account read メールアドレスからプロバイダーと設定を検出する
test_external_account manage 未保存の認証情報をテストする
create_external_account manage 接続済みアカウントを追加する
update_external_account manage ラベル/色/統合表示/認証情報を編集する
test_saved_external_account manage 保存済みアカウントを再テストする
delete_external_account manage 接続済みアカウントを削除する

メッセージツール list_messagesread_messagesend_messagelist_foldersupdate_message_flagsmove_messagedelete_messageprepare_replyprepare_reply_allprepare_forward は、任意の external_account_id 引数を受け取ります。送信、下書き、予約送信では、ソースに紐づいた identity_id も使用でき、この値は list_identities が返します。

管理ツールは、ユーザーが指定した認証情報を使って任意のメールサーバーへの外向き接続を開くため、接続済みアカウント機能のほかの部分と同じ安全対策を採用しています。具体的には、ホストの許可リスト、プライベート範囲のブロック、ポートの許可リスト、ホストごとの接続上限です。

関連記事

ワークフローの続きとなる関連ガイドに移動します。

TrekMail の運用と保護に必要な技術を使用します。確認すると、Cookie ポリシーに記載された限定的な分析と広告測定も許可されます。

TrekMail にサインイン

ダッシュボード、メールボックス、DNS にアクセスできます。

または

12 文字 パスワードが一致

または

再設定メールを送信しました

このメールアドレスのアカウントが存在する場合、パスワード再設定の手順をお送りしました。

続行すると、TrekMail の 利用規約 および プライバシーポリシーに同意したものとみなされます.