> ## 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.

# Update Settings



## OpenAPI

````yaml /openapi.json put /v1/workspaces/{workspaceId}/projects/{projectId}/specification-navigator/settings
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}/projects/{projectId}/specification-navigator/settings:
    put:
      tags:
        - Specification Navigator
      summary: Update Settings
      operationId: SpecificationNavigatorController_updateSettings_v1
      parameters:
        - name: workspaceId
          required: true
          in: path
          schema:
            type: string
        - name: projectId
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSpecificationNavigatorSettingsDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SpecificationNavigatorSettingsResponseDto'
      security:
        - bearer: []
components:
  schemas:
    UpdateSpecificationNavigatorSettingsDto:
      type: object
      properties:
        expectedVersion:
          anyOf:
            - type: integer
              exclusiveMinimum: 0
              maximum: 9007199254740991
            - type: 'null'
        layout:
          enum:
            - areas
            - categories
            - areas-categories
            - categories-areas
            - custom
          type: string
        customGrouping:
          minItems: 1
          maxItems: 3
          type: array
          items:
            oneOf:
              - type: object
                properties:
                  kind:
                    type: string
                    const: area
                required:
                  - kind
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: area_type
                required:
                  - kind
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: category
                required:
                  - kind
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: area_level
                  levelKey:
                    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
                  - levelKey
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: status
                required:
                  - kind
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: supplier
                required:
                  - kind
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: finish
                required:
                  - kind
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    const: field
                  field:
                    type: string
                    maxLength: 200
                    pattern: >-
                      ^(?:system|catalog_family|catalog_item|catalog_family_source|catalog_item_source|project_item|project_item_slot):[a-zA-Z0-9_-]+$
                required:
                  - kind
                  - field
                additionalProperties: false
        showItemCount:
          type: boolean
        showUnassigned:
          type: boolean
        showExtraQuantity:
          type: boolean
        showFloorPlan:
          type: boolean
      required:
        - expectedVersion
        - layout
        - customGrouping
        - showItemCount
        - showUnassigned
        - showExtraQuantity
        - showFloorPlan
      additionalProperties: false
    SpecificationNavigatorSettingsResponseDto:
      type: object
      properties:
        layout:
          enum:
            - areas
            - categories
            - areas-categories
            - categories-areas
            - custom
          type: string
        customGrouping:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/SpecificationNavigatorAreaGroupingDto'
              - $ref: '#/components/schemas/SpecificationNavigatorAreaTypeGroupingDto'
              - $ref: '#/components/schemas/SpecificationNavigatorCategoryGroupingDto'
              - $ref: >-
                  #/components/schemas/SpecificationNavigatorAreaLevelGroupingDto
              - $ref: '#/components/schemas/SpecificationNavigatorStatusGroupingDto'
              - $ref: '#/components/schemas/SpecificationNavigatorSupplierGroupingDto'
              - $ref: '#/components/schemas/SpecificationNavigatorFinishGroupingDto'
              - $ref: '#/components/schemas/SpecificationNavigatorFieldGroupingDto'
            discriminator:
              propertyName: kind
              mapping:
                area:
                  $ref: '#/components/schemas/SpecificationNavigatorAreaGroupingDto'
                area_type:
                  $ref: >-
                    #/components/schemas/SpecificationNavigatorAreaTypeGroupingDto
                category:
                  $ref: >-
                    #/components/schemas/SpecificationNavigatorCategoryGroupingDto
                area_level:
                  $ref: >-
                    #/components/schemas/SpecificationNavigatorAreaLevelGroupingDto
                status:
                  $ref: '#/components/schemas/SpecificationNavigatorStatusGroupingDto'
                supplier:
                  $ref: >-
                    #/components/schemas/SpecificationNavigatorSupplierGroupingDto
                finish:
                  $ref: '#/components/schemas/SpecificationNavigatorFinishGroupingDto'
                field:
                  $ref: '#/components/schemas/SpecificationNavigatorFieldGroupingDto'
        version:
          type: number
          nullable: true
        isDefault:
          type: boolean
        showItemCount:
          type: boolean
        showUnassigned:
          type: boolean
        showExtraQuantity:
          type: boolean
        showFloorPlan:
          type: boolean
      required:
        - layout
        - customGrouping
        - version
        - isDefault
        - showItemCount
        - showUnassigned
        - showExtraQuantity
        - showFloorPlan
    SpecificationNavigatorAreaGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - area
      required:
        - kind
    SpecificationNavigatorAreaTypeGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - area_type
      required:
        - kind
    SpecificationNavigatorCategoryGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - category
      required:
        - kind
    SpecificationNavigatorAreaLevelGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - area_level
        levelKey:
          type: string
      required:
        - kind
        - levelKey
    SpecificationNavigatorStatusGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - status
      required:
        - kind
    SpecificationNavigatorSupplierGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - supplier
      required:
        - kind
    SpecificationNavigatorFinishGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - finish
      required:
        - kind
    SpecificationNavigatorFieldGroupingDto:
      type: object
      properties:
        kind:
          type: string
          enum:
            - field
        field:
          type: string
      required:
        - kind
        - field
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````