KTUIKTUI
KTUIKTUI
ComponentsDocsStudio

Getting Started

IntroductionInstallationApproachThemingJavaScriptTypeScriptDark modeRTLReferencesChangelog - v1.2.7Metronic TemplatePopular

Components

AccordionAvatarAlertBadgeBreadcrumbButtonCardUpdateCarouselNewClipboardNewCheckboxCollapseDatatableUpdateContext MenuNewDismissDrawerDropdownUpdateImage InputInputInput numberNewKbdLinkModalPaginationPin inputNewProgressRadio GroupRange SliderNewRatingNewReparentRepeaterNewScrollableScrollspyScrolltoSelectUpdateSeparatorUpdateSkeletonUpdateStepperStickySwitchTabsTextareaTheme SwitchToastTooltipToggleToggle GroupToggle Password
©2026 KtUI. All rights reserved.
A project by Keenthemes
Docs
Tailwind DataTable

Tailwind DataTable

Sortable, searchable, paginated tables with optional row selection and loading state. Local mode reads rows from the table HTML; remote mode fetches pages from an API (page, size, sort, search, filters).

Examples

Basic usage

Local HTML rows with search, sort, pagination, and toolbar controls.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_basic"
      />
    </div>
    <div
      id="kt_datatable_basic"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-16"
                data-kt-datatable-column="actions"
              ></th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Remote data

Rows from an API. See the demo.js tab for apiEndpoint, mapResponse, and custom columns.render.

Default request query parameters: page, size, sortField, sortOrder, search, filters.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_remote_source"
      />
    </div>
    <div
      id="kt_datatable_remote_source"
      class="kt-card-table"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="ipAddress">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">IP Address</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Row selection

Header checkbox plus per-row checkboxes.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_group_check"
      />
    </div>
    <div
      id="kt_datatable_group_check"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table kt-table-border" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-5">
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-check="true"
                />
              </th>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col asc"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-16"
                data-kt-datatable-column="actions"
              ></th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="0"
                />
              </td>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="1"
                />
              </td>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="2"
                />
              </td>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="3"
                />
              </td>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="4"
                />
              </td>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="5"
                />
              </td>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="6"
                />
              </td>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="7"
                />
              </td>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="8"
                />
              </td>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="9"
                />
              </td>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="10"
                />
              </td>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="11"
                />
              </td>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="12"
                />
              </td>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="13"
                />
              </td>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="14"
                />
              </td>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="15"
                />
              </td>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="16"
                />
              </td>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="17"
                />
              </td>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Locked columns

Keep critical left and right columns visible while horizontally scrolling wide tables.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_locked_columns"
      />
    </div>
    <div id="kt_datatable_locked_columns" class="kt-card-table">
      <div class="kt-table-wrapper kt-scrollable max-w-full overflow-auto">
        <table class="kt-table min-w-[980px]" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th data-kt-datatable-column="id">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">ID</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="lastSession">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="ipAddress">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">IP Address</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="region">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Region</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th data-kt-datatable-column="team">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Team</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>1</td>
              <td>Accounting</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
              <td>EU-West</td>
              <td>Ops</td>
            </tr>
            <tr>
              <td>2</td>
              <td>Compliance</td>
              <td>SSH</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
              <td>US-East</td>
              <td>Security</td>
            </tr>
            <tr>
              <td>3</td>
              <td>Support</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
              <td>APAC</td>
              <td>Service</td>
            </tr>
            <tr>
              <td>4</td>
              <td>Legal</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
              <td>EU-Central</td>
              <td>Audit</td>
            </tr>
            <tr>
              <td>5</td>
              <td>Sales</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
              <td>US-West</td>
              <td>Growth</td>
            </tr>
            <tr>
              <td>6</td>
              <td>Finance</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
              <td>MEA</td>
              <td>Treasury</td>
            </tr>
            <tr>
              <td>7</td>
              <td>Operations</td>
              <td>OpenID</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
              <td>LATAM</td>
              <td>Platform</td>
            </tr>
            <tr>
              <td>8</td>
              <td>Marketing</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
              <td>ANZ</td>
              <td>Brand</td>
            </tr>
            <tr>
              <td>9</td>
              <td>Engineering</td>
              <td>Basic auth</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
              <td>EU-West</td>
              <td>Product</td>
            </tr>
            <tr>
              <td>10</td>
              <td>Procurement</td>
              <td>OAuth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
              <td>US-East</td>
              <td>Supply</td>
            </tr>
            <tr>
              <td>11</td>
              <td>HR</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
              <td>APAC</td>
              <td>People</td>
            </tr>
            <tr>
              <td>12</td>
              <td>IT</td>
              <td>LDAP</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
              <td>EU-Central</td>
              <td>Infra</td>
            </tr>
            <tr>
              <td>13</td>
              <td>Security</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
              <td>US-West</td>
              <td>Labs</td>
            </tr>
            <tr>
              <td>14</td>
              <td>Research</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
              <td>MEA</td>
              <td>Revenue</td>
            </tr>
            <tr>
              <td>15</td>
              <td>Logistics</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
              <td>LATAM</td>
              <td>Compliance</td>
            </tr>
            <tr>
              <td>16</td>
              <td>Customer Success</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
              <td>ANZ</td>
              <td>Ops</td>
            </tr>
            <tr>
              <td>17</td>
              <td>Partnerships</td>
              <td>Certificate</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
              <td>EU-West</td>
              <td>Security</td>
            </tr>
            <tr>
              <td>18</td>
              <td>Platform</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
              <td>US-East</td>
              <td>Service</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Locked rows

Keep the header and selected top/bottom rows fixed while vertically scrolling.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_locked_rows"
      />
    </div>
    <div id="kt_datatable_locked_rows" class="kt-card-table">
      <div class="kt-table-wrapper kt-scrollable max-h-[420px] overflow-auto">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th data-kt-datatable-column="id">ID</th>
              <th data-kt-datatable-column="label">Label</th>
              <th data-kt-datatable-column="method">Method</th>
              <th data-kt-datatable-column="status">Status</th>
              <th data-kt-datatable-column="lastSession">Last Session</th>
              <th data-kt-datatable-column="ipAddress">IP Address</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>1</td>
              <td>Accounting</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
            </tr>
            <tr>
              <td>2</td>
              <td>Compliance</td>
              <td>SSH</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
            </tr>
            <tr>
              <td>3</td>
              <td>Support</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
            </tr>
            <tr>
              <td>4</td>
              <td>Legal</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
            </tr>
            <tr>
              <td>5</td>
              <td>Sales</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
            </tr>
            <tr>
              <td>6</td>
              <td>Finance</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
            </tr>
            <tr>
              <td>7</td>
              <td>Operations</td>
              <td>OpenID</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
            </tr>
            <tr>
              <td>8</td>
              <td>Marketing</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
            </tr>
            <tr>
              <td>9</td>
              <td>Engineering</td>
              <td>Basic auth</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
            </tr>
            <tr>
              <td>10</td>
              <td>Procurement</td>
              <td>OAuth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
            </tr>
            <tr>
              <td>11</td>
              <td>HR</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
            </tr>
            <tr>
              <td>12</td>
              <td>IT</td>
              <td>LDAP</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
            </tr>
            <tr>
              <td>13</td>
              <td>Security</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
            </tr>
            <tr>
              <td>14</td>
              <td>Research</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
            </tr>
            <tr>
              <td>15</td>
              <td>Logistics</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
            </tr>
            <tr>
              <td>16</td>
              <td>Customer Success</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
            </tr>
            <tr>
              <td>17</td>
              <td>Partnerships</td>
              <td>Certificate</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
            </tr>
            <tr>
              <td>18</td>
              <td>Platform</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Combined locks

Combine sticky header, sticky rows, and locked columns for dense operational grids.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_locked_combined"
      />
    </div>
    <div id="kt_datatable_locked_combined" class="kt-card-table">
      <div class="kt-table-wrapper kt-scrollable max-h-[420px] overflow-auto">
        <table class="kt-table min-w-[980px]" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th data-kt-datatable-column="id">ID</th>
              <th data-kt-datatable-column="label">Label</th>
              <th data-kt-datatable-column="method">Method</th>
              <th data-kt-datatable-column="status">Status</th>
              <th data-kt-datatable-column="lastSession">Last Session</th>
              <th data-kt-datatable-column="ipAddress">IP Address</th>
              <th data-kt-datatable-column="region">Region</th>
              <th data-kt-datatable-column="team">Team</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>1</td>
              <td>Accounting</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
              <td>EU-West</td>
              <td>Ops</td>
            </tr>
            <tr>
              <td>2</td>
              <td>Compliance</td>
              <td>SSH</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
              <td>US-East</td>
              <td>Security</td>
            </tr>
            <tr>
              <td>3</td>
              <td>Support</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
              <td>APAC</td>
              <td>Service</td>
            </tr>
            <tr>
              <td>4</td>
              <td>Legal</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
              <td>EU-Central</td>
              <td>Audit</td>
            </tr>
            <tr>
              <td>5</td>
              <td>Sales</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
              <td>US-West</td>
              <td>Growth</td>
            </tr>
            <tr>
              <td>6</td>
              <td>Finance</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
              <td>MEA</td>
              <td>Treasury</td>
            </tr>
            <tr>
              <td>7</td>
              <td>Operations</td>
              <td>OpenID</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
              <td>LATAM</td>
              <td>Platform</td>
            </tr>
            <tr>
              <td>8</td>
              <td>Marketing</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
              <td>ANZ</td>
              <td>Brand</td>
            </tr>
            <tr>
              <td>9</td>
              <td>Engineering</td>
              <td>Basic auth</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
              <td>EU-West</td>
              <td>Product</td>
            </tr>
            <tr>
              <td>10</td>
              <td>Procurement</td>
              <td>OAuth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
              <td>US-East</td>
              <td>Supply</td>
            </tr>
            <tr>
              <td>11</td>
              <td>HR</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
              <td>APAC</td>
              <td>People</td>
            </tr>
            <tr>
              <td>12</td>
              <td>IT</td>
              <td>LDAP</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
              <td>EU-Central</td>
              <td>Infra</td>
            </tr>
            <tr>
              <td>13</td>
              <td>Security</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
              <td>US-West</td>
              <td>Labs</td>
            </tr>
            <tr>
              <td>14</td>
              <td>Research</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
              <td>MEA</td>
              <td>Revenue</td>
            </tr>
            <tr>
              <td>15</td>
              <td>Logistics</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
              <td>LATAM</td>
              <td>Compliance</td>
            </tr>
            <tr>
              <td>16</td>
              <td>Customer Success</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
              <td>ANZ</td>
              <td>Ops</td>
            </tr>
            <tr>
              <td>17</td>
              <td>Partnerships</td>
              <td>Certificate</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
              <td>EU-West</td>
              <td>Security</td>
            </tr>
            <tr>
              <td>18</td>
              <td>Platform</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
              <td>US-East</td>
              <td>Service</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Non-sortable

Disable sorting on specific headers with data-kt-datatable-column-sort="false".

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_non_sortable"
      />
    </div>
    <div
      id="kt_datatable_non_sortable"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-20"
                data-kt-datatable-column="method"
                data-kt-datatable-column-sort="false"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method (fixed)</span></span
                >
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-16"
                data-kt-datatable-column="actions"
              ></th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Reload

Call KTDataTable.getInstance(element) after auto-init, then reload() from your own controls.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div
      class="kt-card-header min-h-16 flex w-full flex-wrap items-center justify-between gap-3"
    >
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_programmatic"
      /><button
        type="button"
        id="kt_datatable_programmatic_reload_btn"
        class="kt-btn kt-btn-sm kt-btn-primary shrink-0"
      >
        Reload
      </button>
    </div>
    <div
      id="kt_datatable_programmatic"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-16"
                data-kt-datatable-column="actions"
              ></th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Events

Subscribe with datatable.on('sort', …) (see demo.js tab).

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_events"
      />
    </div>
    <div
      id="kt_datatable_events"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-5">
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-check="true"
                />
              </th>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-16"
                data-kt-datatable-column="actions"
              ></th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="0"
                />
              </td>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="1"
                />
              </td>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="2"
                />
              </td>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="3"
                />
              </td>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="4"
                />
              </td>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="5"
                />
              </td>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="6"
                />
              </td>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="7"
                />
              </td>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="8"
                />
              </td>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="9"
                />
              </td>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="10"
                />
              </td>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="11"
                />
              </td>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="12"
                />
              </td>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="13"
                />
              </td>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="14"
                />
              </td>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="15"
                />
              </td>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="16"
                />
              </td>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="17"
                />
              </td>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card">
    <div
      class="kt-card-header border-b border-border py-2.5 text-xs font-medium text-muted-foreground"
    >
      Console — logs all events via both <code>.on()</code> and<!-- -->
      <code>addEventListener</code> patterns
    </div>
    <pre
      id="kt_datatable_events_log"
      class="kt-card-content max-h-48 overflow-y-auto p-4 font-mono text-xs leading-relaxed text-muted-foreground"
    >
Waiting for events…</pre
    >
  </div>
</div>

Remote filters

Use setFilter({ column, type, value }) to update server-side filters, then call reload() so the next request includes them. The built-in query string sends filters as JSON; mapRequest can reshape that for your API (this demo maps a status filter to a plain status query parameter).

The preview uses the docs-only endpoint /api/docs/datatable (same-origin).

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16 flex flex-wrap items-center gap-3">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input kt-input-sm sm:w-48"
        data-kt-datatable-search="#kt_datatable_remote_filters"
      /><label class="flex items-center gap-2 text-sm"
        ><span class="text-muted-foreground">Status</span
        ><select
          id="kt_datatable_remote_filters_status"
          class="kt-select kt-select-sm w-44"
        >
          <option value="" selected="">All</option>
          <option value="kt-badge-success">Active</option>
          <option value="kt-badge-destructive">Rejected</option>
          <option value="kt-badge-warning">Pending</option>
          <option value="kt-badge-primary">Verified</option>
          <option value="kt-badge-secondary">Draft</option>
          <option value="kt-badge-info">In Review</option>
          <option value="kt-badge-mono">Archived</option>
        </select></label
      ><button
        type="button"
        id="kt_datatable_remote_filters_apply"
        class="kt-btn kt-btn-sm kt-btn-primary"
      >
        Apply filter
      </button>
    </div>
    <div
      id="kt_datatable_remote_filters"
      class="kt-card-table relative"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="ipAddress">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">IP Address</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Row actions

Non-sortable actions header plus columns.actions.render for trailing controls (icons are inline SVG in the demo script).

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_remote_actions"
      />
    </div>
    <div
      id="kt_datatable_remote_actions"
      class="kt-card-table relative"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-28 text-end"
                data-kt-datatable-column="actions"
                data-kt-datatable-column-sort="false"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Actions</span></span
                >
              </th>
            </tr>
          </thead>
          <tbody></tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Sort & search

Override local sorting and matching: salary cells use currency text while the sort callback parses numeric amounts; search matches name, department, and office, but not salary.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search name, department, or office…"
        class="kt-input sm:w-72"
        data-kt-datatable-search="#kt_datatable_local_callbacks"
      />
    </div>
    <div
      id="kt_datatable_local_callbacks"
      class="kt-card-table"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-40" data-kt-datatable-column="name">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Name</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-32"
                data-kt-datatable-column="department"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Department</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-28" data-kt-datatable-column="office">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Office</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-28" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-28 text-end"
                data-kt-datatable-column="salary"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Salary</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Ana Costa</td>
              <td>Engineering</td>
              <td>New York</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td class="text-end font-mono text-sm">$118,400</td>
            </tr>
            <tr>
              <td>Ben Okafor</td>
              <td>Design</td>
              <td>London</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td class="text-end font-mono text-sm">$96,200</td>
            </tr>
            <tr>
              <td>Chen Wei</td>
              <td>Support</td>
              <td>Singapore</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td class="text-end font-mono text-sm">$124,900</td>
            </tr>
            <tr>
              <td>Dana Singh</td>
              <td>Finance</td>
              <td>Austin</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td class="text-end font-mono text-sm">$72,500</td>
            </tr>
            <tr>
              <td>Eli Navarro</td>
              <td>Marketing</td>
              <td>Berlin</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td class="text-end font-mono text-sm">$131,000</td>
            </tr>
            <tr>
              <td>Fatima Noor</td>
              <td>Operations</td>
              <td>Dubai</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td class="text-end font-mono text-sm">$88,300</td>
            </tr>
            <tr>
              <td>Gus Park</td>
              <td>Engineering</td>
              <td>Toronto</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td class="text-end font-mono text-sm">$91,750</td>
            </tr>
            <tr>
              <td>Hana Ito</td>
              <td>Design</td>
              <td>Tokyo</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td class="text-end font-mono text-sm">$69,900</td>
            </tr>
            <tr>
              <td>Ivan Petrov</td>
              <td>Support</td>
              <td>New York</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td class="text-end font-mono text-sm">$102,000</td>
            </tr>
            <tr>
              <td>Jules Martin</td>
              <td>Finance</td>
              <td>London</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td class="text-end font-mono text-sm">$119,500</td>
            </tr>
            <tr>
              <td>Kira Bloom</td>
              <td>Marketing</td>
              <td>Singapore</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td class="text-end font-mono text-sm">$84,200</td>
            </tr>
            <tr>
              <td>Leo Santos</td>
              <td>Operations</td>
              <td>Austin</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td class="text-end font-mono text-sm">$97,600</td>
            </tr>
            <tr>
              <td>Ana Costa</td>
              <td>Engineering</td>
              <td>Berlin</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td class="text-end font-mono text-sm">$118,400</td>
            </tr>
            <tr>
              <td>Ben Okafor</td>
              <td>Design</td>
              <td>Dubai</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td class="text-end font-mono text-sm">$96,200</td>
            </tr>
            <tr>
              <td>Chen Wei</td>
              <td>Support</td>
              <td>Toronto</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td class="text-end font-mono text-sm">$124,900</td>
            </tr>
            <tr>
              <td>Dana Singh</td>
              <td>Finance</td>
              <td>Tokyo</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td class="text-end font-mono text-sm">$72,500</td>
            </tr>
            <tr>
              <td>Eli Navarro</td>
              <td>Marketing</td>
              <td>New York</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td class="text-end font-mono text-sm">$131,000</td>
            </tr>
            <tr>
              <td>Fatima Noor</td>
              <td>Operations</td>
              <td>London</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td class="text-end font-mono text-sm">$88,300</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Loading & empty

Two tables: one adds slow via mapRequest so the default loading overlay stays visible longer; the other requests an empty page and sets infoEmpty for the placeholder row.

<div class="grid w-full gap-8">
  <div class="space-y-3">
    <h3 class="text-base font-medium">Slow request (spinner)</h3>
    <p class="text-muted-foreground text-sm">
      <code class="text-foreground">mapRequest</code> adds a<!-- -->
      <code class="text-foreground">slow</code> millisecond delay so the default
      loading overlay is visible on each fetch.
    </p>
    <div class="kt-card">
      <div class="kt-card-header min-h-16">
        <input
          type="text"
          placeholder="Search..."
          class="kt-input sm:w-48"
          data-kt-datatable-search="#kt_datatable_remote_slow"
        />
      </div>
      <div
        id="kt_datatable_remote_slow"
        class="kt-card-table relative"
        data-kt-datatable-page-size="5"
      >
        <div class="kt-table-wrapper kt-scrollable">
          <table class="kt-table" data-kt-datatable-table="true">
            <thead>
              <tr>
                <th scope="col" class="w-30" data-kt-datatable-column="label">
                  <span class="kt-table-col"
                    ><span class="kt-table-col-label">Label</span
                    ><span class="kt-table-col-sort"></span
                  ></span>
                </th>
                <th scope="col" class="w-20" data-kt-datatable-column="method">
                  <span class="kt-table-col"
                    ><span class="kt-table-col-label">Method</span
                    ><span class="kt-table-col-sort"></span
                  ></span>
                </th>
                <th scope="col" class="w-24" data-kt-datatable-column="status">
                  <span class="kt-table-col"
                    ><span class="kt-table-col-label">Status</span
                    ><span class="kt-table-col-sort"></span
                  ></span>
                </th>
              </tr>
            </thead>
            <tbody></tbody>
          </table>
        </div>
        <template><!--begin:pagination--></template>
        <div class="kt-datatable-toolbar">
          <div class="kt-datatable-length">
            Show<select
              class="kt-select kt-select-sm w-16"
              name="perpage"
              data-kt-datatable-size="true"
            ></select
            >per page
          </div>
          <div class="kt-datatable-info">
            <span data-kt-datatable-info="true"></span>
            <div
              class="kt-datatable-pagination"
              data-kt-datatable-pagination="true"
            ></div>
          </div>
        </div>
        <template><!--end:pagination--></template>
      </div>
    </div>
  </div>
  <div class="space-y-3">
    <h3 class="text-base font-medium">Empty result</h3>
    <p class="text-muted-foreground text-sm">
      Uses <code class="text-foreground">mapRequest</code> with
      <code class="text-foreground">empty=1</code>
      <!-- -->and a custom
      <code class="text-foreground">infoEmpty</code> template.
    </p>
    <div class="kt-card">
      <div
        id="kt_datatable_remote_empty"
        class="kt-card-table relative"
        data-kt-datatable-page-size="5"
      >
        <div class="kt-table-wrapper kt-scrollable">
          <table class="kt-table" data-kt-datatable-table="true">
            <thead>
              <tr>
                <th scope="col" class="w-30" data-kt-datatable-column="label">
                  <span class="kt-table-col"
                    ><span class="kt-table-col-label">Label</span
                    ><span class="kt-table-col-sort"></span
                  ></span>
                </th>
                <th scope="col" class="w-20" data-kt-datatable-column="method">
                  <span class="kt-table-col"
                    ><span class="kt-table-col-label">Method</span
                    ><span class="kt-table-col-sort"></span
                  ></span>
                </th>
              </tr>
            </thead>
            <tbody></tbody>
          </table>
        </div>
        <template><!--begin:pagination--></template>
        <div class="kt-datatable-toolbar">
          <div class="kt-datatable-length">
            Show<select
              class="kt-select kt-select-sm w-16"
              name="perpage"
              data-kt-datatable-size="true"
            ></select
            >per page
          </div>
          <div class="kt-datatable-info">
            <span data-kt-datatable-info="true"></span>
            <div
              class="kt-datatable-pagination"
              data-kt-datatable-pagination="true"
            ></div>
          </div>
        </div>
        <template><!--end:pagination--></template>
      </div>
    </div>
  </div>
</div>

Remote selection

Remote pagination with checkboxes rendered from columns.id.render, checkbox.preserveSelection: true, and stable row id values from the API.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16 flex flex-wrap items-center gap-3">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_remote_selection"
      /><button
        type="button"
        id="kt_datatable_remote_selection_log"
        class="kt-btn kt-btn-sm kt-btn-outline"
      >
        Log selection
      </button>
    </div>
    <div
      id="kt_datatable_remote_selection"
      class="kt-card-table relative"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th
                scope="col"
                class="w-10"
                data-kt-datatable-column="id"
                data-kt-datatable-column-sort="false"
              >
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-check="true"
                />
              </th>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="0"
                />
              </td>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="1"
                />
              </td>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="2"
                />
              </td>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="3"
                />
              </td>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="4"
                />
              </td>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="5"
                />
              </td>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="6"
                />
              </td>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="7"
                />
              </td>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="8"
                />
              </td>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="9"
                />
              </td>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="10"
                />
              </td>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="11"
                />
              </td>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="12"
                />
              </td>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="13"
                />
              </td>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="14"
                />
              </td>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="15"
                />
              </td>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="16"
                />
              </td>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="17"
                />
              </td>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

State persistence

Sort, paginate, select rows, then refresh the page — your state persists via stateSave: true and localStorage. Uses stateNamespace to isolate from other demos.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_state_persistence"
      />
    </div>
    <div
      id="kt_datatable_state_persistence"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-state-save="true"
      data-kt-datatable-state-namespace="kt-docs-state-demo"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table kt-table-border" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-5">
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-check="true"
                />
              </th>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="0"
                />
              </td>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="1"
                />
              </td>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="2"
                />
              </td>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="3"
                />
              </td>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="4"
                />
              </td>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="5"
                />
              </td>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="6"
                />
              </td>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="7"
                />
              </td>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="8"
                />
              </td>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="9"
                />
              </td>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="10"
                />
              </td>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="11"
                />
              </td>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="12"
                />
              </td>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="13"
                />
              </td>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="14"
                />
              </td>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="15"
                />
              </td>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="16"
                />
              </td>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="17"
                />
              </td>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card">
    <div class="kt-card-content">
      <div class="flex items-center gap-2 text-sm text-muted-foreground">
        <svg
          xmlns="http://www.w3.org/2000/svg"
          width="24"
          height="24"
          viewBox="0 0 24 24"
          fill="none"
          stroke="currentColor"
          stroke-width="2"
          stroke-linecap="round"
          stroke-linejoin="round"
          class="lucide lucide-info size-4 shrink-0"
          aria-hidden="true"
        >
          <circle cx="12" cy="12" r="10"></circle>
          <path d="M12 16v-4"></path>
          <path d="M12 8h.01"></path></svg
        ><span
          >State is saved to localStorage. Sort, paginate, select rows, then
          refresh the page — your state persists.</span
        >
      </div>
    </div>
  </div>
</div>

Local filters

Column-level filtering with setFilter({ column, type, value }) on local data. Chain multiple filters and call reload() to apply.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div
      class="kt-card-header flex flex-wrap items-center gap-x-3 gap-y-2.5 py-4"
    >
      <input
        type="text"
        placeholder="Search..."
        class="kt-input kt-input-sm sm:w-48"
        data-kt-datatable-search="#kt_datatable_local_filters"
      /><label class="flex items-center gap-2 text-sm"
        ><span class="text-muted-foreground">Status</span
        ><select
          id="kt_datatable_local_filters_status"
          class="kt-select kt-select-sm w-44"
        >
          <option value="" selected="">All</option>
          <option value="kt-badge-success">Active</option>
          <option value="kt-badge-destructive">Rejected</option>
          <option value="kt-badge-warning">Pending</option>
          <option value="kt-badge-primary">Verified</option>
          <option value="kt-badge-secondary">Draft</option>
          <option value="kt-badge-info">In Review</option>
          <option value="kt-badge-mono">Archived</option>
        </select></label
      ><label class="flex items-center gap-2 text-sm"
        ><span class="text-muted-foreground">Method</span
        ><select
          id="kt_datatable_local_filters_method"
          class="kt-select kt-select-sm w-36"
        >
          <option value="" selected="">All</option>
          <option value="API Key">API Key</option>
          <option value="Basic auth">Basic auth</option>
          <option value="Biometric">Biometric</option>
          <option value="Certificate">Certificate</option>
          <option value="FIDO U2F">FIDO U2F</option>
          <option value="FIDO2">FIDO2</option>
          <option value="Kerberos">Kerberos</option>
          <option value="LDAP">LDAP</option>
          <option value="Magic Link">Magic Link</option>
          <option value="OAuth">OAuth</option>
          <option value="OpenID">OpenID</option>
          <option value="Passkey">Passkey</option>
          <option value="SAML">SAML</option>
          <option value="SSH">SSH</option>
          <option value="Smart Card">Smart Card</option>
          <option value="Token">Token</option>
          <option value="Web">Web</option>
          <option value="WebAuthn">WebAuthn</option>
        </select></label
      >
      <div class="flex items-center gap-2">
        <button
          type="button"
          id="kt_datatable_local_filters_clear"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Clear</button
        ><button
          type="button"
          id="kt_datatable_local_filters_apply"
          class="kt-btn kt-btn-sm kt-btn-primary"
        >
          Apply
        </button>
      </div>
    </div>
    <div
      id="kt_datatable_local_filters"
      class="kt-card-table relative"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Bulk actions

Checkbox selection with a dynamic toolbar that appears when rows are checked. Shows selected count plus bulk action buttons (Delete, Export, Tag).

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_bulk_actions"
      />
    </div>
    <div
      id="kt_datatable_bulk_actions"
      class="kt-card-table"
      data-kt-datatable-page-size="5"
    >
      <div
        id="kt_datatable_bulk_actions_bar"
        class="hidden items-center gap-3 rounded-t-lg border-b border-border bg-muted/50 px-4 py-2.5 text-sm"
      >
        <span id="kt_datatable_bulk_actions_count" class="font-medium"
          >0 selected</span
        >
        <div class="flex gap-2">
          <button
            type="button"
            class="kt-btn kt-btn-sm kt-btn-destructive-outline"
            data-kt-datatable-bulk-action="delete"
          >
            Delete</button
          ><button
            type="button"
            class="kt-btn kt-btn-sm kt-btn-outline"
            data-kt-datatable-bulk-action="export"
          >
            Export</button
          ><button
            type="button"
            class="kt-btn kt-btn-sm kt-btn-outline"
            data-kt-datatable-bulk-action="tag"
          >
            Tag
          </button>
        </div>
      </div>
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table kt-table-border" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-5">
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-check="true"
                />
              </th>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col asc"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-16"
                data-kt-datatable-column="actions"
              ></th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="0"
                />
              </td>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="1"
                />
              </td>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="2"
                />
              </td>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="3"
                />
              </td>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="4"
                />
              </td>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="5"
                />
              </td>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="6"
                />
              </td>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="7"
                />
              </td>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="8"
                />
              </td>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="9"
                />
              </td>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="10"
                />
              </td>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="11"
                />
              </td>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="12"
                />
              </td>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="13"
                />
              </td>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="14"
                />
              </td>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="15"
                />
              </td>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="16"
                />
              </td>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="17"
                />
              </td>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Fixed layout

tableLayout: 'fixed' with <colgroup> keeps column widths stable across pagination. Without it, the browser recalculates widths per page based on content.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_fixed_layout"
      />
    </div>
    <div id="kt_datatable_fixed_layout" class="kt-card-table">
      <div class="kt-table-wrapper kt-scrollable">
        <table
          class="kt-table"
          style="table-layout: fixed; width: 100%"
          data-kt-datatable-table="true"
        >
          <colgroup>
            <col style="width: 50px" />
            <col style="width: 120px" />
            <col style="width: 90px" />
            <col style="width: 100px" />
            <col style="width: 110px" />
            <col style="width: 110px" />
            <col style="width: 90px" />
            <col />
          </colgroup>
          <thead>
            <tr>
              <th scope="col" data-kt-datatable-column="id">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">ID</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="lastSession">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="ipAddress">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">IP Address</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="region">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Region</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="team">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Team</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>1</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Accounting
              </td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
              <td>EU-West</td>
              <td>Ops</td>
            </tr>
            <tr>
              <td>2</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Compliance
              </td>
              <td>SSH</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
              <td>US-East</td>
              <td>Security</td>
            </tr>
            <tr>
              <td>3</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Support
              </td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
              <td>APAC</td>
              <td>Service</td>
            </tr>
            <tr>
              <td>4</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Legal
              </td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
              <td>EU-Central</td>
              <td>Audit</td>
            </tr>
            <tr>
              <td>5</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Sales
              </td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
              <td>US-West</td>
              <td>Growth</td>
            </tr>
            <tr>
              <td>6</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Finance
              </td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
              <td>MEA</td>
              <td>Treasury</td>
            </tr>
            <tr>
              <td>7</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Operations
              </td>
              <td>OpenID</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
              <td>LATAM</td>
              <td>Platform</td>
            </tr>
            <tr>
              <td>8</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Marketing
              </td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
              <td>ANZ</td>
              <td>Brand</td>
            </tr>
            <tr>
              <td>9</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Engineering
              </td>
              <td>Basic auth</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
              <td>EU-West</td>
              <td>Product</td>
            </tr>
            <tr>
              <td>10</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Procurement
              </td>
              <td>OAuth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
              <td>US-East</td>
              <td>Supply</td>
            </tr>
            <tr>
              <td>11</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                HR
              </td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
              <td>APAC</td>
              <td>People</td>
            </tr>
            <tr>
              <td>12</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                IT
              </td>
              <td>LDAP</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
              <td>EU-Central</td>
              <td>Infra</td>
            </tr>
            <tr>
              <td>13</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Security
              </td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
              <td>US-West</td>
              <td>Labs</td>
            </tr>
            <tr>
              <td>14</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Research
              </td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
              <td>MEA</td>
              <td>Revenue</td>
            </tr>
            <tr>
              <td>15</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Logistics
              </td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
              <td>LATAM</td>
              <td>Compliance</td>
            </tr>
            <tr>
              <td>16</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Customer Success
              </td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
              <td>ANZ</td>
              <td>Ops</td>
            </tr>
            <tr>
              <td>17</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Partnerships
              </td>
              <td>Certificate</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
              <td>EU-West</td>
              <td>Security</td>
            </tr>
            <tr>
              <td>18</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Platform
              </td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
              <td>US-East</td>
              <td>Service</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Column widths

Explicit column widths via columns[key].width or data-kt-datatable-column-width on <th>. Text truncation with ellipsis on fixed-width columns; one flex column absorbs remaining space.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_column_widths"
      />
    </div>
    <div id="kt_datatable_column_widths" class="kt-card-table">
      <div class="kt-table-wrapper kt-scrollable">
        <table
          class="kt-table"
          style="table-layout: fixed; width: 100%"
          data-kt-datatable-table="true"
        >
          <colgroup>
            <col style="width: 60px" />
            <col style="width: 140px" />
            <col style="width: 100px" />
            <col style="width: 110px" />
            <col style="width: 120px" />
            <col />
          </colgroup>
          <thead>
            <tr>
              <th
                scope="col"
                data-kt-datatable-column="id"
                data-kt-datatable-column-width="60px"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">ID</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                data-kt-datatable-column="label"
                data-kt-datatable-column-width="140px"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                data-kt-datatable-column="method"
                data-kt-datatable-column-width="100px"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                data-kt-datatable-column="status"
                data-kt-datatable-column-width="110px"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                data-kt-datatable-column="lastSession"
                data-kt-datatable-column-width="120px"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" data-kt-datatable-column="ipAddress">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">IP Address</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>1</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Accounting
              </td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>22 Jul 2024</td>
              <td>192.168.1.10</td>
            </tr>
            <tr>
              <td>2</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Compliance
              </td>
              <td>SSH</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>18 Jul 2024</td>
              <td>192.168.1.11</td>
            </tr>
            <tr>
              <td>3</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Support
              </td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>15 Jul 2024</td>
              <td>192.168.1.2</td>
            </tr>
            <tr>
              <td>4</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Legal
              </td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>30 Jul 2024</td>
              <td>192.168.1.12</td>
            </tr>
            <tr>
              <td>5</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Sales
              </td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>28 Jul 2024</td>
              <td>10.0.0.2</td>
            </tr>
            <tr>
              <td>6</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Finance
              </td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>16 Jul 2024</td>
              <td>192.168.1.4</td>
            </tr>
            <tr>
              <td>7</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Operations
              </td>
              <td>OpenID</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>11 Aug 2024</td>
              <td>192.168.1.13</td>
            </tr>
            <tr>
              <td>8</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Marketing
              </td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>19 Jul 2024</td>
              <td>192.168.1.14</td>
            </tr>
            <tr>
              <td>9</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Engineering
              </td>
              <td>Basic auth</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>06 Aug 2024</td>
              <td>192.168.1.1</td>
            </tr>
            <tr>
              <td>10</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Procurement
              </td>
              <td>OAuth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>01 Aug 2024</td>
              <td>10.0.0.5</td>
            </tr>
            <tr>
              <td>11</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                HR
              </td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>03 Aug 2024</td>
              <td>10.0.0.6</td>
            </tr>
            <tr>
              <td>12</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                IT
              </td>
              <td>LDAP</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>05 Aug 2024</td>
              <td>10.0.0.7</td>
            </tr>
            <tr>
              <td>13</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Security
              </td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>07 Aug 2024</td>
              <td>10.0.0.8</td>
            </tr>
            <tr>
              <td>14</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Research
              </td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>09 Aug 2024</td>
              <td>10.0.0.9</td>
            </tr>
            <tr>
              <td>15</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Logistics
              </td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>10 Aug 2024</td>
              <td>10.0.0.10</td>
            </tr>
            <tr>
              <td>16</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Customer Success
              </td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>12 Aug 2024</td>
              <td>10.0.0.11</td>
            </tr>
            <tr>
              <td>17</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Partnerships
              </td>
              <td>Certificate</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>14 Aug 2024</td>
              <td>10.0.0.12</td>
            </tr>
            <tr>
              <td>18</td>
              <td class="overflow-hidden text-ellipsis whitespace-nowrap">
                Platform
              </td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>15 Aug 2024</td>
              <td>10.0.0.15</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Custom cell rendering

Rich cell content via columns[key].render — avatars with names, color-coded stock levels, star ratings, category badges, and monospace prices.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_custom_cells"
      />
    </div>
    <div
      id="kt_datatable_custom_cells"
      class="kt-card-table"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-48" data-kt-datatable-column="name">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Product</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="sku">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">SKU</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="price">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Price</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-28" data-kt-datatable-column="stock">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Stock</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-28" data-kt-datatable-column="category">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Category</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-28" data-kt-datatable-column="rating">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Rating</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-28" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Wireless Headphones</td>
              <td>WH-1000</td>
              <td>$149.00</td>
              <td>82</td>
              <td>Audio</td>
              <td>4.6</td>
              <td>Approved</td>
            </tr>
            <tr>
              <td>USB-C Hub</td>
              <td>UCH-300</td>
              <td>$59.00</td>
              <td>134</td>
              <td>Accessories</td>
              <td>4.2</td>
              <td>Rejected</td>
            </tr>
            <tr>
              <td>Mechanical Keyboard</td>
              <td>MK-870</td>
              <td>$129.00</td>
              <td>47</td>
              <td>Peripherals</td>
              <td>4.8</td>
              <td>Pending</td>
            </tr>
            <tr>
              <td>Webcam HD</td>
              <td>WC-1080</td>
              <td>$89.00</td>
              <td>23</td>
              <td>Video</td>
              <td>4.1</td>
              <td>Verified</td>
            </tr>
            <tr>
              <td>Monitor Stand</td>
              <td>MS-200</td>
              <td>$45.00</td>
              <td>91</td>
              <td>Furniture</td>
              <td>3.9</td>
              <td>Draft</td>
            </tr>
            <tr>
              <td>Desk Lamp</td>
              <td>DL-LED</td>
              <td>$39.00</td>
              <td>67</td>
              <td>Lighting</td>
              <td>4.4</td>
              <td>In Review</td>
            </tr>
            <tr>
              <td>Ergonomic Mouse</td>
              <td>EM-500</td>
              <td>$79.00</td>
              <td>8</td>
              <td>Peripherals</td>
              <td>4.7</td>
              <td>Archived</td>
            </tr>
            <tr>
              <td>Cable Organizer</td>
              <td>CO-PRO</td>
              <td>$19.00</td>
              <td>150</td>
              <td>Accessories</td>
              <td>3.5</td>
              <td>Active</td>
            </tr>
            <tr>
              <td>Laptop Sleeve</td>
              <td>LS-1560</td>
              <td>$35.00</td>
              <td>56</td>
              <td>Protection</td>
              <td>4</td>
              <td>Suspended</td>
            </tr>
            <tr>
              <td>Screen Protector</td>
              <td>SP-GLASS</td>
              <td>$15.00</td>
              <td>110</td>
              <td>Protection</td>
              <td>3.8</td>
              <td>Expiring</td>
            </tr>
            <tr>
              <td>Charging Dock</td>
              <td>CD-100</td>
              <td>$69.00</td>
              <td>42</td>
              <td>Charging</td>
              <td>4.3</td>
              <td>Approved</td>
            </tr>
            <tr>
              <td>Bluetooth Speaker</td>
              <td>BS-360</td>
              <td>$99.00</td>
              <td>28</td>
              <td>Audio</td>
              <td>4.5</td>
              <td>Rejected</td>
            </tr>
            <tr>
              <td>Trackpad</td>
              <td>TP-MAGIC</td>
              <td>$149.00</td>
              <td>19</td>
              <td>Peripherals</td>
              <td>4.6</td>
              <td>Pending</td>
            </tr>
            <tr>
              <td>USB Microphone</td>
              <td>UM-COND</td>
              <td>$119.00</td>
              <td>73</td>
              <td>Audio</td>
              <td>4.9</td>
              <td>Verified</td>
            </tr>
            <tr>
              <td>Ring Light</td>
              <td>RL-12</td>
              <td>$29.00</td>
              <td>95</td>
              <td>Lighting</td>
              <td>4.2</td>
              <td>Draft</td>
            </tr>
            <tr>
              <td>Desk Mat</td>
              <td>DM-XXL</td>
              <td>$25.00</td>
              <td>5</td>
              <td>Accessories</td>
              <td>3.7</td>
              <td>In Review</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Table styles

Visual variants: default, bordered (kt-table-border), striped (alternating row colors), and compact (tighter spacing).

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header">
      <h3 class="kt-card-title">Default Style</h3>
    </div>
    <div
      id="kt_datatable_style_default"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card">
    <div class="kt-card-header">
      <h3 class="kt-card-title">Bordered Style</h3>
    </div>
    <div
      id="kt_datatable_style_bordered"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table kt-table-border" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card">
    <div class="kt-card-header">
      <h3 class="kt-card-title">Striped Style</h3>
    </div>
    <div
      id="kt_datatable_style_striped"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table
          class="kt-table [&amp;_tbody_tr:nth-child(even)]:bg-muted/30"
          data-kt-datatable-table="true"
        >
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card">
    <div class="kt-card-header">
      <h3 class="kt-card-title">Compact Style</h3>
    </div>
    <div
      id="kt_datatable_style_compact"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table
          class="kt-table [&amp;_td]:py-1.5 [&amp;_th]:h-8"
          data-kt-datatable-table="true"
        >
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Multi-row headers

Grouped columns using colspan and rowspan in <thead> for logical column grouping (e.g., "Authentication" spanning Label + Method + Status).

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        data-kt-datatable-search="#kt_datatable_multi_row_headers"
      />
    </div>
    <div
      id="kt_datatable_multi_row_headers"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th colspan="2" class="text-center bg-muted/60">
                Authentication
              </th>
              <th colspan="2" class="text-center bg-muted/60">Session Info</th>
              <th
                rowspan="2"
                class="w-16 bg-muted/60"
                data-kt-datatable-column="actions"
              >
                Actions
              </th>
            </tr>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
            <tr>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
              <td class="text-end">
                <span class="inline-flex gap-2.5"
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Edit"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-pencil"
                      aria-hidden="true"
                    >
                      <path
                        d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"
                      ></path>
                      <path d="m15 5 4 4"></path>
                    </svg></button
                  ><button
                    type="button"
                    class="kt-btn kt-btn-sm kt-btn-icon kt-btn-outline"
                    aria-label="Delete"
                  >
                    <svg
                      xmlns="http://www.w3.org/2000/svg"
                      width="24"
                      height="24"
                      viewBox="0 0 24 24"
                      fill="none"
                      stroke="currentColor"
                      stroke-width="2"
                      stroke-linecap="round"
                      stroke-linejoin="round"
                      class="lucide lucide-trash"
                      aria-hidden="true"
                    >
                      <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"></path>
                      <path d="M3 6h18"></path>
                      <path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
                    </svg></button
                ></span>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Empty state

Default empty behavior vs. custom empty state with icon and helper text for better UX when there's no data.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <h3 class="kt-card-title">Default Empty State</h3>
    </div>
    <div
      id="kt_datatable_empty_default"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody></tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <h3 class="kt-card-title">Custom Empty State</h3>
    </div>
    <div
      id="kt_datatable_empty_custom"
      class="kt-card-table"
      data-kt-datatable="true"
      data-kt-datatable-page-size="5"
      data-kt-datatable-info-empty='&lt;div class="flex flex-col items-center justify-center py-10 text-center"&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="text-muted-foreground/50"&gt;&lt;path d="M21 8V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v3"&gt;&lt;/path&gt;&lt;path d="M21 16v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-3"&gt;&lt;/path&gt;&lt;path d="m9 12 3-3 3 3"&gt;&lt;/path&gt;&lt;path d="M12 15V9"&gt;&lt;/path&gt;&lt;/svg&gt;&lt;p class="text-sm font-medium text-foreground"&gt;No records found&lt;/p&gt;&lt;p class="text-sm text-muted-foreground"&gt;Try adjusting your search or filter to find what you are looking for.&lt;/p&gt;&lt;/div&gt;'
    >
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody></tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
</div>

Programmatic API

Interactive buttons calling goPage(), sort(), search(), setPageSize(), getState(), and getChecked() — the full JavaScript API surface.

<div class="grid w-full space-y-5">
  <div class="kt-card">
    <div class="kt-card-header min-h-16">
      <input
        type="text"
        placeholder="Search..."
        class="kt-input sm:w-48"
        id="kt_datatable_api_search"
        data-kt-datatable-search="#kt_datatable_api_demo"
      />
    </div>
    <div id="kt_datatable_api_demo" class="kt-card-table">
      <div class="kt-table-wrapper kt-scrollable">
        <table class="kt-table" data-kt-datatable-table="true">
          <thead>
            <tr>
              <th scope="col" class="w-5">
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-check="true"
                />
              </th>
              <th scope="col" class="w-30" data-kt-datatable-column="label">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Label</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-20" data-kt-datatable-column="method">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Method</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th scope="col" class="w-24" data-kt-datatable-column="status">
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Status</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
              <th
                scope="col"
                class="w-24"
                data-kt-datatable-column="lastSession"
              >
                <span class="kt-table-col"
                  ><span class="kt-table-col-label">Last Session</span
                  ><span class="kt-table-col-sort"></span
                ></span>
              </th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="0"
                />
              </td>
              <td>Guy Hawkins</td>
              <td>Web</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>22 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="1"
                />
              </td>
              <td>Sales Dept</td>
              <td>SSH</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>18 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="2"
                />
              </td>
              <td>Legal Dept</td>
              <td>Kerberos</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>15 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="3"
                />
              </td>
              <td>Finance Dept</td>
              <td>Token</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>30 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="4"
                />
              </td>
              <td>Design Dept</td>
              <td>API Key</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>28 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="5"
                />
              </td>
              <td>Compliance Dept</td>
              <td>FIDO U2F</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>16 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="6"
                />
              </td>
              <td>Alice Smith</td>
              <td>OpenID</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>11 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="7"
                />
              </td>
              <td>HR Dept</td>
              <td>Biometric</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>19 Jul 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="8"
                />
              </td>
              <td>Platform Team</td>
              <td>Basic auth</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Suspended</span>
              </td>
              <td>06 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="9"
                />
              </td>
              <td>Security Ops</td>
              <td>OAuth</td>
              <td><span class="kt-badge kt-badge-warning">Expiring</span></td>
              <td>01 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="10"
                />
              </td>
              <td>Data Team</td>
              <td>SAML</td>
              <td><span class="kt-badge kt-badge-success">Approved</span></td>
              <td>03 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="11"
                />
              </td>
              <td>Mobile Squad</td>
              <td>LDAP</td>
              <td>
                <span class="kt-badge kt-badge-destructive">Rejected</span>
              </td>
              <td>05 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="12"
                />
              </td>
              <td>Infra Bot</td>
              <td>Passkey</td>
              <td><span class="kt-badge kt-badge-warning">Pending</span></td>
              <td>07 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="13"
                />
              </td>
              <td>QA Lab</td>
              <td>Magic Link</td>
              <td><span class="kt-badge kt-badge-primary">Verified</span></td>
              <td>09 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="14"
                />
              </td>
              <td>Docs Guild</td>
              <td>Smart Card</td>
              <td><span class="kt-badge kt-badge-secondary">Draft</span></td>
              <td>10 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="15"
                />
              </td>
              <td>Support Tier 1</td>
              <td>WebAuthn</td>
              <td><span class="kt-badge kt-badge-info">In Review</span></td>
              <td>12 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="16"
                />
              </td>
              <td>Release Train</td>
              <td>Certificate</td>
              <td><span class="kt-badge kt-badge-mono">Archived</span></td>
              <td>14 Aug 2024</td>
            </tr>
            <tr>
              <td>
                <input
                  type="checkbox"
                  class="kt-checkbox"
                  data-kt-datatable-row-check="true"
                  value="17"
                />
              </td>
              <td>Archive User</td>
              <td>FIDO2</td>
              <td><span class="kt-badge kt-badge-success">Active</span></td>
              <td>15 Aug 2024</td>
            </tr>
          </tbody>
        </table>
      </div>
      <template><!--begin:pagination--></template>
      <div class="kt-datatable-toolbar">
        <div class="kt-datatable-length">
          Show<select
            class="kt-select kt-select-sm w-16"
            name="perpage"
            data-kt-datatable-size="true"
          ></select
          >per page
        </div>
        <div class="kt-datatable-info">
          <span data-kt-datatable-info="true"></span>
          <div
            class="kt-datatable-pagination"
            data-kt-datatable-pagination="true"
          ></div>
        </div>
      </div>
      <template><!--end:pagination--></template>
    </div>
  </div>
  <div class="kt-card min-w-0">
    <div class="kt-card-content w-full min-w-0">
      <div class="flex flex-wrap gap-2">
        <button
          type="button"
          id="kt_datatable_api_page1"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Page 1</button
        ><button
          type="button"
          id="kt_datatable_api_page2"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Page 2</button
        ><button
          type="button"
          id="kt_datatable_api_page3"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Page 3</button
        ><button
          type="button"
          id="kt_datatable_api_page4"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Page 4
        </button>
      </div>
      <div class="mt-3 flex flex-wrap gap-2">
        <button
          type="button"
          id="kt_datatable_api_sort"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Sort by Status (asc)</button
        ><button
          type="button"
          id="kt_datatable_api_search_btn"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Search &#x27;Web&#x27;</button
        ><button
          type="button"
          id="kt_datatable_api_pagesize"
          class="kt-btn kt-btn-sm kt-btn-outline"
        >
          Set Page Size 10</button
        ><button
          type="button"
          id="kt_datatable_api_state"
          class="kt-btn kt-btn-sm kt-btn-primary"
        >
          Show State</button
        ><button
          type="button"
          id="kt_datatable_api_reset"
          class="kt-btn kt-btn-sm kt-btn-destructive-outline"
        >
          Reset
        </button>
      </div>
      <pre
        id="kt_datatable_api_state_output"
        class="mt-3 box-border w-full min-w-0 max-w-full max-h-32 min-h-24 overflow-auto rounded bg-muted p-3 font-mono text-xs whitespace-pre-wrap break-words"
      ></pre>
    </div>
  </div>
</div>

Component API

Data attributes

AttributeUse
data-kt-datatable="true"Auto-initializes the component.
data-kt-datatable-table="true"Marks the table element.
data-kt-datatable-column="name"Maps a <th> to a row field.

Configuration

OptionDefaultUse
apiEndpointundefinedEnables remote mode.
requestMethod'GET'API request method.

Methods

MethodUse
sort(field, order?)Sort by a column field or index. Omit order to toggle; pass asc, desc, or '' to clear.
search(query)Search local data or send search to remote mode.
goPage(page)

Static helpers: KTDataTable.getInstance(element), KTDataTable.createInstances(), KTDataTable.reinit().

Events

datatable.on('sort', (payload) => {
  console.log(payload.field, payload.order);
});
 
datatable.on('update', () => {
  const state = datatable.getState();
  console.log(state.page, state.pageSize, state.totalItems);
});
 
datatable.on('checked', (payload) => {
  console.log(payload.value);
});

Events are notifications, not queries. Most carry no payload — call getState() or getChecked() when you need data. Only sort, checked/unchecked, change, fetchError, and error carry event-specific payloads.

EventPayloadUse
update—Data changed (pagination, sort, search, reload). Call getState() for details.
sort{ field, order }Column header clicked.

TypeScript

import { KTDataTable, type KTDataTableConfigInterface } from '@keenthemes/ktui';
 
const element = document.querySelector<HTMLElement>('#my_datatable');
if (!element) return;
 
const config: KTDataTableConfigInterface = {
  apiEndpoint: '/api/users',
  pageSize: 20,
  lockedLayout: {
    stickyHeader: true,
    stickyRows: { top: 1, bottom: 1 },
    stickyColumns: { left: ['id', 'name'], right: ['actions'] },
  },
};
 
const

CSS classes

Class or variantUse
kt-tableBase table class.
datatable-initializedAdded after initialization.
asc / descActive sort classes.
PreviouseCollapseNextContext Menu

On This Page

  • Examples
    • Basic usage
    • Remote data
    • Row selection
    • Locked columns
    • Locked rows
    • Combined locks
    • Non-sortable
    • Reload
    • Events
    • Remote filters
    • Row actions
    • Sort & search
    • Loading & empty
    • Remote selection
    • State persistence
    • Local filters
    • Bulk actions
    • Fixed layout
    • Column widths
    • Custom cell rendering
    • Table styles
    • Multi-row headers
    • Empty state
    • Programmatic API
  • Component API
    • Data attributes
    • Configuration
    • Methods
    • Events
    • TypeScript
    • CSS classes
data-kt-datatable-column-sort="false"
Disables sorting for a column.
data-kt-datatable-search="#id"Connects a search input to a table.
data-kt-datatable-info="true"Shows the current range and total.
data-kt-datatable-size="true"Renders the page-size selector.
data-kt-datatable-pagination="true"Renders pagination buttons.
data-kt-datatable-check="true"Marks the group checkbox.
data-kt-datatable-row-check="true"Marks a row checkbox.
requestHeaders
form URL encoded content type
API request headers.
requestCredentialsbrowser defaultFetch credentials: 'omit', 'same-origin', or 'include'.
pageSize10Initial rows per page.
pageSizes[5, 10, 20, 30, 50]Page-size options.
pageMoretrueShows compact pagination with more buttons.
pageMoreLimit3Number of visible page buttons.
stateSavetrueSaves page, sort, search, filters, and selection.
stateNamespacetable or wrapper IDLocalStorage key namespace.
info'{start}-{end} of {total}'Info text template.
infoEmpty'No records found'Empty-state text.
columnsundefinedCustom render, cell, and sort settings.
mapRequestundefinedCustomize outgoing query parameters.
mapResponseundefinedNormalize API response data.
search.delay500Search debounce delay in ms.
search.callbackdefault searchLocal-mode search callback.
sort.callbackdefault sortLocal-mode sort callback.
checkbox.checkedClass'checked'Class added to checked rows.
checkbox.preserveSelectiontrueKeeps selection across pages.
lockedLayout.stickyHeaderfalseKeeps table header rows fixed in the scroll container.
lockedLayout.stickyRows.top0Number of top body rows to lock below the sticky header.
lockedLayout.stickyRows.bottom0Number of bottom body rows to lock above the scroll bottom.
lockedLayout.stickyColumns.left[]Column keys to lock on the left while scrolling horizontally.
lockedLayout.stickyColumns.right[]Column keys to lock on the right while scrolling horizontally.
Move to a page.
setPageSize(size)Change rows per page and reset to page 1.
setFilter(filter)Add or replace a column filter (remote: chain reload() so the request runs with the new filters query).
reload()Reload current data.
redraw(page)Redraw at a page.
getState()Read current state.
showSpinner() / hideSpinner()Control loading state manually.
check() / uncheck() / toggle()Control visible row selection.
getChecked()Get selected row IDs.
update()Reapply checked state after redraw.
dispose()Remove listeners and clean up the instance.
change
{ cancel }
Before checkbox toggle; set cancel = true to prevent.
changed—After checkbox selection changed. Call getChecked() for selected rows.
checked{ value }Row checked.
unchecked{ value }Row unchecked.
fetchError{ response, error, status, statusText }Remote response could not be parsed as JSON.
error{ error }Network fetch failure.
datatable
=
new
KTDataTable
(element, config);
kt-datatable-loading
Loading-state variant.
kt-datatable-sort-asc / kt-datatable-sort-descSort-state variants based on aria-sort.
kt-datatable-locked-layoutAdded when locked layout options are enabled.
kt-datatable-locked-headerApplied to sticky header cells.
kt-datatable-locked-leftApplied to locked left column cells.
kt-datatable-locked-rightApplied to locked right column cells.