早期アクセス
主な機能
REST API要求をGET、POST、PUT、またはDELETEメソッドを使用して送信できます。
要求にパラメーター、ヘッダー、および本文コンテンツを含めることができます。
実行時に値を動的に渡すには、変数を使用します。
API応答を解析して特定のデータを抽出し、ワークフローでさらに使用できます。
QntrlでREST API設定を作成するには、次の手順を実行します。
([設定] →[WEB SERVICES]→[Outbound]→[REST]に移動し、クリックします。
右上の[APIを作成]をクリックします。
左サイドバーにAPIの名前を入力します。
HTTPメソッド(GET、POST、PUT、またはDELETE)を選択します。
要求の送信先サービスのAPI URL(エンドポイント)を入力します 。
キー:クエリパラメーターの名前です。
値:上記の形式に基づいて入力します。
ヘッダー:要求に必要なHTTPヘッダーを設定します。
キー:ヘッダー名(例:Authorization)
値:上記の形式に基づいて入力します。
ボディ(POST & PUTのみ):形式を選択し、データを入力します。
なし:要求にボディが不要な場合に選択します。
form-data:キーと値を入力します。
x-www-form-urlencoded:キーと値を入力します。
Raw:複雑なペイロードには、テキスト、JSON、XMLを使用できます。
{{variableName}}構文を使用して、要求設定内の任意の場所に変数を挿入できます。
静的な値:UIで手動入力します([変数値を使用したAPIのテスト]から)。
動的な値:スクリプトまたはCodexを使用して実行時に渡されます。
Codexから実行する場合は、変数をJSONオブジェクトとして指定します。
クエリーパラメーター、ヘッダー、ボディ全体で、プレースホルダー{{jobId}}と{{メール}}がこれらの値に置き換えられます。
実行後、レスポンスパーサーを使用して、JSONレスポンスから特定のデータを抽出します。
Qntrlによりレスポンスが自動的にフィルターされ、よく使用されるJSONパスが候補として表示されます。
候補の中から、パスの横にある[追加]をクリックし、名前を付けて[保存]をクリックすると保存できます。
必要なデータを抽出するために、複数の項目を追加できます。
抽出された値は、次回の実行時に適用済みレスポンスとして表示され、元の完全なレスポンスとともに表示されます。
function beforeSend() { try { var queryParams = webservice.outboundREST.getQueryParameter(); console.log('Query parameters ' + queryParams); // Add a new query parameter. var timestamp = new Date().toISOString(); webservice.outboundREST.addQueryParameter('timestamp', timestamp); // Replace variable values. var variables = {}; variables['user_id'] = '21499000000115251'; webservice.outboundREST.replaceVariableValues(variables); // Add a custom header webservice.outboundREST.addHeader('x-tracking-id', 'track-' + Date.now()); console.log('Modified query params --> ' + webservice.outboundREST.getQueryParameter()); console.log('Modified headers --> ' + webservice.outboundREST.getHeader()); } catch (e) { console.log('Error in beforeSend: ' + e.message); webservice.outboundREST.setResponseCode(500); } }
function afterSend() { var appliedResponse = JSON.parse(webservice.outboundREST.getAppliedResponse()); console.log('appliedResponse -->' + appliedResponse); var variables = JSON.parse(webservice.outboundREST.getVariableValues()); var varJson = {}; varJson['account_id'] = appliedResponse.CRM_Account_ID; varJson['oauth_token'] = variables.oauth_token; var crmResponse = OutboundREST.executeByName('GetAccountDetailsCRM', varJson); if (!crmResponse || Object.keys(crmResponse).length === 0) { webservice.outboundREST.setResponseCode(500); webservice.outboundREST.addResponseHeader('crm_error', 'unable to fetch CRM data.'); } else { appliedResponse['crmResponse'] = crmResponse; webservice.outboundREST.setAppliedResponse(JSON.stringify(appliedResponse)); console.log('appliedResponse -->' + JSON.stringify(appliedResponse)); } }
afterSend()関数は、アウトバウンドREST API要求が実行された後に自動的にトリガーされます。
最初のAPIレスポンスで受信したデータを使用して、外部CRMシステムから追加の詳細を取得します。
最終レスポンスには、元のデータと補完されたCRMデータの両方が含まれます。
設定を保存するには、次の操作を行います。
[保存]をクリックします。APIが左サイドバーに表示されます。
[送信]をクリックしてAPIを実行およびテストします。この操作でもAPI設定が保存されます。
実行後、[レスポンス]タブで結果を確認します。
設定済みREST APIの一意のIDを使用して、スクリプトから実行をトリガーします。
構文
OutboundREST.execute('<api_id>', <variables>);
let requestData = {}; requestData['approvalStatus'] = 'Approved';OutboundREST.execute(31453000002078039, requestData);
設定済みのAPI名と変数のキーと値のペアのオブジェクトを使用して、REST APIを呼び出します。
構文
OutboundREST.executeByName('api_name', <variables>);
let requestData = {}; requestData['approvalStatus'] = 'Approved';OutboundREST.executeByName('TaskApprovalAPI', requestData);
左パネルで利用可能なオプションを使用して、アウトバウンドREST APIを管理できます。
有効化または無効化:API名の横にある切り替えスイッチを使用して、APIを有効化または無効化します。
名前の変更または削除:APIの横にある[その他の操作(...)]アイコンをクリックし、必要に応じて[名前の変更]または[削除]を選択します。