Services

EntitiesService

(synq.entities.custom.v1.EntitiesService)

custom.EntitiesService is a service for managing custom entities. Entities can represent various data platform concepts such as services, consumers, applications or data pipelines that are not natively available in Synq.

Entities are identified by a unique identifier and can be created, updated, read and deleted.

UpsertEntity

UpsertEntity (UpsertEntityRequest) UpsertEntityResponse

Create or update an entity. If the entity does not exist, it will be created, otherwise it will be updated. Entities are identified and deduplicated by their Identifier in a scope of a given customer workspace.

DeleteEntity

DeleteEntity (DeleteEntityRequest) DeleteEntityResponse

Delete an entity by its identifier. If the entity does not exist, it will be a no-op.

ListEntities

ListEntities (ListEntitiesRequest) ListEntitiesResponse

List all entities.

RelationshipsService

(synq.entities.custom.v1.RelationshipsService)

RelationshipsService allow management of relationships between entities. Relationships can be created, updated, and deleted between 2 custom entities, or between a custom entity and Synq native entity.enum There is no option to create relationships between 2 Synq native entities (dbt model, BI dashboard, etc.).

UpsertRelationships

UpsertRelationships (UpsertRelationshipsRequest) UpsertRelationshipsResponse

Create or update relationships between entities. If the relationship already exists, it will be updated, otherwise it will be created.

DeleteRelationships

DeleteRelationships (DeleteRelationshipsRequest) DeleteRelationshipsResponse

Delete relationships between entities. If the relationship does not exist, it will be ignored.

ChecksRelationshipsService

(synq.entities.custom.v1.ChecksRelationshipsService)

UpsertCheckRelationships

UpsertCheckRelationships (UpsertCheckRelationshipsRequest) UpsertCheckRelationshipsResponse

DeleteCheckRelationships

DeleteCheckRelationships (DeleteCheckRelationshipsRequest) DeleteCheckRelationshipsResponse

FeaturesService

(synq.entities.custom.v1.FeaturesService)

UpsertEntityFeature

UpsertEntityFeature (UpsertEntityFeatureRequest) UpsertEntityFeatureResponse

Create or update an entity. If the entity does not exist, it will be created, otherwise it will be updated. Entities are identified and deduplicated by their Identifier in a scope of a given customer workspace.

DeleteEntityFeature

DeleteEntityFeature (DeleteEntityFeatureRequest) DeleteEntityFeatureResponse

Delete an entity by its identifier. If the entity does not exist, it will be a no-op.

ListEntityFeatures

ListEntityFeatures (ListEntityFeaturesRequest) ListEntityFeaturesResponse

List all entities.

TypesService

(synq.entities.custom.v1.TypesService)

TypesService is a service for managing custom entity types.

UpsertType

UpsertType (UpsertTypeRequest) UpsertTypeResponse

Create or update an entity. If the entity does not exist, it will be created, otherwise it will be updated. Entities are identified and deduplicated by their Identifier in a scope of a given customer workspace.

DeleteType

DeleteType (DeleteTypeRequest) DeleteTypeResponse

Delete an entity by its identifier. If the entity does not exist, it will be a no-op.

ListTypes

ListTypes (ListTypesRequest) ListTypesResponse

List all entities.

LineageService

(synq.entities.lineage.v1.LineageService)

LineageService allows you to fetch:

  • Entity level lineage from a starting point of one or more entities.
  • Column Level lineage from a starting point of multiple columns of a single entity.

GetLineage

GetLineage (GetLineageRequest) GetLineageResponse

EntitiesService

(synq.entities.entities.v1.EntitiesService)

EntitiesService is a service for retriving any entity.

GetEntity

GetEntity (GetEntityRequest) GetEntityResponse

Get specific entity by its identifier.

BatchGetEntities

BatchGetEntities (BatchGetEntitiesRequest) BatchGetEntitiesResponse

Get multiple entities by their identifiers.

EntityExecutionsService

(synq.entities.executions.v1.EntityExecutionsService)

UpsertExecution

UpsertExecution (UpsertExecutionRequest) UpsertExecutionResponse

EntityIssuesService

(synq.entities.status.v1.EntityIssuesService)

EntityIssuesService is the service which retrieves entity issues status.

GetIssuesStatus

GetIssuesStatus (GetIssuesStatusRequest) GetIssuesStatusResponse

Get specific entity status by its identifier.

BatchGetIssuesStatus

BatchGetIssuesStatus (BatchGetIssuesStatusRequest) BatchGetIssuesStatusResponse

Get multiple entity statuses by their identifiers.

EntityIncidentsService

(synq.entities.status.v1.EntityIncidentsService)

EntityIncidentsService is the service which retrieves entity status.

GetIncidents

GetIncidents (GetIncidentsRequest) GetIncidentsResponse

Get specific entity status by its identifier.

BatchGetIncidents

BatchGetIncidents (BatchGetIncidentsRequest) BatchGetIncidentsResponse

Get multiple entity statuses by their identifiers.

SqlTestsService

(synq.datachecks.sqltests.v1.SqlTestsService)

SqlTestsService is a service for managing SqlTests.

BatchUpsertSqlTests

BatchUpsertSqlTests (BatchUpsertSqlTestsRequest) BatchUpsertSqlTestsResponse

Upsert SqlTests based on a unique ID.

ListSqlTests

ListSqlTests (ListSqlTestsRequest) ListSqlTestsResponse

List SqlTests for given annotations.

BatchGetSqlTests

BatchGetSqlTests (BatchGetSqlTestsRequest) BatchGetSqlTestsResponse

Get SqlTests by their IDs.

BatchDeleteSqlTests

BatchDeleteSqlTests (BatchDeleteSqlTestsRequest) BatchDeleteSqlTestsResponse

Delete SqlTests by their IDs.

SqlMeshService

(synq.ingest.sqlmesh.v1.SqlMeshService)

IngestMetadata

IngestMetadata (IngestMetadataRequest) IngestMetadataResponse

IngestExecution

IngestExecution (IngestExecutionRequest) IngestExecutionResponse

DbtService

(synq.ingest.dbt.v1.DbtService)

IngestInvocation

IngestInvocation (IngestInvocationRequest) IngestInvocationResponse

Messages

SqlDefinition

(synq.entities.custom.features.v1.SqlDefinition)

SqlDefinition is a feature that allows to define lineage via SQL for a custom entity. Used to generate dependencies and other metadata. If parsed successfully, it will provide a code and column level lineage. Can be used to define simplified transformation of data which component performs using e.g. INSERT INTO foo SELECT * FROM bar.

FieldTypeDescription
state_at TimestampTime when the sql was defined, will default to now if not set.
dialect SqlDialectSQL dialect used in the SQL.
sql stringFinal form of the SQL as executed in the database/data warehouse. Must be a valid SQL in the selected dialect.

GitFileReference

(synq.entities.custom.features.v1.GitFileReference)

GitFileReference represents a reference to a file in a git repository.

FieldTypeDescription
repository_url stringURL of the git repository. Preferably SSH clone URL.
branch_name stringName of the branch in the git repository.
file_path stringPath to the file in the git repository.

Code

(synq.entities.custom.features.v1.Code)

Code feature represents a code snippet associated with the entity. If support for code parsing and dependency extraction is needed use SqlDefinition.

FieldTypeDescription
name stringMight be e.g. name of the file or a function.
code_type CodeTypeType of the code.
content stringContent of the code. Displayed in the UI.

Schema

(synq.entities.custom.features.v1.Schema)

Schema represents a schema of a table like entity

FieldTypeDescription
state_at TimestampTime when the schema was defined, will default to now if not set.
columnsrepeated SchemaColumnColumns of the schema Columns are ordered by ordinal_position, it has to be defined for all or none of the columns, when not defined, ordinal positions are attached according to the order of columns in the list.

SchemaColumn

(synq.entities.custom.features.v1.SchemaColumn)

FieldTypeDescription
name stringHuman readable name of the column as present in dbt or data warehouse.
native_type stringNative data type of the column as present in data warehouse.
description stringDescription of the column
ordinal_position int32Ordinal position of the column in the table, starting from 1
is_struct boolIndicates that the column type could be used as a struct/json in a data warehouse
is_repeated boolIndicates that the column is a repeated field in a data warehouse (e.g. array)
fieldsrepeated SchemaColumnFieldFields inside of the struct/record like column

SchemaColumnField

(synq.entities.custom.features.v1.SchemaColumnField)

FieldTypeDescription
name stringHuman readable name of the column as present in dbt or data warehouse.
native_type stringNative data type of the column as present in data warehouse.
description stringDescription of the column
ordinal_position int32Ordinal position of the column in the struct, starting from 1
is_struct boolIndicates that the field type could be used as a struct/json in a data warehouse
is_repeated boolIndicates that the field is a repeated field in a data warehouse (e.g. array)
fieldsrepeated SchemaColumnFieldFields inside of the struct/record like field

DeleteEntityRequest

(synq.entities.custom.v1.DeleteEntityRequest)

DeleteEntityRequest is the request message for the DeleteEntity method.

FieldTypeDescription
id IdentifierIdentifier of the entity to delete.

DeleteEntityResponse

(synq.entities.custom.v1.DeleteEntityResponse)

DeleteEntityResponse is the response message for the DeleteEntity method.

ListEntitiesRequest

(synq.entities.custom.v1.ListEntitiesRequest)

ListEntitiesResponse

(synq.entities.custom.v1.ListEntitiesResponse)

FieldTypeDescription
entitiesrepeated Entitynone

UpsertEntityRequest

(synq.entities.custom.v1.UpsertEntityRequest)

UpsertEntityRequest is the request message for the UpsertEntity method.

FieldTypeDescription
entity EntityThe entity to create or update.

UpsertEntityResponse

(synq.entities.custom.v1.UpsertEntityResponse)

UpsertEntityResponse is the response message for the UpsertEntity method.

DeleteRelationshipsRequest

(synq.entities.custom.v1.DeleteRelationshipsRequest)

FieldTypeDescription
relationshipsrepeated Relationshipnone

DeleteRelationshipsResponse

(synq.entities.custom.v1.DeleteRelationshipsResponse)

Relationship

(synq.entities.custom.v1.Relationship)

FieldTypeDescription
upstream Identifiernone
downstream Identifiernone

UpsertRelationshipsRequest

(synq.entities.custom.v1.UpsertRelationshipsRequest)

FieldTypeDescription
relationshipsrepeated Relationshipnone

UpsertRelationshipsResponse

(synq.entities.custom.v1.UpsertRelationshipsResponse)

CheckRelationship

(synq.entities.custom.v1.CheckRelationship)

FieldTypeDescription
check Identifiernone
checked Identifiernone
checked_columnsrepeated stringnone

DeleteCheckRelationshipsRequest

(synq.entities.custom.v1.DeleteCheckRelationshipsRequest)

FieldTypeDescription
check_relationshipsrepeated CheckRelationshipnone

DeleteCheckRelationshipsResponse

(synq.entities.custom.v1.DeleteCheckRelationshipsResponse)

UpsertCheckRelationshipsRequest

(synq.entities.custom.v1.UpsertCheckRelationshipsRequest)

FieldTypeDescription
check_relationshipsrepeated CheckRelationshipnone

UpsertCheckRelationshipsResponse

(synq.entities.custom.v1.UpsertCheckRelationshipsResponse)

DeleteEntityFeatureRequest

(synq.entities.custom.v1.DeleteEntityFeatureRequest)

FieldTypeDescription
entity_id IdentifierIdentifier of the entity to delete feature from.
feature_id stringIdentifier of the feature to delete.

DeleteEntityFeatureResponse

(synq.entities.custom.v1.DeleteEntityFeatureResponse)

Feature

(synq.entities.custom.v1.Feature)

FieldTypeDescription
workspace stringImmutable workspace identifier that this entity belongs to.
entity_id IdentifierThe identifier of the entity to create or update feature for.
feature_id stringIdentifier of the feature. Can be any string, e.g. “sql” for SQL feature. Use same identifier to update the feature. Do not use random identifier as it will create a new feature on every update.
oneof feature.sql_definition SqlDefinitionOnly one feature per entity.
oneof feature.git_file_reference GitFileReferenceMultiple features per entity.
oneof feature.code CodeMultiple features per entity.
oneof feature.schema SchemaOnly one feature per entity.
created_at TimestampTimestamp when the entity was created.
updated_at TimestampTimestamp when the entity was last updated.
deleted_at TimestampTimestamp when the entity was deleted. If this is set, the entity is considered deleted.

ListEntityFeaturesRequest

(synq.entities.custom.v1.ListEntityFeaturesRequest)

FieldTypeDescription
entity_id IdentifierIdentifier of the entity to get features for.

ListEntityFeaturesResponse

(synq.entities.custom.v1.ListEntityFeaturesResponse)

FieldTypeDescription
featuresrepeated FeatureList of features for the entity.

UpsertEntityFeatureRequest

(synq.entities.custom.v1.UpsertEntityFeatureRequest)

FieldTypeDescription
feature FeatureThe feature to create or update.

UpsertEntityFeatureResponse

(synq.entities.custom.v1.UpsertEntityFeatureResponse)

DeleteTypeRequest

(synq.entities.custom.v1.DeleteTypeRequest)

FieldTypeDescription
type_id int32Identifier of the custom entity type to delete.

DeleteTypeResponse

(synq.entities.custom.v1.DeleteTypeResponse)

ListTypesRequest

(synq.entities.custom.v1.ListTypesRequest)

ListTypesResponse

(synq.entities.custom.v1.ListTypesResponse)

FieldTypeDescription
typesrepeated TypeList of entities.

UpsertTypeRequest

(synq.entities.custom.v1.UpsertTypeRequest)

FieldTypeDescription
type TypeEntity to create or update.

UpsertTypeResponse

(synq.entities.custom.v1.UpsertTypeResponse)

CllDetails

(synq.entities.lineage.v1.CllDetails)

FieldTypeDescription
columnsrepeated ColumnColumn details for CLL.
cll_state CllStateState of the CLL parse. UNSPECIFIED if CLL was not requested.
cll_messagesrepeated stringMessages related to CLL. e.g. Description of parse errors, etc.

Column

(synq.entities.lineage.v1.Column)

Column in a table-like asset (used in CLL mode).

FieldTypeDescription
column_id stringID string for the column. This is the parsed column name.
oneof _name.nameoptional stringOriginal column name as fetched from the table.
oneof _native_type.native_typeoptional stringColumn type as fetched from the table.

ColumnDependency

(synq.entities.lineage.v1.ColumnDependency)

Indicates data flow between columns. Source columns are used to compute value of target columns.

FieldTypeDescription
source_node_idx uint32Index of source node in the lineage nodes list.
source_node_column_id stringnone
target_node_idx uint32Index of target node in the lineage nodes list.
target_node_column_id stringnone

Lineage

(synq.entities.lineage.v1.Lineage)

Lineage defines the lineage of table-like entities.

FieldTypeDescription
nodesrepeated LineageNodeNodes in the lineage with their identities and columns.
node_dependenciesrepeated NodeDependencyAll edges in the lineage between nodes. This can be parsed to create a graph of all the nodes.
is_cll boolIndicates whether the lineage was filtered for column level lineage (CLL).
column_dependenciesrepeated ColumnDependencyDependencies between columns. Populated only for CLL.

LineageNode

(synq.entities.lineage.v1.LineageNode)

Node in a lineage graph representing one or more entities (e.g. database table).

FieldTypeDescription
idsrepeated IdentifierAll entities which have the same identity as this node. Must be at least one item. These are sorted by closeness to the type of the start point entities. e.g. if requesting lineage of a DBT source, first entity should be from DBT, similarly when viewing table it will be other tables.
position NodePositionPosition of the node in the lineage.
oneof _cll_details.cll_detailsoptional CllDetailsPopulated only for Column Level Lineage (CLL).

NodeDependency

(synq.entities.lineage.v1.NodeDependency)

Indicates data flow between nodes. Source nodes are used to compute value of target nodes.

FieldTypeDescription
source_node_idx uint32Index of source node in the lineage nodes list.
target_node_idx uint32Index of target node in the lineage nodes list.

EntitiesStartPoint

(synq.entities.lineage.v1.EntitiesStartPoint)

FieldTypeDescription
entitiesrepeated Identifiernone

EntityColumnsStartPoint

(synq.entities.lineage.v1.EntityColumnsStartPoint)

FieldTypeDescription
id Identifiernone
column_namesrepeated stringnone

GetLineageRequest

(synq.entities.lineage.v1.GetLineageRequest)

FieldTypeDescription
lineage_direction LineageDirectionnone
start_point GetLineageStartPointnone
oneof _max_depth.max_depthoptional int32none

GetLineageResponse

(synq.entities.lineage.v1.GetLineageResponse)

FieldTypeDescription
lineage Lineagenone

GetLineageStartPoint

(synq.entities.lineage.v1.GetLineageStartPoint)

Possible starting points to get lineage from.

FieldTypeDescription
oneof from.entities EntitiesStartPointnone
oneof from.entity_columns EntityColumnsStartPointnone

BatchGetEntitiesRequest

(synq.entities.entities.v1.BatchGetEntitiesRequest)

BatchGetEntitiesRequest is the request message for the BatchGetEntities method.

FieldTypeDescription
idsrepeated IdentifierIdentifiers of the entities to get.

BatchGetEntitiesResponse

(synq.entities.entities.v1.BatchGetEntitiesResponse)

BatchGetEntitiesResponse is the response message for the BatchGetEntities method.

FieldTypeDescription
entitiesrepeated EntityThe entities that were retrieved.

GetEntityRequest

(synq.entities.entities.v1.GetEntityRequest)

GetEntityRequest is the request message for the GetEntity method.

FieldTypeDescription
id IdentifierIdentifier of the entity to get.

GetEntityResponse

(synq.entities.entities.v1.GetEntityResponse)

GetEntityResponse is the response message for the GetEntity method.

FieldTypeDescription
entity EntityThe entity that was retrieved.

Annotation

(synq.entities.v1.Annotation)

Annotations can be used to annotate any entity with a key:value pair. These annotations can be used for filtering and searching entities.

FieldTypeDescription
name stringString key for the annotation.
valuesrepeated stringOptional list of values that the annotation can carry.

Entity

(synq.entities.v1.Entity)

Entity is the base type for all entities in the system. Its always attached to a given client workspace and can be uniquely identified by its id.

FieldTypeDescription
workspace stringImmutable workspace identifier that this entity belongs to.
id IdentifierUnique identifier for this entity.
type_id int32Id of custom type or default type when 0
name stringName of the entity that is displayed to the user.
description stringDescription of the entity that is displayed in relevant contexts. Can contain Markdown.
created_at TimestampTimestamp when the entity was created.
updated_at TimestampTimestamp when the entity was last updated.
deleted_at TimestampTimestamp when the entity was deleted. If this is set, the entity is considered deleted.
synq_path stringReturn only value. Synq Path to the entity. This is a unique path that can be used to access the entity in the Synq’s UI.
synq_catalog_url stringReturn only value. Synq URL to the entity. This is a unique URL that can be used to access the entity in the Synq’s UI.
annotationsrepeated AnnotationAnnotations attached to the entity. Annotations are key-value pairs that can be used to store metadata about the entity.

AirflowDagIdentifier

(synq.entities.v1.AirflowDagIdentifier)

FieldTypeDescription
integration_id stringSynq integration_id that identifies the Airflow instance
dag_id stringAirflow dag_id that identifies the DAG

AirflowTaskIdentifier

(synq.entities.v1.AirflowTaskIdentifier)

FieldTypeDescription
integration_id stringSynq integration_id that identifies the Airflow instance
dag_id stringAirflow dag_id that identifies the DAG
task_id stringAirflow task_id that identifies the task within the DAG

BigqueryTableIdentifier

(synq.entities.v1.BigqueryTableIdentifier)

FieldTypeDescription
project stringBigQuery project
dataset stringBigQuery dataset id
table stringBigQuery table name

ClickhouseTableIdentifier

(synq.entities.v1.ClickhouseTableIdentifier)

FieldTypeDescription
host stringClickhouse host inclusive of port
schema stringClickhouse database
table stringClickhouse table

CustomIdentifier

(synq.entities.v1.CustomIdentifier)

FieldTypeDescription
id stringId that identifies the custom entity The Id should be unique within the custom entity Identifier.

DatabricksTableIdentifier

(synq.entities.v1.DatabricksTableIdentifier)

FieldTypeDescription
workspace stringURL of Databricks workspace
catalog stringDatabricks catalog
schema stringDatabricks schema
table stringDatabricks table or view

DataproductIdentifier

(synq.entities.v1.DataproductIdentifier)

FieldTypeDescription
id stringDataproduct id that identifies the Dataproduct

DbtCloudNodeIdentifier

(synq.entities.v1.DbtCloudNodeIdentifier)

FieldTypeDescription
project_id stringYour dbt Cloud project id
account_id stringYour dbt Cloud account id
node_id stringDbt node_id that identifies one of dbt DAG nodes (model, test, etc)

DbtCoreNodeIdentifier

(synq.entities.v1.DbtCoreNodeIdentifier)

FieldTypeDescription
integration_id stringSynq integration_id that identifies the dbt Core project
node_id stringDbt node_id that identifies one of dbt DAG nodes (model, test, etc)

Identifier

(synq.entities.v1.Identifier)

Identifier is a unique reference to an entity in Synq system. Entity identifiers are designed to closely mimic identifiers used by data platforms and tools. To construct an identifier, you need to know the kind of the entity and the ids that you would normally use to identify it in the data platform or tool. For example, to identify a table in BigQuery, you would need to know the project, dataset, and table names.

FieldTypeDescription
oneof id.dbt_core_node DbtCoreNodeIdentifierDbt node that identifies one of dbt DAG nodes (model, test, etc) in dbt Core project
oneof id.dbt_cloud_node DbtCloudNodeIdentifierDbt node that identifies one of dbt DAG nodes (model, test, etc) in dbt Cloud project
oneof id.bigquery_table BigqueryTableIdentifierBigQuery table identifier
oneof id.snowflake_table SnowflakeTableIdentifierSnowflake table identifier
oneof id.redshift_table RedshiftTableIdentifierRedshift table identifier
oneof id.postgres_table PostgresTableIdentifierPostgres table identifier
oneof id.mysql_table MysqlTableIdentifierMysql table identifier
oneof id.clickhouse_table ClickhouseTableIdentifierClickhouse table identifier
oneof id.databricks_table DatabricksTableIdentifierDatabricks table identifier
oneof id.airflow_dag AirflowDagIdentifierAirflow DAG identifier
oneof id.airflow_task AirflowTaskIdentifierAirflow task identifier within a given DAG
oneof id.custom CustomIdentifierCustom identifier to be used with all custom created entities
oneof id.dataproduct DataproductIdentifierDataproduct identifier
oneof id.synq_path SynqPathIdentifierSynqPath identifier

MysqlTableIdentifier

(synq.entities.v1.MysqlTableIdentifier)

FieldTypeDescription
host stringMysql host inclusive of port
schema stringMysql database
table stringMysql table

PostgresTableIdentifier

(synq.entities.v1.PostgresTableIdentifier)

FieldTypeDescription
host stringPostgres host inclusive of port
database stringPostgres database
schema stringPostgres schema
table stringPostgres table

RedshiftTableIdentifier

(synq.entities.v1.RedshiftTableIdentifier)

FieldTypeDescription
cluster stringRedshift cluster
database stringRedshift database
schema stringRedshift schema
table stringRedshift table

SnowflakeTableIdentifier

(synq.entities.v1.SnowflakeTableIdentifier)

FieldTypeDescription
account stringSnowflake account
database stringSnowflake database
schema stringSnowflake schema
table stringSnowflake table

SynqPathIdentifier

(synq.entities.v1.SynqPathIdentifier)

FieldTypeDescription
path stringSynq path that identifies the Synq entity, needs to be one of supported paths

Type

(synq.entities.v1.Type)

Custom entity type that is used to categorize custom entities.

FieldTypeDescription
workspace stringImmutable workspace identifier that this custom entity type belongs to.
type_id int32none
name stringName of the custom entity type that is displayed to the user.
svg_icon bytesSVG icon of the custom entity type that is displayed to the user.
svg_icon_id stringSYNQ identifier used for CDN purposes, read-only.
created_at TimestampTimestamp when the custom entity type was created.
updated_at TimestampTimestamp when the custom entity type was last updated.
deleted_at TimestampTimestamp when the custom entity type was deleted. If this is set, the custom entity type is considered deleted.

Execution

(synq.entities.executions.v1.Execution)

FieldTypeDescription
id Identifiernone
status ExecutionStatusnone
message stringnone
created_at Timestampnone
started_at Timestampnone
finished_at Timestampnone
annotationsrepeated Annotationnone
extrasrepeated ExecutionExtranone

ExecutionExtra

(synq.entities.executions.v1.ExecutionExtra)

FieldTypeDescription
oneof extra.executed_sql stringnone

UpsertExecutionRequest

(synq.entities.executions.v1.UpsertExecutionRequest)

FieldTypeDescription
execution Executionnone

UpsertExecutionResponse

(synq.entities.executions.v1.UpsertExecutionResponse)

BatchGetIssuesStatusRequest

(synq.entities.status.v1.BatchGetIssuesStatusRequest)

BatchGetIssuesStatusRequest is the request message for the BatchGetIssues method.

FieldTypeDescription
requestsrepeated GetIssuesStatusRequestnone

BatchGetIssuesStatusResponse

(synq.entities.status.v1.BatchGetIssuesStatusResponse)

BatchGetIssuesStatusResponse is the response message for the BatchGetIssues method.

FieldTypeDescription
responsesrepeated GetIssuesStatusResponsenone

GetIssuesStatusRequest

(synq.entities.status.v1.GetIssuesStatusRequest)

GetIssuesStatusRequest is the request message for the GetEntity method.

FieldTypeDescription
id IdentifierIdentifier of the entity to get status for.
fetch_upstream_status boolRetrieve status of upstream entities.

GetIssuesStatusResponse

(synq.entities.status.v1.GetIssuesStatusResponse)

GetIssuesStatusResponse is the response message for the GetEntity method.

FieldTypeDescription
id IdentifierIdentifier of the entity.
entity_issues_status IssueStatusStatus of the entity requested.
entity_issues_summary IssuesSummarynone
upstream_issues_status IssueStatusOptionally, the status of all upstream entities.
upstream_issues_summary IssuesSummarynone

GetIssuesStatusResponse.IssuesSummary

(synq.entities.status.v1.GetIssuesStatusResponse.IssuesSummary)

FieldTypeDescription
total_count int32Number of issues for the entity.
warn_count int32Number of issues for the entity with status ‘warn’.
error_count int32Number of issues for the entity with status ‘error’.
critical_count int32Number of issues for the entity with status ‘critical’.

EntityIncident

(synq.entities.status.v1.EntityIncident)

FieldTypeDescription
id stringUnique identifier of the incident.
url stringURL of the incident.
name stringName of the incident give by the user.
created_by stringInformation about author of the incident.
created_at TimestampTime when the incident was created.
updated_by stringInformation about the user who last updated the incident.
updated_at TimestampTime when the incident was last updated.
is_resolved boolIndicates if all issues inside the incident are resolved.

BatchGetIncidentsRequest

(synq.entities.status.v1.BatchGetIncidentsRequest)

BatchGetIncidentsRequest is the request message for the BatchGetIssues method.

FieldTypeDescription
requestsrepeated GetIncidentsRequestnone

BatchGetIncidentsResponse

(synq.entities.status.v1.BatchGetIncidentsResponse)

BatchGetIncidentsResponse is the response message for the BatchGetIssues method.

FieldTypeDescription
responsesrepeated GetIncidentsResponsenone

GetIncidentsRequest

(synq.entities.status.v1.GetIncidentsRequest)

GetIncidentsRequest is the request message for the GetEntity method.

FieldTypeDescription
id IdentifierIdentifier of the entity to get incidents for.
fetch_upstream_incidents boolRetrieve incidents of upstream entities.

GetIncidentsResponse

(synq.entities.status.v1.GetIncidentsResponse)

GetIncidentsResponse is the response message for the GetEntity method.

FieldTypeDescription
id IdentifierIdentifier of the entity.
entity_open_incidentsrepeated EntityIncidentOpen incident associated with the entity requested.
upstream_open_incidentsrepeated EntityIncidentOpen incidents associated with the upstream entities if requested.

ScopeAuthorization

(synq.v1.ScopeAuthorization)

FieldTypeDescription
scopesrepeated Scopenone

BigqueryIdentifier

(synq.platforms.v1.BigqueryIdentifier)

FieldTypeDescription
project stringBigQuery project

ClickhouseIdentifier

(synq.platforms.v1.ClickhouseIdentifier)

FieldTypeDescription
host stringClickhouse host inclusive of port
schema stringClickhouse database

DataPlatformIdentifier

(synq.platforms.v1.DataPlatformIdentifier)

DataPlatformIdentifier is a unique reference to a data platform integrated with Synq.

FieldTypeDescription
oneof id.unknown UnknownDataPlatformnone
oneof id.bigquery BigqueryIdentifiernone
oneof id.clickhouse ClickhouseIdentifiernone
oneof id.snowflake SnowflakeIdentifiernone
oneof id.redshift RedshiftIdentifiernone
oneof id.postgres PostgresIdentifiernone
oneof id.mysql MysqlIdentifiernone
oneof id.databricks DatabricksIdentifiernone

DatabricksIdentifier

(synq.platforms.v1.DatabricksIdentifier)

FieldTypeDescription
workspace stringURl of the databricks workspace

MysqlIdentifier

(synq.platforms.v1.MysqlIdentifier)

FieldTypeDescription
host stringMysql host inclusive of port

PostgresIdentifier

(synq.platforms.v1.PostgresIdentifier)

FieldTypeDescription
host stringPostgres host inclusive of port
database stringPostgres database

RedshiftIdentifier

(synq.platforms.v1.RedshiftIdentifier)

FieldTypeDescription
cluster stringRedshift cluster
database stringRedshift database

SnowflakeIdentifier

(synq.platforms.v1.SnowflakeIdentifier)

FieldTypeDescription
account stringSnowflake account
database stringSnowflake database

UnknownDataPlatform

(synq.platforms.v1.UnknownDataPlatform)

SqlTest

(synq.datachecks.sqltests.v1.SqlTest)

The SqlTest is a SQL test that is executed on a synq entity.

FieldTypeDescription
platform DataPlatformIdentifierIdentifier for the data platform which the SqlTest would be executed on.
id stringUnique resource identifier for the SqlTest. This is externally maintained and can be used to fetch/update/delete this test.
name stringHuman friendly name.
sql_expression stringA valid SQL expression which is the test.
recurrence_rule stringRecurrence rule for the execution schedule of the SqlTest.
annotationsrepeated AnnotationAnnotations for the given SqlTest.These help filter the SqlTests for later operations like listing by API, selection in UI, analytics, etc.
save_failures boolBoolean flag to to toggle saving of failure runs.

BatchDeleteSqlTestsRequest

(synq.datachecks.sqltests.v1.BatchDeleteSqlTestsRequest)

FieldTypeDescription
idsrepeated stringIDs of the SqlTests to delete.

BatchDeleteSqlTestsResponse

(synq.datachecks.sqltests.v1.BatchDeleteSqlTestsResponse)

BatchGetSqlTestsRequest

(synq.datachecks.sqltests.v1.BatchGetSqlTestsRequest)

FieldTypeDescription
idsrepeated stringIDs of the SqlTests to fetch.

BatchGetSqlTestsResponse

(synq.datachecks.sqltests.v1.BatchGetSqlTestsResponse)

FieldTypeDescription
sql_testsmap SqlTestsEntrynone

BatchGetSqlTestsResponse.SqlTestsEntry

(synq.datachecks.sqltests.v1.BatchGetSqlTestsResponse.SqlTestsEntry)

FieldTypeDescription
key stringnone
value SqlTestnone

BatchUpsertSqlTestsRequest

(synq.datachecks.sqltests.v1.BatchUpsertSqlTestsRequest)

FieldTypeDescription
sql_testsrepeated SqlTestList of SqlTests to upsert. The upsert is performed based on the unique path provided for each SqlTest.

BatchUpsertSqlTestsResponse

(synq.datachecks.sqltests.v1.BatchUpsertSqlTestsResponse)

FieldTypeDescription
created_idsrepeated stringIDs for which SqlTests were created without error.
updated_idsrepeated stringIDs for which SqlTests were updated without error.
errorsrepeated UpsertErrorErrors raised while upsert. This list will be empty if there were no errors.

BatchUpsertSqlTestsResponse.UpsertError

(synq.datachecks.sqltests.v1.BatchUpsertSqlTestsResponse.UpsertError)

Details of errors encountered during the upsert operation.

FieldTypeDescription
id stringnone
reason stringnone

ListSqlTestsRequest

(synq.datachecks.sqltests.v1.ListSqlTestsRequest)

FieldTypeDescription
annotationsrepeated AnnotationOptional annotations to fetch SqlTests for.

ListSqlTestsResponse

(synq.datachecks.sqltests.v1.ListSqlTestsResponse)

FieldTypeDescription
sql_testsrepeated SqlTestnone

GitContext

(synq.ingest.sqlmesh.v1.GitContext)

FieldTypeDescription
clone_url stringnone
branch stringnone
commit_sha stringnone

IngestExecutionRequest

(synq.ingest.sqlmesh.v1.IngestExecutionRequest)

FieldTypeDescription
commandrepeated stringCommand passed to the sqlmesh tool
exit_code int32Exit code of the sqlmesh command
std_out bytesStandard output log of the SqlMesh command
std_err bytesStandard error log of the SqlMesh command
environment_varsmap EnvironmentVarsEntryEnvironment variables collected during execution
uploader_version stringVersion of the uploader tool
uploader_build_time stringBuild time of the uploader tool
started_at TimestampTime at which the execution started
finished_at TimestampTime at which the execution finished
git_context GitContextGit context of the project

IngestExecutionRequest.EnvironmentVarsEntry

(synq.ingest.sqlmesh.v1.IngestExecutionRequest.EnvironmentVarsEntry)

FieldTypeDescription
key stringnone
value stringnone

IngestExecutionResponse

(synq.ingest.sqlmesh.v1.IngestExecutionResponse)

IngestMetadataRequest

(synq.ingest.sqlmesh.v1.IngestMetadataRequest)

FieldTypeDescription
api_meta bytesData from /api/meta
models bytesData from /api/models
model_detailsmap ModelDetailsEntryData from /api/models/
model_lineagemap ModelLineageEntryData from /api/lineage/
files bytesData from /api/files
file_contentmap FileContentEntryData from /api/file/
environments bytesData from /api/environments
uploader_version stringVersion of the uploader tool
uploader_build_time stringBuild time of the uploader tool
state_at TimestampTime at which state was collected
git_context GitContextGit context of the project

IngestMetadataRequest.FileContentEntry

(synq.ingest.sqlmesh.v1.IngestMetadataRequest.FileContentEntry)

FieldTypeDescription
key stringnone
value bytesnone

IngestMetadataRequest.ModelDetailsEntry

(synq.ingest.sqlmesh.v1.IngestMetadataRequest.ModelDetailsEntry)

FieldTypeDescription
key stringnone
value bytesnone

IngestMetadataRequest.ModelLineageEntry

(synq.ingest.sqlmesh.v1.IngestMetadataRequest.ModelLineageEntry)

FieldTypeDescription
key stringnone
value bytesnone

IngestMetadataResponse

(synq.ingest.sqlmesh.v1.IngestMetadataResponse)

DbtArtifact

(synq.ingest.dbt.v1.DbtArtifact)

https://docs.getdbt.com/reference/artifacts/dbt-artifacts

FieldTypeDescription
oneof artifact.manifest_json bytesnone
oneof artifact.run_results_json bytesnone
oneof artifact.catalog_json bytesnone
oneof artifact.sources_json bytesnone
oneof artifact.semantic_manifest_json bytesnone

IngestInvocationRequest

(synq.ingest.dbt.v1.IngestInvocationRequest)

FieldTypeDescription
argsrepeated stringArguments passed to the dbt executable
exit_code int32Exit code of the dbt command
std_out bytesStandard output log of the dbt command
std_err bytesStandard error log of the dbt command
environment_varsmap EnvironmentVarsEntryEnvironment variables collected during execution
artifactsrepeated DbtArtifactArtifacts generated by the dbt command
uploader_version stringVersion of the uploader tool
uploader_build_time stringBuild time of the uploader tool

IngestInvocationRequest.EnvironmentVarsEntry

(synq.ingest.dbt.v1.IngestInvocationRequest.EnvironmentVarsEntry)

FieldTypeDescription
key stringnone
value stringnone

IngestInvocationResponse

(synq.ingest.dbt.v1.IngestInvocationResponse)

Enums

SqlDialect

(synq.entities.custom.features.v1.SqlDialect)

NameNumberDescription
SQL_DIALECT_UNSPECIFIED0none
SQL_DIALECT_BIGQUERY1none
SQL_DIALECT_CLICKHOUSE2none
SQL_DIALECT_DATABRICKS3none
SQL_DIALECT_MYSQL4none
SQL_DIALECT_POSTGRESQL5none
SQL_DIALECT_REDSHIFT6none
SQL_DIALECT_SNOWFLAKE7none

CodeType

(synq.entities.custom.features.v1.CodeType)

NameNumberDescription
CODE_TYPE_UNSPECIFIED0none
CODE_TYPE_SQL1none
CODE_TYPE_PYTHON2none

CllState

(synq.entities.lineage.v1.CllState)

NameNumberDescription
CLL_STATE_UNSPECIFIED0Unspecified state.
CLL_STATE_PARSE_FAILED1Parsing of the asset SQL failed. No upstream dependencies can be found.
CLL_STATE_EXTRACTION_FAILED2Extraction of the asset SQL failed. Some unsupported SQL features may be used. Some details might be missing.
CLL_STATE_RESOLUTION_FAILED3Not all columns or tables were found upstream, lineage is not complete.
CLL_STATE_OK10No known issues present.

NodePosition

(synq.entities.lineage.v1.NodePosition)

NameNumberDescription
NODE_POSITION_UNSPECIFIED0none
NODE_POSITION_START_NODE1Node is one of the requested start point.
NODE_POSITION_UPSTREAM2Node is upstream of the requested start point.
NODE_POSITION_DOWNSTREAM3Node is downstream of the requested start point.

LineageDirection

(synq.entities.lineage.v1.LineageDirection)

Direction of the lineage to query.

NameNumberDescription
LINEAGE_DIRECTION_UNSPECIFIED0none
LINEAGE_DIRECTION_UPSTREAM1none
LINEAGE_DIRECTION_DOWNSTREAM2none
LINEAGE_DIRECTION_UPSTREAM_DOWNSTREAM3none

ExecutionStatus

(synq.entities.executions.v1.ExecutionStatus)

NameNumberDescription
EXECUTION_STATUS_UNSPECIFIED0none
EXECUTION_STATUS_OK1none
EXECUTION_STATUS_WARN2none
EXECUTION_STATUS_ERROR3none
EXECUTION_STATUS_CRITICAL4none

IssueStatus

(synq.entities.status.v1.IssueStatus)

NameNumberDescription
ISSUE_STATUS_UNSPECIFIED0none
ISSUE_STATUS_OK10none
ISSUE_STATUS_WARN20none
ISSUE_STATUS_ERROR30none
ISSUE_STATUS_CRITICAL40none

Scope

(synq.v1.Scope)

This has to match auth/v1/scope.proto

NameNumberDescription
SCOPE_UNSPECIFIED0none
SCOPE_ENTITY_READ1none
SCOPE_ENTITY_EDIT2none
SCOPE_LINEAGE_READ10none
SCOPE_LINEAGE_EDIT11none
SCOPE_STATUS_READ20none
SCOPE_INGEST_DBT30none
SCOPE_INGEST_SQLMESH31none
SCOPE_DATACHECKS_SQLTESTS_READ50none
SCOPE_DATACHECKS_SQLTESTS_EDIT51none
SCOPE_EXECUTION_EDIT60none
SCOPE_ENTITY_TYPE_READ70none
SCOPE_ENTITY_TYPE_EDIT71none