

Connect
One credential on the Google Agents tab covers every Dialogflow CX and CES agent in the project.1
Save a Google credential
In Bluejay, open Settings → Integrations and choose the Google Agents tab. Use keyless access unless you only want a quick trial. No key exists, so no key can leak. If you save more than one credential, Bluejay uses the access token first, then keyless, then the key.
- Keyless
- Access token
- Service account key
Run the script in Keyless setup and paste the four values it prints.
2
Sync the agents
Click Sync Agents from Google. Bluejay creates one agent for each Dialogflow CX agent and each CES deployment. Sync again after you add agents in Google.
projects/<project>/locations/<location>/agents/<agentId>.
Add an agent the sync misses
An access token that can open an agent but not list its location leaves that agent out of the sync. Open Can’t find an agent? Add it by Dialogflow CX agent ID and enter any of these, separated by commas:- The agent ID, a UUID such as
6a1b2c3d-4e5f-4a7b-8c9d-0e1f2a3b4c5d. - The resource path,
projects/<project>/locations/<location>/agents/<agentId>. - The agent’s Dialogflow CX console URL.
Permissions
The keyless setup script grants the read and run roles. To push, version, or promote from Bluejay, also grant the write permissions.Keyless setup
The script creates a service account with no keys in your project, and only your Bluejay tenant can use it. To run it, you need the Owner role on the project, or Workload Identity Pool Admin, Service Account Admin, and Project IAM Admin.1
Write the script in Cloud Shell
In Cloud Shell, paste this block. It only writes
bluejay-wif.sh, so you can read the file before you run it.bluejay-wif.sh
bluejay-wif.sh
2
Run the script
Copy Your Bluejay tenant id from the Keyless tab, and run the script with it and your project ID. Add The script waits until Google applies the roles, usually 1 to 3 minutes, then prints four values. If the tenant ID has a typo, every token exchange fails with
--ces if you also use CES agents.Could not obtain a federated token.3
Paste the values
Paste the four values into the Keyless fields and click Save & test connection. None of them is secret. The test checks the token exchange, the impersonation, and the Dialogflow CX read roles, but not CES.
gcloud iam workload-identity-pools delete bluejay --location=global.
Terraform
Terraform
To manage keyless access in Terraform, apply these files in your own repository. They create the same resources as the script.Paste the three outputs and your project ID into Bluejay. Terraform does not wait for Google to apply the roles, so Test connection can fail for a few minutes. The
storage and bigquery options grant read access to the whole project.Test
The connection type on the agent decides whether you test by voice or by chat. In both, Bluejay replies{"status": "ok"} to each client-side tool call.
- Voice
- Chat
Choose the Dialogflow CX voice tile. Voice tests need no phone number and work for inbound agents only.Use Generate From Workflow so that each path in the agent gets a test, not only the main path. It makes Digital Humans from the flows, event handlers, and playbooks, including paths across handoffs.



Edit, version, and promote
Versions and deployments that you make in Bluejay are real Dialogflow CX versions and deployments.1
Pull the live agent
On the agent’s Workflow tab, click Pull to replace the local copy with the live agent.



2
Edit and push
Edit flows, pages, routes, event handlers, and playbooks, then click Push to DFCX. The push writes your edits to the agent draft. If the agent changed in Google after your last sync, Bluejay shows the conflicts first.Turn on Version on push to save a new Dialogflow CX version of each flow and playbook that the push changed. Dialogflow CX limits the number of versions for each flow.
3
Promote
Promote deploys the flow versions you select to an environment. Only admins can promote.