認証のセットアップ
Brevo には、用途に応じて 2 つの認証方式があります。標準的な API アクセスには API キー認証、AI 連携には MCP トークン認証 を使います。このガイドでは両方の方式を説明します。
API キー認証
Brevo の API キーは、すべての Brevo サービスへの標準的な REST API アクセスに使用します。
API キーを生成する
- Brevo のダッシュボードに ログイン します
- Settings → API Keys に移動します
- Generate a New API Key をクリックします
- キーに分かりやすい名前を付けます(例:「My App Production」)
- キーを コピーして安全に保管 します(この後は二度と表示されません)
API キーのセキュリティに関するベストプラクティス
✅ 推奨
- 環境変数を使って キーを安全に保管する
- 開発用と本番用で 別々のキーを使う
- キーを定期的にローテーションする(90 日ごとを推奨)
- キーの権限を制限し、必要なものだけに絞る
- ダッシュボードで キーの利用状況を監視する
❌ 非推奨
- キーをバージョン管理にコミットしない
- アプリケーションに キーをハードコードしない
- メールやチャットで キーを共有しない
- テストに 本番用のキーを使わない
環境変数
API キーは環境変数として保管します。
Linux/macOS(.bashrc または .zshrc)
export BREVO_API_KEY="your_api_key_here"Windows(コマンドプロンプト)
set BREVO_API_KEY=your_api_key_hereNode.js(.env ファイル)
BREVO_API_KEY=your_api_key_here// Load from environmentconst apiKey = process.env.BREVO_API_KEY;Python
import os
api_key = os.getenv('BREVO_API_KEY')PHP
$apiKey = $_ENV['BREVO_API_KEY'];// or$apiKey = getenv('BREVO_API_KEY');認証ヘッダー
リクエストのヘッダーに API キーを含めます。
標準的なヘッダーの形式
GET /v3/account HTTP/1.1Host: api.brevo.comAccept: application/jsonapi-key: your_api_key_hereJavaScript の例
const headers = { 'Accept': 'application/json', 'api-key': process.env.BREVO_API_KEY};
fetch('https://api.brevo.com/v3/account', { headers }) .then(response => response.json()) .then(data => console.log(data));Python Requests
import requests
headers = { 'Accept': 'application/json', 'api-key': os.getenv('BREVO_API_KEY')}
response = requests.get('https://api.brevo.com/v3/account', headers=headers)キーの権限とスコープ
API キーごとに異なる権限を設定できます。
- 読み取り専用:GET リクエストのみ許可
- メール送信:トランザクションメールの権限
- コンタクト管理:コンタクトの作成、更新、削除
- キャンペーン管理:キャンペーンの作成と送信
- フルアクセス:すべての API エンドポイント
認証をテストする
認証が機能しているかどうかは、次のエンドポイントで確認できます。
curl -X GET "https://api.brevo.com/v3/account" \ -H "Accept: application/json" \ -H "api-key: $BREVO_API_KEY"成功レスポンス(200 OK):
{ "firstName": "John", "lastName": "Doe"}認証エラー(401 Unauthorized):
{ "code": "unauthorized", "message": "Invalid API key provided"}キーのローテーション
API キーをローテーションする手順は次のとおりです。
- ダッシュボードで 新しいキーを生成 します
- 新しいキーで 環境変数を更新 します
- 新しいキーで アプリケーションをデプロイ します
- すべてが正しく動作することを 入念にテスト します
- 新しいキーで問題ないと確認できたら 古いキーを失効 させます
API キーの利用状況を監視する
Brevo のダッシュボードで API キーの利用状況を追跡できます。
- 日別/月別のリクエスト数
- エンドポイント別のエラー率
- 地域別の利用傾向
- 利用のピーク時間帯
複数の API キーを使う戦略
規模の大きいアプリケーションでは、複数の API キーの利用を検討してください。
- 本番:実際の顧客データとメール
- ステージング:本番前のテスト
- 開発:ローカルでの開発とテスト
- 監視:ヘルスチェックとメトリクス
- サードパーティ:外部との連携
MCP トークン認証
Brevo Model Context Protocol(MCP) は、AI アシスタントが Brevo のサービスとやり取りできるようにする AI 連携フレームワークです。MCP では、MCP トークンによる独立した認証方式を使います。
MCP とは
MCP は、次の仕組みで Brevo API への標準化された AI アクセスを提供します。
- トランスポート:HTTPS
- ベース URL:
https://mcp.brevo.com/v1/ - レスポンス形式:JSON
- 認証:MCP トークン(API キーとは別物)
MCP トークンを生成する
- Brevo のダッシュボードに ログイン します
- Settings → MCP Tokens(またはアカウント設定)に移動します
- 新しい MCP トークンを生成します
- トークンを コピーして安全に保管 します
注:MCP は現在、早期アクセスのユーザーのみが利用できます。
MCP トークンを使う
MCP トークンは、AI 連携と Model Context Protocol の接続専用です。
export BREVO_MCP_TOKEN="your_mcp_token_here"MCP エンドポイントへのリクエストには、MCP トークンを含めます。
GET /v1/account HTTP/1.1Host: mcp.brevo.comAccept: application/jsonAuthorization: Bearer your_mcp_token_hereMCP トークンと API キーの比較
| 項目 | API キー | MCP トークン |
|---|---|---|
| 用途 | 標準的な REST API アクセス | AI 連携と MCP 接続 |
| ベース URL | api.brevo.com | mcp.brevo.com |
| ヘッダー | api-key | Authorization: Bearer |
| 提供範囲 | すべてのユーザー | 早期アクセスのユーザー |
MCP のセキュリティに関するベストプラクティス
- MCP トークンは API キーとは別に保管してください
- トークンの保管には環境変数を使ってください
- トークンは定期的にローテーションしてください
- トークンをバージョン管理にコミットしないでください
- ダッシュボードで MCP の利用状況を監視してください
認証のトラブルシューティング
API キーでよくある問題
API キーの形式が不正
- キーはちょうど 64 文字である必要があります
- 余分なスペースや文字が入っていないか確認してください
権限エラー
- キーに必要な権限があるか確認してください
- ダッシュボードでキーが有効になっているか確認してください
レート制限
- 認証の失敗もレート制限にカウントされます
- 正しい認証情報で再試行する前に、しばらく待ってください
地域による制限
- 一部のアカウントには IP 制限が設定されています
- IP の許可リスト登録が必要な場合は、サポートにお問い合わせください
MCP トークンでよくある問題
MCP を利用できない
- MCP 機能への早期アクセス権があるか確認してください
- アクセスを申請するには Brevo のサポートにお問い合わせください
トークンが不正
- トークンがスペースなしで正しくコピーされているか確認してください
- トークンの有効期限が切れていないか、失効していないかを確認してください
ベース URL の誤り
- MCP トークンは mcp.brevo.com でのみ機能します
- api.brevo.com のエンドポイントに MCP トークンを使わないでください