Hey everyone, thanks Josh for the other thread on state management - really helpful stuff. Been trying to automate import of our Zoom Contact Center flows into Terraform state, part of a larger DR exercise, and hitting a snag. The goal is to have a Terraform representation of our existing flows, so we can manage changes declaratively.
The genesyscloud_architect_flow resource import command - using Terraform v1.6.6 and provider v3.73.0 - is failing with “invalid flow ID”. Now, the ID itself is correct - I’ve confirmed it in the Zoom Contact Center admin interface, and it matches what’s returned from the /api/v2/architect/flows/{flowId} GET request. It’s a straightforward GET. The flowId is a UUID, so it looks something like a1b2c3d4-e5f6-7890-1234-567890abcdef.
I’m running the import like this: terraform import genesyscloud_architect_flow.example a1b2c3d4-e5f6-7890-1234-567890abcdef. The flow itself is pretty simple - a greeting, a disconnect, that’s literally it. No complex logic. I suspect something about how the ID is handled internally by the provider. It’s not a permissions issue, I’ve verified the API key has appropriate read access. The resource doesn’t exist within terraform state currently - that’s the whole point of the import. It’s not trying to update an existing resource; it’s attempting to create a managed resource.
The API call itself returns a 200 OK with the full flow definition. Which makes this all the more confusing. Is the import process using a different endpoint or authentication method than a standard API call? The documentation isn’t super clear on the specific requirements for the import functionality.