Skip to main content

Create

import { WhatsAppClient } from '@kapso/whatsapp-cloud-api';

const client = new WhatsAppClient({
  baseUrl: 'https://api.kapso.ai/meta/whatsapp',
  kapsoApiKey: process.env.KAPSO_API_KEY!
});

await client.templates.create({
  businessAccountId: '123456789',
  name: 'order_delivery_update',
  category: 'UTILITY',
  language: 'en_US',
  components: [
    {
      type: 'HEADER',
      format: 'LOCATION'
    },
    {
      type: 'BODY',
      text: 'Your order {{order_number}} is on the way! Track your delivery at the location above.',
      example: {
        body_text_named_params: [
          { param_name: 'order_number', example: 'ORD-12345' }
        ]
      }
    },
    {
      type: 'FOOTER',
      text: 'Estimated delivery: 30 minutes'
    }
  ]
});

Send

import { WhatsAppClient } from '@kapso/whatsapp-cloud-api';

const client = new WhatsAppClient({
  baseUrl: 'https://api.kapso.ai/meta/whatsapp',
  kapsoApiKey: process.env.KAPSO_API_KEY!
});

await client.messages.sendTemplate({
  phoneNumberId: '647015955153740',
  to: '15551234567',
  template: {
    name: 'order_delivery_update',
    language: { code: 'en_US' },
    components: [
      {
        type: 'header',
        parameters: [
          {
            type: 'location',
            location: {
              latitude: 37.7749,
              longitude: -122.4194,
              name: 'Delivery Location',
              address: '123 Main St, San Francisco, CA'
            }
          }
        ]
      },
      {
        type: 'body',
        parameters: [
          { type: 'text', text: 'ORD-12345' }
        ]
      }
    ]
  }
});