Guide

Forbind jeres eget system via growthub's REST API

Denne guide er til jer (eller jeres udvikler), der vil sende data til growthub fra et system, growthub ikke har en færdig forbindelse til — jeres egen platform, Make/Zapier, eller en skræddersyet integration. Kræver, at I selv (eller jeres udvikler) kan sende en HTTP POST-anmodning.

Hvad growthub skal bruge

Kun én ting: en hemmelighed, I selv vælger (mindst 16 tegn), som I sender med hver anmodning som bevis på, at det er jer.

FeltHvordan det bruges
Webhook-hemmelighedSendes som HTTP-headeren X-Webhook-Secret på hvert POST-kald. growthub afviser ethvert kald uden en korrekt hemmelighed — der findes ingen adgang uden den.

Hvordan det virker

  1. Vælg en stærk hemmelighed selv (mindst 16 tegn — brug fx en password-generator).
  2. Log ind på growthub.dkOpsætning"Hvor er dine kundedata?" → vælg REST API-kortet → indsæt hemmeligheden.
  3. Jeres organisations-id: I får det af os ved opsætning (der er pt. ikke et sted i growthub, hvor I selv kan slå det op).
  4. Send data til:
    POST https://growthub-production.up.railway.app/webhooks/ingest/{jeres-org-id}
    X-Webhook-Secret: [jeres hemmelighed]
    Content-Type: application/json
    
    {
      "contacts": [ { "email": "kunde@example.dk", "name": "...", "total_spent": 1234.50 } ],
      "transactions": [ { "external_id": "ORDER-123", "email": "kunde@example.dk", "amount": 499, "occurred_at": "2026-08-01T12:00:00Z" } ],
      "deals": [ { "external_id": "DEAL-42", "status": "open", "opened_at": "2026-08-01T12:00:00Z" } ]
    }
    Alle tre lister (contacts, transactions, deals) er valgfrie hver for sig — send kun det, I har. En kunde-række kræver en gyldig e-mail; en transaktions-række kræver external_id, amount og occurred_at, samt enten email eller contact_id; en deal-række kræver external_id, status (open, won eller lost) og opened_at — og closed_at, hvis status ikke er open.
  5. growthub svarer med et resumé: hvor mange rækker der blev gemt, og en præcis begrundelse for hver række, der blev afvist (aldrig en tavs fejl).

Vigtigt at vide

  • Op til 5.000 rækker pr. liste pr. anmodning.
  • Hele anmodningens indhold (Content-Length) må maks. være 5 MB — overskrides det, afvises hele kaldet med HTTP 413, før nogen rækker læses. Batchér jeres data i flere kald, hvis I har mere.
  • Beløb accepteres i både dansk (1.234,56) og engelsk (1,234.56) talformat.
  • Rækker, der peger på samme e-mail/eksterne ID inden for én anmodning, slås sammen (den seneste vinder).
  • Felt for felt, ikke alt-eller-intet: sender I et felt (fx total_spent), overskriver det, hvad growthub allerede har for den kontakt — udelader I feltet helt, rører growthub ikke ved den eksisterende værdi. Har I allerede Shopify eller Understory forbundet, og de ejer omsætningstallet for jeres kunder, så udelad total_spent i jeres webhook-kald, medmindre I bevidst vil overskrive det.

Sikkerhed

Hemmeligheden er en adgangskode. Vælg den selv, og del den kun med det system, der skal sende data. growthub opbevarer den i et system, kun serveren har adgang til (aldrig synlig i browseren), og sender den kun over krypterede forbindelser. Send den ALDRIG som en del af URL'en (fx ?secret=...) — kun som HTTP-headeren X-Webhook-Secret.

Vi bruger kun nødvendige cookies for at siden virker. Med dit samtykke bruger vi også statistik-cookies til at forstå, hvordan siden bruges. Du kan altid ændre dit valg.