C F Rey
C F Rey2w ago

Import human users with the v2 API not working as expected

Environment: Zitadel Cloud Version: v4.3.3 We currently use the v1 APIs to create human users. The call to /management/v1/users/human/_import works as expected and the user receives an initialization email if the email address is not marked as verified or if no password is set. The issue is that the link that the user receives by mail uses the "raw" instance domain and not the custom domain, which makes it look weird/unprofessional. The v2 endpoint for user creation /v2/users/new doesn't send an initialization email, and no verification email is sent either (which I assume is a bug). The verification email can be sent with a separate API call (email sending is properly configured and otherwise works correctly). The verification email (when it gets sent) uses the human-friendly custom domain for links (yay !), but doesn't fill the same use case as the v1 initialization email, in my opinion. Is there any way to use the v2 APIs and have the initialization email sent with a link that uses a custom domain ?
2 Replies
Ask Inkeep
Ask Inkeep2w ago
Hi @C F Rey, I'm an AI assistant for ZITADEL. While a team member reviews this question, I'll see if I can find relevant sources for your question. Answer I wasn't able to find a direct answer, here are some relevant sources: 1. Resend User Initialization Email (1) : This v1 API endpoint allows resending initialization emails for human users, which could be used as a workaround after creating users with v2 APIs. 2. Migrate from v1 APIs to v2 APIs (2) : This guide explains the architectural changes between v1 and v2 APIs, including how v2 uses a resource-based approach rather than use-case based APIs. ​ To learn more, see the sources I considered: [1] Resend User Initialization Email [2] Migrate from v1 APIs to v2 APIs ​ Feel free to tag @Ask Inkeep with additional questions.
C F Rey
C F ReyOP7d ago
I see now that there are v2 endpoints that handle invitation codes. I was focused on the verification (v2) and initialization (v1) and did not notice this at first. The issue remains that the custom domain is not used in the invitation email (the link to "Accept invite") whereas it is used in the Verify emails. Do you plan to fix this or is there a workaround ?

Did you find this page helpful?