n8n 連携により、ワークフローが HTTP 経由でブラウザからクッキーを取得できます — 手動エクスポートは不要です。暗号化パスワードは拡張機能内にのみ保存され、サーバーには送信されません。
アーキテクチャ
n8n ──HTTP GET──► Cookie Editor Server ──WebSocket──► Extension ──► chrome.cookies
│ │
└──── encrypted data ◄───────────────┘
n8n decrypts with the password you configured
ステップ 1:n8n タブを開く
- Cookie Editor のサイドパネルを開きます。
- 右サイドバーの n8n アイコンをクリックします。
- 拡張機能が専用の
n8n.htmlタブを開きます。

ステップ 2:拡張機能をサーバーに接続する
- Connect をクリックします。
- プロンプトが表示されたら
storageとalarmsの権限を付与します。 - Connect モーダルで暗号化パスワードを入力します。
- このパスワードはサーバーに送信されません。
- 拡張機能にローカル保存されます — n8n で復号する際も同じ値を使用してください。
- 拡張機能が
wss://cookieeditor.org/ws/n8n(開発環境:ws://localhost:3000/ws/n8n)へ WebSocket を開きます。 - サーバーが
ck_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxのようなclient_keyを返します。

ステップ 3:client_key をコピーする
接続成功後、画面に表示される client_key をコピーします。n8n からのすべての API リクエストで使用します。
拡張機能の Usage / View usage タブには、すぐ使える fetch、curl、n8n Function の例が含まれています。
ステップ 4:n8n から API を呼び出す
HTTP Request ノード
Method: GET
URL: https://cookieeditor.org/api/n8n/cookies
Query:
client_key: {{ $env.COOKIE_EDITOR_CLIENT_KEY }}
url: https://example.com
curl
curl "https://cookieeditor.org/api/n8n/cookies?client_key=ck_YOUR_KEY&url=https://example.com"
fetch (JavaScript)
const res = await fetch(
"https://cookieeditor.org/api/n8n/cookies?client_key=ck_YOUR_KEY&url=https://example.com"
);
const json = await res.json();
// json.data = AES-encrypted cookie string
成功レスポンス
{
"success": true,
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"client_key": "ck_...",
"url": "https://example.com",
"domain": "example.com",
"data": "U2FsdGVkX1+..."
}
ステップ 5:n8n で復号する
HTTP Request の後に Function ノードを追加します:
const CryptoJS = require('crypto-js');
const encrypted = $input.first().json.data;
const password = $env.COOKIE_EDITOR_PASSWORD; // same password as Connect
const decryptedBase64 = CryptoJS.AES.decrypt(encrypted, password)
.toString(CryptoJS.enc.Utf8);
if (!decryptedBase64) {
throw new Error('Decryption failed — wrong password?');
}
const cookies = JSON.parse(atob(decryptedBase64));
return cookies.map((cookie) => ({ json: cookie }));
必要に応じて n8n に
crypto-jsパッケージをインストールしてください。パスワードは拡張機能接続時に入力した値と一致している必要があります。
n8n が API を呼び出したときの流れ
- n8n が
GET /api/n8n/cookies?client_key&urlを送信 - サーバーが
client_keyで WebSocket セッションを検索 - サーバーが
{ type: "get_cookies", request_id, url }を拡張機能に送信 - 拡張機能:
chrome.cookies.getAll({ url })→ AES 暗号化 →cookies_resultを送信 - サーバーが暗号化された
dataを n8n に返す - n8n がパスワードで復号
リクエスト履歴
拡張機能は n8n タブに直近 50 件のリクエストを保存します(ローカルのみ):
- ドメイン、URL、時刻、ステータス、クッキー数、エラーメッセージ
- Clear history ボタンで履歴をクリア

切断
n8n タブで Disconnect をクリック:
- 拡張機能が
{ type: "disconnect" }を送信し WebSocket を閉じる - サーバーがセッションを削除 — 古い
client_keyは使えなくなる - 切断設定によりローカルパスワードがクリアされる場合あり
よくあるエラー
| API エラー | 原因 |
|---|---|
client_not_found |
拡張機能が未接続、または既に切断済み |
extension_timeout |
拡張機能が 30 秒以内に応答しなかった |
extension_error |
その URL にクッキーがない、またはローカルパスワードがない |
| Decryption failed | n8n のパスワードが Connect 時のパスワードと異なる |
安定動作のための要件
- Chrome が起動しており、拡張機能が接続されていること
- n8n タブまたはバックグラウンド service worker が WebSocket を維持すること
- リクエストの URL にブラウザ内にクッキーがあること(そのサイトにアクセス済みであること)