REST APIを使用したスマート・テキストの変数置換
- スマート・テキストの作成
- SrIdおよびSrNumberを取得
- PUIDによるスマート・テキスト変数の置換
- 代替識別子によるスマート・テキスト変数の置換
- ユーザー定義変数値によるSRでのスマート・テキストの使用
スマート・テキストの作成
cURLを使用してRESTリソースに対してPOSTリクエストを発行することで、スマート・テキスト・リソースを使用してスマート・テキストを作成できます。 または、「ツール」>「スマート・テキスト」にナビゲートしてUIでスマート・テキストを作成することもできます
URL
https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts
Method: POST
ContentType:application/vnd.oracle.adf.resourceitem+json
リクエスト本文
{ "StdtxtName":"Customer Smarttext Example", "UniqueNumber":"CUST_0001", "HtmlFlag":"Y", "Scope":"ORA_SVC_GLOBAL", "FolderId":"300100543810122", "Object":"ServiceRequestVO", "BuOrgId":204, "Text":"RGVhciBbW1NlcnZpY2VSZXF1ZXN0Vk8uUHJpbWFyeUNvbnRhY3RQYXJ0eU5hbWVdXTo8YnIgLz48YnIgLz5Zb3VyIGNvZGUgcmVxdWVzdCBOdW1iZXIgW1tTZXJ2aWNlUmVxdWVzdFZPLlNyTnVtYmVyXV0gaXMgYmVpbmcgYXR0ZW5kZWQuPGJyIC8+PGJyIC8+UmVnYXJkcyw=", "Language":"US" }
次の点に注意してください。
前述のリクエスト本文で:
- UniqueNumberはオプションです。順序付けされた生成値がデフォルトでCDRM_0001タイプ形式になります。
- 「テキスト」は、次のテキストのBase64エンコード値です:
Dear
[[ServiceRequestVO.PrimaryContactPartyName]]:<br /><br />Your code request Number
[[ServiceRequestVO.SrNumber]] is being attended.<br /><br />Regards,
ノート: 上の例では、v8より前のRest-Framework-Versionを使用しています。 Rest-Framework-Version v8以上を使用している場合、base64エンコーディングは必要ありません。
- FolderIdは、ドメインがORA_GENERICの有効なパブリック・フォルダである必要があります。
- BuOrgIdは、フォルダのBuOrgIdの値と一致する必要があります。
- ノート: これは、複数ビジネス・ユニットのサポート用です。 1つのビジネス・ユニットを使用している場合は、NULLにできます。 アプリケーションのバージョンによっては、BuOrgIdがsmartTextFoldersリソースに存在しない場合があります。 属性が存在しない場合、BuOrgIdの値は無視できます。
存在するかどうかを確認するには、smartTextFoldersリソースに対してdescribeリクエストを送信する必要があります:
https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/describe
- ノート: これは、複数ビジネス・ユニットのサポート用です。 1つのビジネス・ユニットを使用している場合は、NULLにできます。 アプリケーションのバージョンによっては、BuOrgIdがsmartTextFoldersリソースに存在しない場合があります。 属性が存在しない場合、BuOrgIdの値は無視できます。
- 「オブジェクト」は必須の値で、大部分はServiceRequestVOです。 その他の値は、svc_std_txt_objects表にあります。
{ "StdTxtId": 300100547184758, "CreatedBy": "SALES_ADMIN", "CreationDate": "2021-05-06T15:01:35+00:00", "LastUpdatedBy": "SALES_ADMIN", "LastUpdateDate": "2021-05-06T15:01:35.040+00:00", "LastUpdateLogin": "C1790815EA079FCAE053773AF80ABE96", "StdtxtName": "Customer Smarttext Example", "HtmlFlag": true, "FolderId": 300100543810122, "Scope": "ORA_SVC_GLOBAL", "UserPartyId": null, "EnabledFlag": true, "StartDate": "2021-05-06", "EndDate": null, "Domain": "ORA_GENERIC", "Object": "ServiceRequestVO", "StripeCd": "ORA_SVC_CRM", "BuOrgId": 204, "Language": "US", "StandardTextId": null, "UniqueNumber": "CUST_0001", "links": [ { "rel": "self", "href": "https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876", "name": "smartTexts", "kind": "item", "properties": { "changeIndicator": "ACED0005737200136A6176612E7574696C2E41727261794C6973747881D21D99C7619D03000149000473697A65787000000001770400000001737200116A6176612E6C616E672E496E746567657212E2A0A4F781873802000149000576616C7565787200106A6176612E6C616E672E4E756D62657286AC951D0B94E08B02000078700000000178" } }, { "rel": "canonical", "href": "https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876", "name": "smartTexts", "kind": "item" }, { "rel": "action", "href": "https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876/action/processSmartText", "name": "processSmartText", "kind": "other" }, { "rel": "enclosure", "href": "https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876/enclosure/Text", "name": "Text", "kind": "other" } ] }
SrNumberおよびSrIdを取得
SrNumberまたはSrIdを使用して前述のSRで作成したスマート・テキストを使用し、スマート・テキスト変数を参照オブジェクトから取得したデータに置き換えることができるようになりました。
次のRESTコールを使用してすべてのサービス・リクエストを取得することで、SrNumberおよびSrIdを取得できます:
GET /crmRestApi/resources/11.13.18.05/serviceRequests
{ "items": [ { "SrId": 300100543019031, "SrNumber": "SR121191658536", "Title": "SR121191658536", "ProblemDescription": null, "SeverityCdMeaning": "High", "SeverityCd": "ORA_SVC_SEV1", "AssigneeResourceId": null, "AssigneeResourceNumber": null, "AssigneePartyId": null, "AssigneePersonName": null, "AssigneeEmailAddress": null, "AssigneeFormattedPhoneNumber": null, "AssigneeFormattedAddress": null, "CreatedBy": "SALES_ADMIN_ACC", "CreationDate": "2021-07-21T12:28:43.482+00:00", "LastUpdateDate": "2021-07-21T12:28:43.810+00:00", "LastUpdateLogin": "C7A0D3BB80F065EFE0530740F00A9B11", "LastUpdatedBy": "SALES_ADMIN_ACC", "LastUpdatedByDisplayName": "LeeACC,GabrielleACC", "LastUpdatedByEmailAddress": null, ... }
PUIDによるスマート・テキスト変数の置換
processSmartText
アクションは、スマート・テキストおよび参照オブジェクトの主キーを含むjsonStringを受け入れます。 このアクションは、スマート・テキストの変数を参照オブジェクトから取得したデータに置き換えます。 また、PUIDのかわりに主キーを使用して、スマート・テキストを参照することもできます。
上のGETコールから取得したパブリック一意識別子SrNumberを使用し、次のURLを使用してスマート・テキスト変数をPOSTリクエストに置き換えます:
Method: POST
URL: https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876
Content-Type:application/vnd.oracle.adf.action+json
ノート:
上のURLは、使用されているスマート・テキストを一意に識別する正規値です。
{ "name": "processSmartText", "parameters": [ { "paramsValuesJson": "{puid: SR0000128147}" } ] }
{ "result":"{\"status\":\"Success\",\"smartText\":\"Dear FirstName_a6c87992392 LastName_a6c87992392:<br /><br />Your code request Number SR0000128147 is being attended.<br /><br />Regards,\"}" }
代替識別子によるスマート・テキスト変数の置換
スマート・テキスト変数の置換には、前述のGETコールからSrIdなどの代替識別子を使用することもできます。
URL: https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876
Method: POST
Content-Type: application/vnd.oracle.adf.action+json
{ "name": "processSmartText", "parameters": [ { "paramsValuesJson": "{primaryKey: 300100547166949}" } ] }
{ "result": "{\"status\":\"Success\",\"smartText\":\"Dear FirstName_a6c87992392 LastName_a6c87992392:<br /><br />Your code request Number SR0000128147 is being attended.<br /><br />Regards,\"}" }
ユーザー定義変数値によるSRでのスマート・テキストの使用
ユーザーにユーザー定義属性値の入力を求めるプロンプトを表示できます。 次に、主キーまたはPUID (SrIdまたはSrNumber)に基づいてサービス・リクエストをフェッチし、ペイロードを介してユーザー定義変数の値を置換できます。
ノート:
ユーザーにプロンプトを表示する前に、ツールとスマート・テキストを使用してユーザー定義属性を作成する必要があります。 ユーザー定義の属性変数はMySignatureName
で、型はPrompt
です。
これで、REST APIを使用してスマート・テキストを更新し、既存のテキストに変数を追加できます。
PATCHを使用して、スマート・テキストが次のように更新されます:
Dear [[ServiceRequestVO.PrimaryContactPartyName]]:<br /><br />Your code request Number [[ServiceRequestVO.SrNumber]] is being attended.<br /><br />Regards,<br />[[StandardTextUserVariableVO.MySignatureName]]
MySignatureName変数の任意の値を使用して、processSmartTextメソッドを使用できるようになりました:
URL: https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876
Method: POST
Content-Type: application/vnd.oracle.adf.action+json
{ "name": "processSmartText", "parameters": [ { "paramsValuesJson": "{puid: SR0000128147,StandardTextUserVariableVO.MySignatureName:Jane Smith Esq.}" } ] }
{ "result": "{\"status\":\"Success\",\"smartText\":\"Dear FirstName_a6c87992392 LastName_a6c87992392:<br /><br />Your code request Number SR0000128147 is being attended.<br /><br />Regards,<br />Jane Smith Esq.\"}" }
オプションで、スマート・テキストのパーティ名の値を別の値に置き換えることもできます。 この例では、ServiceRequestVO.PrimaryContactPartyNameの導出値をオーバーライド : "FirstName_a6c87992392 LastName_a6c87992392":
URL: https:/myapplicationdomain.com:port/crmRestApi/resources/11.13.18.05/smartTexts/00020000000255530000000EACED00057708000110F09A830876
Method: POST
Content-Type: application/vnd.oracle.adf.action+json
{ "name": "processSmartText", "parameters": [ { "paramsValuesJson": "{puid: SR0000128147,StandardTextUserVariableVO.MySignatureName:Jane Smith Esq., ServiceRequestVO.PrimaryContactPartyName: Dwayne Johnson}" } ] }
{ "result": "{\"status\":\"Success\",\"smartText\":\"Dear Dwayne Johnson:<br /><br />Your code request Number SR0000128147 is being attended.<br /><br />Regards,<br />Jane Smith Esq.\"}" }
これは、リクエスト・ペイロードに値が指定されていない場合にのみ、サービス・リクエストの導出値がスマート・テキストの本文に置換されることを示しています。