---
title: "Get Git sync status"
method: GET
path: "/sync/status"
tags: ["sync"]
---

# Get Git sync status

`GET /sync/status`

Returns the overall Git sync status including all supported sync items

## Query parameters

- `remoteNode` string

## Response `200`

Sync status retrieved successfully

- SyncStatusResponse — Overall Git sync status
  - `enabled` boolean, required — Whether Git sync is enabled
  - `repository` string — Repository URL
  - `branch` string — Branch being synced
  - `summary` 'synced' | 'pending' | 'conflict' | 'missing' | 'error', required — Summary status for the sync badge
  - `lastSyncAt` string, date-time — When the last sync occurred
  - `lastSyncCommit` string — Commit hash of last sync
  - `lastSyncStatus` string — Status of last sync (success/error)
  - `lastError` string — Error message from last failed sync
  - `items` SyncItem[], required — Sync state for each item
    - `itemId` string, required — Stable sync item identifier (file path without extension)
    - `filePath` string, required — Relative file path with extension
    - `displayName` string, required — Display-friendly item name
    - `status` 'synced' | 'modified' | 'untracked' | 'conflict' | 'missing', required — Sync status of an item
    - `kind` 'dag' | 'doc' | 'doc-asset', required — Type of sync item
    - `baseCommit` string — Commit hash when last synced
    - `lastSyncedHash` string — Content hash when last synced
    - `lastSyncedAt` string, date-time — When the item was last synced
    - `modifiedAt` string, date-time — When the item was last modified locally
    - `localHash` string — Current local content hash
    - `remoteCommit` string — Remote commit hash (for conflicts)
    - `remoteAuthor` string — Author of the remote commit (for conflicts)
    - `remoteMessage` string — Message of the remote commit (for conflicts)
    - `conflictDetectedAt` string, date-time — When the conflict was detected
    - `previousStatus` 'synced' | 'modified' | 'untracked' | 'conflict' | 'missing' — Sync status of an item
    - `missingAt` string, date-time — When the file was first detected as missing
  - `counts` SyncStatusCounts, required — Counts of items in each sync status
    - `synced` integer, required
    - `modified` integer, required
    - `untracked` integer, required
    - `conflict` integer, required
    - `missing` integer, required

## Other responses

- `default` — Unexpected error

---

[API](https://skmtc.net/dagucloud/apis/dagu.md) · [All operations](https://skmtc.net/dagucloud/apis/dagu/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dagucloud/dagu/revisions/93cc41f2018a/schema)
