Collections

Create new collection

Create a new collection in a project. Accepts: OrgBearerAuth (for admin users), ProjectBearerAuth (JWT for authenticated users), or ApiKeyAuth (X-API-Key for programmatic access). Both ProjectBearerAuth and ApiKeyAuth are fully implemented.

AuthBearer (JWT)
GroupCollections
Rate limitSee Rate Limits
POST/api/schemas/projects/{projectId}/collections

SDK setup

Create a client and set credentials (JWT and/or API key) before calling the API. Match the authentication type shown above.

import { Configuration, CollectionsApi } from 'mudbase-sdk';

const configuration = new Configuration({
  basePath: 'https://cloud.mudbase.dev',
  accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig',
});

const collections = new CollectionsApi(configuration);
import { Configuration, CollectionsApi } from 'mudbase-sdk';

const configuration = new Configuration({
  basePath: 'https://cloud.mudbase.dev',
  accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig',
});

const collections = new CollectionsApi(configuration);

Example request

Call this endpoint using the client from SDK setup. Use View HTTP for a raw cURL example.

const { data: result } = await collections.createCollection(
  "proj_3dfTgCiTCHSS",
  {
    name: "Mrs. Jeanette Yundt-DuBuque",
    slug: "mediocre-doing-adpm",
    fields: "port index",
    permissions: "capacitor program",
    settings: "card hack"
  }
);
const { data: result } = await collections.createCollection(
  "proj_3dfTgCiTCHSS",
  {
    name: "Mrs. Jeanette Yundt-DuBuque",
    slug: "mediocre-doing-adpm",
    fields: "port index",
    permissions: "capacitor program",
    settings: "card hack"
  }
);

Playground

live

Test this endpoint with your own credentials. Your requests will be sent to the live API.

Use the auth endpoints to obtain a JWT.

No Request Yet

Send a request to see the full inspector

Authentication

Requires JWT
Note
Include your JWT in the Authorization: Bearer YOUR_TOKEN header (user-facing apps, RBAC). View authentication guide →

Path Parameters

NameTypeRequiredDescription
projectIdstringYes

Request Body

json
{
  "name": "Johnathan Torp I",
  "slug": "measly-violin-pc25",
  "fields": [
    {
      "name": "Luis Kilback",
      "type": "enum",
      "required": false,
      "unique": true,
      "default": "protocol program",
      "validation": {},
      "ui": {}
    }
  ],
  "permissions": [
    {
      "role": "firewall reboot",
      "actions": [
        "create"
      ],
      "fields": [
        "card back up"
      ],
      "condition": {}
    }
  ],
  "settings": {}
}
{
  "name": "Johnathan Torp I",
  "slug": "measly-violin-pc25",
  "fields": [
    {
      "name": "Luis Kilback",
      "type": "enum",
      "required": false,
      "unique": true,
      "default": "protocol program",
      "validation": {},
      "ui": {}
    }
  ],
  "permissions": [
    {
      "role": "firewall reboot",
      "actions": [
        "create"
      ],
      "fields": [
        "card back up"
      ],
      "condition": {}
    }
  ],
  "settings": {}
}

Responses

201Collection created
json
{
  "message": "Collection created successfully",
  "collection": {
    "_id": "685ada8fd9416ac02f171abf",
    "name": "users",
    "slug": "users",
    "project": "685ad30be129932fbb7a1047",
    "fields": [
      {
        "name": "email",
        "type": "email",
        "required": true
      }
    ],
    "createdAt": "2024-01-15T10:00:00.000Z"
  }
}
{
  "message": "Collection created successfully",
  "collection": {
    "_id": "685ada8fd9416ac02f171abf",
    "name": "users",
    "slug": "users",
    "project": "685ad30be129932fbb7a1047",
    "fields": [
      {
        "name": "email",
        "type": "email",
        "required": true
      }
    ],
    "createdAt": "2024-01-15T10:00:00.000Z"
  }
}
Edit this page on GitHub