revokeフローを構築する
revokeフローは、作成者がOAuth 2.0(またはその他のトークンベースの認証)トークンの削除に利用できるシステムフローです。
コネクターのrevoke方式は、接続がプラットフォームから削除された場合、またはユーザーがデータの削除を要求した場合に呼び出されます。データの削除は、たとえば、一般データ保護規制の順守のために必要になります。
revokeフローは、エンドユーザーには表示されず、プラットフォームでのみ使用されます。revokeフローには、オプションフィールドと入力フィールドはありません。
すべてのOAuthサービスにrevokeエンドポイントがあるわけではありません。
[Test Connections(接続のテスト)]ページでトークンの取り消しをテストするには、まず、アクティブなrevokeフローが含まれるorgにローカルコネクターをデプロイする必要があります。revokeフローにrevokeという名前を付ける必要はありません。
このタスクを開始する
- 
                                                            [Flows(フロー)]タブで、ページ右上端の[+ New Flow(新規フロー)]をクリックして新規フローを作成します。 
- 
                                                            ページの左端にある[Revoke(取り消し)]をクリックします。 
- 
                                                            ツールバーの[Save(保存)]ボタンをクリックし、フローに名前を付けます。 
- 
                                                            フローの説明フィールドに「Revoke an access token from the {your service} service({サービス名}サービスでアクセストークンを取り消す)」と入力します。[Save all data that passes through the Flow(フローを通過するすべてのデータを保存)]オプションを選択して[Save(保存)]をクリックします。 
- 
                                                            エラー処理のIf Errorカードをフローの最初のカードとして追加します。 
- 
                                                            カードの[Try(試行)]セクションにフロー制御のCall Flowカードを追加します。 
- 
                                                            [Choose Flow(フローの選択)]ボタンをクリックし、事前に作成したhttpHelperフローを選択します。カードには、httpHelperフローに定義されている入力が自動的に取り込まれます。 
- 
                                                            revokeエンドポイントの相対URLを入力します。 
- 
                                                            リクエストメソッドを入力します。ほとんどの場合はPOSTが使用されます。 
- 
                                                            コネクターのauthpingカードのauthオブジェクトをCall FlowカードのConnection入力フィールドにドラッグします。 
- 
                                                            呼び出しに必要な追加情報を、クエリ、ヘッダー、本文のフィールドに入力します。必要なオブジェクトを構築するために、Call Flowカードの前にオブジェクトのConstructカードの追加が必要になる場合があります。 
- 
                                                            ヘルパーフローカードの出力には、httpHelperフローの出力と同じキーを定義します。 - 
                                                                    status_code(Number) 
- 
                                                                    headers(オブジェクト) body(Object) 
 
- 
                                                                    
- 
                                                            If Error関数内のCall Flowカードの右にフロー制御のAssignカードを追加します。[Click or drop here to create(クリックまたはドラッグして作成)]をクリックし、フィールドにmessageという名前を付けます。 
- 
                                                            新規フィールドに成功メッセージを手動で追加します。たとえば、「The access token was successfully revoked.(アクセストークンは問題なく取り消されました)」のように指定します。 
- 
                                                            Error Ifカードの右上にある[View Outputs(出力の表示)]リンクをクリックし、カードの出力セクションを展開します。 
- 
                                                            出力セクションで[Click or drag to create(クリックまたはドラッグして作成)]をクリックし、「status_code」と入力します。「Drag output here(出力をこちらにドラッグ)」という入力が2つ表示されます。 
- 
                                                            Call Flowカードのstatus_code出力フィールドをstatus_codeフィールドの下の2つの入力にドラッグします。 
- 
                                                            出力セクションで[Click or drag to create(クリックまたはドラッグして作成)]をクリックし、「message」と入力します。 
- 
                                                            Assignカードのmessage(メッセージ)出力フィールドをmessage(メッセージ)フィールドの下の2つの入力にドラッグします。 
- 
                                                            If Errorカードの上部のドロップダウンメニューを選択し、[If Error(エラーの場合)]を選択します。ここでは、サービス固有のエラー処理を管理できます。 
- 
                                                            サービスによっては、サービスから返されるオブジェクトからステータスコードとエラーメッセージを抽出するために、If Errorカードの左パネルにあるError(エラー)オブジェクトにキーの追加が必要になる場合があります。キーを追加するには、[Enter key name(キー名の入力)]をクリックします。 
- 
                                                            新しいキーをIf Errorカードの対応出力にドラッグします。 
- 
                                                            If Error関数カードの右に分岐のAssign Ifカードを追加します。 
- 
                                                            If Errorカードの出力にあるstatus_codeフィールドをAssign Ifカードのvalue aフィールドにドラッグします。比較がequal toに設定されていることを確認します。 
- 
                                                            value b(値b)フィールドには、リクエストに成功した場合のステータスコードを入力します。通常、この値は200です。 
- 
                                                            value if trueフィールドのデータタイプをTrue/Falseに変更し、値をTrueに設定します。 
- 
                                                            value if falseフィールドのデータタイプをTrue/Falseに変更し、値をFalseに設定します。 
- 
                                                            出力フィールドのデータタイプをTrue/Falseに変更し、フィールド名をrevokedに変更します。 
- 
                                                            Assign IfカードのrevokedフィールドをReturnカードのrevoked入力フィールドにドラッグします。 
- 
                                                            フローの最後にConstructカードを追加します。 
- 
                                                            [Click or drop here to create(クリックまたはドラッグして作成)]をクリックし、unregisterURLというラベルを追加します。 
- 
                                                            サービスへのアクセスを手動で削除する際にユーザーがアクセスするURLを入力します(例:https://www.spotify.com/us/account/apps/)。 
- 
                                                            [Click or drop here to create(クリックまたはドラッグして作成)]をクリックし、textというラベルを追加します。これは、何らかの理由でトークンの取り消しが失敗した場合にエンドユーザーに表示されるテキストです。このフィールドにメッセージを入力します。たとえば、「Unable to completely revoke access to Spotify. Visit your account page to manually remove access.」のように指定します。 
- 
                                                            このConstructカードの出力名をmessageに変更し、それをReturnカードのmessage入力フィールドにドラッグします。 
- 
                                                            Constructカードを追加します。 
- 
                                                            [Click or drop here to create(クリックまたはドラッグして作成)]をクリックし、statusCodeというラベルを追加します。 
- 
                                                            If Errorカードの出力にあるstatus_codeフィールドをConstructカードの新しいstatusCodeフィールドにドラッグします。 
- 
                                                            Constructカードに別の入力フィールドを追加し、bodyという名前を付けます。 
- 
                                                            If Errorカード出力のmessage出力フィールドをConstructカードのbodyフィールドにドラッグします。 
- 
                                                            オブジェクトのConstructカードの出力フィールドにserviceResponseという名前を付けます。 
- 
                                                            ConstructカードのserviceResponse出力フィールドを、ReturnカードのserviceResponseフィールドにドラッグします。 
- 
                                                            [Save(保存)]と[Run(実行)]をクリックします。 

