BackstageClient.reports
BackstageClient.reports in @ticketlayer/backstage.
@ticketlayer/backstage / BackstageClient / reports
reports: {
dashboardCreate: (request: {
accountId?: string;
description?: string;
globalFilters?: {
control: "dateRange" | "select" | "multiselect";
default?: any;
key: string;
label: string;
member?: string;
members?: Record<string, any>;
}[];
layout?: {
h: number;
query?: {
dimensions?: string[];
filters?: {
member: ...;
operator: ...;
values?: ...;
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: ...;
dimension: ...;
granularity?: ...;
}[];
timezone?: string;
};
reportId?: string;
tileId: string;
title?: string;
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
w: number;
x: number;
y: number;
}[];
name: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;
dashboardDelete: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
deleted: boolean;
};
status: "success";
}>;
dashboardGet: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;
dashboardList: (options?: {
accountId?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
dashboards: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
}[];
};
status: "success";
}>;
dashboardUpdate: (id: string, request: {
accountId?: string;
description?: string;
globalFilters?: {
control: "dateRange" | "select" | "multiselect";
default?: any;
key: string;
label: string;
member?: string;
members?: Record<string, any>;
}[];
layout?: {
h: number;
query?: {
dimensions?: string[];
filters?: {
member: ...;
operator: ...;
values?: ...;
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: ...;
dimension: ...;
granularity?: ...;
}[];
timezone?: string;
};
reportId?: string;
tileId: string;
title?: string;
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
w: number;
x: number;
y: number;
}[];
name?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;
inventory: (options?: {
eventId?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
filters: {
[key: string]: unknown;
};
occurrences: {
available: number;
confirmed: number;
eventId: string | null;
held: number;
occurrenceId: string | null;
reserved: number;
sellThroughPct: number;
totalCapacity: number;
utilisationPct: number;
}[];
};
status: "success";
}>;
meta: (requestOptions?: RequestOptions) => Promise<{
data: {
models: {
[key: string]: unknown;
}[];
};
status: "success";
}>;
query: (request: {
query: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
query: {
[key: string]: unknown;
};
rows: {
[key: string]: unknown;
}[];
};
status: "success";
}>;
savedCreate: (request: {
accountId?: string;
description?: string;
name: string;
params?: {
allowed?: string[];
kind: "timeRange" | "groupBy" | "filter" | "compare";
label?: string;
member?: string;
}[];
query: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>;
savedDelete: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
deleted: boolean;
};
status: "success";
}>;
savedGet: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>;
savedList: (options?: {
accountId?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
reports: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
}[];
};
status: "success";
}>;
savedRun: (id: string, request: {
overrides?: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
query: {
[key: string]: unknown;
};
rows: {
[key: string]: unknown;
}[];
};
status: "success";
}>;
savedUpdate: (id: string, request: {
accountId?: string;
description?: string;
name?: string;
params?: {
allowed?: string[];
kind: "timeRange" | "groupBy" | "filter" | "compare";
label?: string;
member?: string;
}[];
query?: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>;
summary: (options?: {
eventId?: string;
from?: string;
to?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
currencies: {
aov: number;
currency: string | null;
discounts: number;
grossRevenue: number;
netToOrganiser: number;
orderCount: number;
platformFees: number;
taxCollected: number;
ticketsSold: number;
}[];
filters: {
eventId?: string;
from?: string;
to?: string;
};
};
status: "success";
}>;
templateInstall: (key: string, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;
templateList: (requestOptions?: RequestOptions) => Promise<{
data: {
templates: {
description: string;
key: string;
name: string;
tileCount: number;
}[];
};
status: "success";
}>;
timeseries: (options?: {
eventId?: string;
from?: string;
granularity?: "month" | "day" | "week";
to?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
filters: {
[key: string]: unknown;
};
granularity: string;
series: {
currency: string | null;
date: string | null;
grossRevenue: number;
ticketsSold: number;
}[];
};
status: "success";
}>;
};Defined in: client.ts:10146
Reports methods
dashboardCreate()#
dashboardCreate: (request: {
accountId?: string;
description?: string;
globalFilters?: {
control: "dateRange" | "select" | "multiselect";
default?: any;
key: string;
label: string;
member?: string;
members?: Record<string, any>;
}[];
layout?: {
h: number;
query?: {
dimensions?: string[];
filters?: {
member: ...;
operator: ...;
values?: ...;
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: ...;
dimension: ...;
granularity?: ...;
}[];
timezone?: string;
};
reportId?: string;
tileId: string;
title?: string;
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
w: number;
x: number;
y: number;
}[];
name: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;Create a dashboard
Parameters#
| Parameter | Type |
|---|---|
request | { accountId?: string; description?: string; globalFilters?: { control: "dateRange" | "select" | "multiselect"; default?: any; key: string; label: string; member?: string; members?: Record<string, any>; }[]; layout?: { h: number; query?: { dimensions?: string[]; filters?: { member: ...; operator: ...; values?: ...; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: ...; dimension: ...; granularity?: ...; }[]; timezone?: string; }; reportId?: string; tileId: string; title?: string; viz?: { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; }; w: number; x: number; y: number; }[]; name: string; } |
request.accountId? | string |
request.description? | string |
request.globalFilters? | { control: "dateRange" | "select" | "multiselect"; default?: any; key: string; label: string; member?: string; members?: Record<string, any>; }[] |
request.layout? | { h: number; query?: { dimensions?: string[]; filters?: { member: ...; operator: ...; values?: ...; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: ...; dimension: ...; granularity?: ...; }[]; timezone?: string; }; reportId?: string; tileId: string; title?: string; viz?: { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; }; w: number; x: number; y: number; }[] |
request.name? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>
Operation Id#
createDashboard
dashboardDelete()#
dashboardDelete: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
deleted: boolean;
};
status: "success";
}>;Delete a dashboard
Parameters#
| Parameter | Type |
|---|---|
id | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
deleted: boolean;
};
status: "success";
}>
Operation Id#
deleteDashboard
dashboardGet()#
dashboardGet: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;Get a dashboard
Parameters#
| Parameter | Type |
|---|---|
id | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>
Operation Id#
getDashboard
dashboardList()#
dashboardList: (options?: {
accountId?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
dashboards: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
}[];
};
status: "success";
}>;List dashboards
Parameters#
| Parameter | Type |
|---|---|
options? | { accountId?: string; } |
options.accountId? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
dashboards: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
}[];
};
status: "success";
}>
Operation Id#
listDashboards
dashboardUpdate()#
dashboardUpdate: (id: string, request: {
accountId?: string;
description?: string;
globalFilters?: {
control: "dateRange" | "select" | "multiselect";
default?: any;
key: string;
label: string;
member?: string;
members?: Record<string, any>;
}[];
layout?: {
h: number;
query?: {
dimensions?: string[];
filters?: {
member: ...;
operator: ...;
values?: ...;
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: ...;
dimension: ...;
granularity?: ...;
}[];
timezone?: string;
};
reportId?: string;
tileId: string;
title?: string;
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
w: number;
x: number;
y: number;
}[];
name?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;Update a dashboard
Parameters#
| Parameter | Type |
|---|---|
id | string |
request | { accountId?: string; description?: string; globalFilters?: { control: "dateRange" | "select" | "multiselect"; default?: any; key: string; label: string; member?: string; members?: Record<string, any>; }[]; layout?: { h: number; query?: { dimensions?: string[]; filters?: { member: ...; operator: ...; values?: ...; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: ...; dimension: ...; granularity?: ...; }[]; timezone?: string; }; reportId?: string; tileId: string; title?: string; viz?: { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; }; w: number; x: number; y: number; }[]; name?: string; } |
request.accountId? | string |
request.description? | string |
request.globalFilters? | { control: "dateRange" | "select" | "multiselect"; default?: any; key: string; label: string; member?: string; members?: Record<string, any>; }[] |
request.layout? | { h: number; query?: { dimensions?: string[]; filters?: { member: ...; operator: ...; values?: ...; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: ...; dimension: ...; granularity?: ...; }[]; timezone?: string; }; reportId?: string; tileId: string; title?: string; viz?: { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; }; w: number; x: number; y: number; }[] |
request.name? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>
Operation Id#
updateDashboard
inventory()#
inventory: (options?: {
eventId?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
filters: {
[key: string]: unknown;
};
occurrences: {
available: number;
confirmed: number;
eventId: string | null;
held: number;
occurrenceId: string | null;
reserved: number;
sellThroughPct: number;
totalCapacity: number;
utilisationPct: number;
}[];
};
status: "success";
}>;Inventory sell-through Current sell-through and utilisation per occurrence.
Parameters#
| Parameter | Type |
|---|---|
options? | { eventId?: string; } |
options.eventId? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
filters: {
[key: string]: unknown;
};
occurrences: {
available: number;
confirmed: number;
eventId: string | null;
held: number;
occurrenceId: string | null;
reserved: number;
sellThroughPct: number;
totalCapacity: number;
utilisationPct: number;
}[];
};
status: "success";
}>
Operation Id#
getReportsInventory
meta()#
meta: (requestOptions?: RequestOptions) => Promise<{
data: {
models: {
[key: string]: unknown;
}[];
};
status: "success";
}>;Semantic model The semantic model (data models, measures, dimensions) the caller may explore - drives the explorer pickers and grounds NL queries.
Parameters#
| Parameter | Type |
|---|---|
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
models: {
[key: string]: unknown;
}[];
};
status: "success";
}>
Operation Id#
getReportsMeta
query()#
query: (request: {
query: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
query: {
[key: string]: unknown;
};
rows: {
[key: string]: unknown;
}[];
};
status: "success";
}>;Run an ad-hoc query Execute an arbitrary (validated + guarded) Insights query. Tenant- and account-scoped via the analytics principal; data models/members restricted and cost capped.
Parameters#
| Parameter | Type |
|---|---|
request | { query: { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; }; } |
request.query | { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; } |
request.query.dimensions? | string[] |
request.query.filters? | { member: string; operator: string; values?: string[]; }[] |
request.query.limit? | number |
request.query.measures? | string[] |
request.query.offset? | number |
request.query.order? | any |
request.query.segments? | string[] |
request.query.timeDimensions? | { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[] |
request.query.timezone? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
query: {
[key: string]: unknown;
};
rows: {
[key: string]: unknown;
}[];
};
status: "success";
}>
Operation Id#
runReportsQuery
savedCreate()#
savedCreate: (request: {
accountId?: string;
description?: string;
name: string;
params?: {
allowed?: string[];
kind: "timeRange" | "groupBy" | "filter" | "compare";
label?: string;
member?: string;
}[];
query: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>;Create a saved report Persist a cube query + viz + slicer params as a reusable report.
Parameters#
| Parameter | Type |
|---|---|
request | { accountId?: string; description?: string; name: string; params?: { allowed?: string[]; kind: "timeRange" | "groupBy" | "filter" | "compare"; label?: string; member?: string; }[]; query: { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; }; viz?: { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; }; } |
request.accountId? | string |
request.description? | string |
request.name? | string |
request.params? | { allowed?: string[]; kind: "timeRange" | "groupBy" | "filter" | "compare"; label?: string; member?: string; }[] |
request.query? | { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; } |
request.query.dimensions? | string[] |
request.query.filters? | { member: string; operator: string; values?: string[]; }[] |
request.query.limit? | number |
request.query.measures? | string[] |
request.query.offset? | number |
request.query.order? | any |
request.query.segments? | string[] |
request.query.timeDimensions? | { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[] |
request.query.timezone? | string |
request.viz? | { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; } |
request.viz.series? | string |
request.viz.type? | "bar" | "table" | "line" | "area" | "pie" | "kpi" |
request.viz.x? | string |
request.viz.y? | any |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>
Operation Id#
createSavedReport
savedDelete()#
savedDelete: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
deleted: boolean;
};
status: "success";
}>;Delete a saved report
Parameters#
| Parameter | Type |
|---|---|
id | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
deleted: boolean;
};
status: "success";
}>
Operation Id#
deleteSavedReport
savedGet()#
savedGet: (id: string, requestOptions?: RequestOptions) => Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>;Get a saved report
Parameters#
| Parameter | Type |
|---|---|
id | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>
Operation Id#
getSavedReport
savedList()#
savedList: (options?: {
accountId?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
reports: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
}[];
};
status: "success";
}>;List saved reports List the saved reports the caller may see in their organisation.
Parameters#
| Parameter | Type |
|---|---|
options? | { accountId?: string; } |
options.accountId? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
reports: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
}[];
};
status: "success";
}>
Operation Id#
listSavedReports
savedRun()#
savedRun: (id: string, request: {
overrides?: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
query: {
[key: string]: unknown;
};
rows: {
[key: string]: unknown;
}[];
};
status: "success";
}>;Run a saved report Execute a saved report, optionally merging slicer overrides onto its base query (re-validated + re-scoped).
Parameters#
| Parameter | Type |
|---|---|
id | string |
request | { overrides?: { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; }; } |
request.overrides? | { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; } |
request.overrides.dimensions? | string[] |
request.overrides.filters? | { member: string; operator: string; values?: string[]; }[] |
request.overrides.limit? | number |
request.overrides.measures? | string[] |
request.overrides.offset? | number |
request.overrides.order? | any |
request.overrides.segments? | string[] |
request.overrides.timeDimensions? | { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[] |
request.overrides.timezone? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
query: {
[key: string]: unknown;
};
rows: {
[key: string]: unknown;
}[];
};
status: "success";
}>
Operation Id#
runSavedReport
savedUpdate()#
savedUpdate: (id: string, request: {
accountId?: string;
description?: string;
name?: string;
params?: {
allowed?: string[];
kind: "timeRange" | "groupBy" | "filter" | "compare";
label?: string;
member?: string;
}[];
query?: {
dimensions?: string[];
filters?: {
member: string;
operator: string;
values?: string[];
}[];
limit?: number;
measures?: string[];
offset?: number;
order?: any;
segments?: string[];
timeDimensions?: {
dateRange?: any;
dimension: string;
granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter";
}[];
timezone?: string;
};
viz?: {
series?: string;
type: "bar" | "table" | "line" | "area" | "pie" | "kpi";
x?: string;
y?: any;
};
}, requestOptions?: RequestOptions) => Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>;Update a saved report
Parameters#
| Parameter | Type |
|---|---|
id | string |
request | { accountId?: string; description?: string; name?: string; params?: { allowed?: string[]; kind: "timeRange" | "groupBy" | "filter" | "compare"; label?: string; member?: string; }[]; query?: { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; }; viz?: { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; }; } |
request.accountId? | string |
request.description? | string |
request.name? | string |
request.params? | { allowed?: string[]; kind: "timeRange" | "groupBy" | "filter" | "compare"; label?: string; member?: string; }[] |
request.query? | { dimensions?: string[]; filters?: { member: string; operator: string; values?: string[]; }[]; limit?: number; measures?: string[]; offset?: number; order?: any; segments?: string[]; timeDimensions?: { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[]; timezone?: string; } |
request.query.dimensions? | string[] |
request.query.filters? | { member: string; operator: string; values?: string[]; }[] |
request.query.limit? | number |
request.query.measures? | string[] |
request.query.offset? | number |
request.query.order? | any |
request.query.segments? | string[] |
request.query.timeDimensions? | { dateRange?: any; dimension: string; granularity?: "month" | "year" | "day" | "week" | "hour" | "quarter"; }[] |
request.query.timezone? | string |
request.viz? | { series?: string; type: "bar" | "table" | "line" | "area" | "pie" | "kpi"; x?: string; y?: any; } |
request.viz.series? | string |
request.viz.type? | "bar" | "table" | "line" | "area" | "pie" | "kpi" |
request.viz.x? | string |
request.viz.y? | any |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
report: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
id: string;
name: string;
organisationId: string;
params: {
[key: string]: unknown;
}[];
query: {
[key: string]: unknown;
};
updatedAt: string;
viz: {
[key: string]: unknown;
};
};
};
status: "success";
}>
Operation Id#
updateSavedReport
summary()#
summary: (options?: {
eventId?: string;
from?: string;
to?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
currencies: {
aov: number;
currency: string | null;
discounts: number;
grossRevenue: number;
netToOrganiser: number;
orderCount: number;
platformFees: number;
taxCollected: number;
ticketsSold: number;
}[];
filters: {
eventId?: string;
from?: string;
to?: string;
};
};
status: "success";
}>;Sales summary KPIs Headline realised-sales KPIs (gross, net-to-organiser, fees, tax, tickets, AOV) per currency. Money is integer minor units. Tenant- and account-scoped via the analytics principal.
Parameters#
| Parameter | Type |
|---|---|
options? | { eventId?: string; from?: string; to?: string; } |
options.eventId? | string |
options.from? | string |
options.to? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
currencies: {
aov: number;
currency: string | null;
discounts: number;
grossRevenue: number;
netToOrganiser: number;
orderCount: number;
platformFees: number;
taxCollected: number;
ticketsSold: number;
}[];
filters: {
eventId?: string;
from?: string;
to?: string;
};
};
status: "success";
}>
Operation Id#
getReportsSummary
templateInstall()#
templateInstall: (key: string, requestOptions?: RequestOptions) => Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>;Install a template Clone a standard template into the org: creates its saved reports + a dashboard the org then owns.
Parameters#
| Parameter | Type |
|---|---|
key | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
dashboard: {
accountId: string | null;
createdAt: string;
createdBy: string | null;
description: string | null;
globalFilters: {
[key: string]: unknown;
}[];
id: string;
isSystem: boolean;
layout: {
[key: string]: unknown;
}[];
name: string;
organisationId: string;
updatedAt: string;
};
};
status: "success";
}>
Operation Id#
installReportTemplate
templateList()#
templateList: (requestOptions?: RequestOptions) => Promise<{
data: {
templates: {
description: string;
key: string;
name: string;
tileCount: number;
}[];
};
status: "success";
}>;List standard templates The standard library of report/dashboard templates that can be installed.
Parameters#
| Parameter | Type |
|---|---|
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
templates: {
description: string;
key: string;
name: string;
tileCount: number;
}[];
};
status: "success";
}>
Operation Id#
listReportTemplates
timeseries()#
timeseries: (options?: {
eventId?: string;
from?: string;
granularity?: "month" | "day" | "week";
to?: string;
}, requestOptions?: RequestOptions) => Promise<{
data: {
filters: {
[key: string]: unknown;
};
granularity: string;
series: {
currency: string | null;
date: string | null;
grossRevenue: number;
ticketsSold: number;
}[];
};
status: "success";
}>;Sales over time Gross revenue and tickets sold bucketed by day/week/month, per currency.
Parameters#
| Parameter | Type |
|---|---|
options? | { eventId?: string; from?: string; granularity?: "month" | "day" | "week"; to?: string; } |
options.eventId? | string |
options.from? | string |
options.granularity? | "month" | "day" | "week" |
options.to? | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
data: {
filters: {
[key: string]: unknown;
};
granularity: string;
series: {
currency: string | null;
date: string | null;
grossRevenue: number;
ticketsSold: number;
}[];
};
status: "success";
}>
Operation Id#
getReportsTimeseries