Q.Salesforceの取引先オブジェクトをMarketoのWebhookから叩く方法を知りたい。 | Community
Skip to main content
December 15, 2016

Q.Salesforceの取引先オブジェクトをMarketoのWebhookから叩く方法を知りたい。

  • December 15, 2016
  • 5 replies
  • 221 views

こんにちは。Sansan株式会社の石野です。

現在、MarketoのWebhookを利用しドメイン(カスタムフィールドで作成)をキーにして、

Salesforceの取引先オブジェクトに同一ドメインの有無の確認。

既に同一ドメインの取引先がある場合は、取引先の一部項目情報をリードに返したいと考えています。

唯、私自身まだやったことがなく、Salesforce側を叩く方法をよく存じておりません。

既に実施した方やご存知の方いらっしゃいましたらお知恵を貸して頂けたら幸いです。

具体的に、WebhookでこのURL叩いたら良いよ!ですとか事前にSalesforce側でxxxの設定が必要だと等

教えて頂けたら嬉しいです。

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

5 replies

Taishi_Yamada
Level 6
December 16, 2016

石野さん、こんにちは、

またまたマニアックな質問ですねぇ。。。w。

残念ながら、弊社で私はSalesforceのAPIを勝手に叩ける権限(Salesforce管理者)を担っていないので、

ご質問にズバリの回答はできないのですが、Salesforceのドキュメントを見る限りは、REST APIで情報は

引き出せるので、可能性があるとしたらそのあたりでしょうね。ただし、想定される制御がやや複雑なので、

Marketo/Webhookだけで完結するのは少々しんどいような気がします。

ドキュメントを見る限り、まず、SalesforceでAPI権限を持たせたUserを作成し、恐らく必要なアクセス権なども

配慮した上で、そのUserでのアクセスするための各種キーを確認。OAUTHで認証が必要な感じですが、

そこから該当のものを叩いて情報を引っ張り出すかんじですかね。

↓このあたりが、実際にどういう情報を引けるかの参考になるかと。

http://resources.docs.salesforce.com/rel1/doc/en-us/static/pdf/SF_Rest_API_cheatsheet_web.pdf

あと、はっきり分からないことは聞いてみよう!ということで、英語にして投げておきました↓。

Call Webhook to SFDC API

世界の誰かが答えてくれたら嬉しいです。いうことで。

目的は違うのですが、弊社では社内のあるDBに対して、Marketoからwebhookで呼べるようにする話を

していたところなので、webhookネタとして、思わす反応してしまいました

-Yamada

December 16, 2016

山田さん

ありがとうございます。なんとか方向性が見えてきました。

本来直接webhookで叩くものではないかもしれませんが、下村さんからの回答も含めすすめていきます。

本当に参考になりました。また、USの方までありがとうございます。海外ユーザーのレスの速さは衝撃ですね。

またいまやろうとしている構想が出来たら共有させて下さい。

引き続き宜しくお願い致します。

Taishi_Yamada
Level 6
December 17, 2016

海外のReplyでは、OAUTHをwebhookでやるとmini-nightmare(ちょっとした悪夢)だからお勧めしない。とコメントされてましたね。

でも、下村さんが実現手段を検証整理してくれたので有り難い限りです。

今時の色々なサービスは、たいていWeb APIを実装&公開するようになっているので、そのあたりをスマートに使いこなせると出来ることの幅がいっきに広がりますからね。

私はマーケティングが専門(メインスキル)で、エンジニアリングはサブスキルですが、B2Bで各種マーケティングテクノロジーの組み合わせが更に盛り上がってますから、日本でも各種サービス環境が整ってくればマーケティングの幅を広げられると期待しています。

Eri_Shimomura1
Level 2
December 16, 2016

石野さん、こんにちは。非常に簡単な検証レベルのものですが試しましたので「Salesforce側での設定」周りのところが参考になれば幸いです。

実際どういうリクエストを送信するかは、@Taishi Yamada​​ さんが挙げられたCheetsheetが纏まっているので参考にさせて頂きました。

●流れ

1. Salesforce側で接続アプリケーション(Connected Apps)としてMarketoを登録

2. Marketo側でSalesforce session tokenを保持できる項目を作成

3. Salesforceのセッションを取得し、保持するためのwebhookを作る

4. 処理をするwebhookを作る

5. トリガーキャンペーンで作成したwebhookをコールして動作を確認

●手順(1~4に関して)

1. Salesforce側で、作成>アプリケーションにアクセスすると「接続アプリケーション」がありますので新規に登録します。

OAuthを有効にし、コールバックURLは https://{instance}.salesforce.com/services/oauth2/token を指定。OAuth範囲は検証なのでフルアクセス(Full)を選択。作成すると、Consumer KeyとConsumer Secretが取得できます。

2. フィールド管理からString型でSalesforce Session Tokenを入れるフィールドを作成します。

3. Session Tokenを取得するwebhookを作成

cheetsheetの「OAuth Username/Password Authentication」の箇所を参考にペイロードテンプレートを作成。

grant_type=password&client_id=<consumer key>&client_secret=<consumer secrete>&username=<salesforce username>&password=<salesforce password><salesforce security token>

リクエストはPOST、レスポンスはJSON。応答マッピングでaccess_tokenに「2」で作成した値がセットされるようにします。

4. webhookを作成。

cheetsheeetの「Common Requests for Working with SObjects」を参考に例えば TaskのCreate a Recordだと URLは https://{instance}.salesforce.com/services/data/v38.0/sobjects/Task になるかと思います(versionはSalesforceの開発者ドキュメントを見て最新のものを入れてみました)。

ペイロードテンプレートのところまでは当方の力は至らず、、、Salesforce社の開発者ガイドのURL掲載にてご容赦ください。

https://developer.salesforce.com/docs/atlas.ja-jp.api_rest.meta/api_rest/intro_what_is_rest_api.htm

その他参照:https://developer.salesforce.com/page/JP:Digging_Deeper_into_OAuth_2.0_at_Salesforce.com

(皆様、申し訳ございませんがカスタムコードの作成および他社サービスの部分を含みますのでサポートケースでのQ&A対象外となります。ご了承ください。)

December 16, 2016

下村さん

ありがとうございます。salesforce側でいくつか不明点あるのですが連携方法が見えたので、

こちらでチャレンジしてみようと思っています。ありがとうございます。

Hideta_Mitsuha1
Level 2
December 22, 2016

WebhookでのSFDC連携は可能性広がりますよね。

以前弊社の廣川がWebhookでケースの作成の検証をしてましたが、当然カスタムオブジェクトレコードの作成もできるはずなので、それが通常のコネクタ連携でMarketoに返ってくる、つまり間接的にMarketoのカスタムオブジェクトレコードを作成する、なんてこともできそうですね。

December 22, 2016

実は第一段階のアクセストークン取得はうまくいっているのですが、その後のオブジェクトのデータ取得が上手く行っておりません。上手く出来たらまた共有致します!

@Hideta Mitsuhashi​さん

確かにそういった活用方法できたら面白いですね。もっと掘り下げて行きたい所です。

Taishi_Yamada
Level 6
December 22, 2016

引き続き頑張ってください。

弊社は年末にまたいくつか繋ぐシステムを増やすことを進めていて来年初頭から、できることをいくつか増やせそうです。

お話できるのはもう少し先になりますが、折を見てお話ができる程度まで上手く実績が伴えばと思ってます(汗)

December 22, 2016

@Eri Shimomura​ さん @Taishi Yamada​さん

やっとうまくいきました!!!検証をしてまたポストします。