waalaxy
waalaxy.
The Waalaxy prospect lists of the connected seat — start here: the
setup & usage
⚠ waalaxy API key
generate an API key in Waalaxy (app → Settings → CRM Sync → Generate API key — see the API doc), then paste it into oto (format zpka_… — the doc shows wa_live_…, the real keys are Zuplo zpka_ keys). It is only displayed once (revoke + regenerate in the same place).
▸ push prospects into waalaxy
the Waalaxy API is import-only: it is for feeding Waalaxy, not for reading it. 3 tools:
waalaxy_prospect_list() — always start here: the _id returned is the prospect_list_id required by the importwaalaxy_campaign() — only running/paused campaigns are visible; their _id is the campaign_idwaalaxy_prospect(op="add", prospect_list_id="...", prospect={"url": "https://www.linkedin.com/in/jane-doe"})waalaxy_prospect(op="add", prospect_list_id="...", campaign_id="...", prospects=[{"url": "...", "customProfile": {"firstName": "Jane", "lastName": "Doe", "email": "jane@acme.com", "company": {"name": "Acme"}}, "customVariables": [{"label": "pain", "value": "…"}]}, ...]) — max 100 per call, a single HTTP calldry_run=true: returns the exact payload, zero Waalaxy callswaalaxy_prospect(op="add") → Waalaxy runs invitations/messages on its own· pitfalls & limits
failed in the receipt ({total, imported, enrolled, failed: [{index, url, code, message}], items: [{index, url, importCode, prospect_id, publicIdentifier}]}), never the HTTP status alone. Frequent codes: duplicated_prospect (already in another list — pass move_duplicates_to_other_list=true or can_create_duplicates=true, the latter requires the account's import_duplicates permission), max_limit_crm (the plan's CRM quota reached), already_in_campaign, cant_add_prospect_campaign_is_archivedcustomProfile only fills the empty fields of an existing prospect, unless should_overwrite_custom_profile_data=truecustomVariables[].value ≤ 1000 characters (refused before sending)customProfile is mostly for the fields LinkedIn does not have (email, phone)duplicated_prospect, message null in practice); not exercised: campaign enrollment and the duplicate flags. The real base URL is developers.waalaxy.com (api.waalaxy.com, cited in the doc's prose, does not resolve); the lists return more fields than the schema (doNotContact, createdAt…)⚙ multiple comptes
this connector accepts multiple comptes: each stored credential becomes a named account (one name per compte), at your level, your team's or your org's.
_account="<name>" on the tool; list them: oto_identity(op='list', connector='waalaxy') (scope='org' or scope='group' for the org's or team's)oto_identity(op='set', connector='waalaxy', identity_id='<name>'); rename: op='rename' with new_name_account) and adding upoutils
chargement…
utilisation
claude code — installe le plugin oto —
claude plugin marketplace add otomata-tech/oto-plugin — mcp + skill configurés.cli —
pipx install oto-cli puis oto waalaxy …