publ betaReference (MCP guide)
Open publ console

publ Reference

Migration map.

segment_options

Discover the current source condition wizard hierarchy, option codes and input requirements. Access, channelCode and navigation follow the segment reader.

Input

All objects are strict; selection defaults to {kind:majors}. Codes must be observed in the preceding hierarchy, not inferred from labels. majorCategoryCode and subjectCode match [A-Z0-9_-]{1,64}.

Input Contract
channelCode Required selected channel code.
selection Optional discriminated object.
selection.kind majors, subjects, items or condition.
selection.majorCategoryCode Required after majors.
selection.subjectCode Required for items/condition.
selection.itemCode Condition only; integer 0–999999. Convert an observed padded source code such as 001 to numeric 1.
selection.evaluationType Condition only; FINALIZED or MUTABLE, copied from the selected item.
{"channelCode":"selected-channel-code"}
{"channelCode":"selected-channel-code","selection":{"kind":"subjects","majorCategoryCode":"USER"}}
{"channelCode":"selected-channel-code","selection":{"kind":"items","majorCategoryCode":"USER","subjectCode":"A"}}
{"channelCode":"selected-channel-code","selection":{"kind":"condition","majorCategoryCode":"USER","subjectCode":"A","itemCode":1,"evaluationType":"FINALIZED"}}

USER/A/1 are illustrative source/demo selections; discover the actual selected-channel hierarchy before use.

Composition and output

The workflow reads all parents needed for the requested level, repeats the entire hierarchy, then checks channel/context continuity. It verifies unique numeric ids and source keys, correct parents, one selected item with matching numeric code/evaluation type, and a definition whose classificationCodeGroup, valueType and targetEntity agree with that item. A present channelId must match. Each catalogue/options array is bounded to 5,000 entries; option values must be unique.

Success returns SEGMENT_OPTIONS, majorCategories and, depending on selection depth, subjects, items, selectedItem and item. Catalogue rows expose observed ids/codes/names; subjects identify their parent, and items add classificationCodeGroup, evaluationType, valueType, targetEntity, contextualFieldTemplate and releaseStatus. The item definition projects classificationCodeGroup/name/majorCategoryCode/subjectCode/evaluationType/valueType/targetEntity/contextualFieldTemplate, contextualFieldSlots and options containing value/name/description. Copy an option's value into classificationCode.

contextualFieldSlots.value.inputType identifies the value renderer. entity has inputType NONE or ENTITY_SELECT_MODAL, targetEntity and config with optional useMultiSelect/useEntitySelectModal. Use entity discovery only when required. The writer enforces supported value and selection rules.

revision hashes context plus the selected catalogue; it is not an update revision. creationRevision separately binds create context. A writer update/delete requires the detail reader's revision. writesPerformed:false and verification {confirmed:true,atomicSnapshot:false} establish catalogue observation only.

Draft, Upcoming and Sunset items cannot be newly selected; Deprecated is available with a warning, while Released and Released(!) are not rejected by this release gate. MUTABLE may be saved but has no count preview. No default all-user option is auto-selected. Unknown/nested installed-feature selectors remain unsupported. This GET-only method performs no save, count, entity-resolution POST or task creation.

Current observations use the bounded response and recovery rules. An oversized response is not a successful empty result. If a write was already sent, retain its original task and reconcile; the failed read does not authorize repeating the change.

Inputs

Field Required here Contract
selection No one of: majors, subjects, items, condition (by kind); default {"kind":"majors"}
selection.majorCategoryCode Yes When selection.kind is subjects: string; pattern ^[A-Z0-9_-]{1,64}$
selection.majorCategoryCode Yes When selection.kind is items: string; pattern ^[A-Z0-9_-]{1,64}$
selection.subjectCode Yes When selection.kind is items: string; pattern ^[A-Z0-9_-]{1,64}$
selection.majorCategoryCode Yes When selection.kind is condition: string; pattern ^[A-Z0-9_-]{1,64}$
selection.subjectCode Yes When selection.kind is condition: string; pattern ^[A-Z0-9_-]{1,64}$
selection.itemCode Yes When selection.kind is condition: integer; minimum 0; maximum 999999
selection.evaluationType Yes When selection.kind is condition: FINALIZED, MUTABLE