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

GASでPardotのAPIを扱う方法

手順としては
① APIキーの取得をしてプロパティストアに保存
② ①で取得したAPIキーを使ってAPIをたたく

という手順になります。

APIキーは取得後60分間のみ有効なので注意が必要です。

下記のURLを参考にGASでコードを書くと下記の様になります。
https://developer.salesforce.com/docs/atlas.ja-jp.salesforce1api.meta/salesforce1api/pardot_authentication.htm

  var email = ''; //Pardotで登録しているメールアドレス
  var password = ''; //Pardotで登録しているPW
  var user_key = ''; //設定からAPIユーザーキーを取得 ※1

  // API取得用のURL
  var url = 'https://pi.pardot.com/api/login/version/4';

  var parameters = {
    method : 'post',
    payload : 'email='+email+'&password='+password+'&user_key='+user_key+'&format=json',
  };

  var response = UrlFetchApp.fetch(url,parameters);  
  var json = JSON.parse(response.getContentText());
  var api_key = json.api_key;

  var prop = PropertiesService.getScriptProperties();
  prop.setProperty('api_key', api_key);
}

 ※1箇所のユーザーキーは
下記画像の「設定」の中の「私のプロファイル」から取得可能

2020-02-16_10h37_58.jpg

function getData() {

  //上記で取得したAPIキーをプロパティストアから取得
  var prop = PropertiesService.getScriptProperties();
  var api_key = prop.getProperty('api_key');
  var user_key = '';


  //URLを変更することによって取得したい情報を変更
  //http://developer.pardot.com/kb/api-version-4/campaigns/
  //例えばキャンペーン情報がほしい場合は{}をcampaignを入れる
  var url = "https://pi.pardot.com/api/{}/version/4/do/query";  

  var options = {
    method : 'post',
    payload : 'api_key=' + api_key + '&user_key=' + user_key + '&format=json'
  };

  var result = JSON.parse(UrlFetchApp.fetch(url, options).getContentText()).result;
  var total_results = result.total_results; //返ってきたデータ数
  var resultArray = result.{}; //{}は上記で設定したURLと同じcampaignならcampaignを入れる

  var array = [];

  for(var i=0; i<resultArray.length; i++){
    array.push([]);
    array[i].push(resultArray[i].name);
  }

  Logger.log(array);

  var shtName = 'シート名';
  var sht = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(shtName);
  sht.getRange(10,1,array.length,array[0].length).setValues(array);
}

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