LINE WORKS メール送信 API を活用する方法
LINE WORKS のメール送信 API を使用して、メールを簡単に送信する方法を紹介します。このガイドでは、Google Colab 上で動作するサンプルスクリプトを使い、迅速にメール送信を試せるようにします。
概要
LINE WORKS のメール送信 API を利用することで、以下の操作が可能になります:
- 指定した送信者からメールを送信
- 複数の宛先に一括送信
- HTML形式またはプレーンテキスト形式のメール送信
Google Colab を使うことで、ローカル環境を準備することなく、簡単に API を試せます。
必要な準備
1. アクセストークンの取得
Mail API では重要なユーザー情報を取り扱うため、User Account 認証で発行された Access Token でのみ呼び出すことができます。Service Account 認証 (JWT) で発行された Access Token では呼び出すことができません。
以下の記事を参考にして、User Account 認証を用いたアクセストークンを生成してください:
また、詳細なAPI仕様については公式ドキュメントを参照してください:
-
LINE WORKS Mail API 仕様
スコープにmail
を含むアクセストークンを生成してください。
2. Google Colab へのアクセス
Google Colab にアクセスして、以下のサンプルコードを実行してください。
Google Colab 上で共有されたノートブックもご利用いただけます。以下のリンクから直接試すことができます:
Google Colab: LINE WORKS メール送信サンプル
サンプルコード
以下のスクリプトを Google Colab にコピー&ペーストし、実行してください。
# 必要なライブラリをインストール
!pip install requests
# ライブラリのインポート
import requests
import json
ACCESS_TOKEN = "your_access_token" # @param {type:"string"}
USER_ID = "me" # @param {type:"string"} "me" または LINE WORKSユーザーID
TO_EMAILS = "receiver1@example.com;receiver2@example.com" # @param {type:"string"} セミコロン区切りで複数指定可能
SUBJECT = "Sample Email Subject" # @param {type:"string"}
BODY = "This is the body of the email." # @param {type:"string"}
CONTENT_TYPE = "html" # @param {type:"string"} "html" または "text"
# API サーバー
API_SERVER = "https://www.worksapis.com"
API_ENDPOINT = f"{API_SERVER}/v1.0/users/{USER_ID}/mail"
# メール送信APIの呼び出し
def send_mail(access_token, to_emails, subject, body, content_type):
headers = {
"Authorization": f"Bearer {access_token}",
"Content-Type": "application/json",
}
payload = {
"to": to_emails,
"subject": subject,
"body": body,
"contentType": content_type
}
response = requests.post(API_ENDPOINT, headers=headers, json=payload)
# レスポンスに基づく出力
if response.status_code == 200 or response.status_code == 201:
print("✅ メールが正常に送信されました!")
print(json.dumps(response.json(), indent=4, ensure_ascii=False))
elif response.status_code == 202:
print("⚠️ メール送信リクエストが受理されましたが、処理が完了していません。")
print("レスポンスの詳細:")
print(response.text)
else:
print(f"❌ メールの送信に失敗しました。ステータスコード: {response.status_code}")
print(response.text)
# メール送信APIを実行
send_mail(
ACCESS_TOKEN,
TO_EMAILS,
SUBJECT,
BODY,
CONTENT_TYPE
)
入力例
-
ACCESS_TOKEN
: 前述の手順で生成したアクセストークン。 -
USER_ID
:"me"
または LINE WORKS のユーザー ID。 -
TO_EMAILS
:receiver1@example.com;receiver2@example.com
の形式で複数宛先を指定。 -
SUBJECT
: メールの件名。 -
BODY
: メールの本文。 -
CONTENT_TYPE
: メール形式(html
またはtext
)。
実行結果
成功時
✅ メールが正常に送信されました!
{
"message": "Mail sent successfully"
}
受理状態(202)
⚠️ メール送信リクエストが受理されましたが、処理が完了していません。
レスポンスの詳細:
{"code": "ACCEPTED", "description": "The request has been accepted for processing."}
失敗時(例: 400, 403)
❌ メールの送信に失敗しました。ステータスコード: 403
{"code":"ACCESS_DENIED", "description":"Access is denied for userId."}
注意事項
-
アクセストークンのスコープ
- アクセストークンには
mail
スコープが含まれている必要があります。
- アクセストークンには
-
TO アドレスの形式
- 宛先を複数指定する場合は、セミコロン(
;
)で区切ります。
- 宛先を複数指定する場合は、セミコロン(
-
管理画面での確認
- メール送信後、LINE WORKS の管理画面で送信履歴を確認することで、送信結果を追跡できます。
LINE WORKS メール送信 API を活用して、自動メール送信の効率化を目指しましょう!