Skip to main content

Services

ScheduleService

(synq.schedule.v1.ScheduleService) ScheduleService provides schedule evaluation utilities.

PreviewSchedules

PreviewSchedules (PreviewSchedulesRequest) PreviewSchedulesResponse PreviewSchedules returns the next occurrences for one or more schedule expressions. Never fails at the RPC level; per-schedule errors are returned in the response items. Response items match request items by index.

PlatformsService

(synq.platforms.v1.PlatformsService) PlatformsService is a service for managing Platforms and Integrations.

SetPlatformAuthentication

SetPlatformAuthentication (SetPlatformAuthenticationRequest) SetPlatformAuthenticationResponse

CommitsService

(synq.git.commits.v1.CommitsService)

GetDiffByChangeId

GetDiffByChangeId (GetDiffByChangeIdRequest) GetDiffByChangeIdResponse

GetDiffByCommit

GetDiffByCommit (GetDiffByCommitRequest) GetDiffByCommitResponse

OwnersService

(synq.owners.v1.OwnersService) OwnersService manages owners and their ownerships — the “alert routing as code” surface. An owner is a named responsible party with notification channels (contacts); an ownership assigns a set of assets to an owner and configures the alerts routed to it. Owner is the resource, ownership its sub-resource: an ownership is meaningless without its owner, and deleting an owner deletes its ownerships. Ids are opaque UUIDs supplied by the caller, which makes writes idempotent (a retried create converges instead of duplicating). Mutable fields are optional on the Upsert calls: a set field is written, an omitted field is left unchanged. Pass the etag you last read to guard against overwriting a concurrent edit. Related: synq.dataproducts.v2.DataproductsService (an ownership can own a whole data product), synq.alerts.v1.AlertsService (how the configured alerts are reported), and synq.users.v1.UsersService (resolve the users behind UserContact and Slack/Teams mentions).

UpsertOwner

UpsertOwner (UpsertOwnerRequest) UpsertOwnerResponse Create or update an owner. The id is supplied by the caller (a UUID); repeating the same request converges to the same owner. Mutable fields are optional: a set field is written, an omitted field is left unchanged. Pass etag to guard against overwriting a concurrent edit.

BatchGetOwners

BatchGetOwners (BatchGetOwnersRequest) BatchGetOwnersResponse Fetch multiple owners by id. Ids that do not exist (or, unless include_deleted is set, are deleted) are omitted from the response rather than causing an error.

ListOwners

ListOwners (ListOwnersRequest) ListOwnersResponse List the owners in the workspace, paginated.

DeleteOwner

DeleteOwner (DeleteOwnerRequest) DeleteOwnerResponse Delete an owner and all of its ownerships. Idempotent — deleting an already-deleted or unknown owner succeeds. Soft-deletes by default; set purge to hard-delete and release the id. Pass etag to guard against deleting a concurrently-edited owner.

UpsertOwnership

UpsertOwnership (UpsertOwnershipRequest) UpsertOwnershipResponse Create or update an ownership under an owner. The ownership id is supplied by the caller (a UUID). Assigning a data product that is already owned by a different ownership moves it (the previous ownership of that product is removed), matching the app.

ListOwnerships

ListOwnerships (ListOwnershipsRequest) ListOwnershipsResponse List the ownerships of an owner, paginated.

BatchGetOwnerships

BatchGetOwnerships (BatchGetOwnershipsRequest) BatchGetOwnershipsResponse Fetch multiple ownerships by id (across owners). Ids that do not exist (or, unless include_deleted is set, are deleted) are omitted.

DeleteOwnership

DeleteOwnership (DeleteOwnershipRequest) DeleteOwnershipResponse Delete an ownership by id. Idempotent — deleting an already-deleted or unknown ownership succeeds. Pass etag to guard against deleting a concurrently-edited ownership.

NLQueryService

(synq.queries.v1.NLQueryService) NLQueryService generates structured Query protos from natural language descriptions using an LLM.

GenerateQuery

GenerateQuery (GenerateQueryRequest) GenerateQueryResponse GenerateQuery generates a Query from a natural language description.

IntegrationsService

(synq.integrations.v1.IntegrationsService) IntegrationsService manages connections from Coalesce Quality to your data systems (warehouses, databases, and transformation tools). Concurrency: every integration carries an opaque etag. Read it from GetIntegration / ListIntegrations, then pass it back on UpdateIntegration / DeleteIntegration to ensure you modify the version you last saw. A stale etag is rejected with ABORTED (HTTP 409). Omit the etag for last-write-wins. Quota: each workspace has a limit on the number of integrations. Creating beyond the limit is rejected with RESOURCE_EXHAUSTED. Secrets: credential fields (passwords, tokens, keys) are write-only. They are masked (returned empty) on every read. On update, omit a secret to keep it, send a new value to rotate it, or send an explicit empty string to clear it (where the field is optional).

CreateIntegration

CreateIntegration (CreateIntegrationRequest) CreateIntegrationResponse Create a new integration. The server assigns the id and returns the created integration including any generated outputs. The integration type is fixed by the populated config variant and cannot be changed later. Counts against the per-workspace quota. Not safe to blindly retry: the server mints a new id on each call, so a retried create produces a second integration. On a transport error, list / look up before retrying.

GetIntegration

GetIntegration (GetIntegrationRequest) GetIntegrationResponse Fetch a single integration by id. Secret config fields are masked.

ListIntegrations

ListIntegrations (ListIntegrationsRequest) ListIntegrationsResponse List all integrations in the workspace (optionally filtered by enabled state). Secret config fields are masked. The full set is returned in one response — a workspace has only a handful of integrations.

BatchGetIntegrations

BatchGetIntegrations (BatchGetIntegrationsRequest) BatchGetIntegrationsResponse Fetch multiple integrations by id in one call. Ids not found (or not in the workspace) are omitted from the response rather than erroring.

UpdateIntegration

UpdateIntegration (UpdateIntegrationRequest) UpdateIntegrationResponse Update an integration. The config is replaced wholesale — send the complete desired config (omitted secrets are preserved; see the service-level secret semantics). title is patch-style: omit it to leave it unchanged. The config variant must match the existing integration’s type; changing the type is rejected with FAILED_PRECONDITION. Safe to retry: addresses an existing id and converges to the same state. With an etag set, a retry after success returns ABORTED (the version moved) — treat that as “already applied”.

DeleteIntegration

DeleteIntegration (DeleteIntegrationRequest) DeleteIntegrationResponse Delete an integration. The integration stops being scheduled and is removed from listings. Safe to retry (deleting an already-deleted id is a no-op).

EnableIntegration

EnableIntegration (EnableIntegrationRequest) EnableIntegrationResponse Enable a previously disabled integration. No-op if already enabled.

DisableIntegration

DisableIntegration (DisableIntegrationRequest) DisableIntegrationResponse Disable an integration without deleting it. The configuration is kept but the integration is no longer scheduled or refreshed. No-op if already disabled.

RefreshIntegration

RefreshIntegration (RefreshIntegrationRequest) RefreshIntegrationResponse Trigger an immediate, ad-hoc refresh of an integration. Available only for types whose Capabilities.can_refresh is true; otherwise rejected with FAILED_PRECONDITION. Not idempotent: each call enqueues a new refresh.

GetIntegrationHealth

GetIntegrationHealth (GetIntegrationHealthRequest) GetIntegrationHealthResponse Return current health plus a paginated history of recent runs for an integration. When pagination is omitted, a bounded recent window is returned (the most recent runs from the last 7 days).

IamService

(synq.auth.iam.v1.IamService)

Iam

Iam (IamRequest) IamResponse Iam returns information about caller authentication

AtlanProviderService

(synq.extensions.atlan.provider.v1.AtlanProviderService)

GetAtlanConnections

GetAtlanConnections (GetAtlanConnectionsRequest) GetAtlanConnectionsResponse

GetAtlanDataProducts

GetAtlanDataProducts (GetAtlanDataProductsRequest) GetAtlanDataProductsResponse

GetAtlanDomains

GetAtlanDomains (GetAtlanDomainsRequest) GetAtlanDomainsResponse

AtlanWorkflowService

(synq.extensions.atlan.workflows.v1.AtlanWorkflowService)

SetConnectionMappings

SetConnectionMappings (SetConnectionMappingsRequest) SetConnectionMappingsResponse

RemoveConnectionMappings

RemoveConnectionMappings (RemoveConnectionMappingsRequest) RemoveConnectionMappingsResponse

GetConnectionMappings

GetConnectionMappings (GetConnectionMappingsRequest) GetConnectionMappingsResponse

GetProductMappings

GetProductMappings (GetProductMappingsRequest) GetProductMappingsResponse

GetDomainMappings

GetDomainMappings (GetDomainMappingsRequest) GetDomainMappingsResponse

Synchronize

Synchronize (SynchronizeRequest) SynchronizeResponse Run a synchronization job for the integration.

FetchRuns

FetchRuns (FetchRunsRequest) FetchRunsResponse

SetMappingToggles

SetMappingToggles (SetMappingTogglesRequest) SetMappingTogglesResponse

GetMappingToggles

GetMappingToggles (GetMappingTogglesRequest) GetMappingTogglesResponse

AtlanIntegrationService

(synq.extensions.atlan.integrations.v1.AtlanIntegrationService)

Upsert

Upsert (UpsertRequest) UpsertResponse Upserts an integration and validates it by checking if the provided API URL and token are valid.

Ping

Ping (PingRequest) PingResponse Pings Atlan with the given connection credentials.

Get

Get (GetRequest) GetResponse

Remove

Remove (RemoveRequest) RemoveResponse

Activate

Activate (ActivateRequest) ActivateResponse Activate or deactivate the integration.

IssuesService

(synq.issues.v2.IssuesService) IssuesService is a service for managing Issues.

BatchGetIssues

BatchGetIssues (BatchGetIssuesRequest) BatchGetIssuesResponse

ListIssues

ListIssues (ListIssuesRequest) ListIssuesResponse

MarkInvestigating

MarkInvestigating (MarkInvestigatingRequest) MarkInvestigatingResponse Mark issue as being investigated.

MarkFixed

MarkFixed (MarkFixedRequest) MarkFixedResponse Mark issue as fixed.

MarkExpected

MarkExpected (MarkExpectedRequest) MarkExpectedResponse Mark issue as expected.

MarkNoActionNeeded

MarkNoActionNeeded (MarkNoActionNeededRequest) MarkNoActionNeededResponse Mark issue as no action needed.

ClearStatus

ClearStatus (ClearStatusRequest) ClearStatusResponse Clear the triage status of an issue, returning it to an untriaged state. Reverses a previous MarkInvestigating / MarkFixed / MarkExpected / MarkNoActionNeeded so the issue shows up again in open/untriaged views.

PostComment

PostComment (PostCommentRequest) PostCommentResponse Post a comment on an issue.

IssuesService

(synq.issues.issues.v1.IssuesService) IssuesService is a service for managing Issues.

BatchGetIssues

BatchGetIssues (BatchGetIssuesRequest) BatchGetIssuesResponse

ListIssues

ListIssues (ListIssuesRequest) ListIssuesResponse

MarkInvestigating

MarkInvestigating (MarkInvestigatingRequest) MarkInvestigatingResponse Mark issue as being investigated.

MarkFixed

MarkFixed (MarkFixedRequest) MarkFixedResponse Mark issue as fixed.

MarkExpected

MarkExpected (MarkExpectedRequest) MarkExpectedResponse Mark issue as expected.

MarkNoActionNeeded

MarkNoActionNeeded (MarkNoActionNeededRequest) MarkNoActionNeededResponse Mark issue as no action needed.

PostComment

PostComment (PostCommentRequest) PostCommentResponse Post a comment on an issue.

AlertsService

(synq.alerts.services.v1.AlertsService) AlertsService provides operations for managing alert configurations.

Create

Create (CreateRequest) CreateResponse Create a new alert configuration.

List

List (ListRequest) ListResponse Retrieves a list of alert configurations based on filters.

BatchGet

BatchGet (BatchGetRequest) BatchGetResponse Get multiple alert configurations by their identifiers.

Update

Update (UpdateRequest) UpdateResponse Update an existing alert configuration. The config can be identified by either ID or FQN.

Delete

Delete (DeleteRequest) DeleteResponse Delete an existing alert configuration. The config can be identified by either ID or FQN.

ToggleEnabled

ToggleEnabled (ToggleEnabledRequest) ToggleEnabledResponse Enables or disables an existing alert configuration. The config can be identified by either ID or FQN.

ConnectionsService

(synq.agent.dwh.v1.ConnectionsService) ConnectionsService provides methods for managing data warehouse connections. These connections represent data warehouse integrations configured in Coalesce Quality that can be used by:
  • DWH Agent: For metadata extraction and data quality monitoring
  • Coalesce Quality Scout: On-premise AI agent for data exploration and analysis Both agents share the same or very similar configuration file format.

ListConnections

ListConnections (ListConnectionsRequest) ListConnectionsResponse ListConnections retrieves data warehouse connections for a workspace. Converts Coalesce Quality integration configurations to a standardized connection format. Requires workspace context in the request metadata.

GenerateConnectionsYaml

GenerateConnectionsYaml (GenerateConnectionsYamlRequest) GenerateConnectionsYamlResponse GenerateConnectionsYaml converts data warehouse connections to YAML configuration format. The generated YAML can be used directly as a config file for DWH Agent or Coalesce Quality Scout. Secret fields are replaced with environment variable placeholders (e.g., ${CONNECTION_ID_PASSWORD}). Documentation: https://docs.synq.io/dw-integrations/agent#config-file-schema

DwhAgentService

(synq.agent.dwh.v1.DwhAgentService)

Connect

Connect (ConnectRequest) ConnectResponse buf:lint:ignore RPC_NO_CLIENT_STREAMING

AuditLogService

(synq.agent.recon.v1.AuditLogService) AuditLogService provides methods to ingest and query reconciliation audit logs.

IngestAuditLog

IngestAuditLog (IngestAuditLogRequest) IngestAuditLogResponse IngestAuditLog stores a reconciliation run audit log.

ListAuditLogs

ListAuditLogs (ListAuditLogsRequest) ListAuditLogsResponse ListAuditLogs returns audit logs ordered from newest to oldest, optionally filtered by suite and time range.

GetAuditLog

GetAuditLog (GetAuditLogRequest) GetAuditLogResponse GetAuditLog returns a single audit log by invocation ID.

SuiteDeploymentService

(synq.agent.recon.v1.SuiteDeploymentService) SuiteDeploymentService is the platform plane of reconciliation. SuiteConfigService is the developer/authoring sandbox (edit, version, run ad-hoc with your own credentials — preview-only, no Entity, no Run, no Issue). A deployment is what SYNQ actually runs on the workspace’s behalf: a frozen snapshot of a suite config, mapped to workspace-level SYNQ integrations, optionally scheduled or triggerable by API. Identity: every deployment has a stable deployment_id (UUIDv7) assigned on first promote. It survives re-promotes, schedule/mapping changes, and pause/resume. Downstream AssetCommand / RunCommand publication keys off deployment_id so Entity identity does not fragment on promote churn.

PromoteSuite

PromoteSuite (PromoteSuiteRequest) PromoteSuiteResponse Promote a suite config into production. Freezes a snapshot of the config and stores the connection → integration mapping. Creates a new deployment on first call; re-promotes the same suite_id (reusing its deployment_id) on subsequent calls.

UnpromoteSuite

UnpromoteSuite (UnpromoteSuiteRequest) UnpromoteSuiteResponse Unpromote a deployment. Marks it inactive; scheduler and API triggers stop. Deployment history is preserved; re-promoting the same suite_id reuses the original deployment_id.

UpdateDeploymentSchedule

UpdateDeploymentSchedule (UpdateDeploymentScheduleRequest) UpdateDeploymentScheduleResponse Change schedule and/or triggerable_by_api on an existing deployment without re-promoting the config snapshot or touching mappings.

UpdateDeploymentMappings

UpdateDeploymentMappings (UpdateDeploymentMappingsRequest) UpdateDeploymentMappingsResponse Rewire connection → integration mappings on an existing deployment without re-promoting the config snapshot.

UpdateDeploymentAnnotations

UpdateDeploymentAnnotations (UpdateDeploymentAnnotationsRequest) UpdateDeploymentAnnotationsResponse Replace the deployment-level annotation overlay on an existing deployment. Annotations are merged with suite-level and case-level annotations from the frozen suite snapshot at promote/update time, then surfaced on PromotedReconSuiteMetadata / PromotedReconCaseMetadata for every asset under the deployment.

UpdateDeploymentCaseImpacts

UpdateDeploymentCaseImpacts (UpdateDeploymentCaseImpactsRequest) UpdateDeploymentCaseImpactsResponse Patch the per-case CaseFailureImpact map on an existing deployment without re-promoting the suite snapshot. Useful for “apply to all” FE actions and one-off toggles between RAISE_ISSUE_ON_TABLES and SHOW_ON_TABLES. Re-renders PromotedReconCaseMetadata so the error_tables / shown_tables split reflects the new policy immediately. Merge semantics: keys present in the request overwrite the stored value for that case. Keys absent from the request are left untouched (no implicit reset). Sending CASE_FAILURE_IMPACT_UNSPECIFIED clears the override for that case (falls back to the default RAISE_ISSUE_ON_TABLES). Unknown case names are rejected with INVALID_ARGUMENT so the FE catches typos before the deployment is mutated.

PauseDeployment

PauseDeployment (PauseDeploymentRequest) PauseDeploymentResponse Pause a deployment. Scheduled and API-triggered runs are suppressed until until is reached, or indefinitely when until is absent.

ResumeDeployment

ResumeDeployment (ResumeDeploymentRequest) ResumeDeploymentResponse Resume a paused deployment.

GetSuiteDeployment

GetSuiteDeployment (GetSuiteDeploymentRequest) GetSuiteDeploymentResponse Fetch a deployment by suite_id or deployment_id.

ListSuiteDeployments

ListSuiteDeployments (ListSuiteDeploymentsRequest) ListSuiteDeploymentsResponse List deployments for the caller’s workspace. Filters support answering “what is SYNQ running on behalf of this workspace?” and “which deployments use this SYNQ integration?”.

ListSuiteDeploymentHistory

ListSuiteDeploymentHistory (ListSuiteDeploymentHistoryRequest) ListSuiteDeploymentHistoryResponse List the append-only history of a deployment (every promote, re-promote, schedule/mapping change, pause/resume, unpromote).

TriggerDeployment

TriggerDeployment (TriggerDeploymentRequest) TriggerDeploymentResponse Trigger an on-demand execution of a promoted deployment. Enqueues a run using the frozen suite snapshot and connection mappings stored on the deployment row — execution uses platform integration credentials, not the caller’s. Returns the freshly-allocated run_id so callers can poll RunStateService for status. Preconditions:
  • Deployment must exist and be active.
  • Deployment must have triggerable_by_api = true (FAILED_PRECONDITION otherwise).
  • Deployment must not be paused (FAILED_PRECONDITION when paused_until is set and in the future).

YamlService

(synq.agent.recon.v1.YamlService) YamlService provides stateless conversion between YAML config format and proto. This is useful for UI editors that need to display/edit suite configs as YAML.

ParseYaml

ParseYaml (ParseYamlRequest) ParseYamlResponse ParseYaml parses a YAML config string into a ReconcilationSuite proto. Only the suite configuration fields are extracted (connections are ignored).

RenderYaml

RenderYaml (RenderYamlRequest) RenderYamlResponse RenderYaml renders a ReconcilationSuite proto as a YAML config string.

SuiteConfigService

(synq.agent.recon.v1.SuiteConfigService) SuiteConfigService manages reconciliation suite configurations. Managed suites are long-lived, optionally scheduled configs identified by suite_name. Ad-hoc suites are one-off configs that get a generated UUID as suite_id.

UpsertSuiteConfig

UpsertSuiteConfig (UpsertSuiteConfigRequest) UpsertSuiteConfigResponse Upsert a managed suite config. Creates if new, updates with new version if exists. The suite_id equals the suite name (from ReconcilationSuite.name). Validates the ReconcilationSuite proto. Does NOT validate connections exist.

SubmitAdhocSuite

SubmitAdhocSuite (SubmitAdhocSuiteRequest) SubmitAdhocSuiteResponse Submit an ad-hoc suite for one-off execution. Provide either an inline suite or a suite_id referencing an existing managed suite. Optionally apply environment overrides before execution. The client-provided invocation_id ensures idempotency.

GetSuiteConfig

GetSuiteConfig (GetSuiteConfigRequest) GetSuiteConfigResponse Get the latest version of a suite config by suite_id. Works for both managed (suite_id = suite_name) and ad-hoc (suite_id = UUID) configs.

ListSuiteConfigs

ListSuiteConfigs (ListSuiteConfigsRequest) ListSuiteConfigsResponse List latest suite configs with filtering and pagination. By default returns only managed suites. Set include_adhoc to also include ad-hoc configs.

DeleteSuiteConfig

DeleteSuiteConfig (DeleteSuiteConfigRequest) DeleteSuiteConfigResponse Delete a managed suite config (soft delete — inserts a deleted version).

ListSuiteConfigVersions

ListSuiteConfigVersions (ListSuiteConfigVersionsRequest) ListSuiteConfigVersionsResponse Get version history for a suite config.

GetSuiteConfigVersion

GetSuiteConfigVersion (GetSuiteConfigVersionRequest) GetSuiteConfigVersionResponse Get a specific historical version of a suite config.

RunStateService

(synq.agent.recon.v1.RunStateService) RunStateService exposes lifecycle status of reconciliation runs. Polling-based read API — clients fetch the current state for one or more suites and display progress. No notifications are emitted; clients re-poll to observe transitions.

BatchReconciliationRunState

BatchReconciliationRunState (BatchReconciliationRunStateRequest) BatchReconciliationRunStateResponse BatchReconciliationRunState returns the latest concluded run and any ongoing (SCHEDULED or IN_PROGRESS) run for each suite_id. Returned map is keyed by suite_id. Suites with no recorded runs are omitted from the response map.

ListReconciliationRunState

ListReconciliationRunState (ListReconciliationRunStateRequest) ListReconciliationRunStateResponse ListReconciliationRunState returns runs filtered by status and/or suite_id. Sorted newest-first by scheduled_at.

CancelReconciliationRun

CancelReconciliationRun (CancelReconciliationRunRequest) CancelReconciliationRunResponse CancelReconciliationRun marks a SCHEDULED or IN_PROGRESS run as CANCELLED so the suite is no longer “occupied” by a stuck occurrence — used to recover from local-dev / executor outages where a run was queued but never executed. Already-terminal runs are returned unchanged. Idempotent: calling on an already-cancelled run is a no-op. Note: this only updates the run-state row. The corresponding execution-job row is independent — when an executor eventually wakes up to that job it will see the run is CANCELLED and skip.

SreAgentService

(synq.agent.sre.v1.SreAgentService)

Connect

Connect (ConnectRequest) ConnectResponse buf:lint:ignore RPC_NO_CLIENT_STREAMING

GetConfig

GetConfig (GetConfigRequest) GetConfigResponse GetConfig returns the Scout configuration (system prompts + DWH connection summary) for the caller’s workspace. Authorized for the agent itself (SCOPE_SRE_AGENT), for any caller with workspace integration-read access (SCOPE_INTEGRATION_READ) so admins / owners can inspect the live prompts via synqctl / fe-app without an agent token, and for MCP read tokens (SCOPE_MCP_READ) — matches the sibling DWH ConnectionsService scope shape.

ListPromptSuggestions

ListPromptSuggestions (ListPromptSuggestionsRequest) ListPromptSuggestionsResponse ListPromptSuggestions returns prompt-improvement suggestions recorded for the caller’s workspace. Default scope is pending suggestions only; set statuses to include accepted / dismissed / superseded rows. Sorted newest first.

AcceptPromptSuggestion

AcceptPromptSuggestion (AcceptPromptSuggestionRequest) AcceptPromptSuggestionResponse AcceptPromptSuggestion applies a pending suggestion to the matching SRE agent prompt field. The applied value is suggested_value unless edited_value is set. Returns FAILED_PRECONDITION when the live prompt has drifted from the suggestion’s baseline_value since it was produced — the client should re-fetch and re-render.

DismissPromptSuggestion

DismissPromptSuggestion (DismissPromptSuggestionRequest) DismissPromptSuggestionResponse DismissPromptSuggestion marks a pending suggestion as dismissed with an optional free-text reason. The SRE agent configuration is left untouched.

RecordPromptSuggestion

RecordPromptSuggestion (RecordPromptSuggestionRequest) RecordPromptSuggestionResponse RecordPromptSuggestion is the producer-side endpoint used by the offline analyser to register a new suggestion for a workspace. The server snapshots the current value of the targeted prompt field as baseline_value. Any pending suggestion for the same (workspace, field) pair is marked as superseded before the new row is inserted. Returns the recorded suggestion, or an empty response when the baseline already matches suggested_value (no-op). Authorized for the agent / offline analyser (SCOPE_SRE_AGENT) and for admins / owners with workspace integration-edit access (SCOPE_INTEGRATION_EDIT), so an admin running synqctl can publish a suggestion against a customer workspace via x-synq-workspace-override without minting an agent token.

LlmService

(synq.agent.sre.v1.LlmService) Service for evaluating LLM requests and producing structured output.

Evaluate

Evaluate (EvaluateRequest) EvaluateResponse Evaluates an LLM request with a structured output schema and message history. The main prompt should be constant as it will be cached for efficiency.

TriageService

(synq.agent.sre.v1.TriageService) Service for managing issue triage operations, allowing LLM agents to conclude investigations and record evidence during the triage process.

Conclude

Conclude (ConcludeRequest) ConcludeResponse Concludes the triage investigation for one or more issues by providing a structured conclusion and supporting evidence. This method is used by the LLM agent to finalize its investigation.

RecordEvidence

RecordEvidence (RecordEvidenceRequest) RecordEvidenceResponse Records evidence collected during the triage investigation. This method allows the LLM agent to incrementally add evidence as it discovers information during the investigation process.

BatchLatestConclusions

BatchLatestConclusions (BatchLatestConclusionsRequest) BatchLatestConclusionsResponse Retrieves the latest triage state for one or more issues. This method is used by the LLM agent to retrieve the current state of the issues it is working on.

BatchTriageState

BatchTriageState (BatchTriageStateRequest) BatchTriageStateResponse Retrieves the triage state for one or more issues. This method is used by the LLM agent to retrieve the current state of the issues it is working on.

ListTriageState

ListTriageState (ListTriageStateRequest) ListTriageStateResponse Retrieves the triage state for one or more issues. This method is used by the LLM agent to retrieve the current state of the issues it is working on.

MarkAsInProgress

MarkAsInProgress (MarkAsInProgressRequest) MarkAsInProgressResponse Marks an issue as in progress. This method is used by the LLM agent to indicate that it has started working on an issue.

MarkFailed

MarkFailed (MarkFailedRequest) MarkFailedResponse Marks an issue as failed triaging. This method is used by the LLM agent to indicate that it was unable to triage.

FeatureRequestService

(synq.agent.sre.v1.FeatureRequestService) FeatureRequestService allows MCP clients to submit feature requests when users encounter missing capabilities. This is a last-resort service — it should only be used when no existing tool can fulfill the user’s request.

SubmitFeatureRequest

SubmitFeatureRequest (SubmitFeatureRequestRequest) SubmitFeatureRequestResponse SubmitFeatureRequest submits a feature request to the Coalesce Quality product team. This method should only be called as a last resort when the user’s request cannot be fulfilled by any existing tool. It logs the request for product team review.

TestsSuggestionStateService

(synq.agent.sre.v1.TestsSuggestionStateService)

SuggestFor

SuggestFor (SuggestForRequest) SuggestForResponse

GetActiveSuggestionStatesFor

GetActiveSuggestionStatesFor (GetActiveSuggestionStatesForRequest) GetActiveSuggestionStatesForResponse

BatchSuggestionStates

BatchSuggestionStates (BatchSuggestionStatesRequest) BatchSuggestionStatesResponse

ListSuggestionStates

ListSuggestionStates (ListSuggestionStatesRequest) ListSuggestionStatesResponse

MarkAsRunning

MarkAsRunning (MarkAsRunningRequest) MarkAsRunningResponse

MarkAsCompleted

MarkAsCompleted (MarkAsCompletedRequest) MarkAsCompletedResponse

MarkAsFailed

MarkAsFailed (MarkAsFailedRequest) MarkAsFailedResponse

MarkAsCancelled

MarkAsCancelled (MarkAsCancelledRequest) MarkAsCancelledResponse

UsersService

(synq.users.v1.UsersService)

ListUsers

ListUsers (ListUsersRequest) ListUsersResponse

BatchGetUsers

BatchGetUsers (BatchGetUsersRequest) BatchGetUsersResponse

GetByAlias

GetByAlias (GetByAliasRequest) GetByAliasResponse

GetByEmail

GetByEmail (GetByEmailRequest) GetByEmailResponse

UpsertUserAliases

UpsertUserAliases (UpsertUserAliasesRequest) UpsertUserAliasesResponse

DeleteUserAliases

DeleteUserAliases (DeleteUserAliasesRequest) DeleteUserAliasesResponse

GetUserAliases

GetUserAliases (GetUserAliasesRequest) GetUserAliasesResponse

GetUserIdentities

GetUserIdentities (GetUserIdentitiesRequest) GetUserIdentitiesResponse Returns all canonical identity strings for a user. If user_id is omitted, returns identities for the currently authenticated user. These identity strings can be passed to ListIssues(interacted_by_identities) to filter issues the user has interacted with. Format: “synq:<user_id>”, “email:<email>”, “slack:<slack_user_id>”, “msteams:<member_id>”, etc.

TriggerService

(synq.datachecks.v1.TriggerService) TriggerService provides synchronous execution of datachecks on entities.

TriggerDatachecks

TriggerDatachecks (TriggerDatachecksRequest) TriggerDatachecksResponse TriggerDatachecks executes datachecks for the specified entities.

TestSuggestionsService

(synq.datachecks.testsuggestions.v1.TestSuggestionsService)

BatchCreateTestSuggestions

BatchCreateTestSuggestions (BatchCreateTestSuggestionsRequest) BatchCreateTestSuggestionsResponse

BatchGetTestSuggestionsForEntities

BatchGetTestSuggestionsForEntities (BatchGetTestSuggestionsForEntitiesRequest) BatchGetTestSuggestionsForEntitiesResponse

BatchAcceptTestSuggestions

BatchAcceptTestSuggestions (BatchAcceptTestSuggestionsRequest) BatchAcceptTestSuggestionsResponse

BatchRejectTestSuggestions

BatchRejectTestSuggestions (BatchRejectTestSuggestionsRequest) BatchRejectTestSuggestionsResponse

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.

GetSqlTestAudit

GetSqlTestAudit (GetSqlTestAuditRequest) GetSqlTestAuditResponse Get SqlTest audit from a given execution ID in jwt token.

MonitorInfoService

(synq.monitors.info.v1.MonitorInfoService)

MonitorInfo

MonitorInfo (MonitorInfoRequest) MonitorInfoResponse

DeploymentRulesService

(synq.monitors.automated_monitors.v1.DeploymentRulesService)

GetDeployOverview

GetDeployOverview (GetDeployOverviewRequest) GetDeployOverviewResponse

GetDeployDeleteOverview

GetDeployDeleteOverview (GetDeployDeleteOverviewRequest) GetDeployDeleteOverviewResponse

DeleteDeploymentRule

DeleteDeploymentRule (DeleteDeploymentRuleRequest) DeleteDeploymentRuleResponse

ListDeploymentRules

ListDeploymentRules (ListDeploymentRulesRequest) ListDeploymentRulesResponse

ListDeploymentRulesForAsset

ListDeploymentRulesForAsset (ListDeploymentRulesForAssetRequest) ListDeploymentRulesForAssetResponse

BatchGetDeploymentRules

BatchGetDeploymentRules (BatchGetDeploymentRulesRequest) BatchGetDeploymentRulesResponse

UpsertDeploymentRule

UpsertDeploymentRule (UpsertDeploymentRuleRequest) UpsertDeploymentRuleResponse

BatchUpdateDeploymentRuleTitle

BatchUpdateDeploymentRuleTitle (BatchUpdateDeploymentRuleTitleRequest) BatchUpdateDeploymentRuleTitleResponse

DeployDeploymentRule

DeployDeploymentRule (DeployDeploymentRuleRequest) DeployDeploymentRuleResponse

BatchDeployDeploymentRules

BatchDeployDeploymentRules (BatchDeployDeploymentRulesRequest) BatchDeployDeploymentRulesResponse

BatchUpsertDeploymentRules

BatchUpsertDeploymentRules (BatchUpsertDeploymentRulesRequest) BatchUpsertDeploymentRulesResponse

BatchDeleteDeploymentRules

BatchDeleteDeploymentRules (BatchDeleteDeploymentRulesRequest) BatchDeleteDeploymentRulesResponse

HistoryService

(synq.monitors.history.v1.HistoryService)

History

History (HistoryRequest) HistoryResponse

CustomMonitorsService

(synq.monitors.custom_monitors.v1.CustomMonitorsService)

BatchCreateMonitor

BatchCreateMonitor (BatchCreateMonitorRequest) BatchCreateMonitorResponse

BatchUpdateMonitor

BatchUpdateMonitor (BatchUpdateMonitorRequest) BatchUpdateMonitorResponse

BatchDeleteMonitor

BatchDeleteMonitor (BatchDeleteMonitorRequest) BatchDeleteMonitorResponse

BatchUpdateMonitorMode

BatchUpdateMonitorMode (BatchUpdateMonitorModeRequest) BatchUpdateMonitorModeResponse

ConfigChangesOverview

ConfigChangesOverview (ConfigChangesOverviewRequest) ConfigChangesOverviewResponse

BatchUpdateMonitorSeverity

BatchUpdateMonitorSeverity (BatchUpdateMonitorSeverityRequest) BatchUpdateMonitorSeverityResponse

ListConfigsMonitors

ListConfigsMonitors (ListConfigsMonitorsRequest) ListConfigsMonitorsResponse

ListMonitors

ListMonitors (ListMonitorsRequest) ListMonitorsResponse

MonitorPredictionsService

(synq.monitors.predictions.v1.MonitorPredictionsService) Access to anomaly detection model predictions and raw metric timeseries.

GetMonitorPredictions

GetMonitorPredictions (GetMonitorPredictionsRequest) GetMonitorPredictionsResponse Returns prediction timeseries for a monitor. The monitor must exist and not be deleted. Defaults to the monitor’s current metrics_version.

GetEntityMetrics

GetEntityMetrics (GetEntityMetricsRequest) GetEntityMetricsResponse Returns raw metric timeseries for an entity. Identity-aware: resolves logical assets (e.g., dbt models) to their underlying physical tables.

BatchGetLatestEntityMetrics

BatchGetLatestEntityMetrics (BatchGetLatestEntityMetricsRequest) BatchGetLatestEntityMetricsResponse Returns the most recent observed table-stats sample (row count, freshness) for each requested entity. Identity-aware: resolves logical assets to their underlying physical tables. Paths with no recent sample are omitted from the response rather than returned with empty values — callers should treat a missing entry as “no data”. Lookback matches GetEntityMetrics (30 days).

IdentifierResolveService

(synq.entities.resolve.v1.IdentifierResolveService) IdentifierResolveService resolves identifiers to their Coalesce Quality paths and identities.

BatchResolveIdentifiers

BatchResolveIdentifiers (BatchResolveIdentifiersRequest) BatchResolveIdentifiersResponse Resolve multiple identifiers, returning their Coalesce Quality paths and identity groups.

DatabaseCoordinatesService

(synq.entities.coordinates.v1.DatabaseCoordinatesService) DatabaseCoordinatesService is a service for getting database coordinates of Entities.

BatchDatabaseCoordinates

BatchDatabaseCoordinates (BatchDatabaseCoordinatesRequest) BatchDatabaseCoordinatesResponse Get multiple DatabaseCoordinates for identifiers.

BatchIdsByCoordinates

BatchIdsByCoordinates (BatchIdsByCoordinatesRequest) BatchIdsByCoordinatesResponse Given database FQN return possible entity ids.

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

ImpactService

(synq.entities.impact.v1.ImpactService)

GetImpact

GetImpact (GetImpactRequest) GetImpactResponse

AnnotationsService

(synq.entities.annotations.v1.AnnotationsService) AnnotationsService provides operations for managing and querying entity annotations. Annotations are key-value pairs that can be attached to entities for categorization and filtering.

ListAnnotations

ListAnnotations (ListAnnotationsRequest) ListAnnotationsResponse List all available annotations with their usage counts across entities.

ChangesService

(synq.entities.changes.v1.ChangesService) ChangesService provides functionality to track and retrieve all types of changes to data entities. This unified service returns ALL change types for an entity:
  • Git commits: Changes to code files (dbt models, SQL files) tracked in version control
  • Schema changes: Database schema modifications (columns added/removed/changed)
  • SQL definition changes: View/materialized view definition updates detected by Coalesce Quality
Changes are returned with structured metadata including:
  • For git commits: structured statistics (directories, file types, top changes)
  • For schema changes: detailed column-level diffs
  • For SQL changes: before/after SQL definitions
Use cases:
  • “What changed in the last week for table X?” → Returns git commits, schema changes, SQL changes
  • “Show me all commits affecting this dbt model” → Returns git commits with lineage context
  • “What schema changes happened to this table?” → Returns schema changes detected by Coalesce Quality

List

List (ListRequest) ListResponse Retrieves the complete change history for specified entities. Returns all change types (git commits, schema changes, SQL changes) in chronological order (newest first). Changes include lineage context showing upstream_distance when changes affect dependencies.

BatchChange

BatchChange (BatchChangeRequest) BatchChangeResponse BatchChange retrieves multiple entity changes by their IDs in a single request. This is an optimized endpoint for fetching specific changes when you already know their IDs, rather than listing changes for an entity.

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.

OrchestrationService

(synq.entities.orchestration.v1.OrchestrationService) OrchestrationService provides information about orchestration relationships between entities. This includes relationships between Airflow tasks and transformation models (dbt, SQLMesh), as well as task-to-task dependencies.

BatchOrchestration

BatchOrchestration (BatchOrchestrationRequest) BatchOrchestrationResponse BatchOrchestration retrieves orchestration relationships for multiple entities. For each entity, it returns both upstream entities (what orchestrates it) and downstream entities (what it orchestrates).

ChecksCategoriesService

(synq.entities.checks.v1.ChecksCategoriesService) ChecksCategoriesService lets workspace admins set explicit category overrides on individual checks. An explicit category is the authoritative category for a check — it takes precedence over the categories computed by the workspace’s categorisation rules. It is a public API so customers can manage check categories programmatically; the same service is also mounted on the internal API. The workspace and the acting identity are always taken from the request context, never from the payload.

UpsertCheckCategories

UpsertCheckCategories (UpsertCheckCategoriesRequest) UpsertCheckCategoriesResponse UpsertCheckCategories sets (or replaces) the explicit category for one or more checks. Each entry is the complete state for its check — both dimensions — so an empty category / governance_category means “no explicit value for that dimension”.

DeleteCheckCategories

DeleteCheckCategories (DeleteCheckCategoriesRequest) DeleteCheckCategoriesResponse DeleteCheckCategories clears the explicit category (both dimensions) for the given checks. Checks fall back to their rule-computed categories afterwards.

ListCheckCategories

ListCheckCategories (ListCheckCategoriesRequest) ListCheckCategoriesResponse ListCheckCategories returns every explicit check category in the caller’s workspace.

ChecksCoverageService

(synq.entities.checks.v1.ChecksCoverageService) ChecksCoverageService provides functionality to retrieve and analyze the coverage of checks for entities in the system. It helps track which checks are applied to entities, including both direct checks and propagated checks from upstream entities.

GetCoverage

GetCoverage (GetCoverageRequest) GetCoverageResponse GetCoverage retrieves the coverage of checks for a specific entity. This includes both direct checks applied to the entity and checks propagated from upstream entities. The response provides detailed information about:
  • Table-level checks
  • Column-level checks
  • Check propagation paths
  • Column usage statistics

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.

EntityExecutionsService

(synq.entities.custom.v1.EntityExecutionsService)

UpsertExecution

UpsertExecution (UpsertExecutionRequest) UpsertExecutionResponse Execution affects status of the custom entity

UpsertLogEntry

UpsertLogEntry (UpsertLogEntryRequest) UpsertLogEntryResponse LogEntry is a log message for the custom entity

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 Coalesce Quality. 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.

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.

GroupsService

(synq.entities.custom.v1.GroupsService) It eliminates the need to keep state on client side to remember which assets were already created and which should be deleted. The server will keep track of the current state of the group and client can always send the intended new state. The server will calculate the diff and entities that are no longer present in the group will be removed. Example:
  1. group has entities A, B, C at time t1
  2. client sends group with entities B, C, D at time t2
  3. server will remove entity A from the system and update the current state of the group to B, C, D
The service is designed to be idempotent and can be called multiple times with the same state without causing any side effects.

ListEntityGroups

ListEntityGroups (ListEntityGroupsRequest) ListEntityGroupsResponse ListEntityGroups lists all groups.

UpsertEntitiesGroup

UpsertEntitiesGroup (UpsertEntitiesGroupRequest) UpsertEntitiesGroupResponse UpsertEntitiesGroup updates current definition of group to the server. As part of the upsert operation the difference of entity ids is calculated between past state and the current state and entities that are no longer part of the group are removed.

DeleteEntitiesGroup

DeleteEntitiesGroup (DeleteEntitiesGroupRequest) DeleteEntitiesGroupResponse DeleteEntitiesGroup deletes a group by its identifier. If the group does not exist, it will be a no-op.

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 Coalesce Quality native entity.enum There is no option to create relationships between 2 Coalesce Quality 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.

ListRelationships

ListRelationships (ListRelationshipsRequest) ListRelationshipsResponse Delete relationships between entities. If the relationship does not exist, it will be ignored.

ChecksRelationshipsService

(synq.entities.custom.v1.ChecksRelationshipsService)

UpsertCheckRelationships

UpsertCheckRelationships (UpsertCheckRelationshipsRequest) UpsertCheckRelationshipsResponse Create or update relationships that attach a check (e.g. a SQL test) to the entities it validates. Idempotent per (check, checked) pair: an existing relationship is updated, otherwise it is created.

DeleteCheckRelationships

DeleteCheckRelationships (DeleteCheckRelationshipsRequest) DeleteCheckRelationshipsResponse Delete relationships between checks and the entities they validate. Relationships that do not exist are ignored.

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.

ListEntities

ListEntities (ListEntitiesRequest) ListEntitiesResponse List entities matching the given filter

SearchEntities

SearchEntities (SearchEntitiesRequest) SearchEntitiesResponse Search for entities.

EntityExecutionsService

(synq.entities.executions.v2.EntityExecutionsService) EntityExecutionsService provides read-only access to entity execution history. This service allows customers to retrieve information about all executions that happened on their entities, including execution status, timing, and messages. Use cases:
  • Retrieve execution history for specific entities
  • Filter executions by time range, status, or execution type
  • Get aggregated summaries of execution activity
  • Track execution trends and patterns

ListExecutions

ListExecutions (ListExecutionsRequest) ListExecutionsResponse ListExecutions retrieves a paginated list of executions for one or more entities. Executions are returned in reverse chronological order (newest first). Supports filtering by:
  • Entity identifiers (required)
  • Time range
  • Execution type(s)
  • Status(es)

BatchGetExecutions

BatchGetExecutions (BatchGetExecutionsRequest) BatchGetExecutionsResponse BatchGetExecutions retrieves multiple executions by their IDs. This is useful when you already know the execution IDs and want to fetch their details.

GetExecutionsSummary

GetExecutionsSummary (GetExecutionsSummaryRequest) GetExecutionsSummaryResponse GetExecutionsSummary provides aggregated statistics about executions for specified entities. This is useful for quickly understanding execution patterns without fetching all execution details. Returns:
  • Counts by execution type
  • Counts by status
  • Time range of available executions
  • Latest execution per entity

GetLatestExecutions

GetLatestExecutions (GetLatestExecutionsRequest) GetLatestExecutionsResponse GetLatestExecutions retrieves the most recent execution for each specified entity. IMPORTANT: Only returns executions where the entity appears in EntityExecution.entities (what executed). This means it returns executions OF the entity (e.g., model runs, monitor runs, task runs), NOT executions that merely reference the entity in targets or extra_references. For example, querying for a table won’t return results because tables don’t execute on their own - they are created/updated by models (which do execute). Optionally filter by execution status to get the latest execution with a specific status.

EntityExecutionsService

(synq.entities.executions.v1.EntityExecutionsService) Deprecated: Use [synq.entities.custom.v1.EntityExecutionsService] instead

UpsertExecution

UpsertExecution (UpsertExecutionRequest) UpsertExecutionResponse Execution affects status of the custom entity

UpsertLogEntry

UpsertLogEntry (UpsertLogEntryRequest) UpsertLogEntryResponse LogEntry is a log message for the custom entity

SqlInsightsService

(synq.entities.sql_insights.v1.SqlInsightsService) SqlInsightsService exposes analytical information about the SQL used across a workspace’s entities. It answers questions such as “which SQL constructs are used in my warehouse, and how often” and “what SQL constructs does this specific entity use”, without requiring the caller to re-parse any SQL.

ListSqlConstructs

ListSqlConstructs (ListSqlConstructsRequest) ListSqlConstructsResponse ListSqlConstructs returns the distribution of SQL constructs across all entities in the workspace, with an occurrence count per construct. The result is workspace-scoped (derived from the authenticated request) — no entity paths are supplied. Useful for building filter/autocomplete UIs and for high-level “shape of our SQL” analytics.

BatchSqlDetails

BatchSqlDetails (BatchSqlDetailsRequest) BatchSqlDetailsResponse BatchSqlDetails returns the SQL details (currently the set of detected SQL constructs) for each of the requested entities, keyed by their synq path. Entities with no SQL details are omitted from the response map.

SchemaMismatchesService

(synq.entities.schemas.v1.SchemaMismatchesService) SchemaMismatchesService provides access to schema drift information between data platform tables and their definitions (e.g., dbt models).

BatchSchemaMismatches

BatchSchemaMismatches (BatchSchemaMismatchesRequest) BatchSchemaMismatchesResponse Get schema mismatches for a batch of entities by their identifiers.

SchemasService

(synq.entities.schemas.v1.SchemasService) EntitiesService is a service for retriving any entity.

GetSchema

GetSchema (GetSchemaRequest) GetSchemaResponse Get schema of the entity its identifier.

CodeService

(synq.entities.code.v1.CodeService) CodeService is a service for retrieving code associated with entities in the system. It provides functionality to access and manage code artifacts such as SQL queries, Python scripts, dbt models, and other code configurations that are part of Coalesce Quality entities.

ListCode

ListCode (ListCodeRequest) ListCodeResponse ListCode retrieves all code artifacts associated with a specific entity. This includes SQL queries, Python scripts, dbt models, and other code configurations that define or are part of the entity’s functionality.

TableConstraintsService

(synq.entities.constraints.v1.TableConstraintsService) TableConstraintsService provides access to table constraint and index information.

GetTableConstraints

GetTableConstraints (GetTableConstraintsRequest) GetTableConstraintsResponse Get table constraints (primary keys, foreign keys, indexes, etc.) for a given entity.

DwhService

(synq.ingest.dwh.v1.DwhService)

IngestObjectInformation

IngestObjectInformation (IngestObjectInformationRequest) IngestObjectInformationResponse

IngestSqlDefinitions

IngestSqlDefinitions (IngestSqlDefinitionsRequest) IngestSqlDefinitionsResponse

IngestSchemas

IngestSchemas (IngestSchemasRequest) IngestSchemasResponse

IngestObjectMetrics

IngestObjectMetrics (IngestObjectMetricsRequest) IngestObjectMetricsResponse

IngestTaskResults

IngestTaskResults (IngestTaskResultsRequest) IngestTaskResultsResponse

IngestQueryLogs

IngestQueryLogs (IngestQueryLogsRequest) IngestQueryLogsResponse

IngestTableConstraints

IngestTableConstraints (IngestTableConstraintsRequest) IngestTableConstraintsResponse

IngestLineage

IngestLineage (IngestLineageRequest) IngestLineageResponse IngestLineage pushes data-flow lineage between warehouse objects (and, optionally, between their columns) into the platform. Send the lineage you extract from the warehouse — for example from Snowflake’s GET_LINEAGE — as a batch of directed edges. Use replace_mode to choose between an incremental update (MERGE) and an authoritative refresh of a region of the warehouse (REPLACE_SCOPE); REPLACE_SCOPE is what lets the platform expire edges that no longer exist. Safe to retry: re-sending the same batch converges to the same state.

OpenlineageService

(synq.ingest.openlineage.v1.OpenlineageService)

Ingest

Ingest (IngestRequest) IngestResponse

CloudwatchService

(synq.ingest.cloudwatch.v1.CloudwatchService)

IngestCloudwatchLogsData

IngestCloudwatchLogsData (IngestCloudwatchLogsDataRequest) IngestCloudwatchLogsDataResponse

AirflowLogsService

(synq.ingest.airflow.v1.AirflowLogsService)

IngestLog

IngestLog (IngestLogRequest) IngestLogResponse

IngestDatahubAspects

IngestDatahubAspects (IngestDatahubAspectsRequest) IngestDatahubAspectsResponse

SqlMeshService

(synq.ingest.sqlmesh.v1.SqlMeshService)

IngestMetadata

IngestMetadata (IngestMetadataRequest) IngestMetadataResponse

IngestExecution

IngestExecution (IngestExecutionRequest) IngestExecutionResponse

DbtService

(synq.ingest.dbt.v1.DbtService)

IngestInvocation

IngestInvocation (IngestInvocationRequest) IngestInvocationResponse

DomainMembersService

(synq.domains.members.v1.DomainMembersService) DomainMembersService can be used to manage domain memberships.

AddDomainMembers

AddDomainMembers (AddDomainMembersRequest) AddDomainMembersResponse Add domain members.

RemoveDomainMembers

RemoveDomainMembers (RemoveDomainMembersRequest) RemoveDomainMembersResponse Remove domain members.

ListDomainMembers

ListDomainMembers (ListDomainMembersRequest) ListDomainMembersResponse List domain members.

ListUserDomains

ListUserDomains (ListUserDomainsRequest) ListUserDomainsResponse List domains for the given user.

SetDefaultUserDomain

SetDefaultUserDomain (SetDefaultUserDomainRequest) SetDefaultUserDomainResponse Set default domain for user.

DomainsService

(synq.domains.v1.DomainsService) DomainsService can be used to manage domains.

Upsert

Upsert (UpsertRequest) UpsertResponse Create or update a domain.

BatchGet

BatchGet (BatchGetRequest) BatchGetResponse Get multiple domains by their identifiers.

FetchDomainWithSubDomains

FetchDomainWithSubDomains (FetchDomainWithSubDomainsRequest) FetchDomainWithSubDomainsResponse Get a domain with its sub-domains

List

List (ListRequest) ListResponse List all the domains in the current workspace.

Delete

Delete (DeleteRequest) DeleteResponse Delete a domain by its identifier.

SetDefinition

SetDefinition (SetDefinitionRequest) SetDefinitionResponse Set the definition for an existing domain.

UpsertDefinitionPart

UpsertDefinitionPart (UpsertDefinitionPartRequest) UpsertDefinitionPartResponse Upsert definition part to the definition of an existing domain.

RemoveDefinitionPart

RemoveDefinitionPart (RemoveDefinitionPartRequest) RemoveDefinitionPartResponse Remove definition part from the definition of an existing domain.

GetUsage

GetUsage (GetUsageRequest) GetUsageResponse

SavedViewsService

(synq.savedviews.v1.SavedViewsService) SavedViewsService manages saved views — named, reusable selections over your entities (and other surfaces) with display configuration, sharing and per-user pinning. A saved view is owned by the user who created it. It can be kept private, shared with the whole workspace, or granted to specific users. Reads return, for the calling user, how each view relates to them (mine / shared / granted) and what they are allowed to do with it. Workspace administrators can manage any view in the workspace.

Upsert

Upsert (UpsertRequest) UpsertResponse Create or update a saved view. The view id is supplied by the caller (a UUID), which makes this operation idempotent — repeating the same request converges to the same view rather than creating a duplicate. Mutable fields are optional: a field that is set is written, a field that is omitted is left unchanged. To guard against overwriting a concurrent edit, pass the etag you last read.

Delete

Delete (DeleteRequest) DeleteResponse Delete a saved view. Idempotent — deleting an already-deleted or unknown view succeeds. Pass etag to guard against deleting a concurrently-edited view.

BatchGet

BatchGet (BatchGetRequest) BatchGetResponse Fetch multiple saved views by id. Ids the caller cannot see, or that do not exist, are omitted from the response rather than causing an error.

List

List (ListRequest) ListResponse List the saved views the calling user can see. By default returns every visible view (their own, workspace-owned, shared-with-workspace and granted-to-them); narrow with scopes, context and only_pinned.

SetPin

SetPin (SetPinRequest) SetPinResponse Pin or unpin a saved view to the calling user’s main screen. Pinning is a per-user preference: it applies only to the caller and does not modify the view or its version, so any user who can see a view may pin it.

DataproductsService

(synq.dataproducts.v2.DataproductsService) DataproductsService manages data products — named, owned groupings of data assets with a membership definition, a priority and an optional folder. Ids are opaque UUIDs supplied by the caller, which makes writes idempotent (a retried create converges instead of duplicating). Mutable fields are optional on Upsert: a field that is set is written, a field that is omitted is left unchanged. Pass the etag you last read to guard against overwriting a concurrent edit. A data product is a leaf in the reference graph — its definition may not reference another data product or domain — so membership resolution always terminates.

Upsert

Upsert (UpsertRequest) UpsertResponse Create or update a data product. The id is supplied by the caller (a UUID); repeating the same request converges to the same product. Mutable fields are optional: a set field is written, an omitted field is left unchanged. Pass etag to guard against overwriting a concurrent edit.

BatchGet

BatchGet (BatchGetRequest) BatchGetResponse Fetch multiple data products by id. Ids that do not exist (or, unless include_deleted is set, are deleted) are omitted from the response rather than causing an error.

List

List (ListRequest) ListResponse List the data products in the workspace, paginated. Narrow with folder and priorities.

Delete

Delete (DeleteRequest) DeleteResponse Delete a data product. Idempotent — deleting an already-deleted or unknown product succeeds. Soft-deletes by default; set purge to hard-delete and release the id. Pass etag to guard against deleting a concurrently-edited product.

SetDefinition

SetDefinition (SetDefinitionRequest) SetDefinitionResponse Replace the entire membership definition of a data product.

UpsertDefinitionPart

UpsertDefinitionPart (UpsertDefinitionPartRequest) UpsertDefinitionPartResponse Add or replace a single definition part (matched by its part id).

RemoveDefinitionPart

RemoveDefinitionPart (RemoveDefinitionPartRequest) RemoveDefinitionPartResponse Remove a single definition part by its part id. Idempotent.

ListMembers

ListMembers (ListMembersRequest) ListMembersResponse List the assets that currently belong to a data product, resolved from its definition and returned as opaque entity ids. Paginated.

DataproductsService

(synq.dataproducts.v1.DataproductsService) DataproductsService can be used to manage data products.

Upsert

Upsert (UpsertRequest) UpsertResponse Create or update a dataproduct.

Get

Get (GetRequest) GetResponse Get multiple dataproducts by their identifiers.

List

List (ListRequest) ListResponse List all the dataproducts in the current scope.

Delete

Delete (DeleteRequest) DeleteResponse Delete a dataproduct by its identifier. Soft deletes by default. Optionally purge the dataproduct to release the identifier.

SetDefinition

SetDefinition (SetDefinitionRequest) SetDefinitionResponse Set the definition for an existing dataproduct.

UpsertDefinitionPart

UpsertDefinitionPart (UpsertDefinitionPartRequest) UpsertDefinitionPartResponse Upsert definition part to the definition of an existing dataproduct.

RemoveDefinitionPart

RemoveDefinitionPart (RemoveDefinitionPartRequest) RemoveDefinitionPartResponse Remove definition part from the definition of an existing dataproduct.

IncidentsService

(synq.incidents.v1.IncidentsService) IncidentsService is a service for managing Incidents.

CreateIncident

CreateIncident (CreateIncidentRequest) CreateIncidentResponse

RenameIncident

RenameIncident (RenameIncidentRequest) RenameIncidentResponse

UpdateIncidentState

UpdateIncidentState (UpdateIncidentStateRequest) UpdateIncidentStateResponse

CancelIncident

CancelIncident (CancelIncidentRequest) CancelIncidentResponse Cancel an incident

CloseIncident

CloseIncident (CloseIncidentRequest) CloseIncidentResponse Close an incident

MergeIncidents

MergeIncidents (MergeIncidentsRequest) MergeIncidentsResponse

SplitIncident

SplitIncident (SplitIncidentRequest) SplitIncidentResponse

AddIssuesToIncident

AddIssuesToIncident (AddIssuesToIncidentRequest) AddIssuesToIncidentResponse

RemoveIssuesFromIncident

RemoveIssuesFromIncident (RemoveIssuesFromIncidentRequest) RemoveIssuesFromIncidentResponse

ListIncidents

ListIncidents (ListIncidentsRequest) ListIncidentsResponse

BatchGetIncidents

BatchGetIncidents (BatchGetIncidentsRequest) BatchGetIncidentsResponse

AssignIncidentOwner

AssignIncidentOwner (AssignIncidentOwnerRequest) AssignIncidentOwnerResponse

PostComment

PostComment (PostCommentRequest) PostCommentResponse Post a comment on an incident.

Messages

CronSchedule

(synq.schedule.v1.CronSchedule) CronSchedule uses standard cron expression syntax.

ICalSchedule

(synq.schedule.v1.ICalSchedule) ICalSchedule uses RFC 5545 RRULE recurrence rules.

Schedule

(synq.schedule.v1.Schedule) Schedule defines a recurring schedule with timezone context.

FixedQuantumGrid

(synq.schedule.v1.FixedQuantumGrid) FixedQuantumGrid snaps onto a fixed-size grid anchored at the Unix epoch (1970-01-01T00:00:00Z): [epoch, epoch+quantum, epoch+2*quantum, …].

IntegrationAnchorGrid

(synq.schedule.v1.IntegrationAnchorGrid) IntegrationAnchorGrid snaps onto the shared, stable grid an integration’s periodic warehouse scrape already fires on. Aligning to it lets a run reuse the same warehouse wake as the scrape. The integration is resolved in the caller’s own workspace (taken from the authenticated identity, never from the request), and the caller must be authorized to read it — a token without integration read access is rejected.

PreviewScheduleParams

(synq.schedule.v1.PreviewScheduleParams) Parameters for evaluating a single schedule.

PreviewScheduleResult

(synq.schedule.v1.PreviewScheduleResult) Result for a single schedule evaluation.

PreviewSchedulesRequest

(synq.schedule.v1.PreviewSchedulesRequest)

PreviewSchedulesResponse

(synq.schedule.v1.PreviewSchedulesResponse)

ScheduleSnap

(synq.schedule.v1.ScheduleSnap) ScheduleSnap maps each schedule occurrence onto a grid so runs line up with activity that is already happening, avoiding a separate warehouse resume. Pick one grid source and, optionally, how far an occurrence may move.

SnapInfo

(synq.schedule.v1.SnapInfo) SnapInfo records, for one occurrence, whether snapping moved it onto the grid.

OAuthAuthentication

(synq.platforms.v1.OAuthAuthentication) Authentication using OAuth credentials

PasswordAuthentication

(synq.platforms.v1.PasswordAuthentication) Authentication using a username and password

PlatformAuthentication

(synq.platforms.v1.PlatformAuthentication)

SynqManagedKeyPairAuthentication

(synq.platforms.v1.SynqManagedKeyPairAuthentication) Authentication using a managed key pair. The public key will be set and returned by the server after the authentication is created.

TokenAuthentication

(synq.platforms.v1.TokenAuthentication) Authentication using a token (API key, PAT, etc)

UserManagedKeyPairAuthentication

(synq.platforms.v1.UserManagedKeyPairAuthentication) Authentication using a user-managed key pair. The private key is stored safely as a secret. The response does not include the private key for security.

AthenaIdentifier

(synq.platforms.v1.AthenaIdentifier)

BigqueryIdentifier

(synq.platforms.v1.BigqueryIdentifier)

ClickhouseIdentifier

(synq.platforms.v1.ClickhouseIdentifier)

DataPlatformIdentifier

(synq.platforms.v1.DataPlatformIdentifier) DataPlatformIdentifier is a unique reference to a data platform integrated with Coalesce Quality.

DatabricksIdentifier

(synq.platforms.v1.DatabricksIdentifier)

DbtCloudIdentifier

(synq.platforms.v1.DbtCloudIdentifier)

DuckDbIdentifier

(synq.platforms.v1.DuckDbIdentifier)

FabricIdentifier

(synq.platforms.v1.FabricIdentifier)

MssqlIdentifier

(synq.platforms.v1.MssqlIdentifier)

MysqlIdentifier

(synq.platforms.v1.MysqlIdentifier)

OracleIdentifier

(synq.platforms.v1.OracleIdentifier)

PostgresIdentifier

(synq.platforms.v1.PostgresIdentifier)

RedshiftIdentifier

(synq.platforms.v1.RedshiftIdentifier)

SnowflakeIdentifier

(synq.platforms.v1.SnowflakeIdentifier)

SqlMeshIdentifier

(synq.platforms.v1.SqlMeshIdentifier)

TrinoIdentifier

(synq.platforms.v1.TrinoIdentifier)

UnknownDataPlatform

(synq.platforms.v1.UnknownDataPlatform)

SetPlatformAuthenticationRequest

(synq.platforms.v1.SetPlatformAuthenticationRequest)

SetPlatformAuthenticationResponse

(synq.platforms.v1.SetPlatformAuthenticationResponse)

ScopeFilter

(synq.common.v1.ScopeFilter) ScopeFilter defines include/exclude rules for scoping data warehouse queries. Matching semantics:
  • If include is non-empty, a (database, schema, table) tuple must match at least one include rule.
  • If exclude is non-empty, the tuple must NOT match any exclude rule.
  • Exclude takes precedence over include (exclude wins).
  • Empty/unset ScopeFilter means accept all.

ScopeRule

(synq.common.v1.ScopeRule) ScopeRule is a multi-level pattern for matching data warehouse objects. All non-empty fields must match for the rule to apply. Empty field means “match anything” at that level (wildcard). Patterns support glob syntax where * matches zero or more characters. Matching is case-insensitive.

SqlExpression

(synq.common.v1.SqlExpression) SqlExpression carries a SQL string together with the placeholder tokens the caller must substitute before executing it. Empty placeholders means sql is byte-equal to what runs in the warehouse and is safe to dispatch without further processing. When placeholders is non-empty, every listed token appears literally in sql and must be replaced (or otherwise interpreted) by the caller before execution.

SqlPlaceholder

(synq.common.v1.SqlPlaceholder) SqlPlaceholder describes one substitution slot in a SqlExpression.

GetDiffByChangeIdRequest

(synq.git.commits.v1.GetDiffByChangeIdRequest)

GetDiffByChangeIdResponse

(synq.git.commits.v1.GetDiffByChangeIdResponse)

GetDiffByCommitRequest

(synq.git.commits.v1.GetDiffByCommitRequest)

GetDiffByCommitResponse

(synq.git.commits.v1.GetDiffByCommitResponse)

CommitDiff

(synq.git.commits.v1.CommitDiff)

FileDiff

(synq.git.commits.v1.FileDiff)

BatchGetOwnersRequest

(synq.owners.v1.BatchGetOwnersRequest)

BatchGetOwnersResponse

(synq.owners.v1.BatchGetOwnersResponse)

BatchGetOwnersResponse.OwnersEntry

(synq.owners.v1.BatchGetOwnersResponse.OwnersEntry)

BatchGetOwnershipsRequest

(synq.owners.v1.BatchGetOwnershipsRequest)

BatchGetOwnershipsResponse

(synq.owners.v1.BatchGetOwnershipsResponse)

BatchGetOwnershipsResponse.OwnershipsEntry

(synq.owners.v1.BatchGetOwnershipsResponse.OwnershipsEntry)

ContactList

(synq.owners.v1.ContactList) A wrapper giving the contact set explicit presence on write, so a partial update can distinguish “replace the contacts” (present, possibly empty) from “leave contacts unchanged” (absent).

DeleteOwnerRequest

(synq.owners.v1.DeleteOwnerRequest)

DeleteOwnerResponse

(synq.owners.v1.DeleteOwnerResponse)

DeleteOwnershipRequest

(synq.owners.v1.DeleteOwnershipRequest)

DeleteOwnershipResponse

(synq.owners.v1.DeleteOwnershipResponse)

ListOwnersRequest

(synq.owners.v1.ListOwnersRequest)

ListOwnersResponse

(synq.owners.v1.ListOwnersResponse)

ListOwnershipsRequest

(synq.owners.v1.ListOwnershipsRequest)

ListOwnershipsResponse

(synq.owners.v1.ListOwnershipsResponse)

UpsertOwnerRequest

(synq.owners.v1.UpsertOwnerRequest)

UpsertOwnerResponse

(synq.owners.v1.UpsertOwnerResponse)

UpsertOwnershipRequest

(synq.owners.v1.UpsertOwnershipRequest)

UpsertOwnershipResponse

(synq.owners.v1.UpsertOwnershipResponse)

Contact

(synq.owners.v1.Contact) A notification channel attached to an owner. An owner can hold several contacts of different kinds; when an owner’s ownership fires an alert, the notification is delivered to every one of the owner’s contacts.

EmailContact

(synq.owners.v1.EmailContact) Deliver notifications by email to a fixed list of recipients.

MsTeamsContact

(synq.owners.v1.MsTeamsContact) Deliver notifications to a Microsoft Teams channel, optionally @-mentioning members.

MsTeamsMemberMention

(synq.owners.v1.MsTeamsMemberMention) An @-mention of an individual Microsoft Teams member.

MsTeamsMention

(synq.owners.v1.MsTeamsMention) A single @-mention in a Microsoft Teams notification.

SlackChannelContact

(synq.owners.v1.SlackChannelContact) Deliver notifications to a Slack channel, optionally @-mentioning users or user groups in the message.

SlackGroupMention

(synq.owners.v1.SlackGroupMention) An @-mention of a Slack user group.

SlackMention

(synq.owners.v1.SlackMention) A single @-mention in a Slack notification.

SlackUserMention

(synq.owners.v1.SlackUserMention) An @-mention of an individual Slack user.

UserContact

(synq.owners.v1.UserContact) Deliver notifications to Coalesce Quality users, identified by email. Each email should match a user in the workspace; the notification reaches them through their own configured notification preferences. Enumerate the valid users (and their emails) with synq.users.v1.UsersServiceListUsers for the full set, or GetByEmail to validate a single address.

Owner

(synq.owners.v1.Owner) An owner: a named responsible party (a team or a person) that data assets can be assigned to, together with the notification channels alerts about those assets are delivered to. Assets are attached to an owner through Ownerships (see OwnershipsService), so an owner on its own routes nothing until at least one ownership assigns it some assets.

AlertConfig

(synq.owners.v1.AlertConfig) How alerts fire for the assets an ownership covers. Deliberately mirrors the settings on the public alerts API (synq.alerts.v1) so alerting behaviour reads the same across SYNQ.

Ownership

(synq.owners.v1.Ownership) An ownership assigns a set of data assets to an owner and configures the alerts routed to that owner about those assets. In the app this is the owner’s “Owned assets”. One owner can hold many ownerships; deleting the owner deletes all of its ownerships.

OwnershipQuery

(synq.owners.v1.OwnershipQuery) A named asset selection behind an ownership, expressed for the public API. Uses the same write/read bridge as saved views and data products. On write, provide the query in ONE of two forms:
  • public_query — a structured query (the same shape used elsewhere for asset selection), convenient to build from a filter UI; or
  • resolver_ql — the resolver query language, a compact text form that is the canonical way to author selections as code. When both are set, resolver_ql wins. The server compiles and stores the query canonically; the raw text is not preserved verbatim.
On read, the server returns rendered_resolver_ql (the stored query rendered back to canonical resolver query language) and, best-effort, public_query (the structured representation). resolver_ql is not echoed back — read rendered_resolver_ql.

OwnershipSelection

(synq.owners.v1.OwnershipSelection) The set of assets an ownership covers.

IdentifierList

(synq.queries.v1.IdentifierList) Resolves to entities matching any of the given identifiers.

InDataPlatform

(synq.queries.v1.InDataPlatform) Resolves to all entities that belong to the given data platform.

InDataproduct

(synq.queries.v1.InDataproduct) Resolves to all the assets that belong to the given data product.

InDomain

(synq.queries.v1.InDomain) Resolves to all entities in the given data domain.

InFolder

(synq.queries.v1.InFolder) Resolves to all entities belonging to the given folder structure.

Unsupported

(synq.queries.v1.Unsupported) Collects all the parts of the query that are currently unsupported in translation. These represent an internal structure that are not yet completely available on the API.

WithAnnotation

(synq.queries.v1.WithAnnotation) Resolves to all entities that contain the annotation with at least one of the provided accepted values. In case of no given accepted values, all entities that carry the given annotation are returned.

WithDataPlatformType

(synq.queries.v1.WithDataPlatformType)

WithNameSearch

(synq.queries.v1.WithNameSearch) Resolves to all entities matching the given name search.

WithType

(synq.queries.v1.WithType) Resolves to all the entities that have the provided type.

WithType.Type

(synq.queries.v1.WithType.Type)

Query

(synq.queries.v1.Query) Query is a structured query that can be used to find entities in the system. It consists of multiple parts, each representing a different filter or sub-query. The parts are combined using the operand to form the final result:
  • AND (default): returns only entities matching ALL parts (intersection).
  • OR: returns entities matching ANY part (union).
  • EXCEPT: requires exactly 2 parts — returns entities from part[0] that are NOT in part[1].
  • UPSTREAM: returns entities that are upstream (dependencies) of the entities matched by the parts.
  • DOWNSTREAM: returns entities that are downstream (dependents) of the entities matched by the parts.
Queries can be nested by using a Query as a QueryPart, enabling complex compositions like “upstream of all Snowflake tables”.

Query.QueryPart

(synq.queries.v1.Query.QueryPart)

GenerateQueryRequest

(synq.queries.v1.GenerateQueryRequest)

GenerateQueryResponse

(synq.queries.v1.GenerateQueryResponse)

Callback

(synq.webhooks.v1.Callback)

FlatEvent

(synq.webhooks.v1.FlatEvent) A webhook event in the flat format — an experimental, opt-in alternative to Event that carries the same information in a flatter shape. Instead of nesting the payload under a per-event-type field (issue_created, issue_updated, incident_open, …), the payload is carried by a single top-level field — issue, incident, or ping — and event_type says which one is set and why. A receiver can then read a value the same way on every event, e.g. issue.owners[0].title on any issue event, instead of a different path per event type. Exactly one of issue, incident, or ping is set, matching event_type. Select this format per webhook integration; the default is the nested Event. Payload signing is identical — see Event for the signature scheme. Experimental: this shape may change while we gather feedback.

Event

(synq.webhooks.v1.Event) A webhook event delivered to a customer-configured endpoint. Payload signing: every outgoing request is signed so the receiver can verify it originated from Coalesce Quality and was not tampered with or replayed. Two headers are sent on every delivery: X-Coalesce-Timestamp: <unix seconds when the delivery was signed> X-Coalesce-Signature: v1=<hex-encoded HMAC-SHA256> The signature is computed as: signed_payload = “{X-Coalesce-Timestamp}.” + <raw request body bytes> signature = hex( HMAC_SHA256(key = signing_secret, msg = signed_payload) ) where signing_secret is the per-integration secret shown (read-only) in the webhook integration settings. To verify:
  1. Read X-Coalesce-Timestamp and the raw request body.
  2. Recompute the signature with your copy of the signing secret and compare it against the v1=… value in X-Coalesce-Signature using a constant-time comparison.
  3. Optionally reject deliveries whose timestamp is outside your tolerance window (retries reuse the original signing timestamp, so allow for the retry backoff window — up to ~30 minutes).
The v1= prefix identifies the signature scheme; future schemes may add additional space-separated values to the header.

IncidentCancelled

(synq.webhooks.v1.IncidentCancelled)

IncidentClosed

(synq.webhooks.v1.IncidentClosed)

IncidentOpen

(synq.webhooks.v1.IncidentOpen)

IncidentSummary

(synq.webhooks.v1.IncidentSummary)

IssueClosed

(synq.webhooks.v1.IssueClosed)

IssueCreated

(synq.webhooks.v1.IssueCreated)

IssueStatusUpdated

(synq.webhooks.v1.IssueStatusUpdated)

IssueSummary

(synq.webhooks.v1.IssueSummary) Set only when an actor is known: it is populated on issue_status_updated events and left unset for system-driven transitions with no human actor (e.g. a status implied by a monitor run). Consumers must treat it as optional and tolerate its absence. Carries the strongest identity the caller proved — a Coalesce Quality email, Slack user id, or PagerDuty user id — alongside a display name. | | owners | repeated Owner | Owners of the entities this issue is about. Covers only the direct owners of the affected entities, not the owners of downstream entities. Empty when the affected entities have no owner assigned. Ordered as shown in the app. |

IssueSummary.IssueEntity

(synq.webhooks.v1.IssueSummary.IssueEntity)

IssueSummary.Owner

(synq.webhooks.v1.IssueSummary.Owner) An owner (person or team) responsible for an entity, as assigned in Coalesce Quality (natively or synced from a catalog).

IssueUpdated

(synq.webhooks.v1.IssueUpdated)

Ping

(synq.webhooks.v1.Ping) Test event sent during a webhook setup.

MSSQLCloudConf

(synq.integrations.v1.MSSQLCloudConf) Microsoft SQL Server / Azure SQL Database cloud-managed connection. SQL Server connections are scoped to a single database; create one integration per database. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

DatabricksCloudConf

(synq.integrations.v1.DatabricksCloudConf) Databricks cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

DatabricksOAuthM2M

(synq.integrations.v1.DatabricksOAuthM2M) Databricks OAuth 2.0 machine-to-machine (service principal) credentials.

AthenaAccessKeyAuth

(synq.integrations.v1.AthenaAccessKeyAuth) Amazon Athena access-key authentication (long-lived IAM user credentials).

AthenaCloudConf

(synq.integrations.v1.AthenaCloudConf) Amazon Athena cloud-managed connection. Athena is serverless — there is no host/port; the endpoint is implied by the AWS region. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

AthenaOutputs

(synq.integrations.v1.AthenaOutputs) Athena generated outputs.

BigQueryOutputs

(synq.integrations.v1.BigQueryOutputs) BigQuery generated outputs.

Capabilities

(synq.integrations.v1.Capabilities) Capabilities advertise which actions are valid for an integration in its current state, so a client can decide what to offer before calling. Capabilities are a hint computed from the integration’s type and current state; the server still enforces every action. A false flag means the action would be rejected right now (unsupported for this type, or not applicable in the current state — for example can_enable is false for an already-enabled integration).

Integration

(synq.integrations.v1.Integration) Integration is a connection from Coalesce Quality to one of your data systems (a warehouse, database, or transformation tool).

IntegrationConfig

(synq.integrations.v1.IntegrationConfig) IntegrationConfig is the connection configuration for an integration. Exactly one variant of the config oneof is set; the populated variant determines the integration’s type. The config holds the connection details (host, credentials, scope) for the connected system. Secret fields (passwords, tokens, keys) follow write-only semantics: they are masked (returned empty) on reads. See each *Conf message and IntegrationsService.UpdateIntegration for preserve / rotate / clear rules.

IntegrationOutputs

(synq.integrations.v1.IntegrationOutputs) Generated, non-secret values produced by the server when an integration is created (for example a service-account email to grant access to, or a public key to install). Outputs are read-only and are never accepted on writes. At most one variant is set, matching the integration’s type. Types that produce no outputs leave this message empty.

SnowflakeOutputs

(synq.integrations.v1.SnowflakeOutputs) Snowflake generated outputs.

DbtCloudConf

(synq.integrations.v1.DbtCloudConf) dbt Cloud transformation orchestration cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

OracleCloudConf

(synq.integrations.v1.OracleCloudConf) Oracle Database cloud-managed connection. Oracle connections are scoped to a Pluggable Database (PDB) via the service name. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

DuckDBCloudConf

(synq.integrations.v1.DuckDBCloudConf) DuckDB (via MotherDuck) cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

FabricCloudConf

(synq.integrations.v1.FabricCloudConf) Microsoft Fabric cloud-managed connection. Fabric is workspace-scoped with cross-database queries (like Snowflake or Databricks, not a single database): the workspace SQL analytics endpoint exposes every warehouse / lakehouse in the workspace as a database, queryable via three-part [database].[schema].[table] T-SQL names. Authentication is Microsoft Entra ID only — Fabric rejects SQL logins, so the headless identity is an Entra service principal (application id + secret), or a pre-acquired Entra access token. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

FabricServicePrincipalAuth

(synq.integrations.v1.FabricServicePrincipalAuth) Microsoft Fabric Entra service-principal credentials.

RedshiftCloudConf

(synq.integrations.v1.RedshiftCloudConf) Amazon Redshift cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

BatchGetIntegrationsRequest

(synq.integrations.v1.BatchGetIntegrationsRequest) Request to fetch multiple integrations by id.

BatchGetIntegrationsResponse

(synq.integrations.v1.BatchGetIntegrationsResponse) Response with the requested integrations.

BatchGetIntegrationsResponse.IntegrationsEntry

(synq.integrations.v1.BatchGetIntegrationsResponse.IntegrationsEntry)

CreateIntegrationRequest

(synq.integrations.v1.CreateIntegrationRequest) Request to create an integration.

CreateIntegrationResponse

(synq.integrations.v1.CreateIntegrationResponse) Response from creating an integration.

DeleteIntegrationRequest

(synq.integrations.v1.DeleteIntegrationRequest) Request to delete an integration.

DeleteIntegrationResponse

(synq.integrations.v1.DeleteIntegrationResponse) Response from deleting an integration.

DisableIntegrationRequest

(synq.integrations.v1.DisableIntegrationRequest) Request to disable an integration.

DisableIntegrationResponse

(synq.integrations.v1.DisableIntegrationResponse) Response from disabling an integration.

EnableIntegrationRequest

(synq.integrations.v1.EnableIntegrationRequest) Request to enable an integration.

EnableIntegrationResponse

(synq.integrations.v1.EnableIntegrationResponse) Response from enabling an integration.

GetIntegrationHealthRequest

(synq.integrations.v1.GetIntegrationHealthRequest) Request for an integration’s health and run history.

GetIntegrationHealthResponse

(synq.integrations.v1.GetIntegrationHealthResponse) Response with current health plus a page of recent runs.

GetIntegrationRequest

(synq.integrations.v1.GetIntegrationRequest) Request to fetch a single integration.

GetIntegrationResponse

(synq.integrations.v1.GetIntegrationResponse) Response with a single integration.

IntegrationHealth

(synq.integrations.v1.IntegrationHealth) Current health summary for an integration.

IntegrationRun

(synq.integrations.v1.IntegrationRun) A single observed run (refresh / sync) of an integration.

ListIntegrationsRequest

(synq.integrations.v1.ListIntegrationsRequest) Request to list integrations.

ListIntegrationsResponse

(synq.integrations.v1.ListIntegrationsResponse) Response with the workspace’s integrations.

RefreshIntegrationRequest

(synq.integrations.v1.RefreshIntegrationRequest) Request to trigger an ad-hoc refresh.

RefreshIntegrationResponse

(synq.integrations.v1.RefreshIntegrationResponse) Response from triggering a refresh.

UpdateIntegrationRequest

(synq.integrations.v1.UpdateIntegrationRequest) Request to update an integration. The config is replaced wholesale; title is patch-style (omit to leave unchanged).

UpdateIntegrationResponse

(synq.integrations.v1.UpdateIntegrationResponse) Response from updating an integration.

PostgresCloudConf

(synq.integrations.v1.PostgresCloudConf) PostgreSQL cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

ClickhouseCloudConf

(synq.integrations.v1.ClickhouseCloudConf) ClickHouse cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

ClickhouseCloudConf.AdditionalParametersEntry

(synq.integrations.v1.ClickhouseCloudConf.AdditionalParametersEntry)

MySQLCloudConf

(synq.integrations.v1.MySQLCloudConf) MySQL cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

SnowflakeCloudConf

(synq.integrations.v1.SnowflakeCloudConf) Snowflake cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

SnowflakeKeyPairAuth

(synq.integrations.v1.SnowflakeKeyPairAuth) Snowflake key-pair authentication.

TrinoBasicAuth

(synq.integrations.v1.TrinoBasicAuth) Trino basic (username / password) authentication.

TrinoCloudConf

(synq.integrations.v1.TrinoCloudConf) Trino / Presto cloud-managed connection. Fields are optional so an update can carry only what changes (omit = leave unchanged). Secret fields are write-only (masked on reads); omit to keep or send a new value to rotate.

BigQueryCloudConf

(synq.integrations.v1.BigQueryCloudConf) Google BigQuery cloud-managed connection. All fields are optional so an update can carry only what changes: omit a field to leave it unchanged, or send a new value to set it. Secret fields are write-only (masked, returned empty, on reads); omit to keep the stored value or send a new value to rotate it.

IamRequest

(synq.auth.iam.v1.IamRequest)

IamResponse

(synq.auth.iam.v1.IamResponse)

GetAtlanConnectionsRequest

(synq.extensions.atlan.provider.v1.GetAtlanConnectionsRequest)

GetAtlanConnectionsResponse

(synq.extensions.atlan.provider.v1.GetAtlanConnectionsResponse)

GetAtlanDataProductsRequest

(synq.extensions.atlan.provider.v1.GetAtlanDataProductsRequest)

GetAtlanDataProductsResponse

(synq.extensions.atlan.provider.v1.GetAtlanDataProductsResponse)

GetAtlanDomainsRequest

(synq.extensions.atlan.provider.v1.GetAtlanDomainsRequest)

GetAtlanDomainsResponse

(synq.extensions.atlan.provider.v1.GetAtlanDomainsResponse)

AtlanConnection

(synq.extensions.atlan.provider.v1.AtlanConnection)

AtlanDataDomain

(synq.extensions.atlan.provider.v1.AtlanDataDomain)

AtlanDataProduct

(synq.extensions.atlan.provider.v1.AtlanDataProduct)

AtlanDataProduct.Emails

(synq.extensions.atlan.provider.v1.AtlanDataProduct.Emails)

AtlanDataProduct.OwnerGroupsEntry

(synq.extensions.atlan.provider.v1.AtlanDataProduct.OwnerGroupsEntry)

DomainMappingToggle

(synq.extensions.atlan.workflows.v1.DomainMappingToggle)

MappingToggle

(synq.extensions.atlan.workflows.v1.MappingToggle)

ProductMappingToggle

(synq.extensions.atlan.workflows.v1.ProductMappingToggle)

ProductOwnerMappingToggle

(synq.extensions.atlan.workflows.v1.ProductOwnerMappingToggle)

FetchRunsRequest

(synq.extensions.atlan.workflows.v1.FetchRunsRequest)

FetchRunsResponse

(synq.extensions.atlan.workflows.v1.FetchRunsResponse)

GetConnectionMappingsRequest

(synq.extensions.atlan.workflows.v1.GetConnectionMappingsRequest)

GetConnectionMappingsResponse

(synq.extensions.atlan.workflows.v1.GetConnectionMappingsResponse)

GetDomainMappingsRequest

(synq.extensions.atlan.workflows.v1.GetDomainMappingsRequest)

GetDomainMappingsResponse

(synq.extensions.atlan.workflows.v1.GetDomainMappingsResponse)

GetMappingTogglesRequest

(synq.extensions.atlan.workflows.v1.GetMappingTogglesRequest)

GetMappingTogglesResponse

(synq.extensions.atlan.workflows.v1.GetMappingTogglesResponse)

GetProductMappingsRequest

(synq.extensions.atlan.workflows.v1.GetProductMappingsRequest)

GetProductMappingsResponse

(synq.extensions.atlan.workflows.v1.GetProductMappingsResponse)

RemoveConnectionMappingsRequest

(synq.extensions.atlan.workflows.v1.RemoveConnectionMappingsRequest)

RemoveConnectionMappingsResponse

(synq.extensions.atlan.workflows.v1.RemoveConnectionMappingsResponse)

SetConnectionMappingsRequest

(synq.extensions.atlan.workflows.v1.SetConnectionMappingsRequest)

SetConnectionMappingsResponse

(synq.extensions.atlan.workflows.v1.SetConnectionMappingsResponse)

SetMappingTogglesRequest

(synq.extensions.atlan.workflows.v1.SetMappingTogglesRequest)

SetMappingTogglesResponse

(synq.extensions.atlan.workflows.v1.SetMappingTogglesResponse)

SynchronizeRequest

(synq.extensions.atlan.workflows.v1.SynchronizeRequest)

SynchronizeResponse

(synq.extensions.atlan.workflows.v1.SynchronizeResponse)

CommandResult

(synq.extensions.atlan.workflows.v1.CommandResult)

Log

(synq.extensions.atlan.workflows.v1.Log)

Log.MetadataEntry

(synq.extensions.atlan.workflows.v1.Log.MetadataEntry)

WorkflowRun

(synq.extensions.atlan.workflows.v1.WorkflowRun)

ConnectionMapping

(synq.extensions.atlan.workflows.v1.ConnectionMapping)

DomainMapping

(synq.extensions.atlan.workflows.v1.DomainMapping)

ProductMapping

(synq.extensions.atlan.workflows.v1.ProductMapping)

Integration

(synq.extensions.atlan.integrations.v1.Integration)

ActivateRequest

(synq.extensions.atlan.integrations.v1.ActivateRequest)

ActivateResponse

(synq.extensions.atlan.integrations.v1.ActivateResponse)

GetRequest

(synq.extensions.atlan.integrations.v1.GetRequest)

GetResponse

(synq.extensions.atlan.integrations.v1.GetResponse)

PingRequest

(synq.extensions.atlan.integrations.v1.PingRequest)

PingResponse

(synq.extensions.atlan.integrations.v1.PingResponse)

RemoveRequest

(synq.extensions.atlan.integrations.v1.RemoveRequest)

RemoveResponse

(synq.extensions.atlan.integrations.v1.RemoveResponse)

UpsertRequest

(synq.extensions.atlan.integrations.v1.UpsertRequest)

UpsertResponse

(synq.extensions.atlan.integrations.v1.UpsertResponse)

ScopeAuthorization

(synq.v1.ScopeAuthorization)

PageInfo

(synq.v1.PageInfo)

Pagination

(synq.v1.Pagination)

BatchGetIssuesRequest

(synq.issues.v2.BatchGetIssuesRequest)

BatchGetIssuesResponse

(synq.issues.v2.BatchGetIssuesResponse)

BatchGetIssuesResponse.IssuesEntry

(synq.issues.v2.BatchGetIssuesResponse.IssuesEntry)

ClearStatusRequest

(synq.issues.v2.ClearStatusRequest)

ClearStatusResponse

(synq.issues.v2.ClearStatusResponse)

InteractionFilter

(synq.issues.v2.InteractionFilter) Filter for matching issues where an actor interacted with them. If none of status_changes/comments/activities is set, all interaction types are matched.

ListIssuesRequest

(synq.issues.v2.ListIssuesRequest)

ListIssuesRequest.Sort

(synq.issues.v2.ListIssuesRequest.Sort)

ListIssuesRequest.Time

(synq.issues.v2.ListIssuesRequest.Time)

ListIssuesResponse

(synq.issues.v2.ListIssuesResponse)

MarkExpectedRequest

(synq.issues.v2.MarkExpectedRequest)

MarkExpectedResponse

(synq.issues.v2.MarkExpectedResponse)

MarkFixedRequest

(synq.issues.v2.MarkFixedRequest)

MarkFixedResponse

(synq.issues.v2.MarkFixedResponse)

MarkInvestigatingRequest

(synq.issues.v2.MarkInvestigatingRequest)

MarkInvestigatingResponse

(synq.issues.v2.MarkInvestigatingResponse)

MarkNoActionNeededRequest

(synq.issues.v2.MarkNoActionNeededRequest)

MarkNoActionNeededResponse

(synq.issues.v2.MarkNoActionNeededResponse)

PostCommentRequest

(synq.issues.v2.PostCommentRequest)

PostCommentResponse

(synq.issues.v2.PostCommentResponse)

Actor

(synq.issues.actor.v1.Actor) Actor identifies who performed a write — set by the calling client and carried end-to-end through the public API into stored audit trails (issue status changes, comments, incident assignments) and rendered downstream (e.g. Slack/MSTeams/email alerts). Producers should populate:
  1. name — human-readable display label, derived from synq.auth.iam.v1.IamResponse.user_name when available, falling back to user_email. Avoid generic placeholders (“MCP”, “API”); readers treat those as “no identity resolved” and fall back to impersonal copy.
  2. user — the strongest identifier the caller can prove. For human callers, set email from IamResponse.user_email so the server can resolve the caller back to a workspace user.
  3. via — entry-point label for the channel through which the request arrived (e.g. VIA_MCP for the MCP server), regardless of who the caller is.

EmailUser

(synq.issues.actor.v1.EmailUser)

PagerdutyUser

(synq.issues.actor.v1.PagerdutyUser)

SlackUser

(synq.issues.actor.v1.SlackUser)

BatchGetIssuesRequest

(synq.issues.issues.v1.BatchGetIssuesRequest)

BatchGetIssuesResponse

(synq.issues.issues.v1.BatchGetIssuesResponse)

BatchGetIssuesResponse.IssuesEntry

(synq.issues.issues.v1.BatchGetIssuesResponse.IssuesEntry)

Limit

(synq.issues.issues.v1.Limit)

ListIssuesRequest

(synq.issues.issues.v1.ListIssuesRequest)

ListIssuesResponse

(synq.issues.issues.v1.ListIssuesResponse)

MarkExpectedRequest

(synq.issues.issues.v1.MarkExpectedRequest)

MarkExpectedResponse

(synq.issues.issues.v1.MarkExpectedResponse)

MarkFixedRequest

(synq.issues.issues.v1.MarkFixedRequest)

MarkFixedResponse

(synq.issues.issues.v1.MarkFixedResponse)

MarkInvestigatingRequest

(synq.issues.issues.v1.MarkInvestigatingRequest)

MarkInvestigatingResponse

(synq.issues.issues.v1.MarkInvestigatingResponse)

MarkNoActionNeededRequest

(synq.issues.issues.v1.MarkNoActionNeededRequest)

MarkNoActionNeededResponse

(synq.issues.issues.v1.MarkNoActionNeededResponse)

PostCommentRequest

(synq.issues.issues.v1.PostCommentRequest)

PostCommentResponse

(synq.issues.issues.v1.PostCommentResponse)

Issue

(synq.issues.issues.v1.Issue)

IssueComment

(synq.issues.issues.v1.IssueComment)

MonitorTriggerDetails

(synq.issues.issues.v1.MonitorTriggerDetails)

IssuesCommand

(synq.issues.commands.v1.IssuesCommand) Not to be used directly. Use the IssuesService instead when calling via API.

AlertIdentifier

(synq.alerts.services.v1.AlertIdentifier)

BatchGetRequest

(synq.alerts.services.v1.BatchGetRequest)

BatchGetResponse

(synq.alerts.services.v1.BatchGetResponse)

BatchGetResponse.AlertsEntry

(synq.alerts.services.v1.BatchGetResponse.AlertsEntry)

CreateRequest

(synq.alerts.services.v1.CreateRequest) CreateRequest creates a new alert configuration.

CreateResponse

(synq.alerts.services.v1.CreateResponse) CreateResponse returns the created alert configuration.

DeleteRequest

(synq.alerts.services.v1.DeleteRequest) DeleteRequest specifies which alert configuration to delete. The config can be identified by either ID or FQN.

DeleteResponse

(synq.alerts.services.v1.DeleteResponse) DeleteResponse confirms the deletion (empty response). Empty response - successful deletion is indicated by HTTP 200 status.

ListRequest

(synq.alerts.services.v1.ListRequest) ListRequest filters alert configurations to retrieve.

ListResponse

(synq.alerts.services.v1.ListResponse) ListResponse returns the filtered list of alert configurations.

ToggleEnabledRequest

(synq.alerts.services.v1.ToggleEnabledRequest) ToggleEnabledRequest enables or disables an alert configuration. The config can be identified by either ID or FQN.

ToggleEnabledResponse

(synq.alerts.services.v1.ToggleEnabledResponse) ToggleEnabledResponse confirms the toggle operation (empty response). Empty response - successful toggle is indicated by HTTP 200 status.

UpdateRequest

(synq.alerts.services.v1.UpdateRequest) UpdateRequest updates an existing alert configuration. The config can be identified by either ID or FQN.

UpdateResponse

(synq.alerts.services.v1.UpdateResponse) UpdateResponse returns the updated alert configuration.

AlertingTarget

(synq.alerts.v1.AlertingTarget) AlertingTarget represents a destination where alert notifications will be sent. Each target type has its own specific configuration requirements.

EmailTarget

(synq.alerts.v1.EmailTarget) EmailTarget configures alert delivery via email.

MsTeamsTarget

(synq.alerts.v1.MsTeamsTarget) MsTeamsTarget configures alert delivery to Microsoft Teams. Alerts are sent to a Microsoft Teams channel.

OwnerTarget

(synq.alerts.v1.OwnerTarget) OwnerTarget configures alert delivery to the owner of the monitored entity. This allows alerts to be automatically sent to whoever owns the data being monitored.

SlackTarget

(synq.alerts.v1.SlackTarget) SlackTarget configures alert delivery to Slack. Alerts are sent to a Slack channel.

WebhookTarget

(synq.alerts.v1.WebhookTarget) WebhookTarget configures alert delivery via webhook/hook integrations. This allows integration with external systems and custom notification workflows.

Alert

(synq.alerts.v1.Alert) Alert represents the configuration for an alert. It contains all the necessary information to trigger and send alerts.

Alert.Owner

(synq.alerts.v1.Alert.Owner) Owner information for the alert configuration. If set, the alert is attributed to the specified owner and ownership.

AlertSettings

(synq.alerts.v1.AlertSettings) AlertSettings defines the properties that affect the trigger and presentation of an alert. It specifies the conditions under which an alert should be fired and how it should behave.

EntityGroupQuery

(synq.alerts.v1.EntityGroupQuery) EntityGroupQuery defines a query to select a group of entities. This is used to specify which entities should be monitored by an alert.

IssueAlertSettings

(synq.alerts.v1.IssueAlertSettings) IssueAlertSettings is the unified alert settings type for issue-based alerts. It replaces both EntityFailureAlertSettings and IssueLifecycleAlertSettings.

IssueGroupingStrategy

(synq.alerts.v1.IssueGroupingStrategy) IssueGroupingStrategy controls how issues are grouped for alerting purposes.

IssueGroupingStrategy.NoGrouping

(synq.alerts.v1.IssueGroupingStrategy.NoGrouping) NoGrouping - each issue triggers a separate alert.

IssueGroupingStrategy.SystemDetected

(synq.alerts.v1.IssueGroupingStrategy.SystemDetected) SystemDetected - the system automatically groups related issues.

OngoingAlertsStrategy

(synq.alerts.v1.OngoingAlertsStrategy) OngoingAlertsStrategy defines how to handle ongoing/repeated alerts. This prevents alert spam by controlling notification frequency.

OngoingAlertsStrategy.Disabled

(synq.alerts.v1.OngoingAlertsStrategy.Disabled) Disabled strategy - no ongoing alerts will be sent after the initial alert. No configuration needed - alerts are simply disabled after the first one.

OngoingAlertsStrategy.Schedule

(synq.alerts.v1.OngoingAlertsStrategy.Schedule) Schedule strategy - alerts are sent on a scheduled basis.

OngoingAlertsStrategy.Stream

(synq.alerts.v1.OngoingAlertsStrategy.Stream) Stream strategy - alerts are sent continuously as issues persist. No configuration needed - alerts stream continuously.

SchemaChangeAlertSettings

(synq.alerts.v1.SchemaChangeAlertSettings) SchemaChangeAlertSettings configures alerts for schema changes. This alert triggers when the schema of monitored entities changes.

SelectionQuery

(synq.alerts.v1.SelectionQuery) SelectionQuery represents a query that selects entities based on various criteria. It combines multiple query parts with a logical operand.

SelectionQuery.QueryPart

(synq.alerts.v1.SelectionQuery.QueryPart) A single part of a selection query.

AgentTask

(synq.agent.dwh.v1.AgentTask)

AgentTaskData

(synq.agent.dwh.v1.AgentTaskData)

FetchFullCatalogCommand

(synq.agent.dwh.v1.FetchFullCatalogCommand)

FetchFullMetricsCommand

(synq.agent.dwh.v1.FetchFullMetricsCommand)

FetchMetricsCommand

(synq.agent.dwh.v1.FetchMetricsCommand)

FetchMetricsResult

(synq.agent.dwh.v1.FetchMetricsResult)

FetchMetricsResult.ColumnValue

(synq.agent.dwh.v1.FetchMetricsResult.ColumnValue)

FetchMetricsResult.MetricsRow

(synq.agent.dwh.v1.FetchMetricsResult.MetricsRow)

FetchMetricsResult.QueryRows

(synq.agent.dwh.v1.FetchMetricsResult.QueryRows)

FetchSegmentsCommand

(synq.agent.dwh.v1.FetchSegmentsCommand)

FetchSegmentsResult

(synq.agent.dwh.v1.FetchSegmentsResult)

FetchSegmentsResult.SegmentRow

(synq.agent.dwh.v1.FetchSegmentsResult.SegmentRow)

FetchTableStatsCommand

(synq.agent.dwh.v1.FetchTableStatsCommand)

SqlQuery

(synq.agent.dwh.v1.SqlQuery)

Config

(synq.agent.dwh.v1.Config) Config represents the main configuration for the DWH agent

Config.Agent

(synq.agent.dwh.v1.Config.Agent) Agent contains metadata about this agent instance

Config.ConnectionsEntry

(synq.agent.dwh.v1.Config.ConnectionsEntry)

GenerateConnectionsYamlRequest

(synq.agent.dwh.v1.GenerateConnectionsYamlRequest) Request to generate YAML configuration from data warehouse connections.

GenerateConnectionsYamlRequest.ConnectionsEntry

(synq.agent.dwh.v1.GenerateConnectionsYamlRequest.ConnectionsEntry)

GenerateConnectionsYamlResponse

(synq.agent.dwh.v1.GenerateConnectionsYamlResponse) Response containing the generated YAML configuration.

ListConnectionsRequest

(synq.agent.dwh.v1.ListConnectionsRequest)

ListConnectionsResponse

(synq.agent.dwh.v1.ListConnectionsResponse)

ListConnectionsResponse.ConnectionsEntry

(synq.agent.dwh.v1.ListConnectionsResponse.ConnectionsEntry)

AgentTaskResponse

(synq.agent.dwh.v1.AgentTaskResponse)

ConnectRequest

(synq.agent.dwh.v1.ConnectRequest)

ConnectResponse

(synq.agent.dwh.v1.ConnectResponse)

Hello

(synq.agent.dwh.v1.Hello)

Hello.AvailableConnection

(synq.agent.dwh.v1.Hello.AvailableConnection)

Log

(synq.agent.dwh.v1.Log)

Connection

(synq.agent.dwh.v1.Connection) Connection represents a database connection configuration

AthenaConf

(synq.agent.dwh.v1.AthenaConf) Amazon Athena specific configuration. Athena is serverless: there is no host/port — the endpoint is implied by the AWS region. Queries run inside a workgroup that owns the per-query data-scan cap and the S3 query result location. The configured workgroup MUST have ResultConfiguration.OutputLocation set, otherwise every Athena query fails. Setting EnforceWorkGroupConfiguration=true on the workgroup is strongly recommended so per-query overrides cannot escape the cap. Authentication AthenaConf carries an AWS credential source in one of three ways:
  1. Static IAM access key — set access_key_id and secret_access_key (and optionally session_token if those keys are short-lived STS credentials).
  2. Shared-config profile — set aws_profile to a named profile from ~/.aws/credentials or ~/.aws/config. Useful when the agent host already has AWS CLI configured.
  3. AWS default credential chain — leave all of the above empty. The AWS SDK then uses environment variables (AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY / AWS_PROFILE), shared config, or the EC2 / ECS / EKS instance role attached to the agent host.
If more than one source is provided, they resolve in the order above — explicit static keys win over a profile, profile wins over the chain. role_arn is independent of the source choice. When set, the executor uses one of the three sources as the calling identity and assumes role_arn via STS for every Athena/Glue API call. external_id is included in the AssumeRole request when set; required by trust policies that mandate it. Validation: access_key_id and secret_access_key must be set as a pair (one without the other is rejected); session_token may only be set when both keys are also set.

BigQueryConf

(synq.agent.dwh.v1.BigQueryConf) BigQuery specific configuration

ClickhouseConf

(synq.agent.dwh.v1.ClickhouseConf)

DatabricksConf

(synq.agent.dwh.v1.DatabricksConf)

DuckDBConf

(synq.agent.dwh.v1.DuckDBConf) DuckDB / MotherDuck specific configuration. Supports two modes:
  1. Local/embedded: set database to a file path (e.g. “/tmp/my.duckdb”) or “:memory:”
  2. MotherDuck (cloud): set motherduck_account and motherduck_token

FabricConf

(synq.agent.dwh.v1.FabricConf) Microsoft Fabric Warehouse / Lakehouse SQL analytics endpoint configuration. Fabric speaks T-SQL over TDS (like SQL Server) but is deliberately its own integration with a minimal, opinionated surface: the connection always uses TLS on port 1433 and authenticates with a Microsoft Entra ID service principal (Fabric rejects SQL logins entirely). Callers therefore only supply the endpoint, the warehouse name, and the service-principal credentials — the azuread ActiveDirectoryServicePrincipal workflow and encryption settings are fixed internally so there is nothing to guess. For hosted deployments that mint their own Entra token (managed identity / workload-identity federation), set access_token instead of client_id + client_secret.

MSSQLConf

(synq.agent.dwh.v1.MSSQLConf) Microsoft SQL Server / Azure SQL Database specific configuration. SQL Server is database-scoped — each connection targets a single database. Authentication methods (in priority order):
  1. access_token: pre-acquired Azure AD OAuth token
  2. fed_auth: Azure AD federated authentication (with optional username/password)
  3. username + password: standard SQL Server Authentication

MySQLConf

(synq.agent.dwh.v1.MySQLConf) MySQL specific configuration

MySQLConf.ParamsEntry

(synq.agent.dwh.v1.MySQLConf.ParamsEntry)

OracleConf

(synq.agent.dwh.v1.OracleConf) Oracle Database specific configuration. Oracle connections are scoped to a Pluggable Database (PDB) via the service name. Authentication methods:
  1. wallet_path: Oracle Wallet (mTLS) for OCI Autonomous Database
  2. username + password: standard Oracle database authentication Both can be combined (wallet for TLS + explicit credentials).

PostgresConf

(synq.agent.dwh.v1.PostgresConf) Postgres specific configuration

RedshiftConf

(synq.agent.dwh.v1.RedshiftConf) Redshift specific configuration

SnowflakeConf

(synq.agent.dwh.v1.SnowflakeConf) Snowflake specific configuration

TrinoConf

(synq.agent.dwh.v1.TrinoConf) Trino specific configuration

ColumnMapping

(synq.agent.recon.v1.ColumnMapping) ColumnMapping maps a source column name to a target column name. Used when source and target use different naming conventions for the same data (e.g., snake_case vs SCREAMING_SNAKE_CASE, or completely different names). Only columns with different names need explicit mapping — columns with identical names (or case-insensitive matches when case_insensitive is true) are matched automatically.

Dataset

(synq.agent.recon.v1.Dataset) Dataset defines a source or target dataset for reconciliation. A dataset specifies which connection to use and how to select data — either via a raw SQL query or by referencing a table with optional column filtering.

TableReference

(synq.agent.recon.v1.TableReference) TableReference specifies a table and optional column filtering. Use this instead of a raw query when you want to compare all (or most) columns of a table without writing SQL. name is the table or view name (e.g., “orders”, “fact_sales”). database and schema are optional namespace qualifiers. The actual SQL FQN is generated at runtime using the appropriate dialect quoting.

CronSchedule

(synq.agent.recon.v1.CronSchedule)

ICalSchedule

(synq.agent.recon.v1.ICalSchedule)

ReconciliationConfigSummary

(synq.agent.recon.v1.ReconciliationConfigSummary) Summary of a single reconciliation within a suite config (for listing without parsing full config).

SuiteSchedule

(synq.agent.recon.v1.SuiteSchedule) Schedule configuration for managed suites.

AuditLogEntry

(synq.agent.recon.v1.AuditLogEntry) AuditLogEntry is a summary of an audit log for listing purposes. Use GetAuditLog to retrieve the full audit log data.

GetAuditLogRequest

(synq.agent.recon.v1.GetAuditLogRequest)

GetAuditLogResponse

(synq.agent.recon.v1.GetAuditLogResponse)

IngestAuditLogRequest

(synq.agent.recon.v1.IngestAuditLogRequest)

IngestAuditLogResponse

(synq.agent.recon.v1.IngestAuditLogResponse)

ListAuditLogsRequest

(synq.agent.recon.v1.ListAuditLogsRequest)

ListAuditLogsResponse

(synq.agent.recon.v1.ListAuditLogsResponse)

ReconciliationSummary

(synq.agent.recon.v1.ReconciliationSummary) ReconciliationSummary is a compact summary of a single reconciliation within an audit log entry.

ConnectionEnvironmentOverride

(synq.agent.recon.v1.ConnectionEnvironmentOverride) ConnectionEnvironmentOverride applies to all datasets using a given connection. Provides a default table path override for all datasets on that connection.

DatasetEnvironmentOverride

(synq.agent.recon.v1.DatasetEnvironmentOverride) DatasetEnvironmentOverride applies to a specific dataset in a specific reconciliation. Takes precedence over connection-level overrides.

ReconEnvironment

(synq.agent.recon.v1.ReconEnvironment) ReconEnvironment defines overrides applied to a suite before execution. Environments allow the same suite definition to run against different database locations (e.g., dev vs production schemas) without modifying the suite itself. Used both in synq-recon CLI (loaded from .env.yaml files) and in kernel-recon cloud (managed as workspace-level configurations).

ReconEnvironment.ConnectionsEntry

(synq.agent.recon.v1.ReconEnvironment.ConnectionsEntry)

ReconEnvironment.DatasetsEntry

(synq.agent.recon.v1.ReconEnvironment.DatasetsEntry)

ReconEnvironment.VariablesEntry

(synq.agent.recon.v1.ReconEnvironment.VariablesEntry)

TablePathOverride

(synq.agent.recon.v1.TablePathOverride) TablePathOverride remaps components of a fully-qualified table name. Only set fields are overridden — unset fields keep the suite’s original value. Applied to TableReference fields in datasets when an environment is active.

ConnectionMapping

(synq.agent.recon.v1.ConnectionMapping) Maps a reconciliation-connection name (as referenced in the suite config) to a concrete SYNQ integration. Used at execution time to resolve DWH credentials. Two credential planes are defined on the wire:
  • integration_id: workspace-level integration. Required for deployment paths and acceptable for adhoc submission when the caller has SCOPE_INTEGRATION_EDIT.
  • user_integration_id: per-user OAuth-backed integration. Accepted only on adhoc submission, and only when a user identity is present in the calling context. Deployment paths reject this branch unconditionally — scheduled runs must be able to fire without any particular user being available, so they always run with workspace credentials.
Wire-compatible with the previous shape: the original integration_id (field 2) is preserved as one branch of the oneof so existing serialized rows decode unchanged.

ConnectionResolutionFailure

(synq.agent.recon.v1.ConnectionResolutionFailure) Error-details payload attached to FAILED_PRECONDITION when a recon request cannot be honoured because one or more suite connection names have no usable mapping. The caller should prompt the user to bind every listed connection and retry.

GetSuiteDeploymentRequest

(synq.agent.recon.v1.GetSuiteDeploymentRequest)

GetSuiteDeploymentResponse

(synq.agent.recon.v1.GetSuiteDeploymentResponse)

ListSuiteDeploymentHistoryRequest

(synq.agent.recon.v1.ListSuiteDeploymentHistoryRequest)

ListSuiteDeploymentHistoryResponse

(synq.agent.recon.v1.ListSuiteDeploymentHistoryResponse)

ListSuiteDeploymentsRequest

(synq.agent.recon.v1.ListSuiteDeploymentsRequest)

ListSuiteDeploymentsResponse

(synq.agent.recon.v1.ListSuiteDeploymentsResponse)

PauseDeploymentRequest

(synq.agent.recon.v1.PauseDeploymentRequest)

PauseDeploymentResponse

(synq.agent.recon.v1.PauseDeploymentResponse)

PromoteSuiteRequest

(synq.agent.recon.v1.PromoteSuiteRequest) Server semantics: - absent : reuse the existing deployment for this suite_id, or generate a fresh UUIDv7 - present, no row exists for (workspace, deployment_id) : adopt as-is - present, row exists with same suite_id : idempotent retry - present, row exists with different suite_id : ALREADY_EXISTS | | actor | Actor | Actor performing the promotion. Required. | | deployment_annotations | repeated Annotation | Initial deployment-level annotation overlay. Merged with suite-level and case-level annotations from the frozen suite snapshot. Use UpdateDeploymentAnnotations to mutate later without re-promoting. | | case_failure_impacts | map CaseFailureImpactsEntry | Per-case override controlling how the tables referenced by each reconciliation case propagate onto runs. Keyed by case name from the suite config. When a key is omitted on re-promote, the prior deployment’s value is retained — operators only set keys they want to change, and the FE can offer an “apply to all” action by sending the same value under every case name. New cases (not present in any previous deployment of this suite_id) default to RAISE_ISSUE_ON_TABLES when unset. Sending CASE_FAILURE_IMPACT_UNSPECIFIED for a known case is treated as “no opinion, keep current”; to actively reset to the default, either omit the case or send RAISE_ISSUE_ON_TABLES. |

PromoteSuiteRequest.CaseFailureImpactsEntry

(synq.agent.recon.v1.PromoteSuiteRequest.CaseFailureImpactsEntry)

PromoteSuiteResponse

(synq.agent.recon.v1.PromoteSuiteResponse)

ResumeDeploymentRequest

(synq.agent.recon.v1.ResumeDeploymentRequest)

ResumeDeploymentResponse

(synq.agent.recon.v1.ResumeDeploymentResponse)

SuiteDeployment

(synq.agent.recon.v1.SuiteDeployment) SuiteDeployment is the latest state of a deployment (current row). “managed” or “adhoc” | | source_config_state_at | Timestamp | none | | state_at | Timestamp | Most recent event timestamp. | | last_action | DeploymentAction | none | | oneof _last_actor.last_actor | optional Actor | none | | oneof _last_change_summary.last_change_summary | optional string | none | | oneof _next_run_at.next_run_at | optional Timestamp | Next cron occurrence computed live from schedule at response time. Absent when there’s no schedule, when the deployment is inactive/paused, or when the schedule expression no longer yields an upcoming occurrence (e.g. an iCal RRULE that has finished). Use this for “Next run: …” UI hints — it’s the authoritative upcoming-tick source, independent of any pre-materialised execution_jobs / run_state rows. | | deployment_annotations | repeated Annotation | Deployment-level annotation overlay. Applied on top of the suite-level and case-level annotations baked into the frozen suite snapshot. The merged, deduplicated list lives on PromotedReconSuiteMetadata / PromotedReconCaseMetadata — this field exposes only the deployment’s own overlay so callers can render and edit it independently. | | case_failure_impacts | map CaseFailureImpactsEntry | Effective per-case CaseFailureImpact map currently in force for this deployment. Keyed by case name. Cases without an entry behave as RAISE_ISSUE_ON_TABLES. Drives whether the runner attaches each case’s referenced tables to Run.target (issue-raising) or Run.extra_references (visibility only) — see PromotedReconCaseMetadata.error_tables / shown_tables for the resolved table lists. |

SuiteDeployment.CaseFailureImpactsEntry

(synq.agent.recon.v1.SuiteDeployment.CaseFailureImpactsEntry)

SuiteDeploymentHistoryEntry

(synq.agent.recon.v1.SuiteDeploymentHistoryEntry) SuiteDeploymentHistoryEntry is a single event in the deployment’s history.

SuiteDeploymentHistoryEntry.CaseFailureImpactsEntry

(synq.agent.recon.v1.SuiteDeploymentHistoryEntry.CaseFailureImpactsEntry)

TriggerDeploymentRequest

(synq.agent.recon.v1.TriggerDeploymentRequest)

TriggerDeploymentResponse

(synq.agent.recon.v1.TriggerDeploymentResponse)

UnpromoteSuiteRequest

(synq.agent.recon.v1.UnpromoteSuiteRequest)

UnpromoteSuiteResponse

(synq.agent.recon.v1.UnpromoteSuiteResponse)

UnresolvedConnection

(synq.agent.recon.v1.UnresolvedConnection) One entry per connection name the server failed to resolve. Returned inside ConnectionResolutionFailure as the structured error detail of a FAILED_PRECONDITION on adhoc submission or deployment promote/update.

UpdateDeploymentAnnotationsRequest

(synq.agent.recon.v1.UpdateDeploymentAnnotationsRequest)

UpdateDeploymentAnnotationsResponse

(synq.agent.recon.v1.UpdateDeploymentAnnotationsResponse)

UpdateDeploymentCaseImpactsRequest

(synq.agent.recon.v1.UpdateDeploymentCaseImpactsRequest)

UpdateDeploymentCaseImpactsRequest.CaseFailureImpactsEntry

(synq.agent.recon.v1.UpdateDeploymentCaseImpactsRequest.CaseFailureImpactsEntry)

UpdateDeploymentCaseImpactsResponse

(synq.agent.recon.v1.UpdateDeploymentCaseImpactsResponse)

UpdateDeploymentMappingsRequest

(synq.agent.recon.v1.UpdateDeploymentMappingsRequest)

UpdateDeploymentMappingsResponse

(synq.agent.recon.v1.UpdateDeploymentMappingsResponse)

UpdateDeploymentScheduleRequest

(synq.agent.recon.v1.UpdateDeploymentScheduleRequest)

UpdateDeploymentScheduleResponse

(synq.agent.recon.v1.UpdateDeploymentScheduleResponse)

ParseYamlRequest

(synq.agent.recon.v1.ParseYamlRequest)

ParseYamlResponse

(synq.agent.recon.v1.ParseYamlResponse)

RenderYamlRequest

(synq.agent.recon.v1.RenderYamlRequest)

RenderYamlResponse

(synq.agent.recon.v1.RenderYamlResponse)

ColumnThresholdOverride

(synq.agent.recon.v1.ColumnThresholdOverride) ColumnThresholdOverride associates threshold overrides with a specific group_column level in the aggregate drill-down hierarchy.

MeasureThresholdOverride

(synq.agent.recon.v1.MeasureThresholdOverride) MeasureThresholdOverride associates threshold overrides with a specific measure (aggregate function + column combination).

ThresholdConfig

(synq.agent.recon.v1.ThresholdConfig) ThresholdConfig defines tolerance thresholds for aggregate comparisons. A difference is reported as a mismatch only when it exceeds ALL configured thresholds (AND logic: both absolute AND percentage must be exceeded). Thresholds can be overridden at finer granularity:
  • per_column: override thresholds for a specific group_column drill-down level.
  • per_measure: override thresholds for a specific measure (e.g., “SUM(amount)”).
  • Nesting: per_column entries may contain per_measure overrides (most specific wins).
When no thresholds are configured at any level, exact match is required.

DeleteSuiteConfigRequest

(synq.agent.recon.v1.DeleteSuiteConfigRequest)

DeleteSuiteConfigResponse

(synq.agent.recon.v1.DeleteSuiteConfigResponse)

GetSuiteConfigRequest

(synq.agent.recon.v1.GetSuiteConfigRequest)

GetSuiteConfigResponse

(synq.agent.recon.v1.GetSuiteConfigResponse)

GetSuiteConfigVersionRequest

(synq.agent.recon.v1.GetSuiteConfigVersionRequest)

GetSuiteConfigVersionResponse

(synq.agent.recon.v1.GetSuiteConfigVersionResponse)

ListSuiteConfigVersionsRequest

(synq.agent.recon.v1.ListSuiteConfigVersionsRequest)

ListSuiteConfigVersionsResponse

(synq.agent.recon.v1.ListSuiteConfigVersionsResponse)

ListSuiteConfigsRequest

(synq.agent.recon.v1.ListSuiteConfigsRequest)

ListSuiteConfigsResponse

(synq.agent.recon.v1.ListSuiteConfigsResponse)

SubmitAdhocSuiteRequest

(synq.agent.recon.v1.SubmitAdhocSuiteRequest) When omitted, the server attempts to resolve each connection name against a workspace integration of the same name (legacy behaviour). When the suite references connection names that the server cannot resolve, the call fails with FAILED_PRECONDITION + a ConnectionResolutionFailure detail listing every unresolved name and candidate integrations, so the caller can prompt the user to bind them. Both workspace-level (integration_id) and user-level (user_integration_id) credentials are accepted here: - integration_id requires SCOPE_INTEGRATION_EDIT on the caller. - user_integration_id requires a user identity in the calling context and the integration’s allow_reconciliation_adhoc gate enabled. | | oneof _run_bisection.run_bisection | optional bool | When true (default), the runner drills into each mismatched reconciliation via bisection after the quick check fails. Set to false to stop after the quick check — useful for cheap smoke runs, or when the caller plans to trigger a manual drill later. Per-reconciliation bisection.enabled still gates whether a given recon is eligible for drill, so this flag is the run-level off switch layered on top. | | oneof _execution_timeout.execution_timeout | optional Duration | Maximum wall-clock time for this ad-hoc run (quick check plus any bisection drill). A run that exceeds it is cancelled and marked failed. Absent uses the server default; the server clamps the effective value to a supported range. | | actor | Actor | Actor submitting the run. Required. |

SubmitAdhocSuiteResponse

(synq.agent.recon.v1.SubmitAdhocSuiteResponse)

SuiteConfig

(synq.agent.recon.v1.SuiteConfig) SuiteConfig represents the latest version of a reconciliation suite configuration.

SuiteConfigVersion

(synq.agent.recon.v1.SuiteConfigVersion) SuiteConfigVersion represents a historical version of a suite config.

UpsertSuiteConfigRequest

(synq.agent.recon.v1.UpsertSuiteConfigRequest)

UpsertSuiteConfigResponse

(synq.agent.recon.v1.UpsertSuiteConfigResponse)

AggregateDrillTarget

(synq.agent.recon.v1.AggregateDrillTarget) AggregateDrillTarget specifies how to extend or drill deeper into aggregate results.

BisectionDrillTarget

(synq.agent.recon.v1.BisectionDrillTarget) BisectionDrillTarget specifies which mismatch leaves to drill deeper into.

GroupTarget

(synq.agent.recon.v1.GroupTarget) GroupTarget identifies a specific group to drill into by its key values.

ReconcilationFilter

(synq.agent.recon.v1.ReconcilationFilter) ReconcilationFilter controls which reconciliations are included or excluded.

ReconcilationOverride

(synq.agent.recon.v1.ReconcilationOverride) ReconcilationOverride provides per-reconciliation instructions for a run. Used to drill into specific mismatches, adjust config, or extend comparisons.

ReconcilationRunRequest

(synq.agent.recon.v1.ReconcilationRunRequest) ReconcilationRunRequest describes what to execute in a reconciliation run. It can start a fresh run, continue from a previous audit, or drill deeper into specific mismatches found in a prior run.

ReconcilationRunRequest.VariableOverridesEntry

(synq.agent.recon.v1.ReconcilationRunRequest.VariableOverridesEntry)

RerunAction

(synq.agent.recon.v1.RerunAction) RerunAction re-runs a reconciliation from scratch with optional config overrides.

SegmentTarget

(synq.agent.recon.v1.SegmentTarget) SegmentTarget identifies a specific segment to drill into.

ReconciliationRunState

(synq.agent.recon.v1.ReconciliationRunState) ReconciliationRunState describes the lifecycle of a single reconciliation run. Returned by RunStateService.

AggregateConfig

(synq.agent.recon.v1.AggregateConfig) AggregateConfig defines aggregate comparison settings. Used when mode is AGGREGATE to compare grouped measures between source and target. Single column: flat GROUP BY comparison. group_columns: [“region”] → GROUP BY region Multiple columns: cumulative GROUP BY drill-down, pruning matched groups at each level to focus on divergent branches. group_columns: [“region”, “city”, “store”] → Level 0: GROUP BY region → Level 1: GROUP BY region, city (only for mismatched regions) → Level 2: GROUP BY region, city, store (only for mismatched cities) |

BisectionConfig

(synq.agent.recon.v1.BisectionConfig) BisectionConfig controls the bisection drill-down algorithm that recursively splits the key range to locate individual mismatched rows. Only used in ROW_CHECKSUM mode.

ConnectionQueries

(synq.agent.recon.v1.ConnectionQueries) ConnectionQueries associates SQL queries with a specific connection. Used for setup and teardown blocks at both suite and reconciliation level.

ErrorHandlingConfig

(synq.agent.recon.v1.ErrorHandlingConfig) ErrorHandlingConfig controls retry and timeout behavior for database queries. Applies to all queries within a reconciliation (setup, comparison, teardown).

Measure

(synq.agent.recon.v1.Measure) Measure defines a column and aggregate function(s) to compare between source and target datasets. A single measure with multiple functions expands into multiple comparisons (e.g., column=“amount” functions=[SUM, AVG] produces “SUM(amount)” and “AVG(amount)”).

Reconcilation

(synq.agent.recon.v1.Reconcilation) Reconcilation defines a single reconciliation scenario comparing data between a source and target dataset. Each reconciliation runs independently and produces its own pass/mismatch/fail result.

ReconcilationSuite

(synq.agent.recon.v1.ReconcilationSuite) ReconcilationSuite is the root configuration for a reconciliation suite. It defines template variables and one or more reconciliation scenarios that compare data between source and target databases. Database connections are configured separately and referenced by name.

ReconcilationSuite.VariablesEntry

(synq.agent.recon.v1.ReconcilationSuite.VariablesEntry)

ReportingConfig

(synq.agent.recon.v1.ReportingConfig) ReportingConfig controls the level of detail included in reconciliation output for mismatched rows. Higher detail levels reveal more data but may have privacy implications.

WindowConfig

(synq.agent.recon.v1.WindowConfig) WindowConfig defines a time window for incremental comparison. When configured, automatically provides a {{window_start}} template variable that resolves to (current_time - lookback). Use this in query WHERE clauses to limit comparison to recent data.

CutoffApplyConfig

(synq.agent.recon.v1.CutoffApplyConfig) CutoffApplyConfig controls how the resolved cutoff value is applied as a WHERE filter.

CutoffConfig

(synq.agent.recon.v1.CutoffConfig) CutoffConfig defines a dynamic cutoff filter for sync reconciliation. It derives a watermark value from the actual data (e.g., MAX(created_at)) to automatically exclude rows that haven’t been synced yet. The cutoff is resolved at runtime before comparison queries run:
  1. Derive watermark(s) from source and/or target via aggregate queries.
  2. Combine them (default: MIN of both sides).
  3. Optionally truncate to a time boundary and apply an offset.
  4. Apply as WHERE filter to both source and target queries.

CutoffSideConfig

(synq.agent.recon.v1.CutoffSideConfig) CutoffSideConfig configures watermark derivation for one side (source or target). There are two modes:
  1. Column + aggregate (default): auto-generates a watermark query from the dataset. For table-based datasets, queries the table directly (the column does NOT need to be in the reconciliation column list). For query-based datasets, wraps the query as a subquery (the column MUST be in the query’s SELECT list).
  2. Custom query: provide a SQL query that returns a single row with a “watermark” column. Use this when the auto-generated query doesn’t work (e.g., complex joins, custom logic).
After resolution at runtime, the query field is always populated with the actual SQL that was executed, regardless of which mode was used. This ensures the audit log captures the exact query for reproducibility.

BatchReconciliationRunStateRequest

(synq.agent.recon.v1.BatchReconciliationRunStateRequest)

BatchReconciliationRunStateResponse

(synq.agent.recon.v1.BatchReconciliationRunStateResponse)

BatchReconciliationRunStateResponse.StatesEntry

(synq.agent.recon.v1.BatchReconciliationRunStateResponse.StatesEntry)

CancelReconciliationRunRequest

(synq.agent.recon.v1.CancelReconciliationRunRequest)

CancelReconciliationRunResponse

(synq.agent.recon.v1.CancelReconciliationRunResponse)

ListReconciliationRunStateRequest

(synq.agent.recon.v1.ListReconciliationRunStateRequest)

ListReconciliationRunStateResponse

(synq.agent.recon.v1.ListReconciliationRunStateResponse)

SuiteRunStates

(synq.agent.recon.v1.SuiteRunStates) SuiteRunStates groups the most relevant run rows for a single suite.

AggregateDrillChild

(synq.agent.recon.v1.AggregateDrillChild) AggregateDrillChild represents a single divergent group within a drill-down level.

AggregateDrillChild.SourceValuesEntry

(synq.agent.recon.v1.AggregateDrillChild.SourceValuesEntry)

AggregateDrillChild.TargetValuesEntry

(synq.agent.recon.v1.AggregateDrillChild.TargetValuesEntry)

AggregateDrillNode

(synq.agent.recon.v1.AggregateDrillNode) AggregateDrillNode represents a node in the hierarchical aggregate drill-down tree.

AggregateStageResult

(synq.agent.recon.v1.AggregateStageResult) AggregateStageResult is the result for an aggregate_check stage.

AuditLog

(synq.agent.recon.v1.AuditLog) AuditLog is the root structure for a reconciliation run audit. It captures all operations performed during a synq-recon reconciliation run.

AuditLog.ResolvedTableReferencesEntry

(synq.agent.recon.v1.AuditLog.ResolvedTableReferencesEntry)

AuditLog.ResolvedVariablesEntry

(synq.agent.recon.v1.AuditLog.ResolvedVariablesEntry)

AuditMeta

(synq.agent.recon.v1.AuditMeta) AuditMeta holds build and environment metadata for the synq-recon binary.

AuditSummary

(synq.agent.recon.v1.AuditSummary) AuditSummary holds aggregated counts derived from individual reconciliation results.

BisectionStageResult

(synq.agent.recon.v1.BisectionStageResult) BisectionStageResult is the result for a bisection_drill stage.

BisectionStatistics

(synq.agent.recon.v1.BisectionStatistics) BisectionStatistics holds statistics about the bisection segment tree.

BisectionStatistics.DepthDistributionEntry

(synq.agent.recon.v1.BisectionStatistics.DepthDistributionEntry)

BisectionStatistics.MismatchByDepthEntry

(synq.agent.recon.v1.BisectionStatistics.MismatchByDepthEntry)

BisectionStatistics.PerDepthEntry

(synq.agent.recon.v1.BisectionStatistics.PerDepthEntry)

CutoffResult

(synq.agent.recon.v1.CutoffResult) CutoffResult captures the runtime resolution of a cutoff filter. Stored in the audit log to provide full transparency into how the cutoff was derived and applied.

DatasetInfo

(synq.agent.recon.v1.DatasetInfo) DatasetInfo captures runtime information about a source or target dataset.

DepthStats

(synq.agent.recon.v1.DepthStats) DepthStats holds per-depth-level statistics for the bisection tree.

DiffQueries

(synq.agent.recon.v1.DiffQueries) DiffQueries holds investigation queries for a mismatch leaf.

InvestigationQuery

(synq.agent.recon.v1.InvestigationQuery) InvestigationQuery represents a merged diff query covering one or more adjacent mismatch leaves.

MeasureDifferences

(synq.agent.recon.v1.MeasureDifferences) MeasureDifferences holds all difference variants for measure comparisons.

MeasureDifferences.AbsoluteEntry

(synq.agent.recon.v1.MeasureDifferences.AbsoluteEntry)

MeasureDifferences.PctSymmetricEntry

(synq.agent.recon.v1.MeasureDifferences.PctSymmetricEntry)

MeasureDifferences.PctVsSourceEntry

(synq.agent.recon.v1.MeasureDifferences.PctVsSourceEntry)

MeasureDifferences.PctVsTargetEntry

(synq.agent.recon.v1.MeasureDifferences.PctVsTargetEntry)

MeasureDifferences.RelativeEntry

(synq.agent.recon.v1.MeasureDifferences.RelativeEntry)

MeasureVerdict

(synq.agent.recon.v1.MeasureVerdict) MeasureVerdict captures the threshold evaluation result for a single measure.

MismatchLeafDetail

(synq.agent.recon.v1.MismatchLeafDetail) MismatchLeafDetail holds detailed information about a single mismatch leaf.

Normalization

(synq.agent.recon.v1.Normalization) Normalization records the column expressions used after cross-DB type alignment.

QueryRecord

(synq.agent.recon.v1.QueryRecord) QueryRecord captures a single SQL query execution.

QueryStats

(synq.agent.recon.v1.QueryStats) QueryStats holds execution statistics collected from the database driver. Fields are optional — absent means the metric is not available for the driver.

QuickCheckStageResult

(synq.agent.recon.v1.QuickCheckStageResult) QuickCheckStageResult is the result for a quick_check stage.

ReconciliationAudit

(synq.agent.recon.v1.ReconciliationAudit) ReconciliationAudit captures the configuration and runtime execution data for a single reconciliation.

RowMismatchAudit

(synq.agent.recon.v1.RowMismatchAudit) RowMismatchAudit captures a single row-level mismatch in the segment tree.

RowMismatchAudit.SourceValuesEntry

(synq.agent.recon.v1.RowMismatchAudit.SourceValuesEntry)

RowMismatchAudit.TargetValuesEntry

(synq.agent.recon.v1.RowMismatchAudit.TargetValuesEntry)

RowMismatchDetail

(synq.agent.recon.v1.RowMismatchDetail) RowMismatchDetail holds per-row mismatch detail.

SegmentAuditNode

(synq.agent.recon.v1.SegmentAuditNode) SegmentAuditNode represents a node in the bisection segment tree.

SegmentInfo

(synq.agent.recon.v1.SegmentInfo) SegmentInfo identifies a key range segment.

StageAudit

(synq.agent.recon.v1.StageAudit) StageAudit captures one reconciliation stage execution.

ThresholdEvaluation

(synq.agent.recon.v1.ThresholdEvaluation) ThresholdEvaluation captures the effective thresholds applied and per-measure verdicts.

ThresholdEvaluation.MeasuresEntry

(synq.agent.recon.v1.ThresholdEvaluation.MeasuresEntry)

AcceptPromptSuggestionRequest

(synq.agent.sre.v1.AcceptPromptSuggestionRequest)

AcceptPromptSuggestionResponse

(synq.agent.sre.v1.AcceptPromptSuggestionResponse)

AgentTask

(synq.agent.sre.v1.AgentTask)

AgentTaskResponse

(synq.agent.sre.v1.AgentTaskResponse)

ConnectRequest

(synq.agent.sre.v1.ConnectRequest)

ConnectResponse

(synq.agent.sre.v1.ConnectResponse)

DismissPromptSuggestionRequest

(synq.agent.sre.v1.DismissPromptSuggestionRequest)

DismissPromptSuggestionResponse

(synq.agent.sre.v1.DismissPromptSuggestionResponse)

DwhConnection

(synq.agent.sre.v1.DwhConnection)

DwhConnection.ParametersEntry

(synq.agent.sre.v1.DwhConnection.ParametersEntry)

EvaluateTask

(synq.agent.sre.v1.EvaluateTask) Task to evaluate an LLM request on the agent side (for self-hosted agents).

GetConfigRequest

(synq.agent.sre.v1.GetConfigRequest)

GetConfigResponse

(synq.agent.sre.v1.GetConfigResponse)

Hello

(synq.agent.sre.v1.Hello)

ListPromptSuggestionsRequest

(synq.agent.sre.v1.ListPromptSuggestionsRequest)

ListPromptSuggestionsResponse

(synq.agent.sre.v1.ListPromptSuggestionsResponse)

PromptSuggestion

(synq.agent.sre.v1.PromptSuggestion)

RecordPromptSuggestionRequest

(synq.agent.sre.v1.RecordPromptSuggestionRequest) Explicit-presence (optional) so the field can carry an empty string with meaning. An empty value is a deliberate proposal to REMOVE the prompt entirely (clear the override back to the built-in default), distinct from omitting the field. Use this when a customised prompt is judged counter-productive and the workspace is better off with no override at all. required is intentionally NOT set: that rule rejects the empty string, which would make a removal proposal un-expressible. Presence (the field must be set at all) is enforced by the handler via a nil check, so an omitted field is still rejected while an explicit "" is accepted. Producer guidance — propose the smallest change that achieves the goal. Start from the current prompt value and append, delete, or rewrite only the relevant section; do not regenerate the whole prompt from scratch. The reviewer is shown a Current-vs-Suggested diff, so a surgical edit is far easier to approve than a wholesale rewrite that rewords every line. Keep individual lines short and break content into paragraphs separated by newlines instead of collapsing everything onto one long line. The review UI diffs line by line, so well-broken text produces a readable, minimal diff; a single monster line shows up as one giant replaced block. | | rationale | string | Short markdown explanation of why the change is proposed, capped at 2048 bytes. Shown to the reviewer as a “why” callout above the diff, so keep it to a few tight sentences or bullet points — it justifies the change, it does not restate the prompt. As with suggested_value, prefer short lines / paragraphs over one long line. | | evidence_json | bytes | Opaque JSON: structured pointers the analyser used to produce the suggestion (top entities, sample issues, etc.). Stored verbatim for traceability. | | source | string | Producer identifier + version, e.g. "offline_audit_v1". A short slug, not free text — capped at 128 bytes. |

RecordPromptSuggestionResponse

(synq.agent.sre.v1.RecordPromptSuggestionResponse)

SuggestTestsTask

(synq.agent.sre.v1.SuggestTestsTask)

TriageTask

(synq.agent.sre.v1.TriageTask)

EvaluateRequest

(synq.agent.sre.v1.EvaluateRequest) Request to evaluate an LLM request with structured output.

EvaluateResponse

(synq.agent.sre.v1.EvaluateResponse) Response from the LLM evaluation.

LlmResponseMetrics

(synq.agent.sre.v1.LlmResponseMetrics) Metrics about the LLM response.

Message

(synq.agent.sre.v1.Message) A single message in the conversation history.

BatchLatestConclusionsRequest

(synq.agent.sre.v1.BatchLatestConclusionsRequest)

BatchLatestConclusionsResponse

(synq.agent.sre.v1.BatchLatestConclusionsResponse)

BatchTriageStateRequest

(synq.agent.sre.v1.BatchTriageStateRequest)

BatchTriageStateResponse

(synq.agent.sre.v1.BatchTriageStateResponse)

BatchTriageStateResponse.StatesEntry

(synq.agent.sre.v1.BatchTriageStateResponse.StatesEntry)

ConcludeRequest

(synq.agent.sre.v1.ConcludeRequest) Request to conclude the triage investigation for one or more issues.

ConcludeResponse

(synq.agent.sre.v1.ConcludeResponse) Response for the Conclude operation. Empty as the operation is fire-and-forget.

ListTriageStateRequest

(synq.agent.sre.v1.ListTriageStateRequest)

ListTriageStateResponse

(synq.agent.sre.v1.ListTriageStateResponse)

MarkAsInProgressRequest

(synq.agent.sre.v1.MarkAsInProgressRequest)

MarkAsInProgressResponse

(synq.agent.sre.v1.MarkAsInProgressResponse)

MarkFailedRequest

(synq.agent.sre.v1.MarkFailedRequest)

MarkFailedResponse

(synq.agent.sre.v1.MarkFailedResponse)

RecordEvidenceRequest

(synq.agent.sre.v1.RecordEvidenceRequest) Request to record evidence collected during the triage investigation.

RecordEvidenceResponse

(synq.agent.sre.v1.RecordEvidenceResponse) Response for the RecordEvidence operation. Empty as the operation is fire-and-forget.

AnalysisEvidence

(synq.agent.sre.v1.AnalysisEvidence) AnalysisEvidence contains detailed analysis of the issue based on collected data. This should only be used as a last resort when no other more specialized evidence types (history, root cause, related issues, or changes) could be collected. It provides a comprehensive understanding of the problem and its implications.

ChangeEvidence

(synq.agent.sre.v1.ChangeEvidence) ChangeEvidence documents recent changes that may have contributed to the issue. This helps in understanding if the issue is related to recent modifications.

CodeChange

(synq.agent.sre.v1.CodeChange) CodeChange represents a specific change in a file within a commit.

CommitEvidence

(synq.agent.sre.v1.CommitEvidence) CommitEvidence documents code changes that may have contributed to the issue. This helps in understanding if the issue is related to recent code modifications.

DataQueryEvidenceItem

(synq.agent.sre.v1.DataQueryEvidenceItem) DataQueryEvidenceItem represents a single SQL query and its analysis.

DataQueryEvidenceV2

(synq.agent.sre.v1.DataQueryEvidenceV2) DataQueryEvidenceV2 contains SQL queries and their analysis results with query IDs. This helps in understanding the issue through data analysis with query tracking.

EvidenceItem

(synq.agent.sre.v1.EvidenceItem) EvidenceItem represents a single piece of evidence collected during the triage investigation. Each evidence item must have a title and one of the specific evidence types.

HistoryEvidence

(synq.agent.sre.v1.HistoryEvidence) HistoryEvidence represents historical context from similar past issues. This helps in understanding if the current issue is recurring or has known patterns.

ImpactedDataproductEvidence

(synq.agent.sre.v1.ImpactedDataproductEvidence) ImpactedDataproduct documents Data Products that are significantly affected by the issue. This helps in understanding the business impact and prioritizing resolution efforts.

ImpactedOwnerEvidence

(synq.agent.sre.v1.ImpactedOwnerEvidence) ImpactedOwner documents business owners or teams that are seriously affected by the issue. This helps in understanding stakeholder impact and communication requirements.

OtherEvidence

(synq.agent.sre.v1.OtherEvidence) OtherEvidence contains general analysis that doesn’t fit into other specialized evidence types. This should be used when the analysis doesn’t involve SQL queries, code changes, or other specialized evidence types.

RelatedIssueEvidence

(synq.agent.sre.v1.RelatedIssueEvidence) RelatedIssueEvidence identifies other issues that may be connected to the current investigation. This helps in understanding broader context and potential dependencies.

RootCauseEvidence

(synq.agent.sre.v1.RootCauseEvidence) RootCauseEvidence identifies the likely root cause of the issue being investigated. This helps in understanding the fundamental reason behind the problem.

SubmitFeatureRequestRequest

(synq.agent.sre.v1.SubmitFeatureRequestRequest) Request to submit a feature request. Should only be used as a last resort when no existing tool can handle the user’s request.

SubmitFeatureRequestResponse

(synq.agent.sre.v1.SubmitFeatureRequestResponse) Response for the SubmitFeatureRequest operation.

TestSuggestionState

(synq.agent.sre.v1.TestSuggestionState)

BatchSuggestionStatesRequest

(synq.agent.sre.v1.BatchSuggestionStatesRequest)

BatchSuggestionStatesResponse

(synq.agent.sre.v1.BatchSuggestionStatesResponse)

GetActiveSuggestionStatesForRequest

(synq.agent.sre.v1.GetActiveSuggestionStatesForRequest)

GetActiveSuggestionStatesForResponse

(synq.agent.sre.v1.GetActiveSuggestionStatesForResponse)

ListSuggestionStatesRequest

(synq.agent.sre.v1.ListSuggestionStatesRequest)

ListSuggestionStatesResponse

(synq.agent.sre.v1.ListSuggestionStatesResponse)

MarkAsCancelledRequest

(synq.agent.sre.v1.MarkAsCancelledRequest)

MarkAsCancelledResponse

(synq.agent.sre.v1.MarkAsCancelledResponse)

MarkAsCompletedRequest

(synq.agent.sre.v1.MarkAsCompletedRequest)

MarkAsCompletedResponse

(synq.agent.sre.v1.MarkAsCompletedResponse)

MarkAsFailedRequest

(synq.agent.sre.v1.MarkAsFailedRequest)

MarkAsFailedResponse

(synq.agent.sre.v1.MarkAsFailedResponse)

MarkAsRunningRequest

(synq.agent.sre.v1.MarkAsRunningRequest)

MarkAsRunningResponse

(synq.agent.sre.v1.MarkAsRunningResponse)

SuggestForRequest

(synq.agent.sre.v1.SuggestForRequest)

SuggestForResponse

(synq.agent.sre.v1.SuggestForResponse)

AddToIncidentConclusion

(synq.agent.sre.v1.AddToIncidentConclusion) AddToIncidentConclusion indicates that the issue should be added to an existing incident. This conclusion should be supported by evidence showing the connection to the existing incident.

DeclareIncidentConclusion

(synq.agent.sre.v1.DeclareIncidentConclusion) DeclareIncidentConclusion indicates that the issue requires immediate attention as an incident. This conclusion should be supported by evidence showing significant impact or risk.

IssueConclusion

(synq.agent.sre.v1.IssueConclusion) IssueConclusion represents the final determination made by the LLM agent about an issue. Each conclusion type must be supported by appropriate evidence collected during investigation.

IssueConclusionWithEvidence

(synq.agent.sre.v1.IssueConclusionWithEvidence)

RequestForHumanReviewConclusion

(synq.agent.sre.v1.RequestForHumanReviewConclusion) RequestForHumanReviewConclusion indicates that the issue needs human review. This conclusion should be used when:
  • The agent has collected some evidence but cannot make a definitive conclusion
  • The issue requires human judgment or expertise
  • The impact is unclear or needs human assessment

SetExpectedConclusion

(synq.agent.sre.v1.SetExpectedConclusion) SetExpectedConclusion indicates that the issue is expected behavior and no action is needed. This conclusion should be supported by evidence showing this is normal operation.

SetFixedConclusion

(synq.agent.sre.v1.SetFixedConclusion) SetFixedConclusion indicates that the issue has already been resolved and can be closed. This conclusion should be supported by evidence showing the fix has been applied and verified.

SetNoActionNeededConclusion

(synq.agent.sre.v1.SetNoActionNeededConclusion) SetNoActionNeededConclusion indicates that the issue will resolve itself without intervention. This conclusion should be supported by evidence showing the issue is temporary or self-healing.

UnexplainedConclusion

(synq.agent.sre.v1.UnexplainedConclusion) UnexplainedConclusion indicates that the agent was unable to collect sufficient evidence to understand or explain the issue. This conclusion requires high-priority human review as it may indicate a serious or complex problem that needs immediate attention.

LlmConfig

(synq.agent.sre.v1.LlmConfig)

OpenAIApi

(synq.agent.sre.v1.OpenAIApi)

IssueTriageState

(synq.agent.sre.v1.IssueTriageState) IssueTriageState represents the current state of an issue in the SRE agent’s investigation workflow. This state is used to track the progress of automated triage and coordinate between different parts of the system.

AcceptFeedback

(synq.agent.sre.v1.AcceptFeedback)

ConclusionFeedback

(synq.agent.sre.v1.ConclusionFeedback)

DismissFeedback

(synq.agent.sre.v1.DismissFeedback)

ReTriageFeedback

(synq.agent.sre.v1.ReTriageFeedback)

Config

(synq.agent.sre.v1.Config) Config represents the main configuration for the SRE agent

Config.ConnectionsEntry

(synq.agent.sre.v1.Config.ConnectionsEntry)

SYNQ

(synq.agent.v1.SYNQ) SYNQ contains authentication and connection details for the Coalesce Quality platform

EmailUser

(synq.users.v1.EmailUser)

MsTeamsUser

(synq.users.v1.MsTeamsUser)

SlackUser

(synq.users.v1.SlackUser)

User

(synq.users.v1.User)

UserAlias

(synq.users.v1.UserAlias)

BatchGetUsersRequest

(synq.users.v1.BatchGetUsersRequest)

BatchGetUsersResponse

(synq.users.v1.BatchGetUsersResponse)

DeleteUserAliasesRequest

(synq.users.v1.DeleteUserAliasesRequest)

DeleteUserAliasesResponse

(synq.users.v1.DeleteUserAliasesResponse)

GetByAliasRequest

(synq.users.v1.GetByAliasRequest)

GetByAliasResponse

(synq.users.v1.GetByAliasResponse)

GetByEmailRequest

(synq.users.v1.GetByEmailRequest)

GetByEmailResponse

(synq.users.v1.GetByEmailResponse)

GetUserAliasesRequest

(synq.users.v1.GetUserAliasesRequest)

GetUserAliasesResponse

(synq.users.v1.GetUserAliasesResponse)

GetUserIdentitiesRequest

(synq.users.v1.GetUserIdentitiesRequest)

GetUserIdentitiesResponse

(synq.users.v1.GetUserIdentitiesResponse)

ListUsersRequest

(synq.users.v1.ListUsersRequest)

ListUsersResponse

(synq.users.v1.ListUsersResponse)

UpsertUserAliasesRequest

(synq.users.v1.UpsertUserAliasesRequest)

UpsertUserAliasesResponse

(synq.users.v1.UpsertUserAliasesResponse)

DatacheckResult

(synq.datachecks.v1.DatacheckResult) Result from a single datacheck execution.

MonitorPrediction

(synq.datachecks.v1.MonitorPrediction)

MonitorResult

(synq.datachecks.v1.MonitorResult) Result of a monitor execution.

SqlTestResult

(synq.datachecks.v1.SqlTestResult) Result of a SQL test execution.

TriggerDatachecksRequest

(synq.datachecks.v1.TriggerDatachecksRequest)

TriggerDatachecksResponse

(synq.datachecks.v1.TriggerDatachecksResponse)

AcceptedValuesTest

(synq.datachecks.testsuggestions.v1.AcceptedValuesTest)

BusinessRuleTest

(synq.datachecks.testsuggestions.v1.BusinessRuleTest)

CountDistinctTest

(synq.datachecks.testsuggestions.v1.CountDistinctTest)

CountDuplicatesTest

(synq.datachecks.testsuggestions.v1.CountDuplicatesTest)

EmptyTest

(synq.datachecks.testsuggestions.v1.EmptyTest)

FreshnessTest

(synq.datachecks.testsuggestions.v1.FreshnessTest)

MaxValueTest

(synq.datachecks.testsuggestions.v1.MaxValueTest)

MinMaxTest

(synq.datachecks.testsuggestions.v1.MinMaxTest)

MinValueTest

(synq.datachecks.testsuggestions.v1.MinValueTest)

NotNullTest

(synq.datachecks.testsuggestions.v1.NotNullTest)

RejectedValuesTest

(synq.datachecks.testsuggestions.v1.RejectedValuesTest)

RelativeTimeTest

(synq.datachecks.testsuggestions.v1.RelativeTimeTest)

RowCountTest

(synq.datachecks.testsuggestions.v1.RowCountTest)

TestSuggestion

(synq.datachecks.testsuggestions.v1.TestSuggestion) Test types that can be suggested

UniqueTest

(synq.datachecks.testsuggestions.v1.UniqueTest)

BatchAcceptTestSuggestionsRequest

(synq.datachecks.testsuggestions.v1.BatchAcceptTestSuggestionsRequest)

BatchAcceptTestSuggestionsResponse

(synq.datachecks.testsuggestions.v1.BatchAcceptTestSuggestionsResponse)

BatchCreateTestSuggestionsRequest

(synq.datachecks.testsuggestions.v1.BatchCreateTestSuggestionsRequest)

BatchCreateTestSuggestionsResponse

(synq.datachecks.testsuggestions.v1.BatchCreateTestSuggestionsResponse)

BatchGetTestSuggestionsForEntitiesRequest

(synq.datachecks.testsuggestions.v1.BatchGetTestSuggestionsForEntitiesRequest)

BatchGetTestSuggestionsForEntitiesResponse

(synq.datachecks.testsuggestions.v1.BatchGetTestSuggestionsForEntitiesResponse)

BatchRejectTestSuggestionsRequest

(synq.datachecks.testsuggestions.v1.BatchRejectTestSuggestionsRequest)

BatchRejectTestSuggestionsResponse

(synq.datachecks.testsuggestions.v1.BatchRejectTestSuggestionsResponse)

AcceptedValuesTest

(synq.datachecks.sqltests.v1.AcceptedValuesTest)

BusinessQueryTest

(synq.datachecks.sqltests.v1.BusinessQueryTest) Format: a single SELECT (CTEs allowed); no semicolon. May read any tables the integration has access to. The engine wraps it as WITH raw_query AS (<sql_query>) SELECT * FROM raw_query. Use this when the failure set requires GROUP BY, JOINs, window functions, or other shape that a per-row predicate (BusinessRuleTest) cannot express. Example: SELECT customer_id, SUM(amount) AS total FROM orders WHERE status = ‘paid’ GROUP BY customer_id HAVING SUM(amount) < 0 Template.identifier still anchors the test to a primary table for ownership, alerts, and UI grouping. Note: this test does not expose a select_columns option. The author controls the SELECT shape directly in sql_query. |

BusinessRuleTest

(synq.datachecks.sqltests.v1.BusinessRuleTest) Format: a single boolean expression — no SELECT, WITH, or semicolons. References columns on the anchor table. The engine executes it as SELECT * FROM <anchor_table> WHERE <sql_expression>. Example: “total_amount != subtotal + tax” reports rows where totals disagree. Use BusinessQueryTest for SELECT / GROUP BY / multi-table logic. | | select_columns | repeated string | Optional list of columns to include in the SELECT clause of the generated SQL. When empty (default), SELECT * is used — all columns are returned. |

CountDistinctTest

(synq.datachecks.sqltests.v1.CountDistinctTest) Note: this test does not expose a select_columns option. The result is an aggregate count, not a set of failure rows.

CountDuplicatesTest

(synq.datachecks.sqltests.v1.CountDuplicatesTest) Note: this test does not expose a select_columns option. The result is an aggregate count, not a set of failure rows.

EmptyTest

(synq.datachecks.sqltests.v1.EmptyTest)

Evaluator

(synq.datachecks.sqltests.v1.Evaluator) Evaluator is a named condition attached to a SqlTest that produces an independent pass/fail signal. A single SqlTest may carry multiple evaluators, each targeting a different concern (nullability, value ranges, row counts, etc.).

EvaluatorResult

(synq.datachecks.sqltests.v1.EvaluatorResult) EvaluatorResult is the execution outcome of a single Evaluator within a SqlTest run. Fields id/name/sql_expression/severity are a snapshot of the evaluator definition at execution time so historical results survive later edits to the test.

FreshnessTest

(synq.datachecks.sqltests.v1.FreshnessTest)

InputTable

(synq.datachecks.sqltests.v1.InputTable) InputTable is a table reference resolved from the SQL expression of a SqlTest.

MaxValueTest

(synq.datachecks.sqltests.v1.MaxValueTest)

MinMaxTest

(synq.datachecks.sqltests.v1.MinMaxTest)

MinValueTest

(synq.datachecks.sqltests.v1.MinValueTest)

NotNullTest

(synq.datachecks.sqltests.v1.NotNullTest)

RejectedValuesTest

(synq.datachecks.sqltests.v1.RejectedValuesTest)

RelationshipColumn

(synq.datachecks.sqltests.v1.RelationshipColumn)

RelationshipReference

(synq.datachecks.sqltests.v1.RelationshipReference)

RelationshipsTest

(synq.datachecks.sqltests.v1.RelationshipsTest)

RelativeTimeTest

(synq.datachecks.sqltests.v1.RelativeTimeTest)

SqlTest

(synq.datachecks.sqltests.v1.SqlTest) The SqlTest is a SQL test that is executed on a Coalesce Quality entity.

SqlTestAudit

(synq.datachecks.sqltests.v1.SqlTestAudit)

SqlValue

(synq.datachecks.sqltests.v1.SqlValue) Represents a value that can be either a literal (to be quoted in SQL) or a SQL expression (to be used as plain text).

Template

(synq.datachecks.sqltests.v1.Template)

UniqueTest

(synq.datachecks.sqltests.v1.UniqueTest) Note: this test does not expose a select_columns option. The SELECT shape is fixed by the aggregation (DISTINCT columns + duplicate count); failure rows are the duplicate keys, not raw table rows.

BatchDeleteSqlTestsRequest

(synq.datachecks.sqltests.v1.BatchDeleteSqlTestsRequest)

BatchDeleteSqlTestsResponse

(synq.datachecks.sqltests.v1.BatchDeleteSqlTestsResponse)

BatchGetSqlTestsRequest

(synq.datachecks.sqltests.v1.BatchGetSqlTestsRequest)

BatchGetSqlTestsResponse

(synq.datachecks.sqltests.v1.BatchGetSqlTestsResponse)

BatchGetSqlTestsResponse.SqlTestsEntry

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

BatchUpsertSqlTestsRequest

(synq.datachecks.sqltests.v1.BatchUpsertSqlTestsRequest)

BatchUpsertSqlTestsResponse

(synq.datachecks.sqltests.v1.BatchUpsertSqlTestsResponse)

BatchUpsertSqlTestsResponse.UpsertError

(synq.datachecks.sqltests.v1.BatchUpsertSqlTestsResponse.UpsertError) Details of errors encountered during the upsert operation.

ConfigsFilter

(synq.datachecks.sqltests.v1.ConfigsFilter)

GetSqlTestAuditRequest

(synq.datachecks.sqltests.v1.GetSqlTestAuditRequest)

GetSqlTestAuditResponse

(synq.datachecks.sqltests.v1.GetSqlTestAuditResponse)

ListSqlTestsRequest

(synq.datachecks.sqltests.v1.ListSqlTestsRequest)

ListSqlTestsResponse

(synq.datachecks.sqltests.v1.ListSqlTestsResponse)

MonitorInfoRequest

(synq.monitors.info.v1.MonitorInfoRequest)

MonitorInfoResponse

(synq.monitors.info.v1.MonitorInfoResponse)

ColumnSource

(synq.monitors.info.v1.ColumnSource)

Condition

(synq.monitors.info.v1.Condition)

CountRows

(synq.monitors.info.v1.CountRows)

DatabaseFqn

(synq.monitors.info.v1.DatabaseFqn)

ExpressionSource

(synq.monitors.info.v1.ExpressionSource)

MetadataSource

(synq.monitors.info.v1.MetadataSource)

Metric

(synq.monitors.info.v1.Metric)

MonitorCategoryDistribution

(synq.monitors.info.v1.MonitorCategoryDistribution)

MonitorFailedRows

(synq.monitors.info.v1.MonitorFailedRows)

MonitorFieldStats

(synq.monitors.info.v1.MonitorFieldStats)

MonitorFreshness

(synq.monitors.info.v1.MonitorFreshness)

MonitorInfo

(synq.monitors.info.v1.MonitorInfo)

MonitorValue

(synq.monitors.info.v1.MonitorValue)

MonitorVolume

(synq.monitors.info.v1.MonitorVolume)

Monitored

(synq.monitors.info.v1.Monitored)

Partitioning

(synq.monitors.info.v1.Partitioning)

Segmentation

(synq.monitors.info.v1.Segmentation)

AutomatedMonitorSettings

(synq.monitors.automated_monitors.v1.AutomatedMonitorSettings)

CustomMonitorSettingsChange

(synq.monitors.automated_monitors.v1.CustomMonitorSettingsChange)

EntitySelectionQuery

(synq.monitors.automated_monitors.v1.EntitySelectionQuery)

EntitySelectionQuery.QueryPart

(synq.monitors.automated_monitors.v1.EntitySelectionQuery.QueryPart)

ExclusiveQueryConfig

(synq.monitors.automated_monitors.v1.ExclusiveQueryConfig)

ExclusiveStaticConfig

(synq.monitors.automated_monitors.v1.ExclusiveStaticConfig)

MetricOption

(synq.monitors.automated_monitors.v1.MetricOption)

MonitorSettingsChange

(synq.monitors.automated_monitors.v1.MonitorSettingsChange)

MonitorsDeploymentOverview

(synq.monitors.automated_monitors.v1.MonitorsDeploymentOverview)

MonitorsDeploymentRule

(synq.monitors.automated_monitors.v1.MonitorsDeploymentRule)

MonitorsDeploymentRuleView

(synq.monitors.automated_monitors.v1.MonitorsDeploymentRuleView)

ProductConfig

(synq.monitors.automated_monitors.v1.ProductConfig)

ProductConfigSelfStrategy

(synq.monitors.automated_monitors.v1.ProductConfigSelfStrategy)

ProductConfigSelfStrategyAll

(synq.monitors.automated_monitors.v1.ProductConfigSelfStrategyAll)

ProductConfigSelfStrategySelection

(synq.monitors.automated_monitors.v1.ProductConfigSelfStrategySelection)

ProductConfigUpstreamStrategy

(synq.monitors.automated_monitors.v1.ProductConfigUpstreamStrategy)

ProductConfigUpstreamStrategyAll

(synq.monitors.automated_monitors.v1.ProductConfigUpstreamStrategyAll)

ProductConfigUpstreamStrategySources

(synq.monitors.automated_monitors.v1.ProductConfigUpstreamStrategySources)

QueryConfig

(synq.monitors.automated_monitors.v1.QueryConfig)

SkippedAsset

(synq.monitors.automated_monitors.v1.SkippedAsset)

StaticConfig

(synq.monitors.automated_monitors.v1.StaticConfig)

BatchDeleteDeploymentRulesRequest

(synq.monitors.automated_monitors.v1.BatchDeleteDeploymentRulesRequest)

BatchDeleteDeploymentRulesResponse

(synq.monitors.automated_monitors.v1.BatchDeleteDeploymentRulesResponse)

BatchDeployDeploymentRulesRequest

(synq.monitors.automated_monitors.v1.BatchDeployDeploymentRulesRequest)

BatchDeployDeploymentRulesResponse

(synq.monitors.automated_monitors.v1.BatchDeployDeploymentRulesResponse)

BatchDeployDeploymentRulesResponse.DeployError

(synq.monitors.automated_monitors.v1.BatchDeployDeploymentRulesResponse.DeployError) Details of errors encountered during the deploy operation.

BatchGetDeploymentRulesRequest

(synq.monitors.automated_monitors.v1.BatchGetDeploymentRulesRequest)

BatchGetDeploymentRulesResponse

(synq.monitors.automated_monitors.v1.BatchGetDeploymentRulesResponse)

BatchGetDeploymentRulesResponse.DeploymentRulesEntry

(synq.monitors.automated_monitors.v1.BatchGetDeploymentRulesResponse.DeploymentRulesEntry)

BatchUpdateDeploymentRuleTitleRequest

(synq.monitors.automated_monitors.v1.BatchUpdateDeploymentRuleTitleRequest)

BatchUpdateDeploymentRuleTitleResponse

(synq.monitors.automated_monitors.v1.BatchUpdateDeploymentRuleTitleResponse)

BatchUpsertDeploymentRulesRequest

(synq.monitors.automated_monitors.v1.BatchUpsertDeploymentRulesRequest)

BatchUpsertDeploymentRulesResponse

(synq.monitors.automated_monitors.v1.BatchUpsertDeploymentRulesResponse)

BatchUpsertDeploymentRulesResponse.UpsertError

(synq.monitors.automated_monitors.v1.BatchUpsertDeploymentRulesResponse.UpsertError) Details of errors encountered during the upsert operation.

ConfigsFilter

(synq.monitors.automated_monitors.v1.ConfigsFilter)

DeleteDeploymentRuleRequest

(synq.monitors.automated_monitors.v1.DeleteDeploymentRuleRequest)

DeleteDeploymentRuleResponse

(synq.monitors.automated_monitors.v1.DeleteDeploymentRuleResponse)

DeployDeploymentRuleRequest

(synq.monitors.automated_monitors.v1.DeployDeploymentRuleRequest)

DeployDeploymentRuleResponse

(synq.monitors.automated_monitors.v1.DeployDeploymentRuleResponse)

GetDeployDeleteOverviewRequest

(synq.monitors.automated_monitors.v1.GetDeployDeleteOverviewRequest)

GetDeployDeleteOverviewResponse

(synq.monitors.automated_monitors.v1.GetDeployDeleteOverviewResponse)

GetDeployOverviewRequest

(synq.monitors.automated_monitors.v1.GetDeployOverviewRequest)

GetDeployOverviewResponse

(synq.monitors.automated_monitors.v1.GetDeployOverviewResponse)

ListDeploymentRulesForAssetRequest

(synq.monitors.automated_monitors.v1.ListDeploymentRulesForAssetRequest)

ListDeploymentRulesForAssetResponse

(synq.monitors.automated_monitors.v1.ListDeploymentRulesForAssetResponse)

ListDeploymentRulesRequest

(synq.monitors.automated_monitors.v1.ListDeploymentRulesRequest)

ListDeploymentRulesResponse

(synq.monitors.automated_monitors.v1.ListDeploymentRulesResponse)

UpdateDeploymentRuleTitleRequest

(synq.monitors.automated_monitors.v1.UpdateDeploymentRuleTitleRequest)

UpsertDeploymentRuleRequest

(synq.monitors.automated_monitors.v1.UpsertDeploymentRuleRequest)

UpsertDeploymentRuleResponse

(synq.monitors.automated_monitors.v1.UpsertDeploymentRuleResponse)

HistoryRequest

(synq.monitors.history.v1.HistoryRequest)

HistoryResponse

(synq.monitors.history.v1.HistoryResponse)

Prediction

(synq.monitors.history.v1.Prediction)

BatchCreateMonitorRequest

(synq.monitors.custom_monitors.v1.BatchCreateMonitorRequest)

BatchCreateMonitorResponse

(synq.monitors.custom_monitors.v1.BatchCreateMonitorResponse)

BatchDeleteMonitorRequest

(synq.monitors.custom_monitors.v1.BatchDeleteMonitorRequest)

BatchDeleteMonitorResponse

(synq.monitors.custom_monitors.v1.BatchDeleteMonitorResponse)

BatchUpdateMonitorModeRequest

(synq.monitors.custom_monitors.v1.BatchUpdateMonitorModeRequest)

BatchUpdateMonitorModeResponse

(synq.monitors.custom_monitors.v1.BatchUpdateMonitorModeResponse)

BatchUpdateMonitorRequest

(synq.monitors.custom_monitors.v1.BatchUpdateMonitorRequest)

BatchUpdateMonitorResponse

(synq.monitors.custom_monitors.v1.BatchUpdateMonitorResponse)

BatchUpdateMonitorSeverityRequest

(synq.monitors.custom_monitors.v1.BatchUpdateMonitorSeverityRequest)

BatchUpdateMonitorSeverityResponse

(synq.monitors.custom_monitors.v1.BatchUpdateMonitorSeverityResponse)

ChangeOverview

(synq.monitors.custom_monitors.v1.ChangeOverview)

ConfigChangesOverviewRequest

(synq.monitors.custom_monitors.v1.ConfigChangesOverviewRequest)

ConfigChangesOverviewResponse

(synq.monitors.custom_monitors.v1.ConfigChangesOverviewResponse)

ConfigsFilter

(synq.monitors.custom_monitors.v1.ConfigsFilter)

ListConfigsMonitorsRequest

(synq.monitors.custom_monitors.v1.ListConfigsMonitorsRequest)

ListConfigsMonitorsResponse

(synq.monitors.custom_monitors.v1.ListConfigsMonitorsResponse)

ListMonitorsRequest

(synq.monitors.custom_monitors.v1.ListMonitorsRequest)

ListMonitorsResponse

(synq.monitors.custom_monitors.v1.ListMonitorsResponse)

ModeAnomalyEngine

(synq.monitors.custom_monitors.v1.ModeAnomalyEngine)

ModeFixedThresholds

(synq.monitors.custom_monitors.v1.ModeFixedThresholds)

MonitorCategoryDistribution

(synq.monitors.custom_monitors.v1.MonitorCategoryDistribution)

MonitorCustomNumeric

(synq.monitors.custom_monitors.v1.MonitorCustomNumeric)

MonitorDefinition

(synq.monitors.custom_monitors.v1.MonitorDefinition)

MonitorFieldStats

(synq.monitors.custom_monitors.v1.MonitorFieldStats)

MonitorFreshness

(synq.monitors.custom_monitors.v1.MonitorFreshness)

MonitorTableStats

(synq.monitors.custom_monitors.v1.MonitorTableStats)

MonitorVolume

(synq.monitors.custom_monitors.v1.MonitorVolume)

ScheduleDaily

(synq.monitors.custom_monitors.v1.ScheduleDaily)

ScheduleHourly

(synq.monitors.custom_monitors.v1.ScheduleHourly)

ScheduleOnDemand

(synq.monitors.custom_monitors.v1.ScheduleOnDemand)

Segmentation

(synq.monitors.custom_monitors.v1.Segmentation)

SqlSource

(synq.monitors.custom_monitors.v1.SqlSource) SQL query to use as the data source for a monitor instead of querying a table directly. The SQL is wrapped as a CTE, and the monitor’s metric query runs against its output. Column references (time partitioning, segmentation, filter) refer to columns in the SQL output.

TimePartitioning

(synq.monitors.custom_monitors.v1.TimePartitioning)

ValueList

(synq.monitors.custom_monitors.v1.ValueList)

BatchGetLatestEntityMetricsRequest

(synq.monitors.predictions.v1.BatchGetLatestEntityMetricsRequest)

BatchGetLatestEntityMetricsResponse

(synq.monitors.predictions.v1.BatchGetLatestEntityMetricsResponse)

BatchGetLatestEntityMetricsResponse.LatestBySynqPathEntry

(synq.monitors.predictions.v1.BatchGetLatestEntityMetricsResponse.LatestBySynqPathEntry)

GetEntityMetricsRequest

(synq.monitors.predictions.v1.GetEntityMetricsRequest)

GetEntityMetricsResponse

(synq.monitors.predictions.v1.GetEntityMetricsResponse)

GetMonitorPredictionsRequest

(synq.monitors.predictions.v1.GetMonitorPredictionsRequest)

GetMonitorPredictionsResponse

(synq.monitors.predictions.v1.GetMonitorPredictionsResponse)

EntityMetricDataPoint

(synq.monitors.predictions.v1.EntityMetricDataPoint) Single observation of table-level metrics collected from the data warehouse.

MonitorPrediction

(synq.monitors.predictions.v1.MonitorPrediction) Single prediction data point from the anomaly detection model.

BatchResolveIdentifiersRequest

(synq.entities.resolve.v1.BatchResolveIdentifiersRequest)

BatchResolveIdentifiersResponse

(synq.entities.resolve.v1.BatchResolveIdentifiersResponse)

ResolvedIdentifier

(synq.entities.resolve.v1.ResolvedIdentifier) ResolvedIdentifier contains the resolution result for a single input identifier.

BatchDatabaseCoordinatesRequest

(synq.entities.coordinates.v1.BatchDatabaseCoordinatesRequest) BatchGetEntitiesRequest is the request message for the BatchGetEntities method.

BatchDatabaseCoordinatesResponse

(synq.entities.coordinates.v1.BatchDatabaseCoordinatesResponse) BatchGetEntitiesResponse is the response message for the BatchGetEntities method.

BatchIdsByCoordinatesRequest

(synq.entities.coordinates.v1.BatchIdsByCoordinatesRequest)

BatchIdsByCoordinatesResponse

(synq.entities.coordinates.v1.BatchIdsByCoordinatesResponse)

BatchIdsByCoordinatesResponse.MatchedCoordinates

(synq.entities.coordinates.v1.BatchIdsByCoordinatesResponse.MatchedCoordinates)

DatabaseCoordinates

(synq.entities.coordinates.v1.DatabaseCoordinates)

DatabaseContext

(synq.entities.coordinates.v1.DatabaseContext) DatabaseContext provides the default database execution context for resolving unqualified references (e.g. table names in SQL).

EntitiesStartPoint

(synq.entities.lineage.v1.EntitiesStartPoint)

EntityColumnsStartPoint

(synq.entities.lineage.v1.EntityColumnsStartPoint)

GetLineageRequest

(synq.entities.lineage.v1.GetLineageRequest)

GetLineageResponse

(synq.entities.lineage.v1.GetLineageResponse)

GetLineageStartPoint

(synq.entities.lineage.v1.GetLineageStartPoint) Possible starting points to get lineage from.

CllDetails

(synq.entities.lineage.v1.CllDetails)

Column

(synq.entities.lineage.v1.Column) Column in a table-like asset (used in CLL mode).

ColumnDependency

(synq.entities.lineage.v1.ColumnDependency) Indicates data flow between columns. Source columns are used to compute value of target columns.

Lineage

(synq.entities.lineage.v1.Lineage) Lineage defines the lineage of table-like entities.

LineageNode

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

NodeDependency

(synq.entities.lineage.v1.NodeDependency) Indicates data flow between nodes. Source nodes are used to compute value of target nodes.

ImpactedDataproduct

(synq.entities.impact.v1.ImpactedDataproduct)

ImpactedEntityGroup

(synq.entities.impact.v1.ImpactedEntityGroup) Multiple Entities which form logical group, e.g. dbt Model and it’s table

ImpactedOwner

(synq.entities.impact.v1.ImpactedOwner)

GetImpactRequest

(synq.entities.impact.v1.GetImpactRequest)

GetImpactResponse

(synq.entities.impact.v1.GetImpactResponse)

ListAnnotationsRequest

(synq.entities.annotations.v1.ListAnnotationsRequest) ListAnnotationsRequest is the request message for the ListAnnotations method.

ListAnnotationsResponse

(synq.entities.annotations.v1.ListAnnotationsResponse) ListAnnotationsResponse is the response message for the ListAnnotations method.

AnnotationCount

(synq.entities.annotations.v1.AnnotationCount) AnnotationCount represents the count of entities that have a specific annotation name-value pair. This is used for aggregating and reporting annotation statistics across entities.

IdentityRule

(synq.entities.identities.v2.IdentityRule) IdentityRule declares how entities are recognized as the same logical entity. A rule is evaluated against the current set of entities, so it automatically applies to entities that appear after the rule is created. The kind field selects the matching strategy and must be set to a supported rule type.

PrefixRewriteIdentityRule

(synq.entities.identities.v2.PrefixRewriteIdentityRule) PrefixRewriteIdentityRule treats two identifier prefixes as the same instance: any entity whose identifier begins with source_prefix is considered identical to the entity with the same identifier under target_prefix. The relationship is bidirectional.

BatchChangeRequest

(synq.entities.changes.v1.BatchChangeRequest) BatchChangeRequest contains the parameters needed to retrieve multiple changes by their IDs.

BatchChangeResponse

(synq.entities.changes.v1.BatchChangeResponse) BatchChangeResponse contains the requested changes mapped by their IDs.

BatchChangeResponse.ChangesEntry

(synq.entities.changes.v1.BatchChangeResponse.ChangesEntry)

ListRequest

(synq.entities.changes.v1.ListRequest) ListRequest contains the parameters needed to retrieve changes for a specific entity.

ListResponse

(synq.entities.changes.v1.ListResponse) ListResponse contains the list of changes made to the requested entity.

BatchGetIssuesStatusRequest

(synq.entities.status.v1.BatchGetIssuesStatusRequest) BatchGetIssuesStatusRequest is the request message for the BatchGetIssues method.

BatchGetIssuesStatusResponse

(synq.entities.status.v1.BatchGetIssuesStatusResponse) BatchGetIssuesStatusResponse is the response message for the BatchGetIssues method.

GetIssuesStatusRequest

(synq.entities.status.v1.GetIssuesStatusRequest) GetIssuesStatusRequest is the request message for the GetEntity method.

GetIssuesStatusResponse

(synq.entities.status.v1.GetIssuesStatusResponse) GetIssuesStatusResponse is the response message for the GetEntity method.

GetIssuesStatusResponse.IssuesSummary

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

EntityIncident

(synq.entities.status.v1.EntityIncident)

BatchGetIncidentsRequest

(synq.entities.status.v1.BatchGetIncidentsRequest) BatchGetIncidentsRequest is the request message for the BatchGetIssues method.

BatchGetIncidentsResponse

(synq.entities.status.v1.BatchGetIncidentsResponse) BatchGetIncidentsResponse is the response message for the BatchGetIssues method.

GetIncidentsRequest

(synq.entities.status.v1.GetIncidentsRequest) GetIncidentsRequest is the request message for the GetEntity method.

GetIncidentsResponse

(synq.entities.status.v1.GetIncidentsResponse) GetIncidentsResponse is the response message for the GetEntity method.

Code

(synq.entities.v1.Code) Code represents a piece of code or configuration that can be processed by Coalesce Quality. This message is used to store and manage various types of code artifacts, such as SQL queries, Python scripts, dbt models, and other code configurations. Each code piece is associated with a specific entity that defines or owns it, and includes metadata about its type and state.

TypeTraits

(synq.entities.v1.TypeTraits) TypeTraits are the behavioral traits a custom entity Type can declare. Declaring a trait makes every entity of that type behave platform-wide as if it carried the trait natively (e.g. is_model => transformation-model ranking, monitorability and lineage). Every field is optional so an unset trait means “not declared, fall through to the trait default” — distinct from an explicit false. An unset/nil message means no declared traits (every trait at its default).

Schema

(synq.entities.v1.Schema) Schema represents a schema of a table like entity

SchemaColumn

(synq.entities.v1.SchemaColumn)

SchemaColumnField

(synq.entities.v1.SchemaColumnField)

AirflowDagIdentifier

(synq.entities.v1.AirflowDagIdentifier)

AirflowTaskIdentifier

(synq.entities.v1.AirflowTaskIdentifier)

AthenaTableIdentifier

(synq.entities.v1.AthenaTableIdentifier)

BigqueryTableIdentifier

(synq.entities.v1.BigqueryTableIdentifier)

ClickhouseTableIdentifier

(synq.entities.v1.ClickhouseTableIdentifier)

CustomIdentifier

(synq.entities.v1.CustomIdentifier)

DatabricksTableIdentifier

(synq.entities.v1.DatabricksTableIdentifier)

DataproductIdentifier

(synq.entities.v1.DataproductIdentifier)

DbtCloudNodeIdentifier

(synq.entities.v1.DbtCloudNodeIdentifier)

DbtCoreNodeIdentifier

(synq.entities.v1.DbtCoreNodeIdentifier)

FabricTableIdentifier

(synq.entities.v1.FabricTableIdentifier) Microsoft Fabric warehouse/lakehouse table identifier. Fabric is workspace-scoped with cross-database three-part [database].[schema].[table] T-SQL names.

Identifier

(synq.entities.v1.Identifier) Identifier is a unique reference to an entity in Coalesce Quality 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.

MonitorIdentifier

(synq.entities.v1.MonitorIdentifier)

MssqlTableIdentifier

(synq.entities.v1.MssqlTableIdentifier)

MysqlTableIdentifier

(synq.entities.v1.MysqlTableIdentifier)

OracleTableIdentifier

(synq.entities.v1.OracleTableIdentifier)

OwnerIdentifier

(synq.entities.v1.OwnerIdentifier)

PostgresTableIdentifier

(synq.entities.v1.PostgresTableIdentifier)

RedshiftTableIdentifier

(synq.entities.v1.RedshiftTableIdentifier)

SavedViewIdentifier

(synq.entities.v1.SavedViewIdentifier)

SnowflakeTableIdentifier

(synq.entities.v1.SnowflakeTableIdentifier)

SqlMeshAuditIdentifier

(synq.entities.v1.SqlMeshAuditIdentifier)

SqlMeshModelIdentifier

(synq.entities.v1.SqlMeshModelIdentifier)

SynqPathIdentifier

(synq.entities.v1.SynqPathIdentifier)

TrinoTableIdentifier

(synq.entities.v1.TrinoTableIdentifier)

EntityChange

(synq.entities.v1.EntityChange) EntityChange represents a change detected in an entity within the system. It tracks modifications to entities like Git commits, SQL definitions, and database schemas.

GitCommitChange

(synq.entities.v1.GitCommitChange) GitCommitChange represents a change detected in a Git repository.

GitCommitChange.ChangeStatistics

(synq.entities.v1.GitCommitChange.ChangeStatistics) ChangeStatistics provides statistical summaries of the entire commit.

GitCommitChange.ChangeStats

(synq.entities.v1.GitCommitChange.ChangeStats) ChangeStats contains statistics about changes made to a single file.

GitCommitChange.ChangesByFileTypeEntry

(synq.entities.v1.GitCommitChange.ChangesByFileTypeEntry)

GitCommitChange.DirectoryChangeSummary

(synq.entities.v1.GitCommitChange.DirectoryChangeSummary) DirectoryChangeSummary provides hierarchical directory-level statistics.

GitCommitChange.FileChangeDistribution

(synq.entities.v1.GitCommitChange.FileChangeDistribution) FileChangeDistribution categorizes files by change magnitude.

GitCommitChange.FileChangeStatsEntry

(synq.entities.v1.GitCommitChange.FileChangeStatsEntry)

GitCommitChange.FileTypeChangeSummary

(synq.entities.v1.GitCommitChange.FileTypeChangeSummary) FileTypeChangeSummary aggregates changes by file type/extension.

GitCommitChange.Signature

(synq.entities.v1.GitCommitChange.Signature) Signature contains information about the Git user who made the changes.

GitCommitChange.TopChange

(synq.entities.v1.GitCommitChange.TopChange) TopChange represents one of the most significant file changes.

GitCommitChange.TopFileChange

(synq.entities.v1.GitCommitChange.TopFileChange) TopFileChange represents a significant file change within a directory.

SchemaChange

(synq.entities.v1.SchemaChange) SchemaChange represents a change detected in a database schema.

SchemaColumnChange

(synq.entities.v1.SchemaColumnChange) SchemaColumnChange represents a specific change to a column in the schema.

SchemaColumnChange.ColumnAdditionChangeType

(synq.entities.v1.SchemaColumnChange.ColumnAdditionChangeType) ColumnAdditionChangeType represents the addition of a new column to the schema.

SchemaColumnChange.ColumnNativeTypeChangeType

(synq.entities.v1.SchemaColumnChange.ColumnNativeTypeChangeType) ColumnNativeTypeChangeType represents a change in a column’s data type.

SchemaColumnChange.ColumnRemovalChangeType

(synq.entities.v1.SchemaColumnChange.ColumnRemovalChangeType) ColumnRemovalChangeType represents the removal of a column from the schema.

SqlDefinitionChange

(synq.entities.v1.SqlDefinitionChange) SqlDefinitionChange represents a change detected in a SQL definition.

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.

ForeignKeyReference

(synq.entities.v1.ForeignKeyReference) ForeignKeyReference describes the target of a foreign key constraint.

TableConstraint

(synq.entities.v1.TableConstraint) TableConstraint represents a single constraint or index on a database table.

Type

(synq.entities.v1.Type) Custom entity type that is used to categorize custom entities.

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.

BatchOrchestrationRequest

(synq.entities.orchestration.v1.BatchOrchestrationRequest)

BatchOrchestrationResponse

(synq.entities.orchestration.v1.BatchOrchestrationResponse)

Orchestration

(synq.entities.orchestration.v1.Orchestration) Orchestration represents the orchestration relationships for a given entity. It shows both what the entity orchestrates (downstream) and what orchestrates it (upstream).

OrchestrationGroup

(synq.entities.orchestration.v1.OrchestrationGroup) OrchestrationGroup represents different identities of the same logical concept. For example, a dbt model and the table it creates are different representations of the same entity, so they appear together in one group. An Airflow task typically has only one identity (the task itself).

CheckCategory

(synq.entities.checks.v1.CheckCategory) CheckCategory is the complete explicit category state for one check, carrying both dimensions. It overrides the categories the categorisation rules would otherwise compute for the check.

DeleteCheckCategoriesRequest

(synq.entities.checks.v1.DeleteCheckCategoriesRequest)

DeleteCheckCategoriesResponse

(synq.entities.checks.v1.DeleteCheckCategoriesResponse)

ListCheckCategoriesRequest

(synq.entities.checks.v1.ListCheckCategoriesRequest)

ListCheckCategoriesResponse

(synq.entities.checks.v1.ListCheckCategoriesResponse)

UpsertCheckCategoriesRequest

(synq.entities.checks.v1.UpsertCheckCategoriesRequest)

UpsertCheckCategoriesResponse

(synq.entities.checks.v1.UpsertCheckCategoriesResponse)

GetCoverageRequest

(synq.entities.checks.v1.GetCoverageRequest) GetCoverageRequest contains the parameters needed to retrieve check coverage for a specific entity.

GetCoverageResponse

(synq.entities.checks.v1.GetCoverageResponse) GetCoverageResponse contains the check coverage information for the requested entity.

GetCoverageResponse.ChecksSummary

(synq.entities.checks.v1.GetCoverageResponse.ChecksSummary) ChecksSummary provides a comprehensive overview of checks and their coverage.

GetCoverageResponse.ChecksSummary.ColumnInformation

(synq.entities.checks.v1.GetCoverageResponse.ChecksSummary.ColumnInformation) ColumnInformation contains detailed information about a specific column.

GetCoverageResponse.ColumnUpstream

(synq.entities.checks.v1.GetCoverageResponse.ColumnUpstream) ColumnUpstream represents an upstream column that a check is propagated from.

GetCoverageResponse.ColumnUsage

(synq.entities.checks.v1.GetCoverageResponse.ColumnUsage) ColumnUsage contains statistics about how a column is used by downstream entities.

GetCoverageResponse.PropagatedColumnCheck

(synq.entities.checks.v1.GetCoverageResponse.PropagatedColumnCheck) PropagatedColumnCheck represents a check that is propagated from an upstream column.

GetCoverageResponse.PropagatedColumnChecks

(synq.entities.checks.v1.GetCoverageResponse.PropagatedColumnChecks) PropagatedColumnChecks contains a list of checks propagated from upstream columns.

GetCoverageResponse.PropagatedTableCheck

(synq.entities.checks.v1.GetCoverageResponse.PropagatedTableCheck) PropagatedTableCheck represents a check that is propagated from an upstream table.

CheckEntity

(synq.entities.checks.v1.CheckEntity)

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.

Schema

(synq.entities.custom.features.v1.Schema) Schema represents a schema of a table like entity

CheckCategory

(synq.entities.custom.features.v1.CheckCategory) Checks feature indicates that the entity is testing in some way different entity. To define the kind of the check use the kind field. The package field is optional. It is used to categorize the entities which check other entities.

GitFileReference

(synq.entities.custom.features.v1.GitFileReference) GitFileReference represents a reference to a file in a git repository.

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.

DeleteTypeRequest

(synq.entities.custom.v1.DeleteTypeRequest)

DeleteTypeResponse

(synq.entities.custom.v1.DeleteTypeResponse)

ListTypesRequest

(synq.entities.custom.v1.ListTypesRequest)

ListTypesResponse

(synq.entities.custom.v1.ListTypesResponse)

UpsertTypeRequest

(synq.entities.custom.v1.UpsertTypeRequest)

UpsertTypeResponse

(synq.entities.custom.v1.UpsertTypeResponse)

Execution

(synq.entities.custom.v1.Execution)

ExecutionExtra

(synq.entities.custom.v1.ExecutionExtra)

LogEntry

(synq.entities.custom.v1.LogEntry)

UpsertExecutionRequest

(synq.entities.custom.v1.UpsertExecutionRequest)

UpsertExecutionResponse

(synq.entities.custom.v1.UpsertExecutionResponse)

UpsertLogEntryRequest

(synq.entities.custom.v1.UpsertLogEntryRequest)

UpsertLogEntryResponse

(synq.entities.custom.v1.UpsertLogEntryResponse)

DeleteEntityRequest

(synq.entities.custom.v1.DeleteEntityRequest) DeleteEntityRequest is the request message for the DeleteEntity method.

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)

UpsertEntityRequest

(synq.entities.custom.v1.UpsertEntityRequest) UpsertEntityRequest is the request message for the UpsertEntity method.

UpsertEntityResponse

(synq.entities.custom.v1.UpsertEntityResponse) UpsertEntityResponse is the response message for the UpsertEntity method.

DeleteEntityFeatureRequest

(synq.entities.custom.v1.DeleteEntityFeatureRequest)

DeleteEntityFeatureResponse

(synq.entities.custom.v1.DeleteEntityFeatureResponse)

Feature

(synq.entities.custom.v1.Feature)

ListEntityFeaturesRequest

(synq.entities.custom.v1.ListEntityFeaturesRequest)

ListEntityFeaturesResponse

(synq.entities.custom.v1.ListEntityFeaturesResponse)

UpsertEntityFeatureRequest

(synq.entities.custom.v1.UpsertEntityFeatureRequest)

UpsertEntityFeatureResponse

(synq.entities.custom.v1.UpsertEntityFeatureResponse)

DeleteEntitiesGroupRequest

(synq.entities.custom.v1.DeleteEntitiesGroupRequest)

DeleteEntitiesGroupResponse

(synq.entities.custom.v1.DeleteEntitiesGroupResponse)

Group

(synq.entities.custom.v1.Group) Group is a collection of entities.

ListEntityGroupsRequest

(synq.entities.custom.v1.ListEntityGroupsRequest)

ListEntityGroupsResponse

(synq.entities.custom.v1.ListEntityGroupsResponse)

UpsertEntitiesGroupRequest

(synq.entities.custom.v1.UpsertEntitiesGroupRequest)

UpsertEntitiesGroupResponse

(synq.entities.custom.v1.UpsertEntitiesGroupResponse)

DeleteRelationshipsRequest

(synq.entities.custom.v1.DeleteRelationshipsRequest)

DeleteRelationshipsResponse

(synq.entities.custom.v1.DeleteRelationshipsResponse)

ListRelationshipsRequest

(synq.entities.custom.v1.ListRelationshipsRequest)

ListRelationshipsResponse

(synq.entities.custom.v1.ListRelationshipsResponse)

Relationship

(synq.entities.custom.v1.Relationship)

UpsertRelationshipsRequest

(synq.entities.custom.v1.UpsertRelationshipsRequest)

UpsertRelationshipsResponse

(synq.entities.custom.v1.UpsertRelationshipsResponse)

CheckRelationship

(synq.entities.custom.v1.CheckRelationship)

DeleteCheckRelationshipsRequest

(synq.entities.custom.v1.DeleteCheckRelationshipsRequest)

DeleteCheckRelationshipsResponse

(synq.entities.custom.v1.DeleteCheckRelationshipsResponse)

UpsertCheckRelationshipsRequest

(synq.entities.custom.v1.UpsertCheckRelationshipsRequest)

UpsertCheckRelationshipsResponse

(synq.entities.custom.v1.UpsertCheckRelationshipsResponse)

BatchGetEntitiesRequest

(synq.entities.entities.v1.BatchGetEntitiesRequest) BatchGetEntitiesRequest is the request message for the BatchGetEntities method.

BatchGetEntitiesResponse

(synq.entities.entities.v1.BatchGetEntitiesResponse) BatchGetEntitiesResponse is the response message for the BatchGetEntities method.

GetEntityRequest

(synq.entities.entities.v1.GetEntityRequest) GetEntityRequest is the request message for the GetEntity method.

GetEntityResponse

(synq.entities.entities.v1.GetEntityResponse) GetEntityResponse is the response message for the GetEntity method.

ListEntitiesRequest

(synq.entities.entities.v1.ListEntitiesRequest)

ListEntitiesResponse

(synq.entities.entities.v1.ListEntitiesResponse)

SearchEntitiesRequest

(synq.entities.entities.v1.SearchEntitiesRequest)

SearchEntitiesResponse

(synq.entities.entities.v1.SearchEntitiesResponse)

EntityTypeSearchFacet

(synq.entities.entities.v1.EntityTypeSearchFacet)

SearchHit

(synq.entities.entities.v1.SearchHit)

BatchGetExecutionsRequest

(synq.entities.executions.v2.BatchGetExecutionsRequest) BatchGetExecutionsRequest requests specific executions by ID.

BatchGetExecutionsResponse

(synq.entities.executions.v2.BatchGetExecutionsResponse) BatchGetExecutionsResponse contains the requested executions.

BatchGetExecutionsResponse.ExecutionsEntry

(synq.entities.executions.v2.BatchGetExecutionsResponse.ExecutionsEntry)

EntityExecution

(synq.entities.executions.v2.EntityExecution) EntityExecution represents a single execution event on an entity. This is a public representation of internal Run data, excluding sensitive metadata.

ExecutionStatusCount

(synq.entities.executions.v2.ExecutionStatusCount) ExecutionStatusCount represents the count of executions by status.

ExecutionTypeCount

(synq.entities.executions.v2.ExecutionTypeCount) ExecutionTypeCount represents the count of executions by type.

GetExecutionsSummaryRequest

(synq.entities.executions.v2.GetExecutionsSummaryRequest) GetExecutionsSummaryRequest requests summary statistics for entities.

GetExecutionsSummaryResponse

(synq.entities.executions.v2.GetExecutionsSummaryResponse) GetExecutionsSummaryResponse contains aggregated execution statistics.

GetExecutionsSummaryResponse.LatestByEntityEntry

(synq.entities.executions.v2.GetExecutionsSummaryResponse.LatestByEntityEntry)

GetLatestExecutionsRequest

(synq.entities.executions.v2.GetLatestExecutionsRequest) GetLatestExecutionsRequest requests the latest execution for each entity.

GetLatestExecutionsResponse

(synq.entities.executions.v2.GetLatestExecutionsResponse) GetLatestExecutionsResponse contains the latest execution for each requested entity.

GetLatestExecutionsResponse.LatestExecutionsEntry

(synq.entities.executions.v2.GetLatestExecutionsResponse.LatestExecutionsEntry)

ListExecutionsRequest

(synq.entities.executions.v2.ListExecutionsRequest) ListExecutionsRequest specifies filters for listing executions.

ListExecutionsResponse

(synq.entities.executions.v2.ListExecutionsResponse) ListExecutionsResponse contains the paginated list of executions.

Execution

(synq.entities.executions.v1.Execution)

ExecutionExtra

(synq.entities.executions.v1.ExecutionExtra)

LogEntry

(synq.entities.executions.v1.LogEntry)

UpsertExecutionRequest

(synq.entities.executions.v1.UpsertExecutionRequest)

UpsertExecutionResponse

(synq.entities.executions.v1.UpsertExecutionResponse)

UpsertLogEntryRequest

(synq.entities.executions.v1.UpsertLogEntryRequest)

UpsertLogEntryResponse

(synq.entities.executions.v1.UpsertLogEntryResponse)

BatchSqlDetailsRequest

(synq.entities.sql_insights.v1.BatchSqlDetailsRequest) BatchSqlDetailsRequest requests SQL details for a set of entities.

BatchSqlDetailsResponse

(synq.entities.sql_insights.v1.BatchSqlDetailsResponse) BatchSqlDetailsResponse maps each requested synq path to its SQL details.

BatchSqlDetailsResponse.SqlDetailsEntry

(synq.entities.sql_insights.v1.BatchSqlDetailsResponse.SqlDetailsEntry)

ListSqlConstructsRequest

(synq.entities.sql_insights.v1.ListSqlConstructsRequest) ListSqlConstructsRequest has no fields: the result is scoped to the workspace of the authenticated request.

ListSqlConstructsResponse

(synq.entities.sql_insights.v1.ListSqlConstructsResponse) ListSqlConstructsResponse carries the per-construct occurrence counts for the workspace.

ListSqlConstructsResponse.SqlConstructCount

(synq.entities.sql_insights.v1.ListSqlConstructsResponse.SqlConstructCount) SqlConstructCount pairs a SQL construct with the number of entities in the workspace whose SQL uses it.

SqlDetails

(synq.entities.sql_insights.v1.SqlDetails) SqlDetails describes the SQL used by a single entity.

BatchSchemaMismatchesRequest

(synq.entities.schemas.v1.BatchSchemaMismatchesRequest) BatchGetSchemaMismatchesRequest is the request message for the BatchGetSchemaMismatches method.

BatchSchemaMismatchesResponse

(synq.entities.schemas.v1.BatchSchemaMismatchesResponse) BatchGetSchemaMismatchesResponse is the response message for the BatchGetSchemaMismatches method.

SchemaMismatch

(synq.entities.schemas.v1.SchemaMismatch) SchemaMismatch represents a schema drift between a definer entity (e.g., dbt model) and an origin entity (e.g., BigQuery table) where columns are defined but missing in origin.

GetSchemaRequest

(synq.entities.schemas.v1.GetSchemaRequest) GetEntityRequest is the request message for the GetEntity method.

GetSchemaResponse

(synq.entities.schemas.v1.GetSchemaResponse) GetEntityResponse is the response message for the GetEntity method.

ListCodeRequest

(synq.entities.code.v1.ListCodeRequest) ListCodeRequest is the request message for the ListCode method.

ListCodeResponse

(synq.entities.code.v1.ListCodeResponse) ListCodeResponse is the response message for the ListCode method.

GetTableConstraintsRequest

(synq.entities.constraints.v1.GetTableConstraintsRequest)

GetTableConstraintsResponse

(synq.entities.constraints.v1.GetTableConstraintsResponse)

LineageColumnEdge

(synq.ingest.dwh.v1.LineageColumnEdge) LineageColumnEdge is a single column-to-column dependency carried inside a table-level edge. Optional: omit to declare table-level lineage only. The columns name positions on the parent LineageEdge’s upstream and downstream objects respectively.

LineageEdge

(synq.ingest.dwh.v1.LineageEdge) LineageEdge is one directed dependency: data flows from upstream into downstream. Represent multi-hop lineage as the set of its direct (distance-1) edges; do not collapse intermediate hops, so the graph stays explicit and each hop keeps its own object domain and column edges.

LineageNode

(synq.ingest.dwh.v1.LineageNode) LineageNode identifies one object that participates in a lineage edge.

Fqn

(synq.ingest.dwh.v1.Fqn)

ObjectInformation

(synq.ingest.dwh.v1.ObjectInformation)

ObjectMetrics

(synq.ingest.dwh.v1.ObjectMetrics)

Schema

(synq.ingest.dwh.v1.Schema)

SchemaColumn

(synq.ingest.dwh.v1.SchemaColumn)

SchemaColumnField

(synq.ingest.dwh.v1.SchemaColumnField)

SqlDefinition

(synq.ingest.dwh.v1.SqlDefinition)

TableConstraint

(synq.ingest.dwh.v1.TableConstraint) TableConstraint represents a single constraint or index on a database table.

TableConstraints

(synq.ingest.dwh.v1.TableConstraints) TableConstraints contains all constraints and indexes for a single table.

Tag

(synq.ingest.dwh.v1.Tag)

QueryLog

(synq.ingest.dwh.v1.QueryLog) QueryLog represents a single query execution log entry from a data warehouse. This is the format used for ingesting query logs via the DWH agent. The structure mirrors the internal QueryLogRawRow with protobuf serialization. SQL text (may be obfuscated based on sql_obfuscation_mode) | | oneof _sql_hash.sql_hash | optional string | SHA256 hash of original SQL for deduplication (computed during storage if not provided) | | oneof _normalized_query_hash.normalized_query_hash | optional string | Hash of normalized query for lineage caching (empty if not available from platform) | | sql_dialect | string | SQL dialect (e.g., “snowflake”, “bigquery”, “clickhouse”) | | query_type | string | Platform-specific query type (e.g., “CREATE_TABLE_AS_SELECT”, “SELECT”) | | status | string | Execution status: “SUCCESS”, “FAILED”, “CANCELED” | | oneof _dwh_context.dwh_context | optional QueryLogDwhContext | DWH execution context | | sql_obfuscation_mode | SqlObfuscationMode | Obfuscation and parsing hints | | has_complete_native_lineage | bool | If true, native lineage is complete and SQL parsing can be skipped | | is_truncated | bool | If true, SQL was truncated by the warehouse | | oneof _metadata.metadata | optional Struct | Platform-specific metadata (arbitrary key-value pairs) Contains execution metrics, costs, etc. depending on the platform | | oneof _native_lineage.native_lineage | optional QueryLogNativeLineage | Native lineage from the platform (if available) |

QueryLogDwhContext

(synq.ingest.dwh.v1.QueryLogDwhContext) QueryLogDwhContext represents the execution context of a query. Contains information about where and by whom the query was executed. Platform-specific mappings (Instance, Database, Schema):
  • Snowflake: account, database_name, schema_name
  • Databricks: workspace_url, catalog_name, schema_name
  • BigQuery: "", project_id, dataset_id
  • Redshift: host, database_name, schema_name
  • Postgres: host, database_name, schema_name
  • Trino: host, catalog, schema
  • MySQL: "", host, schema_name
  • ClickHouse: hostname, database_name, "" (2-level: hostname.database)
  • DuckDB: motherduck_account, database_name, schema_name

QueryLogNativeLineage

(synq.ingest.dwh.v1.QueryLogNativeLineage) QueryLogNativeLineage contains lineage information provided natively by the data warehouse. Not all platforms provide this - when available, it can be more accurate than SQL parsing.

DatabasesScope

(synq.ingest.dwh.v1.DatabasesScope) DatabasesScope makes the batch authoritative for the listed databases only.

IngestLineageRequest

(synq.ingest.dwh.v1.IngestLineageRequest) IngestLineageRequest carries one batch of lineage edges for a single warehouse connection. Send many batches with the same connection_id over time; each batch is interpreted against the others according to replace_mode.

IngestLineageResponse

(synq.ingest.dwh.v1.IngestLineageResponse) IngestLineageResponse is intentionally empty; a successful call means the batch was accepted for processing.

IngestObjectInformationRequest

(synq.ingest.dwh.v1.IngestObjectInformationRequest)

IngestObjectInformationResponse

(synq.ingest.dwh.v1.IngestObjectInformationResponse)

IngestObjectMetricsRequest

(synq.ingest.dwh.v1.IngestObjectMetricsRequest)

IngestObjectMetricsResponse

(synq.ingest.dwh.v1.IngestObjectMetricsResponse)

IngestQueryLogsRequest

(synq.ingest.dwh.v1.IngestQueryLogsRequest)

IngestQueryLogsResponse

(synq.ingest.dwh.v1.IngestQueryLogsResponse)

IngestSchemasRequest

(synq.ingest.dwh.v1.IngestSchemasRequest)

IngestSchemasResponse

(synq.ingest.dwh.v1.IngestSchemasResponse)

IngestSqlDefinitionsRequest

(synq.ingest.dwh.v1.IngestSqlDefinitionsRequest)

IngestSqlDefinitionsResponse

(synq.ingest.dwh.v1.IngestSqlDefinitionsResponse)

IngestTableConstraintsRequest

(synq.ingest.dwh.v1.IngestTableConstraintsRequest)

IngestTableConstraintsResponse

(synq.ingest.dwh.v1.IngestTableConstraintsResponse)

IngestTaskResultsRequest

(synq.ingest.dwh.v1.IngestTaskResultsRequest)

IngestTaskResultsResponse

(synq.ingest.dwh.v1.IngestTaskResultsResponse)

LineageScope

(synq.ingest.dwh.v1.LineageScope) LineageScope declares the set of downstream objects a REPLACE_SCOPE batch is authoritative for — the boundary inside which omitted edges are expired. The scope is always additionally bounded by the request’s connection_id. Ignored when the mode is MERGE.

SchemasScope

(synq.ingest.dwh.v1.SchemasScope) SchemasScope makes the batch authoritative for the listed schemas only.

WholeConnectionScope

(synq.ingest.dwh.v1.WholeConnectionScope) WholeConnectionScope makes the batch authoritative for the entire connection.

GitContext

(synq.ingest.git.v1.GitContext)

IngestRequest

(synq.ingest.openlineage.v1.IngestRequest)

IngestResponse

(synq.ingest.openlineage.v1.IngestResponse)

CloudwatchLogsLogEvent

(synq.ingest.cloudwatch.v1.CloudwatchLogsLogEvent)

IngestCloudwatchLogsDataRequest

(synq.ingest.cloudwatch.v1.IngestCloudwatchLogsDataRequest)

IngestCloudwatchLogsDataResponse

(synq.ingest.cloudwatch.v1.IngestCloudwatchLogsDataResponse)

IngestDatahubAspectsRequest

(synq.ingest.airflow.v1.IngestDatahubAspectsRequest)

IngestDatahubAspectsResponse

(synq.ingest.airflow.v1.IngestDatahubAspectsResponse)

IngestLogRequest

(synq.ingest.airflow.v1.IngestLogRequest)

IngestLogResponse

(synq.ingest.airflow.v1.IngestLogResponse)

IngestExecutionRequest

(synq.ingest.sqlmesh.v1.IngestExecutionRequest)

IngestExecutionRequest.EnvironmentVarsEntry

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

IngestExecutionResponse

(synq.ingest.sqlmesh.v1.IngestExecutionResponse)

IngestMetadataRequest

(synq.ingest.sqlmesh.v1.IngestMetadataRequest)

IngestMetadataRequest.Error

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

IngestMetadataRequest.FileContentEntry

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

IngestMetadataRequest.ModelDetailsEntry

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

IngestMetadataRequest.ModelLineageEntry

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

IngestMetadataResponse

(synq.ingest.sqlmesh.v1.IngestMetadataResponse)

DbtArtifact

(synq.ingest.dbt.v1.DbtArtifact) https://docs.getdbt.com/reference/artifacts/dbt-artifacts

IngestInvocationRequest

(synq.ingest.dbt.v1.IngestInvocationRequest)

IngestInvocationRequest.EnvironmentVarsEntry

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

IngestInvocationResponse

(synq.ingest.dbt.v1.IngestInvocationResponse)

AddDomainMembersRequest

(synq.domains.members.v1.AddDomainMembersRequest)

AddDomainMembersResponse

(synq.domains.members.v1.AddDomainMembersResponse)

ListDomainMembersRequest

(synq.domains.members.v1.ListDomainMembersRequest)

ListDomainMembersResponse

(synq.domains.members.v1.ListDomainMembersResponse)

ListUserDomainsRequest

(synq.domains.members.v1.ListUserDomainsRequest)

ListUserDomainsResponse

(synq.domains.members.v1.ListUserDomainsResponse)

RemoveDomainMembersRequest

(synq.domains.members.v1.RemoveDomainMembersRequest)

RemoveDomainMembersResponse

(synq.domains.members.v1.RemoveDomainMembersResponse)

SetDefaultUserDomainRequest

(synq.domains.members.v1.SetDefaultUserDomainRequest)

SetDefaultUserDomainResponse

(synq.domains.members.v1.SetDefaultUserDomainResponse)

DomainMembership

(synq.domains.members.v1.DomainMembership)

BatchGetRequest

(synq.domains.v1.BatchGetRequest)

BatchGetResponse

(synq.domains.v1.BatchGetResponse)

BatchGetResponse.DomainsEntry

(synq.domains.v1.BatchGetResponse.DomainsEntry)

DeleteRequest

(synq.domains.v1.DeleteRequest)

DeleteResponse

(synq.domains.v1.DeleteResponse)

FetchDomainWithSubDomainsRequest

(synq.domains.v1.FetchDomainWithSubDomainsRequest)

FetchDomainWithSubDomainsResponse

(synq.domains.v1.FetchDomainWithSubDomainsResponse)

FetchDomainWithSubDomainsResponse.DomainsEntry

(synq.domains.v1.FetchDomainWithSubDomainsResponse.DomainsEntry)

GetUsageRequest

(synq.domains.v1.GetUsageRequest)

GetUsageResponse

(synq.domains.v1.GetUsageResponse)

ListRequest

(synq.domains.v1.ListRequest)

ListResponse

(synq.domains.v1.ListResponse)

RemoveDefinitionPartRequest

(synq.domains.v1.RemoveDefinitionPartRequest)

RemoveDefinitionPartResponse

(synq.domains.v1.RemoveDefinitionPartResponse)

SetDefinitionRequest

(synq.domains.v1.SetDefinitionRequest)

SetDefinitionResponse

(synq.domains.v1.SetDefinitionResponse)

UpsertDefinitionPartRequest

(synq.domains.v1.UpsertDefinitionPartRequest)

UpsertDefinitionPartResponse

(synq.domains.v1.UpsertDefinitionPartResponse)

UpsertRequest

(synq.domains.v1.UpsertRequest)

UpsertResponse

(synq.domains.v1.UpsertResponse)

AssetSelectionQuery

(synq.domains.v1.AssetSelectionQuery)

AssetSelectionQuery.QueryPart

(synq.domains.v1.AssetSelectionQuery.QueryPart)

DomainDefinition

(synq.domains.v1.DomainDefinition)

DomainDefinition.Part

(synq.domains.v1.DomainDefinition.Part)

Domain

(synq.domains.v1.Domain)

Grant

(synq.savedviews.v1.Grant) A single access grant on a saved view.

GrantList

(synq.savedviews.v1.GrantList) A wrapper giving the grant set explicit presence on write, so a partial update can distinguish “replace the grants” (present, possibly empty) from “leave grants unchanged” (absent).

SavedView

(synq.savedviews.v1.SavedView) A saved view: a named, reusable selection over entities (or another context) with display configuration, sharing and per-user pinning.

SavedViewConfig

(synq.savedviews.v1.SavedViewConfig) How a saved view is displayed once opened. This message is intentionally permissive and forward-compatible: new presentation options are added as new fields, never as a breaking change, so older clients keep working.

SavedViewPermissions

(synq.savedviews.v1.SavedViewPermissions) What the calling user is allowed to do with a saved view. Output-only: computed per request from ownership, the caller’s grant (if any) and their workspace permissions. Viewing and pinning are always allowed for any view the caller can see, so they are not represented here.

SavedViewQuery

(synq.savedviews.v1.SavedViewQuery) The query behind a saved view, expressed for the public API. On write, provide the query in ONE of two forms:
  • public_query — a structured query (the same shape used elsewhere for asset selection), convenient to build from a filter UI; or
  • resolver_ql — the SYNQ resolver query language, a compact text form that additionally expresses severity/status and time-window filters (e.g. with_severity(statuses=["error"], since="24h")). When both are set, resolver_ql wins. The server compiles the query and stores it canonically; the raw text is not preserved verbatim.
On read, the server returns rendered_resolver_ql (the stored query rendered back to canonical resolver query language) and, best-effort, public_query (the structured representation; parts with no structured equivalent are marked unsupported). resolver_ql is not echoed back — read rendered_resolver_ql.

SavedViewSelection

(synq.savedviews.v1.SavedViewSelection) The selection that a saved view captures. Modelled as a oneof so future contexts (e.g. an issues filter) can add their own selection shape without reshaping the view.

BatchGetRequest

(synq.savedviews.v1.BatchGetRequest)

BatchGetResponse

(synq.savedviews.v1.BatchGetResponse)

BatchGetResponse.ViewsEntry

(synq.savedviews.v1.BatchGetResponse.ViewsEntry)

DeleteRequest

(synq.savedviews.v1.DeleteRequest)

DeleteResponse

(synq.savedviews.v1.DeleteResponse)

ListRequest

(synq.savedviews.v1.ListRequest)

ListResponse

(synq.savedviews.v1.ListResponse)

SetPinRequest

(synq.savedviews.v1.SetPinRequest)

SetPinResponse

(synq.savedviews.v1.SetPinResponse)

UpsertRequest

(synq.savedviews.v1.UpsertRequest)

UpsertResponse

(synq.savedviews.v1.UpsertResponse)

Dataproduct

(synq.dataproducts.v2.Dataproduct) A data product: a named, owned grouping of data assets that share a purpose, with a membership definition, a priority and an optional folder.

BatchGetRequest

(synq.dataproducts.v2.BatchGetRequest)

BatchGetResponse

(synq.dataproducts.v2.BatchGetResponse)

BatchGetResponse.DataproductsEntry

(synq.dataproducts.v2.BatchGetResponse.DataproductsEntry)

DeleteRequest

(synq.dataproducts.v2.DeleteRequest)

DeleteResponse

(synq.dataproducts.v2.DeleteResponse)

ListMembersRequest

(synq.dataproducts.v2.ListMembersRequest)

ListMembersResponse

(synq.dataproducts.v2.ListMembersResponse)

ListRequest

(synq.dataproducts.v2.ListRequest)

ListResponse

(synq.dataproducts.v2.ListResponse)

RemoveDefinitionPartRequest

(synq.dataproducts.v2.RemoveDefinitionPartRequest)

RemoveDefinitionPartResponse

(synq.dataproducts.v2.RemoveDefinitionPartResponse)

SetDefinitionRequest

(synq.dataproducts.v2.SetDefinitionRequest)

SetDefinitionResponse

(synq.dataproducts.v2.SetDefinitionResponse)

UpsertDefinitionPartRequest

(synq.dataproducts.v2.UpsertDefinitionPartRequest)

UpsertDefinitionPartResponse

(synq.dataproducts.v2.UpsertDefinitionPartResponse)

UpsertRequest

(synq.dataproducts.v2.UpsertRequest)

UpsertResponse

(synq.dataproducts.v2.UpsertResponse)

DataproductDefinition

(synq.dataproducts.v2.DataproductDefinition) The membership of a data product: which assets belong to it. A definition is an ordered list of parts; an asset is a member if it matches ANY part (the parts are OR’d together). A data product is a LEAF in the reference graph: its membership is defined only by asset-level predicates, static asset ids and lineage of those — never by referencing another data product or domain. The in_dataproduct / in_domain query operands are therefore rejected anywhere in a data product definition (see DataproductQuery). This keeps membership resolution finite: data products can never take part in a reference cycle.

DataproductDefinition.Part

(synq.dataproducts.v2.DataproductDefinition.Part) A single piece of a data product definition: either a pinned asset or a selection query.

DataproductQuery

(synq.dataproducts.v2.DataproductQuery) The selection query behind a data product part, expressed for the public API. On write, provide the query in ONE of two forms:
  • public_query — a structured query (the same shape used elsewhere for asset selection), convenient to build from a filter UI; or
  • resolver_ql — the resolver query language, a compact text form that is the canonical way to author selections as code. When both are set, resolver_ql wins. The server compiles the query and stores it canonically; the raw text is not preserved verbatim.
On read, the server returns rendered_resolver_ql (the stored query rendered back to canonical resolver query language) and, best-effort, public_query (the structured representation). resolver_ql is not echoed back — read rendered_resolver_ql. Leaf rule: a data product may not reference another data product or domain. The in_dataproduct, in_domain and unsupported operands are rejected at the top level here (CEL) and, for nested sub-queries, by a server-side walk.

Dataproduct

(synq.dataproducts.v1.Dataproduct)

DeleteRequest

(synq.dataproducts.v1.DeleteRequest)

DeleteResponse

(synq.dataproducts.v1.DeleteResponse)

GetRequest

(synq.dataproducts.v1.GetRequest)

GetResponse

(synq.dataproducts.v1.GetResponse)

ListRequest

(synq.dataproducts.v1.ListRequest)

ListResponse

(synq.dataproducts.v1.ListResponse)

RemoveDefinitionPartRequest

(synq.dataproducts.v1.RemoveDefinitionPartRequest)

RemoveDefinitionPartResponse

(synq.dataproducts.v1.RemoveDefinitionPartResponse)

SetDefinitionRequest

(synq.dataproducts.v1.SetDefinitionRequest)

SetDefinitionResponse

(synq.dataproducts.v1.SetDefinitionResponse)

UpsertDefinitionPartRequest

(synq.dataproducts.v1.UpsertDefinitionPartRequest)

UpsertDefinitionPartResponse

(synq.dataproducts.v1.UpsertDefinitionPartResponse)

UpsertRequest

(synq.dataproducts.v1.UpsertRequest)

UpsertResponse

(synq.dataproducts.v1.UpsertResponse)

AssetSelectionQuery

(synq.dataproducts.v1.AssetSelectionQuery)

AssetSelectionQuery.QueryPart

(synq.dataproducts.v1.AssetSelectionQuery.QueryPart)

DataproductDefinition

(synq.dataproducts.v1.DataproductDefinition)

DataproductDefinition.Part

(synq.dataproducts.v1.DataproductDefinition.Part)

AddIssuesToIncidentRequest

(synq.incidents.v1.AddIssuesToIncidentRequest)

AddIssuesToIncidentResponse

(synq.incidents.v1.AddIssuesToIncidentResponse)

AssignIncidentOwnerRequest

(synq.incidents.v1.AssignIncidentOwnerRequest)

AssignIncidentOwnerResponse

(synq.incidents.v1.AssignIncidentOwnerResponse)

BatchGetIncidentsRequest

(synq.incidents.v1.BatchGetIncidentsRequest)

BatchGetIncidentsResponse

(synq.incidents.v1.BatchGetIncidentsResponse)

BatchGetIncidentsResponse.IncidentsEntry

(synq.incidents.v1.BatchGetIncidentsResponse.IncidentsEntry)

CancelIncidentRequest

(synq.incidents.v1.CancelIncidentRequest)

CancelIncidentResponse

(synq.incidents.v1.CancelIncidentResponse)

CloseIncidentRequest

(synq.incidents.v1.CloseIncidentRequest)

CloseIncidentResponse

(synq.incidents.v1.CloseIncidentResponse)

CreateIncidentRequest

(synq.incidents.v1.CreateIncidentRequest)

CreateIncidentResponse

(synq.incidents.v1.CreateIncidentResponse)

ListIncidentsRequest

(synq.incidents.v1.ListIncidentsRequest)

ListIncidentsRequest.Sort

(synq.incidents.v1.ListIncidentsRequest.Sort)

ListIncidentsRequest.Time

(synq.incidents.v1.ListIncidentsRequest.Time)

ListIncidentsResponse

(synq.incidents.v1.ListIncidentsResponse)

MergeIncidentsRequest

(synq.incidents.v1.MergeIncidentsRequest)

MergeIncidentsResponse

(synq.incidents.v1.MergeIncidentsResponse)

PostCommentRequest

(synq.incidents.v1.PostCommentRequest)

PostCommentResponse

(synq.incidents.v1.PostCommentResponse)

RemoveIssuesFromIncidentRequest

(synq.incidents.v1.RemoveIssuesFromIncidentRequest)

RemoveIssuesFromIncidentResponse

(synq.incidents.v1.RemoveIssuesFromIncidentResponse)

RenameIncidentRequest

(synq.incidents.v1.RenameIncidentRequest)

RenameIncidentResponse

(synq.incidents.v1.RenameIncidentResponse)

SplitIncidentRequest

(synq.incidents.v1.SplitIncidentRequest)

SplitIncidentResponse

(synq.incidents.v1.SplitIncidentResponse)

UpdateIncidentStateRequest

(synq.incidents.v1.UpdateIncidentStateRequest)

UpdateIncidentStateResponse

(synq.incidents.v1.UpdateIncidentStateResponse)

Incident

(synq.incidents.v1.Incident)

IncidentComment

(synq.incidents.v1.IncidentComment)

Enums

SnapDirection

(synq.schedule.v1.SnapDirection) SnapDirection constrains which way an occurrence may move to reach the grid.

DataPlatformType

(synq.platforms.v1.DataPlatformType)

Owner.Source

(synq.owners.v1.Owner.Source) Where the owner is managed. Owners from an external source (e.g. Atlan) are read-only.

QueryOperand

(synq.queries.v1.QueryOperand) QueryOperand defines how multiple QueryParts within a Query are combined.

Event.EventType

(synq.webhooks.v1.Event.EventType)

IssueSummary.IssueStatus

(synq.webhooks.v1.IssueSummary.IssueStatus)

HealthStatus

(synq.integrations.v1.HealthStatus) Health status of an integration, derived from its most recent runs.

Status

(synq.extensions.atlan.workflows.v1.Status)

Severity

(synq.v1.Severity)

Source

(synq.v1.Source)

Scope

(synq.v1.Scope)

ListIssuesRequest.Field

(synq.issues.v2.ListIssuesRequest.Field)

ListIssuesRequest.Sort.Order

(synq.issues.v2.ListIssuesRequest.Sort.Order)

Actor.Via

(synq.issues.actor.v1.Actor.Via)

LifecycleState

(synq.issues.issues.v1.LifecycleState) Issue LifecycleState represents the current state of the issue in its life-cycle. The state is exclusively determined as per the priority which is in the order of the fields below.

Severity

(synq.issues.issues.v1.Severity)

State

(synq.issues.issues.v1.State) Whether the issue is open / close.

Status

(synq.issues.issues.v1.Status) Progress status of the issue.

Config.Agent.LogLevel

(synq.agent.dwh.v1.Config.Agent.LogLevel)

LogLevel

(synq.agent.dwh.v1.LogLevel)

ConnectionResolutionReason

(synq.agent.recon.v1.ConnectionResolutionReason) Reason why a single connection could not be resolved.

DeploymentAction

(synq.agent.recon.v1.DeploymentAction)

AggregateFunction

(synq.agent.recon.v1.AggregateFunction) AggregateFunction defines the supported SQL aggregate functions for measure comparisons in aggregate reconciliation mode.

PercentageMode

(synq.agent.recon.v1.PercentageMode) PercentageMode controls which percentage formula is used for threshold comparison. The choice affects how “big” a difference appears when source and target values differ in magnitude.

ReconciliationRunFailureCategory

(synq.agent.recon.v1.ReconciliationRunFailureCategory) ReconciliationRunFailureCategory classifies why a run ended in FAILED. Clients use this to render appropriate user-facing messages.

ReconciliationRunStatus

(synq.agent.recon.v1.ReconciliationRunStatus) ReconciliationRunStatus is the lifecycle state of a single reconciliation run.

ReconciliationRunTrigger

(synq.agent.recon.v1.ReconciliationRunTrigger) ReconciliationRunTrigger describes why a run was created.

CaseFailureImpact

(synq.agent.recon.v1.CaseFailureImpact) CaseFailureImpact controls whether a reconciliation case’s referenced tables (resolved from the source/target SQL at deploy time) inherit the case’s failure status, or are only attached to the run for visibility. This is a deployment-time policy, not part of the suite YAML — it is set on PromoteSuite / UpdateDeploymentCaseImpacts and stored on the promoted deployment, not on the authored config. Letting operators flip impact without editing the suite keeps configuration declarative and lets the FE offer “apply to all” without round-tripping YAML.

HashAlgorithm

(synq.agent.recon.v1.HashAlgorithm) HashAlgorithm specifies the hash function used for row checksums in ROW_CHECKSUM mode. Different databases natively support different hash functions; choosing one supported by both sides avoids emulation overhead.

ReconcilationMode

(synq.agent.recon.v1.ReconcilationMode) ReconcilationMode defines the comparison strategy for a reconciliation. Modes are ordered by depth of comparison: ROW_COUNT < ROW_CHECKSUM < AGGREGATE.

ReportingLevel

(synq.agent.recon.v1.ReportingLevel) ReportingLevel controls how much detail is included in results for mismatched rows. Levels are ordered by increasing data exposure.

SegmentationStrategy

(synq.agent.recon.v1.SegmentationStrategy) SegmentationStrategy defines how key ranges are split during bisection. The strategy affects both performance and privacy characteristics.

TimeGranularity

(synq.agent.recon.v1.TimeGranularity) TimeGranularity defines the granularity for time-based segmentation.

WindowStrategy

(synq.agent.recon.v1.WindowStrategy) WindowStrategy defines how the time window boundaries are computed.

CutoffAggregate

(synq.agent.recon.v1.CutoffAggregate) CutoffAggregate defines the aggregate function for watermark derivation.

CutoffCombine

(synq.agent.recon.v1.CutoffCombine) CutoffCombine defines how to combine watermarks from source and target.

CutoffTruncate

(synq.agent.recon.v1.CutoffTruncate) CutoffTruncate defines time truncation for the cutoff value.

AggregateDivergenceType

(synq.agent.recon.v1.AggregateDivergenceType) AggregateDivergenceType categorizes how an aggregate group diverges.

AuditStatus

(synq.agent.recon.v1.AuditStatus) AuditStatus describes the overall outcome of a reconciliation run. Values are ordered by severity: passed < within_threshold < mismatched < failed.

MeasureVerdictReason

(synq.agent.recon.v1.MeasureVerdictReason) MeasureVerdictReason explains the threshold evaluation outcome.

MismatchType

(synq.agent.recon.v1.MismatchType) MismatchType categorizes how rows differ between source and target.

QueryRole

(synq.agent.recon.v1.QueryRole) QueryRole identifies whether a query targets the source or target database.

ReconciliationStatus

(synq.agent.recon.v1.ReconciliationStatus) ReconciliationStatus describes the outcome of a single reconciliation. Distinguishes infrastructure errors from data comparison results. Values are ordered by severity: passed < within_threshold < mismatched < failed.

RowMismatchType

(synq.agent.recon.v1.RowMismatchType) RowMismatchType categorizes a single row-level mismatch.

StageType

(synq.agent.recon.v1.StageType) StageType identifies the type of reconciliation stage.

TerminationReason

(synq.agent.recon.v1.TerminationReason) TerminationReason explains why bisection stopped at a particular node.

PromptField

(synq.agent.sre.v1.PromptField) PromptField identifies which SRE agent system-prompt a suggestion targets. Mirrors the four *_system_prompt fields returned by GetConfig.

PromptSuggestionStatus

(synq.agent.sre.v1.PromptSuggestionStatus) PromptSuggestionStatus is the review lifecycle of a single prompt suggestion. SUPERSEDED indicates a newer pending suggestion for the same field replaced this one before it was reviewed.

MessageRole

(synq.agent.sre.v1.MessageRole) Role of the message in the conversation.

ModelType

(synq.agent.sre.v1.ModelType) Type of model to use for the evaluation.

TestSuggestionStatus

(synq.agent.sre.v1.TestSuggestionStatus)

IssueTriageStatus

(synq.agent.sre.v1.IssueTriageStatus) IssueTriageStatus represents the current stage of an issue in the SRE agent’s investigation workflow. The status progresses as the agent collects evidence and reaches conclusions about the issue.

TriageFailureCategory

(synq.agent.sre.v1.TriageFailureCategory) TriageFailureCategory classifies why a triage attempt failed. The frontend can use this to render appropriate user-facing messages and actions.

DatacheckStatus

(synq.datachecks.v1.DatacheckStatus) Result of a datacheck execution

Severity

(synq.datachecks.sqltests.v1.Severity)

DeploymentRuleType

(synq.monitors.automated_monitors.v1.DeploymentRuleType) DeploymentRuleType identifies which kind of selection a deployment rule uses. The value corresponds to the populated config oneof arm on MonitorsDeploymentRule / MonitorsDeploymentRuleView. Use it with ListDeploymentRulesRequest.rule_types to return only rules of selected kinds.

MetricId

(synq.monitors.automated_monitors.v1.MetricId)

Sensitivity

(synq.monitors.automated_monitors.v1.Sensitivity)

Severity

(synq.monitors.automated_monitors.v1.Severity)

MonitorDefinition.Source

(synq.monitors.custom_monitors.v1.MonitorDefinition.Source)

Sensitivity

(synq.monitors.custom_monitors.v1.Sensitivity)

Severity

(synq.monitors.custom_monitors.v1.Severity)

LineageDirection

(synq.entities.lineage.v1.LineageDirection) Direction of the lineage to query.

CllState

(synq.entities.lineage.v1.CllState)

NodePosition

(synq.entities.lineage.v1.NodePosition)

IssueStatus

(synq.entities.status.v1.IssueStatus)

CodeType

(synq.entities.v1.CodeType) CodeType enum represents different types of code that can be processed in the Coalesce Quality platform

SqlDialect

(synq.entities.v1.SqlDialect)

EntityType

(synq.entities.v1.EntityType)

EntityChangeType

(synq.entities.v1.EntityChangeType)

TableConstraintType

(synq.entities.v1.TableConstraintType) TableConstraintType represents the type of a database table constraint or index.

SqlConstruct

(synq.entities.v1.SqlConstruct) SqlConstruct enumerates the SQL features detected in an entity’s query. Multiple values can be set on a single statement (e.g. a query with both a CTE and an INNER JOIN carries HAS_CTE, HAS_ANY_JOIN and INNER_JOIN).

ExecutionType

(synq.entities.v1.ExecutionType)

PropagationFilter

(synq.entities.checks.v1.PropagationFilter) PropagationFilter controls which types of checks are included in the coverage response.

ExecutionStatus

(synq.entities.custom.v1.ExecutionStatus)

ExecutionStatus

(synq.entities.executions.v2.ExecutionStatus) ExecutionStatus represents the outcome of an execution.

ExecutionStatus

(synq.entities.executions.v1.ExecutionStatus)

LineageObjectDomain

(synq.ingest.dwh.v1.LineageObjectDomain) LineageObjectDomain classifies what KIND of warehouse object sits at one end of a lineage edge. It lets the platform tell real table-to-table lineage apart from edges that touch warehouse-internal or non-tabular objects (load stages, streams, semantic views, …), which are rendered differently (or hidden) in the lineage graph. The values mirror the object domains a warehouse’s native lineage feature reports (for example the domains returned by Snowflake’s GET_LINEAGE) plus the common equivalents on other warehouses. Set UNSPECIFIED when the producer cannot determine the domain — the edge is still stored, just without the table-vs-builtin distinction.

LineageSource

(synq.ingest.dwh.v1.LineageSource) LineageSource records HOW the lineage was derived. The platform uses it both to set the precedence of the resulting edges and to keep lineage of different origins from silently overwriting one another: declared lineage is additive to observed lineage, it never replaces it. Pick the single value that best describes the whole batch.

SqlObfuscationMode

(synq.ingest.dwh.v1.SqlObfuscationMode) SqlObfuscationMode represents the level of SQL obfuscation applied to query logs. This is critical for on-premise deployments where customers want to prevent sensitive data in SQL queries from being sent to Coalesce Quality backend.

LineageReplaceMode

(synq.ingest.dwh.v1.LineageReplaceMode) LineageReplaceMode controls how an ingested batch interacts with lineage that was ingested earlier, and therefore when previously-ingested edges become outdated and stop contributing to dependencies.

Domain.Source

(synq.domains.v1.Domain.Source)

GrantRole

(synq.savedviews.v1.GrantRole) The access level a grant confers on its grantee.

SavedViewConfig.Layout

(synq.savedviews.v1.SavedViewConfig.Layout) Layout used to render the view’s results.

SavedViewContext

(synq.savedviews.v1.SavedViewContext) The surface a saved view applies to. A view saved on the catalog/assets screen is not shown on the checks or issues screens, so listing is normally filtered by the context the caller is rendering.

SavedViewRelationship

(synq.savedviews.v1.SavedViewRelationship) How a returned saved view relates to the calling user. Output-only: computed per request from the view’s owner, visibility and grants against the caller’s identity. Clients group their “views” UI by this value.

SavedViewVisibility

(synq.savedviews.v1.SavedViewVisibility) Who can see a saved view. This is the absolute sharing state stored on the view; how it relates to the calling user is reported separately as a SavedViewRelationship on each returned view.

Dataproduct.Priority

(synq.dataproducts.v2.Dataproduct.Priority) Priority. P1 is the highest.

Dataproduct.Source

(synq.dataproducts.v2.Dataproduct.Source) Where this data product is managed. Products from an external source (e.g. Atlan) are read-only in the app.

Dataproduct.Priority

(synq.dataproducts.v1.Dataproduct.Priority)

Dataproduct.Source

(synq.dataproducts.v1.Dataproduct.Source)

ListIncidentsRequest.Field

(synq.incidents.v1.ListIncidentsRequest.Field)

ListIncidentsRequest.Sort.Order

(synq.incidents.v1.ListIncidentsRequest.Sort.Order)

Incident.State

(synq.incidents.v1.Incident.State)