---
title: "How to Configure Table Keys"
description: "Configure table keys that identify and join records across your registered tables."
---

<div style="padding: 14px 16px; border: 0.5px solid #AFA9EC; border-radius: 12px; background: #EEEDFE; margin-bottom: 1.5rem;">
  <div style="display: flex; align-items: center; gap: 7px; margin-bottom: 8px;">
    <svg width="16" height="16" viewBox="0 0 16 16" fill="none">
      <path d="M9 2L4 9h4l-1 5 5-7H8l1-5z" stroke="#7f77dd" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"/>
    </svg>
    <span style="font-size: 11px; font-weight: 500; letter-spacing: 0.05em; text-transform: uppercase; color: #534AB7;">TL;DR</span>
  </div>
  <div style="font-size: 13px; color: #3C3489; line-height: 1.65;">
    In <strong>Settings → Table Keys</strong>, define the named keys that tables share. Each key is just a name and a description. You map it to a table's column during <a href="/user-guide/how-tos/register-a-table/">Table registration</a>, where a Constraint setting marks how that column behaves as a key.
  </div>
</div>

:::note[Admin guide]
This page is for administrators with write access to Table Keys.
:::

## Configure a table key

A table key is a shared name that tables map their columns to, so the platform knows which tables join on the same identifier. It's intentionally minimal, just a name and a description.

Go to **Settings → Table Keys** and click **+ New Table Key**:

* **Name** <span style="color: #E5484D;">*</span> - a valid variable name (letters, numbers, underscores), for example `application_id` or `member_id`.
* **Description** <span style="color: #E5484D;">*</span> - what the key represents and which columns it maps to across tables.

Click **Save**. A table key can be deleted only if no table maps to it.

## How it's used

When you [register a table](/user-guide/how-tos/register-a-table/), each column you want to use as a key gets two settings:

* **Key** - which configured table key the column maps to. Ordinary data columns are left blank.
* **Constraint** - how the column behaves as a key: **Primary** for the table's main identifier (primary tables only), **Unique** if its values never repeat, or leave it blank.

The table key is just the shared name; whether a column is primary or unique is set on the column, table by table. For example, map the `app_id` column of `loan_applications` to the `application_id` key with **Primary**. Another table carrying an application identifier maps its own column to the same key, and the platform then knows the two tables join on it.

## What's next

* [Register a Table](/user-guide/how-tos/register-a-table/) and map its columns to these keys.
