If someone interested in this, I solve this problem with this code:
use FluentSupport\App\Modules\PermissionManager;
function CreateNewAgentInFluentSupport($email){
$data = array();
$data['email'] = $email;
$user = get_user_by('email', $data['email']);
$data['user_id'] = $user->ID;
if (empty($data['first_name'])) {
$data['first_name'] = $user->first_name;
}
if (empty($data['last_name'])) {
$data['last_name'] = $user->last_name;
}
$permissions = array('fst_manage_own_tickets');
try {
$agentsApi = FluentSupportApi('agents');
$newAgent = $agentsApi->createAgentWithOrWithoutWpUser($data);
if (!$newAgent==false) {
PermissionManager::attachPermissions($user, $permissions);
}
else {
return 'User not created';
}
} catch (Throwable $e) {
return 'Get error: '.$e->getMessage();
}
}