Loading...
Loading...
Integrate Apointoo booking/lead capture and conversion tracking into any web project. Use when adding an Apointoo lead form, calling the Apointoo intake API, or wiring GTM conversion tracking for an Apointoo tenant. Language-agnostic (HTTP) with a GTM/dataLayer recipe.
npx skill4agent add vizuh/apointoo-skills-ce apointooSkill v1.0.1 · verified against the live Apointoo API on 2026-06-26. See. A major bump = a breaking change to the integration contract below.CHANGELOG.md
POST https://dash.apointoo.com/api/intake/<your-slug>/contact
Header: X-Apointoo-Tenant-Key: <your publishable key>
Content-Type: application/json{
"lead": { "email": "...", "phone": "...", "name": "...", "message": "..." },
"attribution": { "gclid": "...", "utm_source": "...", "utm_medium": "...", "utm_campaign": "..." },
"marketingConsent": true
}lead.emaillead.phone422201 { "submissionId": "...", "kind": "contact" }Origin| Var | Purpose |
|---|---|
| API base (default |
| your tenant slug |
| publishable key — server-side (recommended) |
| the key for pure client-side calls (it's origin-gated) |
| your GTM container id |
201const { submissionId } = await res.json()
window.dataLayer = window.dataLayer || []
window.dataLayer.push({
event: 'generate_lead',
form_id: 'your_form',
event_id: crypto.randomUUID(), // GA4/Ads dedupe id
transaction_id: submissionId, // ties the hit to the server record for offline dedupe
value: 1,
currency: 'EUR',
gclid, fbclid, // from your captured attribution
})generate_leadevent_idtransaction_idgtag()fbq()curl -X POST "$APOINTOO_DASHBOARD_URL/api/intake/$SLUG/contact" \
-H "X-Apointoo-Tenant-Key: $KEY" -H 'content-type: application/json' \
-d '{"lead":{"email":"test@example.com"},"attribution":{}}'
# expect: 201 {"submissionId":"...","kind":"contact"}generate_lead