Rapidminer Server Create Web Services from Process
RapidMiner Server provides a powerful capability to expose any workflow you built to be converted into a webservices within a matter of few clicks.
This section describes how to expose a RapidMiner Server process as a web service which can be called from other application environment. RapidMiner web services can be either parameterless or can accept parameters as part of the URL query. This article covers parameterless configuration, a follow on article will cover passing parameters and advanced configuration
Prerequisites
- You will need RapidMiner Server installed and configured
- Studio client connected to a server Repository.
- The process you will want to be available as a web service should be saved in a server repository folder.
- Any webservice can return data only from the first "res" (Result) port. So ensure the process is designed so that data you expect from the webservice is delivered to first "res" port
This method does not provide ability to create a unique service id, but creates a service id automatically from the name of the underlying process.
If you need to create a unique service id, please refer to link here.
Steps
- In your studio client navigate to the process you wish to make available as webservice.
- Right click on the process that you want to expose as web service in your repository panel and click on the "Browse" option
- This will take you to the server interface for RapidMiner Server. If prompted for username and password provide the appropriate username and password and login. You will be automatically directed to the right page like below
- Ensure that the process path (marked 1) above is correct
- Click on the "Export as service" (marked 2) above and you should be directed to a screen like below
- Ensure path looks correct in DataSource (Marked 1)
- Select the outputformat(Marked 2)
- Select the correct MIME Type (Marked 3)
- Hit Submit(Marked 4) to save the process . We will cover the other options visible in this panel in a different article
- Find the service you created in the next panel by scrolling thru the list of available services
-
- You can edit the service by click the edit icon(Marked 1)
- You can delete the service by clicking the delete icon(Marked 2)
- You can test the service by clicking the test icon (Marked 3)
- Click on the test icon and you should see a screen like below
- You can then test using the “Test” button. (Marked 1)
- The link for calling the web service is also available (Marked 2).
- The test results should be available in preview section (Marked 3)
You can now use the Direct Link(Marked 2) to call a Rapidminer process from other applications
In the next article here we will cover how to pass parameters and some of the advanced parameters
Comments
Hi @bhupendra_patil
Quick question about this part:
As I see here, the generated webservice URL is corresponding to some local host name, and I faced the same thing.
Is this a default behaviour for all cases? As obviously the URL should be changed to incorporate an external host name to be used for calling the web service?
Thanks.
Vladimir
http://whatthefraud.wtf
change host name
You can change that by logging to server as admin and then add a new property and value in System Settings.
The property is com.rapidanalytics.web.hostname
Another question: How can I call this service like api/rest/public/process with anonymous user?
Thanks in advance and best regards
Kevin Reif
hi @kevin_reif - this docs page has some very good info on anonymous users for RM Server: https://docs.rapidminer.com/latest/server/administration/user-management/special-users.html
Scott