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

# Put Floor Plan



## OpenAPI

````yaml /openapi.json put /v1/workspaces/{workspaceId}/projects/{projectId}/areas/{areaId}/floor-plan
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}/areas/{areaId}/floor-plan:
    put:
      tags:
        - Project Area Floor Plans
      summary: Put Floor Plan
      operationId: ProjectAreaFloorPlansController_putFloorPlan_v1
      parameters:
        - name: workspaceId
          required: true
          in: path
          schema:
            type: string
        - name: projectId
          required: true
          in: path
          schema:
            type: string
        - name: areaId
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PutProjectAreaFloorPlanDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectAreaFloorPlanResponseDto'
      security:
        - bearer: []
components:
  schemas:
    PutProjectAreaFloorPlanDto:
      type: object
      properties:
        salt:
          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)$
        version:
          anyOf:
            - type: integer
              exclusiveMinimum: 0
              maximum: 9007199254740991
            - type: 'null'
      required:
        - salt
        - version
      additionalProperties: false
    ProjectAreaFloorPlanResponseDto:
      type: object
      properties:
        id:
          type: string
        areaId:
          type: string
        imageUrl:
          type: string
        filename:
          type: string
        version:
          type: number
        pins:
          type: array
          items:
            $ref: '#/components/schemas/FloorPlanPinResponseDto'
        placement:
          type: array
          items:
            $ref: '#/components/schemas/FloorPlanPlacementResponseDto'
      required:
        - id
        - areaId
        - imageUrl
        - filename
        - version
        - pins
        - placement
    FloorPlanPinResponseDto:
      type: object
      properties:
        id:
          type: string
        allocationId:
          type: string
        slotId:
          type: string
        x:
          type: string
        'y':
          type: string
        version:
          type: number
      required:
        - id
        - allocationId
        - slotId
        - x
        - 'y'
        - version
    FloorPlanPlacementResponseDto:
      type: object
      properties:
        allocationId:
          type: string
        slotId:
          type: string
        quantity:
          type: string
        pinned:
          type: number
      required:
        - allocationId
        - slotId
        - quantity
        - pinned
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````