The datamart name identifies which datamart to update and cannot be changed through this endpoint. To rename a datamart, you’ll need to delete the old one and create a new one with the desired name.
Authentication
All API requests must include your API key in the Authorization header. Get your API token when creating a data app - see our data app creation guide for details. Finding your API token: For detailed instructions, see the API Token guide.Headers
Bearer token for API authentication. Use your API key from the data app.
Must be set to
application/json for all requests.Request Body
Name of the existing datamart to update. Must match exactly (case-sensitive).
Array of tables with columns to include in the datamart. Optional - if not provided, only tenancy settings will be updated.
Table name from your datasource. Must exist in the datasource schema.
Optional schema name (required only for schema-based datasources like PostgreSQL, SQL Server).
List of column objects for this table. Must be non-empty.
Column name from the table. Must exist in the datasource schema.
Optional alias for the column to display a different name.
Optional label for the column for better readability.
Optional flag to hide the column from the datamart interface. Defaults to
false.Multi-tenant configuration for the datamart. Optional - if not provided, existing tenancy settings remain unchanged.
The level at which tenant isolation occurs. Must be either
TABLE or DATABASE.TABLE: Client mapping is stored in a specific table (most common)DATABASE: Each client has a separate database instance
Data type of the client identifier column. Must be either
NUMBER or STRING.Required when tenancyLevel is TABLE (either new or existing).Schema name where the client mapping table is located.Required when
tenancyLevel is TABLE (either new or existing).Name of the table that contains client mapping information.Required when
tenancyLevel is TABLE (either new or existing).Column name in the mapping table that stores the client identifier.Required when
tenancyLevel is TABLE (either new or existing).Primary key column of the client mapping table.Required when
tenancyLevel is TABLE (either new or existing).Response
The name of the updated datamart (same as the input datamartName) on success.
Error object returned only when the request fails. Not included in successful responses.
Examples
HTTP Status Code Summary
| Status Code | Description |
|---|---|
200 | OK - Datamart updated successfully |
400 | Bad Request - Invalid request parameters |
401 | Unauthorized - Invalid or missing API key |
500 | Internal Server Error - Server error occurred |
Possible Errors
| Error Code | HTTP Status | Description |
|---|---|---|
INVALID_REQUEST_BODY | 400 | Missing or invalid parameters |
INVALID_DATAMART | 400 | Datamart not found |
INVALID_DATA_APP_API_KEY | 401 | Invalid API key |
INTERNAL_SERVER_ERROR | 500 | Server error |
Quick Start Guide
1
Get current configuration
Retrieve the existing datamart configuration before making changes:
Save this response in case you need to rollback your changes.
2
Prepare your update
Determine what you want to update:
- Tables/Columns: Prepare the complete new tableList (replaces existing)
- Tenancy: Prepare updated tenancySettings (optional)
- Both: You can update both in a single request
3
Update the datamart
Make the update request:
Successful response returns the datamart name.
4
Verify the update
Test that the datamart works correctly:
- Load metrics that use this datamart
- Check that all expected tables and columns are accessible
- Verify tenancy is working if you updated those settings
- Monitor for any errors in your dashboards

