{
  "generated": "2026-10-04T01:09:34.905Z",
  "product": {
    "id": "gravityboard",
    "label": "GravityBoard",
    "repo": "GravityKit/GravityBoard",
    "version": "1.5.0",
    "actions": [
      "gk/gravityboard/ajax/register-routes",
      "gk/gravityboard/assignees/added",
      "gk/gravityboard/assignees/removed",
      "gk/gravityboard/assignees/updated",
      "gk/gravityboard/attachments/added",
      "gk/gravityboard/attachments/removed",
      "gk/gravityboard/attachments/updated",
      "gk/gravityboard/card/added",
      "gk/gravityboard/card/changed-lane",
      "gk/gravityboard/card/deleted",
      "gk/gravityboard/card/edited",
      "gk/gravityboard/card/sorted",
      "gk/gravityboard/checklists/item/added",
      "gk/gravityboard/checklists/item/deleted",
      "gk/gravityboard/checklists/item/updated",
      "gk/gravityboard/checklists/templates-applied",
      "gk/gravityboard/checklists/updated",
      "gk/gravityboard/lane/added",
      "gk/gravityboard/lane/deleted",
      "gk/gravityboard/lane/edited",
      "gk/gravityboard/lane/moved",
      "gk/gravityboard/voting/vote- . $action",
      "gravityview_clear_form_cache"
    ],
    "filters": [
      "gk/gravityboard/board-settings",
      "gk/gravityboard/card/comparison-value",
      "gk/gravityboard/card/data",
      "gk/gravityboard/card/self-managed-keys",
      "gk/gravityboard/card/update-card",
      "gk/gravityboard/card/writable-fields",
      "gk/gravityboard/checklists/export-value",
      "gk/gravityboard/data/lanes",
      "gk/gravityboard/data/max-entries",
      "gk/gravityboard/data/pagination",
      "gk/gravityboard/feed/field-config",
      "gk/gravityboard/lane/sorted-cards",
      "gk/gravityboard/merge-tags/assignee-user-id",
      "gk/gravityboard/notes/allowed-html",
      "gk/gravityboard/notes/filter-by-board",
      "gk/gravityboard/permissions/admin-has-full-access",
      "gk/gravityboard/renderer/css-variable-overrides",
      "gk/gravityboard/renderer/skip-offscreen-cards",
      "gk/gravityboard/translation-overrides",
      "gk/gravityboard/views/available",
      "gk/gravityboard/views/default",
      "gk/gravityboard/voting/budget-total",
      "gk/gravityboard/voting/can-spend-vote"
    ]
  },
  "hooks": [
    {
      "id": "gk-gravityboard-ajax-register-routes",
      "name": "gk/gravityboard/ajax/register-routes",
      "type": "action",
      "product": "gravityboard",
      "description": "Allow other plugins to register routes.",
      "parameters": [
        {
          "name": "this",
          "type": "\\Ajax",
          "description": "The Ajax instance."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/ajax/register-routes', function($this) {\n    // Your code here\n}, 10, 1 );",
      "since": "1.0.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 208
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-ajax-register-routes/",
      "related": []
    },
    {
      "id": "gk-gravityboard-assignees-added",
      "name": "gk/gravityboard/assignees/added",
      "type": "action",
      "product": "gravityboard",
      "description": "Fired when a user is assigned to an entry via the GravityBoard interface.",
      "parameters": [
        {
          "name": "user_id",
          "type": "int",
          "description": "The ID of the user who was assigned."
        },
        {
          "name": "entry_id",
          "type": "int",
          "description": "The ID of the entry that was updated."
        },
        {
          "name": "feed",
          "type": "\\FeedArray",
          "description": "The feed associated with the board."
        },
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms form associated with the entry."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/assignees/added', function($user_id, $entry_id, $feed, $form) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Assignees/Assignees.php",
        "line": 554
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-assignees-added/",
      "related": [
        "gk/gravityboard/assignees/removed",
        "gk/gravityboard/assignees/updated"
      ]
    },
    {
      "id": "gk-gravityboard-assignees-removed",
      "name": "gk/gravityboard/assignees/removed",
      "type": "action",
      "product": "gravityboard",
      "description": "Fired when a user is unassigned from an entry via the GravityBoard interface.",
      "parameters": [
        {
          "name": "user_id",
          "type": "int",
          "description": "The ID of the user who was unassigned."
        },
        {
          "name": "entry_id",
          "type": "int",
          "description": "The ID of the entry that was updated."
        },
        {
          "name": "feed",
          "type": "\\FeedArray",
          "description": "The feed associated with the board."
        },
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms form associated with the entry."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/assignees/removed', function($user_id, $entry_id, $feed, $form) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Assignees/Assignees.php",
        "line": 568
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-assignees-removed/",
      "related": [
        "gk/gravityboard/assignees/added",
        "gk/gravityboard/assignees/updated"
      ]
    },
    {
      "id": "gk-gravityboard-assignees-updated",
      "name": "gk/gravityboard/assignees/updated",
      "type": "action",
      "product": "gravityboard",
      "description": "Fired after entry assignees are successfully updated.",
      "parameters": [
        {
          "name": "entry_id",
          "type": "int",
          "description": "The ID of the entry that was updated."
        },
        {
          "name": "assignees",
          "type": "int[]",
          "description": "The user IDs assigned to the entry."
        },
        {
          "name": "feed",
          "type": "\\FeedArray",
          "description": "The feed associated with the board."
        },
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms form associated with the entry."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/assignees/updated', function($entry_id, $assignees, $feed, $form) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Assignees/Assignees.php",
        "line": 581
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-assignees-updated/",
      "related": [
        "gk/gravityboard/assignees/added",
        "gk/gravityboard/assignees/removed"
      ]
    },
    {
      "id": "gk-gravityboard-attachments-added",
      "name": "gk/gravityboard/attachments/added",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when attachments have been added, before the notification is triggered.",
      "parameters": [
        {
          "name": "attachments",
          "type": "\\Attachment[]",
          "description": "The attachments array."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms entry."
        },
        {
          "name": "feed",
          "type": "\\FeedArray",
          "description": "The board's feed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/attachments/added', function($attachments, $entry, $feed) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Attachments/Attachments.php",
        "line": 766
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-attachments-added/",
      "related": [
        "gk/gravityboard/attachments/removed",
        "gk/gravityboard/attachments/updated"
      ]
    },
    {
      "id": "gk-gravityboard-attachments-removed",
      "name": "gk/gravityboard/attachments/removed",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when attachments have been removed, before the notification is triggered.",
      "parameters": [
        {
          "name": "updated_attachments",
          "type": "\\Attachment[]",
          "description": "The attachments remaining on the entry. Keys are gapped: the deleted row is filtered out without re-indexing."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms entry."
        },
        {
          "name": "feed",
          "type": "\\FeedArray",
          "description": "The board's feed."
        },
        {
          "name": "attachment_id_to_delete",
          "type": "string",
          "description": "The ID of the attachment that was deleted."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/attachments/removed', function($updated_attachments, $entry, $feed, $attachment_id_to_delete) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Attachments/Attachments.php",
        "line": 871
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-attachments-removed/",
      "related": [
        "gk/gravityboard/attachments/added",
        "gk/gravityboard/attachments/updated"
      ]
    },
    {
      "id": "gk-gravityboard-attachments-updated",
      "name": "gk/gravityboard/attachments/updated",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when attachments have been updated, before the notification is triggered.",
      "parameters": [
        {
          "name": "sanitized_attachments",
          "type": "\\Attachment[]",
          "description": "The sanitized attachments array."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms entry."
        },
        {
          "name": "feed",
          "type": "\\FeedArray",
          "description": "The board's feed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/attachments/updated', function($sanitized_attachments, $entry, $feed) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Attachments/Attachments.php",
        "line": 676
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-attachments-updated/",
      "related": [
        "gk/gravityboard/attachments/added",
        "gk/gravityboard/attachments/removed"
      ]
    },
    {
      "id": "gk-gravityboard-card-added",
      "name": "gk/gravityboard/card/added",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a card (entry) has been created, before the notification is triggered.",
      "parameters": [
        {
          "name": "created_entry",
          "type": "array<string,mixed>",
          "description": "The created entry, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        },
        {
          "name": "request",
          "type": "[\\WP_REST_Request](https://developer.wordpress.org/reference/classes/wp_rest_request/)",
          "description": "The REST request object."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/card/added', function($created_entry, $feed, $request) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 462
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-card-added/",
      "related": [
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted",
        "gk/gravityboard/card/comparison-value"
      ]
    },
    {
      "id": "gk-gravityboard-card-changed-lane",
      "name": "gk/gravityboard/card/changed-lane",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a card (entry) has been moved to a new lane, before the notification is triggered.",
      "parameters": [
        {
          "name": "updated_entry",
          "type": "array<string,mixed>",
          "description": "The updated entry, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        },
        {
          "name": "source_lane_id",
          "type": "string\\",
          "description": "int\\"
        },
        {
          "name": "target_lane_id",
          "type": "int",
          "description": "The ID of the target lane."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/card/changed-lane', function($updated_entry, $feed, $source_lane_id, $target_lane_id) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 748
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-card-changed-lane/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted",
        "gk/gravityboard/card/comparison-value"
      ]
    },
    {
      "id": "gk-gravityboard-card-deleted",
      "name": "gk/gravityboard/card/deleted",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a card (entry) has been trashed or deleted, before the notification is triggered.",
      "parameters": [
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The entry as it was before deletion, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        },
        {
          "name": "deletion_mode",
          "type": "string",
          "description": "The deletion mode (\"trash\" or \"delete\")."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/card/deleted', function($entry, $feed, $deletion_mode) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 927
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-card-deleted/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted",
        "gk/gravityboard/card/comparison-value"
      ]
    },
    {
      "id": "gk-gravityboard-card-edited",
      "name": "gk/gravityboard/card/edited",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a card (entry) has been updated, before the notification is triggered.",
      "parameters": [
        {
          "name": "updated_entry",
          "type": "array<string,mixed>",
          "description": "The updated entry, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        },
        {
          "name": "changes",
          "type": "string[]",
          "description": "The field or meta keys that were updated."
        }
      ],
      "categories": [
        "editing",
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/card/edited', function($updated_entry, $feed, $changes) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 601
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-card-edited/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/sorted",
        "gk/gravityboard/card/comparison-value"
      ]
    },
    {
      "id": "gk-gravityboard-card-sorted",
      "name": "gk/gravityboard/card/sorted",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a card (entry) has been sorted, before the notification is triggered.",
      "parameters": [
        {
          "name": "updated_entry",
          "type": "array<string,mixed>",
          "description": "The updated entry, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        },
        {
          "name": "source_lane_id",
          "type": "string\\",
          "description": "int\\"
        },
        {
          "name": "ordered_ids",
          "type": "int[]",
          "description": "The ordered card IDs, already narrowed to the feed's form and the target lane."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/card/sorted', function($updated_entry, $feed, $source_lane_id, $ordered_ids) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 857
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-card-sorted/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/comparison-value"
      ]
    },
    {
      "id": "gk-gravityboard-checklists-item-added",
      "name": "gk/gravityboard/checklists/item/added",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a checklist item has been added.",
      "parameters": [
        {
          "name": "entry",
          "type": "array<string,mixed>\\",
          "description": "\\WP_Error`"
        },
        {
          "name": "new_item",
          "type": "\\ChecklistItem",
          "description": "The new checklist item."
        },
        {
          "name": "feed",
          "type": "array\\{id: int\\",
          "description": "string, form_id: int\\"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/checklists/item/added', function($entry, $new_item, $feed) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.1",
      "source": {
        "file": "src/Checklists/Checklists.php",
        "line": 872
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-checklists-item-added/",
      "related": [
        "gk/gravityboard/checklists/item/deleted",
        "gk/gravityboard/checklists/item/updated"
      ]
    },
    {
      "id": "gk-gravityboard-checklists-item-deleted",
      "name": "gk/gravityboard/checklists/item/deleted",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a checklist item has been deleted.",
      "parameters": [
        {
          "name": "entry",
          "type": "array<string,mixed>\\",
          "description": "\\WP_Error`"
        },
        {
          "name": "item",
          "type": "\\ChecklistItem",
          "description": "The deleted checklist item."
        },
        {
          "name": "checklists",
          "type": "\\ChecklistCollection",
          "description": "The updated checklists data."
        },
        {
          "name": "feed",
          "type": "array\\{id: int\\",
          "description": "string, form_id: int\\"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/checklists/item/deleted', function($entry, $item, $checklists, $feed) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.1",
      "source": {
        "file": "src/Checklists/Checklists.php",
        "line": 1008
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-checklists-item-deleted/",
      "related": [
        "gk/gravityboard/checklists/item/added",
        "gk/gravityboard/checklists/item/updated"
      ]
    },
    {
      "id": "gk-gravityboard-checklists-item-updated",
      "name": "gk/gravityboard/checklists/item/updated",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a checklist item has been updated.",
      "parameters": [
        {
          "name": "entry",
          "type": "array<string,mixed>\\",
          "description": "\\WP_Error`"
        },
        {
          "name": "item",
          "type": "\\ChecklistItem",
          "description": "The checklist item."
        },
        {
          "name": "collection",
          "type": "\\ChecklistCollection",
          "description": "The updated checklists collection."
        },
        {
          "name": "feed",
          "type": "array\\{id: int\\",
          "description": "string, form_id: int\\"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/checklists/item/updated', function($entry, $item, $collection, $feed) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.1",
      "source": {
        "file": "src/Checklists/Checklists.php",
        "line": 942
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-checklists-item-updated/",
      "related": [
        "gk/gravityboard/checklists/item/added",
        "gk/gravityboard/checklists/item/deleted"
      ]
    },
    {
      "id": "gk-gravityboard-checklists-templates-applied",
      "name": "gk/gravityboard/checklists/templates-applied",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when checklist templates have been applied to an entry.",
      "parameters": [
        {
          "name": "merged_collection",
          "type": "\\ChecklistCollection",
          "description": "The merged template collection that was applied."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms entry that was created."
        },
        {
          "name": "applied_feed_ids",
          "type": "list<int\\",
          "description": "string>`"
        },
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms form."
        },
        {
          "name": "items_added",
          "type": "int",
          "description": "Number of items added from templates."
        }
      ],
      "categories": [
        "rendering",
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/checklists/templates-applied', function($merged_collection, $entry, $applied_feed_ids, $form, $items_added) {\n    // Your code here\n}, 10, 5 );",
      "since": "1.1",
      "source": {
        "file": "src/Checklists/Checklists.php",
        "line": 1349
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-checklists-templates-applied/",
      "related": [
        "gk/gravityboard/checklists/updated",
        "gk/gravityboard/checklists/export-value"
      ]
    },
    {
      "id": "gk-gravityboard-checklists-updated",
      "name": "gk/gravityboard/checklists/updated",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when checklists have been updated.",
      "parameters": [
        {
          "name": "checklists",
          "type": "\\ChecklistCollection",
          "description": "The checklist collection."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms entry."
        },
        {
          "name": "feed",
          "type": "array\\{id: int\\",
          "description": "string, form_id: int\\"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/checklists/updated', function($checklists, $entry, $feed) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.1",
      "source": {
        "file": "src/Checklists/Checklists.php",
        "line": 808
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-checklists-updated/",
      "related": [
        "gk/gravityboard/checklists/templates-applied",
        "gk/gravityboard/checklists/export-value"
      ]
    },
    {
      "id": "gk-gravityboard-lane-added",
      "name": "gk/gravityboard/lane/added",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a lane has been added.",
      "parameters": [
        {
          "name": "new_lane_id",
          "type": "int",
          "description": "The ID of the new lane."
        },
        {
          "name": "new_lane_choice",
          "type": "array<string,mixed>",
          "description": "The new lane choice: <code>text</code>, <code>value</code>, <code>isSelected</code>, <code>price</code>."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/lane/added', function($new_lane_id, $new_lane_choice, $feed) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Lane.php",
        "line": 449
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-lane-added/",
      "related": [
        "gk/gravityboard/lane/deleted",
        "gk/gravityboard/lane/edited",
        "gk/gravityboard/lane/moved",
        "gk/gravityboard/lane/sorted-cards"
      ]
    },
    {
      "id": "gk-gravityboard-lane-deleted",
      "name": "gk/gravityboard/lane/deleted",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a lane has been deleted.",
      "parameters": [
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The form data."
        },
        {
          "name": "lane_field_id",
          "type": "int",
          "description": "The ID of the lane field."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        },
        {
          "name": "lane_id",
          "type": "int",
          "description": "The ID of the lane that was deleted."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/lane/deleted', function($form, $lane_field_id, $feed, $lane_id) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Lane.php",
        "line": 598
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-lane-deleted/",
      "related": [
        "gk/gravityboard/lane/added",
        "gk/gravityboard/lane/edited",
        "gk/gravityboard/lane/moved",
        "gk/gravityboard/lane/sorted-cards"
      ]
    },
    {
      "id": "gk-gravityboard-lane-edited",
      "name": "gk/gravityboard/lane/edited",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a lane has been edited.",
      "parameters": [
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The form data."
        },
        {
          "name": "lane_field_id",
          "type": "int",
          "description": "The ID of the lane field."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "editing",
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/lane/edited', function($form, $lane_field_id, $feed) {\n    // Your code here\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Lane.php",
        "line": 541
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-lane-edited/",
      "related": [
        "gk/gravityboard/lane/added",
        "gk/gravityboard/lane/deleted",
        "gk/gravityboard/lane/moved",
        "gk/gravityboard/lane/sorted-cards"
      ]
    },
    {
      "id": "gk-gravityboard-lane-moved",
      "name": "gk/gravityboard/lane/moved",
      "type": "action",
      "product": "gravityboard",
      "description": "Runs when a lane has been moved.",
      "parameters": [
        {
          "name": "form",
          "type": "array<string,mixed>",
          "description": "The form data."
        },
        {
          "name": "lane_field_id",
          "type": "int",
          "description": "The ID of the lane field."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        },
        {
          "name": "new_position",
          "type": "int",
          "description": "The new position of the lane."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/lane/moved', function($form, $lane_field_id, $feed, $new_position) {\n    // Your code here\n}, 10, 4 );",
      "since": "1.0",
      "source": {
        "file": "src/Lane.php",
        "line": 641
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-lane-moved/",
      "related": [
        "gk/gravityboard/lane/added",
        "gk/gravityboard/lane/deleted",
        "gk/gravityboard/lane/edited",
        "gk/gravityboard/lane/sorted-cards"
      ]
    },
    {
      "id": "gk-gravityboard-voting-vote-.action",
      "name": "gk/gravityboard/voting/vote- . $action",
      "type": "action",
      "product": "gravityboard",
      "description": "This action is documented below.",
      "parameters": [],
      "categories": [
        "kanban"
      ],
      "example": "add_action( 'gk/gravityboard/voting/vote- . $action', function() {\n    // Your code here\n} );",
      "since": null,
      "source": {
        "file": "src/Voting/VoteRepository.php",
        "line": 88
      },
      "url": "/docs/gravityboard/actions/gk-gravityboard-voting-vote-.action/",
      "related": [
        "gk/gravityboard/voting/budget-total",
        "gk/gravityboard/voting/can-spend-vote"
      ]
    },
    {
      "id": "gravityview_clear_form_cache",
      "name": "gravityview_clear_form_cache",
      "type": "action",
      "product": "gravityboard",
      "description": "Fires the GravityView cache blocklist action for this form so any active View caches are invalidated before the next page load.",
      "parameters": [],
      "categories": [
        "views",
        "forms",
        "caching"
      ],
      "example": "add_action( 'gravityview_clear_form_cache', function() {\n    // Your code here\n} );",
      "since": null,
      "source": {
        "file": "src/Voting/Voting.php",
        "line": 310
      },
      "url": "/docs/gravityboard/actions/gravityview_clear_form_cache/",
      "related": []
    },
    {
      "id": "gk-gravityboard-board-settings",
      "name": "gk/gravityboard/board-settings",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the board settings.",
      "parameters": [
        {
          "name": "board_settings",
          "type": "array<string,mixed>",
          "description": "The board settings. Add-ons may add keys."
        },
        {
          "name": "feed_id",
          "type": "int\\",
          "description": "string`"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/board-settings', function($board_settings, $feed_id) {\n    // Modify $board_settings as needed\n    return $board_settings;\n}, 10, 2 );",
      "since": "1.0",
      "source": {
        "file": "src/Feed.php",
        "line": 2063
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-board-settings/",
      "related": [
        "gk/gravityboard/translation-overrides"
      ]
    },
    {
      "id": "gk-gravityboard-card-comparison-value",
      "name": "gk/gravityboard/card/comparison-value",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the form of a field value used to decide whether a card save changed it.",
      "parameters": [
        {
          "name": "value",
          "type": "mixed",
          "description": "The stored or submitted value."
        },
        {
          "name": "field",
          "type": "\\GF_Field\\",
          "description": "false`"
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/card/comparison-value', function($value, $field, $feed) {\n    // Modify $value as needed\n    return $value;\n}, 10, 3 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Card.php",
        "line": 1139
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-card-comparison-value/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted"
      ]
    },
    {
      "id": "gk-gravityboard-card-data",
      "name": "gk/gravityboard/card/data",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the card data returned from the entry.",
      "parameters": [
        {
          "name": "card",
          "type": "array<string,mixed>",
          "description": "The card data."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The entry data."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/card/data', function($card, $entry, $feed) {\n    // Modify $card as needed\n    return $card;\n}, 10, 3 );",
      "since": "1.1",
      "source": {
        "file": "src/Card.php",
        "line": 764
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-card-data/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted"
      ]
    },
    {
      "id": "gk-gravityboard-card-self-managed-keys",
      "name": "gk/gravityboard/card/self-managed-keys",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the card keys an integration fills in itself.",
      "parameters": [
        {
          "name": "keys",
          "type": "string[]",
          "description": "Card field keys."
        },
        {
          "name": "feed",
          "type": "\\FeedRow\\",
          "description": "array\\{\\}`"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/card/self-managed-keys', function($keys, $feed) {\n    // Modify $keys as needed\n    return $keys;\n}, 10, 2 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Card.php",
        "line": 793
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-card-self-managed-keys/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted"
      ]
    },
    {
      "id": "gk-gravityboard-card-update-card",
      "name": "gk/gravityboard/card/update-card",
      "type": "filter",
      "product": "gravityboard",
      "description": "Allow plugins to add additional changes to the card.",
      "parameters": [
        {
          "name": "changes",
          "type": "string[]",
          "description": "Always passed empty; a callback returns the field or meta keys it changed."
        },
        {
          "name": "request",
          "type": "[\\WP_REST_Request](https://developer.wordpress.org/reference/classes/wp_rest_request/)",
          "description": "The REST request object."
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The entry as it was before the update, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/card/update-card', function($changes, $request, $entry, $feed) {\n    // Modify $changes as needed\n    return $changes;\n}, 10, 4 );",
      "since": null,
      "source": {
        "file": "src/Ajax.php",
        "line": 537
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-card-update-card/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted"
      ]
    },
    {
      "id": "gk-gravityboard-card-writable-fields",
      "name": "gk/gravityboard/card/writable-fields",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the mapped card fields a create or update may write.",
      "parameters": [
        {
          "name": "mapped_fields",
          "type": "array<string,string>",
          "description": "Card field key =&gt; mapped field ID."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "fields",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/card/writable-fields', function($mapped_fields, $feed) {\n    // Modify $mapped_fields as needed\n    return $mapped_fields;\n}, 10, 2 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Card.php",
        "line": 1192
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-card-writable-fields/",
      "related": [
        "gk/gravityboard/card/added",
        "gk/gravityboard/card/changed-lane",
        "gk/gravityboard/card/deleted",
        "gk/gravityboard/card/edited",
        "gk/gravityboard/card/sorted"
      ]
    },
    {
      "id": "gk-gravityboard-checklists-export-value",
      "name": "gk/gravityboard/checklists/export-value",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters the export text for checklists.",
      "parameters": [
        {
          "name": "export_text",
          "type": "string",
          "description": "The export text, which is a string of checklist items and their statuses."
        },
        {
          "name": "checklists",
          "type": "\\ChecklistCollection",
          "description": "The checklists collection."
        }
      ],
      "categories": [
        "export",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/checklists/export-value', function($export_text, $checklists) {\n    // Modify $export_text as needed\n    return $export_text;\n}, 10, 2 );",
      "since": "1.1",
      "source": {
        "file": "src/Checklists/Checklists.php",
        "line": 266
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-checklists-export-value/",
      "related": [
        "gk/gravityboard/checklists/templates-applied",
        "gk/gravityboard/checklists/updated"
      ]
    },
    {
      "id": "gk-gravityboard-data-lanes",
      "name": "gk/gravityboard/data/lanes",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter lanes data before returning.",
      "parameters": [
        {
          "name": "lanes",
          "type": "array<int,array\\{id:>>, catch_all?: bool, disallowAddingCard?: bool\\}>",
          "description": "The lanes keyed by lane ID, before array_values() flattens them into the response."
        },
        {
          "name": "entries",
          "type": "array<int,array<string,mixed>>",
          "description": "The entries the lanes were built from, keyed by field ID alongside the entry properties."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/data/lanes', function($lanes, $entries, $feed) {\n    // Modify $lanes as needed\n    return $lanes;\n}, 10, 3 );",
      "since": "1.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 400
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-data-lanes/",
      "related": [
        "gk/gravityboard/data/max-entries",
        "gk/gravityboard/data/pagination"
      ]
    },
    {
      "id": "gk-gravityboard-data-max-entries",
      "name": "gk/gravityboard/data/max-entries",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters the most entries a board renders.",
      "parameters": [
        {
          "name": "max_entries",
          "type": "int",
          "description": "What the host can afford. See Feed::default_max_entries_per_board()."
        },
        {
          "name": "feed",
          "type": "\\FeedRow\\",
          "description": "array\\{\\}`"
        }
      ],
      "categories": [
        "entries",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/data/max-entries', function($max_entries, $feed) {\n    // Modify $max_entries as needed\n    return $max_entries;\n}, 10, 2 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Feed.php",
        "line": 282
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-data-max-entries/",
      "related": [
        "gk/gravityboard/data/lanes",
        "gk/gravityboard/data/pagination"
      ]
    },
    {
      "id": "gk-gravityboard-data-pagination",
      "name": "gk/gravityboard/data/pagination",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter pagination data before returning.",
      "parameters": [
        {
          "name": "pagination",
          "type": "array\\{total: int, per_page: int, offset: int, count: int, has_more: bool\\}",
          "description": "The pagination data."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        },
        {
          "name": "paging",
          "type": "array\\{offset: int, page_size: int\\}",
          "description": "The paging arguments the entry query ran with."
        },
        {
          "name": "total_entries",
          "type": "int",
          "description": "The total number of entries matching the query."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/data/pagination', function($pagination, $feed, $paging, $total_entries) {\n    // Modify $pagination as needed\n    return $pagination;\n}, 10, 4 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Ajax.php",
        "line": 415
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-data-pagination/",
      "related": [
        "gk/gravityboard/data/lanes",
        "gk/gravityboard/data/max-entries"
      ]
    },
    {
      "id": "gk-gravityboard-feed-field-config",
      "name": "gk/gravityboard/feed/field-config",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the editor configuration of a mapped form field.",
      "parameters": [
        {
          "name": "field_config",
          "type": "array<string,mixed>",
          "description": "<code>type</code>, plus <code>choices</code>, <code>required</code>, <code>read_only</code>, <code>placeholder</code> and <code>maxLength</code> where they apply."
        },
        {
          "name": "field",
          "type": "[\\GF_Field](https://docs.gravityforms.com/gf_field/)",
          "description": "The Gravity Forms field."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "fields",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/feed/field-config', function($field_config, $field, $feed) {\n    // Modify $field_config as needed\n    return $field_config;\n}, 10, 3 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Feed.php",
        "line": 2227
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-feed-field-config/",
      "related": []
    },
    {
      "id": "gk-gravityboard-lane-sorted-cards",
      "name": "gk/gravityboard/lane/sorted-cards",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the sorted cards within a lane.",
      "parameters": [
        {
          "name": "cards",
          "type": "array<int,array<string,mixed>>",
          "description": "The sorted cards, as [`\\GravityKit\\GravityBoard\\Card::build_data_from_entry()`](../../api/classes/gravitykit-gravityboard-card#build_data_from_entry) builds them."
        },
        {
          "name": "lane",
          "type": "array\\{id: string, title: string, value: string, color: string, cards: array<int,array<string,mixed>>, catch_all?: bool, disallowAddingCard?: bool\\}",
          "description": "The lane, with $cards already assigned to it."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/lane/sorted-cards', function($cards, $lane, $feed) {\n    // Modify $cards as needed\n    return $cards;\n}, 10, 3 );",
      "since": "1.4.0",
      "source": {
        "file": "src/Boards/Board_Data_Builder.php",
        "line": 98
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-lane-sorted-cards/",
      "related": [
        "gk/gravityboard/lane/added",
        "gk/gravityboard/lane/deleted",
        "gk/gravityboard/lane/edited",
        "gk/gravityboard/lane/moved"
      ]
    },
    {
      "id": "gk-gravityboard-merge-tags-assignee-user-id",
      "name": "gk/gravityboard/merge-tags/assignee-user-id",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the assignee user.",
      "parameters": [
        {
          "name": "assignee_user_id",
          "type": "int\\",
          "description": "null`"
        },
        {
          "name": "entry",
          "type": "array<string,mixed>",
          "description": "The Gravity Forms entry."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/merge-tags/assignee-user-id', function($assignee_user_id, $entry) {\n    // Modify $assignee_user_id as needed\n    return $assignee_user_id;\n}, 10, 2 );",
      "since": "1.0",
      "source": {
        "file": "src/Assignees/MergeTags.php",
        "line": 222
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-merge-tags-assignee-user-id/",
      "related": []
    },
    {
      "id": "gk-gravityboard-notes-allowed-html",
      "name": "gk/gravityboard/notes/allowed-html",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the HTML a card note may contain. Add `img` back to allow images in notes.",
      "parameters": [
        {
          "name": "allowed",
          "type": "array<string,array<string,bool>>",
          "description": "The allowed HTML, in the shape wp_kses() takes: tag name =&gt; attribute name =&gt; allowed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/notes/allowed-html', function($allowed) {\n    // Modify $allowed as needed\n    return $allowed;\n}, 10, 1 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Helpers.php",
        "line": 609
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-notes-allowed-html/",
      "related": [
        "gk/gravityboard/notes/filter-by-board"
      ]
    },
    {
      "id": "gk-gravityboard-notes-filter-by-board",
      "name": "gk/gravityboard/notes/filter-by-board",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter whether to filter notes by board.",
      "parameters": [
        {
          "name": "filter_notes_by_board",
          "type": "bool",
          "description": "Whether to filter notes by board."
        },
        {
          "name": "feed_id",
          "type": "int",
          "description": "The feed ID."
        }
      ],
      "categories": [
        "search",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/notes/filter-by-board', function($filter_notes_by_board, $feed_id) {\n    // Modify $filter_notes_by_board as needed\n    return $filter_notes_by_board;\n}, 10, 2 );",
      "since": "1.0",
      "source": {
        "file": "src/Notes/Notes.php",
        "line": 660
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-notes-filter-by-board/",
      "related": [
        "gk/gravityboard/notes/allowed-html"
      ]
    },
    {
      "id": "gk-gravityboard-permissions-admin-has-full-access",
      "name": "gk/gravityboard/permissions/admin-has-full-access",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters whether an admin user bypasses all board permission checks.",
      "parameters": [
        {
          "name": "has_full_access",
          "type": "bool",
          "description": "Whether the user has full access. Default: true for admins."
        },
        {
          "name": "user_id",
          "type": "int",
          "description": "The user ID being checked."
        }
      ],
      "categories": [
        "kanban",
        "permissions",
        "admin"
      ],
      "example": "add_filter( 'gk/gravityboard/permissions/admin-has-full-access', function($has_full_access, $user_id) {\n    // Modify $has_full_access as needed\n    return $has_full_access;\n}, 10, 2 );",
      "since": "1.4.0",
      "source": {
        "file": "src/Helpers.php",
        "line": 401
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-permissions-admin-has-full-access/",
      "related": []
    },
    {
      "id": "gk-gravityboard-renderer-css-variable-overrides",
      "name": "gk/gravityboard/renderer/css-variable-overrides",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters the global overrides for the GravityBoard.",
      "parameters": [
        {
          "name": "css_overrides",
          "type": "array<string,string>",
          "description": "The global overrides, with the key as the full CSS variable name and the value as the CSS value."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed."
        }
      ],
      "categories": [
        "rendering",
        "kanban",
        "assets"
      ],
      "example": "add_filter( 'gk/gravityboard/renderer/css-variable-overrides', function($css_overrides, $feed) {\n    // Modify $css_overrides as needed\n    return $css_overrides;\n}, 10, 2 );",
      "since": "1.0",
      "source": {
        "file": "src/Renderer.php",
        "line": 425
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-renderer-css-variable-overrides/",
      "related": [
        "gk/gravityboard/renderer/skip-offscreen-cards"
      ]
    },
    {
      "id": "gk-gravityboard-renderer-skip-offscreen-cards",
      "name": "gk/gravityboard/renderer/skip-offscreen-cards",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters whether the board leaves off-screen cards unrendered.",
      "parameters": [
        {
          "name": "skip",
          "type": "bool",
          "description": "Whether to skip them. Default true."
        },
        {
          "name": "feed",
          "type": "\\FeedRow\\",
          "description": "array\\{\\}`"
        }
      ],
      "categories": [
        "rendering",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/renderer/skip-offscreen-cards', function($skip, $feed) {\n    // Modify $skip as needed\n    return $skip;\n}, 10, 2 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Feed.php",
        "line": 186
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-renderer-skip-offscreen-cards/",
      "related": [
        "gk/gravityboard/renderer/css-variable-overrides"
      ]
    },
    {
      "id": "gk-gravityboard-translation-overrides",
      "name": "gk/gravityboard/translation-overrides",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters the translation overrides for the GravityBoard.",
      "parameters": [
        {
          "name": "translation_overrides",
          "type": "array<string,string[]>",
          "description": "The translation overrides."
        },
        {
          "name": "feed_id",
          "type": "int",
          "description": "The ID of the feed."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/translation-overrides', function($translation_overrides, $feed_id) {\n    // Modify $translation_overrides as needed\n    return $translation_overrides;\n}, 10, 2 );",
      "since": "1.0",
      "source": {
        "file": "src/Renderer.php",
        "line": 336
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-translation-overrides/",
      "related": [
        "gk/gravityboard/board-settings"
      ]
    },
    {
      "id": "gk-gravityboard-views-available",
      "name": "gk/gravityboard/views/available",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the available views for the board.",
      "parameters": [
        {
          "name": "available_views",
          "type": "string[]",
          "description": "The available views."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        }
      ],
      "categories": [
        "views",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/views/available', function($available_views, $feed) {\n    // Modify $available_views as needed\n    return $available_views;\n}, 10, 2 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Feed.php",
        "line": 1976
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-views-available/",
      "related": [
        "gk/gravityboard/views/default"
      ]
    },
    {
      "id": "gk-gravityboard-views-default",
      "name": "gk/gravityboard/views/default",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filter the default view for the board.",
      "parameters": [
        {
          "name": "default_view",
          "type": "string",
          "description": "The default view."
        },
        {
          "name": "feed",
          "type": "\\FeedRow",
          "description": "The feed data."
        },
        {
          "name": "available_views",
          "type": "string[]",
          "description": "The available views."
        }
      ],
      "categories": [
        "views",
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/views/default', function($default_view, $feed, $available_views) {\n    // Modify $default_view as needed\n    return $default_view;\n}, 10, 3 );",
      "since": "1.5.0",
      "source": {
        "file": "src/Feed.php",
        "line": 1991
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-views-default/",
      "related": [
        "gk/gravityboard/views/available"
      ]
    },
    {
      "id": "gk-gravityboard-voting-budget-total",
      "name": "gk/gravityboard/voting/budget-total",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters the total vote budget for a user.",
      "parameters": [
        {
          "name": "total",
          "type": "int",
          "description": "The total budget (0 = unlimited)."
        },
        {
          "name": "feed_id",
          "type": "int",
          "description": "The feed ID."
        },
        {
          "name": "user_id",
          "type": "int",
          "description": "The user ID."
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/voting/budget-total', function($total, $feed_id, $user_id) {\n    // Modify $total as needed\n    return $total;\n}, 10, 3 );",
      "since": "1.4.0",
      "source": {
        "file": "src/Voting/VoteBudget.php",
        "line": 243
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-voting-budget-total/",
      "related": [
        "gk/gravityboard/voting/vote- . $action",
        "gk/gravityboard/voting/can-spend-vote"
      ]
    },
    {
      "id": "gk-gravityboard-voting-can-spend-vote",
      "name": "gk/gravityboard/voting/can-spend-vote",
      "type": "filter",
      "product": "gravityboard",
      "description": "Filters whether a user can spend a vote.",
      "parameters": [
        {
          "name": "allowed",
          "type": "true",
          "description": "Whether the vote is allowed."
        },
        {
          "name": "feed_id",
          "type": "int",
          "description": "The feed ID."
        },
        {
          "name": "user_id",
          "type": "int",
          "description": "The user ID."
        },
        {
          "name": "entry_id",
          "type": "int",
          "description": "The entry (card) ID."
        },
        {
          "name": "budget",
          "type": "array\\{total: int, used: int, remaining: int, is_unlimited: bool, period: string, resets_at: string\\",
          "description": "null\\}`"
        }
      ],
      "categories": [
        "kanban"
      ],
      "example": "add_filter( 'gk/gravityboard/voting/can-spend-vote', function($allowed, $feed_id, $user_id, $entry_id, $budget) {\n    // Modify $allowed as needed\n    return $allowed;\n}, 10, 5 );",
      "since": "1.4.0",
      "source": {
        "file": "src/Voting/VoteBudget.php",
        "line": 142
      },
      "url": "/docs/gravityboard/filters/gk-gravityboard-voting-can-spend-vote/",
      "related": [
        "gk/gravityboard/voting/vote- . $action",
        "gk/gravityboard/voting/budget-total"
      ]
    }
  ],
  "stats": {
    "total": 46,
    "actions": 23,
    "filters": 23
  }
}