Diff two branches the way a pull request would
GET/api/repos/{owner}/{repo}/compare
compareBranches
Returns the diff a pull request from `head` into `base` would contain: computed from the two branches' merge base rather than between their tips. Use this to preview a pull request before opening it. For a raw tree-to-tree diff between commit OIDs, use `/diff` instead. An unknown branch on either side, or a head already contained in the base, returns the empty diff rather than an error.
Authentication is not described for this operation in the spec — that does not mean it is public. Check tokens and scopes.
curl
curl -X GET 'https://neosource.dev/api/repos/OWNER/REPO/compare?base=BASE&head=HEAD'fetch
fetch("https://neosource.dev/api/repos/OWNER/REPO/compare?base=BASE&head=HEAD", {
method: "GET",
});Path parameters
ownerrequiredRepository owner or organization slug.
reporequiredRepository name.
Query parameters
baserequiredBranch the change would merge INTO (the "before" side).
headrequiredBranch carrying the change (the "after" side).
Responses
200Diff result
application/json
Standard errors
Bodies documented once for the whole API — see standard errors.
- 400Bad Request — one of: invalid_input
- 403Forbidden — one of: forbidden
- 404Not Found — one of: not_found
- 423Locked — one of: busy
- 429Rate limited — retry after the interval in the `Retry-After` header
- 500Internal server error
- 503Service temporarily unavailable / at capacity — retry after the `Retry-After` header
- 504Gateway timeout — the request exceeded the server's handling budget
Schemas
Referenced above. Listed here rather than expanded inline, so the same definition is not repeated at every level.
DiffFileStatus
"added""modified""deleted"