@alipeople/sendon-sdk-typescript
v1.0.6
Published
OpenAPI client for @alipeople/sendon-sdk-typescript
Maintainers
Readme
Sendon SDK for TypeScript
Enterprise-grade messaging SDK for seamless integration with multiple messaging channels
Installation • Quick Start • Features • API Reference • Support
📦 Installation
npm install @alipeople/sendon-sdk-typescriptor with Yarn:
yarn add @alipeople/sendon-sdk-typescript🚀 Quick Start
import { Sendon } from '@alipeople/sendon-sdk-typescript';
// Initialize the SDK
const sendon = new Sendon({
id: 'your-api-id',
apikey: 'your-api-key',
debug: false // Optional: Enable debug mode for detailed logging
});
// Send an SMS message
const result = await sendon.sms.send({
from: '01012345678',
to: ['01087654321'],
message: 'Hello, World!'
});✨ Features
📱 SMS Service
Complete SMS/LMS/MMS messaging capabilities with enterprise-grade reliability.
- SMS/LMS Messaging: Send short and long text messages
- MMS Support: Rich media messaging with images
- Bulk Sending: Efficiently send messages to multiple recipients
- Scheduled Delivery: Schedule messages for optimal timing
- Delivery Reports: Real-time status tracking and reporting
- Image Management: Upload and manage MMS images
💬 Kakao Service
Comprehensive Kakao Business Messaging integration for AlimTalk and BrandMessage.
- AlimTalk: Template-based informational messaging
- BrandMessage: Rich promotional messaging with various templates
- Text, Image, Wide, Wide Item List, and Carousel Feed formats
- Template Management: Create, update, and manage message templates
- Send Profile Management: Handle multiple sender profiles
- Review System: Template review request and status tracking
- Bulk Messaging: Send to multiple recipients efficiently
🎯 RCS Service
Next-generation Rich Communication Services for enhanced mobile messaging.
- Rich Media Support: Interactive cards, carousels, and buttons
- Branded Messaging: Custom branding and styling
- CSV Upload: Bulk recipient management via CSV
- Advanced Analytics: Detailed message performance tracking
- Fallback Options: Automatic fallback to SMS/MMS
🚫 Contacts Service
Blocklist management for messaging control.
- Blocklist Management: Add and remove numbers from blocklist
- Multi-Channel Support: Block numbers across SMS and Kakao channels
- Block Type Filtering: Different blocking categories
- Date Range Queries: Search blocklist by date ranges
- Pagination Support: Efficient handling of large blocklists
📤 Sender Service
Sender number management and verification.
- Number Listing: View all registered sender numbers
- Pagination Support: Browse through multiple sender numbers
- Number Verification: Verified sender number management
💳 Payment Service
Payment history and transaction tracking.
- Payment History: View detailed payment transaction logs
- Date Range Filtering: Search payments by date range
- Transaction Details: Access specific payment information
- Pagination Support: Navigate through payment records
💰 Point Service
Message cost calculation and point tracking.
- Cost Calculation: Get message sending costs
- Point Listing: View available points and balances
- Usage Tracking: Monitor point consumption
📖 API Reference
Initialization
const sendon = new Sendon({
id: string, // Your API ID
apikey: string, // Your API Key
debug?: boolean // Enable debug logging (optional)
});SMS Service
// Send SMS/LMS/MMS
await sendon.sms.send({
from: string,
to: string[],
message: string,
subject?: string, // For LMS/MMS
images?: File[] // For MMS
});
// Cancel scheduled message
await sendon.sms.cancel(groupId);
// Get message status
await sendon.sms.find(groupId);Kakao Service
// Send AlimTalk
await sendon.kakao.sendAlimTalk({
sendProfileId: string,
templateCode: string,
messages: MessageData[]
});
// Send BrandMessage
await sendon.kakao.sendBrandMessage({
sendProfileId: string,
templateCode: string,
messages: MessageData[]
});
// Template Management
await sendon.kakao.createTemplate(sendProfileId, templateData);
await sendon.kakao.getTemplates(sendProfileId, query);
await sendon.kakao.updateTemplate(sendProfileId, templateId, templateData);RCS Service
// Send RCS message
await sendon.rcs.send({
messageType: 'SMS' | 'LMS' | 'MMS' | 'RCS',
from: string,
messages: RcsMessageData[]
});
// Get CSV upload URL
await sendon.rcs.createCsvUploadUrl();Contacts Service (Blocklist)
// Create blocklist entry
await sendon.contacts.createBlocklist({
phoneNumbers: ['01012345678'],
blockType: 'SMS',
senderNumber: '0212345678'
});
// Get blocklist
await sendon.contacts.getBlocklist({
blockType: ['SMS', 'KAKAO'],
limit: 100
});
// Delete from blocklist
await sendon.contacts.deleteBlocklist(blocklistId);Payment Service
// Get payment history
await sendon.payment.getPaymentHistories({
startDate: new Date('2024-01-01'),
endDate: new Date('2024-12-31'),
page: 1,
limit: 20
});
// Get payment detail
await sendon.payment.getPaymentHistoryDetail(historyId);Point Service
// Get message costs
await sendon.point.getCost();
// List available points
await sendon.point.listPoints();Sender Service
// List registered sender numbers
await sendon.sender.listUserNumbers(page, limit);🔒 Security
- Secure Authentication: API key-based authentication
- Data Encryption: All data transmitted via HTTPS
- Rate Limiting: Built-in rate limit handling
- Error Handling: Comprehensive error management
📊 Performance
- Optimized Batching: Efficient bulk operations
- Connection Pooling: Reusable HTTP connections
- Async/Await Support: Modern asynchronous patterns
- TypeScript Native: Full type safety and IntelliSense
🛠️ Development
This SDK is built with:
- TypeScript 5.1+ for type safety
- Axios for HTTP client
- OpenAPI Generator for API consistency
- Vitest for testing
📄 License
This project is licensed under the MIT License.
🤝 Support
For technical support and inquiries, please contact our support team or visit our documentation portal.
Built with ❤️ by Alipeople
