Skip to main content

Options

string
required
The commit SHA to get the diff for
string
Base commit SHA to compare against. If not specified, compares against the commit’s parent(s)
boolean
When enabled, concatenate files[].raw in response order and apply the result against the selected base with git apply. Changes listed in filteredFiles are not included in the patch. Defaults to false, preserving review-oriented whitespace suppression.
string
Array of file paths to filter the diff. When provided, only returns diffs for the specified files and bypasses size/type filtering

Response

object
Summary with files, additions, deletions, and changes
array
List of changed files with path, oldPath, state, rawState, and diff content
array
List of filtered files returned as metadata only (for example path, oldPath, state, rawState, bytes, and isEof) without diff content

Notes

  • For renamed files, path is the new location and oldPath is the previous location
  • state is normalized to renamed, while rawState preserves Git’s original rename code (for example R054, where 054 is the similarity score)
  • Rename detection follows Git’s default similarity threshold of 50%
  • When gitApplyCompatible is enabled, concatenate files[].raw in response order and apply the result against the selected base with git apply. Changes listed in filteredFiles are not included in the patch

Additional Notes

  • Large files (>500KB) or files with too many changes (>2000 lines) are included in filtered_files without diff content
  • Binary files and lock files are automatically filtered
  • When path is specified, size and type filtering is bypassed—requested files are always returned with full diff content