---
slug: agentes/mcp/tabelas-registros-e-exportacoes/table-set
title: "table_set"
description: 'Cria ou ativa uma definição JSON Schema com `$schema` do draft 2020-12 e `type: "object"` na raiz.'
---

| Operação | Escopo OAuth | Descrição |
| :-- | :-- | :-- |
| `table_set` | `files:write` | Cria ou ativa uma definição JSON Schema com `$schema` do draft 2020-12 e `type: "object"` na raiz. Para criar, escolha um novo UUID em `tableId`, use `expectedVersion: 0` e dê uma `key`, o nome SQL que `sql` lê como `tables.<key>`: letras ASCII minúsculas, dígitos e `_`, começando por letra, com no máximo 63 caracteres e única na empresa. Criar sem `key` falha com `invalid_input`, e uma chave já usada falha com `table_key_taken`. A chave nunca muda: ao alterar a tabela, omita-a ou repita-a; outra chave falha com `table_key_immutable`, e um nome novo mantém a chave. Para alterar, use a versão atual. Uma definição que os registros atuais não atendem, pelo esquema, por uma referência a um registro inexistente ou por repetirem uma nova chave única, fica guardada como versão pendente e devolve esses registros; reescreva-os contra ela e depois ative-a com `activate: true`. `uniqueKeys` lista conjuntos de campos obrigatórios de primeiro nível que dois registros não podem repetir, comparados sem espaços nas pontas, com espaços seguidos reduzidos a um e sem diferenciar maiúsculas nem acentos. Uma propriedade de primeiro nível com `"x-siglata-ref": "<tableId>"` em uma string `format: uuid`, ou uma lista delas, guarda recordIds dessa tabela, que precisa ter chave única. `recordsVisibleTo: "company"` deixa todo membro ler todos os registros, como uma tabela de consulta precisa; `"author"`, o padrão, mostra a cada membro só os próprios. Exige permissão de escrita na tabela. |

Grupo: [Tabelas, registros e exportações](/docs/agentes/mcp/tabelas-registros-e-exportacoes).
