Så hämtar du Groweo®-kontakter till Salesforce via API

Med Groweos GET API kan du hämta kontakter från Groweo® Contacts till Salesforce och skapa eller uppdatera motsvarande Contact- eller Lead-poster.

Integrationen fungerar genom att Salesforce hämtar data från Groweo med GET-anrop. Groweo skickar inte automatiskt kontakter till Salesforce och API kan inte användas för att skapa, redigera eller radera kontakter i Groweo.

I den här guiden går vi igenom ett sätt att bygga integrationen med Salesforce External Credentials, Named Credentials och Apex.

Obs: Salesforce-miljöer och konfigurationer kan skilja sig åt. Låt gärna en Salesforce-administratör eller utvecklare granska implementationen.

Innan du börjar

Du behöver:

  • en Groweo API-token
  • behörighet att konfigurera External Credentials och Named Credentials i Salesforce
  • behörighet att skapa ett Permission Set
  • behörighet att arbeta med Apex om API-anropet implementeras med Apex.

1. Hämta din Groweo API-token

Be din kontaktperson på Groweo eller Groweos kundsupport om en API-token.

Endpointen för kontakter är:

GET https://engine.groweo.com/engine/api/client-api/contacts

Du kan till exempel hämta de första 50 kontakterna med:

?page=1&limit=50&populateModuleData=true

API-token skickas i HTTP-headern:

x-client-api-token: <API_TOKEN>

Testa anropet exempelvis med Postman eller cURL innan du konfigurerar Salesforce.

Spara inte API-token direkt i Apex eller annan källkod.

2. Skapa en External Credential i Salesforce

Gå till:

Setup
→ Named Credentials
→ External Credentials
→ New

Exempel:

Label: Groweo API Credential
Name: Groweo_API_Credential
Authentication Protocol: Custom

Skapa därefter en Principal, till exempel:

Parameter Name: Groweo
Identity Type: Named Principal

Lägg till en authentication parameter:

Name: ApiToken
Value: <GROWEO API TOKEN>

3. Lägg till HTTP-headern som Groweo kräver

Skapa en custom header:

x-client-api-token

med värdet:

{!$Credential.Groweo_API_Credential.ApiToken}

Använd de faktiska API-namnen från din Salesforce-miljö om de skiljer sig från exemplet.

4. Skapa en Named Credential

Gå till:

Setup
→ Named Credentials
→ Named Credentials
→ New

Exempel:

Label: Groweo API
Name: Groweo_API
URL: https://engine.groweo.com
External Credential: Groweo API Credential

Stäng av Generate Authorization Header, eftersom Groweo använder x-client-api-token för autentisering.

5. Ge integrationsanvändaren rätt behörigheter

Skapa ett Permission Set, till exempel:

Groweo API Access

Ge åtkomst till den Principal som används av Groweo External Credential och tilldela Permission Set till användaren som kör integrationen.

Beroende på Salesforce-konfigurationen kan ytterligare credential-relaterade behörigheter behövas.

6. Testa API-anropet med Apex

När Named Credential är konfigurerad kan endpointen anropas via:

callout:Groweo_API/engine/api/client-api/contacts

API-token behöver inte finnas i Apex-koden. Salesforce lägger till den konfigurerade headern via External Credential.

7. Kontrollera JSON-svaret och definiera fältmappningen

Börja med att kontrollera det faktiska JSON-svaret från din Groweo-miljö.

En möjlig mappning är:

Data i GroweoSalesforce
kontaktens unika identifierareGroweo ID
förnamnFirst Name
efternamnLast Name
e-postadressEmail
telefonnummerPhone

Tabellen är ett exempel på en möjlig mappning och beskriver inte Groweos dokumenterade response-schema.

Kontrollera därför alltid de faktiska fältnamnen och JSON-strukturen innan du bygger mappningen.

8. Spara Groweo-ID i Salesforce

Om Groweos API-svar innehåller en stabil unik identifierare för kontakten kan du skapa ett Salesforce-fält, exempelvis:

Groweo_ID__c

och konfigurera det som:

Type: Text
Unique: true
External ID: true

Då kan Salesforce upsert användas för att uppdatera en befintlig post eller skapa en ny.

Använd inte automatiskt e-postadressen som permanent identifierare, eftersom den kan ändras.

9. Hantera paginering

Groweos API använder paginering:

?page=1&limit=50

Integrationen behöver därför hämta alla relevanta sidor, inte bara den första.

Bestäm exakt hur den sista sidan identifieras utifrån det faktiska API-svaret från Groweo.

10. Schemalägg synkroniseringen

Om kontakterna ska hämtas automatiskt kan Scheduled Apex kombineras med Queueable Apex.

Flödet kan exempelvis vara:

Scheduled Apex
      ↓
Queueable Apex
      ↓
Groweo GET API
      ↓
JSON-hantering
      ↓
fältmappning
      ↓
Salesforce upsert

Så fungerar integrationen

GROWEO®
   │
   │ GET
   ▼
Contacts API
   │
x-client-api-token
   │
   ▼
Salesforce External Credential
   │
   ▼
Salesforce Named Credential
   │
   ▼
Apex
   │
fältmappning
   ▼
Contact / Lead
   │
External ID
   ▼
upsert

Groweo fungerar som källa för kontaktdata. Salesforce initierar hämtningen och skapar eller uppdaterar poster enligt integrationslogiken.