logicaldatamodel

Publish a logical data model to the project

This method publishes the provided logical data model (target LDM) to the project and returns the link to a polling resource that returns the project LDM after publishing.</br> You provide the target LDM as a JSON structure in the request body.</br> </br> While running, this method performs the following operations:</br> 1. Obtains the current LDM of the project (if any) </br> 2. Generates a diff between the current LDM and the target LDM </br> 3. Generates and executes MAQL DDL scripts to update the current LDM to make it equal to the submitted target LDM</br> </br> By default, the target LDM is published only if no data is going to be deleted from the project datasets. If the API detects that publishing will delete some data, the publishing task will fail and no changes will be done to the existing LDM. In this case, you can have the following options:</br>

  • Review and update the target LDM so that no data is going to be deleted, and execute the API again.
  • Force-publish the LDM even if some data is going to be deleted.</br> To do so, add the preserveData parameter under publishOptions in the request body, set it to false, and execute the API again.</br> NOTE: If not explicitly set to false, this parameter defaults to true.</br> This option is not available for some update combinations (for example, if preserveData=false exists in all possible MAQL DDL scripts).
post/gdc/projects/{projectId}/model/publish

Request

  • Base URL
    https://secure.gooddata.com
  • Auth
    none declared

Request body

Response

Accepted - create publish project model async task

Example response

{
  "asyncTask": {
    "link": {
      "poll": "/gdc/uri/poll"
    }
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.