Changelog
2026-11-10: security hardening (Wave 6.7)#
Account.secretis removed from the schema. It was a random value written at sign-up that nothing used. The field is gone fromAccount, its filters and sort fields, and from the generatedCreateAccountDtoandUpdateAccountDtoinputs. A query that selectedsecreton an account now fails validation. (AccountDevice.secretandTotpEnrolment.secretare unchanged.)- Reading an account by id needs a tenant in common.
account(id)and relations that end at an account (createdBy,reviewedBy, ...) return the caller's own account and accounts that share a company, bookkeeper firm or enterprise with the caller. Any other id answers like an unknown one. Platform users see the other users of the same platform company only. - Password grant takes
otp.POST /v2/oauth2/tokenwithgrant_type=passwordaccepts an optionalotp(authenticator or recovery code). A valid code putsotpin the token'samrclaim; a wrong code isinvalid_grant. Without it nothing changes. - Schema file.
apps/api/schema.gqlis regenerated from the running API; two enums changed order, nothing else changed besides the removals above.