메시지 발송 예제
작성일 2026.02.19 | 수정일 2026.02.26
이 페이지에서는 SOLAPI Node.js SDK를 이용한 메시지 발송 방법을 안내합니다. 각 발송 예시의 결과 값 표시 기능은 현재 준비 중입니다.
예제는 Node.js SDK 5.5.1 버전 기준으로 작성되었으며, 여러 건 발송 등 더 다양한 예제는 SDK 샘플 코드 페이지에서 확인하실 수 있습니다.
Node.js SDK를 통해 빠르고 쉽게 메시지를 발송해 보세요!
warning
발송 요청을 하실 때 반드시 발신번호와 수신번호는 01012345678 형식으로 요청하셔야 합니다!
+, -, * 특수문자 등 삽입 불가
// 예시, 다른 파라미터 생략
{
"from": "15771603",
"to": "15771603"
}SDK Reference(send 메소드 명세 확인)
Documentation for solapi

SDK 샘플 코드 페이지
SOLAPI SDK for Node.js. Contribute to solapi/solapi-nodejs development by creating an account on GitHub.
환경설정
터미널에서 연동할 프로젝트의 폴더로 이동하신 다음 아래와 같은 명령어를 입력하여 SDK를 설치해보세요!
npm install --save solapiyarn add solapipnpm add solapinpm install --save solapi문자 발송
Node.js로 문자를 발송하는 방법에 대해 안내합니다.
연동하실 코드로 이동하신 다음, 아래의 각 유형별 문자 발송예시를 참고하셔서 원하시는 유형의 문자를 발송해보세요!
const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
messageService.send({
'to': '수신번호 입력',
'from': '계정에서 등록한 발신번호 입력',
'text': 'SMS는 한글 45자, 영자 90자까지 입력할 수 있습니다.'
});const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
messageService.send({
"to": "수신번호 입력",
"from": "계정에서 등록한 발신번호 입력",
"text": "한글 45자, 영자 90자 이상 입력되면 자동으로 LMS타입의 문자메시지가 발송됩니다. 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ",
// "subject": "문자 제목" // LMS, MMS 전용 옵션, SMS에서 해당 파라미터 추가될 경우 자동으로 LMS로 변환됩니다!
});const path = require("path");
const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
// MMS 용 이미지 업로드에는 200kb 이내의 jpg 파일만 업로드할 수 있습니다!
const imageId = await messageService.uploadFile(path.join(__dirname, "이미지 파일 경로"), "MMS")
.then(res => res.fileId);
messageService.send({
"imageId": imageId,
"to": "수신번호 입력",
"from": "계정에서 등록한 발신번호 입력",
"text": "MMS는 한글 45자, 영자 90자 이상을 입력할 수 있습니다. 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ"
// "subject": "문자 제목" // LMS, MMS 전용 옵션, SMS에서 해당 파라미터 추가될 경우 자동으로 LMS로 변환됩니다!
});const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
// 반드시 발신번호와 수신번호는 01012345678 형식으로 입력해주세요!
messageService.send({
"to": "국제번호를 제외한 수신번호",
"from": "계정에서 등록한 발신번호 입력",
"text": "한글 45자, 영자 90자 이하 입력되면 자동으로 SMS타입의 메시지가 발송됩니다.",
"country": "1" // 미국 국가번호, 국가번호 뒤에 추가로 번호가 붙는 국가들은 붙여서 기입해야 합니다. 예) 1 441 -> "1441"
});음성 메시지 발송
const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
messageService.send({
"to": "수신번호",
"from": "계정에서 등록한 발신번호 입력",
"text": "음성 메시지 본문 내용 입력",
"voiceOptions": {
// voiceType은 FEMALE이 기본값, MALE 값 사용 시 남성 음성으로 발송됩니다, voiceType을 제외한 나머지는 선택 옵션입니다.
"voiceType": "FEMALE",
// headerMessage는 통화 시작 시 나오는 메시지, tailMessage는 통화 종료 시 나오는 메시지
"headerMessage": "안녕하세요. 솔라피 쇼핑몰입니다.",
// headerMessage와 tailMessage는 최대 135자까지 입력 가능합니다.
"tailMessage": "감사합니다. 좋은 하루 되세요.",
// replyRange는 통화 내용이 나온 후 1~3번까지의 버튼으로 받는 답변 (수신자에게서 입력받을 숫자, 1~9까지 입력가능, '3'입력 시 1~3번까지 누를 수 있음.)
"replyRange": 3
// counselorNumber는 고객센터 연결 번호, replyRange와 병행 불가
// "counselorNumber": "01000000000"
}
});팩스 발송
팩스 발송은 팩스로 보낼 문서 혹은 이미지를 미리 업로드하여 발송할 수 있습니다.
const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
messageService.uploadFile(path.join(__dirname, "팩스 파일 경로"), "FAX")
.then(res => res.fileId)
.then(fileId => {
return messageService.send({
"to": "유효한 팩스 수신번호",
"from": "계정에서 등록한 발신번호 입력",
"faxOptions": {
"fileIds": [fileId]
}
});
})
.catch(err => console.log(err));카카오 알림톡/친구톡/브랜드 메시지 발송
Node.js로 알림톡/친구톡을 발송하는 방법에 대해 안내합니다.
연동하실 코드로 이동하신 다음, 아래의 각 유형별 문자 발송예시를 참고하셔서 원하시는 유형의 알림톡/친구톡을 발송해보세요!
warning
알림톡 템플릿 내 치환문구(변수)가 없을 경우 text 파라미터를 기입하시는 것이 아닌
kakaoOptions 내 variables를 빈 오브젝트()로 기입하셔야 합니다.
const { SolapiMessageService } = require('solapi');
const messageService = new SolapiMessageService("API 키 입력", "API 시크릿 키 입력");
// 반드시 발신번호와 수신번호는 01012345678 형식으로 입력해주세요!
messageService.send({
"to": "수신번호",
"from": "계정에서 등록한 발신번호 입력",
"kakaoOptions": {
"pfId": "연동한 비즈니스 채널의 pfId",
"templateId": "등록한 알림톡 템플릿의 ID",
// 치환문구가 없을 때의 기본 형태
"variables": {}
// 치환문구가 있는 경우 추가, 반드시 key, value 모두 string으로 기입해야 합니다.
/*
variables: {
"#{변수명}": "임의의 값"
}
*/
// disbaleSms 값을 true로 줄 경우 문자로의 대체발송이 비활성화 됩니다.
// disableSms: true,
}
});