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.

Note: The Schema API and the Driver Files API are extensions of the Data Sources API. The Schema API can be used to retrieve the information needed to configure a schema for OData connectivity. The Driver Files API can be used to retrieve and manage files used to support data connectivity to non-relational data stores and REST services.

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}