<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 .xml suffix or ?format=xml

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<MapDataRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Infrastructure.Services.ServiceStackServices.Model">
  <DashboardId>00000000-0000-0000-0000-000000000000</DashboardId>
  <Dimension>Browser</Dimension>
  <Filter>String</Filter>
  <Metrics xmlns:d2p1="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO">
    <d2p1:MetricItemDTO>
      <d2p1:DenominatorMetricName>String</d2p1:DenominatorMetricName>
      <d2p1:DisplayName>String</d2p1:DisplayName>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:NominatorMetricName>String</d2p1:NominatorMetricName>
      <d2p1:ShowInSelector>false</d2p1:ShowInSelector>
      <d2p1:Unit>String</d2p1:Unit>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:MetricItemDTO>
  </Metrics>
  <Region>String</Region>
  <RelatedDashboardId>00000000-0000-0000-0000-000000000000</RelatedDashboardId>
  <SelectedMetric>String</SelectedMetric>
  <SiteId>00000000-0000-0000-0000-000000000000</SiteId>
  <jsEndDate>String</jsEndDate>
  <jsStartDate>String</jsStartDate>
</MapDataRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetDashboardData xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Infrastructure.Services.ServiceStackServices.Model">
  <Controls xmlns:d2p1="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO">
    <d2p1:DashBoardControl>
      <d2p1:ControlType>String</d2p1:ControlType>
      <d2p1:DimensionName>String</d2p1:DimensionName>
      <d2p1:DisplayName>String</d2p1:DisplayName>
      <d2p1:PlaceholderId>String</d2p1:PlaceholderId>
      <d2p1:RelatedDimension xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </d2p1:RelatedDimension>
      <d2p1:Series>
        <d2p1:SingleSerie>
          <d2p1:Batch>false</d2p1:Batch>
          <d2p1:CategoryFormat>String</d2p1:CategoryFormat>
          <d2p1:IsCategory>false</d2p1:IsCategory>
          <d2p1:MainMetric>
            <d2p1:DenominatorMetricName>String</d2p1:DenominatorMetricName>
            <d2p1:DisplayName>String</d2p1:DisplayName>
            <d2p1:Name>String</d2p1:Name>
            <d2p1:NominatorMetricName>String</d2p1:NominatorMetricName>
            <d2p1:ShowInSelector>false</d2p1:ShowInSelector>
            <d2p1:Unit>String</d2p1:Unit>
            <d2p1:Value>0</d2p1:Value>
          </d2p1:MainMetric>
          <d2p1:RelatedDimension>String</d2p1:RelatedDimension>
          <d2p1:SeriesDimensions>
            <d2p1:DimensionItem i:nil="true" />
          </d2p1:SeriesDimensions>
          <d2p1:SeriesName>String</d2p1:SeriesName>
        </d2p1:SingleSerie>
      </d2p1:Series>
      <d2p1:SortAsc>false</d2p1:SortAsc>
      <d2p1:SortbyField>String</d2p1:SortbyField>
      <d2p1:attributes xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringstring>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>String</d4p1:Value>
        </d4p1:KeyValueOfstringstring>
      </d2p1:attributes>
    </d2p1:DashBoardControl>
  </Controls>
  <DateItems xmlns:d2p1="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO">
    <d2p1:KendoItem>
      <d2p1:Dimensions xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringstring>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>String</d4p1:Value>
        </d4p1:KeyValueOfstringstring>
      </d2p1:Dimensions>
      <d2p1:category>String</d2p1:category>
      <d2p1:group>String</d2p1:group>
      <d2p1:tooltip>String</d2p1:tooltip>
      <d2p1:values xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringdouble>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>0</d4p1:Value>
        </d4p1:KeyValueOfstringdouble>
      </d2p1:values>
    </d2p1:KendoItem>
  </DateItems>
  <ErrorMessage>String</ErrorMessage>
  <GroupBy>String</GroupBy>
  <IsDrillDown>false</IsDrillDown>
  <IsMapRequest>false</IsMapRequest>
  <LayoutTemplateName>String</LayoutTemplateName>
  <MapDataTable xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:ArrayOfstring>
      <d2p1:string>String</d2p1:string>
    </d2p1:ArrayOfstring>
  </MapDataTable>
  <MetricNames xmlns:d2p1="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO">
    <d2p1:MetricItemDTO>
      <d2p1:DenominatorMetricName>String</d2p1:DenominatorMetricName>
      <d2p1:DisplayName>String</d2p1:DisplayName>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:NominatorMetricName>String</d2p1:NominatorMetricName>
      <d2p1:ShowInSelector>false</d2p1:ShowInSelector>
      <d2p1:Unit>String</d2p1:Unit>
      <d2p1:Value>0</d2p1:Value>
    </d2p1:MetricItemDTO>
  </MetricNames>
  <NeedsGrouping>false</NeedsGrouping>
  <NonDateItems xmlns:d2p1="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO">
    <d2p1:KendoItem>
      <d2p1:Dimensions xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringstring>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>String</d4p1:Value>
        </d4p1:KeyValueOfstringstring>
      </d2p1:Dimensions>
      <d2p1:category>String</d2p1:category>
      <d2p1:group>String</d2p1:group>
      <d2p1:tooltip>String</d2p1:tooltip>
      <d2p1:values xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfstringdouble>
          <d4p1:Key>String</d4p1:Key>
          <d4p1:Value>0</d4p1:Value>
        </d4p1:KeyValueOfstringdouble>
      </d2p1:values>
    </d2p1:KendoItem>
  </NonDateItems>
  <SeriesSources xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringArrayOfstringty7Ep6D1>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>
        <d2p1:string>String</d2p1:string>
      </d2p1:Value>
    </d2p1:KeyValueOfstringArrayOfstringty7Ep6D1>
  </SeriesSources>
  <StatusCode>0</StatusCode>
  <SuppressMultipleSeries>false</SuppressMultipleSeries>
  <TotalsItem xmlns:d2p1="http://schemas.datacontract.org/2004/07/Telerik.Sitefinity.Analytics.Server.Core.Domain.DTO">
    <d2p1:Dimensions xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Dimensions>
    <d2p1:category>String</d2p1:category>
    <d2p1:group>String</d2p1:group>
    <d2p1:tooltip>String</d2p1:tooltip>
    <d2p1:values xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringdouble>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>0</d3p1:Value>
      </d3p1:KeyValueOfstringdouble>
    </d2p1:values>
  </TotalsItem>
</GetDashboardData>