CRM
12 tools

CRM tools

Search, create and update contacts, manage opt-outs and organise people with tags.

Badges:Read onlyWrites dataSends to WhatsAppDestructive
waca_contacts_get#

Get one contact

Read only

Full profile of one contact: name, phone, status, opt-out state, tags, custom attributes and chat activity.

Parameters (1)›
  • contact_idrequired

    string

    No extra notes.
waca_contacts_check_phone#

Check whether a phone is already a contact

Read only

Normalises a phone number and reports whether a contact with it already exists. Call before waca_contacts_create to avoid a PHONE_DUPLICATE error.

Parameters (2)›
  • country_coderequired

    string

    Country calling code digits only, e.g. 91 for India.
  • phonerequired

    string

    Local number or full E.164 without the plus sign.
waca_contacts_create#

Create a contact

Writes data

Adds one contact to the CRM. Every contact needs at least one tag: pass existing tag_ids from waca_tags_list or create one with waca_tags_create first. Fails with PHONE_DUPLICATE when the number already exists (the error carries existingId).

Parameters (6)›
  • first_namerequired

    string

    No extra notes.
  • last_name

    string

    No extra notes.
  • country_coderequired

    string

    Country calling code digits only, e.g. 91 for India.
  • phonerequired

    string

    Local number or full E.164 without the plus sign.
  • tag_idsrequired

    string[]

    No extra notes.
  • attributes

    object

    Custom attribute values keyed by attribute key; list valid keys with waca_contact_attributes_list.
waca_contacts_bulk_create#

Create up to 100 contacts

Writes data

Creates many contacts in one call (max 100). Each row is validated on its own; the answer lists what was created and what failed with the reason, so a duplicate does not stop the rest. Same tag rule as waca_contacts_create.

Parameters (2)›
  • tag_idsrequired

    string[]

    Tags applied to every created contact.
  • contactsrequired

    object[]

    Each item: first_name (string), last_name (string), country_code (string), phone (string), attributes (object).
waca_contacts_update#

Update a contact

Writes data

Changes name, phone, tags or custom attributes of one contact. Omitted fields stay as they are. tag_ids, when given, replaces the whole tag set (at least one). Opt-out is not changed here: use waca_contacts_set_opt_out.

Parameters (7)›
  • contact_idrequired

    string

    No extra notes.
  • first_name

    string

    No extra notes.
  • last_name

    string

    No extra notes.
  • country_code

    string

    Country calling code digits only, e.g. 91 for India.
  • phone

    string

    Local number or full E.164 without the plus sign.
  • tag_ids

    string[]

    No extra notes.
  • attributes

    object

    Custom attribute values keyed by attribute key; list valid keys with waca_contact_attributes_list.
waca_contacts_set_opt_out#

Opt a contact out of messages

Writes data

Marks a contact as opted out, so broadcasts skip them and single sends refuse them. Use this when a customer asks to stop receiving messages. Only opting out is possible here: re-enabling a contact who opted out is done by a person in the SheetWA dashboard. Idempotent.

Parameters (3)›
  • contact_idrequired

    string

    No extra notes.
  • opted_out

    boolean

    Always true. Opting a contact back in is dashboard-only.
  • reason

    string

    Why they asked to stop; kept in the audit trail.
waca_contact_attributes_list#

List custom attribute definitions

Read only

The custom attribute keys this workspace accepts on contacts (key, label, type). Use the key values in the attributes object of create/update.

Takes no parameters.

Read only

Every contact tag in the workspace with its id and how many contacts carry it. Tags group contacts for broadcasts and searches.

Takes no parameters.

waca_tags_create#

Create a tag

Writes data

Creates a contact tag by name. If a tag with that name already exists, its id is returned with already_existed: true.

Parameters (1)›
  • namerequired

    string

    No extra notes.
waca_tags_assign#

Add tags to contacts

Writes data

Adds one or more tags to one or more contacts. Existing tags on those contacts are kept.

Parameters (2)›
  • tag_idsrequired

    string[]

    No extra notes.
  • contact_idsrequired

    string[]

    No extra notes.
waca_tags_unassign#

Remove tags from contacts

Writes data

Removes tags from contacts. A contact always keeps at least one tag; the tool refuses with CANNOT_UNASSIGN_LAST_TAG and lists the contacts that would be left without one.

Parameters (2)›
  • tag_idsrequired

    string[]

    No extra notes.
  • contact_idsrequired

    string[]

    No extra notes.