---
id: "google-private-service-connect"
type: "component"
kind: "private-link"
provider: "gcp"
category: "edge"
aliases: "PSC"
docs: "https://cloud.google.com/vpc/docs/private-service-connect"
url: "https://localhost:3000/catalogue/components/google-private-service-connect"
---

# Private Service Connect

Internal endpoint that reaches a published service or Google API privately.

| | |
|---|---|
| Provider | [gcp](https://localhost:3000/catalogue?provider=gcp) |
| Kind | [Private endpoint](https://localhost:3000/catalogue/kinds/private-link) |
| Category | Edge |
| Official docs | [https://cloud.google.com/vpc/docs/private-service-connect](https://cloud.google.com/vpc/docs/private-service-connect) |
| Also known as | PSC |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `approvalRequired` | boolean | — | no | — | inherited |
| `connectionPreference` | enum | `accept-automatic`, `accept-manual` | no | — | inherited |
| `crossRegion` | boolean | — | no | false | **false** |
| `endpointCount` | integer | — | no | — | inherited |
| `managed` | boolean | — | no | false | **true** |
| `privateDnsIntegration` | boolean | — | no | — | **true** |
| `publicAccessDisabled` | boolean | — | no | — | inherited |
| `target` | enum | `google-apis`, `published-service` | no | "published-service" | inherited |

Bold values are the ones this component pins.

## Rules that apply · 0

No rule selects this kind or its category.

## Other products of the same kind · 13

- [PrivateLink](https://localhost:3000/catalogue/components/alibaba-privatelink.md) `alibaba-privatelink` — alibabacloud
- [PrivateLink endpoint service](https://localhost:3000/catalogue/components/aws-privatelink-service.md) `aws-privatelink-service` — aws
- [AWS RTB Fabric gateway](https://localhost:3000/catalogue/components/aws-rtb-fabric.md) `aws-rtb-fabric` — aws
- [AWS PrivateLink VPC endpoint](https://localhost:3000/catalogue/components/aws-vpc-endpoint.md) `aws-vpc-endpoint` — aws
- [Azure Private Link](https://localhost:3000/catalogue/components/azure-private-link.md) `azure-private-link` — azure
- [Cloudflare Tunnel](https://localhost:3000/catalogue/components/cloudflare-tunnel.md) `cloudflare-tunnel` — cloudflare
- [Workers VPC](https://localhost:3000/catalogue/components/cloudflare-workers-vpc.md) `cloudflare-workers-vpc` — cloudflare
- [Generic private endpoint](https://localhost:3000/catalogue/components/private-link.md) `private-link` — default
- [Serverless VPC Access connector](https://localhost:3000/catalogue/components/google-serverless-vpc-access-connector.md) `google-serverless-vpc-access-connector` — gcp
- [Virtual Private Endpoint Gateway](https://localhost:3000/catalogue/components/ibm-virtual-endpoint-gateway.md) `ibm-virtual-endpoint-gateway` — ibm
- [Private Endpoint](https://localhost:3000/catalogue/components/oci-private-endpoint.md) `oci-private-endpoint` — oci
- [Service Gateway](https://localhost:3000/catalogue/components/oci-service-gateway.md) `oci-service-gateway` — oci
- [OUTSCALE Net access point](https://localhost:3000/catalogue/components/outscale-net-access-point.md) `outscale-net-access-point` — outscale

## Use it in a design

```yaml
nodes:
  - { id: "google-private-service-connect", component: "google-private-service-connect" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# Private Service Connect endpoint: an internal IP address in a consumer VPC network that reaches a published service or a Google API without leaving Google Cloud.
# Defaults from "Private Service Connect" and "Access published services through endpoints": private DNS entries are created automatically, global access is disabled so only same-region, same-network clients reach the endpoint.
schemaVersion: "1"
type: "component"
id: "google-private-service-connect"
kind: "private-link"
provider: "gcp"
docs: "https://cloud.google.com/vpc/docs/private-service-connect"
aliases: ["PSC"]
defaults:
  managed: true
  privateDnsIntegration: true
  crossRegion: false
properties:
  target:
    type: "enum"
    values: ["google-apis", "published-service"]
    default: "published-service"
  connectionPreference:
    type: "enum"
    values: ["accept-automatic", "accept-manual"]
```

Human page: https://localhost:3000/catalogue/components/google-private-service-connect
