---
title: "POST /v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks"
method: POST
path: "/v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks"
tags: ["projects"]
---

# POST /v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks

`POST /v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks`

## Request

- Base URL: `https://developerconnect.googleapis.com`
- URL: `https://developerconnect.googleapis.com/v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks`
- Auth: OAuth 2 and OAuth 2
  - Implicit: `https://accounts.google.com/o/oauth2/auth`
  - Scopes: `https://www.googleapis.com/auth/cloud-platform`
  - Authorization code: `https://accounts.google.com/o/oauth2/auth`
  - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/cloud-platform`

Creates a GitRepositoryLink. Upon linking a Git Repository, Developer Connect will configure the Git Repository to send webhook events to Developer Connect. Connections that use Firebase GitHub Application will have events forwarded to the Firebase service. Connections that use Gemini Code Assist will have events forwarded to Gemini Code Assist service. All other Connections will have events forwarded to Cloud Build.

## Path parameters

- `projectsId` string, required
- `locationsId` string, required
- `connectionsId` string, required

## Query parameters

- `gitRepositoryLinkId` string
- `requestId` string
- `validateOnly` boolean

## Request body

- GitRepositoryLink: Message describing the GitRepositoryLink object
  - `annotations` object: Optional. Allows clients to store small amounts of arbitrary data.
  - `cloneUri` string: Required. Git Clone URI.
  - `createTime` string, google-datetime: Output only. Create timestamp.
  - `deleteTime` string, google-datetime: Output only. Delete timestamp.
  - `etag` string: Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
  - `gitProxyUri` string: Output only. URI to access the linked repository through the Git proxy. This field is only populated if the Git proxy is enabled for the connection.
  - `labels` object: Optional. Labels as key value pairs
  - `name` string: Identifier. Resource name of the repository, in the format `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.
  - `reconciling` boolean: Output only. Set to true when the connection is being set up or updated in the background.
  - `uid` string: Output only. A system-assigned unique identifier for the GitRepositoryLink.
  - `updateTime` string, google-datetime: Output only. Update timestamp.
  - `webhookId` string: Output only. External ID of the webhook created for the repository.

## Response `200`

Successful response

- Operation: This resource represents a long-running operation that is the result of a network API call.
  - `done` boolean: If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  - `error` Status: The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
    - `code` integer: The status code, which should be an enum value of google.rpc.Code.
    - `details` object[]: A list of messages that carry the error details. There is a common set of message types for APIs to use.
    - `message` string: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  - `metadata` object: Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
  - `name` string: The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  - `response` object: The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

---

[API](https://skmtc.dev/google/apis/developerconnect.md) - [All operations](https://skmtc.dev/google/apis/developerconnect/llms.txt) - [OpenAPI document](https://skmtc.dev/google/apis/developerconnect/revisions/2f1551e5d3d6?raw)
