Virtual Dataset Management API
This API enables the extraction of information, creation, modification and deletion of Tagetik application's Virtual Datasets.
| API title: | AIH Virtual Dataset swagger openapi 3.0.3 |
| Description: | API for Virtual Dataset Management in the AIH database application |
| Version: | 1.000 |
| Authentication: | OAuth2, API Key, JWT, Basic Auth |
| Base URL: | https://tenantxyz.api.saastagetik.com/basic https://tenantxyz.api.saastagetik.com/jwt https://tenantxyz.api.saastagetik.com/apikey https://tenantxyz.api.saastagetik.com/oauth2 |
Prerequisites¶
Request format: JSON
Response format: JSON
Shared headers
- Content-Type: application/json
- Authorisation: Bearer
.
URL¶
| Operation | Http Method | Body of the request | Path variable | Query string parameters | Body of the answer | HTTP response body | Response Status (Exception) |
|---|---|---|---|---|---|---|---|
| Create | POST | Virtual Dataset | Virtual Dataset | 201 (Created) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) 400 (Invalid request) | ||
| Read | GET | Virtual Dataset ID | Virtual Dataset | 200 (OK) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) | ||
| Delete | DELETE | Virtual Dataset ID | Virtual Dataset | 200 (OK) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) | ||
| Replace | PUT | Virtual Dataset | Virtual Dataset ID | Virtual Dataset | 200 (OK) 201 (Created) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) 400 (Invalid request) | |
| Search | GET | filter sort skip take (optional parameters) | List of Virtual Datasets | 200 (OK) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) 400 (Invalid request) | ||
| Search Size | GET | filter sort skip take (optional parameters) | Quantity of Virtual Datasets | 200 (OK) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) 400 (Invalid request) | ||
| Update | PATCH | Virtual Dataset | Virtual Dataset ID | Virtual Dataset | 200 (OK) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) 400 (Invalid request) | |
| Bulk | POST | Virtual Dataset(s) | Success | 200 (OK) | 405 (Method not permitted) 404 (Not found) 403 (Access to unauthorised resource) 401 (Unauthorised) 400 (Invalid request) |
"filter" accepts the fields "id and descriptions.[language]"
Supported Fields in Request¶
| Virtual Dataset field | Supported cardinality | Supported Values |
|---|---|---|
| id | - | string (mandatory) |
| oid | - | string |
| descriptions.[lingua] | - | string (one mandatory) |
| sort.field | - | string |
| sort.sortPositions | - | string |
| sort.sortType | - | ASC, DESC |
| relationships.order | - | integer |
| relationships.leftDataset.id | - | string |
| relationships.leftDataset.inculdeAllFields | - | true/false |
| relationships.leftDataset.id | - | string |
| relationships.leftDataset.inculdeAllFields | - | true/false |
| joinFields.leftField | - | string |
| joinFields.rightField | - | string |
¶
The 'descriptions' field consists of a key-value array where the key is the abbreviated wording of a language and the value is a string
Additional Fields in Response¶
| Virtual Dataset field | Supported Values |
|---|---|
| updateInfo.user | string |
| updateInfo.date | date |
| updateInfo.origin | INPUT_WEB |
Examples of requests¶
Show list of all Virtual Datasets
| Method | GET |
| URL | /api/aih/datamodel/v1/{dbID}/workspaces/{awID}/virtualdatasets |
| Body | - |
| Example of response | [ { "id": "000007", "oid": "IHGJBNPVEYXPZAV", "sort": [ { "field": "INTERNAL", "sortPosition": "20", "sortType": "ASC" }, { "field": "TEXT", "sortPosition": "10", "sortType": "ASC" } ], "relationships": [ { "order": 14, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" }, { "leftField": "DIMSW", "rightField": "CC" } ] } ], "updateInfo": { "user": "USERT", "date": "2025-10-28T16:11:32.762+0000", "origin": "INPUT_WEB" }, "descriptions": { "it": "VirtualDataset1", "en": "VirtualDataset1", "ja": "VirtualDataset1", "aa": "VirtualDataset1", "zh": "VirtualDataset1" } }, { "id": "000009", "oid": "RTGWVGDKWFZZLXW", "sort": [], "relationships": [ { "order": 13, "leftDataset": { "id": "000008", "includeAllFields": false }, "rightDataset": { "id": "000006", "includeAllFields": false }, "joinFields": [ { "leftField": "CC", "rightField": "ENT" } ] } ], "updateInfo": { "user": "USERT", "date": "2024-10-29T15:23:24.991+0000", "origin": "INPUT_WEB" }, "descriptions": { "it": "VirtualDatase2", "en": "VirtualDatase2", "ja": null, "aa": null, "zh": null } } ] |
Shows a specific Virtual Dataset
| Method | GET |
| URL | /api/aih/datamodel/v1/{dbID}/workspaces/{awID}/virtualdatasets/123459 |
| Body | - |
| Example of response | { "id": "123459", "oid": "IHGJBNVJEYXPZAV", "sort": [ { "field": "INTERNAL", "sortPosition": "20", "sortType": "ASC" }, { "field": "TEXT", "sortPosition": "10", "sortType": "ASC" } ], "relationships": [ { "order": 14, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" }, { "leftField": "DIMSW", "rightField": "CC" } ] } ], "updateInfo": { "user": "USERT", "date": "2025-10-28T16:11:32.762+0000", "origin": "INPUT_WEB" }, "descriptions": { "it": "VirtualDataset1", "en": "VirtualDataset1", "ja": "VirtualDataset1", "aa": "VirtualDataset1", "zh": "VirtualDataset1" } } |
Show the number of Virtual Datasets
| Method | GET |
| URL | /api/aih/datamodel/v1/{dbID}/workspaces/{awID}/virtualdatasets-count |
| Body | - |
| Example of response | 12 |
Create a new Virtual Dataset
| Method | POST |
| URL | /api/aih/datamodel/v1/{dbID}/workspaces/{awID}/virtualdatasets |
| Body | { "id": "00001A", "oid": "XYH6HH99RHHV1234", "descriptions": { "en": "Virtual Dataset", "it": "Dataset Virtuale" }, "relationships": [ { "order": 0, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" } ] } ] } |
| Example of response | { "id": "00001A", "oid": "XYH6HH99RHHV1234", "sort": [], "relationships": [ { "order": 0, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" } ] } ], "updateInfo": { "user": "USERT", "date": "2026-01-19T13:55:08.861+0000", "origin": "INPUT_WEB" }, "descriptions": { "it": "Dataset Virtuale Normale", "en": "Normal Virtual Dataset", "ja": null, "aa": null, "zh": null } } |
Edit a Virtual Dataset
| Method | PATCH |
| URL | /api/aih/datamodel/v1/{dbID}/workspaces/{awID}/virtualdatasets/00001A |
| Body | { "id": "00001A", "oid": "XYH6HH99RHHV1234", "descriptions": { "en": "Modified Virtual Dataset", "it": "Dataset Virtuale Modificato" }, "relationships": [ { "order": 0, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" } ] } ] } |
| Example of response | { "id": "00001A", "oid": "XYH6HH99RHHV1234", "sort": [], "relationships": [ { "order": 0, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" } ] } ], "updateInfo": { "user": "USERT", "date": "2026-01-19T13:55:08.861+0000", "origin": "INPUT_WEB" }, "descriptions": { "it": "Dataset Virtuale Modificato", "en": "Modified Virtual Dataset", "ja": null, "aa": null, "zh": null } } |
Create a Virtual Dataset, edit another Virtual Dataset and delete another Virtual Dataset
| Method | POST |
| URL | /api/aih/datamodel/v1/{dbID}/workspaces/{awID}/virtualdatasets-bulk |
| Body | { "saveMode": "LOOSE", "post": [ { "id": "POSTBU", "oid": "UYH6HH199HHG1234", "descriptions": { "en": "Post Bulk", "it": "Bulk Post" }, "sort": [], "relationships": [ { "order": 0, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" }, { "leftField": "DIMSW", "rightField": "CC" } ] }, { "order": 2, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000006", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "ENT" }, { "leftField": "DIMSW", "rightField": "ENT" } ] } ] } ], "patch": [ { "key": { "id": "PATCHB" }, "data": { "descriptions": { "en": "Patch Bulk", "it": "Bulk Patch" }, "sort": [ { "field": "NUMB", "sortPosition": "20", "sortType": "ASC" }, { "field": "ENT", "sortPosition": "10", "sortType": "ASC" } ], "relationships": [ { "order": 0, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000008", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "CC" }, { "leftField": "DIMSW", "rightField": "CC" } ] }, { "order": 2, "leftDataset": { "id": "345678", "includeAllFields": false }, "rightDataset": { "id": "000006", "includeAllFields": false }, "joinFields": [ { "leftField": "ANDIM", "rightField": "ENT" }, { "leftField": "DIMSW", "rightField": "ENT" } ] } ] } } ], "delete": [ { "id": "DELETB" } ] } |
| Example of response | { "code": "SUCCESS" } |