Overzicht
Salesforce is het meest breed ingezette enterprise CRM-platform ter wereld, gebruikt door organisaties in verkoop, service, marketing en operaties om klantrelaties, verkooppijplijnen, servicecases, marketingcampagnes en de bedrijfsprocessen die over deze functies lopen te beheren. Voor organisaties die Salesforce draaien als hun klantdataplatform is integratie tussen Salesforce en de maatwerk software, operationele systemen en data-infrastructuur die de organisatie gebruikt een veelvoorkomende en vaak kritieke vereiste.
Het Salesforce-platform biedt verschillende integratie-interfaces. De Salesforce REST API en SOAP API voor programmatische toegang tot standaard en maatwerk Salesforce-objecten. De Bulk API voor hoog-volume dataoperaties. De Streaming API en Platform Events voor realtime event-gedreven integratie. De Metadata API voor programmatische toegang tot Salesforce-configuratie.
Wij bouwen Salesforce-integraties voor organisaties die hun maatwerk software, operationele systemen en data-infrastructuur moeten verbinden met Salesforce.
Wat Salesforce Integratie Dekt
Salesforce API authenticatie. Salesforce gebruikt OAuth 2.0 voor API-authenticatie, met verschillende stromen geschikt voor verschillende integratiescenario's.
Connected app: de Salesforce Connected App-configuratie in Setup die de externe applicatie registreert — de consumer key en consumer secret. De OAuth-scopes — api voor REST API-toegang, full voor volledige toegang, refresh_token voor offline toegang.
Gebruikersnaam-wachtwoord stroom: de OAuth 2.0 resource owner password credentials stroom voor server-naar-server integraties — het POST https://{instance}.salesforce.com/services/oauth2/token verzoek met grant_type=password, consumer key, consumer secret, gebruikersnaam, wachtwoord en beveiligingstoken.
JWT Bearer stroom: de aanbevolen aanpak voor server-naar-server integraties — de applicatie ondertekent een JWT-bewering met een privésleutel en Salesforce ruilt de bewering voor een toegangstoken zonder een wachtwoord te vereisen. De JWT-claims — iss (consumer key), sub (gebruikersnaam), aud (Salesforce aanmeldings-URL), exp (vervaldatum).
Web Server stroom: de OAuth 2.0 autorisatiecodestroom voor integraties die Salesforce benaderen namens een specifieke gebruiker.
Instantie-URL: de Salesforce instance_url geretourneerd in de OAuth-tokenrespons — de basis-URL voor volgende API-aanroepen.
REST API — CRUD operaties. Standaard aanmaken, lezen, bijwerken en verwijderen operaties op Salesforce-objecten.
Record aanmaken: het POST /services/data/v{version}/sobjects/{SObjectName} eindpunt voor het aanmaken van records. De JSON-payload met de veldwaarden. De respons met de id van het aangemaakte record.
Record ophalen: het GET /services/data/v{version}/sobjects/{SObjectName}/{recordId} eindpunt. De fields queryparameter voor het selecteren van specifieke velden.
Record bijwerken: het PATCH /services/data/v{version}/sobjects/{SObjectName}/{recordId} eindpunt. De PATCH-semantiek die alleen de opgegeven velden bijwerkt.
Record verwijderen: het DELETE /services/data/v{version}/sobjects/{SObjectName}/{recordId} eindpunt.
Upsert op extern ID: het PATCH /services/data/v{version}/sobjects/{SObjectName}/{externalIdFieldName}/{externalIdValue} eindpunt voor het aanmaken of bijwerken van een record op basis van een externe identificator.
SOQL — Salesforce Object Query Language. De SQL-achtige querytaal voor het zoeken en filteren van Salesforce-records.
SOQL queries: het GET /services/data/v{version}/query?q={SOQL_query} eindpunt voor het uitvoeren van SOQL-queries. De SOQL-syntaxis — SELECT veld1, veld2 FROM ObjectNaam WHERE conditie ORDER BY veld LIMIT n.
Relatiequeries: SOQL's relatiedoorstuursingssyntaxis voor queries over gerelateerde objecten.
Datum literalen: SOQL-datum literalen voor filtering op tijdsperiode — TODAY, YESTERDAY, THIS_WEEK, LAST_N_DAYS:n.
Querypaginering: de nextRecordsUrl in de queryrespons voor het ophalen van volgende pagina's.
Bulk API 2.0. De hoog-volume dataoperatie API voor het invoegen, bijwerken, upserten en verwijderen van grote aantallen records.
Bulk taak aanmaken: het POST /services/data/v{version}/jobs/ingest eindpunt voor het aanmaken van een bulk ingest-taak. De taak met het object, de operation (insert, update, upsert, delete), de contentType (CSV).
Data uploaden: het PUT /services/data/v{version}/jobs/ingest/{jobId}/batches eindpunt voor het uploaden van de CSV-data.
Taakstatus beheer: het PATCH /services/data/v{version}/jobs/ingest/{jobId} eindpunt voor het wijzigen van taakstatus. Het taakstatus pollen tot het JobComplete of Failed bereikt.
Resultaten ophalen: de successfulResults en failedResults eindpunten voor het ophalen van de per-record resultaten na taakvoltooiing.
Streaming API en Platform Events. Realtime eventlevering van Salesforce naar externe systemen.
Platform Events: Salesforce Platform Events zijn maatwerk event-objecten die Salesforce publiceert wanneer specifieke bedrijfsevents plaatsvinden. Het Platform Event-schema gedefinieerd in Salesforce Setup.
CometD abonnement: het Bayeux-protocol-gebaseerde streaming dat externe systemen gebruiken om te abonneren op Salesforce streaming-kanalen. De CometD-handshake, het kanaalabonnement voor Platform Events (/event/EventName__e) of Change Data Capture (/data/ObjectName__ChangeEvent).
Change Data Capture: Salesforce CDC dat wijzigingsevents publiceert wanneer standaard of maatwerk objectrecords worden aangemaakt, bijgewerkt, verwijderd of ongedaan gemaakt.
Replay ID: het Salesforce event replay-mechanisme dat abonnees toestaat events aan te vragen vanaf een specifiek punt in het eventlog.
Outbound berichten en webhooks. Salesforce-geïnitieerde HTTP-notificaties aan externe systemen.
Outbound berichten: de Salesforce Workflow Rule of Process Builder outbound message actie die een SOAP HTTP POST stuurt naar een externe URL wanneer een workflowconditie is voldaan.
Flow-getriggerde webhooks: Salesforce Flow's HTTP-actie voor het sturen van REST webhook-notificaties naar externe systemen.
Maatwerk objecten en metadata. Werken met Salesforce maatwerk objecten, maatwerk velden en metadata programmatisch.
Describe API: het GET /services/data/v{version}/sobjects/{SObjectName}/describe eindpunt voor het ophalen van de volledige veldbeschrijving van een Salesforce-object.
Metadata API: de Salesforce Metadata API voor programmatische toegang tot Salesforce-configuratie.
Keuzelijstwaarden: de enumOrId waarden voor keuzelijstvelden opgehaald van het describe-eindpunt.
Composite API. API-aanroepvolume verminderen door meerdere operaties in een enkel verzoek te combineren.
Composiet verzoek: het POST /services/data/v{version}/composite eindpunt voor het uitvoeren van tot 25 REST API-verzoeken in een enkele HTTP-aanroep. De allOrNone vlag en de compositeRequest array van deelverzoeken.
SObject Collectie: het POST /services/data/v{version}/composite/sobjects eindpunt voor het aanmaken, bijwerken of verwijderen van tot 200 records van elk objecttype in een enkel verzoek.
Apex REST en maatwerk eindpunten. Maatwerk server-zijde logica blootgesteld als REST-eindpunten vanuit Salesforce.
Apex REST: de Salesforce Apex-klasse geannoteerd met @RestResource die maatwerk server-zijde logica blootstelt als een REST API-eindpunt.
Integratiepatronen
Operationeel systeem naar Salesforce synchronisatie. Het meest voorkomende Salesforce-integratiepatroon — data aangemaakt of bijgewerkt in een operationeel systeem wordt gesynchroniseerd naar Salesforce.
Salesforce naar operationeel systeem synchronisatie. Salesforce-data die naar operationele systemen moet stromen — de gesloten Opportunity die accountprovisioning triggert, het goedgekeurde Offerte dat ordercreatie triggert in het ERP.
Bidirectionele contact en account synchronisatie. Klant stammdata consistent houden tussen Salesforce en andere systemen.
Bulk data migratie. De initiële datalading bij het verbinden van een nieuw systeem met een bestaande Salesforce-organisatie.
Gebruikte Technologieën
- C# / ASP.NET Core — Salesforce-integratie de
NetCoreForcebibliotheek of directe HTTP met de Salesforce REST API gebruikend - Python — Salesforce-integratie de
simple-salesforcebibliotheek gebruikend voor REST API-toegang en datapijplijnontwikkeling - TypeScript / Node.js — Salesforce-integratie de
jsforcebibliotheek gebruikend voor Node.js-applicaties - Java — Salesforce-integratie de Salesforce Java SDK of directe REST API-toegang gebruikend voor Java-gebaseerde enterprise systemen
- JWT Bearer / OAuth 2.0 — Salesforce API-authenticatie
- REST / HTTP — Salesforce REST API-communicatie
- SOAP — Salesforce SOAP API en outbound berichtafhandeling
- CometD / Bayeux — Salesforce Streaming API en Platform Event-abonnement
- Bulk API 2.0 — hoog-volume Salesforce dataoperaties
- SQL (PostgreSQL / MySQL) — synchronisatiestatus, extern ID-mapping, event replay-tracking
- Redis — tokencaching, eventdeduplicatie, synchronisatietaakcoördinatie
- Hangfire / geplande taken — periodieke synchronisatie, bulk dataoperaties
- Docker — gecontaineriseerde integratiedienst implementatie
- GitHub Actions — CI/CD pijplijn voor integratiedienst implementatie
Salesforce Integratie Complexiteit
Salesforce-integratiecomplexiteit komt van verschillende bronnen. De OAuth-authenticatie met instantie-URL-ontdekking. De SOQL-querytaal die op belangrijke manieren verschilt van SQL. Het relatiemodel tussen objecten. De veldniveaubeveiliging. De validatieregels die gegevenskwaliteit afdwingen. De gouverneur limieten die het aantal API-aanroepen per 24-uur begrensen.
Het begrijpen van deze Salesforce-specifieke beperkingen en het ontwerpen van de integratie om binnen hen te werken — de Composite API gebruiken om aanroepvolume te verminderen, Bulk API gebruiken voor grote datasets, de Streaming API gebruiken in plaats van pollen voor realtime data — is het verschil tussen een Salesforce-integratie die betrouwbaar werkt in productie en één die gouverneur limieten raakt.
Salesforce Verbonden met Uw Bedrijfssystemen
Salesforce-integraties gebouwd op productiestandaarden — JWT Bearer authenticatie voor server-naar-server connectiviteit, SOQL-queries geoptimaliseerd voor de vereiste data-toegangspatronen, Bulk API voor hoog-volume dataoperaties, Platform Events en Change Data Capture voor realtime bidirectionele synchronisatie, composiet operaties die API-aanroepvolume minimaliseren en het gouverneur limiet bewustzijn dat integraties betrouwbaar laat werken binnen Salesforce's beperkingen.