コンテンツにスキップ

検索はプロダクションビルドでのみ利用可能です。 ローカルでテストするには、サイトをビルドしてプレビューしてください。

Gateways (API ゲートウェイ)

gateways/ ディレクトリには、外部からの HTTP リクエストを受け付ける API ゲートウェイが含まれます。ゲートウェイは自身ではビジネスロジックを持たず、リクエストの認証・バリデーションを行った後、Native RPC でバックエンドサービスに処理を委譲します。


better-auth の HTTP エンドポイントを公開する認証専用ゲートウェイです。ブラウザからの認証リクエスト(ログイン・サインアップ・OAuth コールバック等)を受け付け、Proof サービスに委譲します。

項目内容
パスgateways/door
技術better-auth 1.4.18
ドメイン(本番)door.plfumg.com
ドメイン(開発)door.plfumg.net
compatibility_date2025-11-03
バインディングサービス用途
PROOFProof認証処理の委譲
方式説明
メール/パスワード標準的なメール・パスワード認証
Google OAuthGoogle アカウントによるソーシャルログイン
Passkey (WebAuthn)パスキーによるパスワードレス認証
Anonymous匿名認証(顧客向け)
Bearer TokenAPI キーによるトークン認証
plugins: [
admin(), // 管理者機能
organization({
// 組織管理
ac, // アクセス制御定義
roles: {
owner, // オーナー
admin, // 管理者
member, // メンバー
staff // スタッフ
}
}),
passkey({
rpID: rootDomain // Relying Party ID(ドメイン)
}),
bearer(), // Bearer トークン
anonymous() // 匿名認証
];

Door は クロスサブドメイン Cookie を発行します。これにより、door.plfumg.com で認証した後、counter.plfumg.compenthouse.plfumg.com でもセッションが有効になります。

環境Cookie ドメイン
本番.plfumg.com
開発.plfumg.net
ローカルlocalhost

外部サービス(purelovers 等)からの Webhook や API リクエストを受け付ける公開 API ゲートウェイです。

項目内容
パスgateways/tap
技術Hono 4.11.7
ドメイン(本番)tap.plfumg.com
ドメイン(開発)tap.plfumg.net
compatibility_date2025-01-06
バインディングサービス用途
PROOFProofAPI リクエストの認証
FIZZFizzチャットメッセージ送信
BASEBase組織・店舗情報取得
VINTAGEVintage連絡先データ操作
種別バインディング名用途
HyperdriveCELLAR_HYPERDRIVE業務 DB への直接アクセス
Analytics EngineANALYTICSDB オペレーション追跡(speakeasy_db_operations)
機能説明
Webhook 受信purelovers からの Webhook イベント処理
メッセージ送信 API外部サービスからのチャットメッセージ送信
連絡先 API外部サービスからの連絡先データ操作
認証代行Bearer トークン / API キーによる認証

外部 API リクエストは Bearer トークン または API キー で認証されます。

Authorization: Bearer <api-key>

Tap は受け取ったトークンを Proof サービスに送信してバリデーションを行います。

Tap の Public API の詳細なリファレンスドキュメントは Scalar API Reference として提供されています。


ゲートウェイのアーキテクチャ

Section titled “ゲートウェイのアーキテクチャ”
項目GatewayApp
通信方式HTTP(外部からのリクエスト)Remote Functions(ブラウザ↔サーバー)
認証Bearer / Cookie / OAuthCookie(Door 発行のセッション)
対象外部サービス・認証フローエンドユーザー(ブラウザ)
サービスへの接続Native RPCNative RPC

Apps(Counter, Penthouse)は SvelteKit の Remote Functions を通じてサーバーサイドから直接 Service Binding を使用するため、ゲートウェイを経由しません(認証フロー除く)。