Skip to main content

Lightdash API (0.1340.0)

Open API documentation for all public Lightdash API endpoints. # Authentication Before you get started, you might need to create a Personal Access Token to authenticate via the API. You can create a token by following this guide: https://docs.lightdash.com/references/personal_tokens

My Account

These routes allow users to manage their own user account.

GetAuthenticatedUser

Get authenticated user

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

RegisterUser

Register user

Request Body schema: application/json
required
Any of
password
required
string
lastName
required
string
firstName
required
string
inviteCode
required
string

Responses

Request samples

Content type
application/json
Example
{
  • "password": "string",
  • "lastName": "string",
  • "firstName": "string",
  • "inviteCode": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

CreateEmailOneTimePasscode

Create a new one-time passcode for the current user's primary email. The user will receive an email with the passcode.

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

GetEmailVerificationStatus

Get the verification status for the current user's primary email

query Parameters
passcode
string

the one-time passcode sent to the user's primary email

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

ListMyAvailableOrganizations

List the organizations that the current user can join. This is based on the user's primary email domain and the organization's allowed email domains.

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

JoinOrganization

Add the current user to an organization that accepts users with a verified email domain. This will fail if the organization email domain does not match the user's primary email domain.

path Parameters
organizationUuid
required
string

the uuid of the organization to join

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

DeleteMe

Delete user

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

getWarehouseCredentials

Get user warehouse credentials

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

createWarehouseCredentials

Create user warehouse credentials

Request Body schema: application/json
required
required
Pick_CreateRedshiftCredentials.type-or-user-or-password_ (object) or Pick_CreatePostgresCredentials.type-or-user-or-password_ (object) or Pick_CreateSnowflakeCredentials.type-or-user-or-password_ (object) or Pick_CreateTrinoCredentials.type-or-user-or-password_ (object) or Pick_CreateBigqueryCredentials.type-or-keyfileContents_ (object) or Pick_CreateDatabricksCredentials.type-or-personalAccessToken_ (object)
name
required
string

Responses

Request samples

Content type
application/json
{
  • "credentials": {
    },
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

updateWarehouseCredentials

Update user warehouse credentials

path Parameters
uuid
required
string
Request Body schema: application/json
required
required
Pick_CreateRedshiftCredentials.type-or-user-or-password_ (object) or Pick_CreatePostgresCredentials.type-or-user-or-password_ (object) or Pick_CreateSnowflakeCredentials.type-or-user-or-password_ (object) or Pick_CreateTrinoCredentials.type-or-user-or-password_ (object) or Pick_CreateBigqueryCredentials.type-or-keyfileContents_ (object) or Pick_CreateDatabricksCredentials.type-or-personalAccessToken_ (object)
name
required
string

Responses

Request samples

Content type
application/json
{
  • "credentials": {
    },
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

deleteWarehouseCredentials

Delete user warehouse credentials

path Parameters
uuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

getLoginOptions

Get login options

query Parameters
email
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

Organizations

Each user is a member of a single organization. These routes allow users to manage their organization. Most actions are only available to admin users.

GetMyOrganization

Get the current user's organization

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

CreateOrganization

Creates a new organization, the current user becomes the Admin of the new organization. This is only available to users that are not already in an organization.

Request Body schema: application/json
required

the new organization settings

name
required
string

The name of the organization

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

UpdateMyOrganization

Update the current user's organization

Request Body schema: application/json
required

the new organization settings

name
string

The name of the organization

chartColors
Array of strings

The default color palette for all projects in the organization

defaultProjectUuid
string

The project a user sees when they first log in to the organization

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "chartColors": [
    ],
  • "defaultProjectUuid": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

DeleteMyOrganization

Deletes an organization and all users inside that organization

path Parameters
organizationUuid
required
string

the uuid of the organization to delete

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

ListOrganizationProjects

Gets all projects of the current user's organization

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

ListOrganizationMembers

Gets all the members of the current user's organization

query Parameters
includeGroups
number <double>
pageSize
number <double>
page
number <double>
searchQuery
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

GetOrganizationMemberByUuid

Get the member profile for a user in the current user's organization by uuid

path Parameters
userUuid
required
string <uuid> (UUID) [0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}...

the uuid of the user

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

UpdateOrganizationMember

Updates the membership profile for a user in the current user's organization

path Parameters
userUuid
required
string

the uuid of the user to update

Request Body schema: application/json
required

the new membership profile

role
required
string (OrganizationMemberRole)
Enum: "member" "viewer" "interactive_viewer" "editor" "developer" "admin"

Responses

Request samples

Content type
application/json
{
  • "role": "member"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

DeleteOrganizationMember

Deletes a user from the current user's organization

path Parameters
userUuid
required
string

the uuid of the user to delete

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

ListOrganizationEmailDomains

Gets the allowed email domains for the current user's organization

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

UpdateOrganizationEmailDomains

Updates the allowed email domains for the current user's organization

Request Body schema: application/json
required

the new allowed email domains

required
OrganizationMemberRole.EDITOR (string) or OrganizationMemberRole.INTERACTIVE_VIEWER (string) or OrganizationMemberRole.VIEWER (string) or OrganizationMemberRole.MEMBER (string) (AllowedEmailDomainsRole)
emailDomains
required
Array of strings
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "role": "editor",
  • "emailDomains": [
    ],
  • "projects": [
    ]
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

CreateGroupInOrganization

Creates a new group in the current user's organization

Request Body schema: application/json
required

the new group details

name
required
string

A friendly name for the group

Array of objects (Pick_GroupMember.userUuid_)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "members": [
    ]
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

ListGroupsInOrganization

Gets all the groups in the current user's organization

query Parameters
page
number <double>
pageSize
number <double>
includeMembers
number <double>

number of members to include

searchQuery
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

Projects

Projects belong to a single organization. These routes allow users to manage their projects, browse content, and execute queries. Users inside an organization might have access to a project from an organization-level role or they might be granted access to a project directly.

SetExplores

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
Array
any

Responses

Request samples

Content type
application/json
[
  • null
]

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

GetExplores

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

GetExplore

path Parameters
exploreId
required
string
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

CompileQuery

path Parameters
exploreId
required
string
projectUuid
required
string
Request Body schema: application/json
required
object
timezone
string
Array of CustomBinDimension (object) or CustomSqlDimension (object) (CustomDimension)
Array of objects (AdditionalMetric)
required
Array of objects (TableCalculation)
limit
required
number <double>
required
Array of objects (SortField)
required
object (Filters)
metrics
required
Array of strings (FieldId)
dimensions
required
Array of strings (FieldId)
exploreName
required
string

Responses

Request samples

Content type
application/json
{
  • "metadata": {
    },
  • "timezone": "string",
  • "customDimensions": [
    ],
  • "additionalMetrics": [
    ],
  • "tableCalculations": [
    ],
  • "limit": 0.1,
  • "sorts": [
    ],
  • "filters": {
    },
  • "metrics": [
    ],
  • "dimensions": [
    ],
  • "exploreName": "string"
}

Response samples

Content type
application/json
{
  • "results": "string",
  • "status": "ok"
}

DownloadCsvFromExplore

path Parameters
exploreId
required
string
projectUuid
required
string
Request Body schema: application/json
required
object
timezone
string
Array of CustomBinDimension (object) or CustomSqlDimension (object) (CustomDimension)
Array of objects (AdditionalMetric)
required
Array of objects (TableCalculation)
limit
required
number <double>
required
Array of objects (SortField)
required
object (Filters)
metrics
required
Array of strings (FieldId)
dimensions
required
Array of strings (FieldId)
exploreName
required
string
chartName
string
hiddenFields
Array of strings
columnOrder
required
Array of strings
customLabels
object
showTableNames
required
boolean
csvLimit
number or null <double>
onlyRaw
required
boolean

Responses

Request samples

Content type
application/json
{
  • "metadata": {
    },
  • "timezone": "string",
  • "customDimensions": [
    ],
  • "additionalMetrics": [
    ],
  • "tableCalculations": [
    ],
  • "limit": 0.1,
  • "sorts": [
    ],
  • "filters": {
    },
  • "metrics": [
    ],
  • "dimensions": [
    ],
  • "exploreName": "string",
  • "chartName": "string",
  • "hiddenFields": [
    ],
  • "columnOrder": [
    ],
  • "customLabels": {
    },
  • "showTableNames": true,
  • "csvLimit": 0.1,
  • "onlyRaw": true
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

GetProject

Get a project of an organiztion

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

ListChartsInProject

List all charts in a project

path Parameters
projectUuid
required
string

The uuid of the project to get charts for

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

ListChartSummariesInProject

List all charts summaries in a project

path Parameters
projectUuid
required
string

The uuid of the project to get charts for

query Parameters
excludeChartsSavedInDashboard
boolean

Whether to exclude charts that are saved in dashboards

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

ListSpacesInProject

List all spaces in a project

path Parameters
projectUuid
required
string

The uuid of the project to get spaces for

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

GetProjectAccessList

Get access list for a project. This is a list of users that have been explictly granted access to the project. There may be other users that have access to the project via their organization membership.

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

GrantProjectAccessToUser

Grant a user access to a project

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
sendEmail
required
boolean
role
required
string (ProjectMemberRole)
Enum: "viewer" "interactive_viewer" "editor" "developer" "admin"
email
required
string

Responses

Request samples

Content type
application/json
{
  • "sendEmail": true,
  • "role": "viewer",
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

GetProjectMemberAccess

Get a project explicit member's access. There may be users that have access to the project via their organization membership.

NOTE: We don't use the API on the frontend. Instead, we can call the API so that we make sure of the user's access to the project.

path Parameters
projectUuid
required
string
userUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

UpdateProjectAccessForUser

Update a user's access to a project

path Parameters
projectUuid
required
string
userUuid
required
string
Request Body schema: application/json
required
role
required
string (ProjectMemberRole)
Enum: "viewer" "interactive_viewer" "editor" "developer" "admin"

Responses

Request samples

Content type
application/json
{
  • "role": "viewer"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

RevokeProjectAccessForUser

Remove a user's access to a project

path Parameters
projectUuid
required
string
userUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

GetProjectGroupAccesses

List group access for projects

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

RunSqlQuery

Run a raw sql query against the project's warehouse connection

path Parameters
projectUuid
required
string

The uuid of the project to run the query against

Request Body schema: application/json
required

The query to run

sql
required
string

Responses

Request samples

Content type
application/json
{
  • "sql": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

CalculateTotalFromQuery

Calculate all metric totals from a metricQuery

path Parameters
projectUuid
required
string

The uuid of the project to get charts for

Request Body schema: application/json
required

The metric query to calculate totals for

explore
required
string
required
object (MetricQueryRequest)

Responses

Request samples

Content type
application/json
{
  • "explore": "string",
  • "metricQuery": {
    }
}

Response samples

Content type
application/json
{
  • "results": { },
  • "status": "ok"
}

getUserWarehouseCredentialsPreference

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

updateUserWarehouseCredentialsPreference

path Parameters
projectUuid
required
string
userWarehouseCredentialsUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

getCustomMetrics

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

updateProjectMetadata

Update project metadata like upstreamProjectUuid we don't trigger a compile, so not for updating warehouse or credentials

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
upstreamProjectUuid
string or null

Responses

Request samples

Content type
application/json
{
  • "upstreamProjectUuid": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

updateProjectSemanticLayerConnection

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
Any of
type
required
string
Value: "DBT"
environmentId
string
domain
string
token
string

Responses

Request samples

Content type
application/json
{
  • "type": "CUBE",
  • "domain": "string",
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

deleteProjectSemanticLayerConnection

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

getDashboards

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

createDashboard

path Parameters
projectUuid
required
string
query Parameters
duplicateFrom
string
Request Body schema: application/json
required
Any of
dashboardDesc
required
string
dashboardName
required
string

Responses

Request samples

Content type
application/json
Example
{
  • "dashboardDesc": "string",
  • "dashboardName": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

updateDashboards

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
Array
name
required
string
description
string
uuid
required
string
spaceUuid
required
string

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

createPreview

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
copyContent
required
boolean
name
required
string

Responses

Request samples

Content type
application/json
{
  • "copyContent": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": "string",
  • "status": "ok"
}

updateSchedulerSettings

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
schedulerTimezone
required
string

Responses

Request samples

Content type
application/json
{
  • "schedulerTimezone": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

ValidateProject

Validate content inside a project. This will start a validation job and return the job id.

Validation jobs scan all charts and dashboards inside a project to find any broken references to metrics or dimensions that aren't available. Results are available after the job is completed.

path Parameters
projectUuid
required
string

the projectId for the validation

Request Body schema: application/json
required

the compiled explores to validate against an existing project, this is used in the CLI to validate a project without creating a preview

validationTargets
Array of strings (ValidationTarget)
Items Enum: "charts" "dashboards" "tables"
explores
Array of any

Responses

Request samples

Content type
application/json
{
  • "validationTargets": [
    ],
  • "explores": [
    ]
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

GetLatestValidationResults

Get validation results for a project. This will return the results of the latest validation job.

path Parameters
projectUuid
required
string

the projectId for the validation

query Parameters
fromSettings
boolean

boolean to know if this request is made from the settings page, for analytics

jobId
string

optional jobId to get results for a specific job, used on CLI

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

DeleteValidationDismiss

Deletes a single validation error.

path Parameters
projectUuid
required
string
validationId
required
number <double>

the projectId for the validation

Responses

Response samples

Content type
application/json
{
  • "status": "ok"
}

Spaces

Spaces allow you to organize charts and dashboards within a project. They also allow granular access to content by allowing you to create private spaces, which are only accessible to the creator and admins.

CreateSpaceInProject

Create a new space inside a project

path Parameters
projectUuid
required
string

The uuid of the space's parent project

Request Body schema: application/json
required
Array of objects (Pick_SpaceShare.userUuid-or-role_)
isPrivate
boolean
name
required
string

Responses

Request samples

Content type
application/json
{
  • "access": [
    ],
  • "isPrivate": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

GetSpace

Get details for a space in a project

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to get

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

DeleteSpace

Delete a space from a project

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to delete

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

UpdateSpace

Update a space in a project

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

Request Body schema: application/json
required
isPrivate
required
boolean
name
required
string

Responses

Request samples

Content type
application/json
{
  • "isPrivate": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

AddSpaceUserAccess

Grant a user access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string
Request Body schema: application/json
required
spaceRole
required
string (SpaceMemberRole)
Enum: "viewer" "editor" "admin"
userUuid
required
string

Responses

Request samples

Content type
application/json
{
  • "spaceRole": "viewer",
  • "userUuid": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

RevokeSpaceAccessForUser

Remove a user's access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

userUuid
required
string

The uuid of the user to revoke access from

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

AddSpaceGroupAccess

Grant a group access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

Request Body schema: application/json
required
spaceRole
required
string (SpaceMemberRole)
Enum: "viewer" "editor" "admin"
groupUuid
required
string

Responses

Request samples

Content type
application/json
{
  • "spaceRole": "viewer",
  • "groupUuid": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

RevokeGroupSpaceAccess

Remove a group's access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

groupUuid
required
string

The uuid of the group to revoke access from

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

Roles & Permissions

These routes allow users to manage roles and permissions for their organization.

UpdateOrganizationMember

Updates the membership profile for a user in the current user's organization

path Parameters
userUuid
required
string

the uuid of the user to update

Request Body schema: application/json
required

the new membership profile

role
required
string (OrganizationMemberRole)
Enum: "member" "viewer" "interactive_viewer" "editor" "developer" "admin"

Responses

Request samples

Content type
application/json
{
  • "role": "member"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

CreateSpaceInProject

Create a new space inside a project

path Parameters
projectUuid
required
string

The uuid of the space's parent project

Request Body schema: application/json
required
Array of objects (Pick_SpaceShare.userUuid-or-role_)
isPrivate
boolean
name
required
string

Responses

Request samples

Content type
application/json
{
  • "access": [
    ],
  • "isPrivate": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

GetProjectAccessList

Get access list for a project. This is a list of users that have been explictly granted access to the project. There may be other users that have access to the project via their organization membership.

path Parameters
projectUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

GrantProjectAccessToUser

Grant a user access to a project

path Parameters
projectUuid
required
string
Request Body schema: application/json
required
sendEmail
required
boolean
role
required
string (ProjectMemberRole)
Enum: "viewer" "interactive_viewer" "editor" "developer" "admin"
email
required
string

Responses

Request samples

Content type
application/json
{
  • "sendEmail": true,
  • "role": "viewer",
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

GetProjectMemberAccess

Get a project explicit member's access. There may be users that have access to the project via their organization membership.

NOTE: We don't use the API on the frontend. Instead, we can call the API so that we make sure of the user's access to the project.

path Parameters
projectUuid
required
string
userUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

UpdateProjectAccessForUser

Update a user's access to a project

path Parameters
projectUuid
required
string
userUuid
required
string
Request Body schema: application/json
required
role
required
string (ProjectMemberRole)
Enum: "viewer" "interactive_viewer" "editor" "developer" "admin"

Responses

Request samples

Content type
application/json
{
  • "role": "viewer"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

RevokeProjectAccessForUser

Remove a user's access to a project

path Parameters
projectUuid
required
string
userUuid
required
string

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

UpdateSpace

Update a space in a project

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

Request Body schema: application/json
required
isPrivate
required
boolean
name
required
string

Responses

Request samples

Content type
application/json
{
  • "isPrivate": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

AddSpaceUserAccess

Grant a user access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string
Request Body schema: application/json
required
spaceRole
required
string (SpaceMemberRole)
Enum: "viewer" "editor" "admin"
userUuid
required
string

Responses

Request samples

Content type
application/json
{
  • "spaceRole": "viewer",
  • "userUuid": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

RevokeSpaceAccessForUser

Remove a user's access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

userUuid
required
string

The uuid of the user to revoke access from

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

AddSpaceGroupAccess

Grant a group access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

Request Body schema: application/json
required
spaceRole
required
string (SpaceMemberRole)
Enum: "viewer" "editor" "admin"
groupUuid
required
string

Responses

Request samples

Content type
application/json
{
  • "spaceRole": "viewer",
  • "groupUuid": "string"
}

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

RevokeGroupSpaceAccess

Remove a group's access to a space

path Parameters
projectUuid
required
string

The uuid of the space's parent project

spaceUuid
required
string

The uuid of the space to update

groupUuid
required
string

The uuid of the group to revoke access from

Responses

Response samples

Content type
application/json
{
  • "results": null,
  • "status": "ok"
}

Catalog

getCatalog

Get catalog items

path Parameters
projectUuid
required
string
query Parameters
search
string
type
string (CatalogType)
Enum: "table" "field"
filter
string (CatalogFilter)
Enum: "tables" "dimensions" "metrics"

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "status": "ok"
}

getMetadata

Get catalog metadata for tables

path Parameters
projectUuid
required
string
table
required
string

Table name to get metadata for

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

getAnalytics

Get catalog analytics for tables

path Parameters
projectUuid
required
string
table
required
string

Table name to get analytics for

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

getAnalyticsField

Get catalog analytics for fields

path Parameters
projectUuid
required
string
table
required
string

Table where this field belongs

field
required
string

Field name to get analytics for

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

getMetricsCatalog

Get metrics catalog

path Parameters
projectUuid
required
string
query Parameters
search
string
page
number <double>
pageSize
number <double>
sort
string
order
string (ApiSortDirection)
Enum: "asc" "desc"

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

Comments

createComment

Creates a comment on a dashboard tile

path Parameters
dashboardUuid
required
string

the uuid of the dashboard

dashboardTileUuid
required
string

the uuid of the dashboard tile

Request Body schema: application/json
required

the comment to create

text
required
string
replyTo
string
mentions
required
Array of strings
textHtml
required
string

Responses

Request samples

Content type
application/json
{
  • "text": "string",
  • "replyTo": "string",
  • "mentions": [
    ],
  • "textHtml": "string"
}

Response samples

Content type
application/json
{
  • "results": "string",
  • "status": "ok"
}

getComments

Gets all comments for a dashboard

path Parameters
dashboardUuid
required
string

the uuid of the dashboard

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

resolveComment

Resolves a comment on a dashboard

path Parameters
dashboardUuid
required
string

the uuid of the dashboard

commentId
required
string

the uuid of the comment

Responses

Response samples

Content type
application/json
{
  • "status": "ok"
}

deleteComment

Deletes a comment on a dashboard

path Parameters
dashboardUuid
required
string

the uuid of the dashboard

commentId
required
string

the uuid of the comment

Responses

Response samples

Content type
application/json
{
  • "status": "ok"
}

Exports

getCsvUrl

Get a Csv

path Parameters
jobId
required
string

the jobId for the CSV

Responses

Response samples

Content type
application/json
{
  • "results": {
    },
  • "status": "ok"
}

Dashboards

promoteDashboard

Promote dashboard to its upstream project

path Parameters
dashboardUuid
required
string

dashboardUuid for the dashboard to run

Responses

Response samples

Content type
application/json
{