Last edit: January 2024

| 🔥 Check out the new SAP Community page for more getting started information: ABAP RESTful Programming Model (RAP)! 🔥 |
The ABAP RESTful Application Programming Model (RAP) is generally available in the cloud on the SAP Business Technology Platform (SAP BTP) - formerly known as SAP Cloud Platform, SAP S/4HANA Cloud Public Edition, SAP S/4HANA Cloud Private Edition, and SAP S/4HANA as of release 1909. |
| Latest News: 2024-06: Overview of ABAP RESTful Application Programming Model (pdf) 2023-12: Hidden Treasure: RAP Glossary in the ABAP Keyword Documentation | SAP Blogs 2023-10: Replays of ABAP Cloud (incl. RAP) sessions at SAP's Devtoberfest in 2023 2023-03: Developer Extensibility for CDS Behavior Definitions 2023-01: SAP Fiori elements Feature Showcase App for RAP 2022-12: ABAP Cloud Development Model (ABAP Cloud) 2022-10: 🟢 A Beginner's Guide to RAP 2022-09: State-of-the-Art ABAP Development with RAP (SAP Community subtopic page) 📌 2022-08: Troubleshoot Your RAP-based Apps (SAP Community subtopic page) 📌 |
| 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.)
- Check out the SAP BTP Developer’s Guide! 🔥
For SAP S/4HANA 1909 and higher
- RAP - Developer Guide (latest)
- RAP - ABAP Keyword Documentation (latest)
- RAP - What's New?
Recordings
- ABAP sessions (incl. RAP) at SAP's Devtoberfest in 2022
- ABAP Cloud (incl. RAP) sessions at SAP's Devtoberfest in 2023
- Developer Discussions on ABAP in 2021:
1️⃣ ABAP – Past, Present & Future | 2️⃣RAP – What’s in it for you? | 3️⃣ Embedded Steampunk | 4️⃣ Guidance for developing RAP applications in ABAP
The videos embedded below provide 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 | Beginner's Guide for RAP |
| SAP's Devtoberfest in 2022 (2), virtual event | Developer Extensibility and Business Events with RAP on SAP S/4HANA Cloud |
| SAP's Devtoberfest in 2022 (3), virtual event | Dealing with Legacy Code and Transactional Consistency in RAP |
| DT106@SAP TechEd 2021, virtual event Access the presentation | FAQ |
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 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 informally known 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 Post]
- 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 Post]
- Steampunk is going all-in
- Developing for Analytics with the SAP BTP ABAP Environment [Blog Post]
- RAP in the ABAP Keyword Documentation [Blog Post]
- FAQ for Session DT106@SAP TechEd 2021 [Blog Post]
- Replays of RAP webcasts at SAP's Devtoberfest in 2022
- Hidden Treasure: RAP Glossary in the ABAP Keyword Documentation | SAP Blogs [Blog Post]
* 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 2024



