How to create users while registering with different roles via API?

Hello everyone,
I’m sorry, there were some errors in my previous script.

the correct user.register.post.post_process is:

var lodash = require("lodash.min.js");

var role1Id = 5;
var role2Id = 6;

var appVendorId = 5;
var appCustomerId = 6;

if (!!event.request.payload.type && !!platform.session.user) {
  
  var userObject = platform.api.get('system/user/'+platform.session.user.id+'?related=user_to_app_to_role_by_user_id');
  
  lodash._.each(userObject.content.user_to_app_to_role_by_user_id, function(userApp) {
    switch (event.request.payload.type) {
      case 'customer':
        if (userApp.app_id === appCustomerId) {
          userApp.role_id = role1Id;
        }
        break;
      case 'vendor':
        if (userApp.app_id === appVendorId) {
          userApp.role_id = role2Id;
        }
        break;
     }
  });

  var req = platform.api.patch('system/user/'+platform.session.user.id+'?related=user_to_app_to_role_by_user_id', userObject.content);
  
}

And I create role named “public”, and assigned role on service User > open registration role, And assigned public role on default role App.

On public role, Assign access to:

service: system
component: user/*
access: GET, PATCH
requestor: SCRIPT

Thats, it. Works fine. :wink:

1 Like