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

# User Eventの取得

export const Link = ({href, children, className, ...props}) => {
  const localizedHref = localizeLink(href);
  return <a href={localizedHref} className={className} {...props}>
      {children}
    </a>;
};

export const MultiRelatedLinks = ({sections = []}) => {
  if (!sections || sections.length === 0) {
    return null;
  }
  return <div className="space-y-8">
      {sections.map((section, index) => <RelatedLinks key={index} title={section.title} items={section.items} />)}
    </div>;
};

export const RelatedLinks = ({title, items = []}) => {
  const getBadgeClass = badge => {
    if (!badge) return "badge-default";
    const badgeType = badge.toLowerCase().replace(/\s+/g, "-");
    return `badge-${badge === "ガイド" ? "guide" : badgeType}`;
  };
  if (!items || items.length === 0) {
    return null;
  }
  return <div className="my-8">
      {}
      <h3 className="text-sm font-bold uppercase tracking-wider mb-4">{title}</h3>

      {}
      <div className="flex flex-col gap-3">
        {items.map((item, index) => <a key={index} href={item.href} className="py-2 px-3 rounded related_link hover:bg-[#f2f2f2] dark:hover:bg-[#111827] flex items-center gap-3 group no-underline hover:no-underline border-b-0">
            {}
            <span className={`px-2 py-1 rounded-full text-xs font-semibold uppercase tracking-wide flex-shrink-0 ${getBadgeClass(item.badge)}`}>
              {item.badge}
            </span>

            {}
            <span className="text-base">{item.label}</span>
          </a>)}
      </div>
    </div>;
};

User Eventを取得するには、任意のユーザーとして認証し、<Link href="/reference/get-events">`GET /events`</Link> APIを呼び出します。

<CodeGroup>
  ```sh cURL theme={null}
  curl -i -X GET "https://api.box.com/2.0/events" \
       -H "authorization: Bearer <ACCESS_TOKEN>"
  ```

  ```typescript Node/TypeScript v10 theme={null}
  await client.events.getEvents();
  ```

  ```python Python v10 theme={null}
  client.events.get_events()
  ```

  ```csharp .NET v10 theme={null}
  await client.Events.GetEventsAsync();
  ```

  ```swift Swift v10 theme={null}
  try await client.events.getEvents()
  ```

  ```java Java v10 theme={null}
  client.getEvents().getEvents()
  ```

  ```java Java v5 theme={null}
  EventStream stream = new EventStream(api);
  stream.addListener(new EventListener() {
    public void onEvent(BoxEvent event) {
        // Handle the event.
      }
  });
  stream.start();
  ```

  ```py Python v4 theme={null}
  stream_position = 0
  events = client.events().get_events(stream_position=stream_position)
  stream_position = events['next_stream_position']
  for event in events['entries']:
      print(f'Got {event.event_type} event that occurred at {event.created_at}')
  ```

  ```csharp .NET v6 theme={null}
  BoxEventCollection<BoxEnterpriseEvent> events = await client.EventsManager.UserEventsAsync();
  ```

  ```js Node v4 theme={null}
  client.events.get({stream_position: '1408838928446360'}, callback);
  ```
</CodeGroup>

<Info>
  返されるイベントは、APIの作成に使用したアクセストークンを所有するユーザーのみを対象とします。別のユーザーのイベントフィードを取得するには、`as-user`ヘッダーか、そのユーザーの実際のアクセストークンを使用します。
</Info>

## ストリームタイプ

User Event Streamでは、3つのタイプのストリームがサポートされます。

| ストリームタイプ  |                                                 |
| --------- | ----------------------------------------------- |
| `all`     | ユーザーに関するすべてのイベントを返します (デフォルト)。                  |
| `changes` | ファイルの更新やコラボレーションなど、ファイルツリーを変更する可能性があるイベントを返します。 |
| `sync`    | 変更に似ていますが、同期対象フォルダにのみ適用されます。                    |

## 匿名ユーザー

場合によっては、イベントフィードには、IDが`2`のユーザーが表示される可能性があります。これは、匿名ユーザーを表すBoxの内部識別子です。

匿名ユーザーは、ログインしていないユーザーです。この状況は、ユーザーがコンテンツを操作し、最初にログインを求められない場合にいつでも発生する可能性があります。たとえば、ユーザーが、公開共有リンクを使用してファイルをダウンロードするときなどです。

## 制限

Boxでのイベントの保存は無期限ではありません。

User Eventは2週間から2か月間保存され、その後、保存されたUser Eventは削除されます。Enterprise Eventには、APIを介した場合は1年間、Box管理コンソールのエクスポートされたレポート経由の場合は7年間アクセスできます。

このフィードでは、完全な結果を迅速に返すことを重視しています。つまり、Boxではイベントを複数回または異なる順序で返す可能性があります。重複するイベントは、イベントIDによって識別できます。

## Long polling

User Event Streamでは、<Link href="/guides/events/user-events/polling">`OPTIONS /events` APIを介して</Link>Long pollingがサポートされます。

## イベントタイプ

ユーザーに対して、以下のイベントがトリガーされます。このリストですべてを網羅しているわけではないため、記載されていないイベントが表示される可能性もあります。

以下のイベントは、すべてのフィードで使用できます。

| イベント名                        | 説明                                                   |
| ---------------------------- | ---------------------------------------------------- |
| `ITEM_CREATE`                | フォルダまたはファイルが作成されました。                                 |
| `ITEM_UPLOAD`                | フォルダまたはファイルがアップロードされました。                             |
| `ITEM_MOVE`                  | ファイルまたはフォルダが移動されました。                                 |
| `ITEM_COPY`                  | ファイルまたはフォルダがコピーされました。                                |
| `LOCK_CREATE`                | ファイルがロックされました。                                       |
| `LOCK_DESTROY`               | ファイルがロック解除されました。ロックされたファイルが削除されると、ソースファイルはnullになります。 |
| `ITEM_TRASH`                 | ファイルまたはフォルダが削除済みとしてマークされました。                         |
| `ITEM_UNDELETE_VIA_TRASH`    | ファイルまたはフォルダがごみ箱から戻されました。                             |
| `COLLAB_ADD_COLLABORATOR`    | コラボレータがフォルダに追加されました。                                 |
| `COLLAB_ROLE_CHANGE`         | コラボレータの役割が変更されました。                                   |
| `COLLAB_INVITE_COLLABORATOR` | コラボレータがフォルダに招待されました。                                 |
| `COLLAB_REMOVE_COLLABORATOR` | コラボレータがフォルダから削除されました。                                |
| `ITEM_SYNC`                  | フォルダが同期対象としてマークされました。                                |
| `ITEM_UNSYNC`                | フォルダの同期対象のマークが解除されました。                               |
| `ITEM_RENAME`                | ファイルまたはフォルダの名前が変更されました。                              |
| `ITEM_MAKE_CURRENT_VERSION`  | 前のバージョンのファイルが現在のバージョンに昇格されました。                       |
| `GROUP_ADD_USER`             | グループへのユーザーの追加                                        |
| `GROUP_REMOVE_USER`          | グループからのユーザーの削除                                       |

以下のイベントは、`all`フィードでのみ使用できます。

| イベント名                    | 説明                                   |
| ------------------------ | ------------------------------------ |
| `COMMENT_CREATE`         | フォルダ、ファイル、または他のコメントに対するコメントが作成されました。 |
| `COMMENT_DELETE`         | フォルダ、ファイル、または他のコメントに対するコメントが削除されました。 |
| `ITEM_DOWNLOAD`          | ファイルまたはフォルダがダウンロードされました。             |
| `ITEM_PREVIEW`           | ファイルがプレビューされました。                     |
| `TASK_ASSIGNMENT_CREATE` | タスクが割り当てられました。                       |
| `TASK_CREATE`            | タスクが作成されました。                         |
| `ITEM_SHARED_CREATE`     | ファイルまたはフォルダの共有が有効化されました。             |
| `ITEM_SHARED_UNSHARE`    | ファイルまたはフォルダの共有が無効化されました。             |
| `ITEM_SHARED`            | フォルダが共有されました。                        |
| `TAG_ITEM_CREATE`        | タグがファイルまたはフォルダに追加されました。              |
| `ENABLE_TWO_FACTOR_AUTH` | ユーザーによって2要素認証が有効化されました。              |
| `MASTER_INVITE_ACCEPT`   | 管理対象ユーザーになるための招待が無料ユーザーによって承認されました。  |
| `MASTER_INVITE_REJECT`   | 管理対象ユーザーになるための招待が無料ユーザーによって拒否されました。  |
| `ACCESS_GRANTED`         | アカウントに対するBoxのアクセス権限が付与されました。         |
| `ACCESS_REVOKED`         | アカウントに対するBoxのアクセス権限が取り消されました。        |

## イベント通知

イベントストリームのノイズを低減し、イベントの利用を最適化するために、表に示されているイベントタイプでは、トリガーする通知の数が制限されています。

| イベントタイプ                                                                                                     | 通知の動作                                                                                                   |
| ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| `COLLAB_ADD_COLLABORATOR`, `COLLAB_REMOVE_COLLABORATOR`, `COLLAB_INVITE_COLLABORATOR`, `COLLAB_ROLE_CHANGE` | これらのイベントが発生すると、`changes`イベントストリームのコンテンツ所有者に通知が送信されます。コラボレータには、`all`ストリーム上に表示されるイベントと一致する追加のイベントが表示されます。 |
| `ITEM_DOWNLOAD`                                                                                             | 項目がダウンロードされると、コンテンツ所有者だけが通知を受信します。コラボレータには通知されません。                                                      |
| `ITEM_PREVIEW`                                                                                              | 項目がプレビューされると、コンテンツ所有者だけが通知を受信します。コラボレータには通知されません。                                                       |

<RelatedLinks
  title="関連するAPI"
  items={[
{ label: translate("List user and enterprise events"), href: "/reference/get-events", badge: "GET" },
{ label: translate("Get events long poll endpoint"), href: "/reference/options-events", badge: "OPTIONS" }
]}
/>

<RelatedLinks
  title="関連するガイド"
  items={[
{ label: translate("Get Enterprise Events"), href: "/guides/events/enterprise-events/for-enterprise", badge: "GUIDE" },
{ label: translate("Long-Poll Events"), href: "/guides/events/user-events/polling", badge: "GUIDE" },
{ label: translate("Stream Position Pagination"), href: "/guides/events/parameters/pagination", badge: "GUIDE" }
]}
/>
