# Create or update a floorplan Create a new floorplan or update an existing one Endpoint: POST /floorplans Version: 1.1.1 Security: BearerAuth ## Request fields (application/json): - `id` (string) Unique identifier for the floorplan. If provided, the floorplan will be updated; if not, a new floorplan will be created. Example: "123e4567-e89b-12d3-a456-426614174000" - `multifamily_property_id` (string, required) ID of the multifamily property this floorplan belongs to Example: "123e4567-e89b-12d3-a456-426614174000" - `name` (string) Name of the floorplan Example: "The Willow" - `bedroom_count` (integer) Number of bedrooms Example: 2 - `bathroom_count` (number) Number of bathrooms Example: 2.5 - `unit_count` (integer) Total number of units with this floorplan Example: 15 - `units_available` (integer) Number of units currently available with this floorplan Example: 3 - `market_rent` (number) Market rent for this floorplan Example: 1850 - `min_sqft` (integer) Minimum square footage for this floorplan Example: 950 - `max_sqft` (integer) Maximum square footage for this floorplan Example: 1100 - `photos` (array) Photos of the floorplan - `photos.path` (string, required) URL or path to the floorplan photo Example: "https://example.com/images/willow-floorplan.jpg" - `photos.hidden` (boolean, required) Whether the photo is hidden - `deleted` (boolean) Whether the floorplan is deleted - `description` (string) Description of the floorplan Example: "Spacious 2-bedroom layout with modern finishes" ## Response 200 fields (application/json): - `id` (string, required) Unique identifier for the floorplan Example: "123e4567-e89b-12d3-a456-426614174000" - `multifamily_property_id` (string, required) ID of the multifamily property this floorplan belongs to Example: "123e4567-e89b-12d3-a456-426614174000" - `name` (string) Name of the floorplan Example: "The Willow" - `bedroom_count` (integer) Number of bedrooms Example: 2 - `bathroom_count` (number) Number of bathrooms Example: 2.5 - `unit_count` (integer) Total number of units with this floorplan Example: 15 - `units_available` (integer) Number of units currently available with this floorplan Example: 3 - `market_rent` (number) Market rent for this floorplan Example: 1850 - `min_sqft` (integer) Minimum square footage for this floorplan Example: 950 - `max_sqft` (integer) Maximum square footage for this floorplan Example: 1100 - `photos` (array) Photos of the floorplan - `photos.path` (string, required) URL or path to the floorplan photo Example: "https://example.com/images/willow-floorplan.jpg" - `photos.hidden` (boolean) Whether the photo is hidden - `created_at` (string, required) Timestamp when the floorplan was created Example: "2023-01-15T12:00:00Z" - `updated_at` (string, required) Timestamp when the floorplan was last updated Example: "2023-01-16T14:30:00Z" - `deleted` (boolean, required) Whether the floorplan is deleted - `description` (string) Description of the floorplan Example: "Spacious 2-bedroom layout with modern finishes" ## Response 400 fields (application/json): - `error` (string, required) Error message Example: "Invalid request parameters" - `details` (array) Detailed error information Example: [{"keyword":"required","dataPath":"","schemaPath":"#/required","params":{"missingProperty":"account_id"},"message":"should have required property 'account_id'"}] ## Response 401 fields (application/json): - `error` (string, required) Error message Example: "Invalid request parameters" - `details` (array) Detailed error information Example: [{"keyword":"required","dataPath":"","schemaPath":"#/required","params":{"missingProperty":"account_id"},"message":"should have required property 'account_id'"}] ## Response 500 fields (application/json): - `error` (string, required) Error message Example: "Invalid request parameters" - `details` (array) Detailed error information Example: [{"keyword":"required","dataPath":"","schemaPath":"#/required","params":{"missingProperty":"account_id"},"message":"should have required property 'account_id'"}]