Creating a REST API based application in SMP2.3
For the past few days, I have been playing around with SMP2.3 and exploring its different features. From SUP2.2 onwards, the platform provides REST APIs that act as a proxy to a variety of application endpoints and provides common mobile application functionality like device on boarding, user authentication, push configuration, tracing and supportability amongst others.
In this document, I have documented the steps required to create a REST API based application in SMP2.3 and then validate the same via a REST Client Tool. I have also explained the steps to create an application connection and validate the same within SAP Control Center. Hope this is useful.
Create an Application
1. Click Applications on the left pane and Applications tab on the right tab
2. Click New
3. Enter the following values
Application ID : com.sap.poc.restapi
Display name : RESTAPI
Description : REST API App
Client SDK Type: REST API
Security Configuration: admin
Base Template: Default
Application Endpoint: http://localhost/restpoc ( this should be your external rest webservice. It could be an odata or non data REST Service). This is also called as whitelisting
Push Endpoint: Leave it as is
The application id will be the application identifier while accessing the external service.
4. Click OK
5. A new application with the name com.sao.poc.restapi is now created in the default domain
6. Open Domain -> default -> Applications to confirm that an application is created
Validating the Proxy Connection
In the previous step, we created an REST API based application. Let us now make sure the application is working (meaning the connection is indeed being proxied through the SMP Mobile Server). For this example, I have used the REST Client from Wiztools. You can download it for free from the following location: http://code.google.com/p/rest-client/downloads/list
1. Open the RESTClient and type the url as : http://<SMPServer>:<ProxyPort>/<ApplicationID> Typically the Proxy would be 8000, 8001 or 5001. Application ID would be the Application id created earlier.
- Select HTTP Method as Get
- Select Auth as Basic and type the SCC admin Username/Password ( typically supAdmin/s3pAdmin
- Submit the Http request
- You should receive an HTTP/1.1 200 OK as the status – this confirms that the you have successfully used SMP REST API to proxy a connection onto an external service
- Make note of the Http headers and body that is sent back as Http response
Creating an Application Connection
The next validation test is to create an application connection in SMP2.3. Using the RESTClient tool again, submit the following HTTP request.
Method : POST
Header: ” X-SUP-DOMAIN” = “default” ( you could also not pass any param/value as it will by default point to the default SMP Domain)
Username: <SUP Admin User>
Password : <SUP Adminpwd>
The following request body needs to be sent along with the HTTP request.
<?xml version=”1.0″ encoding=”UTF-8″?>
A status of HTTP/1.1 201 CREATED should be returned from the server. In, click on Applications. In the Application Connections tab on the right pane, a new application connection should now be created.