---
title: "Update a file in a repository"
method: PUT
path: "/api/v4/projects/{id}/repository/files/{file_path}"
tags: ["files"]
---

# Update a file in a repository

`PUT /api/v4/projects/{id}/repository/files/{file_path}`

## Request

- Base URL: `https://gitlab.com`
- URL: `https://gitlab.com/api/v4/projects/{id}/repository/files/{file_path}`
- Auth: none declared

Updates a specified file in a repository. Use the Commits API to update multiple files with a single request.

## Path parameters

- `id` string, required
- `file_path` string, required

## Request body

- PutApiV4ProjectsIdRepositoryFilesFilePath: Update a file in a repository
  - `file` string, binary, required: The file content to be updated (generated by Multipart middleware)

## Response `200`

Update a file in a repository

---

[API](https://skmtc.dev/gitlab/apis/gitlab-api.md) - [All operations](https://skmtc.dev/gitlab/apis/gitlab-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gitlab/apis/gitlab-api/revisions/b234947ef3f2?raw)
