Version 1
Introduction
Codelocks Connect API is organised around REST.
Codelocks has an PHP example of using the API with Guzzle.
DEVELOPER PROGRAMME
Request a 14 day API trial to join the Codelocks Developer Programme (charges apply).
METHODS
NetCode
Generate NetCode – Kitlock
Generate NetCode – K3Connect
Utility
Lock Initialisation – Kitlock
Lock Durations and Modes
Lock Duration
Utility – K3
List K3 Connect Locks
Get K3 Lock
K3 Account Info
List Smart Phone Clients
Add Smart Phone Client
Update Smart Phone Client
Suspend/Restore Smart Phone Clients
Delete Smart Phone Client
K3 Lock Audit
K3 Help and Active Period Schema
Authentication
The Codelocks Connect API uses API keys to authenticate requests. The API key will need to be passed with each request.
Your API keys carry many privileges, so be sure to keep them secure! Do not share your private API key in publicly accessible areas such as GitHub, client-side code etc.
If your API key is compromised, please contact Codelocks Customer Support immediately so that it can be suspended.
All API requests are made of HTTPS. Calls over plain HTTP will fail. API requests without authentication will fail.
API AUTHENTICATION
You will need to pass your API key in a HTTP header value 'x-api-key' with each request made to Codelocks Connect API.
Usage
All API Keys are assigned to subscription plans which will include a monthly usage quota for API calls split between NetCode calls and Utility calls (a different quota limit for each). If you are finding that you are exceeding or might exceed your assigned usage plan. then you can either upgrade your subscription or purchase a usage bolt-on for the current month.
Please contact Codelocks Sales for more information and pricing.
Subscription Plan | NetCode calls per month | Utility calls per month |
---|---|---|
Codelocks Connect API – Business 1 | 100 | 1000 |
Codelocks Connect API – Business 2 | 315 | 1000 |
Codelocks Connect API – Enterprise 1 | 6000 | 3000 |
Codelocks Connect API – Enterprise 2 | 12000 | 3000 |
Codelocks Connect API – Pro 1 | 613 | 2000 |
Codelocks Connect API – Pro 2 | 1250 | 2000 |
Codelocks Connect API – Pro 3 | 2417 | 2000 |
NetCode
GET …/netcode/{id}
Generate a NetCode for a NetCode compatible KitLock.
Parameters
id path string required
This is the timecode value used in the initialisation of the lock. It will need to be in the format ‘YYYMMddhhmm’. All four digits of the year are required here but not in the initialisation sequence.
example value: 202011161623
start query string required
This is the start time of the NetCode. Hour length NetCodes must start on the hour and day length codes must start at midnight. Format: yyyy-MM-dd hh:mm
example value: 2020-10-01 16:00
duration query string required
This is the duration. You can use the durations endpoint to see the available durations for your lock model and corresponding start times.
example value: 0
lockmodel query string required
This is the lock model. Allowed values are KL1060, KL1060C2, KL1060G3, KL1550 or K3CONNECT
example value: KL1060
identifier query string required
This is the random six-digit numerical identifier used in the initialisation sequence for the lock.
example value: 12345
Additional Notes
The value that we want out of the response is the ‘ActualNetCode’.
Historical information about NetCode requested via API is not kept by Codelocks.
Each request for a NetCode is counted towards the Usage total even if the parameters are the same as a previous NetCode and the request returns the same response.
So long as the same parameters are supplied then the same NetCode will be returned.
Multiple valid NetCodes will be available on any lock running the NetCode algorithm just with different start times and durations.
When KitLock batteries are replaced, the lock will lose its real time clocks settings. This will need to be updated before NetCodes can be used. The lock will retain the NetCode initialisation so it does not need to be reset to continue NetCode operation.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/n/1/netcode/202011161623?start=2020-10-01%2016:00&duration=4&lockmodel=KL1060C2&identifier=451254' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"Startdate": "string",
"DurationHours": integer,
"DurationDays": integer,
"Mode": "string",
"SubMode": "string",
"Timecode": "string",
"ActualNetcode": "string",
"Resultstatus": "string",
"LockId": "string",
"Expires": "string",
"Startdata": {
"datetime": {
"date": "string",
"timezone_type": "string",
"timezone": "string"
},
"original": "string",
"date_ymd": "string",
"date_dmy": "string",
"date_mdy": "string",
"time_his": "string",
"time_hi": "string",
"time_h": "string",
"timezone": "string"
}
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
GET …/netcode/{id}
Generate a NetCode for K3Connect compatible Smart Lock.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06050408434e47533039303138303136
start query string required
This is the start time of the NetCode. Hour length NetCodes must start on the hour and day length NetCodes must start at midnight. Format: yyyy-MM-dd hh:mm
example: 2020-10-01 16:00
duration query string required
This is the duration. You can use the durations endpoint to see the available for your lock model and corresponding start times
example: 0
lockmodel query string required
This is the lock model. Allowed values are: KL1060, KL1060C2, KL1060G3, KL1550 or K3CONNECT.
example: K3CONNECT
identifer query string required
This is the account access key value from K3 Connect app.
example: 2ym1989dzx
Additional Notes
The value that we want out of the response is the ‘ActualNetCode’.
Historical information about NetCode requested via API is not kept by Codelocks.
Each request for a NetCode is counted towards the Usage total even if the parameters are the same as a previous NetCode and the request returns the same response.
So long as the same parameters are supplied then the same NetCode will be returned.
Multiple valid NetCodes will be available on any lock running the NetCode algorithm just with different start times and durations.
If the access key associated with a lock is changed then you will be unable to generate NetCodes until you update your requests with the new access key.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/n/1/netcode/06050408434e47533039303138303136?start=2020-10-01%2016:00&duration=4&lockmodel=K3CONNECT&identifier=2ym1989dzx' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"Startdate": "string",
"DurationHours": integer,
"DurationDays": integer,
"Mode": "string",
"SubMode": "string",
"Timecode": "string",
"ActualNetcode": "string",
"Resultstatus": "string",
"LockId": "string",
"Expires": "string",
"Startdata": {
"datetime": {
"date": "string",
"timezone_type": "string",
"timezone": "string"
},
"original": "string",
"date_ymd": "string",
"date_dmy": "string",
"date_mdy": "string",
"time_his": "string",
"time_hi": "string",
"time_h": "string",
"timezone": "string"
}
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
Utility
Initialisation
GET …/init
Return the initialisation sequence for a given lock type. Note that the initialisation sequence must be entered into the lock immediately as the sequence sets the date and time of the lock.
Parameters
lockmodel query string optional
Choose from the following models: KL1060, KL1060C2 or KL1550.
example value: KL1060
mastercode query string optional
The provided master-code will be used in the initialisation sequence. If not supplied then the factory default master code will be return in the initialisation sequence.
example value: 12345678
timezone query string optional
Timezone name that the lock (as per time zone list).
example value: Europe/London
randomid query string optional
Generate a random six-digit numeric identifier for KL1060 and KL1550 or a Group ID + Member ID for KL1060C2. Valid values: true or false. False will return default identifier 123456
example value: KL1060
Additional Notes
This method is only available for the KL1060, KL1060C2 and KL1550.
This method always returns initialisation sequences in UTC.
Lock initialisation of CL5510 and CL4510 (K3Connect Lock Type) locks is carried out in the K3 Connect Smart Phone app.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/init?lockmodel=Kl1060&mastercode=12345678&timezone=Europe/London&randomid=true' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"DefaultMastercode": "string",
"InitSeqFormat": "string",
"InitSeqFormatDesc": "string",
"InitSeq": "string",
"TimeCode": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
Durations
GET …/durations
Provides the available Duration IDs for a given lock model or all the unique modes for a given lock model.
Parameters
lockmodel query string optional
Choose from the following models: KL1060, KL1060C2 or KL1550.
example value: KL1060
operation query string optional
Allowed values: durations or modes
example value: MODES
Additional Notes
Specify DURATIONS as operation to list the available durations for the specified lock model. Click here for more information on NetCode durations.
Specify MODES as operation to list the available NetCode modes for the specified lock model. Click here for more information on NetCode modes.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/durations?lockmodel=KL1060&operation=MODES' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
[
{
"DurationID": integer,
"Mode": "string",
"SubMode": "string",
"DurationDays": integer,
"DurationHours": integer,
"LockModels": "string"
}...
]
or
[
{
"Mode": "string",
"SubMode": "string",
"LockModels": "string"
}...
]
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
Duration
GET …/duration/{id}
Get information about a given duration ID. Includes any rules for generating a NetCode with this duration and Lock Model.
Parameters
id path string optional
The Duration ID.
example value: 0
lockmodel query string optional
Choose from the following models: KL1060, KL1060C2 or KL1550.
example value: KL1060
Additional Notes
NetCode durations are lock model specific. Some lock models may not support all NetCode modes.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/duration/0?lockmodel=KL1060' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"LockModel": "string",
"DurationID": integer,
"Rules": [
{
"ApplyDST": integer,
"ConvertToUTC": integer,
"RestrictedStartTime": "string"
}
],
"Duration": [
{
"Days": integer,
"Hours": integer
}
],
"Mode": [
{
"Name": "string",
"SubMode": "string"
}
]
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
K3Connect
GET …/k3connect
List all K3Connect locks
Parameters
accesskey query string required
This is the account access key from the K3 Connect app.
example: 2ym1989dzx
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
This method will list all the locks on the account associated with the access key; results will match the list of locks in the K3 Connect app for the account.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/k3connect?accesskey=2ym1989dzx' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
[
{
"LockId": "string",
"LockName": "string",
"BatteryStatus": "string",
"BatteryUpdated": "string",
"Manufacturer": "string",
"ModelName": "string",
"FirmwareVersion": "string",
"Timezone": "string",
"TimezoneOffset": "string",
"DstStart": "string",
"DstEnd": "string",
"DstTime": "string",
"PairingDate": "string"
},...
]
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
GET …/k3connect/{id}
Return a single K3Connect lock
Parameters
accesskey query string required
This is the account access key from K3 Connect app.
example: 2ym1989dzx
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06050408434e47533039303138303136
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/k3connect/06050408434e47533039303138303136?accesskey=2ym1989dzx' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"LockId": "string",
"LockName": "string",
"BatteryStatus": "string",
"BatteryUpdated": "string",
"Manufacturer": "string",
"ModelName": "string",
"FirmwareVersion": "string",
"Timezone": "string",
"TimezoneOffset": "string",
"DstStart": "string",
"DstEnd": "string",
"DstTime": "string",
"PairingDate": "string",
"LockLocation": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | No lock found. |
500 | Internal server error |
502 | Tertiary endpoint error |
GET …/k3connect/account
Get K3Connect Account Info
Parameters
accesskey query string required
This is the account access key from K3 Connect app.
example: 2ym1989dzx
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/k3connect/account?accesskey=2ym1989dzx' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
[
{
"email": "string",
"spccmstatus": "string"
}
]
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
GET …/k3connect/{id}/clients
Get K3Account Smart Phone Client info for a specified lock.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06040408434e47533039303539303230
accesskey query string required
This is the account access key from K3 Connect app.
example: 2ym1989dzx
page query string required
Page number to retrieve.
example: 1
perpage query integer required
Results to return per page.
example: 50
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
If no K3Connect Smart Phone Clients exist for the lock specified, then an empty array is returned.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/k3connect/06040408434e47533039303539303230/clients?accesskey=2ym1989dzx&page=1&perpage=10' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"count": integer,
"clients": [
{
"email": "string",
"lockid": "string",
"status": "string",
"accesstype": "string",
"activeperiods": [
{
"0-9": {
"enabled": true,
"starts": "string",
"ends": "string",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
}
}
]
},...
]
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
POST …/k3connect/{id}/client
Create a new K3Connect Smart Phone Client on a given account and lock. Creating a Client sends an invitation to the user IF they are already registered on the K3Connect system. They must accept the invitation to become a Client.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06040408434e47533039303539303230
accesskey formData string required
This is the account access key from the K3 Connect app.
example: 2ym1989dzx
clientemail formData string required
Registered email address of the client to add. Must be a registered K3 Connect account.
example: example@codelocks.com
activeperiods formData string required
JSON active periods.
example
accesstype formData string required
Allowed values: STANDARD or ONE_TIME
example: STANDARD
message formData string required
Message to send with the invite notification. Limited to 500 characters and 0-9 A-Z _,-.() characters only
example
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
REQUEST
curl --location --request POST 'https://api-connect.codelocks.io/u/1/k3connect/06040408434e47533039303539303230/client' \
--header 'x-api-key: <YOUR-API-KEY>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'accesskey=2ym1989dzx' \
--data-urlencode 'clientemail=example@codelocks.com' \
--data-urlencode 'activeperiods={
"0": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"1": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"2": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"3": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"4": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"5": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"6": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"7": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"8": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"9": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
}
}' \
--data-urlencode 'accesstype=STANDARD' \
--data-urlencode 'message=This is a test message.'
RESPONSE
{
"result": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
PUT …/k3connect/{id}/client
Update a K3Connect Smart Phone client.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06040408434e47533039303539303230
accesskey formData string required
This is the account access key from the K3 Connect app.
example: 2ym1989dzx
clientemail formData string required
Registered email address of the client to add. Must be a registered K3 Connect account.
example: example@codelocks.com
activeperiods formData string required
JSON active periods.
example
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
REQUEST
curl --location --request PUT 'https://api-connect.codelocks.io/u/1/k3connect/06040408434e47533039303539303230/client' \
--header 'x-api-key: <YOUR-API-KEY>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'accesskey=2ym1989dzx' \
--data-urlencode 'clientemail=example@codelocks.com' \
--data-urlencode 'activeperiods={
"0": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": false,
"fri": true,
"sat": true,
"sun": true
},
"1": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"2": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"3": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"4": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"5": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"6": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"7": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"8": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
},
"9": {
"enabled": true,
"starts": "00:00",
"ends": "23:59",
"mon": true,
"tue": true,
"wed": true,
"thu": true,
"fri": true,
"sat": true,
"sun": true
}
}'
RESPONSE
{
"result": "string",
"lockid": "string",
"email": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
PATCH …/k3connect/{id}/client
Suspend or restore a K3Connect Smart Phone Client.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method..
example: 06040408434e47533039303539303230
accesskey formData string required
This is the account access key from the the K3 Connect app.
example: 2ym1989dzx
clientemail formData string required
Registered email address of the client to add. Must be a registered K3 Connect account.
example: example@codelocks.com
action formData string required
Allowed values: SUSPEND or RESTORE.
example
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
REQUEST
curl --location --request PATCH 'https://api-connect.codelocks.io/u/1/k3connect/06040408434e47533039303539303230/client' \
--header 'x-api-key: <YOUR-API-KEY>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'accesskey=2ym1989dzx' \
--data-urlencode 'clientemail=example@codelocks.com' \
--data-urlencode 'action=RESTORE'
RESPONSE
{
"result": "string",
"lockid": "string",
"email": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
DELETE …/k3connect/{id}/client
Delete a K3Connect Smart Phone Client.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06040408434e47533039303539303230
accesskey formData string required
This is the account access key from the K3 Connect app.
example: 2ym1989dzx
clientemail formData string required
Registered email address of the client to add. Must be a registered K3 Connect account..
example: example@codelocks.com
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
REQUEST
curl --location --request DELETE 'https://api-connect.codelocks.io/u/1/k3connect/06040408434e47533039303539303230/client' \
--header 'x-api-key: <YOUR-API-KEY>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'accesskey=2ym1989dzx' \
--data-urlencode 'clientemail=example@codelocks.com'
RESPONSE
{
"result": "string",
"lockid": "string",
"email": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
GET …/k3connect/{id}/audit
Get audit information for a given lock.
Parameters
id path string required
This is the individual K3Connect lock id. It can be retrieved from the GET …/k3connect method.
example: 06050408434e47533039303138303136
accesskey query string required
This is the account access key from the K3 Connect app.
example: 2ym1989dzx
page query integer required
some text here.
example
perpage query integer required
some text here.
example
pageorder query string required
some text here.
example
Additional Notes
The K3Connect access key can be retrieved from the User section of the K3Connect app.
The Lock Audit information is not real time. Lock audit information is updated when the lock is synchronised via Bluetooth®, unlocked via Bluetooth® or connected via connected Wi-Fi Gateway.
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/k3connect/06040408434e47533039303539303230/audit?accesskey=2ym1989dzx&page=1&perpage=10&pageorder=descending' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
[
{
"AuditEntryID": integer,
"LockID": "string",
"DateEntered": "string",
"EntryType": "string",
"EntryText": "string"
}
]
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |
GET …/k3connect/help/spcconfig
Get sample JSON and schema for K3Connect active period data structure.
Parameters
No parameters required
REQUEST
curl --location --request GET 'https://api-connect.codelocks.io/u/1/k3connect/help/spcconfig' \
--header 'x-api-key: <YOUR-API-KEY>'
RESPONSE
{
"activeperiods": "string"
}
RESPONSE CODES
Code | Status |
---|---|
200 | OK |
400 | Invalid data supplied |
403 | Missing or invalid authentication key |
404 | Missing required parameter |
500 | Internal server error |
502 | Tertiary endpoint error |