path mgmt/v1alpha1/connection.proto
package mgmt.v1alpha1
Messages
AwsS3ConnectionConfig
Name | Type | Description |
---|
bucket_arn | string | |
path_prefix | optional string | |
credentials | optional AwsS3Credentials | |
region | optional string | |
endpoint | optional string | |
bucket | string | |
AwsS3Credentials
S3 Credentials that are used by the worker process.
Note: this may be optionally provided if the worker that is being hosted has environment credentials to the S3 bucket instead.
Name | Type | Description |
---|
profile | optional string | |
access_key_id | optional string | |
secret_access_key | optional string | |
session_token | optional string | |
from_ec2_role | optional bool | |
role_arn | optional string | |
role_external_id | optional string | |
CheckConnectionConfigByIdRequest
Name | Type | Description |
---|
id | string | The connection id to validate |
CheckConnectionConfigByIdResponse
Name | Type | Description |
---|
is_connected | bool | Whether or not the API was able to ping the connection |
connection_error | optional string | This is the error that was received if the API was unable to connect |
privileges | repeated ConnectionRolePrivilege | The privileges the role has to the connection |
CheckConnectionConfigRequest
CheckConnectionConfigResponse
Name | Type | Description |
---|
is_connected | bool | Whether or not the API was able to ping the connection |
connection_error | optional string | This is the error that was received if the API was unable to connect |
privileges | repeated ConnectionRolePrivilege | |
CheckSqlQueryRequest
Name | Type | Description |
---|
id | string | The connection id that the query will be checked against |
query | string | The full query that will be run through a PREPARE statement |
CheckSqlQueryResponse
Name | Type | Description |
---|
is_valid | bool | The query is run through PREPARE. Returns valid if it correctly compiled |
erorr_message | optional string | The error message returned by the sql client if the prepare did not return successfully |
ClientTlsConfig
Config for providing client-side TLS certificates
Name | Type | Description |
---|
root_cert | optional string | Root Certificate in PEM Format |
client_cert | optional string | Client Certificate in PEM format. Must also provide key. |
client_key | optional string | Client Key in PEM format. Must also provide cert. |
server_name | optional string | Provide the expected server name. Depending on the driver or encryption mode, this may be required
In order to fully validate the server certificate. |
Connection
Name | Type | Description |
---|
id | string | The unique identifier of the connection |
name | string | The unique, friendly name of the connection |
connection_config | ConnectionConfig | Contains the connection configuration and connection type |
created_by_user_id | string | The user id of the user that created the connection |
created_at | google.protobuf.Timestamp | When the connection was created |
updated_by_user_id | string | Who last updated the connection |
updated_at | google.protobuf.Timestamp | When the connection was last updated |
account_id | string | The unique account that owns this connection |
ConnectionConfig
Configuration for all of the supported Neosync connection types
ConnectionRolePrivilege
Name | Type | Description |
---|
grantee | string | The role that was given the permissions |
schema | string | The database schema. Ex: public |
table | string | The name of the table in the schema |
privilege_type | repeated string | The privileges given to that role |
CreateConnectionRequest
Name | Type | Description |
---|
account_id | string | |
name | string | The friendly name of the connection |
connection_config | ConnectionConfig | |
CreateConnectionResponse
DeleteConnectionRequest
Name | Type | Description |
---|
id | string | |
DeleteConnectionResponse
DynamoDBConnectionConfig
Configuration for a DynaomDB Connection
Name | Type | Description |
---|
credentials | optional AwsS3Credentials | Optional credentials that may be provided and will be used to connect to the DynamoDB Instance.
If self-hosting, this may be provided by the environment in lieu of specifying these here |
region | optional string | Optionally specify the region that the dynamodb instance lives in if not provided by the environment. |
endpoint | optional string | Optionally specify the endpoint that will be used by the AWS SDK. |
GcpCloudStorageConnectionConfig
Configuration for GCP Cloud Storage Buckets
Name | Type | Description |
---|
bucket | string | The GCP Cloud Storage bucket that will be accessed. |
path_prefix | optional string | The path prefix that will be appended to each file |
service_account_credentials | optional string | stringified json of the service account credentials file |
GetConnectionRequest
Name | Type | Description |
---|
id | string | |
GetConnectionResponse
GetConnectionsRequest
Name | Type | Description |
---|
account_id | string | |
GetConnectionsResponse
IsConnectionNameAvailableRequest
Name | Type | Description |
---|
account_id | string | |
connection_name | string | |
IsConnectionNameAvailableResponse
Name | Type | Description |
---|
is_available | bool | |
LocalDirectoryConnectionConfig
Configures a connection to a directory available on the local file system
Name | Type | Description |
---|
path | string | The absolute path to a directory that is available on the local file system to the API and Worker nodes |
MongoConnectionConfig
Name | Type | Description |
---|
url | string | The full mongo connection url |
tunnel | SSHTunnel | Provide tunnel configuration that can be used to access a connection that is not publicly accessible to the internet |
client_tls | ClientTlsConfig | Provide client-side TLS Certificates |
MssqlConnectionConfig
Configuration for a Mssql Connection
Name | Type | Description |
---|
url | string | The URL with sqlserver scheme. |
connection_options | SqlConnectionOptions | |
tunnel | SSHTunnel | Provide tunnel configuration that can be used to access a postgres connection that is not publicly accessible to the internet |
client_tls | ClientTlsConfig | Provide client-side TLS Certificates |
MysqlConnection
Name | Type | Description |
---|
user | string | |
pass | string | |
protocol | string | |
host | string | |
port | int32 | |
name | string | |
MysqlConnectionConfig
OpenAiConnectionConfig
Configures a connection to OpenAI or OpenAI compatible API.
Name | Type | Description |
---|
api_key | string | OpenAI Api Key |
api_url | string | OpenAI URL |
PostgresConnection
Name | Type | Description |
---|
host | string | |
port | int32 | |
name | string | |
user | string | |
pass | string | |
ssl_mode | optional string | |
PostgresConnectionConfig
SSHAuthentication
SSH Authentication
SSHPassphrase
Contains the configuration needed to retrieve the SSH passphrase for the tunnel
Name | Type | Description |
---|
value | string | The password to be used to connect to the SSH server
eventually we can expand this to allow pulling from other sources. |
SSHPrivateKey
Contains the configuration needed to retrieve the SSH private key for the tunnel
Name | Type | Description |
---|
value | string | The private key in PEM format. |
passphrase | optional string | If the private key is encrypted, this value should decrypt it. |
SSHTunnel
Name | Type | Description |
---|
host | string | The host of the SSH server |
port | int32 | The port of the SSH server, typically 22 |
user | string | The user that will be used to authenticate |
known_host_public_key | optional string | Optionally provide the public key of the known host of the SSH tunnel that we are connecting to.
If this is not provided, the server will blindly connect to the host with the given credentials.
This is not recommended for production use! |
authentication | SSHAuthentication | Provide the authentication required to successfully connect to the SSH server for tunneling |
SqlConnectionOptions
Name | Type | Description |
---|
max_connection_limit | optional int32 | Sets the maximum number of open connections
If this value is greater than 0, but less than the max_idle_connections, then max_idle_connections will be reduced to match the max_connection_limit
If this value is less than or equal to 0, then there is no limit on the number of open connections. If not provided, the default is 0 (unlimited). |
max_idle_connections | optional int32 | Sets the maximum number of connections in the idle connection pool.
This value will be reduced at runtime to match the max_connection_limit if max_connection_limit is greater than 0 but less than this value.
If this value is less than or equal to 0, then no idle connections are maintained. If not provided, the default is 2, which may change in a future release. |
max_idle_duration | optional string | Sets the maximum amount of time a connection may be idle.
Expired connections may be closed lazily before reuse.
if this value is less than or equal to 0, connections are not closed due to a connection's idle time.
This value is parsed as a Go duration string (ex: 1s, 1m, 500ms) |
max_open_duration | optional string | Sets the maximum amount of time a connection may be reused.
Expired connections may be closed lazily before reuse.
If this value is less than or equal to 0, connections may not be closed due to a connection's age.
This value is parsed as a Go duration string (ex: 1s, 1m, 500ms) |
UpdateConnectionRequest
UpdateConnectionResponse
Services
ConnectionService
Service for managing datasource connections.
This is a primary data model in Neosync and is used in reference when hooking up Jobs to synchronize and generate data.
GetConnections
GetConnection
CreateConnection
UpdateConnection
DeleteConnection
IsConnectionNameAvailable
CheckConnectionConfig
CheckConnectionConfigById
CheckSqlQuery
Method | CheckSqlQuery |
---|
Request | CheckSqlQueryRequest |
---|
Response | CheckSqlQueryResponse |
---|
Description | Checks a constructed SQL query against a sql-based connection to see if it's valid based on that connection's data schema
This is useful when constructing subsets to see if the WHERE clause is correct |
---|