WundertreOS

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.

Idempotent Find + Create

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.