KapsoEx.WhatsApp (kapso_ex v0.1.0)

Copy Markdown View Source

Helpers shared by the WhatsApp API modules.

The WhatsApp API (https://api.kapso.ai/meta/whatsapp/v24.0) proxies Meta's WhatsApp Cloud API, so payloads and responses follow Meta's documentation. On top of that, Kapso stores history, which lets you list messages, conversations, contacts and calls, and adds extra fields when you ask for them with fields=kapso(...) (see kapso_fields/1).

Modules:

Summary

Functions

Builds a value for the fields query param that selects Kapso extension fields.

Functions

kapso_fields(fields \\ :default)

@spec kapso_fields(:default | [atom() | String.t()]) :: String.t()

Builds a value for the fields query param that selects Kapso extension fields.

Examples

iex> KapsoEx.WhatsApp.kapso_fields()
"kapso(default)"

iex> KapsoEx.WhatsApp.kapso_fields([:media_url, :flow_response])
"kapso(media_url,flow_response)"

iex> KapsoEx.WhatsApp.kapso_fields([])
"kapso()"

Pass it to any list or get function:

KapsoEx.WhatsApp.Messages.list(client, phone_number_id, fields: KapsoEx.WhatsApp.kapso_fields([:media_url]))