Node.js クライアント ライブラリを使用してコンテンツ エクスペリメントを構成しようとしていますが、構文がわかりません。ここで説明されているように、本文 (Experiment リソース) はどこに配置すればよいですか?
https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtExperimentsGuide#insert
既存の実験をリストするためのこのコードは、期待どおりに機能します。
var listExperiments = function(){
googleapis
.discover('analytics', 'v3')
.execute(function(err, client) {
var request = client
.analytics.management.experiments.list({
accountId : accountId,
webPropertyId : webPropertyId,
profileId : profileId
})
.withApiKey(browserAPIKey)
.withAuthClient(oauth2Client)
request.execute(function(err,result){
if (err){
console.log(err);
res.send(402);
} else {
console.log(result);
res.send(200);
}
});
});
}
ただし、このように新しい実験を挿入しようとすると、「フィールド リソースが必要です」というエラーが表示されます。
var body = {
"name": "myExperimentName",
"status": "READY_TO_RUN",
"objectiveMetric":"ga:bounces",
"variations": [
{ "name": "text1", "url":"http://www.asite.net", "status":"ACTIVE" },
{ "name": "text2", "url":"http://www.asite.net", "status":"ACTIVE" }
]
};
var insertExperiment = function(){
googleapis
.discover('analytics', 'v3')
.execute(function(err, client) {
var request = client
.analytics.management.experiments.insert({
accountId : accountId,
webPropertyId : webPropertyId,
profileId : profileId,
resource : body
})
.withApiKey(browserAPIKey)
.withAuthClient(oauth2Client)
request.execute(function(err,result){
if (err){
console.log(err);
res.send(402);
} else {
console.log(result);
res.send(200);
}
});
});
}
いくつかの構成を試しました。Management API の書き込みは限定ベータ版ですが、私はベータ版にアクセスできるので問題ありません。新しい実験情報を insert() オブジェクトに直接挿入して、"resource : body" の代わりに実験情報オブジェクト "body : body" を呼び出し、本文を JSON.stringifying し、その他のいくつかの構成を試みました。運がない。
どんな助けでも素晴らしいでしょう!
私はこの回答を認識していますが、Javascript クライアント ライブラリを使用して RESTful リクエストを作成しますが、ノード ライブラリを使用したいと考えています。
編集: Google の Burcu Dogan に感謝します。正しい構文は次のとおりです。
.analytics.management.experiments.insert({
accountId : accountId,
webPropertyId : webPropertyId,
profileId : profileId
}, body)