---
title: "Get the default view for a kind"
method: GET
path: "/api/v1/ackdb/observe/segments/default"
tags: ["ackDB"]
---

# Get the default view for a kind

`GET /api/v1/ackdb/observe/segments/default`

## Request

- Base URL: `http://localhost:3009`
- URL: `http://localhost:3009/api/v1/ackdb/observe/segments/default`
- Auth: HTTP bearer

Returns the default table view for a kind: a Segment explicitly marked default (source 'explicit') or the server-computed catalog fallback (source 'computed', id null). Always returns usable columns+sort so clients never hard-code the column policy.

## Query parameters

- `entityKind` 'company' | 'contact' | 'person'

## Response `200`

The default view (explicit or computed).

- object
  - `data` AckdbDefaultSegmentResponse, required: The default view for a kind. Either an explicitly-marked Segment (source 'explicit', id non-null) or the server-computed catalog fallback (source 'computed', id null). Clients seed a fresh table's columns+sort from this without hard-coding the column policy.
    - `id` string, required
    - `name` string
    - `description` unknown
    - `entityKind` 'company' | 'contact' | 'person', required
    - `filter` AckdbObserveFilterGroup, required: A boolean group combining child nodes with AND/OR.
      - `type` 'group', required
      - `op` 'and' | 'or', required: How children are combined.
      - `children` AckdbObserveFilter[], required
        - union: Recursive Observe filter DSL. A node is either a boolean `group` (with `op` and a `children` array of further nodes) or a leaf condition (`trait`, `attribute`, `event`, or `event_field`). The root node is always a group. Empty groups compile to TRUE (match all).
          - object: A boolean group combining child nodes with AND/OR.
            - `type` 'group', required
            - `op` 'and' | 'or', required: How children are combined.
            - `children` AckdbObserveFilter[], required
          - object: A condition on a registered entity trait. `traitKey` is whitelisted against the field catalog; the operator must be legal for the trait's valueType.
            - `type` 'trait', required
            - `traitKey` string, required
            - `operator` 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'contains' | 'not_contains' | 'in' | 'is_null' | 'is_not_null' | 'in_last_days' | 'more_than_days_ago' | 'in_next_days', required
            - `value` union: Scalar or array depending on the operator. Omitted for is_null/is_not_null. For in_last_days, more_than_days_ago and in_next_days, a positive integer day count on a date field, at most 36500 days.
              - …
          - object: A condition on a fixed entity attribute (name, domain, status, timestamps, event counts, sources, last activity, or source presence).
            - `type` 'attribute', required
            - `field` 'name' | 'created_at' | 'updated_at' | 'domain' | 'status' | 'event_count' | 'last_active' | 'sources' | 'source_present', required
            - `operator` 'eq' | 'neq' | 'contains' | 'not_contains' | 'in' | 'gt' | 'gte' | 'lt' | 'lte' | 'within_days' | 'is_null' | 'is_not_null' | 'in_last_days' | 'more_than_days_ago' | 'in_next_days', required
            - `value` union: Scalar or array depending on the operator. Omitted for is_null/is_not_null. For in_last_days, more_than_days_ago and in_next_days, a positive integer day count on a date field, at most 36500 days.
              - …
          - object: A condition on the entity's event timeline. `eventType` is source-prefixed and whitelisted against the catalog. `withinDays` bounds the lookback; `count` is used by count_gte/count_lte.
            - `type` 'event', required
            - `eventType` string, required
            - `source` string
            - `predicate` 'exists' | 'not_exists' | 'count_gte' | 'count_lte', required
            - `count` integer
            - `withinDays` integer
          - object: A condition on a promoted event-metadata field's reduced scalar value (#212). `columnKey` is the synthetic field-catalog key (`emf__<source>__<field>` for the latest value, or `…__sum` for a numeric running total) and is whitelisted against the catalog; the operator must be legal for the field's valueType (same legality as a trait of that type).
            - `type` 'event_field', required
            - `columnKey` string, required
            - `operator` 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'contains' | 'not_contains' | 'in' | 'is_null' | 'is_not_null' | 'in_last_days' | 'more_than_days_ago' | 'in_next_days', required
            - `value` union: Scalar or array depending on the operator. Omitted for is_null/is_not_null. For in_last_days, more_than_days_ago and in_next_days, a positive integer day count on a date field, at most 36500 days.
              - …
    - `sort` AckdbSegmentSort[], required
      - `field` string, required
      - `dir` 'asc' | 'desc', required
    - `columns` AckdbSegmentColumn[], required
      - `field` string, required
      - `frozen` boolean
      - `width` number: Persisted column width in px (per-segment; presentation only).
    - `isDefault` boolean, required
    - `source` 'explicit' | 'computed', required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required

---

[API](https://skmtc.dev/floqer/apis/floqer-public-api.md) - [All operations](https://skmtc.dev/floqer/apis/floqer-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/floqer/apis/floqer-public-api/revisions/fce50dc07b20?raw)
