openapi: 3.1.0 info: title: Fieldwire Account Actual Costs Floorplans API description: 'Account-scoped (super) endpoints used to authenticate, exchange the long-lived API key (refresh token) for a short-lived JWT access token, and manage account-level users, roles, attachments, data types, custom stamps, account form templates, and project transfers. All requests target the global super host: `https://client-api.super.fieldwire.com`. Project-scoped reads/writes use the regional Projects API (`client-api.us.fieldwire.com` or `client-api.eu.fieldwire.com`). ' version: v3.1 contact: name: Fieldwire Developer Support url: https://developers.fieldwire.com/ license: name: Fieldwire Terms of Service url: https://www.fieldwire.com/terms/ servers: - url: https://client-api.super.fieldwire.com description: Global Super Host security: - BearerAuth: [] tags: - name: Floorplans description: Floorplan lifecycle, hierarchy, and collections. paths: /projects/{project_id}/floorplans: get: operationId: getFloorplansInProject summary: Get Floorplans In Project tags: - Floorplans parameters: - $ref: '#/components/parameters/ProjectId' responses: '200': description: Floorplan list. content: application/json: schema: type: array items: $ref: '#/components/schemas/Floorplan' post: operationId: createFloorplanInProject summary: Create Floorplan In Project description: Create a new floorplan; sheets are uploaded separately via the Attachments API. tags: - Floorplans parameters: - $ref: '#/components/parameters/ProjectId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/FloorplanCreate' responses: '201': description: Created floorplan. content: application/json: schema: $ref: '#/components/schemas/Floorplan' /projects/{project_id}/floorplans/{floorplan_id}: get: operationId: getFloorplanById summary: Get Floorplan By ID tags: - Floorplans parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/FloorplanId' responses: '200': description: Floorplan. content: application/json: schema: $ref: '#/components/schemas/Floorplan' patch: operationId: updateFloorplanById summary: Update Floorplan By ID tags: - Floorplans parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/FloorplanId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/FloorplanUpdate' responses: '200': description: Updated floorplan. content: application/json: schema: $ref: '#/components/schemas/Floorplan' components: schemas: FloorplanCreate: type: object required: - name properties: name: type: string parent_id: type: integer format: int64 floorplan_collection_id: type: integer format: int64 Floorplan: type: object properties: id: type: integer format: int64 project_id: type: integer format: int64 name: type: string sheet_id: type: integer format: int64 parent_id: type: integer format: int64 description: Parent floorplan for nested collections. floorplan_collection_id: type: integer format: int64 position: type: number format: double created_at: type: string format: date-time updated_at: type: string format: date-time FloorplanUpdate: type: object properties: name: type: string parent_id: type: integer format: int64 floorplan_collection_id: type: integer format: int64 parameters: FloorplanId: name: floorplan_id in: path required: true schema: type: integer format: int64 ProjectId: name: project_id in: path required: true schema: type: integer format: int64 securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT description: 'Send the short-lived access token returned by `POST /api_keys/jwt` as `Authorization: Bearer `. Also include the `Fieldwire-Version` request header and `Content-Type: application/json`. '