Skip to main content

What is Pindo SMS?

Pindo SMS is a lightweight npm package that lets you integrate SMS messaging into your JavaScript and TypeScript applications. It wraps the Pindo API with a clean, promise-based interface — no extra dependencies required. Whether you’re building a Node.js backend, a NestJS service, a React/Next.js app, Angular, or Vue — Pindo SMS works anywhere JavaScript runs.

Installation

Install pindo-sms via npm, yarn, or pnpm and configure your API token

Quickstart

Send your first SMS in under 2 minutes

API Reference

Full reference for every method on the PindoSMS class

Framework Integrations

Step-by-step guides for Node.js, NestJS, React, Angular, and Vue

Key features

Send single SMS

Deliver SMS messages to any phone number with a single method call

Send bulk SMS

Reach multiple recipients at once with personalized message templates using @contact.name

Manage sender IDs

Create custom sender IDs and control which countries they apply to

Analytics

Fetch delivery analytics with timezone and timeframe filtering

TypeScript-first

Full type definitions for all payloads and responses — zero guesswork

Promise-based

Every method returns a Promise, compatible with async/await

How it works

The PindoSMS class wraps the Pindo REST API using the native fetch API. You initialize it with your API token, and every method handles authentication, request formatting, and error handling automatically.
import { PindoSMS } from 'pindo-sms';

const pindo = new PindoSMS(process.env.PINDO_API_TOKEN!);

const response = await pindo.sendSMS({
  to: '+250781234567',
  text: 'Hello from Pindo!',
  sender: 'MyApp',
});

Getting an API token

To use Pindo SMS you need a Pindo account and API token:
  1. Sign up at app.pindo.io
  2. Go to Account → Security settings
  3. Copy your API token
  4. Store it as PINDO_API_TOKEN in your environment
Never hard-code your API token in source code. Always use environment variables.

Build docs developers (and LLMs) love