In this lesson, we will cover the following topics:
- What is SAP Graph?
- How does SAP Graph work?
- Developing SAP Graph
What is SAP Graph?
SAP Graph is a powerful, single, connected API that simplifies access to business data across the SAP ecosystem. It provides a unified, graph-based API that allows developers to interact with data from multiple SAP systems (such as SAP S/4HANA, SAP SuccessFactors, and more), regardless of where it’s stored, in a consistent and intuitive way. Graph introduces curated, semantically connected business data graphs to access all business data through a single API. It accesses the data on your behalf without storing or caching any data itself. You only interact with a simple view of the data. Which is unified across all systems?

How does SAP Graph work?
Business data graphs support powerful, comprehensive queries (navigation, expansion) that explore the data and the relationships. They are automatically created from existing providers of APIs from SAP and can be custom extended.
SAP Graph enables developers to use a single API and modern protocols like ODatav4 and GraphQL to access all business data across systems efficiently.
In a graph, entities (such as customers, sales orders, products, and so on) are represented as nodes. Each entity is composed of attributes (data fields such as CustomerID, ProductName, and so on). The relationships between the entities (such as a customer placing an order, or a product being part of an order) are represented as edges. This allows users to visualize and interact with data in a more intuitive and flexible way, especially for complex, interconnected datasets.
Example:

An SAP Graph API with the name Product, using the namespace sap.graph, is linked to product entities from the SAP S/4HANA* (No. 2) and from the SAP Sales Cloud (No. 3). The new API thus offers an extended view of product data stored in various SAP systems.

Developing SAP Graph
As a developer you want to build applications that consume data from business data graphs. Before Graph can be used, the Tenant administrator must configure Graph as a capability of API Management within SAP Integration Suite and assign the following role collections:
- Integration_Provisioner: You must assign this role to add capabilities, such as API Management and Graph, on the Integration Suite home page.
- After activating Graph on the Integration Suite home page, the following Graph role collection Graph.KeyUser has to be assigned to your user. With this role collection, you are automatically assigned to the following roles:
- Graph_Key_User
- Graph_Navigator_Viewer
There are two important considerations before developing your Graph application:
- What type of application are you planning to develop? What is the use case? For more information about the implications of this question, refer to Application Archetypes.
- What is your authentication strategy, and how do you plan to retrieve the necessary access token to communicate with Graph? For more information about the possible options, refer to Authentication.
There are two options to create an SAP Graph API:
- You can create APIs directly via an implementation with the SAP Graph module in Node.js. Under Source, you will find 26 video tutorials that show all the development steps in detail.
- A second approach from the field of low code is offered via SAP API Management.
There is a Graph tutorial that uses a sandbox landscape and introduces developers to Graph through simple examples.
As mentioned, the Graph Navigator provides detailed information for over 2,200 root entities.
Summary:
Why should you use SAP Graphs?
- Enable app developer productivity with powerful graph queries.
- Developers can use SAP Build (low-code), SAP Build Pro and CAP, or their own tools.
- Start with a fully connected SAP data model, out of the box (up to 4,500+ entities, 4,000+ connections).
- Customize, extend, and simplify the data graph to the "shape" of your own custom model and API.
- Developers gain high-productivity access (OData, GraphQL) to all your data via one API Secure Control.
- Protect your APIs from unauthorized use, DoS, and other content attacks.
- Manage access with unified authentication, identity propagation, and revokable credentials.
- Control which data is selectively visible for each use case.
- Abstract and hide your landscape and data source details from developers or partners.
- Avoid data replications/ETLs for new use cases, by creating dedicated BDGs.
- Integrated with API Management
- Add flexible and fine-grained traffic and quota management.
- Create triggers, events, and logs.
- Collect usage analytics and monetize your APIs.