This document describes the DataGalaxy REST API available for listing the versions of the Desktop connector and its plugins and to download them. This will allow you to automate their updates in your environment, especially in the context of the use of the CLI or Docker modes.
This API is an extension of DataGalaxy public REST API, it works in a similar way, especially regarding authentication. You can check here the guide of DataGalaxy public API.
API endpoints
GET /connectivity/packages
Lists packages available for download. Actually, it's possible to download plugins in .jar format and the Desktop connector in 32bits or 64bits versions.
The URL of downloadable artefacts are under the _links property.
Response
{
"connectors": [
{
"name": "talend",
"version": "2.2.0",
"_links": {
"images": {
"icon500": {
"href": "/packages/talend/latest/icon500.png"
}
},
"manifest": {
"href": "/packages/talend/latest/manifest.json"
},
"self": {
"href": "/packages/talend/latest/contents.jar"
}
}
}
],
"desktop": {
"zip32bits": {
"_links": {
"self": {
"href": "/packages/desktop/latest/32bits.zip"
}
},
"version": "4.3.5"
},
"zip64bits": {
"_links": {
"self": {
"href": "/packages/desktop/latest/64bits.zip"
}
},
"version": "4.3.5"
}
}
}GET /connectivity/packages/:name/latest/:artefact
This endpoint allows to download an artefact. Only latest versions of each package are available.
The value of :artefact for a plugin must be:
- icon500.png
- manifest.json
- contents.jar
The value of :artefact for the Desktop connector must be:
- 64bits.zip
- 32bits.zip
If another value is used, the server will send an error 400:
GET /connectivity/packages/amazonathena/latest/foo.jar HTTP/1.1 400 BadRequestException content-length: 147 content-type: application/json
{
"error": {
"code": 400,
"message": "Artefact foo.jar is unknown, must be one of: icon500.png, contents.jar, manifest.json, 64bits.zip or 32bits.zip"
}
}Trying to download a non-existing artefact or package will generate an error 404:
GET /connectivity/packages/foo/latest/contents.jar HTTP/1.1 404 PackageNotFoundException content-length: 57 content-type: application/json
{
"error": {
"code": 404,
"message": "Package foo not found."
}
}Response
Getting file manifest.json for Amazon Athena plugin:
GET /connectivity/packages/amazonathena/latest/manifest.json
HTTP/1.1 200 OK content-disposition: attachment; filename="connector-amazonathena-manifest.json" content-length: 834 content-type: application/json
{
"version": "1.0.0",
"name": "amazonathena",
"description": {
"en": "Amazon Athena is a cloud based querying service for Amazon S3 data storage",
"fr": "Amazon Athena est un service cloud permettant d’interroger les données stockées dans Amazon S3"
},
"manifestVersion": 4,
"modules": [
"Catalog"
],
"parameters": {
"...": {}
},
"sourceType": "Relational",
"title": {
"en": "Amazon Athena",
"fr": "Amazon Athena"
}
}Getting .jar file of Amazon Athena plugin:
GET /connectivity/packages/amazonathena/latest/contents.jar
HTTP/1.1 200 OK content-disposition: attachment; filename="connector-amazonathena-1.0.0.jar" content-length: 16955986 content-type: application/java-archive
binary data...