openapi: 3.1.0 info: title: WegoWise Apartments API description: The WegoWise API (now Comply by Measurabl) is built on REST. It enables building owners, property managers, and energy service providers to programmatically manage their building portfolio, track utility meter data, and benchmark energy and water performance across multifamily and commercial properties. All responses are delivered as JSON. Authentication uses OAuth 1.0 for private endpoints. version: 1.0.0 contact: name: WegoWise Support url: https://www.wegowise.com/ license: name: Proprietary url: https://www.wegowise.com/terms servers: - url: https://www.wegowise.com description: WegoWise Production API security: - oauth1: [] tags: - name: Apartments description: Manage apartment and unit records within buildings paths: /api/v1/wego_pro/buildings/{id}/apartments: get: operationId: listApartments summary: List Apartments description: Returns all apartments within a specific building. tags: - Apartments parameters: - $ref: '#/components/parameters/id' responses: '200': description: List of apartments content: application/json: schema: type: array items: $ref: '#/components/schemas/Apartment' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createApartment summary: Create Apartment description: Creates a new apartment within a building. tags: - Apartments parameters: - $ref: '#/components/parameters/id' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApartmentInput' responses: '201': description: Apartment created successfully content: application/json: schema: $ref: '#/components/schemas/Apartment' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' /api/v1/wego_pro/apartments/{id}: get: operationId: getApartment summary: Get Apartment description: Returns details for a specific apartment. tags: - Apartments parameters: - $ref: '#/components/parameters/id' responses: '200': description: Apartment details content: application/json: schema: $ref: '#/components/schemas/Apartment' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' put: operationId: updateApartment summary: Update Apartment description: Updates an existing apartment record. tags: - Apartments parameters: - $ref: '#/components/parameters/id' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApartmentInput' responses: '200': description: Updated apartment content: application/json: schema: $ref: '#/components/schemas/Apartment' '401': $ref: '#/components/responses/Unauthorized' delete: operationId: deleteApartment summary: Delete Apartment description: Deletes an apartment and all associated meters and data. tags: - Apartments parameters: - $ref: '#/components/parameters/id' responses: '204': description: Apartment deleted successfully '401': $ref: '#/components/responses/Unauthorized' components: schemas: Error: type: object properties: error: type: string description: Error message code: type: integer ApartmentInput: type: object properties: unit_number: type: string area: type: number bedrooms: type: integer required: - unit_number Apartment: type: object description: An apartment or residential unit within a building properties: id: type: integer unit_number: type: string description: Unit designation (e.g., "1A", "203") building_id: type: integer area: type: number description: Unit area in square feet bedrooms: type: integer occupants: type: integer parameters: id: name: id in: path required: true schema: type: integer description: Resource identifier responses: Unauthorized: description: Authentication credentials missing or invalid content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: Invalid request parameters content: application/json: schema: $ref: '#/components/schemas/Error' NotFound: description: Requested resource not found content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: oauth1: type: http scheme: oauth description: OAuth 1.0 authentication required for private endpoints externalDocs: description: WegoWise API Documentation url: https://www.wegowise.com/api