Zapier actions
Every WundertreOS action and the underlying API endpoint that powers it.
Each action is a single API call. Fields shown in the Zap editor map 1:1 to the request body documented in the API reference.
Contact actions
Create Contact
POST /api-contacts — see Create contact.
Only first_name is required. Defaults: status="active", source="api", tags=[]. Returns 201 with the new record.
Update Contact
PATCH /api-contacts/:id — see Update contact.
Only fields you populate in the Zap are sent in the body. Updatable: first_name, last_name, email, phone, company, company_id, job_title, industry, address_line1, address_line2, city, state, zip, country, tags, status, stage, source, notes, linkedin_url, score.
Delete Contact
DELETE /api-contacts/:id — see Delete contact.
Find Contact
POST /api-contacts-search — see Search contacts.
Search by email, phone, first_name, last_name, or tags (contact must contain ALL tags). Returns up to limit matches (default 10, max 50). Use Zapier's "Create WundertreOS contact if it doesn't exist yet" toggle to chain straight into a Create Contact step.
Add Tag to Contact
POST /api-contacts/:id/tags
Adds/merges tag(s) onto a contact. Idempotent and case‑insensitive — re‑running the Zap won't duplicate tags. Accepts a single tag string or a list of tags, and does not replace the contact's existing tag list.
Deal actions
Create Deal
POST /api-deals — see Create deal.
Required: title. Optional: contact_id, company_id, value, currency, pipeline_id, stage_id, expected_close_date, notes.
If pipeline_id / stage_id are omitted, the API places the deal in the org's default pipeline and its first stage. In Zapier, pipeline and stage are optional dropdowns populated from GET /api-pipelines.
Update Deal
PATCH /api-deals/:id — see Update deal.
Only fields you populate in the Zap are sent in the body. Updatable: title, value, currency, expected_close_date, notes, contact_id, company_id, stage_id, lost_reason.
Mark Deal Won / Lost
PATCH /api-deals/:id with { "status": "won" } or { "status": "lost", "lost_reason": "…" } — see Update deal.
Moves the deal to the pipeline's won / lost stage and stamps won_at / lost_at, exactly as dragging the card in the app does — workflow triggers, purchase conversions, and deal.updated webhooks all fire. Typical use: a "Sold" event in your order system marks the matching WundertreOS deal won.
Use Find Contact with the "Create if not found" toggle when ingesting leads from any other Zapier app. WundertreOS will return the existing contact when there's a match (by email or tags) and create a new one otherwise — no duplicates.
