Skip to main content

List Bases

Retrieve all bases in the workspace.
GET
curl -X GET https://app.nocodb.com/api/v1/db/meta/projects/ \
  -H "xc-auth: YOUR_API_TOKEN"

Query Parameters

page
number
Page number for pagination
pageSize
number
Number of records per page

Response

list
array
Array of base objects
id
string
Unique base identifier (e.g., p_124hhlkbeasewh)
title
string
Base title
description
string
Base description
color
string
Base color code (e.g., #24716E)
sources
array
Array of data sources connected to the base
created_at
string
Timestamp of creation
updated_at
string
Timestamp of last update
pageInfo
object
Pagination information
totalRows
number
Total number of bases
page
number
Current page number
pageSize
number
Records per page
isFirstPage
boolean
Whether this is the first page
isLastPage
boolean
Whether this is the last page

Get Base

Retrieve details of a specific base.
GET /api/v1/db/meta/projects/{baseId}
curl -X GET https://app.nocodb.com/api/v1/db/meta/projects/p_124hhlkbeasewh \
  -H "xc-auth: YOUR_API_TOKEN"

Path Parameters

baseId
string
required
Unique base identifier (e.g., p_124hhlkbeasewh)

Response

Returns a base object with all metadata including sources, tables, and configuration.

Create Base

Create a new base in the workspace.
POST /api/v1/db/meta/projects
curl -X POST https://app.nocodb.com/api/v1/db/meta/projects \
  -H "xc-auth: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "my-base",
    "description": "This is my base description",
    "color": "#24716E",
    "external": false
  }'

Request Body

title
string
required
Base title
description
string
Base description
color
string
Base color code (e.g., #24716E)
external
boolean
default:"false"
If true, the base will use an external database. If false, it will use the root database.
sources
array
Array of data source configurations
type
string
Database type (e.g., mysql2, pg, sqlite3)
config
object
Database connection configuration

Response

Returns the created base object.

Update Base

Update an existing base.
PATCH /api/v1/db/meta/projects/{baseId}
curl -X PATCH https://app.nocodb.com/api/v1/db/meta/projects/p_124hhlkbeasewh \
  -H "xc-auth: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Updated Base Name",
    "color": "#FF5733",
    "order": 1
  }'

Path Parameters

baseId
string
required
Unique base identifier

Request Body

title
string
Updated base title
color
string
Updated color code
order
number
Display order
meta
object
Additional metadata

Response

Returns 1 on successful update.

Delete Base

Soft delete a base.
DELETE /api/v1/db/meta/projects/{baseId}
curl -X DELETE https://app.nocodb.com/api/v1/db/meta/projects/p_124hhlkbeasewh \
  -H "xc-auth: YOUR_API_TOKEN"

Path Parameters

baseId
string
required
Unique base identifier

Response

Returns true on successful deletion.

Get Base Info

Get technical information about the base environment.
GET /api/v1/db/meta/projects/{baseId}/info
curl -X GET https://app.nocodb.com/api/v1/db/meta/projects/p_124hhlkbeasewh/info \
  -H "xc-auth: YOUR_API_TOKEN"

Path Parameters

baseId
string
required
Unique base identifier

Response

Node
string
Node.js version (e.g., v12.16.1)
Arch
string
System architecture (e.g., x64)
Platform
string
Operating system platform (e.g., linux)
Docker
boolean
Whether running in Docker
RootDB
string
Root database type (e.g., postgres, mysql2)
PackageVersion
string
NocoDB version

Duplicate Base

Create a copy of an existing base.
POST /api/v1/db/meta/duplicate/{baseId}
curl -X POST https://app.nocodb.com/api/v1/db/meta/duplicate/p_124hhlkbeasewh \
  -H "xc-auth: YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "options": {
      "excludeData": false,
      "excludeViews": false,
      "excludeHooks": false
    }
  }'

Path Parameters

baseId
string
required
Base ID to duplicate

Request Body

options
object
Duplication options
excludeData
boolean
default:"false"
Exclude table data from duplication
excludeViews
boolean
default:"false"
Exclude views from duplication
excludeHooks
boolean
default:"false"
Exclude webhooks from duplication

Response

id
string
ID of the duplicated base
name
string
Name of the duplicated base

Build docs developers (and LLMs) love