# eSMS TypeScript SDK

TypeScript SDK cho eSMS REST API: SMS, Zalo (ZNS), Viber, Multi-channel, và các API truy vấn.

## Cài đặt

```
npm install esms-sdk
```

## Khởi tạo

```ts
import { EsmsClient } from 'esms-sdk';

const esms = new EsmsClient({
  apiKey: process.env.ESMS_API_KEY!,
  secretKey: process.env.ESMS_SECRET_KEY!,
});
```

## Ví dụ nhanh

```ts
// Gửi SMS CSKH
await esms.sendMessageV4({
  Phone: '0901888888',
  Content: 'Your OTP is 686868',
  Brandname: 'YourBrand',
  SmsType: '2',
});

// Gửi Zalo template V6
await esms.sendZaloV6({
  OAID: '4097311281936189049',
  Phone: '0901888888',
  TempID: '200607',
  TempData: { customer_name: 'A', order_code: 'HD0001' },
});
```

## Tài liệu chi tiết

- Tổng quan: [docs/README.md](docs/README.md)
- Bắt đầu: [docs/getting-started.md](docs/getting-started.md)
- SMS: [docs/sms.md](docs/sms.md)
- Zalo (ZNS): [docs/zalo.md](docs/zalo.md)
- Viber: [docs/viber.md](docs/viber.md)
- Đa kênh: [docs/multichannel.md](docs/multichannel.md)
- OTP tự sinh: [docs/otp.md](docs/otp.md)
- Tài khoản & Truy vấn: [docs/account-and-queries.md](docs/account-and-queries.md)
- Template & Pricing: [docs/templates-and-pricing.md](docs/templates-and-pricing.md)
- ZNS phụ trợ: [docs/zns-aux.md](docs/zns-aux.md)
- Voice API: [docs/voice.md](docs/voice.md)
- Callbacks: [docs/callbacks.md](docs/callbacks.md)

## API Surface

Xem typings trong `src/client.ts`. Hầu hết các endpoint trong Postman collection đã được ánh xạ 1-1.

## Build

```
npm run build
```

## Giấy phép

MIT

