こんにちは、開発部の久保見です。
今回は PHPでLINE Messaging APIを実装し、実際にメッセージを送信してみた手順をまとめます。
弊社では、新しいサービスとして LINEミニアプリを作成できる「アプリメンバーズ コネクト」をリリースしました。
LINEミニアプリは、LINEアプリ上で動作するWebシステムで、LINE公式アカウントと連携することも可能です(※必須ではありません)。
通常、情報配信に使うLINEメッセージは LINE公式アカウントの管理画面から送信しますが、もしアプリメンバーズ コネクトの管理画面から直接メッセージ送信ができれば、管理画面を行き来する手間を減らせそうです。
こうしたニーズに応える仕組みとして、LINE Messaging APIが提供されています。
事前準備
まずは、LINE Messaging APIを利用するためのSDKをインストールします。
composer require linecorp/line-bot-sdkこれでSDKのダウンロードは完了です。
※ composer が未インストールの場合は、https://getcomposer.org/download/を参照してください。
コーディング
続いて、実際のPHPコードです。
<?php
require_once __DIR__ . "/vendor/autoload.php";
use LINE\Clients\MessagingApi\Api\MessagingApiApi;
use LINE\Clients\MessagingApi\Configuration;
use LINE\Clients\MessagingApi\Model\PushMessageRequest;
use LINE\Clients\MessagingApi\Model\TextMessage;
use GuzzleHttp\Client;
$accessToken = 'YOUR_CHANNEL_ACCESS_TOKEN'; //チャネルアクセストークン
$userId = 'Uxxxxxxxxxxxxxxxxxxxx'; //ユーザーID
// --- Guzzle クライアントに Authorization ヘッダーを明示的にセット ---
$httpClient = new Client([
'headers' => [
'Authorization' => 'Bearer ' . $accessToken,
'Content-Type' => 'application/json',
],
]);
// --- Configuration オブジェクト(空でも可) ---
$config = new Configuration();
// --- MessagingApiApi を Guzzle + Configuration で初期化 ---
$client = new MessagingApiApi($httpClient, $config);
// --- メッセージ作成 ---
$textMessage = new TextMessage([
'type' => 'text',
'text' => 'テスト送信!',
]);
$request = new PushMessageRequest([
'to' => $userId,
'messages' => [$textMessage],
]);
try {
$response = $client->pushMessage($request);
var_dump($response);
echo "送信成功!";
} catch (\LINE\Clients\MessagingApi\ApiException $e) {
echo "API Error: " . $e->getMessage();
echo "\nResponse Body: " . $e->getResponseBody();
}コードは以上です。
・チャネルアクセストークン
LINE Developersサイトから発行できます。
・ユーザーID
LINE側が提供するLIFFを使って取得可能です。
本来は、アプリメンバーズ コネクトの管理画面にUIを用意し、そこからメッセージを送信する想定ですが、今回はデモのためPHPを直接実行しています。
実行結果はこちら
実際にコードを実行すると、LINEにメッセージが届きます。

注意点
最後に、実装時の注意点です。
- SDKには複数のバージョンがあり、今回はv12系を使用しています。
- Messaging APIはユーザーID1件につき1通信が必要な仕様です。
(例:100人に送る場合は100通信、1000人なら1000通信)
そのため、数十万規模の大量配信を行う場合は、LINE公式アカウント管理画面の「一括配信」機能が最適です。
まとめ
今回は、PHPからLINE Messaging APIを使ってメッセージを送信する基本的な実装方法をご紹介しました。
アプリメンバーズ・アプリメンバーズ コネクトでは、現在も継続的に機能開発を行っています。
ご要望の機能追加やAPI連携のご相談がありましたら、ぜひお気軽にご連絡ください。
▼あわせて読みたい
