Technology Blog Posts by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 

Abstract

With the availability of the Task Chain public API, you can now start SAP Datasphere task chains directly from SAP Analytics Cloud (SAC) Multi-Actions using the External API step. This enables more automated end-to-end processes that require coordinated actions in both SAC and Datasphere (DSP).

In this article, we cover the prerequisites and detailed setup for starting DSP task chains from SAC Multi-Actions using the External API step. To connect the dots, we also include a simplified seamless planning scenario that demonstrates the integration end to end.

Prerequisites

  • SAP Datasphere provides a public API for Task Chains starting in DSP 2026.02. Reference: https://api.sap.com/api/DatasphereTasks/overview

  • A technical user must already be enabled via the OAuth Client definition in Datasphere. This allows you to create a technical user with specific authorizations to call the public APIs and provides more flexible and controlled security management.

  • The SAC Multi-Actions External API step supports calling the Task Chain API starting in SAC 2026.02 (2026.QRC1).

Configuration

SAP Datasphere (DSP)

1) Prepare the Task Chain

Create a task chain in Datasphere:

task chain defined in DSP

2) Create an OAuth Client

Create an OAuth Client in Datasphere with the following settings:

  • Purpose: Select Technical User

  • Roles: Assign a role that has access to the space where the task chain is located

  • Authorization: Select Client Credentials

oauth client definition in DSP

3) Review the API Definition

Refer to the Task Chain API documentation here:

Overview | Tasks | SAP Business Accelerator Hub

SAP Analytics Cloud (SAC)

1) Create a Connection to Datasphere

Create an http api connection to Datasphere which will be leveraged by multi-actions API step:

Create http api connection in SAC

2) Configure a Multi-Action with an External API Step

Because the Task Chain API runs asynchronously, you typically configure:

  • One API call to start the task chain

  • A second API call to poll and retrieve the execution status

Step A: Configuration of Starting the Task Chain

In the Generic API Settings section:

Request fields

  • Method: POST

  • API URL: https://<host name>/api/v1/datasphere/tasks/chains/<dsp space name>/run/<technical name of task chain>

Generic API settings

Response fields

  • Select Get API trigger status from HTTP status code and response body.

response setting

Click Configure Fields Mapping and define the expected response format, for example:

{
"logId": 123456
}

Map the logId field in response to Job ID:

response fields mapping

Leave the status mapping empty. The API step will use the HTTP status code to determine whether the task chain was started successfully.

Step B: Configuration of Polling the Execution Status

In the Get API Execution Result section:

  • Method: Select Asynchronous Return

  • Polling API URL: https://<host name>/api/v1/datasphere/tasks/logs/<dsp space id>/${jobId}

In Response fields, select Get API execution result from HTTP status code and response body:

query api setting

Click Configure Fields Mapping and define the expected response format, for example:

{
"status": ""
}

In Fields Mapping, map the status field to Status:

query response fields mapping

In Status Mapping, define the following mappings:

API Step Status ValueExternal Application Status Value
DONECOMPLETED
FAILEDFAILED
IN_PROCESSRUNNING

Run the Multi-Action

Run the Multi-Action. The API step completes when the Task Chain execution finishes:

Task chain monitor in DSP

multi-actions notification

Sample scenario

Below is a mimic example of using a Datasphere task chain in SAC Multi-Actions for a seamless planning workflow:

Planners enter Gross Revenue by Customer in SAC; a Datasphere Task Chain then runs a Transformation Flow that enriches the plan with customer attributes and computes Net Revenue into a curated fact table, which is exposed via an Analytic Model for live analysis in the SAC story.

  • Plan in SAC: Planners plan Gross Revenue by Date, Customer, Version in SAC.

  • Enrich in Datasphere: Customer attributes such as Segment (e.g., Enterprise/SMB), Industry, and Discount Rate are maintained in Datasphere.

  • Compute in Datasphere: Net Revenue = Gross × (1 − DiscountRate)

  • Report live in SAC: Datasphere exposes the curated data through an analytic model consumed by SAC, enabling analysis such as: “How much of our planned revenue comes from Enterprise vs. SMB?”

Step 1) SAC: Create a Planning Model Stored in Datasphere

In SAC, create a planning model (for example,  GrossRevenuePlanningModel) and select an SAP Datasphere space as the data storage location. This allows storing fact and master data in Datasphere and reduces the need for manual export or replication.

A simplified model could include:

  • Dimensions: Customer, Date, Version

  • Measure: PlannedGrossRevenue

Expose the model’s fact table to the Datasphere space so it can be used for downstream modeling.

select DSP space to locate the SAC planning modelExpose fact table in DSPPlanning data in SACExposed fact table in DSP space

Step 2) Datasphere: Create a Customer Enrichment Table

Create a local table MD_CUSTOMER_INFO with:

  • Customer

  • Segment (Enterprise / SMB)

  • Industry

  • DiscountRate

Enriched customer infomation in DSP

Step 3) Datasphere: Create an Analytic Model for Net Revenue Analysis

Create a target local table T_PLAN_NET_REVENUE with:

  • Date

  • Customer

  • Version

  • Segment

  • GrossRevenue

  • NetRevenue

Then build an analytic model PLAN_NET_REVENUE on top of T_PLAN_NET_REVENUE which can be consumed by SAC live connection.

Step 4) Datasphere: Build a Transformation Flow to Populate T_PLAN_NET_REVENUE

Create a Transformation Flow:

  • Sources:

    1. Exposed SAC plan fact object

    2. MD_CUSTOMER_INFO (local table)

  • Transform: Join and calculate NetRevenue

  • Target: T_PLAN_NET_REVENUE

Minimal SQL logic (inside the Transformation Flow “SQL View Transform”)

SELECT

p."Date_CALMONTH",
​
p."Customer_ID",
​
p."Version_ID",
​
c."Segment",
​
p."PlannedGrossRevenue" AS "GrossRevenue",
​
p."PlannedGrossRevenue" * (1 - COALESCE(c."DiscountRate", 0)) AS "NetRevenue"
​
FROM "sap.sac.GrossRevenuePlanningModel" p
​
LEFT JOIN "MD_CUSTOMER_INFO" c
​
 ON p."Customer_ID" = c."Customer"

transformation flow definition

Step 5) Create a Task Chain and Trigger It from SAC

Create a task chain that includes the Transformation Flow from Step 4. Then call the task chain from SAC using the Multi-Actions External API step (as described in the Configuration section above).

Step 6) SAC: Build a Story to Run the Multi-Action and Analyze Live Results

In SAC, add a Multi-Action starter that runs the task chain. Then build a live report based on the target analytic model (PLAN_NET_REVENUE) in Datasphere.

Run multi-actions to trigger transformation and analyze live results from DSP

After submitting planned data in SAC and starting the multi-actions, it starts the task chain from multi-actions external API step to start the data transformation flow in DSP.  And after it gets done, refresh the story and user can analyze the transformed data with addtional customer infomation and calculated measures via a live connection to DSP in the same story.

23 Comments
Labels in this area