Skip to content

Sync the Git source of a Compose Project now

POST
/api/docker/nodes/{nodeId}/compose-projects/{projectId}/source/sync
curl --request POST \
--url https://gateway.example.com/api/docker/nodes/550e8400-e29b-41d4-a716-446655440000/compose-projects/550e8400-e29b-41d4-a716-446655440000/source/sync \
--header 'Authorization: Bearer <token>'

Checks the source branch for a new commit now instead of waiting for the next poll or webhook: one poll iteration for this source, also when automatic builds are off. The head is resolved with the connector credentials and recorded as the desired commit; a poll build is queued only when the source builds automatically and the head changed or has no build yet. Returns { source, changed, build } (build is null when nothing was queued). Within about 10 seconds of the previous poll or sync the current state is returned without asking the Git provider. Requires the same scope as a manual build; no integrations::use is needed. Requires docker:compose:manage on the Compose Project.

nodeId
required
string
>= 1 characters
Example
550e8400-e29b-41d4-a716-446655440000
projectId
required
string
>= 1 characters
Example
550e8400-e29b-41d4-a716-446655440000

Successful response

Media typeapplication/json
object
data
required

Resource object. Exact fields depend on the endpoint.

object
id
string
name
string
key
additional properties
Example
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Example resource",
"createdAt": "2024-01-01T12:00:00.000Z",
"updatedAt": "2024-01-01T12:30:00.000Z"
}
}

Bad request

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "VALIDATION_ERROR",
"message": "Request validation failed",
"details": [
{
"path": [
"name"
],
"message": "Required"
}
]
}

Authentication required

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "UNAUTHORIZED",
"message": "Authentication required"
}

Forbidden

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "FORBIDDEN",
"message": "Insufficient permissions"
}

Not found

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "NOT_FOUND",
"message": "Resource not found"
}

Conflict

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "CONFLICT",
"message": "Resource already exists"
}

Unprocessable entity

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "UNPROCESSABLE_ENTITY",
"message": "Request could not be processed"
}

Internal server error

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "INTERNAL_ERROR",
"message": "Internal server error"
}

The Git provider refused or failed the check (SOURCE_SYNC_FAILED); the error is kept as the last poll error.

Media typeapplication/json
object
code
required

Error code

string
message
required

Human-readable error message

string
details

Additional error details

Example
{
"code": "VALIDATION_ERROR",
"message": "Request validation failed"
}