Tables

Atomically replace the table's primary-key column set

The engine validates the full column list as a *combination* — a composite key whose individual columns contain duplicates is accepted when the combination is unique. All metadata changes (new PK columns, demoted PK columns, isUnique sync) land in a single commit. An empty `columns` list clears the primary key. **Required scope:** `tables:modify`

PUT
/v1/tables/{catalog}/{schema}/{table_name}/primary-key

Authorization

BearerAuth
AuthorizationBearer <token>

Security scheme for OpenAPI endpoints. Validates both JWT tokens and API keys.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to atomically replace the table's primary-key column set.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PUT "https://example.com/v1/tables/{catalog}/{schema}/{table_name}/primary-key" \  -H "Content-Type: application/json" \  -d '{    "columns": [      "string"    ]  }'
{}
Empty
Empty
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}
{  "code": "string",  "message": "string",  "request_id": "string",  "details": [    {      "field": "string",      "message": "string"    }  ]}