Postman : Salesforceで初めて使う時の処理手順

[Postmanのまとめに戻る](https://qiita.com/Keiji_otsubo/items/84098dc24465d5787ea6)


他の説明の時に使いまわせるようにこの部分の記事を独立させました。

以下のモジュールを参考にして設定します

[Quick Start: Connect Postman to Salesforce](https://trailhead.salesforce.com/content/learn/projects/quick-start-connect-postman-to-salesforce)

# 接続するSalesforceの組織での設定

1. 接続するSalesforceの組織でクロスオリジンリソース共有を設定する

以下のように設定します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/28345e1a-1d73-8894-4740-f85efcf2aacc.png)

# Postman での設定

2\. Postman アカウントにサインインするか、アカウントにサインアップします。
3\. Workspacesメニューを選択します。
4\. Create Workspace を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/fb92401f-4d22-f989-370c-8e44d1168484.png)

5\. ワークスペースに SalesforceCollection という名前を付けます。

6\. Nextをクリックして進みます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/17a197e6-7c3f-6f22-3fe9-97d80695c131.png)

7\.  可視性をPersonalに設定します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/15b3ac82-6856-aeeb-8e84-fbee7cd4a5e7.png)

8\. Create Workspaceをクリックします。

9\. Salesforce コレクションをフォークします。public Salesforce Developers workspace を開いて、Salesforce API コレクションのフォークを作成します(リンクをクリック)。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/6b77a6cc-11d3-6062-d75d-b313083c69eb.png)

10\. Collectionsで、Salesforce Platform API を選択して展開します。

11\.  <img width="30"  src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/4e595dd6-54c8-e8e5-8ddf-ae518d94cdb0.png">Create Forkをクリックして、コレクションのフォークを作成します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/ee0d071c-a2a1-f4c4-6a02-11af239ac86a.png)

12\. 「MySalesforceAPIFork」と入力します。
13\. SalesforceCollection をワークスペースとして保持します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/acf9a067-0c5d-61a4-0aa9-505bc30c88de.png)

14\. Fork Collectionをクリックします

15\. Salesforceの組織に認証して接続します。

+ ブラウザで 1 つの 組織にのみログインしていることを確認してください。
+ Postman の コレクション で、SSalesforce Platform APIsを選択する必要があります。
+ No Environment  が選択されていることを確認してください。
+ Authorizationタブが開いているはずです。
+ タイプは OAuth 2.0 である必要があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/f793a88c-1b32-5ec1-af2d-638f412d13c4.png)

16\. Get New Access Tokenをクリックします。下の方にあるのでスクロールしてください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/a38846f0-3d24-b0d8-8533-eddda21cd8c7.png)


17\. instance_url が Trailhead Playground を指していることを確認します。**このURLをコピーします。** ＜－－重要です。
もしかしたら、lightning.force.comがmy.salesforce.comになっているかもしれませんが、このURLを使います。

18\. Use Tokenをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/94ffb58b-cdc3-bb1d-9d46-7546da401c9f.png)

19\. Variables タブをクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/ecac0969-6e48-278c-5881-a38c34d6e496.png)

_endpoint 行の CURRENT VALUE 列に、**手順 17 でコピーした instance_url 値を貼り付けます。**

入力箇所がよく分からん。　先頭にカーソルをもっていく

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/f0157be0-797f-57b1-1f9c-69a2488e9568.png)

20\.  Saveボタンをクリックします。

どこにある？　色が薄くて探しにくい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/d83e9ba7-4645-c8b3-4b84-88a458204a41.png)

何か変更した時だけ機能するようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/42d80f56-fd3d-0b22-6b53-e9c76ee00a3a.png)




これで設定は終了です。念のため以下のようにして接続できるかを確かめます。

# 接続できたかの確認

1. コレクション で、Salesforce Platform API を選択して展開します。
2. RESTを選んで展開します。
3. GET Limitsを選択します。メイン パネルで Limits が開きます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/4773f527-fe7c-847e-ab7c-d172404125c5.png)

4\. sendをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/f39bcf6e-c4fa-7a0e-bf0c-40ee3882864a.png)

無事接続できているとこのような応答が返ってきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/2d34cfa1-d177-a1e5-0e44-3e690fe6c7d6.png)

以下のエラーになったら、_endpoint に間違ったURLを設定している可能性が高いです。

:::note alert
[{"message":"Session expired or invalid","errorCode":"INVALID_SESSION_ID"}]
:::

コンソールを見るとエラーの詳細が分かります。
以下のように302が発生している場合は_endpointにinstance_urlを設定していないためだと思います。

lightning.force.comになっていると、my.salesforce.comにリダイレクトされます。
（本番環境、プレイグランドのURLが何故リダイレクトされるのかは理解できませんが...）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/328136/ffb0a2ed-f761-7783-b17c-711f7864a3c3.png)