---
title: "Internal endpoint that posts git-receive-pack for git push"
method: POST
path: "/api/v4/geo/proxy_git_ssh/receive_pack"
tags: ["geo"]
---

# Internal endpoint that posts git-receive-pack for git push

`POST /api/v4/geo/proxy_git_ssh/receive_pack`

## Request

- Base URL: `https://gitlab.com`
- URL: `https://gitlab.com/api/v4/geo/proxy_git_ssh/receive_pack`
- Auth: none declared

Responsible for making HTTP POST /repo.git/info/refs?service=git-receive-pack
                  request from secondary gitlab-shell to primary

## Request body

- PostApiV4GeoProxyGitSshReceivePack: Responsible for making HTTP POST /repo.git/info/refs?service=git-receive-pack request from secondary gitlab-shell to primary
  - `secret_token` string, required: Secret token used to authenticate requests from gitlab-shell to Geo proxy endpoints
  - `data` object, required: Object that contains the payload data for the Geo operation
    - `gl_id` string, required: ID of the user performing the operation
    - `primary_repo` string, required: Primary repository to push to
  - `output` string, required: Output from git-receive-pack

## Response `200`

Responsible for making HTTP POST /repo.git/info/refs?service=git-receive-pack
                  request from secondary gitlab-shell to primary

## Other responses

- `401`: 401 Unauthorized

---

[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)
