<back to all web services

MapDataRequest

The following routes are available for this service:
All Verbs/RestApi/Sitefinity/Analytics/GetMapData
All Verbs/RestApi/GetMapData
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Telerik.Sitefinity.Analytics.Server.Infrastructure.Services.ServiceStackServices.Model;
using Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO;
using Telerik.Sitefinity.Analytics.Server.Core.Domain.Model;

namespace Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO
{
    public partial class DashBoardControl
    {
        public DashBoardControl()
        {
            attributes = new Dictionary<string, string>{};
            Series = new List<SingleSerie>{};
            RelatedDimension = new List<string>{};
        }

        public virtual string ControlType { get; set; }
        public virtual Dictionary<string, string> attributes { get; set; }
        public virtual string PlaceholderId { get; set; }
        public virtual string DisplayName { get; set; }
        public virtual List<SingleSerie> Series { get; set; }
        public virtual string DimensionName { get; set; }
        public virtual List<string> RelatedDimension { get; set; }
        public virtual string SortbyField { get; set; }
        public virtual bool SortAsc { get; set; }
    }

    [DataContract]
    public partial class DimensionItem
    {
        [DataMember]
        public virtual string Value { get; set; }

        [DataMember]
        public virtual string Name { get; set; }
    }

    public partial class KendoItem
    {
        public KendoItem()
        {
            values = new Dictionary<string, double>{};
            Dimensions = new Dictionary<string, string>{};
        }

        public virtual string category { get; set; }
        public virtual Dictionary<string, double> values { get; set; }
        public virtual string group { get; set; }
        public virtual string tooltip { get; set; }
        public virtual Dictionary<string, string> Dimensions { get; set; }
    }

    public partial class MetricItemDTO
    {
        public virtual string Name { get; set; }
        public virtual string DisplayName { get; set; }
        public virtual double Value { get; set; }
        public virtual string Unit { get; set; }
        public virtual string DenominatorMetricName { get; set; }
        public virtual string NominatorMetricName { get; set; }
        public virtual bool ShowInSelector { get; set; }
    }

    public partial class SingleSerie
    {
        public SingleSerie()
        {
            SeriesDimensions = new List<DimensionItem>{};
        }

        public virtual MetricItemDTO MainMetric { get; set; }
        public virtual string CategoryFormat { get; set; }
        public virtual bool Batch { get; set; }
        public virtual bool IsCategory { get; set; }
        public virtual string SeriesName { get; set; }
        public virtual List<DimensionItem> SeriesDimensions { get; set; }
        public virtual string RelatedDimension { get; set; }
    }

}

namespace Telerik.Sitefinity.Analytics.Server.Core.Domain.Model
{
    public enum Dimension
    {
        Browser,
        BrowserVersion,
        City,
        Continent,
        VisitCount,
        Country,
        Date,
        Day,
        DaysSinceLastSession,
        FlashVersion,
        Hostname,
        Hour,
        DeviceCategory,
        JavaEnabled,
        Language,
        Latitude,
        Longitude,
        Month,
        NetworkDomain,
        NetworkLocation,
        PageDepth,
        OperatingSystem,
        OperatingSystemVersion,
        Region,
        ScreenColors,
        ScreenResolution,
        SubContinent,
        UserDefinedValue,
        UserType,
        Week,
        Year,
        AdContent,
        AdGroup,
        AdSlot,
        Campaign,
        Keyword,
        Medium,
        ReferralPath,
        Source,
        ExitPagePath,
        LandingPagePath,
        PagePath,
        PageTitle,
        Affiliation,
        DaysToTransaction,
        ProductCategory,
        ProductName,
        ProductSku,
        TransactionId,
        SearchCategory,
        SearchDestinationPage,
        SearchKeyword,
        SearchKeywordRefinement,
        SearchStartPage,
        SearchUsed,
        EventCategory,
        EventAction,
        EventLabel,
    }

}

namespace Telerik.Sitefinity.Analytics.Server.Infrastructure.Services.ServiceStackServices.Model
{
    public partial class GetDashboardData
    {
        public GetDashboardData()
        {
            Controls = new List<DashBoardControl>{};
            MetricNames = new List<MetricItemDTO>{};
            DateItems = new List<KendoItem>{};
            NonDateItems = new List<KendoItem>{};
            MapDataTable = new string[]{};
            SeriesSources = new Dictionary<string, List<String>>{};
        }

        public virtual List<DashBoardControl> Controls { get; set; }
        public virtual string LayoutTemplateName { get; set; }
        public virtual string GroupBy { get; set; }
        public virtual List<MetricItemDTO> MetricNames { get; set; }
        public virtual string ErrorMessage { get; set; }
        public virtual bool NeedsGrouping { get; set; }
        public virtual bool IsDrillDown { get; set; }
        public virtual List<KendoItem> DateItems { get; set; }
        public virtual List<KendoItem> NonDateItems { get; set; }
        public virtual KendoItem TotalsItem { get; set; }
        public virtual string[] MapDataTable { get; set; }
        public virtual bool IsMapRequest { get; set; }
        public virtual Dictionary<string, List<String>> SeriesSources { get; set; }
        public virtual int StatusCode { get; set; }
        public virtual bool SuppressMultipleSeries { get; set; }
    }

    public partial class MapDataRequest
    {
        public MapDataRequest()
        {
            Metrics = new List<MetricItemDTO>{};
        }

        public virtual Guid DashboardId { get; set; }
        public virtual Guid RelatedDashboardId { get; set; }
        public virtual List<MetricItemDTO> Metrics { get; set; }
        public virtual string Filter { get; set; }
        public virtual Dimension Dimension { get; set; }
        public virtual string jsStartDate { get; set; }
        public virtual string jsEndDate { get; set; }
        public virtual string SelectedMetric { get; set; }
        public virtual string Region { get; set; }
        public virtual Guid SiteId { get; set; }
        public virtual DateTime StartDate { get; set; }
        public virtual DateTime EndDate { get; set; }
    }

}

C# MapDataRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /RestApi/Sitefinity/Analytics/GetMapData HTTP/1.1 
Host: www.asg.com.au 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{Unable to show example output for type 'MapDataRequest' using the custom 'csv' filter}One or more errors occurred.
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Controls":[{"ControlType":"String","attributes":{"String":"String"},"PlaceholderId":"String","DisplayName":"String","Series":[{"MainMetric":{"Name":"String","DisplayName":"String","Value":0,"Unit":"String","DenominatorMetricName":"String","NominatorMetricName":"String","ShowInSelector":false},"CategoryFormat":"String","Batch":false,"IsCategory":false,"SeriesName":"String","SeriesDimensions":[{}],"RelatedDimension":"String"}],"DimensionName":"String","RelatedDimension":["String"],"SortbyField":"String","SortAsc":false}],"LayoutTemplateName":"String","GroupBy":"String","MetricNames":[{"Name":"String","DisplayName":"String","Value":0,"Unit":"String","DenominatorMetricName":"String","NominatorMetricName":"String","ShowInSelector":false}],"ErrorMessage":"String","NeedsGrouping":false,"IsDrillDown":false,"DateItems":[{"category":"String","values":{"String":0},"group":"String","tooltip":"String","Dimensions":{"String":"String"}}],"NonDateItems":[{"category":"String","values":{"String":0},"group":"String","tooltip":"String","Dimensions":{"String":"String"}}],"TotalsItem":{"category":"String","values":{"String":0},"group":"String","tooltip":"String","Dimensions":{"String":"String"}},"MapDataTable":[["String"]],"IsMapRequest":false,"SeriesSources":{"String":["String"]},"StatusCode":0,"SuppressMultipleSeries":false}