> ## Documentation Index
> Fetch the complete documentation index at: https://docs.craveup.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Replace one ordered parent list without deleting library records



## OpenAPI

````yaml /generated/catalog-workspace.openapi.json put /api/v1/catalog/workspace/relationships
openapi: 3.0.3
info:
  title: Staff Menu Manager authoring
  version: 1.0.0
  description: >-
    Persistent tenant-scoped library/relationship authoring and scoped
    publication review. Prices and POS structure retain their existing
    authority. Food Unknown is null; a nullable override inherits while []
    disables inherited rules. Publication and menu-aware public serving activate
    together through S1.
servers: []
security: []
paths:
  /api/v1/catalog/workspace/relationships:
    put:
      summary: Replace one ordered parent list without deleting library records
      operationId: catalogRelationships
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CatalogRelationshipMutationRequest'
      responses:
        '200':
          description: >-
            Committed authoring evidence or read-only review; no publication is
            activated by a review.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CatalogRelationshipMutationResult'
        '400':
          description: Invalid shape, units or identifier.
        '401':
          description: >-
            A current merchant staff session is required. Machine credentials
            are not admitted.
        '403':
          description: >-
            Current organization role/location grant or POS authority forbids
            the operation.
        '404':
          description: The record or location does not exist in the authorized tenant.
        '409':
          description: >-
            CATALOG_DRAFT_STALE_REVISION: refresh the current draft before
            retrying.
        '422':
          description: >-
            Invalid references, non-ready publication evidence or semantic
            validation blockers.
      security:
        - StaffSession: []
components:
  schemas:
    CatalogRelationshipMutationRequest:
      type: object
      properties:
        expectedDraftRevision:
          type: integer
          minimum: 0
          exclusiveMinimum: true
          maximum: 9007199254740991
        parent:
          oneOf:
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - organization
              required:
                - kind
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - menu
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - category
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - product
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - modifier_group
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
        orderedChildIds:
          maxItems: 5000
          type: array
          items:
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      required:
        - expectedDraftRevision
        - parent
        - orderedChildIds
      additionalProperties: false
    CatalogRelationshipMutationResult:
      type: object
      properties:
        draftRevision:
          type: integer
          minimum: 0
          exclusiveMinimum: true
          maximum: 9007199254740991
        parent:
          oneOf:
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - organization
              required:
                - kind
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - menu
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - category
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - product
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - modifier_group
                parentId:
                  type: string
                  format: uuid
                  pattern: >-
                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              required:
                - kind
                - parentId
              additionalProperties: false
        orderedChildIds:
          type: array
          items:
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
        affectedMenuIds:
          type: array
          items:
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      required:
        - draftRevision
        - parent
        - orderedChildIds
        - affectedMenuIds
      additionalProperties: false
  securitySchemes:
    StaffSession:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.