Skip to content

Create group

client.groups.create(GroupCreateParams { external_reference_id, name } body, RequestOptionsoptions?): GroupResponse { data }
POST/v1/groups

Creates a new group scoped to the authenticated organization.

ParametersExpand Collapse
body: GroupCreateParams { external_reference_id, name }
external_reference_id: string
maxLength255
minLength1
name: string
maxLength255
minLength1
ReturnsExpand Collapse
GroupResponse { data }

Response containing a single group resource.

data: Group { id, created_at, external_reference_id, 3 more }
id: string

Prefixed group identifier (grp_<base64-encoded-uuid>).

created_at: string | null

Group creation timestamp (ISO 8601, UTC).

formatdate-time
external_reference_id: string

Stable identifier for this group in the integrator’s own system.

maxLength255
name: string

Human-readable group name.

maxLength255
organization_id: string

Prefixed organization identifier (org_<base64-encoded-uuid>).

updated_at: string | null

Last-update timestamp (ISO 8601, UTC).

formatdate-time

Create group

import VitableConnect from '@vitable-inc/vitable-connect';

const client = new VitableConnect({
  apiKey: process.env['VITABLE_CONNECT_API_KEY'], // This is the default and can be omitted
});

const groupResponse = await client.groups.create({
  external_reference_id: 'mol_seg_001',
  name: 'Tier 1',
});

console.log(groupResponse.data);
{
  "data": {
    "id": "grp_abc123def456",
    "organization_id": "org_abc123def456",
    "name": "Tier 1",
    "external_reference_id": "mol_seg_001",
    "created_at": "2026-01-15T10:30:00Z",
    "updated_at": "2026-01-15T10:30:00Z"
  }
}
Returns Examples
{
  "data": {
    "id": "grp_abc123def456",
    "organization_id": "org_abc123def456",
    "name": "Tier 1",
    "external_reference_id": "mol_seg_001",
    "created_at": "2026-01-15T10:30:00Z",
    "updated_at": "2026-01-15T10:30:00Z"
  }
}