You can translate the question and the replies:

Denodo 8: synchronize the VDP server metadata with Data Catalog using Data Catalog REST API

Hi Team, I am following page for metadata synchronization from VDP to Data Catalog for Denodo 8. Can you please help confirm if the Denodo 8 can use the saem way for this purpose? Below is my command and returned result, seems the "httpStatusCode" is correct (200), but it does not retured any synchronized objects? Is it correct? Or do we have some other way for this purpose, we need to include it in our automated script process, so need command line way. curl --request POST --user "user_id:user_pwd" --header "Content-Type: application/json" --data '{ "allServers": "true", "priority": "server" }' "http://hostname.ams.nom:9090/denodo-data-catalog/apirest/synchronize" local result: {"result":"OK","data":{"responses":[{"serverName":"localhost","serverUrl":"//localhost:9999/admin","httpStatusCode":200,"jsonResponse":{"result":null,"data":{"view":{"inserted":[],"removed":[],"modified":[]},"ws":{"inserted":[],"removed":[],"modified":[]}},"message":null}}]},"message":null}
13-07-2021 03:53:11 -0400

3 Answers

Hi, Starting from Denodo 8.0, I would recommend using the new REST API, since Denodo has upgraded its API functionality. Please use the below curl command for the successful synchronization, `curl --request POST --user "<user_id>:<password> " --header "Content-Type: application/json" --data "{ \"proceedWithConflicts\": \"SERVER\" }" http://<host>:<port>/denodo-data-catalog/public/api/element-management/all/synchronize/all-servers` The documentation of this new REST API is available on, http://<host>:<port>/denodo-data-catalog/swagger-ui.html. You will need your Data Catalog and VDP server up and running to access this documentation. It is built into the Data Catalog that is distributed with the platform. Also, you will receive empty lists if there is no more data to be synchronized from VDP to Data Catalog. Hope this helps!
Denodo Team
16-07-2021 12:52:55 -0400
yes, it works. But question, there is no status_code returned, how we know whether this syncronization is succeeded or not? Previously, we use whether the status_code is "200" or not. how can we do now?
19-07-2021 02:31:58 -0400
Hi, You can try to parse the output of the curl command with the verbose option (-v flag in the curl command). In the output, you can lookout for the HTTP status code, for example HTTP/1.1 200 and extract them. Hope this helps!
Denodo Team
23-07-2021 20:15:36 -0400
You must sign in to add an answer. If you do not have an account, you can register here