v68

latestOpenAPI 3.0.3MITraw.githubusercontent.com2026-08-011,21696712.3 MB
repos

Create or update file contents

Creates a new file or replaces an existing file in a repository.

[!NOTE] If you use this endpoint and the "Delete a file" endpoint in parallel, the concurrent requests will conflict and you will receive errors. You must use these endpoints serially instead.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint. The workflow scope is also required in order to modify files in the .github/workflows directory.

put/repos/{owner}/{repo}/contents/{path}

Path parameters

ownerstring required

The account owner of the repository. The name is not case sensitive.

repostring required

The name of the repository without the .git extension. The name is not case sensitive.

pathstring required

path parameter

Request body

messagestring required

The commit message.

contentstring required

The new file content, using Base64 encoding.

shastring

Required if you are updating a file. The blob SHA of the file being replaced.

branchstring

The branch name. Default: the repository’s default branch.

Example request

{
  "committer": {
    "date": "\"2013-01-05T13:13:22+05:00\""
  },
  "author": {
    "date": "\"2013-01-15T17:13:22+05:00\""
  }
}

Response

Response