[[{“value”:”
Introduction
SAP Job Scheduling Service on SAP Business Technology Platform (SAP BTP) is the backbone of automated, time-driven workloads for cloud-native applications. Whether you need to trigger a nightly data sync, execute a recurring business process, or run a long-running background task — the service has you covered, across both the Cloud Foundry and Kyma runtimes, through a unified REST API and a web-based dashboard.
Historically, the service offered two job types:
- HTTP Jobs — Invoke an application’s action endpoint over HTTP (synchronously or asynchronously) within your Cloud Foundry space or Kyma namespace.
- CF Task Jobs — Execute long-running Cloud Foundry tasks bound to a specific application in your CF space.
These two types are powerful within their respective boundaries. But enterprise workloads rarely live in a single space or namespace. Applications on SAP BTP frequently need to integrate with external systems — partner APIs, SAP cloud services in other subaccounts, on-premise backends, or internet-reachable third-party services. Until now, bridging that gap required writing intermediary proxy code just to relay a scheduled call outward.
That changes with the new Destination Job type.
What Is a Destination Job?
A Destination Job is a new job type in SAP Job Scheduling Service that allows you to call external applications — applications that are not part of your Cloud Foundry space or Kyma namespace — on a defined schedule.
Instead of pointing to an internal action endpoint URL, a Destination Job resolves its target through the SAP Destination service. This means the entire connectivity and authentication chain — URL resolution, token handling, proxy routing, certificate management — is offloaded to a managed BTP service that you almost certainly already use across your landscape.
Important: Destination Jobs support only destinations created via the SAP Destination service. Ad hoc URLs or hardcoded endpoints are not supported for this job type.
For a full overview of how to create and manage destinations, refer to the official SAP documentation: Managing Destinations on the SAP Help Portal.
Why Destination Jobs Matter
Modern enterprise architectures on SAP BTP are composed of multiple runtimes, subaccounts, and external systems. Consider these common scenarios:
- A Cloud Foundry application needs to trigger a scheduled process in an SAP S/4HANA Cloud system.
- A Kyma microservice must push periodic data to a third-party SaaS platform via REST API.
- An automated job needs to call a remote integration flow running in SAP Integration Suite.
- A scheduled process must invoke a backend in a different CF space or subaccount using a destination configured at subaccount level.
In all these cases, the target application is outside the scheduler’s own runtime boundary. Previously, you’d need to build and maintain an intermediate service to receive the job trigger, resolve the destination, and relay the call. With Destination Jobs, the scheduler handles this natively — no proxy layer, no extra middleware.
How It Works
Destination Jobs integrate directly with the SAP Destination service. Here is the execution flow:
SAP Job Scheduling Service
│
│ (at scheduled time)
▼
SAP Destination Service
├── Resolves destination by name
├── Retrieves target URL
├── Performs authentication flow
│ (OAuth2, Basic, Client Cert, etc.)
└── Returns connection details
│
▼
External Application / API
(outside CF space / Kyma namespace)
- At the scheduled time, the Job Scheduling Service picks up the Destination Job.
- It calls the SAP Destination service and resolves the named destination to a target URL and authentication token.
- It then invokes the external application using the resolved connection.
- Execution status and run logs are captured back in the Job Scheduling Service dashboard.
Prerequisites
Before creating a Destination Job, ensure the following are in place:
| Requirement | Details |
| SAP Job Scheduling Service instance | A service instance must exist in your BTP subaccount (Cloud Foundry or Kyma). |
| SAP Destination service instance | A Destination service instance must be created and accessible in the same subaccount. |
| Destination configured | At least one destination must be created and configured via the SAP Destination service in the BTP cockpit. |
| Dashboard access | You must have the SpaceDeveloper role (CF) or SAP_Job_Scheduling_Service_Admin role (Kyma) to access the dashboard. |
| Target application reachable | The external application must be reachable from BTP using the configured destination (internet, Private Link, or on-premise via Connectivity service). |
Supported Destination Methods
Destination Jobs support only destinations created via the SAP Destination service. The SAP Destination service offers several methods to connect to external systems, each suited to different security and connectivity requirements. You can choose from these when setting up your destination in the BTP cockpit:
| Method | Use Case |
| No Authentication | Public APIs or internal endpoints that require no credentials. |
| Basic Authentication | Username and password-protected services on the internet or on-premise. |
| Client Certificate Authentication | Mutual TLS (mTLS) — internet or Private Link endpoints requiring a certificate. |
| OAuth2 Client Credentials | Service-to-service integrations with OAuth2-protected APIs (most common for scheduled workloads). |
| OAuth2 JWT Bearer | Token exchange flows where the calling service asserts an identity via JWT. |
| OAuth2 SAML Bearer Assertion | SAML-based trust flows, commonly used with SAP systems. |
| OAuth2 User Token Exchange | User context propagation within the same tenant. |
| Principal Propagation | On-premise connectivity with user identity forwarding (requires SAP Connectivity service). |
For a complete list and configuration guidance, see Managing Destinations on the SAP Help Portal.
How to Create a Destination Job via the Dashboard
The SAP Job Scheduling Service dashboard is your central hub for managing all job types, including the new Destination Job. Here is a step-by-step walkthrough.
Step 1 — Open the Job Scheduling Service Dashboard
You can access the dashboard in two ways:
Via SAP BTP Cockpit:
- Log in to the SAP BTP Cockpit.
- Navigate to your Subaccount → Services → Instances and Subscriptions.
- Locate your Job Scheduling Service instance.
- Click View Dashboard from the Actions menu.
Via Service Bindings (CF):
- In your Cloud Foundry space, go to Service Instances.
- Find the Job Scheduling Service instance.
- Click the (Open Dashboard) icon in the Actions column.
Note: You must have the SpaceDeveloper role (CF) or the SAP_Job_Scheduling_Service_Admin role (Kyma) to access and manage jobs in the dashboard.
Step 2 — Navigate to Jobs
Once in the dashboard:
- In the left navigation area, choose Jobs.
- The Jobs overview lists all existing jobs, along with their type, status, and schedule details.
- Choose Create Job to begin creating your new Destination Job.
Step 3 — Configure the Destination Job
In the Create Job dialog, fill in the following fields:
| Field | Description |
| Name | A unique, descriptive name for your job (e.g., sync-external-crm-data). |
| Job Type | Select Destination Job from the available job types. |
| Destination Name | Enter the name of the destination as it appears in the SAP Destination service (case-sensitive). |
| HTTP Method | Select the HTTP method the job should use when calling the external application (e.g., GET, POST, PUT). |
| Path / Endpoint | Optionally specify a path relative to the destination’s base URL (e.g., /api/v1/sync). |
| Payload | For POST/PUT methods, provide the request body to send to the external application. |
| Description | A human-readable description of what the job does (optional but recommended). |
| Active | Toggle to activate the job immediately upon creation. |
Tip: Ensure the destination name you enter exactly matches the name defined in the SAP Destination service cockpit — including capitalisation and special characters.
Step 4 — Add a Schedule
A job without a schedule does not run. After creating the job:
- Open the newly created job from the Jobs list.
- Navigate to the Schedules tab.
- Choose Create Schedule.
- Configure your schedule using one of the supported formats:
| Format | Example | Description |
| Cron expression | 0 2 * * * |
Runs at 02:00 every day |
| Recurring interval | PT1H (ISO 8601) |
Runs every 1 hour |
| Specific date/time | 2026-12-01T06:00:00Z |
One-time execution |
| Human-readable repeat | 1 hour |
Simple recurring format |
- Optionally, set a Start Date/Time and an End Date/Time to bound the schedule window.
- Choose Create to save the schedule.
Step 5 — Monitor Execution and Logs
Once your Destination Job is active and scheduled:
- In the dashboard, open the job and go to the Logs or Run Logs section.
- Each schedule execution is recorded with its status (
SUCCESS,FAILED,RUNNING) and timestamp. - Detailed logs help diagnose connectivity issues, authentication failures, or unexpected responses from the external application.
Tip: For production workloads, consider enabling SAP Cloud ALM integration from the dashboard’s Actions menu to monitor your Destination Job’s health alongside other operational data in SAP Cloud ALM. This integration was introduced in May 2025.
All Three Job Types — A Complete Comparison
| Feature | HTTP Job | CF Task Job | Destination Job |
| Target | Internal app endpoint (URL) | CF task in bound app | External app via SAP Destination |
| Scope | Within CF space / Kyma namespace | Within CF space only | Outside CF space / Kyma namespace |
| Target resolution | Direct URL | CF API | SAP Destination service |
| Execution mode | Sync or async | Always async | HTTP (via Destination) |
| Created via REST API | Yes | No (dashboard only) | Yes |
| Destination service required | No | No | Yes |
| Authentication handled by | Application code | CF runtime | Destination service |
| Best for | Internal API automation | Long-running background tasks | Cross-boundary external integrations |
Use Cases
Here are real-world scenarios where Destination Jobs deliver the most value:
1. Cross-Subaccount Integration Trigger a scheduled process in a service deployed in a different BTP subaccount, using a subaccount-level destination that points to it.
2. Periodic S/4HANA Cloud Sync Schedule a daily job to call an SAP S/4HANA Cloud OData service — authenticated via OAuth2 SAML Bearer — to push or pull business data without maintaining a proxy application.
3. Third-Party API Automation Call an external SaaS platform’s REST API on a schedule (e.g., a marketing automation tool or a logistics tracking API), using OAuth2 Client Credentials for service-to-service authentication.
4. SAP Integration Suite Triggering Trigger an iFlow in SAP Integration Suite at a scheduled time, using a destination configured with the relevant endpoint and credentials.
5. On-Premise Backend Calls Invoke an on-premise backend system (via SAP Connectivity service and Cloud Connector) at a defined interval — the destination handles proxy routing transparently.
Best Practices
- Name destinations clearly — Use descriptive, environment-specific names (e.g.,
s4hana-prod-odata,crm-api-staging) so jobs are easy to audit. - Prefer OAuth2 Client Credentials for automated, unattended service-to-service calls — it is the most suitable authentication type for scheduled workloads.
- Test your destination first — Use the Check Connection feature in the BTP Destination cockpit to validate the destination before creating the job.
- Use recurring schedules over one-time schedules — SAP Job Scheduling Service deletes one-time schedules that have not run within the last 30 days (as of May 2025).
- Enable SAP Cloud ALM monitoring — For business-critical Destination Jobs, activate Cloud ALM integration to get visibility into execution health.
- Secure your payloads — Avoid embedding sensitive data in job payloads. Use destination properties and authentication flows to handle credentials securely.
Conclusion
The Destination Job is a focused, well-placed addition to the SAP Job Scheduling Service toolkit. It removes the architectural workaround that developers previously relied on — building proxy endpoints just to bridge the gap between a scheduler and an external application — and replaces it with a first-class, destination-aware job type.
By leveraging the SAP Destination service, Destination Jobs inherit a proven, secure, and centrally managed connectivity layer. The result is simpler architecture, less code to maintain, and a scheduling capability that is genuinely fit for today’s multi-system, cross-boundary enterprise landscapes.
If your team already manages destinations in BTP for other integration scenarios, onboarding to Destination Jobs is straightforward. The same destination you use elsewhere in your application can now also power a scheduled job — no duplicate configuration, no new connectivity setup.
Try it out today via the Job Scheduling Service dashboard or the REST API, and let your scheduled workloads reach as far as your architecture demands.
“}]]
[[{“value”:”IntroductionSAP Job Scheduling Service on SAP Business Technology Platform (SAP BTP) is the backbone of automated, time-driven workloads for cloud-native applications. Whether you need to trigger a nightly data sync, execute a recurring business process, or run a long-running background task — the service has you covered, across both the Cloud Foundry and Kyma runtimes, through a unified REST API and a web-based dashboard.Historically, the service offered two job types:HTTP Jobs — Invoke an application’s action endpoint over HTTP (synchronously or asynchronously) within your Cloud Foundry space or Kyma namespace.CF Task Jobs — Execute long-running Cloud Foundry tasks bound to a specific application in your CF space.These two types are powerful within their respective boundaries. But enterprise workloads rarely live in a single space or namespace. Applications on SAP BTP frequently need to integrate with external systems — partner APIs, SAP cloud services in other subaccounts, on-premise backends, or internet-reachable third-party services. Until now, bridging that gap required writing intermediary proxy code just to relay a scheduled call outward.That changes with the new Destination Job type.What Is a Destination Job?A Destination Job is a new job type in SAP Job Scheduling Service that allows you to call external applications — applications that are not part of your Cloud Foundry space or Kyma namespace — on a defined schedule.Instead of pointing to an internal action endpoint URL, a Destination Job resolves its target through the SAP Destination service. This means the entire connectivity and authentication chain — URL resolution, token handling, proxy routing, certificate management — is offloaded to a managed BTP service that you almost certainly already use across your landscape.Important: Destination Jobs support only destinations created via the SAP Destination service. Ad hoc URLs or hardcoded endpoints are not supported for this job type.For a full overview of how to create and manage destinations, refer to the official SAP documentation: Managing Destinations on the SAP Help Portal.Why Destination Jobs MatterModern enterprise architectures on SAP BTP are composed of multiple runtimes, subaccounts, and external systems. Consider these common scenarios:A Cloud Foundry application needs to trigger a scheduled process in an SAP S/4HANA Cloud system.A Kyma microservice must push periodic data to a third-party SaaS platform via REST API.An automated job needs to call a remote integration flow running in SAP Integration Suite.A scheduled process must invoke a backend in a different CF space or subaccount using a destination configured at subaccount level.In all these cases, the target application is outside the scheduler’s own runtime boundary. Previously, you’d need to build and maintain an intermediate service to receive the job trigger, resolve the destination, and relay the call. With Destination Jobs, the scheduler handles this natively — no proxy layer, no extra middleware.How It WorksDestination Jobs integrate directly with the SAP Destination service. Here is the execution flow:SAP Job Scheduling Service
│
│ (at scheduled time)
▼
SAP Destination Service
├── Resolves destination by name
├── Retrieves target URL
├── Performs authentication flow
│ (OAuth2, Basic, Client Cert, etc.)
└── Returns connection details
│
▼
External Application / API
(outside CF space / Kyma namespace)At the scheduled time, the Job Scheduling Service picks up the Destination Job.It calls the SAP Destination service and resolves the named destination to a target URL and authentication token.It then invokes the external application using the resolved connection.Execution status and run logs are captured back in the Job Scheduling Service dashboard.PrerequisitesBefore creating a Destination Job, ensure the following are in place:RequirementDetailsSAP Job Scheduling Service instanceA service instance must exist in your BTP subaccount (Cloud Foundry or Kyma).SAP Destination service instanceA Destination service instance must be created and accessible in the same subaccount.Destination configuredAt least one destination must be created and configured via the SAP Destination service in the BTP cockpit.Dashboard accessYou must have the SpaceDeveloper role (CF) or SAP_Job_Scheduling_Service_Admin role (Kyma) to access the dashboard.Target application reachableThe external application must be reachable from BTP using the configured destination (internet, Private Link, or on-premise via Connectivity service).Supported Destination MethodsDestination Jobs support only destinations created via the SAP Destination service. The SAP Destination service offers several methods to connect to external systems, each suited to different security and connectivity requirements. You can choose from these when setting up your destination in the BTP cockpit:MethodUse CaseNo AuthenticationPublic APIs or internal endpoints that require no credentials.Basic AuthenticationUsername and password-protected services on the internet or on-premise.Client Certificate AuthenticationMutual TLS (mTLS) — internet or Private Link endpoints requiring a certificate.OAuth2 Client CredentialsService-to-service integrations with OAuth2-protected APIs (most common for scheduled workloads).OAuth2 JWT BearerToken exchange flows where the calling service asserts an identity via JWT.OAuth2 SAML Bearer AssertionSAML-based trust flows, commonly used with SAP systems.OAuth2 User Token ExchangeUser context propagation within the same tenant.Principal PropagationOn-premise connectivity with user identity forwarding (requires SAP Connectivity service).For a complete list and configuration guidance, see Managing Destinations on the SAP Help Portal.How to Create a Destination Job via the DashboardThe SAP Job Scheduling Service dashboard is your central hub for managing all job types, including the new Destination Job. Here is a step-by-step walkthrough.Step 1 — Open the Job Scheduling Service DashboardYou can access the dashboard in two ways:Via SAP BTP Cockpit:Log in to the SAP BTP Cockpit.Navigate to your Subaccount → Services → Instances and Subscriptions.Locate your Job Scheduling Service instance.Click View Dashboard from the Actions menu.Via Service Bindings (CF):In your Cloud Foundry space, go to Service Instances.Find the Job Scheduling Service instance.Click the (Open Dashboard) icon in the Actions column.Note: You must have the SpaceDeveloper role (CF) or the SAP_Job_Scheduling_Service_Admin role (Kyma) to access and manage jobs in the dashboard.Step 2 — Navigate to JobsOnce in the dashboard:In the left navigation area, choose Jobs.The Jobs overview lists all existing jobs, along with their type, status, and schedule details.Choose Create Job to begin creating your new Destination Job.Step 3 — Configure the Destination JobIn the Create Job dialog, fill in the following fields:FieldDescriptionNameA unique, descriptive name for your job (e.g., sync-external-crm-data).Job TypeSelect Destination Job from the available job types.Destination NameEnter the name of the destination as it appears in the SAP Destination service (case-sensitive).HTTP MethodSelect the HTTP method the job should use when calling the external application (e.g., GET, POST, PUT).Path / EndpointOptionally specify a path relative to the destination’s base URL (e.g., /api/v1/sync).PayloadFor POST/PUT methods, provide the request body to send to the external application.DescriptionA human-readable description of what the job does (optional but recommended).ActiveToggle to activate the job immediately upon creation.Tip: Ensure the destination name you enter exactly matches the name defined in the SAP Destination service cockpit — including capitalisation and special characters.Step 4 — Add a ScheduleA job without a schedule does not run. After creating the job:Open the newly created job from the Jobs list.Navigate to the Schedules tab.Choose Create Schedule.Configure your schedule using one of the supported formats:FormatExampleDescriptionCron expression0 2 * * *Runs at 02:00 every dayRecurring intervalPT1H (ISO 8601)Runs every 1 hourSpecific date/time2026-12-01T06:00:00ZOne-time executionHuman-readable repeat1 hourSimple recurring formatOptionally, set a Start Date/Time and an End Date/Time to bound the schedule window.Choose Create to save the schedule.Step 5 — Monitor Execution and LogsOnce your Destination Job is active and scheduled:In the dashboard, open the job and go to the Logs or Run Logs section.Each schedule execution is recorded with its status (SUCCESS, FAILED, RUNNING) and timestamp.Detailed logs help diagnose connectivity issues, authentication failures, or unexpected responses from the external application.Tip: For production workloads, consider enabling SAP Cloud ALM integration from the dashboard’s Actions menu to monitor your Destination Job’s health alongside other operational data in SAP Cloud ALM. This integration was introduced in May 2025.All Three Job Types — A Complete ComparisonFeatureHTTP JobCF Task JobDestination JobTargetInternal app endpoint (URL)CF task in bound appExternal app via SAP DestinationScopeWithin CF space / Kyma namespaceWithin CF space onlyOutside CF space / Kyma namespaceTarget resolutionDirect URLCF APISAP Destination serviceExecution modeSync or asyncAlways asyncHTTP (via Destination)Created via REST APIYesNo (dashboard only)YesDestination service requiredNoNoYesAuthentication handled byApplication codeCF runtimeDestination serviceBest forInternal API automationLong-running background tasksCross-boundary external integrationsUse CasesHere are real-world scenarios where Destination Jobs deliver the most value:1. Cross-Subaccount Integration Trigger a scheduled process in a service deployed in a different BTP subaccount, using a subaccount-level destination that points to it.2. Periodic S/4HANA Cloud Sync Schedule a daily job to call an SAP S/4HANA Cloud OData service — authenticated via OAuth2 SAML Bearer — to push or pull business data without maintaining a proxy application.3. Third-Party API Automation Call an external SaaS platform’s REST API on a schedule (e.g., a marketing automation tool or a logistics tracking API), using OAuth2 Client Credentials for service-to-service authentication.4. SAP Integration Suite Triggering Trigger an iFlow in SAP Integration Suite at a scheduled time, using a destination configured with the relevant endpoint and credentials.5. On-Premise Backend Calls Invoke an on-premise backend system (via SAP Connectivity service and Cloud Connector) at a defined interval — the destination handles proxy routing transparently.Best PracticesName destinations clearly — Use descriptive, environment-specific names (e.g., s4hana-prod-odata, crm-api-staging) so jobs are easy to audit.Prefer OAuth2 Client Credentials for automated, unattended service-to-service calls — it is the most suitable authentication type for scheduled workloads.Test your destination first — Use the Check Connection feature in the BTP Destination cockpit to validate the destination before creating the job.Use recurring schedules over one-time schedules — SAP Job Scheduling Service deletes one-time schedules that have not run within the last 30 days (as of May 2025).Enable SAP Cloud ALM monitoring — For business-critical Destination Jobs, activate Cloud ALM integration to get visibility into execution health.Secure your payloads — Avoid embedding sensitive data in job payloads. Use destination properties and authentication flows to handle credentials securely.ConclusionThe Destination Job is a focused, well-placed addition to the SAP Job Scheduling Service toolkit. It removes the architectural workaround that developers previously relied on — building proxy endpoints just to bridge the gap between a scheduler and an external application — and replaces it with a first-class, destination-aware job type.By leveraging the SAP Destination service, Destination Jobs inherit a proven, secure, and centrally managed connectivity layer. The result is simpler architecture, less code to maintain, and a scheduling capability that is genuinely fit for today’s multi-system, cross-boundary enterprise landscapes.If your team already manages destinations in BTP for other integration scenarios, onboarding to Destination Jobs is straightforward. The same destination you use elsewhere in your application can now also power a scheduled job — no duplicate configuration, no new connectivity setup.Try it out today via the Job Scheduling Service dashboard or the REST API, and let your scheduled workloads reach as far as your architecture demands.”}]] Read More Technology Blog Posts by SAP articles
#SAPCHANNEL