RPA and OutSystems - Automating Service Studio Task

Hi all, I'm developing a tool in OutSystems that will be mainly used by developers so the use case here present is that the developer can select an option when using the tool. Great, OutSystems have static entities, I can map it in a human-readable interface. 

Here's the catch: this tool has a back office where the developer configures the entries to use in this tool and defines which type that entry belongs to. Oh, oh-hoh! Now the developer needs to open the Service Studio, create an entry in that static entity for every new type he needs to configure. 

To recap, this tool will be used mainly in Service Studio by developers, so the type needs to be a human-readable option, not just some record you fetch from Database.

So this is not very scalable and I would like to make this as seamless as possible because the intention is to create a forge component out of it. 

I was searching about RPA a bit in forums and outside but I'm really nooby regarding this and don't have a clue about this so, here's the question: 

Is it possible to build a robot that reads an entry from the database, opens the Service Studio, creates the static entry option and publishes the eSpace?

Thanks in advance :)

Hi João,

I'm not too certain about automating that sort of work within Service Studio, but there's something I'm not following: why do you need your records to exist in Static Entities? I can understand that this makes you able to directly reference them in your code, but someone still needs to write the code that would refer to these new records - I'm not seeing the gain with automating just the adding of those records.

Could you share a little more about the tool you're developing? Perhaps we could help coming up with a way to use regular Entities, allowing that data to still be managed in a backoffice and avoiding automated module changes.

Hi Afonso,

sorry for the late reply. This is a side project of mine so it doesn't take all the attention I wish it would.

Anyway, here is what I'm trying to accomplish:

I would like to build a Keystore where I could configure secrets such as RSA Public/Private keys in a BackOffice to later be used by developers in Integrations such as a Firebase integration or Google Calendar. The main goal here would be that those secrets would be encrypted in the database and could be decrypted and retrieved by an API. And as a Developer who is consuming such API, I would like to have an easy way to mention what I wish to retrieve and from which project. The obvious solution would be to have a static entity to map both of those concepts, the project, and the key I need (the public, private, token, etc). The problem here is every time I have a new project or key concept I need to map it on the static entity and publish the module.

The main issue here I guess is how to map the project in Service Studio (without using strings to reference it) because the other concept is finite and doesn't change a lot.


I think I understand a little better now - you'd like the data to reference a Static Entity that identifies your projects so you don't have to hardcode strings and use them in multiple espaces.

I'm not aware of a way to automate this in OutSystems, but there's an alternate solution. Your main issue seems to be how each consuming application contacts the repository application that holds your keys, and how they should identify themselves without passing strings around.

Why not use the Espace Entity in OutSystems for this? So in your repository application, you configure your data and associate it with an Espace Id. And then your consumer applications would invoke the API and instead of hardcoding a string to identify themselves, they could send their own Espace Id using GetEntryEspaceId(). I'm attaching a quick example, let me know what you think.