Koncept & entitetsmodell
För att förstå hur access är uppbyggd i KiiOn behöver du känna till fyra begrepp och en regel om deviceId.
Hierarkin#
| Nivå | Vad det är | Exempel |
|---|---|---|
| Företag | Organisationen som äger platserna | Example Inc. |
| Plats | En adress eller anläggning under företaget | Location 1 |
| Dörr | En fysisk dörr med en uppkopplad enhet | Door A |
| Nyckel | Rätten att öppna en eller flera dörrar | Nyckel till Door A |
Ett API-konto är ett konto i den här strukturen. Det kan äga enheter (dörrarna ligger under ert eget företag) eller ha fått nyckeldelad access till andra företags dörrar — eller båda delarna.
Hur access delas#
- Egna enheter: era framtida kunder skapas som plats/dörr under ert företag. Ni administrerar strukturen.
- Nyckeldelning: dörren ligger kvar hos kunden, och en nyckel delas till ert API-konto. Kunden behåller ägarskapet.
Vilket upplägg som passar beror på affären. KiiOn sätter upp rätt struktur när integrationen aktiveras — ta med det i beskrivningen när ni begär access.
deviceId är nyckeln till upplåsning#
Själva unlock-anropet identifierar dörren med ett {deviceId}. Det är ett heltal, och det hämtas ur enhetslistan — inte ur en konfigurationsfil.
Det är fältet id i varje objekt i svaret från GET /api/user/device som fyller {deviceId} i PUT /api/device/{deviceId}/unlock. Fälten name och locationName är de ni mappar mot era egna dörrnamn.
[
{
"id": 1001,
"name": "Door A",
"locationId": 42,
"locationName": "Location 1",
"companyName": "Example Inc.",
"doorType": "Entrance",
"online": true
},
{
"id": 1002,
"name": "Door B",
"locationId": 42,
"locationName": "Location 1",
"companyName": "Example Inc.",
"doorType": "Garage",
"online": true
}
]