Columns

The shape of a module's grid — one definition per field every record in the module carries.

GET/columns/{moduleId}

List columns

Column definitions for a module — types, options, widths. A module carries two sets: the board's own (default) and its sub-record grid's (?scope=subrecord).

From an extension view: requires the columns:read scope

Path parameters

moduleId*stringModule id.

Query parameters

scopestring"subrecord" for the sub-record grid's columns. Omit for the board's own.
bash
curl -X GET 'https://api.conexus-x.example/api/columns/{moduleId}' \
  -H 'x-api-key: YOUR_PIT_KEY'

Example response

json
{
  "columns": [
    {
      "_id": "66f1a2b3c4d5e6f7a8b9c3c1",
      "name": "Stage",
      "type": "status",
      "position": 1,
      "width": 160,
      "isRequired": false,
      "isHidden": false,
      "statusOptions": [
        {
          "label": "Hot",
          "color": "#ef4444"
        },
        {
          "label": "Warm",
          "color": "#f59e0b"
        },
        {
          "label": "Cold",
          "color": "#3b82f6"
        }
      ]
    }
  ]
}
POST/columns/{moduleId}

Add a column

Creates a column on a module.

From an extension view: requires the columns:write scope

Path parameters

moduleId*stringModule id.

Body

name*stringColumn name.
type*stringtext | number | status | date | timeline | person | email | phone | checkbox | dropdown | link | file | rating | relation | reference
scopestring"subrecord" to add it to the sub-record grid instead of the board.
settingsobjectrelation: {targetModule} · reference: {via, field, aggregate}.
bash
curl -X POST 'https://api.conexus-x.example/api/columns/{moduleId}' \
  -H 'x-api-key: YOUR_PIT_KEY'
  -H 'Content-Type: application/json' \
  -d '{"name":"Stage","type":"status"}'

Example response

json
{
  "_id": "66f1a2b3c4d5e6f7a8b9c3c1",
  "name": "Stage",
  "type": "status",
  "position": 1,
  "width": 160,
  "isRequired": false,
  "isHidden": false,
  "statusOptions": [
    {
      "label": "Hot",
      "color": "#ef4444"
    },
    {
      "label": "Warm",
      "color": "#f59e0b"
    },
    {
      "label": "Cold",
      "color": "#3b82f6"
    }
  ]
}
PUT/columns/{columnId}

Update a column

Renames, resizes, reorders a column, or replaces its status options.

From an extension view: requires the columns:write scope

Path parameters

columnId*stringColumn id.

Body

namestringNew name.
widthnumberColumn width in px.
positionnumberNew sort position.
statusOptions{label,color}[]Status columns only — replaces the whole option set.
bash
curl -X PUT 'https://api.conexus-x.example/api/columns/{columnId}' \
  -H 'x-api-key: YOUR_PIT_KEY'
  -H 'Content-Type: application/json' \
  -d '{"width":200}'

Example response

json
{
  "_id": "66f1a2b3c4d5e6f7a8b9c3c1",
  "name": "Stage",
  "type": "status",
  "position": 1,
  "width": 160,
  "isRequired": false,
  "isHidden": false,
  "statusOptions": [
    {
      "label": "Hot",
      "color": "#ef4444"
    },
    {
      "label": "Warm",
      "color": "#f59e0b"
    },
    {
      "label": "Cold",
      "color": "#3b82f6"
    }
  ]
}
DELETE/columns/{columnId}

Delete a column

Deletes a column and every value stored in it, on every record.

From an extension view: requires the columns:write scope

Path parameters

columnId*stringColumn id.
bash
curl -X DELETE 'https://api.conexus-x.example/api/columns/{columnId}' \
  -H 'x-api-key: YOUR_PIT_KEY'

Example response

json
{
  "message": "Column deleted."
}