Skip to main content
POST
Pull changes from GitHub

Authorizations

api_key
string
header
required

Personal API key.

Path Parameters

app_id
string
required

ID of the app whose GitHub sync this affects.

Response

The outcome of the pull.

Outcome of a pull from the connected repository.

synced
boolean
required

Whether this call applied new commits to the app.

Example:

true

already_up_to_date
boolean
required

true when the repository's head was already the last commit Base44 pulled, so there was nothing to do.

Example:

false

commits_pulled
integer
required

How many commits commits holds, so commits Base44 pushed itself aren't counted. 0 when nothing was pulled.

Example:

2

latest_commit_hash
string | null

Repository head after the pull, or null when nothing was pulled.

Example:

"4c7e1f90ab3d5628e1a0f7b24c9d8e6350a1b2c4"

commits
GitHubPulledCommit · object[]

The commits this call applied, oldest first. Commits Base44 pushed itself are left out, so a pull of only those comes back with an empty list.

Example:
files_summary
GitHubPulledFiles · object | null

Change counts for the pulled commits, or null when nothing was pulled.

error
string | null

Why the pull didn't happen, or null when it succeeded. One of not_connected, no_installation, sync_in_progress, connection_error, merge_conflict, sandbox_sync_failed, rate_limit_exceeded, rate_limit_low, github_api_error or unexpected_error.

Example:

"merge_conflict"

error_message
string | null

Human-readable explanation of error, or null when the pull succeeded.

Example:

"Merge conflict while applying the pulled commits"

duration_ms
integer | null

How long the pull took, in milliseconds. null when Base44 recorded no duration for it.

Example:

4120