<back to all web services

MapDataRequest

The following routes are available for this service:
All Verbs/RestApi/Sitefinity/Analytics/GetMapData
All Verbs/RestApi/GetMapData

export class MetricItemDTO
{
    public Name: string;
    public DisplayName: string;
    public Value: number;
    public Unit: string;
    public DenominatorMetricName: string;
    public NominatorMetricName: string;
    public ShowInSelector: boolean;

    public constructor(init?: Partial<MetricItemDTO>) { (Object as any).assign(this, init); }
}

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

export class MapDataRequest
{
    public DashboardId: string;
    public RelatedDashboardId: string;
    public Metrics: MetricItemDTO[];
    public Filter: string;
    public Dimension: Dimension;
    public jsStartDate: string;
    public jsEndDate: string;
    public SelectedMetric: string;
    public Region: string;
    public SiteId: string;
    public StartDate: string;
    public EndDate: string;

    public constructor(init?: Partial<MapDataRequest>) { (Object as any).assign(this, init); }
}

// @DataContract
export class DimensionItem
{
    // @DataMember
    public Value: string;

    // @DataMember
    public Name: string;

    public constructor(init?: Partial<DimensionItem>) { (Object as any).assign(this, init); }
}

export class SingleSerie
{
    public MainMetric: MetricItemDTO;
    public CategoryFormat: string;
    public Batch: boolean;
    public IsCategory: boolean;
    public SeriesName: string;
    public SeriesDimensions: DimensionItem[];
    public RelatedDimension: string;

    public constructor(init?: Partial<SingleSerie>) { (Object as any).assign(this, init); }
}

export class DashBoardControl
{
    public ControlType: string;
    public attributes: { [index: string]: string; };
    public PlaceholderId: string;
    public DisplayName: string;
    public Series: SingleSerie[];
    public DimensionName: string;
    public RelatedDimension: string[];
    public SortbyField: string;
    public SortAsc: boolean;

    public constructor(init?: Partial<DashBoardControl>) { (Object as any).assign(this, init); }
}

export class KendoItem
{
    public category: string;
    public values: { [index: string]: number; };
    public group: string;
    public tooltip: string;
    public Dimensions: { [index: string]: string; };

    public constructor(init?: Partial<KendoItem>) { (Object as any).assign(this, init); }
}

export class GetDashboardData
{
    public Controls: DashBoardControl[];
    public LayoutTemplateName: string;
    public GroupBy: string;
    public MetricNames: MetricItemDTO[];
    public ErrorMessage: string;
    public NeedsGrouping: boolean;
    public IsDrillDown: boolean;
    public DateItems: KendoItem[];
    public NonDateItems: KendoItem[];
    public TotalsItem: KendoItem;
    public MapDataTable: string[][];
    public IsMapRequest: boolean;
    public SeriesSources: { [index: string]: string[]; };
    public StatusCode: number;
    public SuppressMultipleSeries: boolean;

    public constructor(init?: Partial<GetDashboardData>) { (Object as any).assign(this, init); }
}

TypeScript MapDataRequest DTOs

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

HTTP + OTHER

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/jsonl
Content-Type: text/jsonl
Content-Length: length

{Unable to show example output for type 'MapDataRequest' using the custom 'other' filter}One or more errors occurred.
HTTP/1.1 200 OK
Content-Type: text/jsonl
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}