適切なクリーンアップとカスケード効果を伴ってプロジェクトからカスタムフィールドを削除します


カスタムフィールドの削除

プロジェクトからカスタムフィールドを、その関連データ、値、および設定と共に永久に削除します。この操作は元に戻すことができず、このフィールドを使用しているすべてのレコードに影響を与えます。

基本的な例

mutation DeleteCustomField {
  deleteCustomField(id: "field_abc123")
}

高度な例

mutation DeleteCustomFieldWithResponse {
  deleteCustomField(id: "field_abc123")
}

入力パラメータ

パラメータ タイプ 必須 説明
id String! ✅ はい 削除するカスタムフィールドの一意の識別子

レスポンスフィールド

フィールド タイプ 説明
deleteCustomField Boolean! 削除が成功した場合、常に true を返します

必要な権限

プロジェクトの所有者と管理者のみがカスタムフィールドを削除できます。

役割 カスタムフィールドを削除できる
OWNER ✅ はい
ADMIN ✅ はい
MEMBER ❌ いいえ
CLIENT ❌ いいえ

カスケード効果

カスタムフィールドが削除されると、以下のクリーンアップ操作が自動的に行われます。

データクリーンアップ

  • カスタムフィールドの値 - このフィールドのすべての値がすべてのレコードから削除されます
  • フィールドオプション - すべてのドロップダウンオプションと設定が削除されます
  • アクティビティ履歴 - このフィールドに関連するすべてのアクティビティレコードが削除されます
  • ルックアップ設定 - ルックアップフィールドの参照がクリーンアップされます

ボタンフィールドの特別な取り扱い

削除されたフィールドがタイプ BUTTON の場合、追加のクリーンアップが行われます:

  • 自動化 - このボタンによってトリガーされたすべての自動化が削除されます
  • 自動化履歴 - 関連する自動化アクティビティが削除されます

リアルタイム更新

  • チャート - プロジェクトチャートが変更を反映するために更新のマークが付けられます
  • 数式 - プロジェクト内のすべての数式フィールドが再計算されます
  • 時間追跡 - 時間の計算が更新されます
  • サブスクリプション - 接続されたクライアントにリアルタイム通知が送信されます
  • ウェブフック - 削除イベントと共に統合ウェブフックがトリガーされます

エラーレスポンス

カスタムフィールドが見つかりません

{
  "errors": [{
    "message": "Custom field was not found.",
    "extensions": {
      "code": "CUSTOM_FIELD_NOT_FOUND"
    }
  }]
}

権限が不足しています

{
  "errors": [{
    "message": "You don't have permission to perform this action",
    "extensions": {
      "code": "FORBIDDEN"
    }
  }]
}

重要な注意事項

永久削除

  • 元に戻せません - 削除されたカスタムフィールドは回復できません
  • データ損失 - すべてのレコードのすべてのフィールド値が永久に削除されます
  • 即時効果 - 変更はすべてのプロジェクトユーザーに即座に適用されます

パフォーマンスに関する考慮事項

  • 大規模プロジェクト - 多くのレコードがあるプロジェクトでは削除に時間がかかる場合があります
  • 数式の再計算 - 複雑な数式を持つプロジェクトでは、一時的な処理遅延が発生する可能性があります
  • チャートの更新 - ダッシュボードチャートは変更を反映するために更新されます

ベストプラクティス

  1. データのバックアップ - 削除前に重要なフィールド値をエクスポートします
  2. 変更の通知 - フィールドを削除する前にチームメンバーに通知します
  3. 依存関係の確認 - 自動化や数式がフィールドに依存していないことを確認します
  4. レポートのレビュー - 削除されたフィールドを参照するレポートを更新します

関連操作

一般的な使用例

未使用フィールドの削除

# First, list fields to identify unused ones
query ListCustomFields {
  customFields(projectId: "project_123") {
    id
    name
    type
    createdAt
    # Check usage in records
  }
}

# Then delete the unused field
mutation DeleteUnusedField {
  deleteCustomField(id: "field_to_remove")
}

テストフィールドのクリーンアップ

# Remove fields created during testing
mutation CleanupTestFields {
  field1: deleteCustomField(id: "test_field_1")
  field2: deleteCustomField(id: "test_field_2")
  field3: deleteCustomField(id: "test_field_3")
}

プロジェクトフィールドの再構成

# When reorganizing field structure
mutation RestructureFields {
  # Delete old fields
  deleteOldPriorityField: deleteCustomField(id: "old_priority_field")
  deleteOldStatusField: deleteCustomField(id: "old_status_field")
  
  # Note: Create new fields in separate mutations
}

ウェブフックイベント

カスタムフィールドが削除されると、以下のウェブフックイベントがトリガーされます:

{
  "event": "CUSTOM_FIELD_DELETED",
  "projectId": "project_123",
  "timestamp": "2024-01-15T10:30:00Z",
  "previousValue": {
    "id": "field_abc123",
    "name": "Priority Level",
    "type": "SELECT_SINGLE",
    "projectId": "project_123"
  },
  "currentValue": null
}

AIアシスタント

回答はAIを使用して生成されており、間違いが含まれる可能性があります。

どのようにお手伝いできますか?

Blueやこのドキュメントについて何でも聞いてください。

送信するにはEnterを押してください • 新しい行を作成するにはShift+Enterを押してください • ⌘Iで開く