API URL を参照する際に使用するグローバル差し込み項目の種別です。
使用方法
Enterprise または Partner WSDL から API URL を指定したりセッション ID を返したりするには、ドット表記を使用します。
$Api.Session_ID と GETSESSIONID() は同じ値を返します。この値は、現在のコンテキストの現在のセッションの識別子です。このコンテキストは、グローバル変数または関数が評価される場所によって異なります。たとえば、カスタム数式項目でいずれかを使用していて、その項目が Salesforce Classic の標準ページレイアウトで表示される場合、参照されるセッションは基本的な Salesforce セッションになります。Visualforce ページで使用される場合、その同じ項目 (または基礎となる変数か数式の結果) で、代わりに Visualforce セッションが参照されます。
セッションコンテキストは要求のドメインに基づきます。つまり、セッションコンテキストは、.salesforce.com から .vf.force.com または .lightning.force.com など、ホスト名の境界を越えるたびに変更されます。
異なるコンテキストおよびセッション自体からのセッション識別子は異なります。コンテキスト間を移行すると、古いセッションが新しいセッションに置き換えられ、古いセッションは無効になります。このときにセッション ID も変わります。
通常、Salesforce ではコンテキスト間のセッションハンドオフが透過的に処理されますが、セッション ID を渡す場合は、新しいコンテキストから $Api.Session_ID または GETSESSIONID() に再度アクセスして、有効なセッション ID にする必要がある場合もあります。
すべてのセッションがまったく同じように作成されるわけではありません。特に、Lightning Experience コンテキストで取得したセッションの権限は低いため、API にアクセスできません。そのよう��セッション ID を使用して API コールを行うことはできません。{!$Api.Session_ID} は、ゲストユーザには生成されません。
例
-
{!$Api.Enterprise_Server_URL__xxx}: Enterprise WSDL SOAP エンドポイント。xxx は API のバージョンを示します。たとえば、{!$Api.Enterprise_Server_URL_260} は、バージョン 26.0 の API のエンドポイントの式です。
-
{!$Api.Partner_Server_URL__xxx}: Partner WSDL SOAP エンドポイント。xxx は API のバージョンを示します。{!$Api.Partner_Server_URL_250} は、バージョン 25.0 の API のエンドポイントの式です。
-
{!$Api.Session_ID}: セッション ID。