電子メールなどの 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 を通じてメールボックスを管理できるようになりました。メールボックスの管理に関する他のブログ記事をこちらをご覧ください:
- 4DとMicrosoft 365へのアクセス
- Microsoft 365で電子メールの送信
- Microsoft 365でMicrosoft Graph APIでメールを受信する
- Microsoft 365: Microsoft Graph APIを利用したメールのコピー、移動、返信、削除
新機能の詳細については、HDI とドキュメントで確認してください!