Skip to main content

Dashboard API

API to store the dashboard configuration for the epilot 360 dashboard

Quick Startโ€‹

# List available operations
epilot dashboard

# Call an operation
epilot dashboard listDashboards

Common Flagsโ€‹

FlagDescription
-p key=valueSet a named parameter
-d '{...}'Request body JSON
-H 'Key: Value'Custom header
-t, --token <token>Bearer token for authentication
--profile <name>Use a named profile
-s, --server <url>Override server base URL
-i, --includeInclude response headers in output
--jsonOutput raw JSON (no formatting)
-v, --verboseVerbose output (show request details)
--jsonata <expr>JSONata expression to transform response
--definition <file>Override OpenAPI spec file/URL
--guidedPrompt for all parameters interactively
--no-interactiveDisable interactive prompts

Operationsโ€‹

Dashboards

Visualisations

Examples

  • listAvailableExamples โ€” Returns list of available exampless for visualisations to configure new dashboard tiles

listDashboardsโ€‹

List dashboards available to the user

GET /v1/dashboard/dashboards

Sample Call

epilot dashboard listDashboards

With JSONata filter:

epilot dashboard listDashboards --jsonata 'results[0]'
Sample Response
{
"results": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}
]
}

createDashboardโ€‹

Create new dashboard

POST /v1/dashboard/dashboards

Request Body

Sample Call

epilot dashboard createDashboard

With request body:

epilot dashboard createDashboard \
-d '{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}'

Using stdin pipe:

cat body.json | epilot dashboard createDashboard

With JSONata filter:

epilot dashboard createDashboard --jsonata 'id'
Sample Response
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}

getDashboardโ€‹

Get dashboard by ID

GET /v1/dashboard/dashboards/{id}

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes

Sample Call

epilot dashboard getDashboard \
-p id=3fa85f64-5717-4562-b3fc-2c963f66afa6

Using positional args for path parameters:

epilot dashboard getDashboard 3fa85f64-5717-4562-b3fc-2c963f66afa6

With JSONata filter:

epilot dashboard getDashboard -p id=3fa85f64-5717-4562-b3fc-2c963f66afa6 --jsonata 'id'
Sample Response
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}

putDashboardโ€‹

Update a dashboard by ID

PUT /v1/dashboard/dashboards/{id}

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes

Request Body

Sample Call

epilot dashboard putDashboard \
-p id=3fa85f64-5717-4562-b3fc-2c963f66afa6

With request body:

epilot dashboard putDashboard \
-p id=3fa85f64-5717-4562-b3fc-2c963f66afa6 \
-d '{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}'

Using positional args for path parameters:

epilot dashboard putDashboard 3fa85f64-5717-4562-b3fc-2c963f66afa6

Using stdin pipe:

cat body.json | epilot dashboard putDashboard -p id=3fa85f64-5717-4562-b3fc-2c963f66afa6

With JSONata filter:

epilot dashboard putDashboard -p id=3fa85f64-5717-4562-b3fc-2c963f66afa6 --jsonata 'id'
Sample Response
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}

deleteDashboardโ€‹

Delete a dashboard by ID

DELETE /v1/dashboard/dashboards/{id}

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes

Sample Call

epilot dashboard deleteDashboard \
-p id=3fa85f64-5717-4562-b3fc-2c963f66afa6

Using positional args for path parameters:

epilot dashboard deleteDashboard 3fa85f64-5717-4562-b3fc-2c963f66afa6

With JSONata filter:

epilot dashboard deleteDashboard -p id=3fa85f64-5717-4562-b3fc-2c963f66afa6 --jsonata 'id'
Sample Response
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Employee Dashboard",
"tiles": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"coordinates": {},
"visualisation": "timechart",
"visualisation_config": {
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"filters": [
{
"operation": ["createEntity"]
},
{
"entity_schema": ["opportunity"]
}
],
"dimensions": [
{
"time_with_granularity": "month"
},
{
"entity_attribute": "source.title"
}
]
},
"options": {
"type": "line"
}
}
}
]
}

listAvailableVisualisationsโ€‹

Returns list of available Visualisations to configure new dashboard tiles

GET /v1/dashboard/visualisations

Sample Call

epilot dashboard listAvailableVisualisations

With JSONata filter:

epilot dashboard listAvailableVisualisations --jsonata 'results[0]'
Sample Response
{
"results": [
{
"visualisation": "timechart",
"title": "Time Series Visualisation",
"description": "Visualise your metrics with respect to time series",
"package_name": "@epilot360/highcharts"
},
{
"visualisation": "kpi",
"title": "KPI Visualisation",
"description": "Visualise your key performance indicators",
"package_name": "@epilot360/kpi"
}
]
}

listAvailableExamplesโ€‹

Returns list of available exampless for visualisations to configure new dashboard tiles

GET /v1/dashboard/examples

Sample Call

epilot dashboard listAvailableExamples

With JSONata filter:

epilot dashboard listAvailableExamples --jsonata 'results[0]'
Sample Response
{
"results": [
{
"id": "e4af1297-1fd6-440f-9846-f475f580d40f",
"title": "Number of opportunities created by journeys every month",
"visualisation": "timechart",
"query": {
"dataset": "entity_operations",
"measure": "count_operations",
"dimensions": [
{
"time_with_granularity": "year-month"
}
],
"filters": [
{
"entity_schema": "opportunity"
}
]
}
}
]
}