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

# Commit



## OpenAPI

````yaml /openapi.json post /v1/workspaces/{workspaceId}/collections/{collectionId}/entries/{entryId}/magic-fill/commit
openapi: 3.1.0
info:
  title: Specurate API
  description: ''
  version: 1.0.0
  contact: {}
servers:
  - url: https://app.specurate.com/api
    description: API Server
security: []
tags: []
paths:
  /v1/workspaces/{workspaceId}/collections/{collectionId}/entries/{entryId}/magic-fill/commit:
    post:
      tags:
        - Collection Magic Fill
      summary: Commit
      operationId: CollectionMagicFillController_commit_v1
      parameters:
        - name: workspaceId
          required: true
          in: path
          schema:
            type: string
            pattern: ^[1-9]\d*$
        - name: collectionId
          required: true
          in: path
          schema:
            type: string
            pattern: ^[1-9]\d*$
        - name: entryId
          required: true
          in: path
          schema:
            type: string
            pattern: ^[1-9]\d*$
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommitCatalogMagicFillDto'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CatalogMagicFillContextDto'
components:
  schemas:
    CommitCatalogMagicFillDto:
      type: object
      properties:
        itemId:
          anyOf:
            - type: string
              pattern: ^[1-9]\d*$
            - type: 'null'
        version:
          anyOf:
            - type: integer
              exclusiveMinimum: 0
              maximum: 9007199254740991
            - type: 'null'
        name:
          type: string
          minLength: 1
          maxLength: 200
        categoryId:
          type: string
          pattern: ^[1-9]\d*$
        productTypeId:
          anyOf:
            - type: string
              pattern: ^[1-9]\d*$
            - type: 'null'
        columnsAttributes:
          type: object
          propertyNames:
            type: string
            minLength: 1
            maxLength: 200
          additionalProperties:
            $ref: '#/components/schemas/CommitCatalogMagicFillDto__schema0'
        guidance:
          maxItems: 20
          type: array
          items:
            type: object
            properties:
              kind:
                type: string
                const: instruction
              text:
                type: string
                minLength: 1
                maxLength: 1000
              assigneeRoleGroupIds:
                maxItems: 5
                type: array
                items:
                  type: string
                  enum:
                    - mfg_vendors
                    - owners
                    - gc_sub
                    - warehouse
                    - facility_mgr
            required:
              - kind
              - text
              - assigneeRoleGroupIds
            additionalProperties: false
        ownerVersion:
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        collectionVersion:
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        requestKey:
          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)$
        guidanceRevision:
          type: integer
          minimum: 0
          maximum: 9007199254740991
        alternative:
          type: object
          properties:
            name:
              type: string
              minLength: 1
              maxLength: 255
            sku:
              type: string
              minLength: 1
              maxLength: 255
          required:
            - name
            - sku
          additionalProperties: false
      required:
        - itemId
        - version
        - name
        - categoryId
        - productTypeId
        - columnsAttributes
        - guidance
        - ownerVersion
        - requestKey
        - guidanceRevision
      additionalProperties: false
    CatalogMagicFillContextDto:
      type: object
      properties:
        familyId:
          type: string
          nullable: true
        collectionId:
          type: string
          nullable: true
        entryId:
          type: string
          nullable: true
        itemId:
          type: string
        version:
          type: number
        ownerVersion:
          type: number
        collectionVersion:
          type: number
        name:
          type: string
        categoryId:
          type: string
        productTypeId:
          type: string
          nullable: true
        columnsAttributes:
          type: object
          additionalProperties: true
        columns:
          type: array
          items:
            $ref: '#/components/schemas/ItemColumnResponseDto'
        guidance:
          $ref: '#/components/schemas/CategoryGuidanceResponseDto'
        coreChangePolicy:
          type: object
      required:
        - familyId
        - collectionId
        - entryId
        - itemId
        - version
        - ownerVersion
        - name
        - categoryId
        - productTypeId
        - columnsAttributes
        - columns
        - guidance
    CommitCatalogMagicFillDto__schema0:
      anyOf:
        - type: string
        - type: number
        - type: boolean
        - type: 'null'
        - type: array
          items:
            $ref: '#/components/schemas/CommitCatalogMagicFillDto__schema0'
        - type: object
          propertyNames:
            type: string
          additionalProperties:
            $ref: '#/components/schemas/CommitCatalogMagicFillDto__schema0'
    ItemColumnResponseDto:
      type: object
      properties:
        isCore:
          type: boolean
          deprecated: true
        id:
          type: string
        name:
          type: string
        slug:
          type: string
        type:
          enum:
            - text
            - number
            - percent
            - boolean
            - list
            - multiple_select
            - date
            - image
            - dimension
          type: string
        logicType:
          enum:
            - catalog_family
            - catalog_item
            - catalog_family_source
            - catalog_item_source
            - brand_standard
            - project_item
            - project_item_slot
          type: string
        scopeType:
          enum:
            - default
            - category
          type: string
        categoryIds:
          type: array
          items:
            type: string
        options:
          type: array
          items:
            type: object
        description:
          type: string
          nullable: true
        syncClass:
          enum:
            - core
            - commercial
            - descriptive
          type: string
        createdAt:
          type: string
        updatedAt:
          type: string
      required:
        - isCore
        - id
        - name
        - slug
        - type
        - logicType
        - scopeType
        - categoryIds
        - options
        - description
        - syncClass
        - createdAt
        - updatedAt
    CategoryGuidanceResponseDto:
      type: object
      properties:
        ownedInstructions:
          type: array
          items:
            $ref: '#/components/schemas/NativeInstructionResponseDto'
        ownerVersion:
          type: number
        linkedInstructions:
          type: array
          items:
            $ref: '#/components/schemas/LinkedInstructionResponseDto'
        revision:
          type: number
        classification:
          type: object
          properties:
            categoryId:
              type: string
            productTypeId:
              type: string
              nullable: true
          required:
            - categoryId
            - productTypeId
        instructions:
          type: array
          items:
            $ref: '#/components/schemas/ResolvedCategoryGuidanceGroupDto'
        requirements:
          type: array
          items:
            $ref: '#/components/schemas/ResolvedCategoryGuidanceGroupDto'
        furnishedInstalledBy:
          type: object
          properties:
            value:
              type: string
              nullable: true
              enum:
                - OFCI
                - OFOI
                - CFCI
                - CFOI
            origin:
              enum:
                - none
                - item-override
                - category-default
              type: string
          required:
            - value
            - origin
      required:
        - revision
        - classification
        - instructions
        - requirements
        - furnishedInstalledBy
    NativeInstructionResponseDto:
      type: object
      properties:
        id:
          type: string
        text:
          type: string
        assigneeRoleGroupIds:
          type: array
          items:
            type: string
            enum:
              - warehouse
              - mfg_vendors
              - owners
              - gc_sub
              - facility_mgr
      required:
        - id
        - text
        - assigneeRoleGroupIds
    LinkedInstructionResponseDto:
      type: object
      properties:
        id:
          type: string
        text:
          type: string
        assigneeRoleGroupIds:
          type: array
          items:
            type: string
            enum:
              - warehouse
              - mfg_vendors
              - owners
              - gc_sub
              - facility_mgr
        key:
          type: string
        source:
          $ref: '#/components/schemas/InstructionSourceResponseDto'
        disabled:
          type: boolean
      required:
        - id
        - text
        - assigneeRoleGroupIds
        - key
        - source
        - disabled
    ResolvedCategoryGuidanceGroupDto:
      type: object
      properties:
        groupId:
          type: string
        groupLineageId:
          type: string
        groupLabel:
          type: string
        items:
          type: array
          items:
            $ref: '#/components/schemas/ResolvedCategoryGuidanceItemDto'
      required:
        - groupId
        - groupLineageId
        - groupLabel
        - items
    InstructionSourceResponseDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - catalog
            - collection
            - template
        id:
          type: string
        name:
          type: string
        version:
          type: number
        collectionId:
          type: string
        collectionVersion:
          type: number
      required:
        - kind
        - id
        - name
        - version
    ResolvedCategoryGuidanceItemDto:
      type: object
      properties:
        id:
          type: string
        lineageId:
          type: string
        text:
          type: string
        assigneeRoleGroupIds:
          type: array
          items:
            type: string
            enum:
              - warehouse
              - mfg_vendors
              - owners
              - gc_sub
              - facility_mgr
        position:
          type: number
        origin:
          type: string
          enum:
            - category
            - entry
            - item-disabled
      required:
        - id
        - lineageId
        - text
        - assigneeRoleGroupIds
        - position
        - origin

````