Outsystems is a strongly typed language.

Is there anyway I can apply C# Interface on my input/output variables?

Or to apply the S.O.L.I.D. principles here? 

OutSystems is not an object oriented platform, so you will have difficulty attempting to use SOLID principles.

There are no interfaces, the best you may be able to do is public actions exposed by modules.  These define the interface to a module.  Structures can be used to provide a common "shape" of data exposed by multiple actions.  Entities may be hidden, exposed as read-only, or exposed as writeable.  To encapsulate entities, make them read-only and only change them via calls to public actions on the module.

I recommend you learn about the platform with a view to develop ways to implement some of the SOLID principles.  OutSystems has good quality training material, try some of the guided paths here.

Yes, agreed with Stuart.  

But it is a very interesting question, so EnthousiasticNewbie, if you explore this any further, please post your findings here.


OutSystems didn't support C# Interface. 

If your interface is service-oriented, You can Expose multiple REST/SOAP Service with same API.

And then Consume them by change the endpoint at runtime.