This page compares the concepts of public and private services on Google Cloud.
Public APIs and services
Public APIs and services are globally visible across all Google Cloud projects. Examples of public Google Cloud APIs and services include:
You need the appropriate permissions to list or use public
APIs and services in a Cloud project. For example, to enable a service,
you need the
serviceusage.services.enable Identity and Access Management permission. To
learn about the required IAM permissions for
Service Usage, see
Private APIs and services
Private services are typically APIs implemented using Cloud Endpoints running in another Cloud project. To discover or use private APIs and services, you must be first be granted access by a principal with the necessary permissions. To learn how to grant access to enable Cloud Endpoints APIs from a Cloud project, see the following pages for each of the respective Cloud Endpoints API frameworks:
- Controlling Who Can Enable Your API for the OpenAPI Specification.
- Controlling Who Can Enable Your API for Endpoints Frameworks.
- Controlling Who Can Enable Your API for gRPC.
You must also have the appropriate IAM permissions to list or use
private APIs and services. For example, to call the
method for a private service, the
is required. To learn about the necessary permissions for
Service Usage, see Access Control.
When you list available or enabled APIs and services in a Cloud project , the results include any public and private APIs you have access to. To learn more about listing enabled and available services in your Cloud projects, see Listing Services.