Microsoft 365: Microsoft Graph APIによるメールフォルダーの作成・削除・名前の変更

電子メールなどの Microsoft 365 のデータにアクセスする方法として、Microsoft は IMAP と POP3 の Basic認証を廃止し、Graph API をますます推進するようになっています。

4D v20 で、フォルダーを管理するための機能セットが追加されたことにより、Microsoft Graph API を使ったプログラミングでメールボックスを管理する機能が 4D NetKit に揃いました。

HDI: Office365: フォルダーの作成・削除・名前の変更

このブログでは、メールフォルダーの新規作成と、名前変更、削除の方法を紹介します。

アカウント接続

まず最初に、OAuth2Provider オブジェクトと Office365 オブジェクトを作成します。

var $oAuth2: cs.NetKit.OAuth2Provider
var $office365 : cs.NetKit.Office365

$oAuth2:=cs.NetKit.OAuth2Provider.new($param)
$office365:=cs.NetKit.Office365.new($oAuth2;\
 New object("mailType"; "Microsoft"))

メールフォルダーの作成

.createFolder() 関数で、メールを保存するための “Backup” フォルダーを新規作成します:

// ルートに新規フォルダーを作成します
$status:=$office365.mail.createFolder("Backup")
If ($status.success)
  $folderId:=$status.id
  // メールを新規作成したフォルダーに移動します
  $status:=$office365.mail.move($mailId; $folderId)
End if

メールフォルダーの名前変更

.renameFolder() 関数によって、フォルダーの名前を変更することができます。たとえば、”Backup” を “Backup 2022” に変更できます:

// フォルダーの名前変更
$status:=$office365.mail.renameFolder($folderId; "Backup 2022")
$folderId:=$status.id

メールフォルダーの削除

フォルダーが不要な場合は、.deleteFolder() 関数で削除することができます:

$status:=$office365.mail.deleteFolder($folderId)

これら最後の関数セットが追加されたことにより、SMTP・IMAP・POP3 のように、Graph API を通じてメールボックスを管理できるようになりました。メールボックスの管理に関する他のブログ記事をこちらをご覧ください:

 

新機能の詳細については、HDI とドキュメントで確認してください!

Fabrice Mainguené
- Product Owner -Fabrice Mainguenéは、2016年11月に4D Programチームに参加しました。プロダクトオーナーとして、彼はユーザーストーリーを書き、それを機能仕様に変換する役割を担っています。CNAMでコンピュータサイエンスの学士号を取得した後、FabriceはWindev開発者として小さなソフトウェア出版社に入社しました。その後、彼は産業および貿易分野のさまざまな企業で、Windev および Web 開発者として、また新機能の技術アドバイザーとして働きました。