Wallaroo Data Connections are provided to establish connections to external data stores for requesting or submitting information. They provide a source of truth for data source connection information to enable repeatability and access control within your ecosystem. The actual implementation of data connections are managed through other means, such as Wallaroo Pipeline Orchestrators and Tasks, where the libraries and other tools used for the data connection can be stored.
Lists the enablement features for the Wallaroo instance.
/v1/api/connections/create
{'username':'dataperson', 'password':'datapassword', 'port': 3339}
, or {'token':'abcde123==', 'host':'example.com', 'port:1234'}
, or other user defined combinations.# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/create"
# input connection
data = {
'name': bigquery_connection_input_name,
'type' : bigquery_connection_input_type,
'details': bigquery_connection_input_argument
}
response=requests.post(url, headers=headers, json=data).json()
display(response)
{'id': '02e587e9-e564-4af4-b3c4-0800994febfd'}
Adds a connection to a Wallaroo workspace, accessible by workspace members.
/v1/api/connections/create
# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/add_to_workspace"
data = {
'workspace_id': workspace_id,
'connection_id': connection_input_id
}
response=requests.post(url, headers=headers, json=data)
display(response.json())
{'id': '0c470074-d864-4467-bcd4-f6e8de7794e1'}
Lists the connections set to the specified workspace.
Adds a connection to a Wallaroo workspace, accessible by workspace members.
/v1/api/connections/create
# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/list"
# output connection
data = {
'workspace_id': workspace_id
}
response=requests.post(url, headers=headers, json=data).json()
display(response)
{'connections': [{'id': '2274dd22-2a18-454a-8cde-383cc013928b',
'name': 'bigqueryhouseapiinput',
'type': 'BIGQUERY',
'details': {'type': 'service_account',
'table': 'housepricesaga_inputs',
'dataset': 'release_testing_2023_2',
'created_at': '2023-05-16T16:43:05.170914Z',
'workspace_names': ['bigqueryapiworkspace']}
]
}
Retrieves the connection by the unique connection name
.
/v1/api/connections/get
name
of the connection.# get the connection input details
# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/get"
data = {
'name': bigquery_connection_input_name
}
display(requests.post(url, headers=headers, json=data).json())
{'id': '2274dd22-2a18-454a-8cde-383cc013928b',
'name': 'bigqueryhouseapiinput',
'type': 'BIGQUERY',
'details': {'type': 'service_account',
'table': 'housepricesaga_inputs',
'dataset': 'release_testing_2023_2',
'created_at': '2023-05-16T16:43:05.170914Z',
'workspace_names': ['bigqueryapiworkspace']}
Retrieves the connection by the unique connection id
.
/v1/api/connections/get_by_id
id
of the connection.# get the connection input details
# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/get_by_id"
data = {
'id': bigquery_connection_input_name
}
display(requests.post(url, headers=headers, json=data).json())
{'id': '2274dd22-2a18-454a-8cde-383cc013928b',
'name': 'bigqueryhouseapiinput',
'type': 'BIGQUERY',
'details': {'type': 'service_account',
'table': 'housepricesaga_inputs',
'dataset': 'release_testing_2023_2',
'created_at': '2023-05-16T16:43:05.170914Z',
'workspace_names': ['bigqueryapiworkspace']}
Removes the specified connection from the workspace.
/v1/api/connections/remove_from_workspace
id
of the workspace.id
.# get the connection input details
# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/remove_from_workspace"
data = {
'workspace_id': workspace_id,
'connection_id': connection_input_id
}
display(requests.post(url, headers=headers, json=data))
<Response [204]>
Deletes the connection from the Wallaroo instance. The connection must be removed from all workspaces before it can be deleted.
/v1/api/connections/delete
name
.# get the connection input details
# retrieve the authorization token
headers = wl.auth.auth_header()
url = f"{APIURL}/v1/api/connections/delete"
data = {
'name': bigquery_connection_input_name
}
display(requests.post(url, headers=headers, json=data))
<Response [204]>