-
-
Notifications
You must be signed in to change notification settings - Fork 456
Data Access API
Data Access API provides a way to request and work with your data outside of the OWA reporting interface. The API provides a flexible syntax for describing the exact metrics and dimension that you want included included in a result set as well as any filters/constraints, sorting or formatting desired.
The data access API can be be accessed via the REST API or from within PHP code.
Example request:
include_once('owa_env.php');
require_once(OWA_BASE_DIR.'/owa_php.php');
$owa = owa_php::singleton();
$params = array('request_method => 'GET',
'module' => 'base',
'version' => 'v1',
'do' => 'reports',
'metrics' => 'visitDuration,bounces,repeatVisitors,newVisitors,visits,pageViews',
'dimensions' => 'date,browserType',
'constraints' => 'browserType=Firefox 3.5',
'startDate' => '20100312',
'endDate' => '20100331',
'sort' => 'date-,browserType',
'limit' => 10,
'siteId' => 'yoursiteid'
);
$result_set = owa_coreAPI::executeApiCommand($params);
Example request:
GET http://yourdomain/owa/api/?
owa_apiKey=b6b9c9b9016d2bsr3b9b52e22eba06a3
&owa_signature=ds78f7fd9gfs9g67a7987gd89g7sd89f7d8s9g7d89g7d89g7da89g6ds89g7sd89gfd89ga798g7ds89g68df9sg76dfg6asdfsfg
&owa_module=base
&owa_version=v1
&owa_do=reports
&owa_metrics=visitDuration,bounces,repeatVisitors,newVisitors,visits,pageViews
&owa_dimensions=date,browserType
&owa_constraints=browserType%3d%3dFirefox%203.5
&owa_startDate=20100312
&owa_endDate=20100331
&owa_limit=10
&owa_siteId=your_site_id
See the REST API page for more info on how to construct the request.
OWA makes a number of request properties available for you to specify the exact result set you wish to receive.
REST: owa_metrics=visitDuration,bounces,repeatVisitors,newVisitors,visits,pageViews
PHP: 'metrics' => 'visitDuration,bounces,repeatVisitors,newVisitors,visits,pageViews'
Required.
Metrics are aggregate statistics that represent some kind of user activity on web site or application. Metrics can be things like visits, page views, event custom actions.
You may retrieve multiple metric in the same request as long as they represent a valid combination. To request ore thn one metric just separate the metrics names by comma.
See Metrics & Dimensions for a list of supported Metrics.
REST: owa_dimensions=date,browserType
PHP: 'dimensions' => 'date,browserType'
Optional.
Dimensions are data elements that describe some aspect of user activity your web site or application. Dimensions are useful in result sets because they allow you to segment or breakdown aggregate metrics into more detail. For example instead of asking for the total number of visitors to your site, adding a dimension like 'country' would allow you to retrieve the page view metric for each city that your visitors arrived from.
You can add more that one dimension to a request by separating the dimension names with commas.
See Metrics & Dimensions for a list of supported Dimensions.
REST: owa_startDate=20100310
PHP: 'startDate' => '20100310'
Required.
All getResultSet requests require either the use of the period
param, startDate
and endDate
, or startTime
and endTime
.
The start date format is YYYYMMDD - the numerical concatenation of a four digit year value, two digit month, and two digit day.
Start dates may occur in the future but will likely cause your request to return no data.
REST: owa_endDate=20100320
PHP: 'endDate' => '20100320'
Required.
All getResultSet requests require either the use of the period
param, startDate
and endDate
, or startTime
and endTime
.
The end date format is YYYYMMDD - the numerical concatenation of a four digit year value, two digit month, and two digit day.
End dates must either be the same as or occur later than the start date.
REST: owa_constraints=browserType%3d%3dFirefox%203.5
PHP: 'constraints' => 'browserType==Firefox 3.5'
Optional.
Constraints can be placed on your request in order to return results ''where'' particular sets of conditions are met.
Constraints take the form of:
- ''name'' - the name of the metric or dimension that you wish to constrain the request by.
- ''operator'' - used to define the type of constraint
- ''expression'' - value or values that a constraint must evaluate to.
Example Operators:
-
Operator: ==
- Description: equals
- URL Encoded Form: %3D%3D
- Example that return results where the city is Brooklyn:
constraints=city%3D%3Dbrooklyn
-
Operator: !=
- Description: does not equal
- URL Encoded Form: !%3D
- Example that returns results where the city is not Brooklyn:
constraints=city!%3Dbrooklyn
-
Operator: >
- Description: greater than
- URL Encoded Form: %3E
-
Operator: <
- Description: less than
- URL Encoded Form: %3C
-
Operator: >=
- Description: greater than or equal to
- URL Encoded Form: %3E%3D
-
Operator: <=
- Description: less than or equal to
- URL Encoded Form: %3C%3D
-
Operator: =~
- Description: contains a match for a regular expression
- URL Encoded Form: %3D~
- Example that returns results where the city starts with "New":
constraints=city%3D~%5ENew
(%5E is the URL encoded from of the ^ character that anchors a pattern to the beginning of the string.)
-
Operator: !~
- Description: does not contain a match for a regular expression
- URL Encoded Form:
- Example that returns results where the city does not start with "New":
constraints=city!~%5ENew
-
Operator: =@
- Description: contains substring
- URL Encoded Form: %3D@
- Example that returns results where the city contains "York":
constraints=city%3D@York
-
Operator: !@
- Description: Does not contain substring
- URL Encoded Form:
- Example that returns results where the city does not contain "York":
constraints=city!@York
REST: owa_sort=date-,browserType
PHP: 'sort' => 'date-,browserType '
Optional.
Specify the dimensions you wish to sort by. Sorting occurs in the order specified. Appending a "-" operator to the end of the dimension will sort by that dimension descending.
The REST API returns results in standard JSON format.
REST: owa_segment=id::1
Optional.
The segment that you wish to apply to the result set before it is returns and metrics are calculated. Segments can be referred to by "id" or assembled dynamically using the "dynamic" keyword.
Segments referred to by id should be prefixed with the string id::
. Id values are obtained when assembling and saving a segment through the segment builder GUI.
Dynamic segments should be prefixed with the string dynamic::
and can contain a series of dimension constraints. These constraints take the same syntax as normal constraints. Dynamic segments can only be comprised of constraints on dimensions. Constraints on metrics are not allowed in segments.
Result sets contain a number of different parts or sections
This section contains aggregate metrics.
This section contains rows of dimensional data. This section will be empty if no dimensions were specified as part of the request.
This section contains information about the time period requested.
This property contains the number of results per page requested.
na.
This property contains the total number of results returned.
This section contains the labels of the metrics and dimensions requested.
This section contains any errors encountered during the creation of the result set. Request syntax errors appear in this sections.