What is the correct way to migrate Zendesk custom fields to Genesys Cloud via the Platform API?

What is the standard approach to map our legacy Zendesk ticket attributes to Genesys Cloud interaction attributes during a bulk migration? We are currently using the POST /api/v2/architect/flows endpoint to update flow configurations, but the custom attribute mapping seems to be ignored when the flow is deployed.

We have identified that Zendesk uses a flat key-value structure for custom fields, whereas Genesys Cloud expects a specific type definition within the flow schema. When we attempt to push the configuration using our migration script (Python 3.9, genesys-cloud-sdk-python v2.1.0), the API returns a 200 OK but the attributes do not appear in the UI or subsequent webhooks.

Steps to reproduce:

  1. Create a new Zendesk custom field named customer_tier.
  2. Map this field to a Genesys Cloud custom attribute of type String in the Architect flow JSON.
  3. Execute the PUT /api/v2/architect/flows/{flowId} request with the updated schema.
  4. Trigger a test interaction and inspect the payload in the Interaction Debugger.

The attribute is missing from the context. Is there a separate API call required to register the attribute definition before referencing it in the flow? Our timezone is Europe/Paris, and we are seeing this behavior in the eu-west-1 region.