Update the table list and tenancy settings of an existing datamart. This endpoint allows you to modify which tables and columns are accessible through the datamart, as well as update multi-tenant configurations.
Destructive Operation: Updating a datamart will delete all existing table and column configurations before applying the new ones. Ensure your new configuration includes all tables and columns you need.
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.
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.
Optional column name in this table that identifies the client/tenant. This column is used for multi-tenant data isolation at the table level. Must exist in the table schema.
Show Client column usage
Used for table-level tenancy when tenancyLevel is TABLE
The column should contain client/tenant identifiers
Optional array of table relationships to define how tables in the datamart are connected. Relationships enable joins between tables for more complex queries.
Replaces all existing relationships: When provided, the relationships array completely replaces all existing relationships. Include all relationships you want to keep. If omitted entirely, existing relationships remain unchanged.
Show Relationship configuration
Define how tables relate to each other (e.g., orders.customer_id → customers.id)
Supports different join types and cardinalities
Useful for creating metrics that span multiple tables
Optional - omit this field to keep existing relationships unchanged
The cardinality of the relationship. Must be one of: ManyToMany, ManyToOne, OneToMany, OneToOne.Optional: Can be omitted or set to null if not specified.