Thanks Rukshan, appreciate the pointers - thank you.
Original Message:
Sent: 01-27-2026 18:03
From: Rukshan Tennakoon
Subject: Strategy for replicating one Genesys Cloud org to another?
Hi James,
I'll keep this simple and share how we actually got started.
1. Start with individual objects
We began by using Terraform to create basic objects like:
Queues
Data tables
Skills, roles, etc.
Usually this started from a spreadsheet when a new project kicked off. This alone saved us a lot of time compared to creating everything manually in the UI.
2. Faster Architect work
Once those base objects existed:
Building Architect flows became much faster
Most dependencies were already in place
Changes were easier - update the "master" files and re-run CX as Code
3. Architect flows and scripts
Next, we started exporting Architect flows from a source org and importing them into a target org.
For some teams, this can also be a starting point, depending on the problem they're trying to solve.
4. Automation (longer-term)
Later, we added GitHub pipelines and automation. This adds a lot of value long-term, but it does require more upfront effort.
Which step makes sense first really depends on your current pain points - environment setup, user access, DR, etc.
Hope this helps. Feel free to reach out if you want to chat further.
-
Rukshan
------------------------------
Rukshan Tennakoon
Director of Service Delivery
Original Message:
Sent: 01-27-2026 09:09
From: James Dunn
Subject: Strategy for replicating one Genesys Cloud org to another?
I'm struggling to envision how I can apply this to our day-to-day workflow. I've been able to install Terraform, used it to export the users list, created a test Call Routing thing etc - to get a general concept of it. But, to take it beyond that, I'm a little hazy.
Presumably there aren't any orgs that do everything in Terraform. So how are people keeping their "Terraform environment" in sync with what's actually in production?
Or do you do it on a more granular level, e.g. develop a flow in a lower environment and solely move that one flow? But don't touch the rest of the system?
In one of the DevDrop videos it shows adding a user, then adding a user to a queue. I'm just struggling to really understand the best use cases here.
------------------------------
James Dunn
Telecoms Specialist
Original Message:
Sent: 01-26-2026 16:35
From: Cesar Goncalves de Giao Mi
Subject: Strategy for replicating one Genesys Cloud org to another?
I started with a book "Terraform Up & Running", then Genesys docs: CX as Code and finally the registry: Docs overview | MyPureCloud/genesyscloud | Terraform | Terraform Registry.
------------------------------
Cesar Goncalves de Giao Mi
Lead Professional Services Engineer
Original Message:
Sent: 01-26-2026 07:42
From: James Dunn
Subject: Strategy for replicating one Genesys Cloud org to another?
If you don't mind me asking, how did you get started with Genesys Cloud & Terraform? I've not really tried it at all and have no experience of Terraform, but it's something I want to explore to understand the value of. But, there doesn't seem to be any "total beginner" documentation out there, most of it assumes some level of Terraform knowledge.
------------------------------
James Dunn
Telecoms Specialist
Original Message:
Sent: 01-24-2026 14:09
From: Rukshan Tennakoon
Subject: Strategy for replicating one Genesys Cloud org to another?
Hi Paul,
We've actually done this in practice across multiple Genesys Cloud orgs, and your concerns are very valid.
At a high level, our approach is not asking admins to author YAML by hand or rebuild environments from scratch. Instead, we focus on bringing the as-built org under management first, then replicating from there.
1. Capturing the as-built configuration (no manual authoring required)
Rather than starting with hand-written Terraform files, we use a Python-based approach alongside CX as Code to inventory the source org. Existing, manually-created resources are brought under Terraform control using terraform import. This allows Terraform to reference the actual state of the org, instead of assuming users are editing files locally first (which, as you pointed out, is unrealistic for most GC admins).
Once imported, Terraform becomes the system of record, and changes can then be promoted to other orgs in a controlled way.
2. Handling dependencies (Architect flows, prompts, data actions, etc.)
Dependencies are the hard part, and treating flows in isolation doesn't work in real-world Architect usage.
What we've done instead is:
Build an ordered export/import process that understands dependencies (prompts → data actions → modules → flows).
Replicate all dependent artifacts together, rather than trying to deploy a single flow blueprint.
Avoid forcing Architects to write YAML-flows are still authored in Architect, not code.
You're also correct that Archy today is much stronger for push than pull. We don't rely on publish events or EventBridge either; instead, we periodically inventory flows and related objects directly via APIs and align Terraform state accordingly.
Net result:
No requirement for admins to become Terraform authors
Existing orgs can be captured as-is
Full environments (not just toy flows) can be replicated between orgs
Terraform is used as a control and promotion mechanism, not a design tool
Happy to go deeper on any of those areas if it helps-this is a space where the "happy path" docs don't really reflect production reality.
Rukshan Tennakoon
CTO at Tykans Group Inc.
~Revolutionizing the future of Contact Centers~
------------------------------
Rukshan Tennakoon
Director of Service Delivery
Original Message:
Sent: 05-13-2025 15:07
From: Paul McGurn
Subject: Strategy for replicating one Genesys Cloud org to another?
I'm trying to piece together a general strategy for replpicating environments. I know Terraform can be used for some of this, but I'm struggling on a few bits.
- The CX as Code documentation presumes the author is editing files locally and pushing to Terraform, either directly, or vis a source control automation. How can we tell Terraform to look at the as-built configuration of one Genesys org, rather than a bunch of text files? My concdern is users skipping the file part of this, because typical GCCX admins aren't writing code, they are clicking things.
- How are dependencies handled? Example, an architect flow has dependencies on prompts, common modules, data actions, bot flows, other flows, etc. Those need to be replicated as well or a publish would fail.
The only documentation I could find is a blueprint for deploying a single, extremely basic Architect flow. That is not a real-world use case, as Architect Flow authors are not writing flows in YAML for anything even remotely complex, they are using Architect. I also couldn't find documentation on using Archy to pull flows out of Genesys, only to push TO Genesys. The former might be how we'd feed a whole inventory of flows to Terraform on a schedule (since flow publish events are limited to AWS Event Bridge, which we can't easily use).
#CXasCode
------------------------------
Paul McGurn
Senior Manager, Telecom & DevOps
Persistent Systems
------------------------------