Getting Started with Development
Fentrica provides integration capabilities for third-party applications that want to connect with our smart building infrastructure — including smart spaces, IoT devices, access control, and real-time device communication.
Integration Options
Integrate your product with Fentrica
If you want to integrate your product (e.g. access control system, hotel management software, property management software) with the Fentrica platform, please contact our support team to find the best and most secure integration path for your use case.
Contact support@fentrica.com to discuss your integration requirements. Our team will help you choose the right approach based on your product and security needs.
Integrate Fentrica smart spaces into your product
If you want to embed Fentrica smart spaces — real-time device controls, sensors, climate, lighting, doors, and more — into your own application, follow this guide.
Case Study: Eften Living
See how Fentrica smart spaces are integrated into the Eften Living white-label tenant app, providing residents with full smart home control directly from a branded mobile application.
Case Study: Kookon
Explore how Kookon uses Fentrica web components to integrate smart storages and smart spaces into their custom application. The mobile app is a core part of their smart storage business, enabling seamless user access, security, and facility management.
Prerequisites
Before your application can connect to Fentrica smart spaces, the following must be in place:
- Custom Authentication — Your application must implement JWKS-based authentication and user synchronization with the Fentrica platform. Contact support to set this up.
- Service Connection — A service connection must be established between your application and the Fentrica platform. This grants your authenticated users access to assigned smart spaces and devices.
- Fetch Units & Devices — Use the Service Connection API to retrieve the smart space units and devices your user has access to.
- Connect to Devices — Establish real-time WebSocket connections to each device using the
@larva.io/clouddevicelibrary. - Render UI Components — Load and render device controls using
@larva.io/webcomponentsin your React, Vue, or vanilla JS application.
Service Connection API
Once authentication and service connection are configured, your application can fetch the units and devices assigned to the authenticated user.
Server
The API is available at:
https://api.building.fentrica.com/orgs
The /orgs path prefix identifies the Organizations microservice — all service connection endpoints are served from this microservice.
Endpoint
GET https://api.building.fentrica.com/orgs/orgs/:orgId/services/connections/:serviceConnectionExternalId/access-policies/:accessPolicyExternalId/views/units-devices
CORS Policy
The API is protected with CORS. During development, requests are allowed from:
capacitor://— Capacitor native app shellhttp://localhost:8080— local development server
Any custom domain or cloud-hosted application must be whitelisted by our support team before it can make API requests. Contact support to register your origin.
API requests from non-whitelisted origins will be blocked by the browser. Make sure your origin is registered before deploying to production.
Authentication
Requests must include a valid tenant JWT token issued through the JWKS authentication flow.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
orgId | string | Organization identifier |
serviceConnectionExternalId | string | External ID of the service connection |
accessPolicyExternalId | string | External ID of the access policy |
Response
Returns an array of units with their associated devices:
[
{
"id": "unit-uuid",
"name": "Apartment 301",
"devices": [
{
"id": "device-uuid",
"serialNumber": "FEN-A1B2C3"
}
]
},
{
"id": "unit-uuid-2",
"name": "Apartment 302",
"devices": [
{
"id": "device-uuid-2",
"serialNumber": "FEN-D4E5F6"
}
]
}
]
Each unit represents a smart space, and each device is a Fentrica edge device (controller) that your application connects to for real-time control.
Access is scoped by the user's access policy. The API only returns units and devices the authenticated user is authorized to interact with.
Next Steps
- Cloud Device Connection — Connect to devices via WebSocket
- Web Components — Render device controls in your app