How to use GitHub
- Please use the 👍 reaction to show that you are affected by the same issue.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Describe the bug
When a webhook is registered and filters on a dot-notation query for a label attribute, the query fails because the labels are not serialized properly.
To Reproduce
- Register the following webhook:
{
"httpMethod": "POST",
"uri": "https://<INSERT TRUSTED WEBHOOK LOCATION>",
"event": "OCA\\Deck\\Event\\CardUpdatedEvent",
"eventFilter": {
"event.card.labels.title": "foo"
},
"authMethod": null,
"authData": null,
"tokenNeeded": null
}
-
Create a card and assign it a label.
-
Monitor logs for the following error:
OCA\WebhookListeners\Service\PHPMongoQuery::_executeOperatorOnElement(): Argument #4 ($document) must be of type array, OCA\Deck\Db\Label given, called in /config/www/nextcloud/apps/webhook_listeners/lib/Service/PHPMongoQuery.php on line 220 in file '/config/www/nextcloud/apps/webhook_listeners/lib/Service/PHPMongoQuery.php' line 198
Expected behavior
The webhook should be able to filter on the label attributes.
Screenshots
N/A
Client details:
- OS: macOS 26
- Browser: Firefox
- Version: 153.0.3
- Device: macbook pro m2
Server details
Operating system:
container
Web server:
nginx
Database:
postgres 18
PHP version:
8.4.16
Nextcloud version: (see Nextcloud admin page)
34.0.2
Where did you install Nextcloud from:
container
Signing status:
Login as admin user into your Nextcloud and access
http://example.com/index.php/settings/integrity/failed
paste the results here.
List of activated apps:
If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder
Nextcloud configuration:
If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder
or
Insert your config.php content here
Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …)
Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
Logs
Nextcloud log (data/nextcloud.log)
Insert your Nextcloud log here
Browser log
Insert your browser log here, this could for example include:
a) The javascript console log
b) The network log
c) ...
How to use GitHub
Describe the bug
When a webhook is registered and filters on a dot-notation query for a label attribute, the query fails because the labels are not serialized properly.
To Reproduce
{ "httpMethod": "POST", "uri": "https://<INSERT TRUSTED WEBHOOK LOCATION>", "event": "OCA\\Deck\\Event\\CardUpdatedEvent", "eventFilter": { "event.card.labels.title": "foo" }, "authMethod": null, "authData": null, "tokenNeeded": null }Create a card and assign it a label.
Monitor logs for the following error:
OCA\WebhookListeners\Service\PHPMongoQuery::_executeOperatorOnElement(): Argument #4 ($document) must be of type array, OCA\Deck\Db\Label given, called in /config/www/nextcloud/apps/webhook_listeners/lib/Service/PHPMongoQuery.php on line 220 in file '/config/www/nextcloud/apps/webhook_listeners/lib/Service/PHPMongoQuery.php' line 198Expected behavior
The webhook should be able to filter on the label attributes.
Screenshots
N/A
Client details:
Server details
Operating system:
container
Web server:
nginx
Database:
postgres 18
PHP version:
8.4.16
Nextcloud version: (see Nextcloud admin page)
34.0.2
Where did you install Nextcloud from:
container
Signing status:
List of activated apps:
Nextcloud configuration:
Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
Logs
Nextcloud log (data/nextcloud.log)
Browser log