Skip to main content
POST
https://api.crewship.dev
/
v1
/
tables
curl -X POST https://api.crewship.dev/v1/tables \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "leads",
    "description": "Sales prospects",
    "columns": [
      {"name": "company", "type": "text", "required": true},
      {"name": "score", "type": "number"},
      {"name": "status", "type": "select", "options": ["new", "qualified"]}
    ]
  }'
{
  "id": "tbl_abc123xyz789",
  "name": "leads",
  "description": "Sales prospects",
  "columns": [
    { "name": "company", "type": "text", "required": true },
    { "name": "score", "type": "number", "required": false },
    { "name": "status", "type": "select", "required": false, "options": ["new", "qualified"] }
  ],
  "row_count": 0,
  "created_at": "2024-01-15T10:35:00Z",
  "updated_at": "2024-01-15T10:35:00Z"
}

Request

name
string
required
Table name (unique within your organization)
description
string
Optional table description
columns
array
required
Column definitions for the table
columns[].name
string
required
Column name
columns[].type
string
required
Column type: text, number, boolean, datetime, select, url, email, json
columns[].required
boolean
default:"false"
Whether the column is required on inserts
columns[].options
array
Required for select columns

Response

Returns HTTP 201 (Created).
id
string
Table ID (e.g., tbl_abc123xyz789)
name
string
Table name
description
string
Table description or null
columns
array
Persisted column definitions
row_count
number
Initial row count (0)
created_at
string
ISO 8601 timestamp
updated_at
string
ISO 8601 timestamp
curl -X POST https://api.crewship.dev/v1/tables \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "leads",
    "description": "Sales prospects",
    "columns": [
      {"name": "company", "type": "text", "required": true},
      {"name": "score", "type": "number"},
      {"name": "status", "type": "select", "options": ["new", "qualified"]}
    ]
  }'
{
  "id": "tbl_abc123xyz789",
  "name": "leads",
  "description": "Sales prospects",
  "columns": [
    { "name": "company", "type": "text", "required": true },
    { "name": "score", "type": "number", "required": false },
    { "name": "status", "type": "select", "required": false, "options": ["new", "qualified"] }
  ],
  "row_count": 0,
  "created_at": "2024-01-15T10:35:00Z",
  "updated_at": "2024-01-15T10:35:00Z"
}