From a2e835daf1346623fa8ae401c8f7d0f2c3c8b133 Mon Sep 17 00:00:00 2001 From: Chuck MANCHUCK Reeves Date: Tue, 2 Dec 2025 11:53:49 -0500 Subject: [PATCH] feat: added additional WABA and WA ES Flow Endpoints --- .../generate-hosted-flow.sh | 13 ++++++++++++ .../get-waba-account.sh | 7 +++++++ .../get-waba-number-profile.sh | 7 +++++++ .../get-waba-number.sh | 7 +++++++ .../list-waba-accounts.sh | 8 ++++++++ .../list-waba-numbers.sh | 7 +++++++ .../update-waba-number-profile.sh | 20 +++++++++++++++++++ config.sh | 3 +++ 8 files changed, 72 insertions(+) create mode 100644 channel-manager/whatsapp-hosted-es-flow/generate-hosted-flow.sh create mode 100644 channel-manager/whatsapp-waba-management/get-waba-account.sh create mode 100644 channel-manager/whatsapp-waba-management/get-waba-number-profile.sh create mode 100644 channel-manager/whatsapp-waba-management/get-waba-number.sh create mode 100644 channel-manager/whatsapp-waba-management/list-waba-accounts.sh create mode 100644 channel-manager/whatsapp-waba-management/list-waba-numbers.sh create mode 100644 channel-manager/whatsapp-waba-management/update-waba-number-profile.sh diff --git a/channel-manager/whatsapp-hosted-es-flow/generate-hosted-flow.sh b/channel-manager/whatsapp-hosted-es-flow/generate-hosted-flow.sh new file mode 100644 index 0000000..8824baa --- /dev/null +++ b/channel-manager/whatsapp-hosted-es-flow/generate-hosted-flow.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -X PATCH https://api.nexmo.com/v1/channel-manager/whatsapp/tp-registration/url \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Content-Type: application/json' \ + -H 'Accept: application/json' \ + -d $'{ + "solution_id": "123456789111213", + "api_key": "'${CHANNEL_MANAGER_WAHTSAPP_PARTNER_API_KEY}'", + "ttl": 300 + }' diff --git a/channel-manager/whatsapp-waba-management/get-waba-account.sh b/channel-manager/whatsapp-waba-management/get-waba-account.sh new file mode 100644 index 0000000..9d10ee2 --- /dev/null +++ b/channel-manager/whatsapp-waba-management/get-waba-account.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -G https://api.nexmo.com/v1/channel-manager/whatsapp/wabas/${CHANNEL_MANAGER_WABA_ID} \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Accept: application/json' \ diff --git a/channel-manager/whatsapp-waba-management/get-waba-number-profile.sh b/channel-manager/whatsapp-waba-management/get-waba-number-profile.sh new file mode 100644 index 0000000..117853d --- /dev/null +++ b/channel-manager/whatsapp-waba-management/get-waba-number-profile.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -G https://api.nexmo.com/v1/channel-manager/whatsapp/wabas/${CHANNEL_MANAGER_WABA_ID}/numbers/${CHANNEL_MANAGER_WABA_NUMBER}/profile \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Accept: application/json' \ diff --git a/channel-manager/whatsapp-waba-management/get-waba-number.sh b/channel-manager/whatsapp-waba-management/get-waba-number.sh new file mode 100644 index 0000000..4cf4391 --- /dev/null +++ b/channel-manager/whatsapp-waba-management/get-waba-number.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -G https://api.nexmo.com/v1/channel-manager/whatsapp/wabas/${CHANNEL_MANAGER_WABA_ID}/numbers/${CHANNEL_MANAGER_WABA_NUMBER} \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Accept: application/json' \ diff --git a/channel-manager/whatsapp-waba-management/list-waba-accounts.sh b/channel-manager/whatsapp-waba-management/list-waba-accounts.sh new file mode 100644 index 0000000..f96680a --- /dev/null +++ b/channel-manager/whatsapp-waba-management/list-waba-accounts.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -G https://api.nexmo.com/v1/channel-manager/whatsapp/wabas \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Accept: application/json' \ + diff --git a/channel-manager/whatsapp-waba-management/list-waba-numbers.sh b/channel-manager/whatsapp-waba-management/list-waba-numbers.sh new file mode 100644 index 0000000..cea5c4f --- /dev/null +++ b/channel-manager/whatsapp-waba-management/list-waba-numbers.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -G https://api.nexmo.com/v1/channel-manager/whatsapp/wabas/${CHANNEL_MANAGER_WABA_ID}/numbers \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Accept: application/json' \ diff --git a/channel-manager/whatsapp-waba-management/update-waba-number-profile.sh b/channel-manager/whatsapp-waba-management/update-waba-number-profile.sh new file mode 100644 index 0000000..42d7719 --- /dev/null +++ b/channel-manager/whatsapp-waba-management/update-waba-number-profile.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash + +source "../../config.sh" + +curl -X PATCH https://api.nexmo.com/v1/channel-manager/whatsapp/wabas/${CHANNEL_MANAGER_WABA_ID}/numbers/${CHANNEL_MANAGER_WABA_NUMBER}/profile \ + -u "${VONAGE_API_KEY}:${VONAGE_API_SECRET}" \ + -H 'Content-Type: application/json' \ + -H 'Accept: application/json' \ + -d $'{ + "about": "About my business", + "address": "123 Main Street, Anytown, USA", + "description": "Description of my business", + "email": "bob@example.com", + "profile_picture_url": "https://example.com/profile.png", + "websites": [ + "https://example.com", + "https://example.org" + ], + "vertical": "OTHER" + }' diff --git a/config.sh b/config.sh index ee8121b..14d753f 100644 --- a/config.sh +++ b/config.sh @@ -63,6 +63,9 @@ CHANNEL_MANAGER_WHATSAPP_ANALYTICS_END=${CHANNEL_MANAGER_WHATSAPP_ANALYTICS_END: CHANNEL_MANAGER_WHATSAPP_ANALYTICS_GRANULARITY=${CHANNEL_MANAGER_WHATSAPP_ANALYTICS_GRANULARITY:-""} CHANNEL_MANAGER_WHATSAPP_ANALYTICS_TEMPLATE_IDS=${CHANNEL_MANAGER_WHATSAPP_ANALYTICS_TEMPLATE_IDS:-"[]"} +## WhatsApp Hosted ES FLow +CHANNEL_MANAGER_WAHTSAPP_PARTNER_API_KEY=${CHANNEL_MANAGER_WAHTSAPP_PARTNER_API_KEY:-""} + # Conversation CONV_ID=${CONV_ID:-""} CONV_NAME=${CONV_NAME:-""}