Create metadata property
Define a new property on this object type, scoped to the calling team. Search the existing properties first (GET this path with term) and reuse a match instead of defining a second property for the same fact. Pass list_id in the body to scope the definition to one list/app; without it the property is workspace-global and appears on every list. A name already used in that scope, an explicitly requested slug already taken, or a slug that a shared property already owns all return 409 naming the definition to use instead. The property's display format is resolved from type automatically — pass role_id only to override it. For select_str and multiselect_str types you may pre-seed the choices via options.
/v2/prism/{teamId}/{objectType}/propertiesDefine a new property on this object type, scoped to the calling team. Search the existing properties first (GET this path with term) and reuse a match instead of defining a second property for the same fact. Pass list_id in the body to scope the definition to one list/app; without it the property is workspace-global and appears on every list. A name already used in that scope, an explicitly requested slug already taken, or a slug that a shared property already owns all return 409 naming the definition to use instead. The property's display format is resolved from type automatically — pass role_id only to override it. For select_str and multiselect_str types you may pre-seed the choices via options.
Authorization
apiKey Public API key generated from Micro settings. Sent as the x-api-key header and validated by AWS API Gateway in front of the service.
In: header
Path Parameters
uuidObject types that support CRUD, query, list, and per-type property metadata. GET /v2/prism/{teamId}/properties (list-all) also returns definitions for pipeline-owned types that are not in this set — including message, thread, and linkedin_thread. Those types are not queryable. Contacts expose last_email as a ref_message; you cannot query message to follow it.
Value in
- "comment"
- "deal"
- "engagement"
- "identity"
- "ai_chat_thread"
- "ai_chat_message"
- "agent_site"
- "document"
- "action"
- "event"
- "organization"
- "contact"
Header Parameters
A unique key (UUID or any opaque string up to 255 chars) for an authenticated POST, PUT, or PATCH request. The server retains the initial claim for 24 hours and replays a completed non-5xx response only when the method, path, and request body all match. Reusing a non-expired key with a different method, path, or body returns 409 idempotency_key_mismatch; reusing it after expiry returns 409 idempotency_key_stale, so use a new key. Replays include the idempotent-replay: true response header.
1 <= length <= 255Request Body
application/json
New property definition. Check for an existing property first (GET the same path with term) and reuse it rather than defining a near-duplicate — writes address properties by slug, so two definitions sharing a slug leave no addressable winner. For select_str/multiselect_str types you may pre-seed choices via options.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://developers.micro.so/v2/prism/${MICRO_TEAM_ID}/comment/properties" \ -H "x-api-key: $MICRO_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "num", "name": "string" }'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "name": "string", "type": "num", "team_id": "810007d0-bec5-486c-b5d1-28fcd8a079ba", "crm_id": "a1cca198-42e1-4e72-a0e1-017dec9db0e1", "list_id": "430bbdbc-9d7f-4d06-a273-67ca4ba4ae4b", "native": true, "locked": true, "alias": "app_stage", "required": true, "role_id": "ac4e70c8-d5be-48af-93eb-760f58fc91a9", "options": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "slug": "string", "value": "string", "color_scheme": "string", "sort_index": 0, "icon": "string", "description": "string", "option_group": "string", "list_id": "430bbdbc-9d7f-4d06-a273-67ca4ba4ae4b", "crm_id": "a1cca198-42e1-4e72-a0e1-017dec9db0e1" } ]}