Getting a service-account JSON
- In the Google Cloud Console, select or create a project.
- Enable the APIs you need — Cloud Text-to-Speech for voice, Cloud Speech-to-Text for transcription.
- Go to IAM & Admin → Service Accounts and create one.
- Open its Keys tab, choose Add Key → Create new key, and select JSON.
- The file downloads once. Store it securely and treat it as a secret.
private_key and client_email — do not extract individual values from it.
Adding the connection
- Go to Connections and choose Google Cloud.
- Use Upload JSON to attach the service-account file.
- Choose which services this connection drives — TTS, STT, or both.
- Save.
Using separate service accounts for voice and transcription
One connection can drive both services, but they do not have to share a credential. To keep them apart — separate projects, quotas, or regions — add a second Google Cloud connection with its own label and service account, then pick which connection each service uses on Model Configurations.What you can select afterwards
Choose your models on Model Configurations. Voice — pick from the dropdown, or enter a fully-qualified Google Cloud voice ID rather than a short name. Google’s voice list has samples. Language — Google Cloud uses BCP-47 codes, such asar-XA and cmn-CN. Set it to match your callers. See Google’s supported languages.
Related providers
Troubleshooting
Voice or transcription fails after adding the JSON
Voice or transcription fails after adding the JSON
Confirm the matching API is enabled on the project — Cloud Text-to-Speech for voice, Cloud Speech-to-Text for transcription. A valid service account for a project without the API enabled fails at call time.
A voice ID is rejected
A voice ID is rejected
Google Cloud expects its own fully-qualified voice identifiers and BCP-47 language codes. Copy the exact ID from Google’s voice list rather than typing a short name.
The service-account key will not upload
The service-account key will not upload
Make sure it is the JSON file, not P12, and that you pasted the whole file contents rather than a single field from it.
I have an API key, not a service account
I have an API key, not a service account
An AI Studio API key belongs on the Gemini connection and drives the language model. Google Cloud speech does not accept one.