Skip to content

Unable to delete team with (removed) collective (HTTP 400) #2446

@xylo

Description

@xylo

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.

Steps to reproduce

  1. Create a team (without additional members)
  2. Create a collective for the team
  3. Optionional: Delete the collective
  4. Try to delete the team

Expected behaviour

The team should be removed.

Actual behaviour

Nextcloud shows an error message "Unable to delete team O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ" (translated from German: "Fehler beim Löschen des Teams O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ")

Server configuration

Debian Trixie
Nextcloud AIO: 12.9.1

Web server: Apache/Nginx
The one from Nextcloud AIO

Database: MySQL/Maria/SQLite/PostgreSQL
PostgreSQL 17.9

PHP version: 8.2/8.3/8.4
8.3.30

Nextcloud version: (see Nextcloud admin page)
32.0.8

List of activated apps
Enabled:
  - activity: 5.0.0
  - admin_audit: 1.22.0
  - bruteforcesettings: 5.0.0
  - calendar: 6.2.2
  - call_summary_bot: 3.3.0
  - circles: 32.0.0
  - cloud_federation_api: 1.16.0
  - collectives: 4.2.0
  - comments: 1.22.0
  - contacts: 8.3.7
  - contactsinteraction: 1.13.1
  - dashboard: 7.12.0
  - dav: 1.34.2
  - deck: 1.16.3
  - federatedfilesharing: 1.22.0
  - federation: 1.22.0
  - files: 2.4.0
  - files_accesscontrol: 3.0.2
  - files_downloadlimit: 5.0.0
  - files_fulltextsearch: 32.0.2
  - files_lock: 32.0.2
  - files_pdfviewer: 5.0.0
  - files_reminders: 1.5.0
  - files_sharing: 1.24.1
  - files_trashbin: 1.22.0
  - files_versions: 1.25.0
  - firstrunwizard: 5.0.0
  - fulltextsearch: 32.0.0
  - fulltextsearch_elasticsearch: 32.0.2
  - groupfolders: 20.1.12
  - guests: 4.6.0
  - impersonate: 3.0.1
  - logreader: 5.0.0
  - lookup_server_connector: 1.20.0
  - nextcloud-aio: 0.8.0
  - nextcloud_announcements: 4.0.0
  - notes: 4.13.1
  - notifications: 5.0.0
  - notify_push: 1.3.1
  - oauth2: 1.20.0
  - password_policy: 4.0.0
  - photos: 5.0.0
  - polls: 8.6.3
  - privacy: 4.0.0
  - profile: 1.1.0
  - provisioning_api: 1.22.0
  - related_resources: 3.0.0
  - richdocuments: 9.0.5
  - serverinfo: 4.0.0
  - settings: 1.15.1
  - sharebymail: 1.22.0
  - spreed: 22.0.11
  - support: 4.0.0
  - survey_client: 4.0.0
  - systemtags: 1.22.0
  - tasks: 0.17.1
  - text: 6.0.1
  - theming: 2.7.0
  - twofactor_backupcodes: 1.21.0
  - twofactor_totp: 14.0.0
  - updatenotification: 1.22.0
  - user_ldap: 1.23.0
  - user_status: 1.12.0
  - viewer: 5.0.0
  - webhook_listeners: 1.3.0
  - whiteboard: 1.5.7
  - workflowengine: 2.14.0
Disabled:
  - app_api: 32.0.0 (installed 32.0.0)
  - encryption: 2.20.0
  - files_external: 1.24.1
  - recommendations: 5.0.0 (installed 5.0.0-dev.0)
  - suspicious_login: 10.0.0
  - twofactor_nextcloud_notification: 6.0.0
  - weather_status: 1.12.0 (installed 1.12.0)
Nextcloud configuration
{
    "system": {
        "one-click-instance": true,
        "one-click-instance.user-limit": 100,
        "memcache.local": "\\OC\\Memcache\\APCu",
        "apps_paths": [
            {
                "path": "\/var\/www\/html\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/custom_apps",
                "url": "\/custom_apps",
                "writable": true
            }
        ],
        "check_data_directory_permissions": false,
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "password": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "overwritehost": "DOMAIN_REMOVED",
        "overwriteprotocol": "https",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "localhost",
            "DOMAIN_REMOVED"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "pgsql",
        "version": "32.0.8.2",
        "overwrite.cli.url": "https:\/\/DOMAIN_REMOVED\/",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "maintenance": false,
        "updatechecker": false,
        "loglevel": 2,
        "log_type": "file",
        "logfile": "\/var\/www\/html\/data\/nextcloud.log",
        "log_rotate_size": 10485760,
        "log.condition": {
            "apps": [
                "admin_audit"
            ]
        },
        "preview_max_x": 2048,
        "preview_max_y": 2048,
        "jpeg_quality": 60,
        "enabledPreviewProviders": {
            "1": "OC\\Preview\\Image",
            "2": "OC\\Preview\\MarkDown",
            "3": "OC\\Preview\\MP3",
            "4": "OC\\Preview\\TXT",
            "5": "OC\\Preview\\OpenDocument",
            "6": "OC\\Preview\\Movie",
            "7": "OC\\Preview\\Krita",
            "0": "OC\\Preview\\Imaginary",
            "23": "OC\\Preview\\ImaginaryPDF"
        },
        "enable_previews": true,
        "upgrade.disable-web": true,
        "mail_smtpmode": "smtp",
        "trashbin_retention_obligation": "auto, 30",
        "versions_retention_obligation": "auto, 30",
        "activity_expire_days": 30,
        "simpleSignUpLink.shown": false,
        "share_folder": "\/Shared",
        "one-click-instance.link": "https:\/\/nextcloud.com\/all-in-one\/",
        "upgrade.cli-upgrade-link": "https:\/\/github.com\/nextcloud\/all-in-one\/discussions\/2726",
        "updatedirectory": "\/nc-updater",
        "maintenance_window_start": 100,
        "allow_local_remote_servers": true,
        "davstorage.request_timeout": 3600,
        "documentation_url.server_logs": "https:\/\/github.com\/nextcloud\/all-in-one\/discussions\/5425",
        "htaccess.RewriteBase": "\/",
        "dbpersistent": false,
        "auth.bruteforce.protection.enabled": true,
        "ratelimit.protection.enabled": true,
        "files_external_allow_create_new_local": true,
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "preview_imaginary_url": "***REMOVED SENSITIVE VALUE***",
        "preview_imaginary_key": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_sendmailmode": "smtp",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "forbidden_filename_basenames": [
            "con",
            "prn",
            "aux",
            "nul",
            "com0",
            "com1",
            "com2",
            "com3",
            "com4",
            "com5",
            "com6",
            "com7",
            "com8",
            "com9",
            "com\u00b9",
            "com\u00b2",
            "com\u00b3",
            "lpt0",
            "lpt1",
            "lpt2",
            "lpt3",
            "lpt4",
            "lpt5",
            "lpt6",
            "lpt7",
            "lpt8",
            "lpt9",
            "lpt\u00b9",
            "lpt\u00b2",
            "lpt\u00b3"
        ],
        "forbidden_filename_characters": [
            "<",
            ">",
            ":",
            "\"",
            "|",
            "?",
            "*",
            "\\",
            "\/"
        ],
        "forbidden_filename_extensions": [
            " ",
            ".",
            ".filepart",
            ".part"
        ],
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "25",
        "updater.server.url": "***REMOVED SENSITIVE VALUE***",
        "default_language": "de",
        "onlyoffice": {
            "editors_check_interval": 0,
            "jwt_secret": "***REMOVED SENSITIVE VALUE***",
            "jwt_header": "AuthorizationJwt"
        },
        "ldapProviderFactory": "OCA\\User_LDAP\\LDAPProviderFactory",
        "twofactor_enforced": "false",
        "twofactor_enforced_groups": [],
        "twofactor_enforced_excluded_groups": [],
        "app_install_overwrite": [],
        "default_phone_region": "DE",
        "DOMAIN": "DOMAIN_REMOVED",
        "AIO_VERSION": "v12.9.1"
    }
}

Browser

Browser name: Firefox + Edge

Browser version: TODO

Operating system: Windows 11

Nextcloud Log ``` {"reqId":"GL7ncgJkahre9VGvyklL","level":3,"time":"2026-04-17T10:22:17+00:00","remoteAddr":"192.168.201.1","user":"endrullis","app":"circles","method":"DELETE","url":"/ocs/v2.php/apps/circles/circles/O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ","scriptName":"/ocs/v2.php","message":"{\"circleId\":\"O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ\"}","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36 Edg/147.0.0.0","version":"32.0.8.2","exception":{"Exception":"OCA\\Circles\\Exceptions\\FederatedItemBadRequestException","Message":"Team is managed from an other app","Code":120,"Trace":[{"file":"/var/www/html/apps/circles/lib/Service/FederatedEventService.php","line":159,"function":"verify","class":"OCA\\Circles\\FederatedItems\\CircleDestroy","type":"->","args":[{"__class__":"OCA\\Circles\\Model\\Federated\\FederatedEvent"}]},{"file":"/var/www/html/apps/circles/lib/Service/CircleService.php","line":247,"function":"newEvent","class":"OCA\\Circles\\Service\\FederatedEventService","type":"->","args":[{"__class__":"OCA\\Circles\\Model\\Federated\\FederatedEvent"}]},{"file":"/var/www/html/apps/circles/lib/Controller/LocalController.php","line":153,"function":"destroy","class":"OCA\\Circles\\Service\\CircleService","type":"->","args":["O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":204,"function":"destroy","class":"OCA\\Circles\\Controller\\LocalController","type":"->","args":["O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ"]},{"file":"/var/www/html/lib/private/AppFramework/Http/Dispatcher.php","line":118,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Circles\\Controller\\LocalController"},"destroy"]},{"file":"/var/www/html/lib/private/AppFramework/App.php","line":153,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Circles\\Controller\\LocalController"},"destroy"]},{"file":"/var/www/html/lib/private/Route/Router.php","line":321,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Circles\\Controller\\LocalController","destroy",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"_route":"ocs.circles.local.destroy","circleId":"O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ"}]},{"file":"/var/www/html/ocs/v1.php","line":61,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/ocsapp/apps/circles/circles/O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ"]},{"file":"/var/www/html/ocs/v2.php","line":8,"args":["/var/www/html/ocs/v1.php"],"function":"require_once"}],"File":"/var/www/html/apps/circles/lib/FederatedItems/CircleDestroy.php","Line":85,"message":"{\"circleId\":\"O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ\"}","exception":{"class":"OCA\\Circles\\Exceptions\\FederatedItemBadRequestException","status":400,"code":120,"message":"Team is managed from an other app"},"CustomMessage":"{\"circleId\":\"O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ\"}"},"id":"69e20c2e3754c"} ```
Browser console log ``` circles.ts:74 DELETE https://DOMAIN_REMOVED/ocs/v2.php/apps/circles/circles/O7lBaXjiZCymjStHbfbcbeVY6mcFHzJ 400 (Bad Request) (anonymous) @ xhr.js:198 (anonymous) @ xhr.js:15 (anonymous) @ dispatchRequest.js:49 _request @ Axios.js:194 request @ Axios.js:41 (anonymous) @ Axios.js:220 (anonymous) @ bind.js:12 deleteCircle @ circles.ts:74 deleteCircle @ circles.js:210 (anonymous) @ vuex.esm-bundler.js:322 (anonymous) @ vuex.esm-bundler.js:1055 (anonymous) @ vuex.esm-bundler.js:937 deleteCircle @ CircleActionsMixin.js:129 callback @ dialogs.js:380 callback @ index-C1xmmKTZ.mjs:515 handleClick @ NcDialogButton.vue_vue_type_script_setup_true_lang-DABuSwSR.mjs:30 callWithErrorHandling @ runtime-core.esm-bundler.js:199 callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:206 emit @ runtime-core.esm-bundler.js:4404 onClick @ NcButton-C9D47Igd.mjs:84 callWithErrorHandling @ runtime-core.esm-bundler.js:199 callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:206 (anonymous) @ runtime-dom.esm-bundler.js:730 circles.js:215 AxiosError: Request failed with status code 400 at Xf (settle.js:19:12) at XMLHttpRequest.j (xhr.js:59:7) at Ln.request (Axios.js:46:41) at async W5 (circles.ts:74:19) at async te.deleteCircle (circles.js:210:4) deleteCircle @ circles.js:215 await in deleteCircle (anonymous) @ vuex.esm-bundler.js:322 (anonymous) @ vuex.esm-bundler.js:1055 (anonymous) @ vuex.esm-bundler.js:937 deleteCircle @ CircleActionsMixin.js:129 callback @ dialogs.js:380 callback @ index-C1xmmKTZ.mjs:515 handleClick @ NcDialogButton.vue_vue_type_script_setup_true_lang-DABuSwSR.mjs:30 callWithErrorHandling @ runtime-core.esm-bundler.js:199 callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:206 emit @ runtime-core.esm-bundler.js:4404 onClick @ NcButton-C9D47Igd.mjs:84 callWithErrorHandling @ runtime-core.esm-bundler.js:199 callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:206 (anonymous) @ runtime-dom.esm-bundler.js:730 ```

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions