Google 张 appscript - Pipedrive post
Google sheets appscript - Pipedrive post
我在尝试向 Pipedrive 交易发出 put/post 请求时收到错误 'Exception: Request failed for https://api.pipedrive.com returned code 404. Truncated server response: {"status":false,"error":"Unknown method ."} (use muteHttpExceptions option to examine full response)'。 (日期字段)下面是产生错误的函数。我很确定这是显而易见的事情,但我无法自行确定原因。任何帮助将不胜感激。
function Update_pipedrive_Date(dealid, field_name){
var todays_date = Utilities.formatDate(new Date(), "GMT-5", "yyyy-MM-dd"); // "yyyy-MM-dd'T'HH:mm:ss'Z'"
var url = 'https://api.pipedrive.com/v1/deals/' + dealid + '?api_token='+oys_api_key
var data = {field_name: todays_date};
var options = {
'method': 'post',
'contentType': 'application/json',
'payload': JSON.stringify(data)
};
var response = UrlFetchApp.fetch(url, options);
return response
}
def update_field(this_dealid, fieldid):
tday = now.strftime("%Y-%m-%d")
headers = {'content-type': 'application/json'}
updates = {fieldid: tday}
resp = requests.put(
'https://api.pipedrive.com/v1/deals/' + str(
this_dealid) + '?api_token=' + api_key,
data=json.dumps(updates), headers=headers)
return resp
我相信你的目标如下。
- 您提供的 python 脚本工作正常。
- 您想将 python 脚本转换为 Google Apps 脚本。
修改点:
- 您的 python 脚本请求 PUT 方法。但是您的 Google Apps 脚本请求 POST 方法。
- 在
{field_name: todays_date}
的情况下,key总是“field_name”。
当这些点都体现在你的脚本中,下面的修改怎么样?
修改后的脚本:
var field_name = "###"; // Please set your field_name.
var dealid = "###"; // Please set your dealid.
var oys_api_key = "###"; // Please set your oys_api_key.
var todays_date = Utilities.formatDate(new Date(), "GMT-5", "yyyy-MM-dd");
var url = 'https://api.pipedrive.com/v1/deals/' + dealid + '?api_token=' + oys_api_key;
var data = { [field_name]: todays_date };
var options = {
'method': 'put',
'contentType': 'application/json',
'payload': JSON.stringify(data)
};
var response = UrlFetchApp.fetch(url, options);
注:
- 我认为此 Google Apps 脚本的请求与您的 python 脚本相同。但如果此脚本出现错误,请再次确认您的
field_name
、dealid
、oys_api_key
变量。即使这些变量是有效值,当发生错误时,我担心 URL 可能无法从 Google 端访问。
参考:
我在尝试向 Pipedrive 交易发出 put/post 请求时收到错误 'Exception: Request failed for https://api.pipedrive.com returned code 404. Truncated server response: {"status":false,"error":"Unknown method ."} (use muteHttpExceptions option to examine full response)'。 (日期字段)下面是产生错误的函数。我很确定这是显而易见的事情,但我无法自行确定原因。任何帮助将不胜感激。
function Update_pipedrive_Date(dealid, field_name){
var todays_date = Utilities.formatDate(new Date(), "GMT-5", "yyyy-MM-dd"); // "yyyy-MM-dd'T'HH:mm:ss'Z'"
var url = 'https://api.pipedrive.com/v1/deals/' + dealid + '?api_token='+oys_api_key
var data = {field_name: todays_date};
var options = {
'method': 'post',
'contentType': 'application/json',
'payload': JSON.stringify(data)
};
var response = UrlFetchApp.fetch(url, options);
return response
}
def update_field(this_dealid, fieldid):
tday = now.strftime("%Y-%m-%d")
headers = {'content-type': 'application/json'}
updates = {fieldid: tday}
resp = requests.put(
'https://api.pipedrive.com/v1/deals/' + str(
this_dealid) + '?api_token=' + api_key,
data=json.dumps(updates), headers=headers)
return resp
我相信你的目标如下。
- 您提供的 python 脚本工作正常。
- 您想将 python 脚本转换为 Google Apps 脚本。
修改点:
- 您的 python 脚本请求 PUT 方法。但是您的 Google Apps 脚本请求 POST 方法。
- 在
{field_name: todays_date}
的情况下,key总是“field_name”。
当这些点都体现在你的脚本中,下面的修改怎么样?
修改后的脚本:
var field_name = "###"; // Please set your field_name.
var dealid = "###"; // Please set your dealid.
var oys_api_key = "###"; // Please set your oys_api_key.
var todays_date = Utilities.formatDate(new Date(), "GMT-5", "yyyy-MM-dd");
var url = 'https://api.pipedrive.com/v1/deals/' + dealid + '?api_token=' + oys_api_key;
var data = { [field_name]: todays_date };
var options = {
'method': 'put',
'contentType': 'application/json',
'payload': JSON.stringify(data)
};
var response = UrlFetchApp.fetch(url, options);
注:
- 我认为此 Google Apps 脚本的请求与您的 python 脚本相同。但如果此脚本出现错误,请再次确认您的
field_name
、dealid
、oys_api_key
变量。即使这些变量是有效值,当发生错误时,我担心 URL 可能无法从 Google 端访问。