Migrated from Redmine #1514 | Author: Angela Fernandez
Status: Feedback | Priority: High, I’m very impatient | Created: 2026-01-23
Hi all,
We are integrating SimplyBook API with n8n using the JSON-RPC API and webhooks, and we are consistently encountering an issue when calling the getBookingDetails method.
Although authentication appears to work correctly, getBookingDetails always returns an “Access denied” error.
What is working correctly
We receive webhook notifications from SimplyBook with valid data:
booking_id
booking_hash
We successfully call getToken using:
getToken(company_login, api_key, sign_company)
sign_company = md5(company_login + api_key + secret_key)
The getToken call returns a valid token string.
The token is passed in subsequent requests.
The problem
When calling getBookingDetails, the API always returns:
{
“code”: -32600,
“message”: “Access denied”,
“data”:
}
This happens every time, even though:
The token is freshly generated
The company login is correct
The booking ID and booking hash come directly from the webhook
How we call getBookingDetails
Endpoint:
https://user-api.simplybook.it/
Headers:
Content-Type: application/json
X-Company-Login: greeneagle
X-Token:
Body (JSON-RPC):
{
“jsonrpc”: “2.0”,
“method”: “getBookingDetails”,
“params”: [
430,
“e307cbd8389f5f8ba61cfe5c2026fb8c”
],
“id”: 2
}
Where:
sign = md5(booking_id + booking_hash + secret_key)
Debug values from a failing request
booking_id = 430
booking_hash = 0247557e239df1ff094693c7be7907df
sign = e307cbd8389f5f8ba61cfe5c2026fb8c
Expected behavior
The API should return the booking details for the given booking ID.
Actual behavior
The API always responds with “Access denied” (-32600), even though:
Authentication succeeds
Token is valid
Booking data is correct
Questions
Are there additional permissions or API settings required for getBookingDetails?
Does getBookingDetails require a different type of token than getToken(company_login, api_key, sign_company)?
Is the sign calculation correct for this method?
Are there any account-level restrictions that could cause this behavior?
Thank you for your help.
We would appreciate any guidance, as this issue is currently blocking our integration.