6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Ateam Group U-30Advent Calendar 2022

Day 13

(プレリリース)Spring '23 個人的注目の新機能!Flow Builder の Create HTTP Callout (Beta)試してみる

Last updated at Posted at 2022-12-24

はじめに

Spring ’23のリリースノートが公開されましたね!その中でもWebAPIを実行するアクションが追加されたようなので試してみようと思います。
今まででも、Apexでアクションを作ったりOpenAPIを利用した外部サービスを使ったりすればできたことではありますが
より簡易的に使えるようになることで、多くの人がFlow Builderの中でAPIで取得したデータを活用することができるようになります。

2022年12月現在Spring '23は、プレリリース組織での提供となってます。

外部サービスについては軽くですが過去に記事を書いています

プレリリース組織へのサインアップ

sandboxのプレビュー組織がまだ公開されていないので
プレリリース組織を利用します。

こちらからサインアップ

登録完了後、メール度届きますのでリンクをクリックしてログインできればOKです。

ホーム _ Salesforce.png

APIの準備

今回は、Qiita APIを使わせていただきます。

アクセストークンの準備

設定からアクセストークンを発行します。

アクセストークンの説明を入力し
スコープはread_qiitaにチェックを入れて発行します。

Qiita.png

APIのテスト

$ACCESS_TOKENは取得したトークン
$USER_NAMEは自分のuser_idに変更してください

投稿した記事一覧が取得できればOK

$ curl -H 'Authorization: Bearer $ACCESS_TOKEN' \
'https://qiita.com/api/v2/users/$USER_NAME/items'

Salesforce 指定ログイン情報の追加

今回の新機能では、APIを実行する際に指定ログイン情報を使います。

外部ログイン情報

設定>指定ログイン情報にアクセス

外部ログイン情報の新規作成をします。

指定ログイン情報 _ Salesforce (4).png

項目
表示ラベル Qiita API トークン
名前 Qiita_API_Token
認証プロトコル カスタム

作成した外部ログイン情報権限セットの対応付けを新規登録します。

設定>権限セット外部ログイン情報にアクセスできる権限セットを作成します。
ExternalActionQiitaという名前で作成しました。

権限セット _ Salesforce.png

作成後自分に割り当てをし、

作成した権限セットを外部ログイン情報権限セットの対応付けに登録します。

スクリーンショット 2022-12-24 18.44.01.png

作成した外部ログイン情報カスタムヘッダーを新規登録します。

指定ログイン情報 _ Salesforce (7).png

項目
名前 Authorization
Bearer $ACCESS_TOKEN(取得したアクセストークン)

指定ログイン情報

外部ログイン情報を作成後 指定ログイン情報を新規作成します。

指定ログイン情報 _ Salesforce (5).png

項目
表示ラベル Qiita API v2
名前 Qiita_API_v2
URL https://qiita.com/api/v2
外部ログイン情報 Qiita API トークン(外部ログイン情報で登録したもの)
コールアウトオプション 認証ヘッダーを生成にチェック

これで前準備はOKです。

フローの作成

1. Create HTTP Callout (Beta)を追加

フローのアクションから Create HTTP Callout (Beta)を選択

Flow Builder.png

Flow Builder (1).png

項目
Name getQiitaItems
Name Credential Qiita API v2 (指定ログイン情報で作成したもの)

2. APIの設定

Flow Builder (2).png

項目
Label getQiitaItems
Method GET(BetaではGETのみ)
URL Path /users/$USER_NAME/items($USER_NAMEを自分のuser idに変えてください)

Provide Sample Responseを設定します。

Flow Builder (3).png

利用するAPIのサンプルレスポンスを貼り付けます

Flow Builder (5).png

アクションを作成完了です。

Flow Builder (6).png

実行

デバッグ

デバッグ実行すると記事が取得できました!

getQiitaItems - V1.png

APIの結果を変数に割り当ててみる

Create HTTP Callout (Beta)で作成したアクションは外部サービスとして登録されています。
スクリーンショット 2022-12-24 19.11.30.png

変数のデータ型Apex 定義で作成した外部サービスの型を利用できるのでApexクラスで選択。

スクリーンショット 2022-12-24 19.34.12.png

このように割り当てが可能です。
今回は、複数件記事を取っているので1件に絞るには、APIのリクエストパラメータを追加するか
フローのコレクションを1件に絞るとかすればいいと思います。

スクリーンショット 2022-12-24 19.37.19.png

最後に

Spring '23 のCreate HTTP Callout (Beta)の機能はどうだったでしょうか?
元々自分は外部サービスを触っていたのですが、いままでだとOpenAPIの定義が必要だったり少し手間なことがありましたが、今回の新機能だとサンプルのレスポンスから作成できるので
以前より登録がかなり楽になりました!Spring '23楽しみですね!
では、また別の機能をご紹介しようと思います。

ほぼ、Salesforceネタを書いている1人アドベントカレンダーもやっておりますので
興味がある方は是非見ていただけると幸いです。

参考

6
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?