# Prerequisites

Make sure you fulfill the following prerequisites before using the Google Cloud Pub/Sub endpoint in a replication task.

## Permissions

Before you can use Google Cloud Pub/Sub as a target endpoint in a Replicate task, you need to set the following permissions:

### Topics

* pubsub.topics.create on the containing Cloud project (only required if you want Replicate to create topics when no topics exists)
* pubsub.topics.delete on the requested topic
* pubsub.topics.get on the requested topic
* pubsub.topics.list on the requested Cloud project
* pubsub.topics.publish on the requested topic

### Subscriptions

* pubsub.subscriptions.create on the containing Cloud project (only required if you want Replicate to create a default subscription per topic when no subscription exists)
* pubsub.subscriptions.delete on the requested subscription
* pubsub.subscriptions.get on the requested subscription
* pubsub.subscriptions.list on the requested Cloud project

## Authentication

You can authenticate using a service account key or using Application Default Credentials (ADC). You need to set up the desired authentication method before configuring the endpoint.

* Service account key (JSON): For information on creating a service account key, see [Create and delete service account keys](https://cloud.google.com/iam/docs/creating-managing-service-account-keys "How to create a service account key")

* Application Default Credentials (ADC): For information on setting up Application Default Credentials, see [How Application Default Credentials works](https://cloud.google.com/docs/authentication/application-default-credentials "Describes how to set up ADC")