OpenAPI Specification
openapi: 3.0.3
info:
title: Authentication Access Management Buildings API
description: Authentication
termsOfService: urn:tos
contact: {}
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0
version: '1.0'
servers:
- url: https://auth.prod.latch.com
description: Latch Auth API base URL
tags:
- name: Buildings
description: Building operations
paths:
/v1/buildings:
get:
tags:
- Buildings
summary: List Buildings
description: Get a DOOR partner's list of buildings
operationId: listBuildings
responses:
'200':
description: Successfully retrieved list of buildings
content:
application/json:
schema:
$ref: '#/components/schemas/BuildingsResponse'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestError'
'401':
description: Invalid authorization token
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Forbidden
'404':
description: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
security:
- bearerAuth: []
components:
schemas:
Portfolio:
title: Portfolio
required:
- name
- uuid
type: object
properties:
name:
type: string
description: Name of the Portfolio
uuid:
type: string
description: Portfolio unique identifier
format: uuid
description: DOOR Portfolio object
InternalServerError:
title: InternalServerError
required:
- message
type: object
properties:
message:
type: string
enum:
- INTERNAL_SERVER_ERROR
Address:
title: Address
required:
- addressLine1
- addressLine2
- addressLine3
- city
- country
- postalCode
- state
type: object
properties:
addressLine1:
type: string
description: Address line 1
addressLine2:
type: string
description: Address line 2
addressLine3:
type: string
description: Address line 3
city:
type: string
description: City the building is located in
country:
type: string
description: Country the building is located in
postalCode:
type: string
description: Postal code of the building
state:
type: string
description: State the building is located in
description: Address of the building
UnauthorizedError:
title: UnauthorizedError
required:
- message
type: object
properties:
message:
type: string
enum:
- UNAUTHORIZED
BadRequestError:
title: BadRequestError
required:
- message
type: object
properties:
message:
type: string
enum:
- BUILDING_UUID_REQUIRED
- EMAIL_AND_PHONE_PROVIDED
- EMAIL_CAN_NOT_BE_EMPTY
- EMAIL_OR_PHONE_REQUIRED
- EMAIL_REQUIRED_FOR_PERMANENT
- END_TIME_NOT_SUPPORTED
- INVALID_END_TIME
- INVALID_PHONE
- INVALID_START_TIME
- MISSING_END_TIME
- PASSCODE_TYPE_CANT_BE_REVOKED
- USER_CAN_NOT_SHARE
BuildingsResponse:
title: BuildingsResponse
required:
- buildings
type: object
properties:
buildings:
type: array
items:
$ref: '#/components/schemas/Building'
description: Response from the buildings endpoint
Building:
title: Building
required:
- address
- name
- uuid
type: object
properties:
address:
$ref: '#/components/schemas/Address'
name:
type: string
description: Name of the Building
portfolio:
$ref: '#/components/schemas/Portfolio'
timezone:
type: string
description: Timezone of the building in IANA zone ID format
example: America/New_York
uuid:
type: string
description: Building unique identifier
format: uuid
description: DOOR Building object