Skip to content

List project repository sync health for an administrator

GET
/projects/{id}/github-sync-health
curl --request GET \
--url https://example.com/api/projects/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/github-sync-health \
--header 'Authorization: Bearer <token>'

Returns safe, durable repository observations. An unavailable read fails explicitly; it never reports healthy or an empty list in place of a failed read. The unresolved identity count includes historical sync work whose repository identity is unknown, even if no repository health rows exist. No sync principal, credential, or private provider payload is returned.

id
required
string format: uuid

Project UUID

Repository health observations

Media type application/json
object
health
required
Array<object>

Safe project repository sync observation; no sync identity, credential, or provider response body.

object
id
required
string format: uuid
projectId
required
string format: uuid
repository
required

GitHub repository in owner/repo format.

string
state
required
string
Allowed values: healthy paused degraded
errorClass
required
string
Allowed values: none repository_access_denied installation_missing rate_limit transient object_not_found unknown
firstObservedAt
required
string format: date-time
lastObservedAt
required
string format: date-time
repairUrl
required

GitHub installation or repository settings page for administrator repair.

string format: uri
blockedSyncCount
required

Complete count of access-blocked sync work for this repository under original identities.

integer
unresolvedIdentityCount
required

Historical sync work without a known repository identity; not included in health.

integer

Not authenticated

Media type application/json
object
error
required

Human-readable error message

string
code

Stable machine-readable error code for client branching

string
fieldErrors

First validation message per field path

object
key
additional properties
string
issues

Structured validation issues (Zod)

Array<object>
object
path
required
string
message
required
string
retryAfter

Seconds until rate limit resets (429 responses)

number
reconnect

True if re-linking GitHub may fix the issue

boolean

Forbidden

Media type application/json
object
error
required

Human-readable error message

string
code

Stable machine-readable error code for client branching

string
fieldErrors

First validation message per field path

object
key
additional properties
string
issues

Structured validation issues (Zod)

Array<object>
object
path
required
string
message
required
string
retryAfter

Seconds until rate limit resets (429 responses)

number

Not found

Media type application/json
object
error
required

Human-readable error message

string
code

Stable machine-readable error code for client branching

string
fieldErrors

First validation message per field path

object
key
additional properties
string
issues

Structured validation issues (Zod)

Array<object>
object
path
required
string
message
required
string
retryAfter

Seconds until rate limit resets (429 responses)

number

GitHub sync health unavailable

Media type application/json
object
error
required

Human-readable error message

string
code

Stable machine-readable error code for client branching

string
fieldErrors

First validation message per field path

object
key
additional properties
string
issues

Structured validation issues (Zod)

Array<object>
object
path
required
string
message
required
string
retryAfter

Seconds until rate limit resets (429 responses)

number