> ## Documentation Index
> Fetch the complete documentation index at: https://docs.meetingkit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# The workspace object

> One workspace per customer: everything their members record lives inside it.

A workspace holds one customer's members, meetings, policies and branding, isolated from
every other workspace. Your API key acts on every workspace its user belongs to, so pass
the customer's `id` as `workspace_id` on every request. See [Set up a customer](/meetingkit/setup).

## Attributes

<ResponseField name="id" type="string" required>
  Unique identifier, beginning with `wks_`. Treat it as an opaque string.
</ResponseField>

<ResponseField name="name" type="string" required>
  The workspace name, shown to its members in MeetingKit.
</ResponseField>

<ResponseField name="role" type="string" required>
  Your API key's role in this workspace: `owner`, `admin`, `member` or `guest`. MeetingKit endpoints
  need `owner` or `admin`.
</ResponseField>

<ResponseField name="created_at" type="string" required>
  When the workspace was created, in ISO 8601.
</ResponseField>

<ResponseField name="updated_at" type="string" required>
  When the workspace last changed, in ISO 8601.
</ResponseField>

<ResponseField name="owner_email" type="string">
  Email of the workspace owner. Only for owners and admins.
</ResponseField>

<ResponseField name="members_count" type="integer">
  Number of members, not counting guests. Only for owners and admins.
</ResponseField>

<ResponseField name="email_domains" type="string[]">
  Email domains whose new MeetingKit users join this workspace on sign-up. Only for owners and
  admins.
</ResponseField>

<ResponseField name="idp_company_names" type="string[]">
  Identity provider company names set up for single sign-on. Only for owners and admins.
</ResponseField>

<ResponseField name="currency" type="string">
  Billing currency: `usd`, `eur` or `gbp`. Only for owners and admins.
</ResponseField>

<ResponseField name="is_human_transcription_allowed" type="boolean">
  Whether the workspace may order human transcription. Only for owners and admins.
</ResponseField>

<ResponseField name="is_human_translation_allowed" type="boolean">
  Whether the workspace may order human translation. Only for owners and admins.
</ResponseField>

<ResponseField name="metadata" type="object">
  (Owners and admins only.) Your key-value pairs on this workspace: a flat map of strings. See
  [metadata](/meetingkit/setup#a-workspace-per-customer).
</ResponseField>

<ResponseField name="settings" type="object">
  (Owners and admins only.) What applies to the workspace's meetings that no member, category or
  meeting decides. On `GET /workspaces`, only with `include=settings`. See [the settings
  block](/api-reference/settings/block-object).
</ResponseField>

<ResponseExample>
  ```json The workspace object theme={null}
  {
    "id": "wks_01k6a2r9s8x7c2dvq3m5n6p4ab",
    "name": "Acme Corp",
    "role": "owner",
    "created_at": "2026-09-22T10:10:00.000Z",
    "updated_at": "2026-09-22T10:10:00.000Z",
    "owner_email": "integrations@gurusup.com",
    "metadata": {
      "gurusup_org_id": "org_42"
    },
    "members_count": 12,
    "email_domains": [],
    "idp_company_names": [],
    "currency": "eur",
    "is_human_transcription_allowed": true,
    "is_human_translation_allowed": true,
    "settings": {
      "recording": {
        "enabled": false,
        "methods": { "bot": { "start": "on_join", "mode": "audio_and_video", "silence_detection": { "alert": true } } }
      },
      "transcription": { "language": "auto" },
      "summary": { "template": "general_meeting_notes", "language": "same_as_transcript" },
      "branding": { "brand_kit_id": "none" },
      "sources": {
        "recording.enabled": { "assignment_id": "asg_01k6a0wks00000000000000000" },
        "recording.methods.bot.start": { "assignment_id": "asg_01k6a0wks00000000000000000" },
        "recording.methods.bot.mode": { "assignment_id": "asg_01k6a0wks00000000000000000" },
        "recording.methods.bot.silence_detection.alert": { "assignment_id": "asg_01k6a0wks00000000000000000" },
        "transcription.language": { "assignment_id": "asg_01k6a0wks00000000000000000" },
        "summary.template": { "assignment_id": null, "reason": "happyscribe_default" },
        "summary.language": { "assignment_id": "asg_01k6a0wks00000000000000000" },
        "branding.brand_kit_id": { "assignment_id": "asg_01k6a0wks00000000000000000" }
      },
      "assignments": [
        { "id": "asg_01k6a3ext00000000000000000", "settings_id": "set_01k6rec00000000000000000000", "scope": ["workspace:wks_01k6a2r9s8x7c2dvq3m5n6p4ab", "meetings:external"], "own": true },
        { "id": "asg_01k6a0wks00000000000000000", "settings_id": "set_01k6wks00000000000000000000", "scope": ["workspace:wks_01k6a2r9s8x7c2dvq3m5n6p4ab"], "own": true }
      ]
    }
  }
  ```
</ResponseExample>
