Data Sources API
- Last Updated: February 21, 2024
- 2 minute read
- Hybrid Data Pipeline
- Version 5.0
- Documentation
Hybrid Data Pipeline enables access to a variety of data stores, such as Apache Hive, DB2, SQL Server, Oracle, and Salesforce. To access data residing on a backend data store, administrators or users must create a Hybrid Data Pipeline data source. A Hybrid Data Pipeline data source can be created by specifying parameters associated with a specific data store. The information provided in the data source allows the service to connect to the backend data store. A data source can be created with the Web UI or the Data Sources API.
Foremost, the Data Sources API enables users to create data sources. A user must have the CreateDataSource (1) permission to create a data source. When a user creates a data source, he or she is the owner of the data source. In turn, data source owners can view, modify, delete, and share the data sources they own, if they have the corresponding permissions for these operations. For example, a data source owner must have the ViewDataSource (2) permission to view the data source, and the ModifyDataSource (3) permission to modify the data source.
The Data Sources API also supports advanced functionality that allows data source owners to share data sources with other users and enables administrators to create and manage data sources on behalf of users. See the following topics for more information.
The following table lists the operations that can be performed using the Data Sources API.
| Task | Request | URL |
|---|---|---|
| Retrieve a list of available data stores and their options | GET | https://<myserver>:<port>/api/mgmt/datastores |
| Retrieve the details for a particular data store | GET | https://<myserver>:<port>/api/mgmt/datastores/{datastoreId} |
| Create a data source or data source group | POST | https://<myserver>:<port>/api/mgmt/datasources |
| Retrieve a list of data sources | GET | https://<myserver>:<port>/api/mgmt/datasources |
| Retrieve the details for a data source | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId} |
| Update the options and values for a data source | PUT | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId} |
| Delete a data source | DELETE | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId} |
| Retrieve permissions on a data source | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/permissions |
| Update permissions on data sources | PUT | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/permissions |
| Test a connection to a data source | POST | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/test |
| Retrieve the logs for a data source | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/logs |
| Refresh the cached object mapping of a data source | POST | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/map |
| Create or refresh a data source OData model | POST | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/model |
| Check status of the OData model refresh | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/model |
| Retrieve the members of a data source group | GET | https://<myserver>:<port>/api/mgmt/datasources/{groupDatasourceId}/members |
| Add member data sources to a data source group | POST |
https://<myserver>:<port>/api/mgmt/datasources/{groupDatasourceId}/members |
| Update members of a data source group | PUT | https://<myserver>:<port>/api/mgmt/datasources/{groupDatasourceId}/members |
| Delete a member data source from a data source group | DELETE | https://<myserver>:<port>/api/mgmt/datasources/{groupDatasourceId}/members/{memberDatasourceId} |
| Retrieve users with whom data source is being shared | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedUsers |
| Create a list of users with whom to share a data source | POST | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedUsers |
| Stop sharing the data source with users | DELETE | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedUsers |
| Retrieve the data source permissions for a user with whom the data source is being shared | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedUsers/{userId} |
| Update the data source permissions for a user with whom the data source is being shared | PUT | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedUsers/{userId} |
| Stop sharing the data source with a user | DELETE | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedUsers/{userId} |
| Retrieve tenants with which the data source is being shared | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedTenants |
| Create a list of tenants with which to share a data source | POST | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedTenants |
| Stop sharing a data source with tenants | DELETE | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedTenants |
| Retrieve the data source permissions for a tenant with which the data source is being shared | GET | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedTenants/{tenantId} |
| Update the data source permissions for a tenant with which the data source is being shared | PUT | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedTenants/{tenantId} |
| Stop sharing the data source with a tenant | DELETE | https://<myserver>:<port>/api/mgmt/datasources/{datasourceId}/sharedTenants/{tenantId} |