Search code examples
wso2wso2-identity-server

WSO2 - Identity Server - Sending SMS on self user registration by API


I am calling /api/identity/user/v1.0/me API of WSO2 identity server 6.1.0 in order to self register a user, i added:

{ "uri": "http://wso2.org/claims/identity/preferredChannel", "value": "SMS" }

to the body claims. I also added SMS to Manage Self-Sign-Up purposes under user onboarding > self registration service provider resident configuration. In addition, User self registration is checked and Lock user account on creation is checked as well. By it is still attempting to send an email on user creation. What else should i change in order to get a verification code by SMS?

Under deployment.toml i have the following:

#[identity_mgt.user_self_registration]
default_notification_channel = "SMS"
enable_resolve_notification_channel = true


[identity_mgt.user_self_registration]
allow_self_registration=true
lock_on_creation=true
enable_recaptcha=true
verification_email_validity="1440"
callback_url="[${carbon.protocol}://${carbon.host}:${carbon.management.port}].*    [/authenticationendpoint/login.do]*"
enable_resend_confirmation_recaptcha=true

[identity_mgt.user_self_registration.notification]
manage_internally=true

Solution

  • Your issue is with the following config

    #[identity_mgt.user_self_registration]
    default_notification_channel = "SMS"
    enable_resolve_notification_channel = true
    

    Those should be corrected as follows:

    [identity_mgt.notification]
    default_notification_channel = "SMS"
    resolve_notification_channel = true
    

    enable_resolve_notification_channel should be renamed as resolve_notification_channel. And the header property inside the square brackets should be [identity_mgt.notification]

    Follow https://medium.com/p/fb59e6465631 this article for more details