Method: users.history.list

指定したメールボックスに対するすべての変更の履歴を一覧表示します。履歴の結果は時系列(historyId の増加順)で返されます。

HTTP リクエスト

GET https://gmail.googleapis.com/gmail/v1/users/{userId}/history

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
userId

string

ユーザーのメールアドレスです。認証されたユーザーを示すには、特別な値 me を使用できます。

クエリ パラメータ

パラメータ
maxResults

integer (uint32 format)

返される履歴レコードの最大数。このフィールドのデフォルトは 100 です。このフィールドに許可される最大値は 500 です。

pageToken

string

リスト内の特定のページの結果を取得するためのページトークン。

startHistoryId

string

必須。指定された startHistoryId 以降の履歴レコードを返します。指定された startHistoryId は、メッセージ、スレッド、または以前の list レスポンスの historyId から取得する必要があります。履歴 ID は時系列で増加しますが、有効な ID の間にランダムにギャップがあります。無効な startHistoryId または古い startHistoryId を指定すると、通常は HTTP 404 エラーコードが返されます。historyId は通常 1 週間以上有効ですが、まれに数時間しか有効でないこともあります。HTTP 404 エラー レスポンスが返された場合は、アプリケーションで完全同期を実行する必要があります。レスポンスで nextPageToken が返されなかった場合は、取得する更新情報がなく、返された historyId を今後のリクエストに備えて保存できます。

labelId

string

ID に一致するラベルを持つメッセージのみを返します。

historyTypes[]

enum (HistoryType)

関数から返される履歴の種類

リクエストの本文

リクエストの本文は空にする必要があります。

レスポンスの本文

成功すると、レスポンスの本文に次の構造のデータが含まれます。

JSON 表現
{
  "history": [
    {
      object (History)
    }
  ],
  "nextPageToken": string,
  "historyId": string
}
フィールド
history[]

object (History)

履歴レコードのリスト。通常、レスポンスに含まれる messages には、id フィールドと threadId フィールドのみが入力されます。

nextPageToken

string

リスト内の次のページの結果を取得するページトークン。

historyId

string

メールボックスの現在の履歴レコードの ID。

認可スコープ

以下のいずれかの OAuth スコープが必要です。

  • https://mail.google.com/
  • https://www.googleapis.com/auth/gmail.modify
  • https://www.googleapis.com/auth/gmail.readonly
  • https://www.googleapis.com/auth/gmail.metadata

詳しくは、認可ガイドをご覧ください。

HistoryType

列挙型
messageAdded
messageDeleted
labelAdded
labelRemoved

履歴

ユーザーのメールボックスに対する変更の記録。履歴の変更は、複数のメッセージに複数の方法で影響する可能性があります。

JSON 表現
{
  "id": string,
  "messages": [
    {
      object (Message)
    }
  ],
  "messagesAdded": [
    {
      object (MessageAdded)
    }
  ],
  "messagesDeleted": [
    {
      object (MessageDeleted)
    }
  ],
  "labelsAdded": [
    {
      object (LabelAdded)
    }
  ],
  "labelsRemoved": [
    {
      object (LabelRemoved)
    }
  ]
}
フィールド
id

string

メールボックスのシーケンス ID。

messages[]

object (Message)

この履歴レコードで変更されたメッセージのリスト。messagesAdded などの特定の変更タイプのフィールドでは、このフィールドのメッセージが重複する場合があります。代わりに、特定の変更タイプのフィールドを使用することをおすすめします。

messagesAdded[]

object (MessageAdded)

この履歴レコードのメールボックスに追加されたメッセージ。

messagesDeleted[]

object (MessageDeleted)

この履歴レコードのメールボックスから削除された(ゴミ箱に移動されたわけではない)メッセージ。

labelsAdded[]

object (LabelAdded)

この履歴レコード内のメッセージに追加されたラベル。

labelsRemoved[]

object (LabelRemoved)

この履歴レコード内のメッセージから削除されたラベル。

MessageAdded

JSON 表現
{
  "message": {
    object (Message)
  }
}
フィールド
message

object (Message)

MessageDeleted

JSON 表現
{
  "message": {
    object (Message)
  }
}
フィールド
message

object (Message)

LabelAdded

JSON 表現
{
  "message": {
    object (Message)
  },
  "labelIds": [
    string
  ]
}
フィールド
message

object (Message)

labelIds[]

string

メッセージに追加されたラベル ID。

LabelRemoved

JSON 表現
{
  "message": {
    object (Message)
  },
  "labelIds": [
    string
  ]
}
フィールド
message

object (Message)

labelIds[]

string

メールからラベル ID が削除された。