# Workbench の仕組み

ワークベンチを使用して Stripe システムのデバッグ、管理、拡張を行います。

> ワークベンチは、既存の[開発者ダッシュボード](https://docs.stripe.com/development/dashboard.md)の代わりとなり、デフォルトですべての新しい Stripe アカウントで自動的に有効になります。この設定は、ダッシュボードの[開発者](https://dashboard.stripe.com/settings/developers)設定から行います。

開発者の一般的な問題を解決するためのワークベンチの使用については、[関連するガイドのセット](https://docs.stripe.com/workbench/guides.md)をご覧ください。

ワークベンチは、ダッシュボードのどこからでも、ブラウザーで Stripe の実装をデバッグ、管理、拡張するのに役立ついくつかの開発者ツールを提供します。たとえば、ワークベンチを使用して以下を実行できます。

- 最近のシステムエラーの概要を確認します。
- API オブジェクト、リクエストログ、イベント、Webhook 配信を調べます。
- イベントの送信先設定を作成して管理します。
- 事前構築済みのコマンドライン環境を使用して API リクエストを実行するか、API Explorer を使用して構築します。

**アイデアを共有する:** ツールの上部にある**フィードバックを送る**をクリックして、機能リクエスト、バグレポート、フィードバックを共有してワークベンチを改善します。

## 始める

ワークベンチを使用するには、[Stripe アカウントが必要](https://dashboard.stripe.com/register)です。

**管理者**または**開発者**の役割を持つユーザーのみが、すべてのワークベンチツールへのフルアクセス権を持ちます。

1. [ダッシュボード](https://dashboard.stripe.com)にサインインします。**開発者**メニューで[ワークベンチ](https://dashboard.stripe.com/workbench)をクリックします。

1. Workbench ペイン上部のハンドルをドラッグしてサイズを再指定したり、最大化アイコン (↔ 最大化) をクリックして、全画面モードを終了したり開始できます。

1. 最小化アイコン ( 最小化) をクリックして、Workbench をページ下部のタスクバーに縮小したり、展開アイコン (:chevronUp: 展開) をクリックしてペインを再度開きます。タスクバーでは API オブジェクトを素早く調べることができ、また重大な API エラーとイベントアクティビティーについて警告する通知トレイが含まれています。

1. Workbench のタスクバーを非表示にするには、縮小アイコン (❌ Workbench を縮小) をクリックし、ダッシュボードの右側のアイコンにタスクバーを最小化します。アイコンにカーソルを合わせると、通知トレイが表示されます。アイコンをクリックすると、再び全画面の Workbench ペインが開きます。



ワークベンチの各タブには複数のツールが含まれています。各タブの機能と使用方法について、以下で詳細をご覧ください。

> ダッシュボードのどこからでも、キーボードのチルダキー (**\~**) を押してワークベンチを開いたり最小化できます。

### ワークベンチツールを使用する

ワークベンチを使用する際は、次のツールを覚えておいてください。

- **リンクをコピー**をクリックして、現在のワークベンチビューの共有可能な URL を生成します。
- **フィードバックを送信**をクリックして、コア開発チームとアイデアや質問を共有します。

## 構築した Stripe システムの概要

[概要](https://dashboard.stripe.com/workbench/overview)タブで、アカウントの API アクティビティーの概要を確認します。

- **API キー**ウィジェットには、アカウントの標準および制限付きのキーのリストが表示されます。**管理**をクリックして、API キーを作成または更新します。

- **API バージョン**ウィジェットには、お客様のアカウントへの最近の API リクエストで指定された API バージョンの内訳が表示されます。**アップグレードが可能**をクリックして、Stripe アカウントの[デフォルト API バージョンをアップグレードします](https://docs.stripe.com/upgrades.md#how-can-i-upgrade-my-api)。

- **API リクエスト**と **Webhook** のグラフは、アカウントの最近の API アクティビティを視覚化したものです。ドロップダウンから期間を選択して、その期間のグラフに更新します。

- **最近のエラー**には、Stripe アカウントでの最近のエラーの概要が示されます。
![](https://b.stripecdn.com/docs-statics-srv/assets/workbench-overview.82e64e4151ee0da510e97050956b1a96.png)

概要タブには、アカウントの API アクティビティーのスナップショットが表示されます

## 最近のエラーを表示する

[エラー](https://dashboard.stripe.com/workbench/errors)タブには、Stripe アカウントに対する最近のエラーがまとめられています。各タイプの API エラーの解消方法を参照し、各エラーへの最近の API リクエストログを確認できます。ドロップダウンから期間を選択して、その期間中のエラーを確認できます。
![](https://b.stripecdn.com/docs-statics-srv/assets/workbench-errors.f9bc5a18ecacc6f161ebc9cd2a8d9f0a.png)

エラータブには、最近の API エラーがまとめられ、関連するリクエストログが示されます

左側のペインには、エラータイプと個々のエラー数 (タイプ別) が表示されます。エラーグループを選択すると、エラーの詳細とシステムへの影響の詳細を確認できます。

- **発生数**の数は、指定された期間中にこのエラーが発生した頻度を示しています。

- **パス**には、このエラーの原因となったリクエストで使用された API エンドポイントが示されます。

- **ソース**には、このエラーの原因となったリクエストで使用されたユーザーエージェントが示されます。

- **ログ**セクションには、指定した API エラーのリクエストログがまとめられています。いずれかをクリックすると、**リクエスト**タブに詳細が表示され、関連するリクエストログの詳細なビューが表示されます。[Organizations](https://docs.stripe.com/get-started/account/orgs.md) のログを表示している場合、このセクションでは、各エラーが適用される組織内のアカウントを特定します。

## Inspector を使用して API オブジェクトについて把握する

[検査機能](https://dashboard.stripe.com/workbench/inspector)を使用して、Stripe アカウントに含まれる API オブジェクトの JSON ビューの詳細を確認します。オブジェクトを調査するには、次の手順を実行します。

- **検査機能**タブで、オブジェクト ID を入力します。
- 任意のオブジェクト (たとえば、`Payment`、`Customer`、`Subscription`) のダッシュボードに移動して、**検査機能**アイコン (:explorer: Inspect object') をクリックするか、ワークベンチの**検査機能**タブを開きます。
![](https://b.stripecdn.com/docs-statics-srv/assets/workbench-inspector.132a139ddb20906e606a39d4eaf51af5.png)

検査機能では、API オブジェクトの JSON ビューと、関連する API オブジェクト、リクエストログ、イベントが表示されます

API オブジェクトを検査する際、検査機能によって詳細が表示されます。

- 左側のペインには、関連する API オブジェクトの階層を示す**データマップ**が表示されます。
- **概要**タブには、オブジェクトの JSON ビューが表示されます。
- **ログ**タブには、オブジェクトに関連するリクエストログが表示されます。
- **イベント**タブでは、最近生成されたオブジェクト関連のイベントがまとめられています。

[サンドボックス](https://docs.stripe.com/sandboxes.md)では、**API Explorer で編集**ボタンをクリックすると、**Shell** タブの API Explorer に API オブジェクトが事前入力されます。そこから API プロパティを更新してオブジェクトを変更できます。**自動検査**トグルがオンになっている場合、検査機能が自動的に更新され、ダッシュボードには現在表示できるオブジェクトが表示されます。

## API リクエストログを表示する

[ログ](https://dashboard.stripe.com/workbench/logs)タブには、Stripe アカウントでの最近の API リクエストとレスポンスが含まれています。ワークベンチには、最近のエラーとその解決方法に関する推奨事項がまとめられています。以下で API リクエストを絞り込むことができます。

- リクエスト日
- HTTP ステータス (例: `200`)
- HTTP メソッド (例: `POST` または `DELETE`)
- API エンドポイント (例: `/v1/checkout/sessions`)
- リクエストを作成した IP アドレス
- ソース (ダイレクト API リクエストまたはダッシュボード)
- リクエストが適用されたアカウント。Connect プラットフォームの連結アカウントや組織内のアカウントである可能性があります。
- API バージョン (例: `2020-08-27`)
- エラーコード (例: `resource_missing`)
- エラータイプ (例: `invalid_request_error`)
- エラーパラメーター (例: `line_items[*][price]`)

ワークベンチは、アカウントが新しい API リクエストを受信したときに、リアルタイムではこのタブを自動更新しません。**ログを更新する**をクリックして、Stripe アカウントから最新のリクエストログを取得します。
![](https://b.stripecdn.com/docs-statics-srv/assets/workbench-logs.eca1ad610d58aa7493eff9d064a659d9.png)

ログツールは、API アクティビティーのタイムラインを、タイムエンドポイント、レスポンスコード、その他のプロパティによる絞り込み機能付きで表示します

## アカウント稼働状況のお知らせとインサイトを表示

Workbench の[健全性](https://docs.stripe.com/workbench/health.md)タブには、Stripe の支払い処理に影響する重大アラートと重要でないアラートの統合ビューが表示されます。30 日間の履歴と実用的なインサイトを確認できるほか、API 連携の健全性を積極的に改善できます。

## Stripe アカウントの最近のイベントを確認する

[イベント](https://dashboard.stripe.com/workbench/events)タブには、Stripe アカウントでの最近のイベントのリストが含まれています。**イベントを更新する**をクリックして、Stripe アカウントから最新のイベントを取得します。以下の項目でイベントを絞り込むことができます。

- イベント日
- 送信ステータス (送信済みまたは失敗)
- イベントタイプ (例: `customer.subscription.created`) によっては、ワイルドカード (例: `customer.*`) を使用することもできます。
- API リソース (例: `cus_123`)
![](https://b.stripecdn.com/docs-statics-srv/assets/workbench-events.45cfc616e1e6b03ac93673581b47b8ba.png)

イベントタブには、Stripe アカウントの最近のアクティビティが表示されます。Stripe はイベントをイベントの送信先に配信できます。

左側のリストからイベントをクリックして、右側でイベントの詳細、ペイロード、試行された送信を確認します。

- **成功**または**失敗**タブを選択して、配信の試行を特定のイベントで絞り込みます。
- オーバーフローメニュー (⋯) で、**Webhook エンドポイントを表示**をクリックして、このイベントの送信先を確認します。
- 配信の試行で **再送** をクリックして、そのイベントをイベントの送信先に再送します。

ワークベンチで [イベントの送信先を管理](https://docs.stripe.com/workbench/event-destinations.md) する方法をご覧ください。

## イベントの送信先を管理する

[Webhook](https://dashboard.stripe.com/workbench/webhooks) タブで、Stripe がイベントを送信する新しい[イベント送信先](https://docs.stripe.com/event-destinations.md) を作成できます。

- Webhook を使用する URL エンドポイント
- Amazon EventBridge や Azure Event Grid などのクラウドの送信先
- [Stripe CLI](https://docs.stripe.com/stripe-cli.md) を使用するローカルマシン

### 新しい送信先を作成する

1. **送信先を追加** をクリックして、Stripe がイベントを送信する新しい Webhook エンドポイントまたはクラウド送信先を設定します。
1. 送信先がお客様のアカウントまたはプラットフォーム内の連結アカウントのイベントを受信するかどうかを選択します。
1. Stripe がイベントの生成に使用する API バージョンを選択します。
1. リッスンするイベントタイプを選択します。
1. **続行**をクリックします。
1. 送信先のタイプを選択し、**続行** をクリックします。
1. 必要な送信先メタデータ (サーバーが Webhook エンドポイントをホストする HTTPS URL など) を指定します。
1. **送信先を作成する**をクリックします。

ワークベンチの左側には、設定済みのイベント送信先が一覧表示されます。**概要** には、その設定済みのエンドポイントでのアクティビティがまとめられ、**イベント配信** には Stripe からそのエンドポイントへのイベント送信の試行の一覧が表示されます。送信の試行の横にある **今すぐ再試行** をクリックすると、Stripe はそのエンドポイントにイベントを再送信できます。
![](https://b.stripecdn.com/docs-statics-srv/assets/main.a385ccd665e5fbafa035600ecee9021a.png)

新しい Webhook エンドポイントを設定するか、イベントをローカル開発マシンに振り分けます

## シェルと Explorer を使用して API コマンドを実行する

[Shell](https://dashboard.stripe.com/workbench/shell) はワークベンチ内で Stripe のリソースを管理するための、[Stripe CLI](https://docs.stripe.com/stripe-cli.md) に似たコマンドラインインターフェイスを提供します。利用可能なコマンドの一覧については、[Shell と API Explorer](https://docs.stripe.com/workbench/shell.md) をご覧ください。

> Shell は本番環境では読み取り専用です。[サンドボックス](https://docs.stripe.com/sandboxes.md)に切り替えて、API オブジェクトを作成、変更、削除する API リクエストを実行します。

ワークベンチの使用時に、いつでも最小化された Shell をペインで利用できますが、**Shell** タブを使用して全画面のセッションを起動することもできます。**Shell** タブで**新しいペイン**をクリックして、複数のシェルセッションにペインを分割します。

**API Explorer** をクリックすると、インタラクティブなコマンドビルダーが右側に表示されます。API リソースと HTTP メソッドを選択して、そのリクエストの必須とオプションのパラメーターを表示します。**ヘッダー**タブでは、連結アカウントへの API リクエストを実行できるようにする [Stripe-Account ヘッダー](https://docs.stripe.com/connect/authentication.md#stripe-account-header)など、いくつかの HTTP ヘッダーを設定できます。**実行**をクリックして、API リクエストを実行します。

API Explorer にパラメーターを入力すると、対応する Shell コマンドが自動的に構築されます。プログラミング言語を選択して、**SDK リクエストを出力する**をクリックし、API リクエストに対応する SDK コードを確認します。
![](https://b.stripecdn.com/docs-statics-srv/assets/workbench-shell.bda499755fff63eadcbcc0c90c7a70f1.png)

Shell と API Explorer は、Workbench から Stripe の API を試行するのに役立ちます

## キーボードショートカット

ダッシュボードのどこからでも、キーボードショートカット **\~** を使用して [ワークベンチ](https://docs.stripe.com/workbench.md) を開くまたは最小化できます。

## Shell のキーボードショートカット

[Shell](https://docs.stripe.com/workbench/shell.md) は、[Bash](https://en.wikipedia.org/wiki/Bash_(Unix_shell) などの他のコマンドライン環境と同様の一連のキーボードショートカットを使用します。

| 操作                                                 | キーボードショートカット                                                                                     |
| -------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
| `stripe` と入力してからスペースバーキーを押すと、コマンドライン補完機能で候補が表示されます | - **Tab**: 次の候補を見る
  - **Shift** + **Tab** キー: 前の候補を見る                                           |
| コマンドプロンプトの履歴をナビゲートして最近使用したコマンドを選択する                | - **上矢印** キーと**下矢印** キー: 最近使用したコマンドを順に表示する
  - **Enter** キー: 選択したコマンドを実行する                       |
| カーソル位置を 1 文字分移動する                                  | - **左矢印**キー、または **Control** + **B** キー: 左に移動する
  - **右矢印** キー、または **Control** + **F** キー: 右に移動する |
| カーソル位置をコマンドプロンプトの先頭に移動する                           | - **Control** + **左矢印** キー (Windows または Linux)
  - **Command** + **左矢印** キー (macOS)              |
| カーソル位置をコマンドプロンプトの末尾に移動する                           | - **Control** + **右矢印**キー (Windows または Linux)
  - **Command** + **右矢印**キー (macOS)                |
| コマンドプロンプトで一度に 1 語を削除する                             | **Control** + **W**                                                                              |
| カーソルの後ろの (最初の) 1 文字を削除する                           | **Control** + **D**                                                                              |
| カーソルの前にある 1 文字を削除する                                | **Backspace**                                                                                    |
| カーソルからコマンドプロンプトの末尾までのすべての文字を削除する                   | **Control** + **K**                                                                              |
| コマンドプロンプトをクリアする                                    | **Control** + **U**                                                                              |
| 新しい端末ペインを開く (または **New pane (新しいペイン)** をクリック)      | - **Alt** + **Shift** + **D** (Windows または Linux)
  - **Command** + **D** (macOS)                |
| 端末ペインをクリアする (または「clear」と入力)                        | - **Control** + **L** (Windows または Linux)
  - **Command** + **K** (macOS)                        |

## See also

- [ユースケース](https://docs.stripe.com/workbench/guides.md)
- [イベントの送信先を管理する](https://docs.stripe.com/workbench/event-destinations.md)
- [Shell と API Explorer](https://docs.stripe.com/workbench/shell.md)
