Technical Articles
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. |
Latest News: 2023-03: Developer Extensibility for CDS Behavior Definitions 2023-01: SAP Fiori elements Feature Showcase App for RAP 2022-12: ABAP Cloud 2022-11: Using BAPIs in RAP 2022-10: 🟢 A Beginner’s Guide to RAP 2022-10: Replays of RAP webcasts at SAP’s Devtoberfest in 2022 2022-09: Modern ABAP Development with RAP (SAP Community subtopic page) 2022-08: Troubleshoot Your RAP-based Apps (SAP Community subtopic page) 2022-06: Conversion Exits and RAP (blog) 2021-10: Modernization with RAP (blog) 2021-07: Compact Feature Availability Matrix of ABAP Programming Models (blog) 2021-01: Free openSAP course Building Apps with the ABAP RESTful Application Programming Model now available in self-paced mode |
Table of Content Introduction ♦ Official Documentation ♦ Recordings ♦ ABAP Flight Reference Scenario ♦ Tutorials for SAP BTP ABAP Environment ♦ Tutorials for SAP S/4HANA ♦ Courses ♦ Recommendations ♦ FAQ ♦ Further Resources ♦ |
|
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:
- Check the ABAP Platform Roadmap
|
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
- RAP – Developer Guide
- RAP – ABAP Keyword Documentation
- RAP – What’s New?
- Analytical Data Modeling & Live Data Connection to SAP Analytics Cloud (SAC)
- Accessing ABAP-managed Data from External ODBC-based Clients
- Various ABAP Development User Guides (e.g. ADT, CDS, etc.)
For SAP S/4HANA 1909 and higher
- RAP – Developer Guide (latest)
- RAP – ABAP Keyword Documentation (latest)
- RAP – What’s New?
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.
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 |
|
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:
- ABAP Flight Reference Scenario – Description (SAP Help Portal)
- ABAP Flight Reference Scenario for ABAP PaaS – Download (GitHub)
Learn more – SAP S/4HANA 1909 and later:
- ABAP Flight Reference Scenario – Description (SAP Help Portal)
- ABAP Flight Reference Scenario for ABAP 7.54 and higher – Download (GitHub)
|
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:
- Latest version of ABAP Development Tools (ADT) for Eclipse is installed.
If not available on your device, then follow this tutorial: Install ADT. - Access to an SAP BTP ABAP Environment system.
If not yet available, then onboard to the free SAP BTP ABAP Environment Trial.Â
Tutorials from the SAP Developer Center (Entry Point)
Access the available tutorial groups and missions.
- Building a transactional Fiori app using the unmanaged runtime implementation
- Building a transactional Fiori app using the managed runtime implementation
- Service Consumption Model: Connect Two Instances of SAP BTP ABAP Environment
- Developing analytical queries and consuming them on SAP Analytics Cloud (SAC)
Development Guides from the SAP documentation (Entry Point)
- Downloading the ABAP Flight Reference Scenario* (cloud flavor)
- Developing read-only list reporting Apps
- Developing unmanaged transactional apps using existing application logic
- Developing managed transactional apps
- Developing transaction apps with draft capabilities
- Developing transactional apps with multi-inline-edit capabilities
- Developing a Web API
- Developing a UI service with access to a remote service
Hands-On Workshops
Following workshop exercises are available on GitHub
- Hands-on Workshop DEV260 – Build SAP Fiori apps with RAP
- Hands-on Workshop RAP400 – Writing unit tests for apps built with RAP
- 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.)
|
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:
- Latest version of ABAP Development Tools (ADT) for Eclipse is installed.
If not yet available on your device, then follow this tutorial: Install ADT. - Access to an SAP S/4HANA system, edition 1909 or higherÂ
Tutorials from the SAP Developer Center (Entry Point)
Access the available tutorial groups.
- Building a transactional Fiori app using the unmanaged runtime implementation
- Building a transactional Fiori app using the managed runtime implementation
Development Guides from the SAP documentation (Entry Point)
- Downloading the ABAP Flight Reference Scenario (on-premise flavor)
- Developing an OData service for simple list reporting
- Developing read-only list reporting apps
- Developing new managed transactional apps (managed impl.)
- Developing new transaction apps with draft capabilities (managed impl.)
- Developing new unmanaged transactional apps based on existing application logic (unmanaged impl.)
- Developing a Web API
|
Courses |
SAP Training and Certification opportunities
- Go to training.sap.com and search – e.g., HA400, S4D400, S4D430, and S4D437
openSAP Courses on RAP
- Direct access: Building Apps with the ABAP RESTful Application Programming Model
- Related course landing page in the SAP Community (link collection)
Other related openSAP Courses
- Writing Testable Code for ABAP
- SAP Fiori Overview: Design, Develop and Deploy
- Developing and Extending SAP Fiori elements Apps
|
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).
|
Particular Topics |
Find information on some particular topics around RAP.
- Conversion Exits and the ABAP RESTful Application Programming Model (RAP)
- Using BAPIs in RAP
- ABAP Cloud development model for building cloud-ready and upgrade-safe apps
- SAP Fiori elements Feature Showcase App for RAP (using CDS annotations)
|
Frequently Asked Questions (FAQ) |
Find the answers to the most frequently asked questions around RAP and other related topics.
- FAQ – RAP
- FAQ – ABAP Development Tools (ADT) for Eclipse
- FAQ – Smooth transition from SE80 to ADT
- FAQ – SAP TechEd 2021 session DT106 – Extend SAP S4HANA on Stack with RAP
- FAQ – ABAP Language Versions
|
Further Resources |
This section provides useful links to related resources and learning materials to deepen your knowledge.
- Getting started with ABAP Core Data Services (CDS)
- Spotlight on ABAP for SAP HANA
- Evolution of the ABAP Programming Model
- Be prepared for the ABAP Programming Model for SAP Fiori [Recommendations]
- OData Service Development Options & Be prepared for the ABAP RESTful Application Programming Model [Recommendations, Video]
- Compact Feature Availability Matrix of ABAP Programming Models [Blog]
- Building SAP Fiori apps at scale using SAP Fiori elements and SAP Fiori tools [SAP expert paper]
- ABAP Platform Strategy [ Roadmap]
- ABAP Platform Releases and Consumers
- ABAP Development [SAP Community Topic Page]
- SAP BTP ABAP Environment [SAP Community Topic Page]
- Learn about SAP Fiori User Experience
- Clean ABAP
- SAP Programming Models (CAP & RAP) [SAP Developers Page]
- Replay of ABAP Platform sessions from SAP TechEd in 2020 [Blog]
- Steampunk is going all-in
- Developing for Analytics with the SAP BTP ABAP Environment [Blog]
- RAP in the ABAP Keyword Documentation [Blog]
- FAQ for Session DT106@SAP TechEd 2021 [Blog]
* 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
Nice blog! Thanks for collecting all the information.
Great. Thanks for bringing all the content.
All at one place...Thanks for sharing!!
Thank you,
Syam
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.
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:
This blog shows how to define ABAP Repository trees in ADT: https://blogs.sap.com/2016/10/19/displaying-relevant-objects-project-explorer/Â ->
I hope this helps!
Kind regards,
Carine
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?
Thanks Carine! Where do I find info or documentation about the new change document API.
Is is part of the 2019/11 shipment?
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
A very nice entry point into that topic, thanks a lot Carine!
Thanks Carine !!!
Carine Tchoutouo Djomo - Couple of questions on this model and strategy that SAP is moving towards:
Hi Raj,
you‘re welcome.
Let me go through your questions.
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.
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
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
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
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.
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
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
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
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
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
Hi again,
I guess I have to wait a little 🙂 No problem.
Thanks for the reply,
Bruno
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,
Thanks again for your contribution for the developer community.
Cheers,
Saurabh
Hi Saurabh,
You're welcome. Appreciate your feedback.
Regarding your questions:
Hope this helps you further.
Kind regards,
Carine
Hi Carine,
Thanks for your prompt reply, indeed it helps.
Â
Cheers,
Saurabh
Everything at one place...Thanks for sharing!!
Â
Â
Thanks,
Prasanna
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
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
Hi Carine,
Are Fiori and UI5 technology prerequisites (or recommend to learn) before jumping into RAP?
My regards
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