すべてのプロダクト
Search
ドキュメントセンター

Short Message Service:最初の API 呼び出し

最終更新日:Jun 12, 2026

アプリケーション開発では、登録検証コード、注文更新通知、プロモーションメッセージなどのために、ユーザーに SMS を送信することがよくあります。このドキュメントでは、SDK を統合し、Alibaba Cloud Short Message Service (SMS) API を呼び出すことで、SMS 送信を迅速、安全、確実に自動化する方法について説明します。

アーキテクチャ

SMS API 呼び出しのエンドツーエンドフローには、アプリケーション、Alibaba Cloud SDK、Resource Access Management (RAM)、および Short Message Service (SMS) が含まれます。

プロセスは次のとおりです。アプリケーションに Alibaba Cloud SDK を統合し、RAM を使用して SMS 権限を持つ認証情報をアプリケーションに割り当てます。アプリケーションは、これらの認証情報を使用して SMS API を呼び出します。Alibaba Cloud がリクエストを認証し、コンプライアンスを検証した後、メッセージを Alibaba Cloud SMS ゲートウェイに渡します。Alibaba Cloud SMS ゲートウェイは、キャリアネットワーク経由で SMS をユーザーの携帯電話に配信します。

image

このガイドでは、SendMessageToGlobe API を例に、SMS API の呼び出し方法を説明します。次の内容を学習できます:

説明
  • API の呼び出しに慣れている場合は、API リファレンスを直接参照し、必要な API を呼び出してください。

  • API の呼び出しには SDK の使用を推奨します。独自のリクエストを作成する場合は、V3 リクエストボディ & 署名をご参照ください。

事前準備

項目

説明

参照

ユーザー権限

[RAM コンソール] で、RAM ユーザー名をクリックして権限を表示します。API を呼び出す RAM ユーザーに、 SMS 関連で必要な以下の権限が付与されていることを確認してください:

  • AliyunDysmsFullAccess: SMS サービスを管理するためのすべての権限を付与します。

手順 1:RAM ユーザーの作成と権限付与

カスタム権限付与

AccessKey ID

RAM コンソールで、RAM ユーザー名をクリックします。ユーザー詳細ページで、AccessKey タブをクリックして AccessKey ID を表示します。

手順 1:RAM ユーザーの作成と権限付与

AccessKey Secret

AccessKey Secret は作成時にのみ表示されます。紛失した場合は、新しい AccessKey ペアを作成してください。

アカウント残高またはパッケージクォータ

アカウント残高またはパッケージクォータが十分であることを確認してください。パッケージクォータは [リソースパッケージ統計] ページで、アカウント残高は [課金管理コンソール] で確認できます。

請求

認証情報の設定

ステップ 1:RAM ユーザーの作成と権限付与

重要

Alibaba Cloud アカウント (root ユーザー) は高度な権限を持ちます。セキュリティ上の観点から、API 呼び出しおよび日常的な操作には Resource Access Management (RAM) ユーザーを使用することを推奨します。RAM ユーザーの詳細については、「RAM ユーザーの概要」をご参照ください。

  • RAM ユーザーを作成します。[ユーザーの作成] に移動します。「ユーザー名」を設定し、Access ConfigurationPermanent AccessKey に設定します。はい をクリックします。作成直後に AccessKey ペアを保存してください。

  • RAM ユーザーに権限を付与します: [ユーザー] に移動します。作成した RAM ユーザーを見つけ、Actions をクリックし、次に Attach Policy をクリックします。Policy 検索ボックスに AliyunDysmsFullAccess を入力し、ポリシーを選択して、Grant permissions をクリックします。

説明
  • AliyunDysmsFullAccess:Alibaba Cloud SMS の完全管理権限を付与します。

  • AliyunDysmsReadOnlyAccess:Alibaba Cloud SMS の読み取り専用権限を付与します。

  • カスタムポリシーを作成する場合は、「RAM 権限付与」をご参照ください。

ステップ 2:アクセス認証情報の取得

AccessKey ペア を環境変数に設定します。詳細については、「Linux、macOS、Windows における環境変数の設定」をご参照ください。

説明
  • AccessKey ペアが漏洩しないよう、アプリケーション内にハードコードしないでください。代わりに環境変数を使用します。

  • 本例では、環境変数名として ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET を使用します。

手順 3:環境変数の設定

Windows

Windows では、システムのプロパティ、CMD、または PowerShell を使用して環境変数を設定できます。

システムのプロパティ

説明
  1. この方法では、永続的な環境変数を設定します。

  2. システム環境変数を変更するには、管理者権限が必要です。

  3. 環境変数の変更は、実行中のアプリケーションには影響しません。新しい変数の設定を適用するには、開いているコマンドラインインターフェイス、IDE、またはその他のアプリケーションを再起動する必要があります。

  1. Windows デスクトップで、Win+Q を押します。検索ボックスに[システム環境変数の編集]と入力して選択すると、[システムのプロパティ]ウィンドウが開きます。

  2. [システムのプロパティ] ウィンドウで、[環境変数] をクリックします。[システム環境変数] セクションで、[新規] をクリックします。[変数名]ALIBABA_CLOUD_ACCESS_KEY_ID に、[変数値] をお使いの AccessKey ID に設定します。この手順を ALIBABA_CLOUD_ACCESS_KEY_SECRET についても繰り返します。

  3. 3 つすべてのウィンドウで [OK] をクリックして設定を保存し、ウィンドウを閉じます。

  4. CMD または Windows PowerShell ウィンドウを開き、次のコマンドを実行して環境変数が設定されていることを確認します。

    1. CMD コマンド:

      echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
      echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%
      Microsoft Windows [Version 10.0.22621.3593]
      (c) Microsoft Corporation. All rights reserved.
      C:\Windows\System32>echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
      LTAIxxxxxxxxxxxxxx
      C:\Windows\System32>
    2. Windows PowerShell コマンド:

      echo $env:ALIBABA_CLOUD_ACCESS_KEY_ID
      echo $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET
      Windows PowerShell
      Copyright (C) Microsoft Corporation. All rights reserved.
      Install the latest PowerShell for new features and improvements! https://aka.ms/PSWindows
      PS C:\Windows\system32> echo $env:ALIBABA_CLOUD_ACCESS_KEY_ID
      LTAIxxxxxxxxxxxxxx
      PS C:\Windows\system32>

CMD

永続的な

現在のユーザーのすべての新しいセッションで維持される環境変数を設定するには、以下の手順を実行します。

  1. CMD で次のコマンドを実行します。

    # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
    setx ALIBABA_CLOUD_ACCESS_KEY_ID "YOUR_ACCESS_KEY_ID"
    # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
    setx ALIBABA_CLOUD_ACCESS_KEY_SECRET "YOUR_ACCESS_KEY_SECRET"
  2. 新しい CMD ウィンドウを開きます。

  3. 新しい CMD ウィンドウで、次のコマンドを実行して環境変数が設定されていることを確認します。

    echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
    echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%

一時的な

現在のセッションでのみ有効な環境変数を設定するには、CMD で次のコマンドを実行します。

# YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
set ALIBABA_CLOUD_ACCESS_KEY_ID=YOUR_ACCESS_KEY_ID
# YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
set ALIBABA_CLOUD_ACCESS_KEY_SECRET=YOUR_ACCESS_KEY_SECRET

現在のセッションで次のコマンドを実行して、環境変数が設定されていることを確認できます。

echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%

PowerShell

永続的な

現在のユーザーのすべての新しいセッションで維持される環境変数を設定するには、以下の手順を実行します。

  1. PowerShell で次のコマンドを実行します。

    # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
    [Environment]::SetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID", "YOUR_ACCESS_KEY_ID", [EnvironmentVariableTarget]::User)
    # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
    [Environment]::SetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET", "YOUR_ACCESS_KEY_SECRET", [EnvironmentVariableTarget]::User)
  2. 新しい PowerShell ウィンドウを開きます。

  3. 新しい PowerShell ウィンドウで、次のコマンドを実行して環境変数が設定されていることを確認します。

    echo $env:ALIBABA_CLOUD_ACCESS_KEY_ID
    echo $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET

一時的

現在のセッションでのみ有効な環境変数を設定するには、PowerShell で次のコマンドを実行します。

# YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
$env:ALIBABA_CLOUD_ACCESS_KEY_ID = "YOUR_ACCESS_KEY_ID"
# YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
$env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "YOUR_ACCESS_KEY_SECRET"

現在のセッションで次のコマンドを実行して、環境変数が設定されていることを確認できます。

echo $env:ALIBABA_CLOUD_ACCESS_KEY_ID
echo $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET

Linux

永続的な

現在のユーザーのすべての新しいセッションで維持される環境変数を設定するには、変数をシェルの起動ファイルに追加します。

  1. 次のコマンドを実行して、環境変数の設定を ~/.bashrc ファイルに追記します。

    # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
    echo "export ALIBABA_CLOUD_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bashrc
    # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
    echo "export ALIBABA_CLOUD_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bashrc

    ~/.bashrc ファイルを手動で編集することもできます。

    手動での変更

    次のコマンドを実行して~/.bashrc ファイルを開きます。

    nano ~/.bashrc

    ファイルに次の内容を追加します。

    # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
    export ALIBABA_CLOUD_ACCESS_KEY_ID="YOUR_ACCESS_KEY_ID"
    # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET="YOUR_ACCESS_KEY_SECRET"

    nano エディターで、Ctrl+X を押して終了し、Y を押して変更を保存し、Enter を押して確定します。

  2. 次のコマンドを実行して変更を適用します。

    source ~/.bashrc
  3. ターミナルウィンドウを再度開き、次のコマンドを実行して環境変数が設定されていることを確認します。SDK を使用する前に IDE を再起動してください。

    echo $ALIBABA_CLOUD_ACCESS_KEY_ID
    echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

一時的な

現在のセッションでのみ有効な環境変数を設定するには、以下の手順を実行します。

  1. 次のコマンドを実行します。

    # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
    export ALIBABA_CLOUD_ACCESS_KEY_ID="YOUR_ACCESS_KEY_ID"
    # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET="YOUR_ACCESS_KEY_SECRET"
  2. 次のコマンドを実行して、環境変数が設定されていることを確認します。

    echo $ALIBABA_CLOUD_ACCESS_KEY_ID
    echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

macOS

永続的な

現在のユーザーのすべての新しいセッションで維持される環境変数を設定するには、変数をシェルの起動ファイルに追加します。

  1. ターミナルで次のコマンドを実行して、デフォルトのシェルタイプを確認します。

    echo $SHELL
  2. デフォルトのシェルタイプに応じて、手順を実行します。

    Zsh

    1. 次のコマンドを実行して、環境変数の設定を ~/.zshrc ファイルに追記します。

      # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
      echo "export ALIBABA_CLOUD_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.zshrc
      # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
      echo "export ALIBABA_CLOUD_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.zshrc

      また、~/.zshrc ファイルを手動で編集することもできます。

      手動での変更

      次のコマンドを実行してシェル設定ファイルを開きます。

      nano ~/.zshrc

      ファイルに次の内容を追加します。

      # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
      export ALIBABA_CLOUD_ACCESS_KEY_ID="YOUR_ACCESS_KEY_ID"
      # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
      export ALIBABA_CLOUD_ACCESS_KEY_SECRET="YOUR_ACCESS_KEY_SECRET"

      nano エディターで、Ctrl+X を押して終了し、Y を押して変更を保存し、Enter を押して確定します。

    2. 次のコマンドを実行して変更を適用します。

      source ~/.zshrc
    3. ターミナルウィンドウを再度開き、次のコマンドを実行して環境変数が設定されていることを確認します。

      echo $ALIBABA_CLOUD_ACCESS_KEY_ID
      echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

    Bash

    1. 次のコマンドを実行して、環境変数の設定を ~/.bash_profile ファイルに追記します。

      # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
      echo "export ALIBABA_CLOUD_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bash_profile
      # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
      echo "export ALIBABA_CLOUD_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bash_profile

      また、~/.bash_profile ファイルを手動で編集することもできます。

      手動での変更

      次のコマンドを実行してシェル設定ファイルを開きます。

      nano ~/.bash_profile

      ファイルに次の内容を追加します。

      # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
      export ALIBABA_CLOUD_ACCESS_KEY_ID="YOUR_ACCESS_KEY_ID"
      # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
      export ALIBABA_CLOUD_ACCESS_KEY_SECRET="YOUR_ACCESS_KEY_SECRET"

      nano エディターで、Ctrl+X を押して終了し、Y を押して変更を保存し、Enter を押して確定します。

    2. 次のコマンドを実行して変更を適用します。

      source ~/.bash_profile
    3. ターミナルウィンドウを再度開き、次のコマンドを実行して環境変数が設定されていることを確認します。

      echo $ALIBABA_CLOUD_ACCESS_KEY_ID
      echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

一時的な

現在のセッションでのみ有効な環境変数を設定するには、以下の手順を実行します。

次のコマンドは Zsh と Bash の両方で使用できます。
  1. 次のコマンドを実行します。

    # YOUR_ACCESS_KEY_ID をお使いの AccessKey ID に置き換えます。
    export ALIBABA_CLOUD_ACCESS_KEY_ID="YOUR_ACCESS_KEY_ID"
    # YOUR_ACCESS_KEY_SECRET をお使いの AccessKey Secret に置き換えます。
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET="YOUR_ACCESS_KEY_SECRET"
  2. 次のコマンドを実行して、環境変数が設定されていることを確認します。

    echo $ALIBABA_CLOUD_ACCESS_KEY_ID
    echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

環境変数を変更した後、ビルド環境とランタイム環境を再起動または更新してください。これにより、IDE、コマンドラインインターフェイス、バックグラウンドサービスなどのアプリケーションが新しい変数を読み込むようになります。

SDK のインストール

このガイドでは、Java と Python の例を示します。その他の言語については、「SDK リファレンス」をご参照ください。Python での完全な使用方法については、Python SDK をご参照ください。

  1. Java 8 以降のバージョンがインストールされていることを確認してください。

    Java 環境

    ターミナルで次のコマンドを実行して、Java 環境を確認してください。

    java -version
    # Maven を使用して Java プロジェクトを管理およびビルドする場合は、開発環境に Maven が正しくインストールされていることを確認してください。
    mvn --version

    次の例は、Windows CMD での出力を示しています。

    C:\Users\Administrator>java --version
    java 23.0.2 2025-01-21
    Java(TM) SE Runtime Environment (build 23.0.2+7-58)
    Java HotSpot(TM) 64-Bit Server VM (build 23.0.2+7-58, mixed mode, sharing)
    C:\Users\Administrator>mvn --version
    Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
    Maven home: C:\Program Files\apache-maven-3.9.9
    Java version: 23.0.2, vendor: Oracle Corporation, runtime: C:\Program Files\jdk-23.0.2
    Default locale: zh_CN, platform encoding: UTF-8
    OS name: "windows server 2022", version: "10.0", arch: "amd64", family: "windows"

    Short Message Service (SMS) SDK には、Java 8 以降のバージョンが必要です。出力の最初の行を確認して、Java バージョンを確認してください。たとえば、出力 openjdk version "16.0.1" 2021-04-20 は、現在のバージョンが Java 16 であることを示しています。環境に Java がインストールされていない場合、またはバージョンが Java 8 より古い場合は、Java Downloads からダウンロードしてインストールしてください。

  2. 次の Maven 依存関係を追加して SDK をインストールします。 the-latest-version を最新のバージョン番号に置き換えます。

    <dependency>
      <groupId>com.aliyun</groupId>
      <artifactId>dysmsapi20180501</artifactId>
      <!-- 'the-latest-version' を最新のバージョン番号に置き換えてください: https://mvnrepository.com/artifact/com.aliyun/dysmsapi20180501 -->
      <version>the-latest-version</version>
    </dependency>

    Maven 設定の手順

    1. Maven プロジェクトの pom.xml ファイルを開きます。

    2. 依存関係を <dependencies> セクションに追加します。

    3. pom.xml ファイルを保存します。

    4. プロジェクト名を右クリックし、[Maven] > [Reload project] を選択して、プロジェクトの依存関係を更新してください。Maven が自動的に SMS SDK をダウンロードし、プロジェクトに追加します。

Python を使用する場合は、pip を使用して SDK をインストールしてください。Python 3.7 以降のバージョンがインストールされていることを確認してください。

pip install alibabacloud_dysmsapi20180501

SDK の使用

1. クライアントの初期化

Alibaba Cloud SDK は、AccessKey や STS トークンなど、さまざまな認証情報を使用したクライアントの初期化をサポートしています。詳細については、認証情報の管理をご参照ください。このトピックでは、AccessKey を例に用います。

package com.aliyun.sample;

import com.aliyun.teaopenapi.models.Config;
import com.aliyun.dysmsapi20180501.Client;

public class Sample {
    public static Client createClient() throws Exception {
        Config config = new Config()
                // AccessKey ID を設定します。ランタイム環境に ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // AccessKey シークレットを設定します。ランタイム環境に ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
                // System.getenv() メソッドはシステム環境変数を取得します。AccessKey 認証情報をコード内にハードコードしないでください。
        
        // エンドポイントを設定します。
        config.endpoint = "dysmsapi.ap-southeast-1.aliyuncs.com";

        return new Client(config);
    }
}

2. リクエストオブジェクトの作成

要件に基づいて API リクエストを作成し、パラメーターを設定します。

説明

リクエストオブジェクトの命名規則: {APIName}Requestたとえば、SendMessageToGlobe API のリクエストオブジェクトは SendMessageToGlobeRequest です。

SendMessageToGlobeRequest sendSmsRequest = new SendMessageToGlobeRequest()
            .setTo("<YOUR_VALUE>")
            .setMessage("<YOUR_VALUE>");

3. リクエストの開始

SendMessageToGlobe API を使用してリクエストを開始します。

説明

レスポンスオブジェクトの命名規則: {API name}Responseたとえば、SendMessageToGlobe API のレスポンスオブジェクトは SendMessageToGlobeResponse です。

SendMessageToGlobeResponse sendSmsResponse = client.sendMessageToGlobe(sendSmsRequest);

コード例

package com.aliyun.sample;

import com.aliyun.teaopenapi.models.Config;
import com.aliyun.dysmsapi20180501.Client;
import com.aliyun.dysmsapi20180501.models.SendMessageToGlobeRequest;
import com.aliyun.dysmsapi20180501.models.SendMessageToGlobeResponse;
import static com.aliyun.teautil.Common.toJSONString;

public class Sample {
    public static Client createClient() throws Exception {
        Config config = new Config()
                // AccessKey ID を設定します。ランタイム環境に ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
                .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                // AccessKey シークレットを設定します。ランタイム環境に ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
                .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));

        // エンドポイントを設定します。
        config.endpoint = "dysmsapi.ap-southeast-1.aliyuncs.com";

        return new Client(config);
    }

    public static void main(String[] args) throws Exception {
        // クライアントを初期化します。
        Client client = Sample.createClient();

        // リクエストオブジェクトを作成します。パラメーター値を実際の値に置き換えてください。
        SendMessageToGlobeRequest sendSmsRequest = new SendMessageToGlobeRequest()
                .setTo("<YOUR_VALUE>")
                .setMessage("<YOUR_VALUE>");

        // レスポンスオブジェクトを取得します。
        SendMessageToGlobeResponse sendSmsResponse = client.sendMessageToGlobe(sendSmsRequest);

        // レスポンスには、サーバーからのボディとヘッダーが含まれます。
        System.out.println(toJSONString(sendSmsResponse));
    }
}

Python コード例

import os
from alibabacloud_tea_util.client import Client as UtilClient
from alibabacloud_dysmsapi20180501.client import Client
from alibabacloud_tea_openapi.models import Config
from alibabacloud_dysmsapi20180501.models import SendMessageToGlobeRequest

def create_client():
    config = Config(
        # AccessKey ID を設定します。ランタイム環境に ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数が設定されていることを確認してください。
        access_key_id=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID'),
        # AccessKey シークレットを設定します。ランタイム環境に ALIBABA_CLOUD_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
        access_key_secret=os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
    )
    # エンドポイントを設定します。
    config.endpoint = 'dysmsapi.ap-southeast-1.aliyuncs.com'
    return Client(config)

if __name__ == '__main__':
    # クライアントを初期化します。
    client = create_client()
    # リクエストオブジェクトを作成します。パラメーター値を実際の値に置き換えてください。
    request = SendMessageToGlobeRequest(
        to='<YOUR_VALUE>',
        message='<YOUR_VALUE>'
    )
    # レスポンスオブジェクトを取得します。
    response = client.send_message_to_globe(request)
    # レスポンスには、サーバーからのボディとヘッダーが含まれます。
    print(UtilClient.to_json_string(response))

出力は次のようになります。

{
  "headers": {
    "date": "Tue, 24 Oct 2023 07:47:17 GMT",
    "content-type": "application/json;charset=utf-8",
    "content-length": "263",
    "connection": "keep-alive",
    "keep-alive": "timeout=25",
    "access-control-allow-origin": "*",
    "access-control-expose-headers": "*",
    "x-acs-request-id": "97B1D7B6-F2F6-3A50-97BC-A90B43EC962F",
    "x-acs-trace-id": "29c11fe4c778b74774d5f5602f0e7975",
    "etag": "2a+mcDRTDkXqx9VF7b6U57Q3"
  },
  "statusCode": 200,
  "body": {
    "ResponseCode": "OK",
    "NumberDetail": {
    "Region": "Taiwan",
    "Country": "Taiwan, Province of China",
    "Carrier": "FarEasTone"
  },
    "RequestId": "97B1D7B6-F2F6-3A50-97BC-A90B43EC962F",
    "Segments": "1",
    "ResponseDescription": "OK",
    "To": "88691567****",
    "MessageId": "191921698133637273"
  }
}

API エラーコード

詳細については、国際メッセージのエラーコードをご参照ください。

コストとリスク

  • コストの内訳: SMS はメッセージごとに課金され、料金は国またはリージョンによって異なります。詳細な料金については、「課金」、をご参照ください。

  • 主なリスク

    • 認証情報の漏洩: AccessKey が漏洩すると、アカウント内のすべてのリソースが危険にさらされ、予期しない料金の発生や恐喝につながる可能性があります。深刻な場合、その悪用は Alibaba Cloud や他のユーザーにも害を及ぼす可能性があります。詳細については、「漏洩した AccessKey への対処」をご参照ください。

    • コンテンツコンプライアンス:送信するコンテンツが、宛先の国またはリージョンの法律および規制に準拠していることを確認する必要があります。準拠しない場合、メッセージがブロックされたり、アカウントが停止されたりする可能性があります。

関連コンテンツ