Vitor Bari Buccianti and GitHub
035ac4b9a2
fix(api): Add dummy implementation of new LinksSettings APIs to satisfy SettingsServiceHandler interface ( #12034 )
...
# Which Problems Are Solved
#11975 introduces new APIs to `SettingsService`, however,
`settingsconnect.SettingsServiceHandler` wasn't updated to satisfy the
interface containing the new APIs.
# How the Problems Are Solved
By adding a dummy implementation of new RPC methods to the
SettingsService Server.
# Additional Changes
n/a
# Additional Context
n/a
2026-04-10 13:57:32 +02:00
Vitor Bari Buccianti and GitHub
8c8fc47884
fix(console): Fix onboarding link for user login guide ( #11958 )
...
# Which Problems Are Solved
Onboarding steps has broken link to log in documentation:
https://zitadel.com/docs/guides/integrate/login-users
<img width="974" height="409" alt="Screenshot 2026-03-27 at 15 41 58"
src="https://github.com/user-attachments/assets/51863a49-14a2-45f2-b767-cf072dc30ea6 "
/>
# How the Problems Are Solved
Change broken link to
https://zitadel.com/docs/guides/integrate/login/login-users
# Additional Changes
n/a
# Additional Context
n/a
2026-04-01 09:01:43 +00:00
Vitor Bari Buccianti and GitHub
e664d8d04e
chore(deps): upgrade fumadocs ( #11787 )
...
# Which Problems Are Solved
Request builder in the API docs does not render oneOf variants:
https://github.com/fuma-nama/fumadocs/issues/3063
[Before](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.CreateUser ):
<img width="1211" height="965" alt="Screenshot 2026-03-09 at 10 01 54"
src="https://github.com/user-attachments/assets/562d2e8f-99e0-438a-96fb-8b3c57d94c85 "
/>
# How the Problems Are Solved
Fixed upstream:
https://github.com/fuma-nama/fumadocs/commit/440a7efaec4453692a287fe4f75b824c395adfb9
[After](https://docs-coodtipmk-zitadel.vercel.app/docs/reference/api/user/zitadel.user.v2.UserService.CreateUser ):
<img width="1155" height="1003" alt="Screenshot 2026-03-09 at 10 02 40"
src="https://github.com/user-attachments/assets/f503330e-17f8-43ef-8f79-2d8a488794cf "
/>
# Additional Changes
n/a
# Additional Context
Relates to #11784
2026-03-12 15:12:05 +01:00
62cb5bbb83
feat: delete metadata on SetOrganizationMetadata api ( #11790 )
...
# Which Problems Are Solved
Currently, to delete an Organization metadata key, callers must use a
separate
[DeleteMetadata](https://zitadel.com/docs/reference/api/org/zitadel.org.v2.OrganizationService.DeleteOrganizationMetadata )
API. This increases the complexity on client-side for operations where
metadata need to be synchronized.
# How the Problems Are Solved
Introduce deletion behavior to
[SetOrganizationMetadata](https://zitadel.com/docs/reference/api/org/zitadel.org.v2.OrganizationService.SetOrganizationMetadata ):
When a metadata entry is passed with an empty value ("" / empty bytes):
- If the key exists → delete the key
- If the key does not exist → no-op (idempotent, no error)
# Additional Changes
n/a
# Additional Context
Relates to #11776
---------
Co-authored-by: Gayathri Vijayan <[email protected] >
Co-authored-by: Gayathri Vijayan <[email protected] >
2026-03-10 10:09:51 +00:00
247e278505
feat: delete metadata on SetUserMetadata api ( #11776 )
...
# Which Problems Are Solved
Currently, to delete metadata a key, callers must use a separate
[DeleteMetadata](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.DeleteUserMetadata )
API. This increases the complexity on client-side for operations where
metadata need to be synchronized.
# How the Problems Are Solved
Introduce the behavior to
[SetUserMetadata](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.SetUserMetadata ):
When a metadata entry is passed with an empty value ("" / empty bytes):
- If the key exists → delete the key
- If the key does not exist → no-op (idempotent, no error)
# Additional Changes
- Updated [User Metadata
page](https://zitadel.com/docs/guides/manage/customize/user-metadata#manage-user-metadata-through-the-management-api )
# Additional Context
Similar behavior will be applied to
[UpdateUser](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser )
and
[SetOrganizationMetadata](https://zitadel.com/docs/reference/api/org/zitadel.org.v2.OrganizationService.SetOrganizationMetadata )
Breaking change?
Currently, sending an empty value returns an error — no client should be
intentionally relying on that error as part of a working workflow. The
change goes from "rejected input" to "accepted input with defined
semantics."
In other words, it relaxes a restriction rather than tightening one.
Existing valid calls continue to work exactly as before. The only
scenario where it could be "breaking" is if someone explicitly depends
on the error response for empty values (e.g., using it as a validation
check), which would be unusual.
---------
Co-authored-by: Gayathri Vijayan <[email protected] >
Co-authored-by: Copilot <[email protected] >
2026-03-06 14:57:52 +01:00
Vitor Bari Buccianti and GitHub
3443507c20
chore(deps): bump protoc-gen-connect-openapi to v0.25.5 ( #11784 )
...
# Which Problems Are Solved
1. `oneOf` variant sub-schemas generated from proto `oneof` fields
missing `type: "object"`. This causes fumadocs to skip rendering the
properties within each variant. Example:
https://zitadel.com/docs/reference/api/internal_permission/zitadel.internal_permission.v2.InternalPermissionService.CreateAdministrator
[Before](https://zitadel.com/docs/reference/api/internal_permission/zitadel.internal_permission.v2.InternalPermissionService.CreateAdministrator ):
<img width="977" height="823" alt="Screenshot 2026-03-06 at 09 56 38"
src="https://github.com/user-attachments/assets/54ddbbbb-f36b-4a2a-96af-13b3da41de3b "
/>
[After](https://docs-git-bump-protoc-gen-connect-openapi-version-zitadel.vercel.app/docs/reference/api/internal_permission/zitadel.internal_permission.v2.InternalPermissionService.CreateAdministrator ):
<img width="964" height="1021" alt="Screenshot 2026-03-06 at 09 56 47"
src="https://github.com/user-attachments/assets/a461c4b5-44fe-487b-b4d2-8af47d407d3e "
/>
2. missing requestBody for messages with oneOf and path params. Example:
https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser
[Before](https://zitadel.com/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser ):
<img width="994" height="883" alt="Screenshot 2026-03-06 at 09 59 03"
src="https://github.com/user-attachments/assets/824f4154-3270-45d7-9af7-a28c7bdc7c44 "
/>
[After](https://docs-git-bump-protoc-gen-connect-openapi-version-zitadel.vercel.app/docs/reference/api/user/zitadel.user.v2.UserService.UpdateUser ):
<img width="978" height="1293" alt="Screenshot 2026-03-06 at 09 59 25"
src="https://github.com/user-attachments/assets/330c1204-ccce-402c-bccb-b27076198dcd "
/>
(https://github.com/fuma-nama/fumadocs/issues/3063 will also be updated
with improved `oneOf` visualization in this case.)
# How the Problems Are Solved
By fixing `protoc-gen-connect-openapi` to correctly generate the OpenAPI
docs.
# Additional Changes
n/a
# Additional Context
https://github.com/sudorandom/protoc-gen-connect-openapi/pull/233
https://github.com/sudorandom/protoc-gen-connect-openapi/pull/234
2026-03-06 12:57:35 +01:00
Vitor Bari Buccianti and GitHub
a3d0df1f4c
docs: small fixes across docs ( #11687 )
...
# Which Problems Are Solved
This PR fixes a couple of minor issues in the docs:
- Duplicated sentences
- Obsolete names
- Wrong header hierarchy
# How the Problems Are Solved
Solved by rewriting/fixing the mdx files.
# Additional Changes
none
# Additional Context
none
2026-02-27 11:44:35 +01:00
40c7b38ca1
docs: saas use-case - update project settings description for clarity ( #11665 )
...
# Which Problems Are Solved
The Project Settings section of the
[/docs/guides/solution-scenarios/saas](https://zitadel.com/docs/guides/solution-scenarios/saas#project-settings )
page refers to a setting `PROJECT.ROLE.CHECK` that got renamed
([1](https://github.com/zitadel/zitadel/blob/00f7dbe875606486a183f88c77497db9576e7cf5/console/src/assets/i18n/en.json#L1209 ),
[2](https://github.com/zitadel/zitadel/blob/0f2a349ec145fc3efe0ec45db52d1f974fa180d2/console/src/assets/i18n/en.json#L2138 ),
[3](https://github.com/zitadel/zitadel/blob/7e11f7a03279655366ab47909fd8b20151abc215/console/src/assets/i18n/en.json#L2138 )).
Also, the meaning of the setting was inverted on [93a4ed8
](https://github.com/zitadel/zitadel/commit/93a4ed8857a63b24db56d17626827c662beb7579#diff-c44c61daf06a171a97f8897c96f831a54e677759198a7f2bb65ec52473a20063R36 )
before: "if you want to restrict access to users that have the correct
authorization for the project"
after: "if you want to restrict access to users that **do not** have the
correct access for the project"
<img width="669" height="168" alt="Screenshot 2026-02-23 at 10 59 54"
src="https://github.com/user-attachments/assets/91454f6d-cefb-4db0-b064-391779ea3bae "
/>
<img width="692" height="660" alt="Screenshot 2026-02-23 at 10 59 46"
src="https://github.com/user-attachments/assets/bba11870-c579-4fea-986b-0d960500cd77 "
/>
# How the Problems Are Solved
Update documentation.
# Additional Changes
n/a
# Additional Context
n/a
---------
Co-authored-by: Copilot <[email protected] >
2026-02-23 15:13:10 +01:00
Vitor Bari Buccianti and GitHub
a31e435491
docs: fix readme logo file path ( #11628 )
...
# Which Problems Are Solved
The readme file is using the wrong path for the zitadel logo and
oidc-cert file.
<img width="1252" height="415" alt="Screenshot 2026-02-18 at 15 15 07"
src="https://github.com/user-attachments/assets/dc0dbe79-58fe-4695-ac01-6130b0e8441e "
/>
PR #11166 changed the README path from `./docs/static/logos/` to
`./apps/docs/static/logos/`. However, that same commit actually moved
the file to `apps/docs/public/img/logos/` — the README update used the
wrong destination path.
# How the Problems Are Solved
- Replace image path with the correct one.
# Additional Changes
n/a
# Additional Context
n/a
2026-02-18 14:56:59 +00:00