Adobe Analytics 2.0 API端点,用于获取报告套件事件、道具和评估

Adobe Analytics 2.0 API端点,用于获取报告套件事件、道具和评估,adobe,adobe-analytics,Adobe,Adobe Analytics,我很难在2.0API中找到一种方法,可以获得给定报告套件的评估、道具和事件列表。1.4版本有端点和类似的Evar和Props 请告诉我是否有办法使用2.0 API端点获取相同的数据。github文档并不是非常有用,但更有用的是,它显示了可以推送到它们的端点和参数,您可以与之交互(使用oauth凭据登录)并查看请求/响应 您特别需要的两个API端点是metrics和dimensions。您可以指定许多选项,但要获得所有选项的转储,这些选项的完整端点URL应为: https://analytics.

我很难在2.0API中找到一种方法,可以获得给定报告套件的评估、道具和事件列表。1.4版本有端点和类似的Evar和Props

请告诉我是否有办法使用2.0 API端点获取相同的数据。

github文档并不是非常有用,但更有用的是,它显示了可以推送到它们的端点和参数,您可以与之交互(使用oauth凭据登录)并查看请求/响应

您特别需要的两个API端点是
metrics
dimensions
。您可以指定许多选项,但要获得所有选项的转储,这些选项的完整端点URL应为:

https://analytics.adobe.io/api/[客户端id]/[端点]?rsid=[报告套件id]

其中:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
[客户id]
-您公司的客户id。该值应与v1.3/v1.4 API共享机密凭据中的遗留
用户名:companyid
(companyid部分)的值相同,但后缀为“0”,例如,如果您的旧
用户名:companyid
是“crayon暴力:foocompany”,则
[客户端id]
将是“foocompany0”,因为……原因?我不确定这是怎么回事,但事实就是这样

[endpoint]
-值应为“度量”以获取事件,而
维度应为
以获取道具和评估。因此,您需要发出2个API端点请求

[rsid]
-您想要从中获取事件/道具/评估列表的报告套件id

示例:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
https://analytics.adobe.io/api/foocompany0/metrics?rsid=fooglobal

关于这些响应,有一点需要注意:它们不像v1.3或v1.4方法那样只查询那些特定内容的列表。它将分别为每个事件和维度返回一个json对象数组,即使是本机对象、计算的度量、给定维度的分类等。AFAIK没有现成的方法来过滤API查询(这在我能找到的任何文档中都有),因此,您必须在数组中循环并自己选择相关的数组

我不知道您使用的是什么语言,但下面是一个javascript示例,说明我的基本工作:

var i, l, v, data = { prop:[], evar: [], events:[] };

// dimensionsList - the JSON object returned from dimensions API call
// for each dimension in the list..
for (i=0,l=dimensionsList.length;i<l;i++) {
  // The .id property shows the dimension id to eval
  if ( dimensionsList[i].id ) {
    // the ones we care about are e.g. "variables/prop1" or "variables/evar1"
    // note that if you have classifications on a prop or eVar, there are entries 
    // that look like e.g. "variables/prop1.1" so regex is written to ignore those
    v = (''+dimensionsList[i].id).match(/^variables\/(prop|evar)[0-9]+$/);
    // if id matches what we're looking for, push it to our data.prop or data.evar array
    v && v[1] && data[v[1]].push(dimensionsList[i]);
  }
}
// metricsList - the JSON object returned from metrics API call
// basically same song and dance as above, but for events. 
for (var i=0,l=metricsList.length;i<l;i++) {
  if ( metricsList[i].id ) {
    // events ids look like e.g. "metrics/event1"
    var v = (''+metricsList[i].id).match(/^metrics\/event[0-9]+$/);
    v && data.events.push(metricsList[i]);
  }
}
数据.evar[n]
的对象条目示例:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
数据.prop[n]
的对象输入示例:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
github文档并不是非常有用,但是更有用的是,它显示了可以推送到它们的端点和参数,并且可以与之交互(使用oauth凭据登录)并查看请求/响应

您特别需要的两个API端点是
metrics
dimensions
。您可以指定许多选项,但要获得所有选项的转储,这些选项的完整端点URL应为:

https://analytics.adobe.io/api/[客户端id]/[端点]?rsid=[报告套件id]

其中:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
[客户id]
-您公司的客户id。该值应与v1.3/v1.4 API共享机密凭据中的遗留
用户名:companyid
(companyid部分)的值相同,但后缀为“0”,例如,如果您的旧
用户名:companyid
是“crayon暴力:foocompany”,则
[客户端id]
将是“foocompany0”,因为……原因?我不确定这是怎么回事,但事实就是这样

[endpoint]
-值应为“度量”以获取事件,而
维度应为
以获取道具和评估。因此,您需要发出2个API端点请求

[rsid]
-您想要从中获取事件/道具/评估列表的报告套件id

示例:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
https://analytics.adobe.io/api/foocompany0/metrics?rsid=fooglobal

关于这些响应,有一点需要注意:它们不像v1.3或v1.4方法那样只查询那些特定内容的列表。它将分别为每个事件和维度返回一个json对象数组,即使是本机对象、计算的度量、给定维度的分类等。AFAIK没有现成的方法来过滤API查询(这在我能找到的任何文档中都有),因此,您必须在数组中循环并自己选择相关的数组

我不知道您使用的是什么语言,但下面是一个javascript示例,说明我的基本工作:

var i, l, v, data = { prop:[], evar: [], events:[] };

// dimensionsList - the JSON object returned from dimensions API call
// for each dimension in the list..
for (i=0,l=dimensionsList.length;i<l;i++) {
  // The .id property shows the dimension id to eval
  if ( dimensionsList[i].id ) {
    // the ones we care about are e.g. "variables/prop1" or "variables/evar1"
    // note that if you have classifications on a prop or eVar, there are entries 
    // that look like e.g. "variables/prop1.1" so regex is written to ignore those
    v = (''+dimensionsList[i].id).match(/^variables\/(prop|evar)[0-9]+$/);
    // if id matches what we're looking for, push it to our data.prop or data.evar array
    v && v[1] && data[v[1]].push(dimensionsList[i]);
  }
}
// metricsList - the JSON object returned from metrics API call
// basically same song and dance as above, but for events. 
for (var i=0,l=metricsList.length;i<l;i++) {
  if ( metricsList[i].id ) {
    // events ids look like e.g. "metrics/event1"
    var v = (''+metricsList[i].id).match(/^metrics\/event[0-9]+$/);
    v && data.events.push(metricsList[i]);
  }
}
数据.evar[n]
的对象条目示例:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
数据.prop[n]
的对象输入示例:

{
    "id": "metrics/event1",
    "title": "(e1) Some event",
    "name": "(e1) Some event",
    "type": "int",
    "extraTitleInfo": "event1",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "allocation": true,
    "precision": 0,
    "calculated": false,
    "segmentable": true,
    "supportsDataGovernance": true,
    "polarity": "positive"
}
{
    "id": "variables/evar1",
    "title": "(v1) Some eVar",
    "name": "(v1) Some eVar",
    "type": "string",
    "category": "Conversion",
    "support": ["oberon", "dataWarehouse"],
    "pathable": false,
    "extraTitleInfo": "evar1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}
{
    "id": "variables/prop1",
    "title": "(c1) Some prop",
    "name": "(c1) Some prop",
    "type": "string",
    "category": "Content",
    "support": ["oberon", "dataWarehouse"],
    "pathable": true,
    "extraTitleInfo": "prop1",
    "segmentable": true,
    "reportable": ["oberon"],
    "supportsDataGovernance": true
}

非常感谢。这就是我要找的。当然没有我希望的那么简单,但这正是我所需要的。该应用程序是一个JS应用程序,因此您的示例代码非常适合我。再次感谢您的详细回复。谢谢!这就是我要找的。当然没有我希望的那么简单,但这正是我所需要的。该应用程序是一个JS应用程序,因此您的示例代码非常适合我。再次感谢您的详细回复。