Skip to Content
Technical Articles
Author's profile photo Carine Tchoutouo Djomo

Getting Started with the ABAP RESTful Application Programming Model (RAP)


Last edit: January 12, 2023


🔥 Check out the new SAP Community subtopic page Modern ABAP Development with RAP! 🔥

The ABAP RESTful Application Programming Model (RAP) is generally available in the cloud on SAP Business Technology Platform (BTP) ABAP Environment – formerly known as SAP Cloud Platform ABAP Environment – as well as on-premise on SAP S/4HANA, starting with edition 1909.

This blog offers a collection of materials, e.g. presentations, tutorials and videos, to get started with the topic, and will be updated regularly.

/wp-content/uploads/2016/04/sapnwabline_930876.png

Introduction

The ABAP RESTful Application Programming Model (short: RAP) offers developers an efficient way to build enterprise-ready, SAP HANA-optimized, OData-based Fiori UI services and Web APIs in the cloud as well as on-premise. It is the evolutionary successor to the ABAP Programming Model for SAP Fiori.

The ABAP RESTful Programming Model is generally available in the SAP BTP ABAP Environment, and now also in SAP S/4HANA starting with the edition 1909. The feature scope in SAP Business Technology Platform (BTP) ABAP Environment – formerly known as SAP Cloud Platform ABAP environment – is enhanced on a quarterly basis on defined dates, while new capabilities are delivered in SAP S/4HANA on a yearly basis with new on-premise editions.

The greenfield development of OData-based services – i.e., starting from scratch – is supported with the so-called managed implementation type, whereas the brownfield development – i.e., based on existing code – is supported with the so-called unmanaged implementation type.

The key players in the ABAP RESTful Application Programming Model are:

ABAP Developments Tools in Eclipse Languages:
ABAP and CDS
Powerful
frameworks

The ABAP RESTful Application Programming Model comes with a set of development guides and best practices to facilitate the developer onboarding. The best practices are provided in the form of ready-to-use examples delivered with the ABAP Flight Reference Scenario (refer to the appropriate section below).

Availability:

  • SAP BTP ABAP Environment
  • SAP S/4HANA 1909 and higher

Roadmap:

Back to the top/wp-content/uploads/2016/04/sapnwabline_930876.png

Official Documentation

This section provides links to the existing official documentation for the ABAP RESTful Application Programming Model (RAP) available in the SAP Help Portal.

For SAP BTP ABAP Environment

For SAP S/4HANA 1909 and higher

Back to the top

/wp-content/uploads/2016/04/sapnwabline_930876.png

Recordings

You can watch the replays of ABAP webcasts (incl. RAP) at SAP’s Devtoberfest in 2022

You can watch the replays of interesting Developer Discussions on ABAP in 2021:
(1) ABAP – Past, Present & Future, (2) RAP – What’s in it for you?, (3) Embedded Steampunk, and (4) Guidance for developing RAP applications in ABAP.

Watch the videos embedded below to get an overview of the ABAP RESTful Application Programming Model (RAP). Different system demonstrations on the greenfield development with the managed BO implementation are shown.

SAP’s Devtoberfest in 2022 (1), virtual event

Developer Extensibility and Business Events with RAP on SAP S/4HANA Cloud

SAP’s Devtoberfest in 2022 (2), virtual event

 

Dealing with Legacy Code and Transactional Consistency in RAP

DT106@SAP TechEd 2021, virtual event

Access the presentation | FAQ

Extend SAP S/4HANA Cloud on Stack with RAP

DEV260@SAP Community Post-SAP TechEd 2020 series in 2021, virtual event

Access the Exercises

 

Build SAP Fiori Apps with RAP

DEV102@SAP TechEd 2020, virtual event

Access the presentation

Major Updates on RAPMajor%20Updates%20on%20ABAP%20RESTful%20Application%20Programming%20Model%20%5BDEV102%5D

CAA103@SAP TechEd 2019, Las Vegas

Access the presentation

Get the Big Picture of RAP

Further Recordings:

In the following videos, different system demonstrations on the greenfield application development with the managed runtime implementation type are shown.

SAP TechEd 2019, Las Vegas CAA103 – Get the Big Picture of the ABAP RESTful Programming Model
SAP TechEd 2019, Barcelona CAA103 – Get the Big Picture of the ABAP RESTful Programming Model

In the following videos, different system demonstrations on the brownfield application development with the unmanaged runtime implementation type are shown.

SAP TechEd 2018 CNA215 – Get the Big Picture of the ABAP RESTful Programming Model
SAP TechEd 2018 CNA216 – Technical Deep Dive into the ABAP RESTful Programming Model

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

ABAP Flight Reference Scenario

The ABAP Flight Reference Scenario is a new data model intended for demo purposes and use in training courses – mainly in the context of the ABAP RESTful Application Programming Model (RAP). It is a reloaded and adapted version of the well-known SAP NetWeaver Flight data model.

The ABAP Flight Reference Scenario offers several examples that can serve as reference implementations of the various capabilities provided by the RAP. It is not an integral part of the ABAP platform, but SAP – i.e. the ABAP Platform team –  makes it available and provides updates on GitHub. Therefore, it must be imported into the relevant ABAP systems before use.

The ABAP Flight Reference Scenario is available by default and ready for use on the free SAP BTP ABAP Environment trial.

Learn more – SAP BTP ABAP Environment:

Learn more – SAP S/4HANA 1909 and later:

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Tutorials for SAP Business Technology Platform (BTP) ABAP Environment

Get hands-on experience with the ABAP RESTful Application Programming Model in the cloud.

The majority of the following How-To-tutorials are based on the ABAP Flight Reference Scenario described in the previous section. Therefore, it must have been previously imported into your ABAP system.

SAP BTP ABAP Environment is also know as Steampunk.

Prerequisites:

Tutorials from the SAP Developer Center (Entry Point)

Access the available tutorial groups and missions.

  1. Building a transactional Fiori app using the unmanaged runtime implementation
  2. Building a transactional Fiori app using the managed runtime implementation
  3. Service Consumption Model: Connect Two Instances of SAP BTP ABAP Environment
  4. Developing analytical queries and consuming them on SAP Analytics Cloud (SAC)

Development Guides from the SAP documentation (Entry Point)

  1. Downloading the ABAP Flight Reference Scenario* (cloud flavor)
  2. Developing read-only list reporting Apps
  3. Developing unmanaged transactional apps using existing application logic
  4. Developing managed transactional apps
  5. Developing transaction apps with draft capabilities
  6. Developing transactional apps with multi-inline-edit capabilities
  7. Developing a Web API
  8. Developing a UI service with access to a remote service

Hands-On Workshops

Following workshop exercises are available on GitHub

  1. Hands-on Workshop DEV260 – Build SAP Fiori apps with RAP
  2. Hands-on Workshop RAP400 – Writing unit tests for apps built with RAP
  3. Hands-on Workshop RAP500 – Developing for Analytics with RAP on Steampunk

(* The ABAP Flight Reference Scenario is already available on the free SAP BTP ABAP Environment trial.)

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Tutorials for SAP S/4HANA 1909 and later

Get hands-on experience with the ABAP RESTful Application Programming Model in SAP S/4HANA.

The current on-premise feature scope covers only the brownfield development with the unmanaged implementation type. New capabilities will be provided with future SAP S/4HANA editions.*

The majority of the following How-To-tutorials are based on the ABAP Flight Reference Scenario described in the previous section. Therefore, it must have been previously imported into your ABAP system.

Prerequisites:

Tutorials from the SAP Developer Center (Entry Point)

Access the available tutorial groups.

  1. Building a transactional Fiori app using the unmanaged runtime implementation
  2. Building a transactional Fiori app using the managed runtime implementation

Development Guides from the SAP documentation (Entry Point)

  1. Downloading the ABAP Flight Reference Scenario (on-premise flavor)
  2. Developing an OData service for simple list reporting
  3. Developing read-only list reporting apps
  4. Developing new managed transactional apps (managed impl.)
  5. Developing new transaction apps with draft capabilities (managed impl.)
  6. Developing new unmanaged transactional apps based on existing application logic (unmanaged impl.)
  7. Developing a Web API

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Courses

SAP Training and Certification opportunities

  • Go to training.sap.com and search – e.g., HA400, S4D400, S4D430, and S4D437

openSAP Courses on RAP

Other related openSAP Courses

 

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Recommendations

Recommendations

Find some recommendations on when to use the different RAP implementation types in the blog Modernization with the ABAP RESTful Application Programming Model (RAP).

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Recommendations

Particular Topics 

Find information on some particular topics around RAP.

 

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Frequently Asked Questions (FAQ)

Find the answers to the most frequently asked questions around RAP and other related topics.

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

Further Resources

This section provides useful links to related resources and learning materials to deepen your knowledge.

Back to the top
/wp-content/uploads/2016/04/sapnwabline_930876.png

* This is the current state of planning which may change at any time without further notice from SAP. Find more information in the ABAP Platform Roadmap. 


Last edit: January 2023

Assigned Tags

      28 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Mark Wagener
      Mark Wagener

      Nice blog! Thanks for collecting all the information.

      Author's profile photo Kishore Gokara
      Kishore Gokara

      Great. Thanks for bringing all the content.

      Author's profile photo Syambabu Allu
      Syambabu Allu

      All at one place...Thanks for sharing!!

       

      Thank you,

      Syam

      Author's profile photo salil sonam
      salil sonam

      Nice collection,all in one place. Thanks for your efforts.

      Do you know where we can find the list of whitelisted objects for ABAP PaaS (availability), the list must be growing.

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hello Salil,

      Thanks for the feedback.

      You can use one of the following options to gain an overview of the released objects in SAP Cloud Platform ABAP Environment:

      1. Create a Released Objects’ tree in ADT Project Explorer.
        This blog shows how to define ABAP Repository trees in ADT: https://blogs.sap.com/2016/10/19/displaying-relevant-objects-project-explorer/  ->
      2. Start the data preview (F8) for the released CDS interface view I_APISFORSAPCLOUDPLATFORM to display the APIs released for use in SAP Cloud Platform.

      I hope this helps!

      Kind regards,
      Carine

      Author's profile photo Ramana SBLSV
      Ramana SBLSV

      Hi Carine,

       

      I can see Rest ABAP Programming Model in SAP S/4 HANA OP 1809 FSP01 version for all ACR reports. Can we develop ABAP Restful services in 1809 OP version too or is there any restriction?

      Author's profile photo Stephan Heinberg
      Stephan Heinberg

      Thanks Carine! Where do I find info or documentation about the new change document API.

      Is is part of the 2019/11 shipment?

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hello Stephan,

      Thank you for your feedback.

      Yes, the Change Document Solution has been released with the 1911 shipment.
      More information about it can be found in the online documentation. https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/741220a1097d4b6ebff3a09c0dd35627.html

      In general, you can check the SAP Cloud Platform ABAP Environment Release Notes here: https://help.sap.com/doc/43b304f99a8145809c78f292bfc0bc58/Cloud/en-US/98bf747111574187a7c76f8ced51cfeb.html?sel4=ABAP&from=2019-10-31

      I hope this helps.

      Kind regards,
      Carine

      Author's profile photo Joachim Rees
      Joachim Rees

      A very nice entry point into that topic, thanks a lot Carine!

      Author's profile photo N K
      N K

      Thanks Carine !!!

      Carine Tchoutouo Djomo - Couple of questions on this model and strategy that SAP is moving towards:

      1. Is this applicable to only SCP – ABAP Runtime Instance where you can locally query the tables in SCP and provide them as a service for consumption?
      2. How does this Programming model impact the S4 on-prem systems? In What scenarios we would use this on-prem?
      3. In On-Prem / Could we can define CDS View and then expose them as oData through annotations and this can be consumed in WebIDE for Fiori apps? I do not fully understand the difference between these 2 approaches. What's the additional benefit with this approach from the traditional way? Can you shed some light?
      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Raj,

      you‘re welcome.

      Let me go through your questions.

      1. The ABAP RESTful Programming Model (refered as RAP below) enables the efficient development of SAP HANA-optimized, OData-based Fiori UI services and Web API in the SAP Cloud Platform ABAP Environment and in SAP S/4HANA.
      2. RAP is the evolutionary development of the ABAP Programming Model for SAP Fiori. Read more my blog about the Evolution of the ABAP Programming Model.
        SAP opted for a cloud-first shipment approach of RAP, but it is also available on-premise starting with SAP S/4HANA 1909.
        Currently only the unmanaged implementation type for brownfield application development based on legacy business logic is supported in SAP S/4HANA. The feature scope will be enhanced with the next major SAP S/4HANA release in 2020. It will comprise the managed implementation type for greenfield application development.
        The RAP feature scope is enhanced on a quartely basis in the SAP Cloud Platform ABAP Environment.
      3. Here are two major changes in comparison to the ABAP Programming Model for SAP Fiori:
        With RAP, a new ABAP artefact, the Service Definition (R3TR SRVD), has been introduced to enable a protocol-agnostic service scope definition. A service definition is highly reusable. Its binding to a given protocol and a given scenario – i.e. UI service or Web API – is done with a Service Definition (R3TR SVRB); a new ABAP artefact.
        Beside that, the ABAP language has been enhanced in order to support natively the implementation of transactional BO behavior (create, update, delete,). It means that no additional framework is required for that. In the ABAP Programming Model for SAP Fiori, the CDS-based Business Object Processing Framework (BOPF) was neede for the transactional BO handling.

      I hope this information will be helpful to you.

      Kind regards,
      Carine

      Author's profile photo Stephan Heinberg
      Stephan Heinberg

      Dear Carine,

      do you have any news, if the managed scenario will be shipped with a Feature Package for S/4 1909?

      Or is it planned to be delivered in S/4 20xx edition?

      Thanks,

      Stephan

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Stephan,

      The current plan* is to enhance the RAP feature scope in the SAP Cloud Platform ABAP Environment on a quarterly basis and in SAP S/4HANA on a yearly basis.

      The managed implementation type for greenfield application development is currently planned* to be delivered on-premise with the next major SAP S/4HANA release in 2020.

      * This is the current state of planning which may change at any time without further notice from SAP. Find more information in the ABAP Platform Roadmap - which will be updated very soon.

      Kind regards,
      Carine

      Author's profile photo Vivek Vijay
      Vivek Vijay

      Hi Carine,

      Could you please clarify the below queries?

      "Currently only the unmanaged implementation type for brownfield application development based on legacy business logic is supported in SAP S/4HANA. The feature scope will be enhanced with the next major SAP S/4HANA release in 2020. It will comprise the managed implementation type for greenfield application development." - Does this mean that 'managed scenario with un-managed save' is not available in an on premise SAP S/4 HANA 1909 ?

      I wanted to try the same('managed scenario with un-managed save') for a POC.

      Is it available in SAP S/4 HANA Cloud 1909?

      Regards,
      Vivek.

       

       

       

       

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Vivek,

      The managed scenario – incl. the unmanaged save – is available in SAP S/4HANA starting with edition 2020. You can have a look at the What's New section: ABAP Platform On-Premise

      It is also available in SAP S/4HANA Cloud, extended edition starting with edition 2020.

      Hope this helps.

      Kind regards,
      Carine

      Author's profile photo Saurabh Joshi
      Saurabh Joshi

      Hi Carine,

       

      I am looking for limitations in terms of (Draft, Authorizations, Locking) of un-managed implementation with On-Prem 1909 version. Do you have any help document on this topic?

       

      Thank You

      Saurabh

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Saurabh,

      We do not have such a document. The draft handling is supported starting with SAP S/4HANA 2020
      You can have a look at the What's New section: On-Premise
      Find additional RAP related links here.

      Hope this helps.

      Kind regards

      Author's profile photo Bruno Esperanca
      Bruno Esperanca

      First of all, congratulations and thank you so much for such a wonderful feature.

       

      You mention this is available on S/4 HANA, but I would like to know if it's also available on Solution Manager? I would like to develop something for our on-premise Solution Manager also.

       

      Thanks a lot,
      Bruno

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Bruno,

      Thank you for the feedback. Appreciate it!

      RAP is available starting with ABAP Platform 1909 - which corresponds to the SAP_BASIS software component version 7.54.

      So it depends on the release of the ABAP stack underlying the relevant Solution Manager system. Please check the version of its SAP_BASIS software component.

      Hope this helps.

      Kind regards,
      Carine

      Author's profile photo Bruno Esperança
      Bruno Esperança

      Hi again,

      I guess I have to wait a little 🙂 No problem.

      Thanks for the reply,

      Bruno

       

      Author's profile photo Saurabh Kumar Singh
      Saurabh Kumar Singh

      Hi Carine,

      First of all, Thank you so much for providing gem of information's on ABAP RAP.

      Its for sure very useful for beginners as well proficient level.

      I have couple of questions, if you can help me with,

      1. Do you have any demo model on consuming the Web API created using RAP ?
      2. Do you also have similar stuff ( consolidated Blogs with all the possible scenarios) for SAP CAP ( Cloud Application Programming ) , I have been looking for this but its Dispersed across and not been bundled this way.

      Thanks again for your contribution for the developer community.

      Cheers,

      Saurabh

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Saurabh,

      You're welcome. Appreciate your feedback.

      Regarding your questions:

      1. The ABAP Flight Reference Scenario provides only reference implementations of UI services and Web APIs with RAP. However, a Web API created with RAP is nothing more than a standard OData (v2 or v4) service and can be consumed as such.
      2. You can have a look at following page for CAP information:

      Hope this helps you further.

      Kind regards,
      Carine

      Author's profile photo Saurabh Kumar Singh
      Saurabh Kumar Singh

      Hi Carine,

      Thanks for your prompt reply, indeed it helps.

       

      Cheers,

      Saurabh

      Author's profile photo prasanna kumar
      prasanna kumar

      Everything at one place...Thanks for sharing!!

       

       

      Thanks,

      Prasanna

      Author's profile photo Srijani Chatterjee
      Srijani Chatterjee

      Hi Carine,

      Hope you are doing well.. We are using S/4 HANA 1709 as of now and would like to use the RAP model.. Can RAP be made available in 1709 anyhow ? Or we need to go for an upgrade mandatorily ? .. Please suggest..

      Thanks,

      Srijani

       

       

      Author's profile photo Carine Tchoutouo Djomo
      Carine Tchoutouo Djomo
      Blog Post Author

      Hi Srijani,

      RAP is available on SAP S/4HANA on-premise starting with edition 1909 - and will not be downported to lower releases.

      Following blog by Andre Fischer provides an overview of the OData services development options available on the different ABAP stacks: https://blogs.sap.com/2021/07/12/compact-feature-availability-matrix-of-abap-programming-models/

      You may also want to have a look at following blogs:

      Hope this helps.

       

      Kind regards,
      Carine

      Author's profile photo Hassan Saeed
      Hassan Saeed

      Hi Carine,

      Are Fiori and UI5 technology prerequisites (or recommend to learn) before jumping into RAP?

      My regards

      Author's profile photo Christian Punz
      Christian Punz

      Hi Carine,

      thank you for this great post!
      I searched for RAP certification but could not find any certification material, only the training you mentioned: https://training.sap.com/course/s4d437-transactional-apps-with-the-abap-restful-application-programming-model-classroom-022-at-de/?

      Please give us a hint.

      Thank you!

      Kind regards,

      Christian