Outbound Campaign API 400 Error: Invalid List ID during Zendesk Migration

Stuck on migrating our outbound dialing lists from Zendesk Sunshine Conversations to Genesys Cloud. We are using the v2.0 API to create campaign lists, but hitting a 400 Bad Request with error code INVALID_LIST_ID even though the list was just created successfully via the UI.

The migration script creates the list, waits for the CREATED status, and then attempts to assign it to the campaign using the list ID returned in the response. This worked fine in our sandbox, but production is rejecting it. The payload looks like this:

{
 "listId": "9f8e7d6c-5b4a-3210-fedc-ba9876543210",
 "name": "Migrated_Zendesk_Contacts",
 "description": "Imported from Zendesk"
}

Is there a delay in list availability for outbound campaigns in Genesys Cloud that differs from Zendesk’s immediate ticket assignment logic? In Zendesk, once a ticket was created, it was instantly queryable. Here, the list appears in the admin portal immediately, but the API rejects it for campaign association.

We are running this on the Europe/Paris region. The Architect flow for the call is already set up to handle the ANSWERED event, so the dialer logic isn’t the issue. It’s purely the list provisioning step.

Could this be related to the data action permissions or the way Genesys Cloud validates list schemas before allowing campaign linkage? We checked the listId format and it matches the UUID pattern. No typos. The user token has admin:campaign:write and admin:list:write scopes.

Any insights on why the API would reject a valid list ID right after creation? We need to automate this for 50k contacts, so manual UI fixes aren’t an option. Is there a specific Retry-After header or status check we are missing?

You need to verify the list ID format matches the API’s expected UUID structure, as the UI sometimes returns a display ID instead. Check the X-Genesys-Request-Id header in the creation response to ensure you are passing the correct identifier to the campaign assignment endpoint.