> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jinba.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Outlook メール

> Microsoft Graph を使った Outlook のメール操作

## 概要

Outlook メール ツールを使用すると、Microsoft Graph API を利用して Outlook のメールフォルダーからメッセージを取得したり、Outlook からメールを送信したりできます。

## 主な機能

* `OUTLOOK_LIST_MESSAGES`
  * Outlook のメールフォルダーからメッセージを一覧取得
  * `folder` は任意（例：`Inbox`）。省略した場合はすべてのフォルダーを対象に取得
  * `search` で Microsoft Graph の `$search` による検索が可能（件名・本文・差出人に一致）
  * `top` で取得件数を指定（1〜50、デフォルト：10）
  * `include_body_preview` で本文プレビューの有無を切り替え（デフォルト：true）
  * 各メッセージの ID、件名、差出人、受信日時、本文プレビュー、Web リンクを返却
* `OUTLOOK_SEND_MESSAGE`
  * Outlook からメールを送信
  * `to_emails` は配列またはカンマ区切りの文字列に対応。`cc_emails`、`bcc_emails` も任意で指定可能
  * `body` は HTML またはテキストに対応し、`content_type`（`HTML` または `Text`、デフォルト：`HTML`）で指定
  * `save_to_sent_items` で送信済みアイテムへの保存を制御（デフォルト：true）

## 認証

Outlook メール ツールを使用するには、[Jinba シークレットダッシュボード](https://flow.jinba.io/workspace/secrets) にアクセスし、Microsoft アカウントで認証してください。これにより、新しい OAuth トークンが生成されます。

**注意**：API キーは機密情報として扱い、公開リポジトリにコミットしないでください。

詳細については、[こちら](/ja/pages/credentials/microsoft-oauth)をクリックしてください。

## 使用例

### 例：受信トレイを検索してサマリーを送信

```yaml theme={null}
- id: list_messages
  tool: OUTLOOK_LIST_MESSAGES
  config:
    - name: token
      value: "{{secrets.MICROSOFT_GRAPH_OUTLOOK}}"
  input:
    - name: folder
      value: Inbox
    - name: search
      value: 請求書
    - name: top
      value: 20
    - name: include_body_preview
      value: true

- id: summarize
  tool: OPENAI_INVOKE
  needs:
    - list_messages
  config:
    - name: version
      value: gpt-4
  input:
    - name: prompt
      value: |
        以下のメールを短いレポートにまとめてください。

        {{steps.list_messages.result.messages}}

- id: send_report
  tool: OUTLOOK_SEND_MESSAGE
  needs:
    - summarize
  config:
    - name: token
      value: "{{secrets.MICROSOFT_GRAPH_OUTLOOK}}"
  input:
    - name: to_emails
      value: manager@example.com
    - name: cc_emails
      value: team@example.com, accounting@example.com
    - name: subject
      value: 請求書メールのデイリーサマリー
    - name: body
      value: "{{steps.summarize.result.content}}"
    - name: content_type
      value: Text
```

### 例：HTML メールを送信

```yaml theme={null}
- id: send_message
  tool: OUTLOOK_SEND_MESSAGE
  config:
    - name: token
      value: "{{secrets.MICROSOFT_GRAPH_OUTLOOK}}"
  input:
    - name: to_emails
      value: customer@example.com
    - name: subject
      value: 商品発送のお知らせ
    - name: body
      value: "<p>お客様</p><p>ご注文の商品を発送いたしました。</p>"
    - name: content_type
      value: HTML
    - name: save_to_sent_items
      value: true
```

## 注意事項

* `OUTLOOK_LIST_MESSAGES` で一度に取得できるメッセージは最大 50 件です（`top` は 1〜50）。
* `OUTLOOK_SEND_MESSAGE` は Microsoft Graph の `sendMail` リクエストの HTTP ステータス（成功時は 202）を返します。レスポンスに本文は通常含まれません。
* 宛先の入力（`to_emails`、`cc_emails`、`bcc_emails`）は、配列、JSON 配列形式の文字列、カンマ区切りの文字列のいずれにも対応しています。
* メッセージのメタデータのみが必要な場合は、`include_body_preview` を `false` に設定すると出力をコンパクトに保てます。
