Service Catalog Item Schema
Felder
Service Catalog Item Schema
Anforderbares Catalog-Item im Customer-Portal. Per-Customer konfiguriert mit dynamischem Formular (formSchema), optionaler Approval-Chain (Step-Builder DSL), Visibility-Rules und einem Fulfillment-Typ. Approval-State wird beim Antrag (service_request) als embedded Array eingefroren — Items selbst tragen nur die Konfigurations-Vorlage.
customerPartyId
FK customer ORGANIZATION party (isCustomer=true). Always set.
sampleOrigin
Slug of the sample-library entry this item was cloned from. Audit/telemetry only — no live link.
title
description
category
Free-text category for portal grouping (e.g. "Software", "Berechtigungen").
iconKey
Key from Icons.tsx (e.g. "PackageIcon"). Frontend falls back to a default.
formSchema
JSON-Schema-Subset for the dynamic request form. Phase 1 acceptance: object with properties + optional required[]. The frontend renders the form from this shape.
approvalRequired
Master toggle. When false, requests skip pending_approval and go straight to in_fulfillment.
approvalChainTemplateId
Optional FK to approval_chain_templates (Phase 4). Mutually exclusive with approvalStepsInline.
approvalStepsInline
Inline approval steps when no template is referenced. Items are produced by the visual step-builder UI; the approverDsl string is the serialized expression (FIXED_PERSON, CUSTOMER_MANAGER, etc. — see approver-resolver service).
approverDsl
mode
one_ofall_ofslaHours
notifyChannels
fulfillmentType
manual_ticketaccess_grantlicense_assignmentautomationinfo_onlyfulfillmentConfig
Type-dependent config. For manual_ticket: ticketQueueId, ticketDefaultOwnerUserId, ticketPriority, ticketTitleTemplate, ticketBodyTemplate (Mustache). For info_only: infoMarkdown, kbArticleId. Other types reserved for later phases.
visibilityRules
onUnresolvableApprover
skipfallback_to_msp_ownerfailfallbackApproverUserId
Required when onUnresolvableApprover=fallback_to_msp_owner.
slaPolicyId
costCenterRequired
pricing
status
draftactivearchivedKeine Felder passen zum Filter.
Standard-Endpoints
Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:
GET /api/v1/service_catalog_items— Liste, paginiert + filterbarGET /api/v1/service_catalog_items/<id>— Einzelne EntityPOST /api/v1/service_catalog_items— AnlegenPATCH /api/v1/service_catalog_items/<id>— Teil-UpdateDELETE /api/v1/service_catalog_items/<id>— Soft-DeleteGET /api/v1/service_catalog_items/<id>/timeline— Audit + Aktivitäten