Answer
Yes, there is a way: reverse-engineer the actual OData/projection calls the Aurena client itself makes for the equivalent manual flow (using your browser's developer tools or the Aurena developer console while performing the action once manually), then script those same calls in bulk against a dedicated Service User account. For adding a Company to a user specifically, the pattern is a POST to UserHandling.svc/AddCompaniesAssistantVirtuals to get back an Objkey for that assistant's virtual record, followed by a POST to that record's ApplyChanges bound action with a Companies attribute string identifying the company and user — repeated per user (or scripted in a loop) to apply it at scale. Use a properly scoped Service User account with an appropriate authentication method for this kind of bulk scripted access, rather than authenticating as a superuser account like IFSADMIN directly in a script.