Merge PullRequest
Merges a pull request asynchronously. Poll operation status at the returned status_url.
Request
POST
https://api.sourcecraft.tech/repos/{org_slug}/{repo_slug}/pulls/{pull_request_slug}/merge
Path parameters
|
Name |
Description |
|
org_slug |
Type: string Example: `` |
|
pull_request_slug |
Type: string Example: `` |
|
repo_slug |
Type: string Example: `` |
Query parameters
|
Name |
Description |
|
pull_request_id |
Type: string Example: `` |
|
silent |
Type: boolean |
Body
application/json
{
"rebase": true,
"squash": true,
"delete_branch": true,
"force": true
}
|
Name |
Description |
|
delete_branch |
Type: boolean |
|
force |
Type: boolean |
|
rebase |
Type: boolean |
|
squash |
Type: boolean |
Responses
202 Accepted
A successful response.
Body
application/json
{
"operation_id": "example",
"status_url": "example",
"status": "scheduled",
"created_at": "2025-01-01T00:00:00Z",
"modified_at": "2025-01-01T00:00:00Z",
"response": {
"merge_parameters": {
"rebase": true,
"squash": true,
"delete_branch": true
},
"target_commit_hash": "example",
"merge_commit_hash": "example"
},
"error": {
"error_code": "example",
"message": "example",
"details": {}
}
}
|
Name |
Description |
|
created_at |
Type: string<date-time> Example: |
|
error |
Type: OperationError Example
|
|
modified_at |
Type: string<date-time> Example: |
|
operation_id |
Type: string Example: |
|
response |
Type: MergePullRequestOperationResult Example
|
|
status |
Type: OperationStatus Enum: |
|
status_url |
Type: string Example: |
OperationStatus
Type: string
Enum: scheduled, in_progress, success, failed, cancel
MergeParameters
|
Name |
Description |
|
delete_branch |
Type: boolean |
|
rebase |
Type: boolean |
|
squash |
Type: boolean |
Example
{
"rebase": true,
"squash": true,
"delete_branch": true
}
MergePullRequestOperationResult
|
Name |
Description |
|
merge_commit_hash |
Type: string Example: |
|
merge_parameters |
Type: MergeParameters Example
|
|
target_commit_hash |
Type: string Example: |
Example
{
"merge_parameters": {
"rebase": true,
"squash": true,
"delete_branch": true
},
"target_commit_hash": "example",
"merge_commit_hash": "example"
}
OperationError
|
Name |
Description |
||
|
details |
Type: Optional details. Exact structure depends on error_code
Example
|
||
|
error_code |
Type: string Example: |
||
|
message |
Type: string Example: |
Example
{
"error_code": "example",
"message": "example",
"details": {}
}
default
Both Client Errors (4xx) and Server Errors (5xx) are serialized into this scheme
Body
application/json
{
"error_code": "example",
"message": "example",
"request_id": "example",
"details": {}
}
|
Name |
Description |
||
|
details |
Type: Optional details. Exact structure depends on error_code
Example
|
||
|
error_code |
Type: string Example: |
||
|
message |
Type: string Example: |
||
|
request_id |
Type: string Example: |