Restore a deleted repository
Restore a deleted repository at the address it had, as it was when it was deleted: git data, issues, pull requests, settings, secrets and webhooks.
POST
/repos/{owner}/{name}/restoreOwners only. Its deployments are built again. Agents and workflows do not catch up on what they missed while it was deleted.
The repository, back at its address. Name it by the path it had. Owners only (403); 404 when no deleted repository had that path, or it has been purged. See Restore a repository.
- Authentication: Required. Send an access token as
Authorization: Bearer. - MCP tool:
restore_repo, with the same inputs
Path parameters
Section titled “Path parameters”| Name | Type | Required | Description |
|---|---|---|---|
owner |
string | Yes | The workspace that owns the repository. |
name |
string | Yes | The repository’s name. |
Example request
Section titled “Example request”curl -X POST https://api.g1t.sh/repos/flagon-io/hello/restore \ -H "Authorization: Bearer $G1T_TOKEN"Example response
Section titled “Example response”A successful request answers 200 with:
{ "id": "rep_01m3m5q6p0e2qaw6mmjahk0qrr", "namespace": "flagon-io", "name": "hello", "description": "A tiny service that says hello.", "is_private": false, "owner_id": "usr_01kkntcg1eeb98j62xjm7eh09p", "default_branch": "main", "fork_of": null, "protected": true, "created_at": "2026-09-28T14:11:52.640Z", "topics": [ "http", "example" ], "website": "https://hello.g1t.page", "archived_at": null}Errors
Section titled “Errors”A failed request answers with one of these statuses and a body like {"error": {"code": "not_found", "message": "Repository not found."}}. See errors.
| Status | Code | When |
|---|---|---|
| 401 | unauthenticated |
A token is required, or the one sent is not valid. |
| 403 | forbidden |
The token is valid but not allowed to do this, such as a member-only change or an agent token outside its repository. |
| 404 | not_found |
It does not exist, or you cannot see it. |
| 409 | conflict |
The request conflicts with the current state. |
| 422 | invalid |
The input is not valid. message says which field and why. |