Help us understand the problem. What is going on with this article?

SalesForceのrefresh_token取得方法

概要

SalesForceでrefresh_tokenを取得しようとしたが、結構ハマってしまったため記事として残しておく。
たぶんこの記事に辿り着く人はSalesForceの「更新トークンフロー」を読んで、結局どうやって取得すんねんってなった人ではないだろうか・・・。

結論

webサーバ認証フローを利用することで取得できる
※ 利用しているAPIのバージョンはv47.0です

手順

SalesForce側で接続アプリケーションの設定をする

  1. SalesForceにログインして設定を押す
    01.png

  2. アプリケーションマネージャから接続アプリケーションを選択
    02.png

  3. 接続アプリケーションの作成
    事前準備としてlocalでもいいのでWebサーバを立ち上げておく
    03.png

  4. client_idとclient_secretの確認
    アプリケーションの作成が完了、もしくはアプリケーション一覧から「参照」を押すとclient_idとclient_secretを確認できる
    04.png

アプリケーションの認証

パラメータをつけて下記に「ブラウザ」でアクセスする
https://login.salesforce.com/services/oauth2/authorize

Key Value
response_type code
client_id *****
redirect_uri http%3A%2F%2Flocalhost

SalesForceにログインするとアプリケーションへのアクセス許可を求められるので許可をする
06.png

許可するとリダイレクトされて、URLにcode(有効時間15分程度)が返ってくる
07.png

refresh_tokenの取得

認証時に取得したcode&その他必須パラメータをつけて下記のURLに「POST」でアクセスする
※ 下記画像ではpostmanを利用していますが、terminalからcurlでも取得できます。
https://login.salesforce.com/services/oauth2/token

Key Value
grant_type authorization_code
code *****
client_id *****
client_secret *****
redirect_uri http://localhost

08.png (181.7 kB)

無事にrefresh_tokenを取得できました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした