NOTE: This API is only available as a part of the Data Export Pack
Our Data Export feature is a powerful tool that allows you to extract the data you're capturing in FullStory and apply it to your specific business needs. You can read more about what's included with Data Export here.
As a feature of Data Export, we provide a secure server side API to download data bundles programatically.
The API is served via two simple endpoints. The first is for discovering what files are available to retrieve (LIST) and the second is for retrieval of the file (GET).
All requests must supply the required API token in the form of a custom request header:
'Authorization': 'Basic [YOUR API TOKEN]'
Additionally, any parameters can be provided in one of two ways. If a GET request is made, then parameters should simply be specified as URL query params. However, if a POST request is made, then parameters should be specified as JSON in the POST body.
https://export.fullstory.com/api/v1/export/list
List endpoint returns a JSON list of completed data export bundles. Each result provides a beginning and end timestamp of the data contained within the export (in unix seconds) as well as the unique ID of the bundle. The parameter to this endpoint is:
Param Name (required) | Type | Description |
start | int | The timestamp at which to start searching for results. Use Unix seconds (seconds since Epoch). |
Calling this endpoint will return a list of the first 20 data export bundles whose end time is after the given start parameter (sorted from oldest to newest). In general, periodically calling this endpoint with the timestamp of your most recently downloaded bundle will ensure that your system is aware of all finished bundles. If you need to download more than 20 bundles, then simply repeat the call using the timestamp of the last bundle in the returned list.
https://export.fullstory.com/api/v1/export/get
Get endpoint allows you to download a specific data export bundle given its ID. Our servers will respond with the bytes composing a gzipped JSON document of the request data. The parameter to this endpoint is:
Param Name (required) | Type | Description |
id | int | The id of the data export bundle to download, which was found from the response to a prior LIST request. |
If your client obeys the "Content-Disposition" header, then the downloaded file will automatically be called DataExport.json.gz. Otherwise, simply ensure that the response is treated as a gzip.
Here's a quick example of the endpoints and associated rules in action.
curl -H "Authorization: Basic YOUR_API_KEY" https://export.fullstory.com/api/v1/export/list?start=1448064000
{"exports": [{ "Start": 1447984800, "Stop": 1448071200, "ID": 123456789 },{ "Start": 1448071200, "Stop": 1448157600, "ID": 987654321 },{ "Start": 1448157600, "Stop": 1448244000, "ID": 456789123, }] }
Using this list of the data export bundles available for download, you can begin making calls of the form:
curl -O -J -H "Authorization: Basic YOUR_API_KEY" https://export.fullstory.com/api/v1/export/get?id=123456789
A file named DataExport.json.gz
Note: the timestamps on our REST API response are in GMT. However, directly searching through the FullStory app uses your local time. Please keep this in mind if you see differing results.