SAP SuccessFactors Jobs API.
Every public SuccessFactors posting, one endpoint - no OData URL hunting, no per-data-center URL juggling.
Why people are confused about the SAP SuccessFactors API
SuccessFactors exposes its data over OData v2 - not REST in the modern JSON sense. Endpoint URLs vary by SAP data center (api4.successfactors.com, api5.successfactors.eu, salesdemo, performancemanager.successfactors.eu, and ~15 more), and you need to know which center each tenant is in before you can even compose a request. Cross-tenant aggregators inherit that data-center matrix.
Authentication is mid-migration from HTTP Basic Auth to OAuth2 + SAML assertion - Basic Auth is being phased out in 2024-2025 and existing integrations have to migrate or break. For job postings specifically, SuccessFactors Recruiting publishes openings to a public career site that renders client-side from an OData call; there is no documented public 'Jobs API' you can hit directly without the per-tenant OAuth dance. JobsPipe normalizes all of this into the same JSON shape as every other source.
Requires every customer to mint you a client and configure SAML. The data-center URL per tenant is non-trivial to track. Auth model is mid-migration.
Possible. The career site renders postings from an OData call; you can intercept that call but the URL pattern varies by data center and tenant configuration.
Every public SuccessFactors career site across every data center, one endpoint. Normalized JSON.
SuccessFactors OData API
SuccessFactors exposes data over OData v2 at <data-center-host>/odata/v2/. Resources include PerPerson, EmpJob, JobRequisition, JobApplication, and 200+ others. The API is comprehensive but per-tenant authenticated, OData-shaped (not modern REST JSON), and gated by Role-Based Permissions (RBP) inside each tenant. JobsPipe consumes only public-career-site data and abstracts the OData surface entirely.
SuccessFactors API data center URLs
SAP runs SuccessFactors out of multiple geographic data centers, each with its own API hostname: api4.successfactors.com (US), api5.successfactors.eu (EU), api2.successfactors.eu (EU legacy), apisalesdemo2.successfactors.com (sales demos), and roughly 15 others. Each tenant lives in exactly one data center and its API URL is fixed by where it was provisioned. Cross-tenant integrations have to maintain a tenant-to-data-center mapping. JobsPipe maintains that mapping internally so you never see it.
SuccessFactors API authentication
SuccessFactors authentication is moving from HTTP Basic Auth to OAuth2 with SAML assertion. Basic Auth is being deprecated through 2024-2025 and new tenants cannot use it. OAuth2 in SuccessFactors requires generating an X.509 certificate, registering it as an OAuth2 client in the tenant's admin, and signing a SAML assertion to mint each access token. None of this applies if you're consuming JobsPipe - we only read the public career site, which is unauthenticated.
Sample request
curl "https://api.jobspipe.dev/v1/jobs?source=successfactors" \
-H "Authorization: Bearer $JOBSPIPE_KEY" \
-H "Accept: application/json"Sample response
{
"id": "sf_NjU0MzIxMDg3",
"source": "successfactors",
"tenant": "siemens",
"title": "Lead Process Engineer, Wind Power",
"company": "Siemens Energy",
"location": {
"city": "Hamburg",
"region": "HH",
"country": "DE",
"remote": false
},
"salary": {
"min": 78000,
"max": 102000,
"currency": "EUR",
"period": "year",
"source": "explicit"
},
"employment_type": "full_time",
"posted_at": "2026-05-07T08:54:00Z",
"expires_at": null,
"apply_url": "https://jobs.siemens-energy.com/jobs/...",
"description": "Siemens Energy is seeking a Lead Process Engineer to drive operational excellence across our wind-power manufacturing sites ..."
}Every SAP SuccessFactors job record is returned in the same JSON shape as every other JobsPipe source. The full schema is documented in the docs.
Fields in every SAP SuccessFactors job record
FAQ
Does JobsPipe need OData credentials from each SuccessFactors tenant?+
No. JobsPipe reads only public career-site postings, equivalent to what an unauthenticated visitor sees. We do not call the authenticated OData API and never have access to applicant data, internal requisitions, or any non-public SuccessFactors object.
How does JobsPipe handle SuccessFactors data center URLs?+
Internally. We maintain the data-center mapping per tenant and route requests automatically. You query /v1/jobs?source=successfactors and never deal with api4/api5/salesdemo URL juggling.
What about SuccessFactors customers using HTTP Basic Auth that's being deprecated?+
Irrelevant to JobsPipe consumers. We don't authenticate against the OData API at all - only public career-site data flows through us. The Basic Auth → OAuth2 migration is your concern only if you're integrating with one specific SuccessFactors tenant.
Can I filter to one SuccessFactors company?+
Yes. ?tenant=siemens-energy filters to one tenant's SuccessFactors postings.
Try SAP SuccessFactors data free - 5,000 requests/month, no credit card.
Get a free API key