Post 使用Google应用程序脚本发布QuickBooks API
有没有人有使用谷歌应用程序脚本向QuickBooks API发送帖子的工作示例 我正在尝试使用QuickBooks API创建一个估计值,但是,尽管下面的请求正文在API资源管理器中工作,但我从Apps脚本中获得:Post 使用Google应用程序脚本发布QuickBooks API,post,google-apps-script,quickbooks-online,Post,Google Apps Script,Quickbooks Online,有没有人有使用谷歌应用程序脚本向QuickBooks API发送帖子的工作示例 我正在尝试使用QuickBooks API创建一个估计值,但是,尽管下面的请求正文在API资源管理器中工作,但我从Apps脚本中获得: Error: Fetch failed, code: 400, message: {"Fault":{"Error":[{"Message":"Request has invalid or unsupported property","Detail":"Property Name:U
Error: Fetch failed, code: 400, message: {"Fault":{"Error":[{"Message":"Request has invalid or unsupported property","Detail":"Property Name:Unrecognized token 'Line': was expecting ('true', 'false' or 'null')\n specified is unsupported or invalid","code":"2010"}],"type":"ValidationFault"},"time":"2016-08-02T09:51:28.917-07:00"} (line 195, file "Tests")
但我不明白为什么API需要布尔键而不是“Line”键
这就是我在代码中将其定义为POST有效负载的方式:
var payload = {
"Line": [
{
"Id": "3",
"LineNum": 1,
"Amount": 10,
"DetailType": "SalesItemLineDetail",
"SalesItemLineDetail": {
"ItemRef": {
"value": "2",
"name": "Hours"
},
"UnitPrice": 10,
"Qty": 2
}
},
{
"Amount": 10,
"DetailType": "SubTotalLineDetail",
"SubTotalLineDetail": {}
}
],
"TxnTaxDetail": {
"TotalTax": 0
},
"CustomerRef": {
"value": "1",
"name": "Mr Blobby"
},
"CustomerMemo": {
"value": "Thank you for your business and have a great day!"
},
"TotalAmt": 31.5,
"ApplyTaxAfterDiscount": false,
"PrintStatus": "NeedToPrint",
"EmailStatus": "NotSet",
}
var companyId = PropertiesService
.getUserProperties()
.getProperty('QuickBooks.companyId')
var url = 'https://quickbooks.api.intuit.com/v3/company/' + companyId + '/estimate'
var options = {
headers: {
'Accept': 'application/json'
},
contentType: 'application/json',
method: 'post',
payload: payload,
muteHttpExceptions: true,
}
var service = OAuth1_.getService();
var response = service.fetch(url, options)
在将整个负载传递给OAuth.fetch()调用之前,需要对其进行字符串化 所以
你能给我们看一下你打给UrlFetchApp的全部电话吗?+Dimu设计-添加了fetch
var payload = JSON.stringify({
"Line": [
{
"Id": "3",
.
.
})