Skip to content
GravityKit
Buy
Sign in
0 items
  • Plugins

    GravityKit All Access

    Our complete Kit of essential tools for extending and enhancing Gravity Formsโ€”everything you need to build powerful web apps and workflows.

    Learn more
    • GravityView

      GravityView

      Bestseller

      Display Gravity Forms entries on the front-end of your site and build powerful web applications.

    • GravityImport

      GravityImport

      Trending

      Import entries from CSV files into Gravity Forms to transfer data, create new forms, or update existing entries.

    • GravityEdit

      GravityEdit

      Quickly edit Gravity Forms entries inline to save time, reduce clicks, and streamline your workflow.

    • GravityCharts

      GravityCharts

      Trending

      Turn Gravity Forms entries into interactive charts and graphs.

    • GravityActions

      GravityActions

      Update multiple Gravity Forms entries at once, send bulk emails, and streamline your workflow.

    • GravityCalendar

      GravityCalendar

      Turn Gravity Forms entries into dynamic calendars to showcase events, schedules, appointments, and more.

    • GravityExport

      GravityExport

      Export Gravity Forms entries to Excel, CSV, or PDF and share them instantly with secure download links.

    • GravityMath

      GravityMath

      Perform advanced calculations on Gravity Forms entries to display totals, averages, or build custom calculators.

    • GravityRevisions

      GravityRevisions

      Track, compare, and restore changes made to Gravity Forms forms and entries with a full version history.

    • GravityMigrate

      GravityMigrate

      Migrate all Gravity Forms data, including forms, entries, Views, feeds, uploads, and more.

    • GravityBoard

      GravityBoard

      Manage projects with collaborative project management. Coordinate with your team and streamline your workflows.

  • Ideal For

    • Nonprofits
    • Startups
    • Education
    • Web Agencies
    • Developers
    • Government iconGovernment
    Explore All Use Cases

    Case studies

    • West Fork Schools
    • Princeton University
    • BrightLeaf Giving
    • Jacksonville Port Authority
    • National Severe Storms Lab
    • Leadpal
    • Mediebruket
    • Dragonfly
    View All Case Studies
  • Resources

    • Blog
    • Case studies
    • Support
    • Live Demos
    • Documentation
    • Developer docs
    • GravityKit Academy
    • GravityKit Live!

    Ultimate guides

    • How to use Gravity Forms
    • Editing Gravity Forms entries
    • Importing Gravity Forms entries
    • Exporting Gravity Forms entries
    • Displaying Gravity Forms entries
    • Gravity Forms conditional logic
    • Gravity Forms calculations
    View More Articles
  • Plugins

    • GravityView

      GravityView

      Bestseller

      Display Gravity Forms entries on the front-end of your site and build powerful web applications.

    • GravityImport

      GravityImport

      Trending

      Import entries from CSV files into Gravity Forms to transfer data, create new forms, or update existing entries.

    • GravityEdit

      GravityEdit

      Quickly edit Gravity Forms entries inline to save time, reduce clicks, and streamline your workflow.

    • GravityCharts

      GravityCharts

      Trending

      Turn Gravity Forms entries into interactive charts and graphs.

    • GravityActions

      GravityActions

      Update multiple Gravity Forms entries at once, send bulk emails, and streamline your workflow.

    • GravityCalendar

      GravityCalendar

      Turn Gravity Forms entries into dynamic calendars to showcase events, schedules, appointments, and more.

    • GravityExport

      GravityExport

      Export Gravity Forms entries to Excel, CSV, or PDF and share them instantly with secure download links.

    • GravityMath

      GravityMath

      Perform advanced calculations on Gravity Forms entries to display totals, averages, or build custom calculators.

    • GravityRevisions

      GravityRevisions

      Track, compare, and restore changes made to Gravity Forms forms and entries with a full version history.

    • GravityMigrate

      GravityMigrate

      Migrate all Gravity Forms data, including forms, entries, Views, feeds, uploads, and more.

    • GravityBoard

      GravityBoard

      Manage projects with collaborative project management. Coordinate with your team and streamline your workflows.

    GravityKit All Access

    Our complete Kit of essential tools for extending and enhancing Gravity Formsโ€”everything you need to build powerful web apps and workflows.

    Learn more
  • Ideal For

    • Nonprofits
    • Startups
    • Education
    • Web Agencies
    • Developers
    • Government iconGovernment
    Explore All Use Cases

    Case studies

    • West Fork Schools
    • Princeton University
    • BrightLeaf Giving
    • Jacksonville Port Authority
    • National Severe Storms Lab
    • Leadpal
    • Mediebruket
    • Dragonfly
    View All Case Studies

    How to build...

    • Property Management
    • Product Catalog
    • Fundraising Dashboard
    • Real Estate Directory
    • Document Library
    • Academic Journal
    • Volunteer Management
    • Meal Tracker
    View All Guides
  • Resources

    • Blog
    • Case studies
    • Support
    • Live Demos
    • Documentation
    • Developer docs
    • GravityKit Academy
    • GravityKit Live!

    ultimate guides

    • How to use Gravity Forms
    • Editing Gravity Forms entries
    • Importing Gravity Forms entries
    • Exporting Gravity Forms entries
    • Displaying Gravity Forms entries
    • Gravity Forms conditional logic
    • Gravity Forms calculations
    View More Articles
  • Pricing
  • About
0 items
Results appear automatically as you type.
Loading results…

results found matching

    Sign in
    Buy

    Docs

    • Docs Home

    Gravity Forms Add-Ons

    • GravityView
    • GravityActions
    • GravityBoard
    • GravityCalendar
    • GravityCharts
    • GravityEdit
    • GravityExport
    • GravityImport
    • GravityMath
    • GravityMigrate
    • GravityRevisions
    • GF Widget for Elementor
    • GF Dynamic Lookup
    • GF Entry Tags
    • GF Event Field
    • GF Zero Spam
    • GravityExport Lite

    GravityView

    • Getting Started
    • View Setup
    • FAQ
    • Pre-Sale
    • Advanced
    • Common Problems
    • Customizing Your Views
    • Edit Entry
    • Entry Approval
    • Filter and Sort Results
    • Gravity Forms
    • Merge Tags
    • Roles and Capabilities
    • Search
    • Shortcodes
    • View Settings
    • WordPress Posts

    General Help

    • Account, Invoices, and Billing
    • License Related
    • Plugins and Settings
    • Contact
    • Docs Home
    • Gravity Forms Add-Ons

      • GravityView
      • GravityActions
      • GravityBoard
      • GravityCalendar
      • GravityCharts
      • GravityEdit
      • GravityExport
      • GravityImport
      • GravityMath
      • GravityMigrate
      • GravityRevisions
      • GF Widget for Elementor
      • GF Dynamic Lookup
      • GF Entry Tags
      • GF Event Field
      • GF Zero Spam
      • GravityExport Lite
    • GravityView

      • Getting Started
      • View Setup
      • FAQ
      • Pre-Sale
      • Advanced
      • Common Problems
      • Customizing Your Views
      • Edit Entry
      • Entry Approval
      • Filter and Sort Results
      • Gravity Forms
      • Merge Tags
      • Roles and Capabilities
      • Search
      • Shortcodes
      • View Settings
      • WordPress Posts
    • General Help

      • Account, Invoices, and Billing
      • License Related
      • Plugins and Settings
    • Contact

    GravityBoard

    • About GravityBoard Checklists
    • Admin bypass for GravityBoard permissions
    • Customizing GravityBoard translations
    • Getting Started with GravityBoard
    • GravityBoard Checklist Templates
    • GravityBoard common issues
    • GravityBoard Developer Docs (Hooks & REST API)
    • GravityBoard filtering guide
    • GravityBoard Voting Guide
    • GravityBoard Voting vs. Ratings & Reviews
    • How GravityBoard syncs to Gravity Forms
    • How to Show Only Current User’s Entries in GravityBoard
    • Merge tags added by GravityBoard
    • Using Entry Tags in GravityBoard
    • Home
    • Docs
    • GravityBoard
    • Admin bypass for GravityBoard permissions

    Admin bypass for GravityBoard permissions

    Estimated reading: 6 minutes

    Updated on April 24, 2026

    By default, GravityBoard grants WordPress administrators and Gravity Forms administrators full access to every board, including permission to view, add, edit, move, and delete cards and lanes, regardless of what is selected in the board’s Permissions tab. This article explains that behavior and how to override it for your site.

    Who is treated as an admin? #

    GravityBoard treats a user as an admin (and grants them full access) if they have either of the following WordPress capabilities:

    CapabilityTypical roleWhy it qualifies
    manage_optionsWordPress AdministratorCore WordPress capability for full site management.
    gform_full_accessGravity Forms adminGrants unrestricted access to Gravity Forms. Users who manage forms but are not WordPress administrators will usually have this.

    If a user has at least one of these capabilities, every permission check inside GravityBoard returns true before the board’s role settings are ever consulted.

    What does โ€œfull accessโ€ cover? #

    The admin bypass applies to every action GravityBoard permission-checks, including:

    • Viewing a board and fetching its entries
    • Adding, editing, moving, and deleting cards
    • Adding, renaming, reordering, and deleting lanes
    • Reading, creating, and deleting entry notes
    • Uploading and deleting attachments
    • Managing checklists and checklist items
    • Voting on cards (when the Voting feature is in use)

    Permissions configured in the Permissions tab of the board settings are still respected for every non-admin user. The bypass only affects users who hold manage_options or gform_full_access.

    Overriding the default with a filter #

    Developers can change which users are granted the admin bypass using the gk/gravityboard/permissions/admin-has-full-access filter. This filter runs inside GravityBoard\Helpers::admin_has_full_access() and its result is cached per user for the duration of the request, so it is safe to use on high-traffic sites.

    Not sure where to add the code samples below? See Where to put code samples.

    Filter signature

    This is the filter as defined in the plugin source (src/Helpers.php):

    /**
     * Filters whether an admin user bypasses all board permission checks.
     *
     * @since 1.4.0
     *
     * @param bool $has_full_access Whether the user has full access. Default: true for admins.
     * @param int  $user_id         The user ID being checked.
     */
    $has_full_access = (bool) apply_filters(
        'gk/gravityboard/permissions/admin-has-full-access',
        $has_full_access,
        $user_id
    );
    ArgumentTypeDescription
    $has_full_accessboolWhether the user is currently considered an admin. Default: true if the user has manage_options or gform_full_access, otherwise false.
    $user_idintThe ID of the user being checked.

    Example 1: Remove the bypass for everyone

    Force every user, including site administrators, to obey the board’s Permissions tab:

    add_filter(
        'gk/gravityboard/permissions/admin-has-full-access',
        '__return_false'
    );

    Warning: After applying this filter, administrators will be locked out of any action that is not explicitly enabled for their role in each board’s Permissions tab. Make sure to grant the appropriate roles before deploying this change.

    Example 2: Bypass only for a specific role

    Grant full access to users in a custom board_manager role, regardless of whether they have manage_options:

    /**
     * Grant full GravityBoard access to users who can manage boards.
     *
     * @param bool $has_full_access Whether the user has full access.
     * @param int  $user_id         The user ID being checked.
     *
     * @return bool
     */
    add_filter(
        'gk/gravityboard/permissions/admin-has-full-access',
        function ( $has_full_access, $user_id ) {
            if ( user_can( $user_id, 'manage_board' ) ) {
                return true;
            }
    
            return $has_full_access;
        },
        10,
        2
    );

    Example 3: Exclude specific users from the bypass

    Keep the default behavior, but exclude a specific user ID from receiving full access:

    /**
     * Exclude specific user IDs from the GravityBoard admin bypass.
     *
     * @param bool $has_full_access Whether the user has full access.
     * @param int  $user_id         The user ID being checked.
     *
     * @return bool
     */
    add_filter(
        'gk/gravityboard/permissions/admin-has-full-access',
        function ( $has_full_access, $user_id ) {
            $excluded_user_ids = [ 42, 108 ];
    
            if ( in_array( $user_id, $excluded_user_ids, true ) ) {
                return false;
            }
    
            return $has_full_access;
        },
        10,
        2
    );

    Interaction with board-level permissions #

    When a permission check runs, GravityBoard evaluates it in this order:

    1. If the selected roles for the action include the enabled value (โ€œEveryoneโ€), access is granted.
    2. If admin_has_full_access() returns true for the user, access is granted.
    3. If no roles are selected for the action, access is denied.
    4. Otherwise, each selected role or capability is checked against the user.

    This means the admin bypass cannot be disabled by leaving the Permissions tab empty. You must use the filter above.

    Troubleshooting #

    An administrator can see actions I thought were restricted

    This is expected. The board’s Permissions tab does not apply to users with manage_options or gform_full_access. Use the gk/gravityboard/permissions/admin-has-full-access filter to change this.

    A non-admin user cannot perform an action

    Open the board settings, switch to the Permissions tab, and confirm the user’s role is selected for that action. The admin bypass does not apply to users without manage_options or gform_full_access.

    My filter is not running

    • Confirm the callback is registered before GravityBoard checks permissions (the plugins_loaded hook is a safe place).
    • Remember that the result is cached per user for the request. If you are toggling the filter dynamically, clear the cache by running your test in a fresh request.
    • Make sure you declared $user_id in the callback signature and passed 10, 2 as the priority and argument count to add_filter().

    Related articles #

    • GravityBoard Developer Docs (Hooks & REST API)
    • Troubleshooting 403 errors in GravityBoard
    • How to Show Only Current User’s Entries in GravityBoard
    • Where to put code samples
    Still stuck? How can we help?

    How can we help?

    "*" indicates required fields

    This field is for validation purposes and should be left unchanged.
    Replies will go to this email.
    How can we help?*
    My pre-sale question is related to...*
    My WordPress skills are....*
    My Gravity Forms skills are...*
    You will be shown articles from our documentation.
    Vous pouvez nous รฉcrire dans votre langue maternelle si cโ€™est plus facile pour vousโ€”nous nous occuperons de la traduction!
    Puedes escribirnos en tu idioma nativo si te resulta mรกs fรกcil; ยกnosotros nos encargamos de la traducciรณn!
    Sie kรถnnen uns in Ihrer Muttersprache schreiben, wenn das fรผr Sie einfacher ist โ€“ wir kรผmmern uns um die รœbersetzung!
    U kunt ons in uw moedertaal schrijven als dat gemakkelijker voor u is โ€” wij zorgen voor de vertaling!
    Du kan skrive til oss pรฅ ditt morsmรฅl hvis det er enklere for deg โ€” vi tar oss av oversettelsen!
    Du kan skriva till oss pรฅ ditt modersmรฅl om det รคr lรคttare fรถr dig โ€” vi tar hand om รถversรคttningen!
    Vocรช pode nos escrever em seu idioma nativo se for mais fรกcil para vocรช โ€” nรณs cuidaremos da traduรงรฃo!
    Puoi scriverci nella tua lingua madre se ti รจ piรน facile โ€” penseremo noi alla traduzione!
    Please provide as much detail as you're able; this helps us provide you with faster support.
    Drop files here or
    Accepted file types: jpg, jpeg, gif, png, tiff, pdf, bmp, zip, json, csv, xls, xlsx, Max. file size: 256 MB.
      Stay informed?

      Was this page helpful?

      Table Of Contents
      • Who is treated as an admin?
      • What does โ€œfull accessโ€ cover?
      • Overriding the default with a filter
      • Interaction with board-level permissions
      • Troubleshooting
      • Related articles
      GravityKit
      • How to Build It
      • Pricing
      • Products
      • Our Team
      • Our Values
      • Work With Us
      • Coupons
      Support
      • Support
      • Contact
      • Documentation
      • Scope of Support
      • Brand Guidelines
      • Privacy Policy
      • Terms of Service (โ€œTermsโ€)
      About Us
      • GravityKit on Mastodon
      • GravityKit on Twitter
      • GravityKit Training Courses
      • GravityKit on Facebook
      • Join our Facebook Group
      • Facebook
      • Twitter
      Get notified of updates.

      Weโ€™re constantly improving GravityKit. Fill out your email below and weโ€™ll notify you anytime major updates drop.

      GravityKit is a Gravity Forms Certified Developer.

      Copyright ยฉ 2026, Katz Web Services, Inc.

      GravityKit and GravityView are registered trademarks of Katz Web Services, Inc.