Admin user can't see project

Hi,

I’m having a problem with projects not being displayed in OpenRPA, even though I’m part of the admins group and can see the project in OpenFlow on the Entities page.

The project only appears to me after I access the entities page in OpenFlow, select the openrpa type, search for the project and change the acl (add or remove any user or group). Doing this in the project makes the project appear in OpenRPA, but without workflows. Then I change the acl of the workflows and they appear to me. After restarting OpenRPA I need to do the procedure again. This happens using OpenRPA with a local database or without a local database.

Can you help me?
Thanks.

Toward app.openiap.io or a self hosted openflow ?
In the latter case, what version ?
I’m not sure i understood the “with a local database or without a local database” … Are you talking about setting StorageLiteDB_enabled to true/false ?

It’s a self hosted OpenFlow, version 1.5.10.
About the local database, yes, i’m refering to StorageLiteDB_enabled.

if this happens even with StorageLiteDB_enabled set to false, then I would assume the ACL get’s “reset” inside opencore ?
Is that correct ? that you need to “re-add” the same robot users over and over again ?

If that is the case, look for a different OpenRPA robot that is running, that has the workflows and stop it ( or restart it ) … and see if that fixes the issue ?
You should never, ever run two or more robots as the same user, so you should be able to the username of the robot that is is “resetting” the ACL by looking at version history on the project or one of the workflows.

no, the admins group or a specific user still on ACL, but i can’t see the project on open rpa. only after i add or remove any user or group though the openflow that project appears on my open rpa again. and i have to remove or add any user or group to the project and to each workflow of that project.

there is no other robot on the same user.

Does the project and workflow show up in OpenRPA as soon as you update the ACL, or do you need to press refresh in OpenRPA?

If you need to press refresh, maybe the API has lost its change stream in MongoDB, so it needs a restart. Then restarting the API should fix it (either stop and start the API instance in Docker or do a docker compose down / docker compose up -d). That does NOT explain the main issue, but maybe for some weird reason I cannot explain right now, those two could be related.

As soon as i update the ACL the project/workflow appears on openrpa. I don’t need to click or do anything else.

That is odd.
can you share your settings.json file ? ( remove the wsurl username jwt and entropy field first )

{
  "use_virtual_click": true,
  "use_sendkeys": false,
  "use_postwait": "00:00:00",
  "use_animate_mouse": false,
  "updatecheckinterval": "1.00:00:00",
  "unsafepassword": null,
  "thread_lock_timeout_seconds": 10,
  "thread_exit_on_lock_timeout": false,
  "skip_online_state": false,
  "skip_child_session_check": false,
  "restore_dependencies_on_startup": false,
  "remote_allowed": true,
  "remote_allow_multiple_running_max": 2,
  "remote_allow_multiple_running": false,
  "reloadinterval": "00:05:00",
  "recording_add_to_designer": true,
  "record_overlay": true,
  "querypagesize": 50,
  "password": "",
  "otel_trace_url": "",
  "otel_trace_interval": 5000,
  "otel_metric_interval": 5000,
  "noweblogin": false,
  "notify_on_workflow_remote_start": true,
  "notify_on_workflow_remote_end": false,
  "network_message_timeout": "00:00:15",
  "move_animation_steps": 20,
  "move_animation_run_time": "00:00:00.5000000",
  "minimize": true,
  "max_workflows": 500,
  "max_trace_lines": 250,
  "max_projects": 100,
  "max_output_lines": 250,
  "mainwindow_position": "171, 194, 1756, 845",
  "log_warning": false,
  "log_verbose": false,
  "log_to_file": false,
  "log_selector_verbose": false,
  "log_selector": false,
  "log_output": true,
  "log_network": false,
  "log_information": false,
  "log_file_level_minimum": 2,
  "log_file_level_maximum": 5,
  "log_error": false,
  "log_debug": false,
  "log_busy_warning": true,
  "log_activity": false,
  "lastupdatecheck": "2025-01-17T10:26:26.8782332-03:00",
  "isagent": false,
  "getting_started_url": "",
  "files_pending_deletion": [],
  "enable_analytics": true,
  "doupdatecheck": true,
  "disable_instance_store": false,
  "designerlayout": "",
  "cef_useragent": "",
  "cancelkey": "{ESCAPE}",
  "autoupdateupdater": false,
  "properties": {
    "IE_enable_xpath_support": true,
    "NM_wait_for_tab_after_set_value": false,
    "NM_wait_for_tab_click": false,
    "NM_compensate_for_old_addon": false,
    "NM_debug_console_output": false,
    "NM_unique_xpath_ids": [
      "ng-model",
      "ng-reflect-name",
      "data-control-name"
    ],
    "NM_protocol_timeout": "00:00:10",
    "NM_wait_for_tab_timeout": "00:00:00.0010000",
    "Office_get_emails_max_folders": 50,
    "Office_get_emails_skip_public": true,
    "Script_csharp_intellisense": true,
    "Script_vb_intellisense": true,
    "Script_use_embedded_python": true,
    "Script_py_create_no_window": true,
    "Windows_allow_attach": true,
    "Windows_cache_timeout": "00:05:00",
    "Windows_enable_cache": true,
    "Windows_allow_multiple_hits_mid_selector": false,
    "Windows_enum_selector_properties": false,
    "Windows_get_elements_in_different_thread": true,
    "Windows_traverse_selector_both_ways": true,
    "Windows_enable_windows_detector": true,
    "StorageLiteDB_enabled": false,
    "terminalemulator_auto_close": true,
    "avirecorder_enabled": false
  }
}

You are missing StorageFileSystem_enabled … I find that odd. It should be adding all default values either way. Are you using the latest version of OpenRPA?
Either way, could you please try adding that with the value of “false”, just to make sure it’s not using locally stored json files instead

I added the lines as requested, but the issue persists.

{
  "use_virtual_click": true,
  "use_sendkeys": false,
  "use_postwait": "00:00:00",
  "use_animate_mouse": false,
  "updatecheckinterval": "1.00:00:00",
  "unsafepassword": null,
  "thread_lock_timeout_seconds": 10,
  "thread_exit_on_lock_timeout": false,
  "skip_online_state": false,
  "skip_child_session_check": false,
  "restore_dependencies_on_startup": false,
  "remote_allowed": true,
  "remote_allow_multiple_running_max": 2,
  "remote_allow_multiple_running": false,
  "reloadinterval": "00:05:00",
  "recording_add_to_designer": true,
  "record_overlay": true,
  "querypagesize": 50,
  "password": "",
  "otel_trace_url": "",
  "otel_trace_interval": 5000,
  "otel_metric_url": "http://otel-collector:4317",
  "otel_metric_interval": 5000,
  "openflow_uniqueid": "b45040475bf2e9b7efdc7778a3f15226",
  "noweblogin": false,
  "notify_on_workflow_remote_start": true,
  "notify_on_workflow_remote_end": false,
  "network_message_timeout": "00:00:15",
  "move_animation_steps": 20,
  "move_animation_run_time": "00:00:00.5000000",
  "minimize": true,
  "max_workflows": 500,
  "max_trace_lines": 250,
  "max_projects": 100,
  "max_output_lines": 250,
  "mainwindow_position": "171, 194, 1756, 845",
  "log_warning": false,
  "log_verbose": false,
  "log_to_file": false,
  "log_selector_verbose": false,
  "log_selector": false,
  "log_output": true,
  "log_network": false,
  "log_information": false,
  "log_file_level_minimum": 2,
  "log_file_level_maximum": 5,
  "log_error": false,
  "log_debug": false,
  "log_busy_warning": true,
  "log_activity": false,
  "lastupdatecheck": "2025-01-17T10:26:26.8782332-03:00",
  "isagent": false,
  "getting_started_url": "",
  "files_pending_deletion": [],
  "enable_analytics": true,
  "doupdatecheck": true,
  "disable_instance_store": false,
  "designerlayout": "",
  "cef_useragent": "",
  "cancelkey": "{ESCAPE}",
  "autoupdateupdater": false,
  "properties": {
    "IE_enable_xpath_support": true,
    "NM_wait_for_tab_after_set_value": false,
    "NM_wait_for_tab_click": false,
    "NM_compensate_for_old_addon": false,
    "NM_debug_console_output": false,
    "NM_unique_xpath_ids": [
      "ng-model",
      "ng-reflect-name",
      "data-control-name"
    ],
    "NM_protocol_timeout": "00:00:10",
    "NM_wait_for_tab_timeout": "00:00:00.0010000",
    "Office_get_emails_max_folders": 50,
    "Office_get_emails_skip_public": true,
    "Script_csharp_intellisense": true,
    "Script_vb_intellisense": true,
    "Script_use_embedded_python": true,
    "Script_py_create_no_window": true,
    "Windows_allow_attach": true,
    "Windows_cache_timeout": "00:05:00",
    "Windows_enable_cache": true,
    "Windows_allow_multiple_hits_mid_selector": false,
    "Windows_enum_selector_properties": false,
    "Windows_get_elements_in_different_thread": true,
    "Windows_traverse_selector_both_ways": true,
    "Windows_enable_windows_detector": true,
    "StorageFileSystem_strict": false,
    "StorageFileSystem_enabled": false,
    "StorageLiteDB_enabled": false,
    "terminalemulator_auto_close": true,
    "avirecorder_enabled": false
  }
}

I have an idea. Was the user an admin when you set up OpenRPA? The token contains your roles, but after signing in, OpenFlow sends an updated token. This could make the robot unable to see things that you only gave admins access to, but not the direct user. (This will be “fixed” in OpenCore version 1.5.11)

Please sign out from OpenRPA and sign in again (you can sign out from the top left menu, or by closing OpenRPA and deleting the JWT from settings.json)

Unfortunately, it didn’t resolve the issue. I’ve even tried uninstalling and reinstalling OpenRPA, as well as removing my user from the admins group and adding it back.

An additional piece of information I forgot to mention is that this issue used to happen very rarely. Over several months, it occurred with only two projects. However, after a day when the services stopped due to lack of memory on my server and we had to restart it, the issue began occurring with several projects. While we were restarting the services, several clients remained open.

Do you think this information might help in any way?

While writing a long reply, it hit me that there is one more thing that could cause issues.

Do you have more than 100 projects and/or a COMBINED (total) of 500 workflows? Then this could happen.
It will only download up to 100 projects and a maximum of 500 workflows. It gets those in whatever order MongoDB decides (usually by _id, meaning you get the oldest first).
If you, however, change a workflow or project the user has access to, it gets sent to the client using watch notifications, therefore it will “pop up.”

If that is the case, stop using an admin user and make sure each robot user only has access to a limited amount of workflows.
If you need a temporary workaround, you can change max_workflows and max_projects in settings.json, but if you do, be aware it will heavily impact the UI responsiveness and memory usage.

Yes, I do indeed have more than 100 projects and over 500 workflows. I counted the number of displayed projects, and yes, it’s 100. I think we’re on the right track, but even after adding the new parameter to the settings.json file in OpenRPA, the issue wasn’t resolved.

Could it be that I need to change something so the API can also return more than 100 projects?

this is the second time you say you added something, but if you are using the latest version of openrpa, it would already be there.
Please make sure you are using the latest version of openrpa

Please also make sure you’re checking the settings from the correct location (roaming vs documents). It’s probably not this, but I’ve had seen confusion there as well when things get moved.

When you told me to change the values of max_workflows and max_projects, I (wrongly) assumed that these parameters didn’t exist in the settings.json file and added them at the end of the file. However, the parameters already existed, and apparently, OpenRPA uses the first occurrence it finds, which is why it had no effect when I added them at the end.

It worked, now all the projects are displayed. Thank you!

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.