> This page is for プラットフォーム, version レガシー.
> For other versions, use one of these documentation indexes:
> - V4 (default): https://next.developer.frame.io/platform/v4/llms.txt
> - V4 Experimental: https://next.developer.frame.io/platform/v4-experimental/llms.txt
> - レガシー: https://next.developer.frame.io/platform/v2/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://next.developer.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://next.developer.frame.io/_mcp/server.

# 監査ログの操作

## 概要

Frame.io は、アプリケーションで取得されたアクティビティの大部分について、監査ログをサポートおよび維持しています。これには、主要なリソースの基本的な CRUD と、いくつかの特別な抽象化（例： `AssetVersioned`）の両方が含まれます。

<Warning title="監査ログは 30 日後に切り捨て">
Frame.io 監査ログは、API を介して 30 日間のローリングウィンドウでアクセスでき、その後コールドストレージに移動されます。したがって、Frame.io イベントの履歴を長期間保持したい場合は、履歴ログデータを別途保存していることを確認してください。
</Warning>

### スコープと権限

アカウント管理者のみがアカウントの監査ログにアクセスでき、監査ログエンドポイントへのすべての呼び出しは、次のように `account_id` にスコープ設定する必要があります。

```
GET https://api.frame.io/v2/accounts/:id/audit_logs
```

### 応答

監査ログ応答はすべて、次のように類似した形式を持ちます。

```json
{
    "_type": "audit",
    "account_id": "<account-id>",
    "action": "<ActionTaken>",
    "actor": {
        "_type": "user",
        "id": "<user-id>",
    },
    "actor_id": "<user-id>",
    "id": "<audit-id>",
    "inserted_at": "<ISO-8601-datetime>",
    "item_id": "<resource-id>",
    "item_type": "<ResourceType>",
    "resource": {...},
    "team_id": "<team-id>",
    "updated_at": "<ISO-8601-datetime>"
}
```

<Info title="ページネーションをお忘れなく">
監査ログのレスポンスデータはかなり冗長な場合があるため、[ページネーション](/getting-started/key-concepts#pagination)に精通しておいてください。
</Info>

## フィルター

監査ログは、日付範囲など、様々なフィルターをサポートしています。Frame.io の[検索](/workflows-assets/search-for-assets)エンドポイントとは異なり、フィルターは、`GET` クエリ文字列パラメーターとしてのみ送信できます。

フィルターはすべて、同じ書式に従います。

### GET + クエリ文字列

```html
GET
https://api.frame.io/accounts/:id/audit_logs?filter[filter_type1]=value1&filter[filter_type2]=value2
```

<Info title="フィルタータイプごとに 1 個の値">
現在、監査ログはフィルタータイプごとに 1 個の値をサポートしています。同じタイプのフィルターを 2 個指定した場合（例：`filter[action]=ActionOne&amp;filter[action]=ActionTwo`）、2 番目のフィルターが優先されます。
</Info>

### 重要なフィルタータイプ

監査ログをカリングおよびナビゲートするための重要なフィルタータイプは、次のとおりです。

| フィルタータイプ| 説明| 値の例|
|----------|----------|----------|
| `item_type`| 1 つのタイプの、すべてのリソースのフィルター。| プレゼンテーション、コメント、レビューリンク、アセット __ __ __ __|
| `item_id`| 1 個の特定リソース（アセットやプレゼンテーションなど）のフィルター。| \<asset-id>、\<presentation-id> __ __|
| `action`| 1 個のアクションのフィルター（通常は、`item_type` に関連付けられています）。| ProjectCreated、AssetVersioned、CommentDeleted __ __ __|
| `actor_id`| 特定ユーザー（アクター）の ID のフィルター。| _\<user-id>_|
| `team_id`| 1 つのチームに関連付けられているアクティビティのフィルター。このフィルターは、複数のチームがあるチームにのみ役立ちます。| _\<team-id>_|
| `inserted_at`| 特定の日時の前後に発生する監査イベントのフィルター。ISO-8601 形式（UTC）である必要があります。| _2022-08-25T00:00:00Z_|

### 項目タイプおよびアクション

| リソース| アクション|
|----------|----------|
| **アカウント**| `AccountCreated`、`AccountUpdate`、`AccountLocked`|
| **アセット**| `AssetCopied`、`AssetCreated`、`AssetDeleted`、`AssetUpdated`、`AssetVersioned`、`AssetUnversioned`、`AssetLabelUpdated`、`AssetMoved`、`AssetPreserved`、`AssetPrivatized`、`AssetPublicized`、`AssetRestored`|
| **共同作業者**| `CollaboratorCreated`、`CollaboratorDeleted`|
| **コメント**| `CommentCreated`、`CommentCompleted`、`CommentDeleted`、`CommentLiked`、`CommentUncompleted`、`CommentUnliked`、`CommentUpdated`、`ReplyCreated`|
| **プレゼンテーション**| `PresentationCreated`、`PresentationDeleted`、`PresentationUpdated`|
| **プロジェクト**| `ProjectCreated`、`ProjectDeleted`、`ProjectMoved`、`ProjectRestored`、`ProjectUpdated`|
| レビューリンク| `ReviewLinkCreated`、`ReviewLinkDeleted`、`ReviewLinkUpdated`|
| **チーム**| `TeamCreated`、`TeamUpdated`、`TeamDeleted`|
| **TeamMember**| `TeamMemberCreated`、`TeamMemberAccepted`、`TeamMemberDeclined`、`TeamMemberRemoved`、`TeamMemberUpdated`|

## フィルターの例

フィルターはすべて、上記のように同様の形式に従います。開始に役立つ、特定のユースケースでのターゲットの例を、以下にいくつか示します。

| シナリオ| クエリ文字列|
|----------|----------|
| 1 人のユーザーによって実行されたアクション。| `?filter[actor_id]=<user-id>`|
| 特定のプレゼンテーションでのすべてのアクティビティ。| `?filter[item_id]=<presentation-id>`|
| ユーザーによって残されたコメント。| `?filter[action]=CommentCreated&filter[actor_id]=<user-id>`|
| チームでのすべてのレビューリンクアクティビティ。| `?filter[item_type]=ReviewLink&filter[team_id]=<team-id>`|

## 日付範囲

日付範囲は、`inserted_at` 日時 `value` とその日時に適用する操作の両方を指定する必要があるという点で、わずかに特殊なケースです。`op`

したがって、日付範囲クエリには常に 2 つのフィルター要素があり、それぞれが `[inserted_at]` パラメーターの横にネストされます。

サポートされている操作には、次が含まれます。

- **gt**：より大きい
- **gte**：以上
- **lt**：より小さい
- **lte**：以下

### 日付範囲の例

| シナリオ| クエリ文字列|
|----------|----------|
| 特定の日からの、すべての監査ログレコード。| `?filter[inserted_at][op]=gt&filter[inserted_at][value]=2019-03-25T00:00:00Z`|
| 特定の日までに、特定のユーザーによってアップロードされた、すべてのアセット。| `?filter[inserted_at][op]=lt&filter[inserted_at][value]=2019-03-25T00:00:00Z&filter[actor_id]=<user-id>&filter[action]=AssetCreated`|