Access API Reference
API endpoints for managing access.
AlgoPIN
Create a Daily AlgoPIN
https://api.igloohome.co/home/devices/{deviceId}/algopin/dailyReturns a duration (Daily) AlgoPIN code.
Allowable Range: 29 to 367 days (in days only, 29.5 days not allowed)
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| deviceId | string | Yes |
Body Parameters
varianceinteger required- Allowed values:
1,2,3
- Allowed values:
startDatestring<date-time> required
Date and time when the permission starts. Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only). Note: The hour ('hh') on startDate and the hour ('hh') on endDate must match- Example:
2022-01-01T12:00:00+08:00
- Example:
endDatestring<date-time> required
Date and time when the permission ends. Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only). Note: The hour ('hh') on startDate and the hour ('hh') on endDate must match- Example:
2022-05-01T12:00:00+08:00
- Example:
accessNamestring required
Name or short description of the access- Example:
Maintenance guy
- Example:
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden, accessToken scope must contain 'igloohomeapi/algopin-daily'
'{ message: 'not found device' }'
Conflict. The device's property record is missing a timezone (data integrity guard).
Unsupported Media Type
'{ error: 'this device type does not support the feature.' }'. The device SKU does not support AlgoPIN codes.
Internal Server Error
Response body
pinstring- Example:
4642226
- Example:
pinIdstring- Example:
CC0035C33E9B103A
- Example:
Response body
errorstring
Response body
errorstring
Response body
messagestring
Response body
messagestring
Response body
errorstring
No example response recorded for this status code.
Create an Hourly AlgoPIN
https://api.igloohome.co/home/devices/{deviceId}/algopin/hourlyReturns a duration (Hourly) AlgoPIN code.
Allowable Range: 1 to 672 hours
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| deviceId | string | Yes |
Body Parameters
varianceinteger required- Allowed values:
1,2,3
- Allowed values:
startDatestring<date-time> required
Date and time when the permission starts. Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only). May be up to 1 hour in the past.- Example:
2022-01-01T14:00:00+08:00
- Example:
endDatestring<date-time> required
Date and time when the permission ends. Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only). Maximum Value: startDate + 672 hours- Example:
2022-01-02T12:00:00+08:00
- Example:
accessNamestring required
Name or short description of the access- Example:
Maintenance guy
- Example:
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden, accessToken scope must contain 'igloohomeapi/algopin-hourly'
'{ message: 'not found device' }'
Conflict. The device's property record is missing a timezone (data integrity guard).
Unsupported Media Type
'{ error: 'this device type does not support the feature.' }'. The device SKU does not support AlgoPIN codes.
Internal Server Error
Response body
pinstring- Example:
4642226
- Example:
pinIdstring- Example:
CC0035C33E9B103A
- Example:
Response body
errorstring
Response body
errorstring
Response body
messagestring
Response body
messagestring
Response body
errorstring
No example response recorded for this status code.
Create a One-Time AlgoPIN
https://api.igloohome.co/home/devices/{deviceId}/algopin/onetimeReturns a one-time AlgoPIN code (OTP).
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| deviceId | string | Yes |
Body Parameters
varianceinteger required
1–10. Values 6–10 require newer lock firmware; some older locks support them after a firmware update, otherwise they accept 1–5.startDatestring<date-time> required
Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only) and now or later.- Example:
2022-01-01T00:00:00+08:00
- Example:
accessNamestring required- Example:
Maintenance guy
- Example:
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden, accessToken scope must contain 'igloohomeapi/algopin-onetime'
'{ message: 'not found device' }'
Conflict. The device's property record is missing a timezone (data integrity guard).
Unsupported Media Type
'{ error: 'this device type does not support the feature.' }'. The device SKU does not support AlgoPIN codes.
Internal Server Error
Response body
pinstring- Example:
4642226
- Example:
pinIdstring- Example:
CC0035C33E9B103A
- Example:
Response body
errorstring
Response body
errorstring
Response body
messagestring
Response body
messagestring
Response body
errorstring
No example response recorded for this status code.
Create a Passage AlgoPIN
https://api.igloohome.co/home/devices/{deviceId}/algopin/passageAllows unlock with AlgoPIN and keeps the lock unlocked for the duration given in the request body. Supports newer devices with the latest firmware only.
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| deviceId | string | Yes |
Body Parameters
varianceinteger required- Allowed values:
1
- Allowed values:
startDatestring<date-time> required
Date and time when the permission starts. Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only). The PIN is valid fromstartDatefordurationHourshours.- Example:
2022-01-01T12:00:00+08:00
- Example:
durationHoursinteger required
Must be between 1 and 12 hoursaccessNamestring required
Name or short description of the access- Example:
Maintenance guy
- Example:
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
'{ message: 'not found device' }'
Conflict. The device's property record is missing a timezone (data integrity guard).
Unsupported Media Type
'{ error: 'this device does not support passage PIN' }'. The device does not support passage AlgoPIN codes.
Internal Server Error
Response body
pinstring- Example:
4642226
- Example:
pinIdstring- Example:
CC0035C33E9B103A
- Example:
Response body
errorstring
Response body
errorstring
Response body
messagestring
Response body
messagestring
Response body
errorstring
No example response recorded for this status code.
Create a Permanent AlgoPIN
https://api.igloohome.co/home/devices/{deviceId}/algopin/permanentReturns a permanent AlgoPIN code.
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| deviceId | string | Yes |
Body Parameters
varianceinteger required
1–10. Values 6–10 require newer lock firmware; some older locks support them after a firmware update, otherwise they accept 1–5.startDatestring<date-time> required
Must be in formatYYYY-MM-DDTHH:00:00+hh:mm(hour resolution only) and now or later.- Example:
2022-01-01T00:00:00+08:00
- Example:
accessNamestring required- Example:
Maintenance guy
- Example:
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden, accessToken scope must contain 'igloohomeapi/algopin-permanent'
'{ message: 'not found device' }'
Conflict. The device's property record is missing a timezone (data integrity guard).
Unsupported Media Type
'{ error: 'this device type does not support the feature.' }'. The device SKU does not support AlgoPIN codes.
Internal Server Error
Response body
pinstring- Example:
4642226
- Example:
pinIdstring- Example:
CC0035C33E9B103A
- Example:
Response body
errorstring
Response body
errorstring
Response body
messagestring
Response body
messagestring
Response body
errorstring
No example response recorded for this status code.
eKey
Generate eKey
https://api.igloohome.co/home/devices/{deviceId}/ekeyCreate an eKey.
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| deviceId | string | Yes |
Body Parameters
startDatestring<date-time> required
User is able to control the lock starting this date. Seconds must be:00(minute resolution).- Example:
2021-01-03T12:00:00+08:00
- Example:
endDatestring<date-time> required
User is unable to control the lock starting this date. Seconds must be:00(minute resolution), and must be afterstartDate.- Example:
2021-11-03T12:00:00+08:00
- Example:
permissionsarray of string required
List of permissions to grant on this eKey. Required. There is no default, although the field can look optional.- Example:
["UNLOCK"]
- Example:
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden, accessToken scope must contain 'igloohomeapi/create-ekey-access'
'{ message: 'not found device' }' or '{ message: 'not found property' }'
Response
Unsupported Media Type
Internal Server Error
Response body
keyIdintegerbluetoothGuestKeystring
Response body
errorstring
Response body
messagestring
No example response recorded for this status code.
iglooKey
Create iglooKey Token
https://api.igloohome.co/home/passCreates a shareable iglooKey access token that supports both online and offline unlock for one or more devices.
Body Parameters
deviceIdsarray of string requiredlabelstring requiredendsAtstring<date-time> required
Must be in the futurestartsAtstring<date-time>
Must be on or beforeendsAtactivationWindowSecondsinteger
If set, the token must be activated within this many seconds ofstartsAt(or now); the resulting deadline must not exceedendsAt.offlineAccessSecondsinteger
Grants offline access validity, in seconds (max 24 hours)
Request Example
Responses
Created
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden
Not Found
Unsupported Media Type
'{ message: 'device type not supported for iglooKey', excludedIds: string[] }'
Internal Server Error
Response
Response
Response body
shareableUrlstringidstringtypestring
Token type,TOKEN_TYPE_HYBRID.endsAtstring<date-time>createdAtstring<date-time>startsAtstring<date-time>activationDeadlinestring<date-time>
Response body
errorstringmessagestring
Response body
errorstring
Response body
messagestringmissingIdsarray of string
No example response recorded for this status code.
Update iglooKey Token
https://api.igloohome.co/home/pass/{id}Updates the validity window (startsAt/endsAt) of an existing iglooKey token.
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| id | string | Yes |
Body Parameters
startsAtstring<date-time>
Must be in the futureendsAtstring<date-time>
Must be in the future and afterstartsAt
Request Example
Responses
OK
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden
Not Found
Unsupported Media Type
Internal Server Error
Response
'{ message: 'failed to update iglooKey token' }' if the upstream linking service was unreachable.
Response body
idstringtypestring
Token type,TOKEN_TYPE_HYBRID.endsAtstring<date-time>startsAtstring<date-time>activationDeadlinestring<date-time>
Response body
errorstringmessagestring
Response body
errorstring
Response body
messagestringmissingIdsarray of string
No example response recorded for this status code.
Revoke iglooKey Token
https://api.igloohome.co/home/pass/{id}Revokes an existing iglooKey token. No request body.
Path Parameters
| Parameter | Type | Required |
|---|---|---|
| id | string | Yes |
Request Example
Responses
No Content
Bad Request
Unauthorized, invalid or expired authorization token
Response
Forbidden
Not Found
Internal Server Error
'{ message: 'failed to revoke iglooKey token' }' if the upstream linking service returned a server error or an unrecognized status.
'{ message: 'failed to revoke iglooKey token' }' if the upstream linking service was unreachable.
Response body
errorstringmessagestring
Response body
errorstring
Response body
messagestringmissingIdsarray of string
No example response recorded for this status code.