The payload is valid JSON and matches the Web API documentation.
My API token is valid (I can list locks and list current authorizations without any issues).
The Smart Lock (ID: 18298712180) has a Keypad 2 paired and working (confirmed inside the Nuki app).
The PIN format is a random 6-digit number, not reused.
Problem:
Every time I try to create this type: 13 authorization, I receive the following error from the Nuki Web API:
Error while creating PIN on Nuki Web API:
{
code: 422,
description: 'The server understands the content type of the request entity and the syntax of the request entity is correct but was unable to process the contained instructions',
reasonPhrase: 'Unprocessable Entity'
}
This clearly shows that:
The server accepts the content type and syntax (so no formatting issues).
The server refuses to process the instructions in the payload itself (application-level rejection).
Questions:
Is it currently possible to create a new type: 13 (Keypad PIN) on a Keypad 2 device using the Nuki Web API?
If not, is this a known limitation that Keypad 2 PINs must be created via Bluetooth only?
I appreciate your help clarifying this.
We are building a system where users automatically receive temporary access PINs (for a practice room booking system), so understanding the full capability of the Nuki Web API vs Bluetooth API is critical for us.
Error while creating PIN on Nuki Web API: {
nuki-app | code: 422,
nuki-app | description: 'The server understands the content type of the request entity and the syntax of the request entity is correct but was unable to process the contained instructions',
nuki-app | homeRef: '/',
nuki-app | reasonPhrase: 'Unprocessable Entity',
nuki-app | uri: 'http://www.webdav.org/specs/rfc2518.html#STATUS_422'
nuki-app | }
with a valid Bearer token and the correct Content-Type: application/json.
However, the server still returns the same 422 Unprocessable Entity error:
{
"code": 422,
"description": "The server understands the content type of the request entity and the syntax of the request entity is correct but was unable to process the contained instructions"
}
I mportant Details:
The Smart Lock (ID: 18298712180) has a Keypad 2 paired and working.
My token is working for other API endpoints (lock listing, authorization listing, etc).
The "name" is within 20 characters.
The "code" is a unique 6-digit number.
The "allowedFromDate" and "allowedUntilDate" are in correct ISO 8601 format.
Questions:
Are there additional hidden requirements for creating a type: 13 authorization via Web API?
Is type: 13 fully supported for Keypad 2 devices when using the Web API, or only via Bluetooth API?
Could there be limitations with certain firmware versions or specific Smart Lock configurations?
Thank you for your support —
I just want to confirm the official possibility to create Keypad 2 PINs over Web API.
POST https://api.nuki.io/smartlock/18298712180/auth
Response from Nuki Web API:
{
"code": 422,
"description": "The server understands the content type of the request entity and the syntax of the request entity is correct but was unable to process the contained instructions",
"homeRef": "/",
"reasonPhrase": "Unprocessable Entity",
"uri": "http://www.webdav.org/specs/rfc2518.html#STATUS_422"
}
Important:
The PIN (325154) is a unique 6-digit code containing only digits 1–9.
The "name" is short (only 9 characters).
The token works fine for other endpoints (lock listing, authorization listing).
I am using proper Content-Type headers.
Additional Information:
You can also view my project code here if needed :
If I understand correctly, you’re trying to create authorisations and not update them, correct? If so, please try a PUT request instead of a POST request.