Skip to main content
GET
Get cluster GitOps status

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

authorization
string | null
x-ankra-organisation-id
string | null

Path Parameters

cluster_id
string<uuid4>
required

Response

Successful Response

sync_status
string | null

Outcome of the latest GitOps sync attempt: synced, conflict, diverged, syncing, error, cancelled, or not_configured. conflict means GitOps sync is paused on a merge conflict: the latest attempt found the same resource changed in Git and on the cluster and applied nothing, or conflicts still await a decision (see open_conflict_count). diverged means the sync applied but Git and the platform are divided on at least one preserved file (see preserved_path_count): the platform's changes to that file have not reached Git.

last_synced_at
string<date-time> | null
last_synced_from
string | null
last_commit_sha
string | null

Commit of the last attempt that synced. An attempt that stopped on a merge conflict applied nothing and is not counted.

last_commit_timestamp
string<date-time> | null
pending_commit_sha
string | null
sync_phase
string | null
sync_progress_message
string | null
applied_with_failed_members
boolean
default:false
error
ValidationErrorInfo · object
retry_count
integer
default:0
cluster_name
string | null
cluster_short_id
string | null
git_repo
GitRepoInfo · object | null
credential_missing
boolean
default:false

True when the cluster's GitOps repository row names a credential that no longer resolves to a stored credential of that provider - a dangling binding whose pushes fail as 404 while git_repo still reads as configured.

open_conflict_count
integer
default:0

Number of GitOps merge conflicts awaiting an operator decision. While it is above zero GitOps sync is paused: nothing pushed to Git is applied to the cluster until each conflict is resolved. Conflicts that already carry a decision are not counted; the next sync applies them.

open_conflict_keys
string[]

Resource keys of the conflicts counted by open_conflict_count, in key order and capped at 20. open_conflict_count is always the full total, so a shorter list was capped; the conflicts listing enumerates every conflict with both sides.

preserved_path_count
integer
default:0

Number of files Git and the platform are divided on. Each was edited in Git, so Ankra keeps Git's bytes there instead of overwriting them with its own version, and the platform's later changes to the file do not reach Git until a person decides it: take Git's version (imported into the platform) or take Ankra's (written into Git). Unlike a conflict it pauses nothing. While it is above zero a successful sync reads diverged instead of synced.

preserved_paths
string[]

Repository paths of the files counted by preserved_path_count, in path order and capped at 20. preserved_path_count is always the full total; the preserved-paths listing shows every file with both sides.