Skip to content
Go to Micro

Create a view bundle (view + select/filter/sort)

client.Views.New(ctx, viewObjectType, params) (*ViewNewResponse, error)
POST/v2/prism/{teamId}/{viewObjectType}/views

Create a view bundle (view + select/filter/sort)

ParametersExpand Collapse
One of the following:
const ViewNewParamsViewObjectTypeAction ViewNewParamsViewObjectType = "action"
const ViewNewParamsViewObjectTypeDeal ViewNewParamsViewObjectType = "deal"
const ViewNewParamsViewObjectTypeDocument ViewNewParamsViewObjectType = "document"
const ViewNewParamsViewObjectTypeEvent ViewNewParamsViewObjectType = "event"
const ViewNewParamsViewObjectTypeIdentity ViewNewParamsViewObjectType = "identity"
const ViewNewParamsViewObjectTypeOrganization ViewNewParamsViewObjectType = "organization"
params ViewNewParams
PathTeamID param.Field[string]Optional

Path param

formatuuid
Name param.Field[string]

Body param

ViewType param.Field[string]

Body param

ID param.Field[string]Optional

Body param

formatuuid
AggregationPropDefID param.Field[string]Optional

Body param

formatuuid
AggregationType param.Field[string]Optional

Body param

ColumnLayout param.Field[map[string, unknown]]Optional

Body param

Combinator param.Field[ViewNewParamsCombinator]Optional

Body param

const ViewNewParamsCombinatorAnd ViewNewParamsCombinator = "AND"
const ViewNewParamsCombinatorOr ViewNewParamsCombinator = "OR"
CreatedAt param.Field[string]Optional

Body param

Filter param.Field[[]map[string, unknown]]Optional

Body param: Each entry is { slug: { comparator: value } }

GroupBy param.Field[string]Optional

Body param: Property slug to group by

GroupHiddenOptionIDs param.Field[[]unknown]Optional

Body param

[]unknown
GroupHideEmpty param.Field[bool]Optional

Body param

GroupSort param.Field[string]Optional

Body param

Icon param.Field[string]Optional

Body param

ListID param.Field[string]Optional

Body param

formatuuid
Select param.Field[[]string]Optional

Body param: Property slugs (dot-paths permitted for refs)

Sort param.Field[[]map[string, unknown]]Optional

Body param: Each entry is { slug: ‘asc’ | ‘desc’ }

SortOrder param.Field[int64]Optional

Body param

BodyTeamID param.Field[string]Optional

Body param

formatuuid
UpdatedAt param.Field[string]Optional

Body param

UserID param.Field[string]Optional

Body param

IdempotencyKey param.Field[string]Optional

Header param: A unique key (UUID or any opaque string up to 255 chars) that identifies this logical request. The server caches the first response under this key for 24 hours and replays it on retry — safe to use on every POST/PUT/PATCH to make network retries deterministic. Reusing the same key with a different body returns 409 idempotency_key_mismatch. Replays include the idempotent-replay: true response header.

minLength1
maxLength255
ReturnsExpand Collapse
type ViewNewResponse struct{…}

A view (saved configuration for displaying records of a given object type) plus its select/filter/sort children. Properties in select/filter/sort are referenced by slug.

Name string
ViewType string
ID stringOptional
formatuuid
AggregationPropDefID stringOptional
formatuuid
AggregationType stringOptional
ColumnLayout map[string, unknown]Optional
Combinator ViewNewResponseCombinatorOptional
One of the following:
const ViewNewResponseCombinatorAnd ViewNewResponseCombinator = "AND"
const ViewNewResponseCombinatorOr ViewNewResponseCombinator = "OR"
CreatedAt stringOptional
Filter []map[string, unknown]Optional

Each entry is { slug: { comparator: value } }

GroupBy stringOptional

Property slug to group by

GroupHiddenOptionIDs []unknownOptional
One of the following:
[]unknown
GroupHideEmpty boolOptional
GroupSort stringOptional
Icon stringOptional
ListID stringOptional
formatuuid
Select []stringOptional

Property slugs (dot-paths permitted for refs)

Sort []map[string, unknown]Optional

Each entry is { slug: ‘asc’ | ‘desc’ }

SortOrder int64Optional
TeamID stringOptional
formatuuid
UpdatedAt stringOptional
UserID stringOptional

Create a view bundle (view + select/filter/sort)

package main

import (
  "context"
  "fmt"

  "github.com/micro-so/micro-sdk-go"
  "github.com/micro-so/micro-sdk-go/option"
)

func main() {
  client := micro.NewClient(
    option.WithAPIKey("My API Key"),
    option.WithTeamID("My Team ID"),
  )
  view, err := client.Views.New(
    context.TODO(),
    micro.ViewNewParamsViewObjectTypeAction,
    micro.ViewNewParams{
      Name: micro.F("name"),
      ViewType: micro.F("view_type"),
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", view.ID)
}
{
  "name": "name",
  "view_type": "view_type",
  "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "aggregation_prop_def_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "aggregation_type": "aggregation_type",
  "column_layout": {
    "foo": "bar"
  },
  "combinator": "AND",
  "created_at": "created_at",
  "filter": [
    {
      "foo": "bar"
    }
  ],
  "group_by": "group_by",
  "group_hidden_option_ids": [
    {}
  ],
  "group_hide_empty": true,
  "group_sort": "group_sort",
  "icon": "icon",
  "list_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "select": [
    "string"
  ],
  "sort": [
    {
      "foo": "bar"
    }
  ],
  "sort_order": 0,
  "team_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "updated_at": "updated_at",
  "user_id": "user_id"
}
Returns Examples
{
  "name": "name",
  "view_type": "view_type",
  "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "aggregation_prop_def_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "aggregation_type": "aggregation_type",
  "column_layout": {
    "foo": "bar"
  },
  "combinator": "AND",
  "created_at": "created_at",
  "filter": [
    {
      "foo": "bar"
    }
  ],
  "group_by": "group_by",
  "group_hidden_option_ids": [
    {}
  ],
  "group_hide_empty": true,
  "group_sort": "group_sort",
  "icon": "icon",
  "list_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "select": [
    "string"
  ],
  "sort": [
    {
      "foo": "bar"
    }
  ],
  "sort_order": 0,
  "team_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "updated_at": "updated_at",
  "user_id": "user_id"
}