Aan de slag
2 min lezen
API-voorbeelden
Lees records, maak een bedrijf en contactpersoon aan en werk een CRM-taak bij.
De voorbeelden gebruiken de basis-URL van het beheerscherm en een servervariabele voor het geheim:
export TRELYN_BASE_URL="https://app.trelyn.nl/api/v1"
# Stel TRELYN_API_KEY veilig in, bijvoorbeeld via je deployment-secrets.
#Bedrijf aanmaken en bijwerken
Vereist: companies:read en companies:write.
curl -X POST "$TRELYN_BASE_URL/companies" \
-H "Authorization: Bearer $TRELYN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Bakkerij De Vries","email":"[email protected]","website":"https://devries.example"}'
Het antwoord heeft status 201 en bevat data.id. Gebruik die UUID in volgende verzoeken:
curl -X PATCH "$TRELYN_BASE_URL/companies/$COMPANY_ID" \
-H "Authorization: Bearer $TRELYN_API_KEY" \
-H "Content-Type: application/json" \
-d '{"industry":"Retail"}'
#Contactpersoon koppelen
Vereist: contacts:read en contacts:write. Gebruik een bestaand bedrijf uit dezelfde workspace.
curl -X POST "$TRELYN_BASE_URL/contacts" \
-H "Authorization: Bearer $TRELYN_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"firstName\":\"Eva\",\"lastName\":\"De Vries\",\"email\":\"[email protected]\",\"companyId\":\"$COMPANY_ID\"}"
#Alle pagina's lezen met JavaScript
const base = process.env.TRELYN_BASE_URL;
const key = process.env.TRELYN_API_KEY;
let cursor = null;
const seen = new Set();
do {
const url = new URL(`${base}/companies`);
url.searchParams.set("limit", "100");
if (cursor) url.searchParams.set("cursor", cursor);
const response = await fetch(url, {
headers: { Authorization: `Bearer ${key}` },
});
const body = await response.json();
if (!response.ok) {
throw new Error(`${body.error.code}: ${body.error.message} (${body.error.requestId})`);
}
for (const company of body.data) {
if (seen.has(company.id)) continue;
seen.add(company.id);
console.log(company.id, company.name);
}
cursor = body.nextCursor;
} while (cursor);
Deze code stopt bij fouten. Voeg in productie foutafhandeling en begrensde retries toe volgens fouten en limieten. Bij gelijktijdige wijzigingen kan een gepagineerde lijst verschuiven; gebruik webhooks voor doorlopende synchronisatie en voer zo nodig een volledige herlezing uit.
#CRM-taak aanmaken en afronden
Vereist: tasks:read en tasks:write. Een CRM-taak is een activiteit van het type task, geen projecttaak.
curl -X POST "$TRELYN_BASE_URL/tasks" \
-H "Authorization: Bearer $TRELYN_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"body\":\"Offerte nabellen\",\"companyId\":\"$COMPANY_ID\",\"dueAt\":\"2026-11-01T09:00:00Z\"}"
curl -X POST "$TRELYN_BASE_URL/tasks/$TASK_ID/complete" \
-H "Authorization: Bearer $TRELYN_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
#Deals en stages
Haal eerst de pipeline en stages op met GET /pipelines en het vinkje pipelines:read. Gebruik een open stage uit de gewenste pipeline:
curl -X POST "$TRELYN_BASE_URL/deals" \
-H "Authorization: Bearer $TRELYN_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"name\":\"Nieuwe website\",\"pipelineId\":\"$PIPELINE_ID\",\"stageId\":\"$STAGE_ID\",\"source\":\"Eigen integratie\"}"
Dit vereist deals:read en deals:write. Voeg je oneTimeRevenue, mrr of estimatedBudget toe, dan is ook deals:values nodig. Gebruik de API-referentie voor alle ondersteunde velden en waarden.
Kom je er niet uit?
Ons supportteam helpt je verder, meestal binnen één werkdag.
Laatst bijgewerkt op 16 oktober 2026
