SDK 설치

이 페이지는 저장소 README(1.2.0) 기준으로 각 언어 SDK 설치 방법과 첫 발송 예시를 정리합니다.

사전 준비

  1. 콘솔 발송관리 > 연동관리에서 API Key를 발급하고, 호출할 서버의 공인 IP를 등록합니다.
  2. 키를 환경변수로 설정합니다. 키는 코드나 저장소에 쓰지 않습니다. 모든 SDK는 BIZGO_API_KEY에서 키를 읽습니다.
Bash
export BIZGO_API_KEY=...

아래 예시는 모두 sandbox(실제 발송 없음)로 보냅니다. 운영에 보낼 때는 환경 설정을 생략하거나 운영(Production)으로 바꿉니다.

접수 ≠ 발송 완료. 발송 결과는 접수 결과입니다. 최종 결과는 리포트로 받습니다.

Java SDK

저장소: bizgo-sdk-comm-java · Java 17 이상

Groovy
// Gradle
implementation 'io.github.icomm-api:bizgo-sdk-comm-java:1.2.0'
XML
<!-- Maven -->
<dependency>
  <groupId>io.github.icomm-api</groupId>
  <artifactId>bizgo-sdk-comm-java</artifactId>
  <version>1.2.0</version>
</dependency>
Java
import io.github.icommapi.bizgo.Bizgo;
import io.github.icommapi.bizgo.Environment;
import io.github.icommapi.bizgo.models.SendResult;

try (Bizgo client = Bizgo.builder().environment(Environment.SANDBOX).build()) {
    SendResult result = client.send().sms("01000000000", "01000000000", "[비즈고] 인증번호는 123456 입니다.");
    System.out.println(result.getMsgKeys());
}

1.2.0은 1.1.x 이하(net.bizgo.client.BizgoClient)와 호환되지 않습니다.

Node.js SDK

저장소: bizgo-sdk-comm-js · Node.js 18 이상

Bash
npm install @bizgo/bizgo-sdk-comm-js
TypeScript
import { Bizgo, Environment } from '@bizgo/bizgo-sdk-comm-js';

const client = new Bizgo({ environment: Environment.SANDBOX });

const result = await client.send.sms({ to: '01000000000', from: '01000000000', text: '[비즈고] 인증번호는 123456 입니다.' });
console.log(result.msgKeys);

CommonJS에서는 const { Bizgo, Environment } = require('@bizgo/bizgo-sdk-comm-js');로 씁니다. 서버에서만 사용하세요.

1.2.0은 1.0.x와 호환되지 않습니다. ^1 범위로 설치했다면 다음 설치 때 1.2.0이 들어오므로, 옮기기 전까지는 1.0.3으로 고정하세요.

Python SDK

저장소: bizgo-sdk-comm-python · Python 3.10 이상

Bash
pip install bizgo-sdk-comm
Python
from bizgo import Bizgo, Environment

with Bizgo(environment=Environment.SANDBOX) as client:
    result = client.send.sms(to="01000000000", from_="01000000000", text="[비즈고] 인증번호는 123456 입니다.")

print(result.msg_keys)

비동기 클라이언트는 AsyncBizgo입니다.

Go SDK

저장소: bizgo-sdk-comm-go · Go 1.26 이상

Bash
go get github.com/icomm-api/bizgo-sdk-comm-go@v1.2.0
Go
import "github.com/icomm-api/bizgo-sdk-comm-go" // 패키지 이름: bizgo

client, err := bizgo.NewClient(bizgo.WithEnvironment(bizgo.Sandbox))
if err != nil {
    log.Fatal(err)
}
result, err := client.Send.SMS(ctx, bizgo.SMSParams{
    To:   bizgo.To("01000000000"),
    From: "01000000000",
    Text: "[비즈고] 인증번호는 123456 입니다.",
})
if err != nil {
    log.Fatal(err)
}
fmt.Println(result.MsgKeys())

PHP SDK

저장소: bizgo-sdk-comm-php · PHP 8.2 이상 (확장: curl, json, mbstring)

Bash
composer require icomm-api/bizgo-sdk-comm:^1.2
PHP
use Bizgo\BizgoClient;
use Bizgo\Environment;

$client = new BizgoClient(environment: Environment::Sandbox);

$result = $client->send->sms(to: '01000000000', from: '01000000000', text: '[비즈고] 인증번호는 123456 입니다.');
$result->msgKeys();

PHP 8.1 이하는 지원하지 않습니다. 이전 PHP 5·PHP 7 SDK를 쓰고 있다면 README의 옮기기 안내를 확인하세요.

C# SDK

저장소: bizgo-sdk-comm-cs · .NET 8, .NET Standard 2.0 (.NET Framework 4.6.1 이상)

Bash
dotnet add package Bizgo.Sdk.Comm --version 1.2.0
C#
using Bizgo;

using var client = new BizgoClient(new BizgoClientOptions { Environment = BizgoEnvironment.Sandbox });

var result = await client.Send.SmsAsync("01000000000", from: "01000000000", text: "[비즈고] 인증번호는 123456 입니다.");
Console.WriteLine(string.Join(",", result.MsgKeys));

통합 발송 요청 구조

SDK의 통합 발송(omni)은 아래 API 요청 본문을 만듭니다. messageFlow에 여러 메시지를 넣으면 앞 메시지가 실패할 때 다음 메시지로 대체발송됩니다.

JSON
{
  "destinations": [{ "to": "01000000000" }],
  "messageFlow": [
    { "sms": { "from": "01000000000", "text": "SDK test message." } }
  ]
}

설치 후 권장 점검

  1. sandbox에서 단건 SMS 발송.
  2. 리포트 수신(Polling/Webhook 중 운영 방식 기준).
  3. 대체발송 시나리오(예: 알림톡 실패 → SMS).