- 印刷する
::: (info) () アプリをダウンロードするには、こちらをご覧ください:ライブラリ:::
はじめに
セールスフォースは、クラウドベースのCRMソフトウェアプラットフォームであり、セールスリードのトラッキングから受注・在庫管理まで様々なアプリケーションで使用されています。
目的
このドキュメントでは、TulipライブラリにあるSalesforce REST APIコネクタの詳細を説明します。一度設定すると、これらのコネクタ関数を使用して、TulipアプリからSalesforceデータを取得、照会、および変更できます。
APIドキュメント
Salesforce REST APIのドキュメントはこちらをご覧ください。この記事に含まれる一部の Connector Functions は、SOQL(Salesforce Object Query Language)を使用してクエリを実行することに注意してください。
:::(Info) (API のバリエーション) 注意: Salesforce は、さまざまな方法で多数の API をサポートしています。
この記事と関連するコネクタは、Salesforce REST APIを使用するように構築されています。
:::
初回セットアップ
:::(Warning) (権限に関する警告) 警告: 次の値を生成するには、Salesforce の開発者レベルまたは管理者レベルの権限が必要です。 Salesforce API 認証は、OAuth 2.0 標準に準拠しています。 次のプロセスでは、リフレッシュトークンを生成する方法を説明します。リフレッシュトークンは、Salesforce への接続を成功させるために必要なアクセストークンを取得するために、任意の Tulip App で使用されます。
- SalesforceでConnected Appを作成します。Salesforceの「Setup」に移動します。次に、PLATFORM TOOLS >> Apps >> Connected Apps >> Manage Connected Appsに移動します。
- 新しい接続アプリを作成します。以下を含めます:
b.OAuth設定を有効にするを選択し、コールバックURLをhttps://login.salesforce.com/services/oauth2/success
。 - 完了したら、"Manage Consumer Details"をクリックし、"Consumer Key "と "Consumer Secret "を確認します。これらは後で使用します。
- Tulipでコネクタ機能**[設定]認証コードURLを取得を**開きます。クエリパラメータ
client_idとして
、上記のステップ3で生成された「Consumer Key」をコピーして貼り付けます。 - Connector Functionを「実行」する。
- コネクタの「出力」としてURLが生成されていることを確認します。この URL をブラウザ ウィンドウに貼り付けます。
- 表示される認証プロンプトを完了し、Tulipがお客様のSalesforceインスタンスとやり取りできるようにします。
- 成功すると、ブラウザは
リモートアクセスアプリケーションの認証という
新しいページにリダイレクトされます。認証コードは、このページのURLに記載されています。
たとえば、URLhttps://login.salesforce.com/services/oauth2/success?code=asdf1234
、認証コードはasdf1234
です。 - この認証コードを保存します。コードが2つの等号で終わっていなければならないことに注意してください:
==
. コードが%3D%3Dで終わって
いる場合は、これらの文字を削除し、==
. - Setup] Get Refresh TokenTulip Connector Functionに移動します。クエリ・パラメータ]に、上記で収集したすべての情報を貼り付けます:
grant_type=
authorization_code
redirect_uri=
https://login.salesforce.com/services/oauth2/success
client_id=
上記ステップ3のコンシューマ・キーclient_secret=
上記ステップ3のコンシューマー・シークレットcode=
上記ステップ9の認証コード
- この Connector を実行し、レスポンスに表示される
refresh_token
を保存します。 - 最後に、[Auth] Get Access TokenConnector Function に移動する。以下のクエリパラメータを入力します:
grant_type=
authorization_code
client_id=
上記ステップ3のコンシューマ・キーclient_secret=
上記ステップ3のコンシューマ・シークレットrefresh_token=
上記ステップ10のリフレッシュ・トークン
- コネクタを実行します。応答には、出力としてマップされる
access_token
が含まれていることに注意してください。コネクタを保存して Refresh Token を保存する。
この関数がaccess_token
を生成できたら、セットアップは完了です!このaccess_token
は、ステップ 2 で設定されたタイムアウト設定が許す限り、後続の Connector Function で使用できます。
Tulip 接続の詳細
コネクタがSalesforceとインタフェースできるようにするには、コネクタの接続の詳細で、Salesforceインスタンスのサブドメインを「デフォルトのサブドメイン」として入力します。
たとえば、Salesforce インスタンスが sample.my.salesforce.com にある場合、デフォルトのサブドメインはsample.my
になります。
ここにあるすべての Connector 関数は、Salesforce REST API v46.0 で動作するように構築されています。
コネクタ関数
オブジェクト型コネクタとクエリ型コネクタです。
どちらの Connector もaccess_token
を必要とするので、これらの前に必ずアプリで**[Auth] Get Access Token**を実行してください!一般的には、アプリまたはプロセスの開始時に新しい Access Token を生成し、後で使用するために App Variable に保存することをお勧めします。
オブジェクト型コネクタ
- 対象のオブジェクトのすべてのフィールドを返します。
- エンドポイント
./services/data/v46.0/sobjects/<オブジェクト名>/<オブジェクトID>を
使用します。 - 例コネクタ**[Opportunity] Get All Fields**
クエリ型コネクタ
- クエリで指定されたフィールドのみを返します。
- リンクされた(たとえば、オポチュニティに関連するアカウント名)または集約された(たとえば、レコードのカウント)情報を返すことができます。
- エンドポイント
./services/data/v46.0/query
を使用します。 - SOQL を使用してクエリを記述する必要があります (ドキュメント here{target=
_blank
}). - 例コネクタ**[Order] ステータスのすべての注文を取得**
含まれるコネクタ関数
以下の Connector 関数はこのパックに含まれており、Salesforce API 経由で可能な機能の紹介を目的としています。 * [Setup] Get Auth Code URL & [Setup] Get Refresh Token *初回セットアップにのみ使用されます。Auth] Get Access Token *Access Token を生成するために使用され、以降のすべての Connector 関数に含める必要が あります:
* 照会されたオポチュニティのすべてのフィールドを返します。Access Token と Opportunity ID が必要です。* Change Stage *指定された Opportunity の Stage を指定された値に更新します。 * [Order] 関数: * Get All Orders of Status *指定された Status のすべての注文のリストを返します。* Count Orders of Status *指定された Status のすべての注文のカウントを返します。* Get Order Number from ID *指定された注文 ID から注文番号を返します。
ニーズに合わせてこれらの関数を変更するには、以下のアドバイスを参照してください:
1.オブジェクトタイプの Connector Functions を変更するには、単に URL に示されたオブジェクトを変更します。必要に応じて、新しい出力を追加または削除してください。クエリタイプの Connector Function を変更するには、すべての変更をクエリで行う必要があります。これはクエリパラメータの qという
キーで見つけることができます。
1.ヒント: LIMIT(number_of_responses)関数を使用して、クエリからの応答数を制限します。
お探しのものは見つかりましたか?
community.tulip.coで質問を投稿したり、他の人が同じような質問に直面していないか確認することもできます!