feat(api): move resource apis to beta (#6530)

Moves UserService, SessionService, SettingsService and OIDCService to beta state. This includes gRPC and HTTP path changes.
This commit is contained in:
Livio Spring 2023-09-13 14:43:01 +02:00 committed by GitHub
parent 841b21d9cd
commit be81570fb5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
80 changed files with 324 additions and 311 deletions

View File

@ -287,10 +287,15 @@ For easy copying to your reverse proxy configuration, here is the list of URL pa
/oidc/v1/ /oidc/v1/
/saml/v2/ /saml/v2/
/oauth/v2/ /oauth/v2/
/device
/oidc/v1/
/.well-known/openid-configuration /.well-known/openid-configuration
/openapi/ /openapi/
/v2alpha/ /idps/callback
/zitadel.user.v2alpha.UserService/ /v2beta/
/zitadel.session.v2alpha.SessionService/ /zitadel.user.v2beta.UserService/
/zitadel.settings.v2alpha.SettingsService/ /zitadel.session.v2beta.SessionService/
/zitadel.settings.v2beta.SettingsService/
/zitadel.oidc.v2beta.OIDCService/
/zitadel.org.v2beta.OrganizationService/
``` ```

View File

@ -8,7 +8,7 @@ Request Example:
```bash ```bash
curl --request GET \ curl --request GET \
--url https://$ZITADEL_DOMAIN/v2alpha/settings/login \ --url https://$ZITADEL_DOMAIN/v2beta/settings/login \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' --header 'Authorization: Bearer '"$TOKEN"''
``` ```

View File

@ -7,7 +7,7 @@ Send the session token in the body of the request.
```bash ```bash
curl --request DELETE \ curl --request DELETE \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/218480890961985793 \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/218480890961985793 \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -9,7 +9,7 @@ The list of session IDs can be sent in the “search sessions” request to get
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/search \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/search \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -8,7 +8,7 @@ Example Request:
```bash ```bash
curl --request PATCH \ curl --request PATCH \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/218480890961985793 \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/218480890961985793 \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -26,7 +26,7 @@ In the response, you will get an authentication URL of the provider you like.
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/idp_intents \ --url https://$ZITADEL_DOMAIN/v2beta/idp_intents \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -71,7 +71,7 @@ To get the information of the provider, make a request to ZITADEL.
### Request ### Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/idp_intents/$INTENT_ID \ --url https://$ZITADEL_DOMAIN/v2beta/idp_intents/$INTENT_ID \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -127,7 +127,7 @@ This check requires that the previous step ended on the successful page and didn
#### Request #### Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
@ -158,7 +158,7 @@ The display name is used to list the linkings on the users.
#### Request #### Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/human \ --url https://$ZITADEL_DOMAIN/v2beta/users/human \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -196,7 +196,7 @@ If you want to link/connect to an existing account you can perform the add ident
#### Request #### Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/users/218385419895570689/links \ --url https://$ZITADEL_DOMAIN/v2beta/users/users/218385419895570689/links \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -41,7 +41,7 @@ Request Example:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/totp \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/totp \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' --header 'Authorization: Bearer '"$TOKEN"''
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -73,7 +73,7 @@ Request Example:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/totp/verify \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/totp/verify \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' --header 'Authorization: Bearer '"$TOKEN"''
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -99,7 +99,7 @@ Example Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -136,7 +136,7 @@ More detailed information about the API: [Update session Documentation](/apis/re
Example Request Example Request
```bash ```bash
curl --request PATCH \ curl --request PATCH \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/$SESSION-ID \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/$SESSION-ID \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
--data '{ --data '{
@ -176,7 +176,7 @@ Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER-ID/phone \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER-ID/phone \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -196,7 +196,7 @@ More detailed information about the API: [Verify phone](/apis/resources/user_ser
Example Request: Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER-ID/phone/verify \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER-ID/phone/verify \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -214,7 +214,7 @@ More detailed information about the API: [Add OTP SMS for a user](/apis/resource
Example Request: Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER-ID/otp_sms \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER-ID/otp_sms \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' --header 'Content-Type: application/json'
@ -238,7 +238,7 @@ Example Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -265,7 +265,7 @@ Example Request
```bash ```bash
curl --request PATCH \ curl --request PATCH \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/225307381909694507 \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/225307381909694507 \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -303,7 +303,7 @@ More detailed information about the API: [Add OTP Email for a user](/apis/resour
Example Request: Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER-ID/otp_email \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER-ID/otp_email \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' --header 'Content-Type: application/json'
@ -327,7 +327,7 @@ Example Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -354,7 +354,7 @@ Example Request
```bash ```bash
curl --request PATCH \ curl --request PATCH \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/225307381909694507 \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/225307381909694507 \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -389,7 +389,7 @@ Request Example:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/u2f \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/u2f \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' --header 'Authorization: Bearer '"$TOKEN"''
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -460,7 +460,7 @@ Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/u2f/$PASSKEY_ID \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/u2f/$PASSKEY_ID \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -500,7 +500,7 @@ Example Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -50,7 +50,7 @@ With the ID from the redirect before you will now be able to get the information
```bash ```bash
curl --request GET \ curl --request GET \
--url https://$ZITADEL_DOMAIN/v2alpha/oidc/auth_requests/V2_224908753244265546 \ --url https://$ZITADEL_DOMAIN/v2beta/oidc/auth_requests/V2_224908753244265546 \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
``` ```
@ -95,7 +95,7 @@ Read more about the [Finalize Auth Request Documentation](/docs/apis/resources/o
Make sure that the authorization header is from the same account that you originally sent in the client id header ```x-zitadel-login-client: <userid>``` on the authorize endpoint. Make sure that the authorization header is from the same account that you originally sent in the client id header ```x-zitadel-login-client: <userid>``` on the authorize endpoint.
```bash ```bash
curl --request POST \ curl --request POST \
--url $ZITADEL_DOMAIN/v2alpha/oidc/auth_requests/V2_224908753244265546 \ --url $ZITADEL_DOMAIN/v2beta/oidc/auth_requests/V2_224908753244265546 \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -34,7 +34,7 @@ Send either the sendLink or the returnCode (empty message) in the request body,
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/passkeys/registration_link \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/passkeys/registration_link \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -81,7 +81,7 @@ The code only has to be filled if the user did get a registration code.
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/passkeys \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/passkeys \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -185,7 +185,7 @@ Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/passkeys/$PASSKEY_ID \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/passkeys/$PASSKEY_ID \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -223,7 +223,7 @@ More detailed information about the API: [Create Session Documentation](/apis/re
Example Request: Example Request:
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -28,7 +28,7 @@ Make sure to also include the URL Template to customize the reset link in the em
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/password_reset \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/password_reset \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -47,7 +47,7 @@ Send the request with asking for the return Code in the body of the request.
#### Request #### Request
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/password_reset \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/password_reset \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -95,7 +95,7 @@ In this case it requires additionally the current password instead of the verifi
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/$USER_ID/password \ --url https://$ZITADEL_DOMAIN/v2beta/users/$USER_ID/password \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -16,7 +16,7 @@ First, we create a new user with a username and password. In the example below w
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/users/human \ --url https://$ZITADEL_DOMAIN/v2beta/users/human \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -104,7 +104,7 @@ Send it to the Get Session Endpoint to find out how the user has authenticated.
```bash ```bash
curl --request POST \ curl --request POST \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions \ --url https://$ZITADEL_DOMAIN/v2beta/sessions \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"'' \ --header 'Authorization: Bearer '"$TOKEN"'' \
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \
@ -167,7 +167,7 @@ To update an existing session, add the session ID to the URL and the session tok
```bash ```bash
curl --request PATCH \ curl --request PATCH \
--url https://$ZITADEL_DOMAIN/v2alpha/sessions/$SESSION_ID \ --url https://$ZITADEL_DOMAIN/v2beta/sessions/$SESSION_ID \
--header 'Accept: application/json' \ --header 'Accept: application/json' \
--header 'Authorization: Bearer '"$TOKEN"''\ --header 'Authorization: Bearer '"$TOKEN"''\
--header 'Content-Type: application/json' \ --header 'Content-Type: application/json' \

View File

@ -261,28 +261,28 @@ module.exports = {
}, },
}, },
user: { user: {
specPath: ".artifacts/openapi/zitadel/user/v2alpha/user_service.swagger.json", specPath: ".artifacts/openapi/zitadel/user/v2beta/user_service.swagger.json",
outputDir: "docs/apis/resources/user_service", outputDir: "docs/apis/resources/user_service",
sidebarOptions: { sidebarOptions: {
groupPathsBy: "tag", groupPathsBy: "tag",
}, },
}, },
session: { session: {
specPath: ".artifacts/openapi/zitadel/session/v2alpha/session_service.swagger.json", specPath: ".artifacts/openapi/zitadel/session/v2beta/session_service.swagger.json",
outputDir: "docs/apis/resources/session_service", outputDir: "docs/apis/resources/session_service",
sidebarOptions: { sidebarOptions: {
groupPathsBy: "tag", groupPathsBy: "tag",
}, },
}, },
oidc: { oidc: {
specPath: ".artifacts/openapi/zitadel/oidc/v2alpha/oidc_service.swagger.json", specPath: ".artifacts/openapi/zitadel/oidc/v2beta/oidc_service.swagger.json",
outputDir: "docs/apis/resources/oidc_service", outputDir: "docs/apis/resources/oidc_service",
sidebarOptions: { sidebarOptions: {
groupPathsBy: "tag", groupPathsBy: "tag",
}, },
}, },
settings: { settings: {
specPath: ".artifacts/openapi/zitadel/settings/v2alpha/settings_service.swagger.json", specPath: ".artifacts/openapi/zitadel/settings/v2beta/settings_service.swagger.json",
outputDir: "docs/apis/resources/settings_service", outputDir: "docs/apis/resources/settings_service",
sidebarOptions: { sidebarOptions: {
groupPathsBy: "tag", groupPathsBy: "tag",

View File

@ -507,57 +507,57 @@ module.exports = {
}, },
{ {
type: "category", type: "category",
label: "User lifecycle (alpha)", label: "User lifecycle (Beta)",
link: { link: {
type: "generated-index", type: "generated-index",
title: "User service API (Alpha)", title: "User service API (Beta)",
slug: "/apis/resources/user_service", slug: "/apis/resources/user_service",
description: description:
"This API is intended to manage users in a ZITADEL instance.\n"+ "This API is intended to manage users in a ZITADEL instance.\n"+
"\n"+ "\n"+
"This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login.", "This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.",
}, },
items: require("./docs/apis/resources/user_service/sidebar.js"), items: require("./docs/apis/resources/user_service/sidebar.js"),
}, },
{ {
type: "category", type: "category",
label: "Session lifecycle (Alpha)", label: "Session lifecycle (Beta)",
link: { link: {
type: "generated-index", type: "generated-index",
title: "Session service API (Alpha)", title: "Session service API (Beta)",
slug: "/apis/resources/session_service", slug: "/apis/resources/session_service",
description: description:
"This API is intended to manage sessions in a ZITADEL instance.\n"+ "This API is intended to manage sessions in a ZITADEL instance.\n"+
"\n"+ "\n"+
"This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login.", "This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.",
}, },
items: require("./docs/apis/resources/session_service/sidebar.js"), items: require("./docs/apis/resources/session_service/sidebar.js"),
}, },
{ {
type: "category", type: "category",
label: "OIDC lifecycle (Alpha)", label: "OIDC lifecycle (Beta)",
link: { link: {
type: "generated-index", type: "generated-index",
title: "OIDC service API (Alpha)", title: "OIDC service API (Beta)",
slug: "/apis/resources/oidc_service", slug: "/apis/resources/oidc_service",
description: description:
"Get OIDC Auth Request details and create callback URLs.\n"+ "Get OIDC Auth Request details and create callback URLs.\n"+
"\n"+ "\n"+
"This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login.", "This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.",
}, },
items: require("./docs/apis/resources/oidc_service/sidebar.js"), items: require("./docs/apis/resources/oidc_service/sidebar.js"),
}, },
{ {
type: "category", type: "category",
label: "Settings lifecycle (alpha)", label: "Settings lifecycle (Beta)",
link: { link: {
type: "generated-index", type: "generated-index",
title: "Settings service API (Alpha)", title: "Settings service API (Beta)",
slug: "/apis/resources/settings_service", slug: "/apis/resources/settings_service",
description: description:
"This API is intended to manage settings in a ZITADEL instance.\n"+ "This API is intended to manage settings in a ZITADEL instance.\n"+
"\n"+ "\n"+
"This project is in alpha state. It can AND will continue to break until the services provide the same functionality as the current login.", "This project is in beta state. It can AND will continue to break until the services provide the same functionality as the current login.",
}, },
items: require("./docs/apis/resources/settings_service/sidebar.js"), items: require("./docs/apis/resources/settings_service/sidebar.js"),
}, },

View File

@ -8,7 +8,7 @@ import (
"github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/api/authz"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
) )
func DomainToDetailsPb(objectDetail *domain.ObjectDetails) *object.Details { func DomainToDetailsPb(objectDetail *domain.ObjectDetails) *object.Details {

View File

@ -15,7 +15,7 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/errors" "github.com/zitadel/zitadel/internal/errors"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
) )
func (s *Server) GetAuthRequest(ctx context.Context, req *oidc_pb.GetAuthRequestRequest) (*oidc_pb.GetAuthRequestResponse, error) { func (s *Server) GetAuthRequest(ctx context.Context, req *oidc_pb.GetAuthRequestRequest) (*oidc_pb.GetAuthRequestResponse, error) {

View File

@ -15,10 +15,10 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var ( var (

View File

@ -12,7 +12,7 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
) )
func Test_authRequestToPb(t *testing.T) { func Test_authRequestToPb(t *testing.T) {

View File

@ -8,7 +8,7 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc/server" "github.com/zitadel/zitadel/internal/api/grpc/server"
"github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/command"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
) )
var _ oidc_pb.OIDCServiceServer = (*Server)(nil) var _ oidc_pb.OIDCServiceServer = (*Server)(nil)

View File

@ -15,7 +15,7 @@ import (
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta" org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var ( var (

View File

@ -12,9 +12,9 @@ import (
"github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/command"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta" org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func Test_addOrganizationRequestToCommand(t *testing.T) { func Test_addOrganizationRequestToCommand(t *testing.T) {

View File

@ -11,7 +11,6 @@ import (
grpc_util "github.com/zitadel/zitadel/internal/api/grpc" grpc_util "github.com/zitadel/zitadel/internal/api/grpc"
"github.com/zitadel/zitadel/internal/api/http" "github.com/zitadel/zitadel/internal/api/http"
"github.com/zitadel/zitadel/internal/telemetry/tracing" "github.com/zitadel/zitadel/internal/telemetry/tracing"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha"
) )
func AuthorizationInterceptor(verifier *authz.TokenVerifier, authConfig authz.Config) grpc.UnaryServerInterceptor { func AuthorizationInterceptor(verifier *authz.TokenVerifier, authConfig authz.Config) grpc.UnaryServerInterceptor {
@ -37,10 +36,9 @@ func authorize(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo,
var orgDomain string var orgDomain string
orgID := grpc_util.GetHeader(authCtx, http.ZitadelOrgID) orgID := grpc_util.GetHeader(authCtx, http.ZitadelOrgID)
if o, ok := req.(OrganisationFromRequest); ok { if o, ok := req.(OrganisationFromRequest); ok {
orgID = o.OrganisationFromRequest().GetOrgId() orgID = o.OrganisationFromRequest().ID
orgDomain = o.OrganisationFromRequest().GetOrgDomain() orgDomain = o.OrganisationFromRequest().Domain
} }
ctxSetter, err := authz.CheckUserAuthorization(authCtx, req, authToken, orgID, orgDomain, verifier, authConfig, authOpt, info.FullMethod) ctxSetter, err := authz.CheckUserAuthorization(authCtx, req, authToken, orgID, orgDomain, verifier, authConfig, authOpt, info.FullMethod)
if err != nil { if err != nil {
return nil, err return nil, err
@ -50,5 +48,10 @@ func authorize(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo,
} }
type OrganisationFromRequest interface { type OrganisationFromRequest interface {
OrganisationFromRequest() *object.Organisation OrganisationFromRequest() *Organisation
}
type Organisation struct {
ID string
Domain string
} }

View File

@ -8,7 +8,7 @@ import (
"github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/command"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
) )
var _ session.SessionServiceServer = (*Server)(nil) var _ session.SessionServiceServer = (*Server)(nil)

View File

@ -12,7 +12,7 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
) )
func (s *Server) GetSession(ctx context.Context, req *session.GetSessionRequest) (*session.GetSessionResponse, error) { func (s *Server) GetSession(ctx context.Context, req *session.GetSessionRequest) (*session.GetSessionResponse, error) {

View File

@ -16,9 +16,9 @@ import (
"google.golang.org/grpc/metadata" "google.golang.org/grpc/metadata"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var ( var (

View File

@ -14,8 +14,8 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
) )
func Test_sessionsToPb(t *testing.T) { func Test_sessionsToPb(t *testing.T) {

View File

@ -10,7 +10,7 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc/server" "github.com/zitadel/zitadel/internal/api/grpc/server"
"github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/command"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
settings "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha" settings "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta"
) )
var _ settings.SettingsServiceServer = (*Server)(nil) var _ settings.SettingsServiceServer = (*Server)(nil)

View File

@ -9,8 +9,8 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc/object/v2" "github.com/zitadel/zitadel/internal/api/grpc/object/v2"
"github.com/zitadel/zitadel/internal/api/grpc/text" "github.com/zitadel/zitadel/internal/api/grpc/text"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
"github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha" "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta"
) )
func (s *Server) GetLoginSettings(ctx context.Context, req *settings.GetLoginSettingsRequest) (*settings.GetLoginSettingsResponse, error) { func (s *Server) GetLoginSettings(ctx context.Context, req *settings.GetLoginSettingsRequest) (*settings.GetLoginSettingsResponse, error) {

View File

@ -5,7 +5,7 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
settings "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha" settings "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta"
) )
func loginSettingsToPb(current *query.LoginPolicy) *settings.LoginSettings { func loginSettingsToPb(current *query.LoginPolicy) *settings.LoginSettings {

View File

@ -14,7 +14,7 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc" "github.com/zitadel/zitadel/internal/api/grpc"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
settings "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha" settings "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta"
) )
var ignoreTypes = []protoreflect.FullName{"google.protobuf.Duration"} var ignoreTypes = []protoreflect.FullName{"google.protobuf.Duration"}

View File

@ -7,8 +7,8 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) SetEmail(ctx context.Context, req *user.SetEmailRequest) (resp *user.SetEmailResponse, err error) { func (s *Server) SetEmail(ctx context.Context, req *user.SetEmailRequest) (resp *user.SetEmailResponse, err error) {

View File

@ -8,10 +8,11 @@ import (
"github.com/muhlemmer/gu" "github.com/muhlemmer/gu"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha"
"google.golang.org/protobuf/types/known/timestamppb" "google.golang.org/protobuf/types/known/timestamppb"
"github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_SetEmail(t *testing.T) { func TestServer_SetEmail(t *testing.T) {

View File

@ -5,7 +5,7 @@ import (
"github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/api/authz"
"github.com/zitadel/zitadel/internal/api/grpc/object/v2" "github.com/zitadel/zitadel/internal/api/grpc/object/v2"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) AddOTPSMS(ctx context.Context, req *user.AddOTPSMSRequest) (*user.AddOTPSMSResponse, error) { func (s *Server) AddOTPSMS(ctx context.Context, req *user.AddOTPSMSRequest) (*user.AddOTPSMSResponse, error) {

View File

@ -9,8 +9,8 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_AddOTPSMS(t *testing.T) { func TestServer_AddOTPSMS(t *testing.T) {

View File

@ -9,8 +9,8 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc/object/v2" "github.com/zitadel/zitadel/internal/api/grpc/object/v2"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) RegisterPasskey(ctx context.Context, req *user.RegisterPasskeyRequest) (resp *user.RegisterPasskeyResponse, err error) { func (s *Server) RegisterPasskey(ctx context.Context, req *user.RegisterPasskeyRequest) (resp *user.RegisterPasskeyResponse, err error) {

View File

@ -9,10 +9,11 @@ import (
"github.com/muhlemmer/gu" "github.com/muhlemmer/gu"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha"
"google.golang.org/protobuf/types/known/structpb" "google.golang.org/protobuf/types/known/structpb"
"github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_RegisterPasskey(t *testing.T) { func TestServer_RegisterPasskey(t *testing.T) {

View File

@ -14,8 +14,8 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc" "github.com/zitadel/zitadel/internal/api/grpc"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func Test_passkeyAuthenticatorToDomain(t *testing.T) { func Test_passkeyAuthenticatorToDomain(t *testing.T) {

View File

@ -7,7 +7,7 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc/object/v2" "github.com/zitadel/zitadel/internal/api/grpc/object/v2"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) PasswordReset(ctx context.Context, req *user.PasswordResetRequest) (_ *user.PasswordResetResponse, err error) { func (s *Server) PasswordReset(ctx context.Context, req *user.PasswordResetRequest) (_ *user.PasswordResetResponse, err error) {

View File

@ -12,8 +12,8 @@ import (
"google.golang.org/protobuf/types/known/timestamppb" "google.golang.org/protobuf/types/known/timestamppb"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_RequestPasswordReset(t *testing.T) { func TestServer_RequestPasswordReset(t *testing.T) {

View File

@ -6,7 +6,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func Test_notificationTypeToDomain(t *testing.T) { func Test_notificationTypeToDomain(t *testing.T) {

View File

@ -7,8 +7,8 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) SetPhone(ctx context.Context, req *user.SetPhoneRequest) (resp *user.SetPhoneResponse, err error) { func (s *Server) SetPhone(ctx context.Context, req *user.SetPhoneRequest) (resp *user.SetPhoneResponse, err error) {

View File

@ -11,8 +11,8 @@ import (
"google.golang.org/protobuf/types/known/timestamppb" "google.golang.org/protobuf/types/known/timestamppb"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_SetPhone(t *testing.T) { func TestServer_SetPhone(t *testing.T) {

View File

@ -10,7 +10,7 @@ import (
"github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/command"
"github.com/zitadel/zitadel/internal/crypto" "github.com/zitadel/zitadel/internal/crypto"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var _ user.UserServiceServer = (*Server)(nil) var _ user.UserServiceServer = (*Server)(nil)

View File

@ -6,7 +6,7 @@ import (
"github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/api/authz"
"github.com/zitadel/zitadel/internal/api/grpc/object/v2" "github.com/zitadel/zitadel/internal/api/grpc/object/v2"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) RegisterTOTP(ctx context.Context, req *user.RegisterTOTPRequest) (*user.RegisterTOTPResponse, error) { func (s *Server) RegisterTOTP(ctx context.Context, req *user.RegisterTOTPRequest) (*user.RegisterTOTPResponse, error) {

View File

@ -10,7 +10,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_RegisterTOTP(t *testing.T) { func TestServer_RegisterTOTP(t *testing.T) {

View File

@ -10,8 +10,8 @@ import (
"google.golang.org/protobuf/types/known/timestamppb" "google.golang.org/protobuf/types/known/timestamppb"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func Test_totpDetailsToPb(t *testing.T) { func Test_totpDetailsToPb(t *testing.T) {

View File

@ -7,7 +7,7 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc/object/v2" "github.com/zitadel/zitadel/internal/api/grpc/object/v2"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) RegisterU2F(ctx context.Context, req *user.RegisterU2FRequest) (*user.RegisterU2FResponse, error) { func (s *Server) RegisterU2F(ctx context.Context, req *user.RegisterU2FRequest) (*user.RegisterU2FResponse, error) {

View File

@ -11,7 +11,7 @@ import (
"google.golang.org/protobuf/types/known/structpb" "google.golang.org/protobuf/types/known/structpb"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func TestServer_RegisterU2F(t *testing.T) { func TestServer_RegisterU2F(t *testing.T) {

View File

@ -13,8 +13,8 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc" "github.com/zitadel/zitadel/internal/api/grpc"
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func Test_u2fRegistrationDetailsToPb(t *testing.T) { func Test_u2fRegistrationDetailsToPb(t *testing.T) {

View File

@ -18,8 +18,8 @@ import (
"github.com/zitadel/zitadel/internal/idp" "github.com/zitadel/zitadel/internal/idp"
"github.com/zitadel/zitadel/internal/idp/providers/ldap" "github.com/zitadel/zitadel/internal/idp/providers/ldap"
"github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/internal/query"
object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
func (s *Server) AddHumanUser(ctx context.Context, req *user.AddHumanUserRequest) (_ *user.AddHumanUserResponse, err error) { func (s *Server) AddHumanUser(ctx context.Context, req *user.AddHumanUserRequest) (_ *user.AddHumanUserResponse, err error) {

View File

@ -19,8 +19,8 @@ import (
"github.com/zitadel/zitadel/internal/api/grpc" "github.com/zitadel/zitadel/internal/api/grpc"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
mgmt "github.com/zitadel/zitadel/pkg/grpc/management" mgmt "github.com/zitadel/zitadel/pkg/grpc/management"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var ( var (

View File

@ -18,8 +18,8 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
caos_errs "github.com/zitadel/zitadel/internal/errors" caos_errs "github.com/zitadel/zitadel/internal/errors"
"github.com/zitadel/zitadel/internal/eventstore" "github.com/zitadel/zitadel/internal/eventstore"
object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object_pb "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var ignoreTypes = []protoreflect.FullName{"google.protobuf.Duration", "google.protobuf.Struct"} var ignoreTypes = []protoreflect.FullName{"google.protobuf.Duration", "google.protobuf.Struct"}

View File

@ -17,8 +17,8 @@ import (
http_utils "github.com/zitadel/zitadel/internal/api/http" http_utils "github.com/zitadel/zitadel/internal/api/http"
oidc_api "github.com/zitadel/zitadel/internal/api/oidc" oidc_api "github.com/zitadel/zitadel/internal/api/oidc"
"github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/command"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
) )
var ( var (

View File

@ -15,7 +15,7 @@ import (
"github.com/zitadel/zitadel/pkg/grpc/authn" "github.com/zitadel/zitadel/pkg/grpc/authn"
"github.com/zitadel/zitadel/pkg/grpc/management" "github.com/zitadel/zitadel/pkg/grpc/management"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
) )
func TestOPStorage_SetUserinfoFromToken(t *testing.T) { func TestOPStorage_SetUserinfoFromToken(t *testing.T) {

View File

@ -18,9 +18,9 @@ import (
"github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/domain"
"github.com/zitadel/zitadel/internal/integration" "github.com/zitadel/zitadel/internal/integration"
"github.com/zitadel/zitadel/pkg/grpc/auth" "github.com/zitadel/zitadel/pkg/grpc/auth"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
var ( var (

View File

@ -6,7 +6,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
) )
type DetailsMsg interface { type DetailsMsg interface {

View File

@ -5,7 +5,7 @@ import (
"google.golang.org/protobuf/types/known/timestamppb" "google.golang.org/protobuf/types/known/timestamppb"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
) )
type myMsg struct { type myMsg struct {

View File

@ -21,12 +21,12 @@ import (
"github.com/zitadel/zitadel/pkg/grpc/admin" "github.com/zitadel/zitadel/pkg/grpc/admin"
"github.com/zitadel/zitadel/pkg/grpc/auth" "github.com/zitadel/zitadel/pkg/grpc/auth"
mgmt "github.com/zitadel/zitadel/pkg/grpc/management" mgmt "github.com/zitadel/zitadel/pkg/grpc/management"
object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha" oidc_pb "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta"
organisation "github.com/zitadel/zitadel/pkg/grpc/org/v2beta" organisation "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" session "github.com/zitadel/zitadel/pkg/grpc/session/v2beta"
"github.com/zitadel/zitadel/pkg/grpc/system" "github.com/zitadel/zitadel/pkg/grpc/system"
user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" user "github.com/zitadel/zitadel/pkg/grpc/user/v2beta"
) )
type Client struct { type Client struct {

View File

@ -4,7 +4,7 @@ package {{.GoPackageName}}
import ( import (
"github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/api/authz"
{{if .AuthContext}}"github.com/zitadel/zitadel/pkg/grpc/object/v2alpha"{{end}} {{if .AuthContext}}"github.com/zitadel/zitadel/internal/api/grpc/server/middleware"{{end}}
) )
var {{.ServiceName}}_AuthMethods = authz.MethodMapping { var {{.ServiceName}}_AuthMethods = authz.MethodMapping {
@ -17,8 +17,11 @@ var {{.ServiceName}}_AuthMethods = authz.MethodMapping {
} }
{{ range $m := .AuthContext}} {{ range $m := .AuthContext}}
func (r *{{ $m.Name }}) OrganisationFromRequest() *object.Organisation { func (r *{{ $m.Name }}) OrganisationFromRequest() *middleware.Organisation {
return r{{$m.OrgMethod}} return &middleware.Organisation{
ID: r{{$m.OrgMethod}}.GetOrgId(),
Domain: r{{$m.OrgMethod}}.GetOrgDomain(),
}
} }
{{ end }} {{ end }}

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.object.v2alpha; package zitadel.object.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha;object"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/object/v2beta;object";
import "google/protobuf/timestamp.proto"; import "google/protobuf/timestamp.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";

View File

@ -1,12 +1,12 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.oidc.v2alpha; package zitadel.oidc.v2beta;
import "google/protobuf/duration.proto"; import "google/protobuf/duration.proto";
import "google/protobuf/timestamp.proto"; import "google/protobuf/timestamp.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha;oidc"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta;oidc";
message AuthRequest{ message AuthRequest{
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema) = { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema) = {

View File

@ -1,22 +1,22 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.oidc.v2alpha; package zitadel.oidc.v2beta;
import "zitadel/object/v2alpha/object.proto"; import "zitadel/object/v2beta/object.proto";
import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/protoc_gen_zitadel/v2/options.proto";
import "zitadel/oidc/v2alpha/authorization.proto"; import "zitadel/oidc/v2beta/authorization.proto";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "validate/validate.proto"; import "validate/validate.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/oidc/v2alpha;oidc"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/oidc/v2beta;oidc";
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
info: { info: {
title: "OIDC Service"; title: "OIDC Service";
version: "2.0-alpha"; version: "2.0-beta";
description: "Get OIDC Auth Request details and create callback URLs. This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login."; description: "Get OIDC Auth Request details and create callback URLs. This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.";
contact:{ contact:{
name: "ZITADEL" name: "ZITADEL"
url: "https://zitadel.com" url: "https://zitadel.com"
@ -103,7 +103,7 @@ option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
service OIDCService { service OIDCService {
rpc GetAuthRequest (GetAuthRequestRequest) returns (GetAuthRequestResponse) { rpc GetAuthRequest (GetAuthRequestRequest) returns (GetAuthRequestResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/oidc/auth_requests/{auth_request_id}" get: "/v2beta/oidc/auth_requests/{auth_request_id}"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -126,7 +126,7 @@ service OIDCService {
rpc CreateCallback (CreateCallbackRequest) returns (CreateCallbackResponse) { rpc CreateCallback (CreateCallbackRequest) returns (CreateCallbackResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/oidc/auth_requests/{auth_request_id}" post: "/v2beta/oidc/auth_requests/{auth_request_id}"
body: "*" body: "*"
}; };
@ -208,7 +208,7 @@ message Session {
} }
message CreateCallbackResponse { message CreateCallbackResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string callback_url = 2 [ string callback_url = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
description: "Callback URL where the user should be redirected, using a \"302 FOUND\" status. Contains details for the application to obtain the tokens on success, or error details on failure. Note that this field must be treated as credentials, as the contained code can be used to obtain tokens on behalve of the user."; description: "Callback URL where the user should be redirected, using a \"302 FOUND\" status. Contains details for the application to obtain the tokens on success, or error details on failure. Note that this field must be treated as credentials, as the contained code can be used to obtain tokens on behalve of the user.";

View File

@ -3,15 +3,15 @@ syntax = "proto3";
package zitadel.org.v2beta; package zitadel.org.v2beta;
import "zitadel/object/v2alpha/object.proto"; import "zitadel/object/v2beta/object.proto";
import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/protoc_gen_zitadel/v2/options.proto";
import "zitadel/user/v2alpha/auth.proto"; import "zitadel/user/v2beta/auth.proto";
import "zitadel/user/v2alpha/email.proto"; import "zitadel/user/v2beta/email.proto";
import "zitadel/user/v2alpha/phone.proto"; import "zitadel/user/v2beta/phone.proto";
import "zitadel/user/v2alpha/idp.proto"; import "zitadel/user/v2beta/idp.proto";
import "zitadel/user/v2alpha/password.proto"; import "zitadel/user/v2beta/password.proto";
import "zitadel/user/v2alpha/user.proto"; import "zitadel/user/v2beta/user.proto";
import "zitadel/user/v2alpha/user_service.proto"; import "zitadel/user/v2beta/user_service.proto";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "google/protobuf/duration.proto"; import "google/protobuf/duration.proto";
@ -24,7 +24,7 @@ option go_package = "github.com/zitadel/zitadel/pkg/grpc/org/v2beta;org";
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
info: { info: {
title: "User Service"; title: "User Service";
version: "2.0-alpha"; version: "2.0-beta";
description: "This API is intended to manage organizations in a ZITADEL instance. This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login."; description: "This API is intended to manage organizations in a ZITADEL instance. This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.";
contact:{ contact:{
name: "ZITADEL" name: "ZITADEL"
@ -144,7 +144,7 @@ message AddOrganizationRequest{
message Admin { message Admin {
oneof user_type{ oneof user_type{
string user_id = 1; string user_id = 1;
zitadel.user.v2alpha.AddHumanUserRequest human = 2; zitadel.user.v2beta.AddHumanUserRequest human = 2;
} }
// specify Org Member Roles for the provided user (default is ORG_OWNER if roles are empty) // specify Org Member Roles for the provided user (default is ORG_OWNER if roles are empty)
repeated string roles = 3; repeated string roles = 3;
@ -168,7 +168,7 @@ message AddOrganizationResponse{
optional string email_code = 2; optional string email_code = 2;
optional string phone_code = 3; optional string phone_code = 3;
} }
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string organization_id = 2; string organization_id = 2;
repeated CreatedAdmin created_admins = 3; repeated CreatedAdmin created_admins = 3;
} }

View File

@ -1,13 +1,13 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.session.v2alpha; package zitadel.session.v2beta;
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "google/protobuf/struct.proto"; import "google/protobuf/struct.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "validate/validate.proto"; import "validate/validate.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha;session"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2beta;session";
enum UserVerificationRequirement { enum UserVerificationRequirement {
USER_VERIFICATION_REQUIREMENT_UNSPECIFIED = 0; USER_VERIFICATION_REQUIREMENT_UNSPECIFIED = 0;

View File

@ -1,12 +1,12 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.session.v2alpha; package zitadel.session.v2beta;
import "google/protobuf/timestamp.proto"; import "google/protobuf/timestamp.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "validate/validate.proto"; import "validate/validate.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha;session"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2beta;session";
message Session { message Session {
string id = 1 [ string id = 1 [

View File

@ -1,25 +1,25 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.session.v2alpha; package zitadel.session.v2beta;
import "zitadel/object/v2alpha/object.proto"; import "zitadel/object/v2beta/object.proto";
import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/protoc_gen_zitadel/v2/options.proto";
import "zitadel/session/v2alpha/challenge.proto"; import "zitadel/session/v2beta/challenge.proto";
import "zitadel/session/v2alpha/session.proto"; import "zitadel/session/v2beta/session.proto";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "google/protobuf/struct.proto"; import "google/protobuf/struct.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "validate/validate.proto"; import "validate/validate.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha;session"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2beta;session";
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
info: { info: {
title: "Session Service"; title: "Session Service";
version: "2.0-alpha"; version: "2.0-beta";
description: "This API is intended to manage sessions in a ZITADEL instance. This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login."; description: "This API is intended to manage sessions in a ZITADEL instance. This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.";
contact:{ contact:{
name: "ZITADEL" name: "ZITADEL"
url: "https://zitadel.com" url: "https://zitadel.com"
@ -108,7 +108,7 @@ service SessionService {
// Search sessions // Search sessions
rpc ListSessions (ListSessionsRequest) returns (ListSessionsResponse) { rpc ListSessions (ListSessionsRequest) returns (ListSessionsResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/sessions/search" post: "/v2beta/sessions/search"
body: "*" body: "*"
}; };
@ -144,7 +144,7 @@ service SessionService {
// GetSession a session // GetSession a session
rpc GetSession (GetSessionRequest) returns (GetSessionResponse) { rpc GetSession (GetSessionRequest) returns (GetSessionResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/sessions/{session_id}" get: "/v2beta/sessions/{session_id}"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -168,7 +168,7 @@ service SessionService {
// Create a new session // Create a new session
rpc CreateSession (CreateSessionRequest) returns (CreateSessionResponse) { rpc CreateSession (CreateSessionRequest) returns (CreateSessionResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/sessions" post: "/v2beta/sessions"
body: "*" body: "*"
}; };
@ -196,7 +196,7 @@ service SessionService {
// Update a session // Update a session
rpc SetSession (SetSessionRequest) returns (SetSessionResponse) { rpc SetSession (SetSessionRequest) returns (SetSessionResponse) {
option (google.api.http) = { option (google.api.http) = {
patch: "/v2alpha/sessions/{session_id}" patch: "/v2beta/sessions/{session_id}"
body: "*" body: "*"
}; };
@ -221,7 +221,7 @@ service SessionService {
// Terminate a session // Terminate a session
rpc DeleteSession (DeleteSessionRequest) returns (DeleteSessionResponse) { rpc DeleteSession (DeleteSessionRequest) returns (DeleteSessionResponse) {
option (google.api.http) = { option (google.api.http) = {
delete: "/v2alpha/sessions/{session_id}" delete: "/v2beta/sessions/{session_id}"
body: "*" body: "*"
}; };
@ -245,12 +245,12 @@ service SessionService {
} }
message ListSessionsRequest{ message ListSessionsRequest{
zitadel.object.v2alpha.ListQuery query = 1; zitadel.object.v2beta.ListQuery query = 1;
repeated SearchQuery queries = 2; repeated SearchQuery queries = 2;
} }
message ListSessionsResponse{ message ListSessionsResponse{
zitadel.object.v2alpha.ListDetails details = 1; zitadel.object.v2beta.ListDetails details = 1;
repeated Session sessions = 2; repeated Session sessions = 2;
} }
@ -277,7 +277,7 @@ message CreateSessionRequest{
} }
message CreateSessionResponse{ message CreateSessionResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string session_id = 2 [ string session_id = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
description: "\"id of the session\""; description: "\"id of the session\"";
@ -324,7 +324,7 @@ message SetSessionRequest{
} }
message SetSessionResponse{ message SetSessionResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string session_token = 2 [ string session_token = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
description: "\"token of the session, which is required for further updates of the session or the request other resources\""; description: "\"token of the session, which is required for further updates of the session or the request other resources\"";
@ -351,7 +351,7 @@ message DeleteSessionRequest{
} }
message DeleteSessionResponse{ message DeleteSessionResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message Checks { message Checks {

View File

@ -1,11 +1,11 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "zitadel/settings/v2alpha/settings.proto"; import "zitadel/settings/v2beta/settings.proto";
message BrandingSettings { message BrandingSettings {
Theme light_theme = 1; Theme light_theme = 1;

View File

@ -1,11 +1,11 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "zitadel/settings/v2alpha/settings.proto"; import "zitadel/settings/v2beta/settings.proto";
message DomainSettings { message DomainSettings {
bool login_name_includes_domain = 1 [ bool login_name_includes_domain = 1 [

View File

@ -1,11 +1,11 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "zitadel/settings/v2alpha/settings.proto"; import "zitadel/settings/v2beta/settings.proto";
import "validate/validate.proto"; import "validate/validate.proto";
message LegalAndSupportSettings { message LegalAndSupportSettings {

View File

@ -1,11 +1,11 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "zitadel/settings/v2alpha/settings.proto"; import "zitadel/settings/v2beta/settings.proto";
message LockoutSettings { message LockoutSettings {
uint64 max_password_attempts = 1 [ uint64 max_password_attempts = 1 [

View File

@ -1,11 +1,11 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "zitadel/settings/v2alpha/settings.proto"; import "zitadel/settings/v2beta/settings.proto";
import "google/protobuf/duration.proto"; import "google/protobuf/duration.proto";
message LoginSettings { message LoginSettings {

View File

@ -1,11 +1,11 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "zitadel/settings/v2alpha/settings.proto"; import "zitadel/settings/v2beta/settings.proto";
message PasswordComplexitySettings { message PasswordComplexitySettings {
uint64 min_length = 1 [ uint64 min_length = 1 [

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";

View File

@ -1,27 +1,27 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.settings.v2alpha; package zitadel.settings.v2beta;
import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/protoc_gen_zitadel/v2/options.proto";
import "zitadel/object/v2alpha/object.proto"; import "zitadel/object/v2beta/object.proto";
import "zitadel/settings/v2alpha/branding_settings.proto"; import "zitadel/settings/v2beta/branding_settings.proto";
import "zitadel/settings/v2alpha/domain_settings.proto"; import "zitadel/settings/v2beta/domain_settings.proto";
import "zitadel/settings/v2alpha/legal_settings.proto"; import "zitadel/settings/v2beta/legal_settings.proto";
import "zitadel/settings/v2alpha/lockout_settings.proto"; import "zitadel/settings/v2beta/lockout_settings.proto";
import "zitadel/settings/v2alpha/login_settings.proto"; import "zitadel/settings/v2beta/login_settings.proto";
import "zitadel/settings/v2alpha/password_settings.proto"; import "zitadel/settings/v2beta/password_settings.proto";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "validate/validate.proto"; import "validate/validate.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2alpha;settings"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/settings/v2beta;settings";
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
info: { info: {
title: "Settings Service"; title: "Settings Service";
version: "2.0-alpha"; version: "2.0-beta";
description: "This API is intended to manage settings in a ZITADEL instance. This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login."; description: "This API is intended to manage settings in a ZITADEL instance. This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.";
contact:{ contact:{
name: "ZITADEL" name: "ZITADEL"
url: "https://zitadel.com" url: "https://zitadel.com"
@ -110,7 +110,7 @@ service SettingsService {
// Get basic information over the instance // Get basic information over the instance
rpc GetGeneralSettings (GetGeneralSettingsRequest) returns (GetGeneralSettingsResponse) { rpc GetGeneralSettings (GetGeneralSettingsRequest) returns (GetGeneralSettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings" get: "/v2beta/settings"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -134,7 +134,7 @@ service SettingsService {
// Get the login settings // Get the login settings
rpc GetLoginSettings (GetLoginSettingsRequest) returns (GetLoginSettingsResponse) { rpc GetLoginSettings (GetLoginSettingsRequest) returns (GetLoginSettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/login" get: "/v2beta/settings/login"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -158,7 +158,7 @@ service SettingsService {
// Get the current active identity providers // Get the current active identity providers
rpc GetActiveIdentityProviders (GetActiveIdentityProvidersRequest) returns (GetActiveIdentityProvidersResponse) { rpc GetActiveIdentityProviders (GetActiveIdentityProvidersRequest) returns (GetActiveIdentityProvidersResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/login/idps" get: "/v2beta/settings/login/idps"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -182,7 +182,7 @@ service SettingsService {
// Get the password complexity settings // Get the password complexity settings
rpc GetPasswordComplexitySettings (GetPasswordComplexitySettingsRequest) returns (GetPasswordComplexitySettingsResponse) { rpc GetPasswordComplexitySettings (GetPasswordComplexitySettingsRequest) returns (GetPasswordComplexitySettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/password/complexity" get: "/v2beta/settings/password/complexity"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -206,7 +206,7 @@ service SettingsService {
// Get the current active branding settings // Get the current active branding settings
rpc GetBrandingSettings (GetBrandingSettingsRequest) returns (GetBrandingSettingsResponse) { rpc GetBrandingSettings (GetBrandingSettingsRequest) returns (GetBrandingSettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/branding" get: "/v2beta/settings/branding"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -230,7 +230,7 @@ service SettingsService {
// Get the domain settings // Get the domain settings
rpc GetDomainSettings (GetDomainSettingsRequest) returns (GetDomainSettingsResponse) { rpc GetDomainSettings (GetDomainSettingsRequest) returns (GetDomainSettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/domain" get: "/v2beta/settings/domain"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -254,7 +254,7 @@ service SettingsService {
// Get the legal and support settings // Get the legal and support settings
rpc GetLegalAndSupportSettings (GetLegalAndSupportSettingsRequest) returns (GetLegalAndSupportSettingsResponse) { rpc GetLegalAndSupportSettings (GetLegalAndSupportSettingsRequest) returns (GetLegalAndSupportSettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/legal_support" get: "/v2beta/settings/legal_support"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -278,7 +278,7 @@ service SettingsService {
// Get the lockout settings // Get the lockout settings
rpc GetLockoutSettings (GetLockoutSettingsRequest) returns (GetLockoutSettingsResponse) { rpc GetLockoutSettings (GetLockoutSettingsRequest) returns (GetLockoutSettingsResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/settings/lockout" get: "/v2beta/settings/lockout"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -301,66 +301,66 @@ service SettingsService {
} }
message GetLoginSettingsRequest { message GetLoginSettingsRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetLoginSettingsResponse { message GetLoginSettingsResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
zitadel.settings.v2alpha.LoginSettings settings = 2; zitadel.settings.v2beta.LoginSettings settings = 2;
} }
message GetPasswordComplexitySettingsRequest { message GetPasswordComplexitySettingsRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetPasswordComplexitySettingsResponse { message GetPasswordComplexitySettingsResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
zitadel.settings.v2alpha.PasswordComplexitySettings settings = 2; zitadel.settings.v2beta.PasswordComplexitySettings settings = 2;
} }
message GetBrandingSettingsRequest { message GetBrandingSettingsRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetBrandingSettingsResponse { message GetBrandingSettingsResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
zitadel.settings.v2alpha.BrandingSettings settings = 2; zitadel.settings.v2beta.BrandingSettings settings = 2;
} }
message GetDomainSettingsRequest { message GetDomainSettingsRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetDomainSettingsResponse { message GetDomainSettingsResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
zitadel.settings.v2alpha.DomainSettings settings = 2; zitadel.settings.v2beta.DomainSettings settings = 2;
} }
message GetLegalAndSupportSettingsRequest { message GetLegalAndSupportSettingsRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetLegalAndSupportSettingsResponse { message GetLegalAndSupportSettingsResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
zitadel.settings.v2alpha.LegalAndSupportSettings settings = 2; zitadel.settings.v2beta.LegalAndSupportSettings settings = 2;
} }
message GetLockoutSettingsRequest { message GetLockoutSettingsRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetLockoutSettingsResponse { message GetLockoutSettingsResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
zitadel.settings.v2alpha.LockoutSettings settings = 2; zitadel.settings.v2beta.LockoutSettings settings = 2;
} }
message GetActiveIdentityProvidersRequest { message GetActiveIdentityProvidersRequest {
zitadel.object.v2alpha.RequestContext ctx = 1; zitadel.object.v2beta.RequestContext ctx = 1;
} }
message GetActiveIdentityProvidersResponse { message GetActiveIdentityProvidersResponse {
zitadel.object.v2alpha.ListDetails details = 1; zitadel.object.v2beta.ListDetails details = 1;
repeated zitadel.settings.v2alpha.IdentityProvider identity_providers = 2; repeated zitadel.settings.v2beta.IdentityProvider identity_providers = 2;
} }
message GetGeneralSettingsRequest {} message GetGeneralSettingsRequest {}

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "google/protobuf/struct.proto"; import "google/protobuf/struct.proto";

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";

View File

@ -1,8 +1,8 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
@ -59,7 +59,7 @@ message SetHumanProfile {
example: "\"en\""; example: "\"en\"";
} }
]; ];
optional zitadel.user.v2alpha.Gender gender = 6 [ optional zitadel.user.v2beta.Gender gender = 6 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
example: "\"GENDER_FEMALE\""; example: "\"GENDER_FEMALE\"";
} }

View File

@ -1,15 +1,15 @@
syntax = "proto3"; syntax = "proto3";
package zitadel.user.v2alpha; package zitadel.user.v2beta;
import "zitadel/object/v2alpha/object.proto"; import "zitadel/object/v2beta/object.proto";
import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/protoc_gen_zitadel/v2/options.proto";
import "zitadel/user/v2alpha/auth.proto"; import "zitadel/user/v2beta/auth.proto";
import "zitadel/user/v2alpha/email.proto"; import "zitadel/user/v2beta/email.proto";
import "zitadel/user/v2alpha/phone.proto"; import "zitadel/user/v2beta/phone.proto";
import "zitadel/user/v2alpha/idp.proto"; import "zitadel/user/v2beta/idp.proto";
import "zitadel/user/v2alpha/password.proto"; import "zitadel/user/v2beta/password.proto";
import "zitadel/user/v2alpha/user.proto"; import "zitadel/user/v2beta/user.proto";
import "google/api/annotations.proto"; import "google/api/annotations.proto";
import "google/api/field_behavior.proto"; import "google/api/field_behavior.proto";
import "google/protobuf/duration.proto"; import "google/protobuf/duration.proto";
@ -17,13 +17,13 @@ import "google/protobuf/struct.proto";
import "protoc-gen-openapiv2/options/annotations.proto"; import "protoc-gen-openapiv2/options/annotations.proto";
import "validate/validate.proto"; import "validate/validate.proto";
option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha;user"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/user/v2beta;user";
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = {
info: { info: {
title: "User Service"; title: "User Service";
version: "2.0-alpha"; version: "2.0-beta";
description: "This API is intended to manage users in a ZITADEL instance. This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login."; description: "This API is intended to manage users in a ZITADEL instance. This project is in beta state. It can AND will continue breaking until the services provide the same functionality as the current login.";
contact:{ contact:{
name: "ZITADEL" name: "ZITADEL"
url: "https://zitadel.com" url: "https://zitadel.com"
@ -112,7 +112,7 @@ service UserService {
// Create a new human user // Create a new human user
rpc AddHumanUser (AddHumanUserRequest) returns (AddHumanUserResponse) { rpc AddHumanUser (AddHumanUserRequest) returns (AddHumanUserResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/human" post: "/v2beta/users/human"
body: "*" body: "*"
}; };
@ -141,7 +141,7 @@ service UserService {
// Change the email of a user // Change the email of a user
rpc SetEmail (SetEmailRequest) returns (SetEmailResponse) { rpc SetEmail (SetEmailRequest) returns (SetEmailResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/email" post: "/v2beta/users/{user_id}/email"
body: "*" body: "*"
}; };
@ -166,7 +166,7 @@ service UserService {
// Verify the email with the provided code // Verify the email with the provided code
rpc VerifyEmail (VerifyEmailRequest) returns (VerifyEmailResponse) { rpc VerifyEmail (VerifyEmailRequest) returns (VerifyEmailResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/email/verify" post: "/v2beta/users/{user_id}/email/verify"
body: "*" body: "*"
}; };
@ -191,7 +191,7 @@ service UserService {
// Change the phone of a user // Change the phone of a user
rpc SetPhone(SetPhoneRequest) returns (SetPhoneResponse) { rpc SetPhone(SetPhoneRequest) returns (SetPhoneResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/phone" post: "/v2beta/users/{user_id}/phone"
body: "*" body: "*"
}; };
@ -216,7 +216,7 @@ service UserService {
// Verify the phone with the provided code // Verify the phone with the provided code
rpc VerifyPhone (VerifyPhoneRequest) returns (VerifyPhoneResponse) { rpc VerifyPhone (VerifyPhoneRequest) returns (VerifyPhoneResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/phone/verify" post: "/v2beta/users/{user_id}/phone/verify"
body: "*" body: "*"
}; };
@ -240,7 +240,7 @@ service UserService {
rpc RegisterPasskey (RegisterPasskeyRequest) returns (RegisterPasskeyResponse) { rpc RegisterPasskey (RegisterPasskeyRequest) returns (RegisterPasskeyResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/passkeys" post: "/v2beta/users/{user_id}/passkeys"
body: "*" body: "*"
}; };
@ -262,7 +262,7 @@ service UserService {
} }
rpc VerifyPasskeyRegistration (VerifyPasskeyRegistrationRequest) returns (VerifyPasskeyRegistrationResponse) { rpc VerifyPasskeyRegistration (VerifyPasskeyRegistrationRequest) returns (VerifyPasskeyRegistrationResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/passkeys/{passkey_id}" post: "/v2beta/users/{user_id}/passkeys/{passkey_id}"
body: "*" body: "*"
}; };
@ -284,7 +284,7 @@ service UserService {
} }
rpc CreatePasskeyRegistrationLink (CreatePasskeyRegistrationLinkRequest) returns (CreatePasskeyRegistrationLinkResponse) { rpc CreatePasskeyRegistrationLink (CreatePasskeyRegistrationLinkRequest) returns (CreatePasskeyRegistrationLinkResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/passkeys/registration_link" post: "/v2beta/users/{user_id}/passkeys/registration_link"
body: "*" body: "*"
}; };
@ -307,7 +307,7 @@ service UserService {
rpc RegisterU2F (RegisterU2FRequest) returns (RegisterU2FResponse) { rpc RegisterU2F (RegisterU2FRequest) returns (RegisterU2FResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/u2f" post: "/v2beta/users/{user_id}/u2f"
body: "*" body: "*"
}; };
@ -330,7 +330,7 @@ service UserService {
rpc VerifyU2FRegistration (VerifyU2FRegistrationRequest) returns (VerifyU2FRegistrationResponse) { rpc VerifyU2FRegistration (VerifyU2FRegistrationRequest) returns (VerifyU2FRegistrationResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/u2f/{u2f_id}" post: "/v2beta/users/{user_id}/u2f/{u2f_id}"
body: "*" body: "*"
}; };
@ -353,7 +353,7 @@ service UserService {
rpc RegisterTOTP (RegisterTOTPRequest) returns (RegisterTOTPResponse) { rpc RegisterTOTP (RegisterTOTPRequest) returns (RegisterTOTPResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/totp" post: "/v2beta/users/{user_id}/totp"
body: "*" body: "*"
}; };
@ -376,7 +376,7 @@ service UserService {
rpc VerifyTOTPRegistration (VerifyTOTPRegistrationRequest) returns (VerifyTOTPRegistrationResponse) { rpc VerifyTOTPRegistration (VerifyTOTPRegistrationRequest) returns (VerifyTOTPRegistrationResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/totp/verify" post: "/v2beta/users/{user_id}/totp/verify"
body: "*" body: "*"
}; };
@ -399,7 +399,7 @@ service UserService {
rpc AddOTPSMS (AddOTPSMSRequest) returns (AddOTPSMSResponse) { rpc AddOTPSMS (AddOTPSMSRequest) returns (AddOTPSMSResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/otp_sms" post: "/v2beta/users/{user_id}/otp_sms"
body: "*" body: "*"
}; };
@ -422,7 +422,7 @@ service UserService {
rpc RemoveOTPSMS (RemoveOTPSMSRequest) returns (RemoveOTPSMSResponse) { rpc RemoveOTPSMS (RemoveOTPSMSRequest) returns (RemoveOTPSMSResponse) {
option (google.api.http) = { option (google.api.http) = {
delete: "/v2alpha/users/{user_id}/otp_sms" delete: "/v2beta/users/{user_id}/otp_sms"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -444,7 +444,7 @@ service UserService {
rpc AddOTPEmail (AddOTPEmailRequest) returns (AddOTPEmailResponse) { rpc AddOTPEmail (AddOTPEmailRequest) returns (AddOTPEmailResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/otp_email" post: "/v2beta/users/{user_id}/otp_email"
body: "*" body: "*"
}; };
@ -467,7 +467,7 @@ service UserService {
rpc RemoveOTPEmail (RemoveOTPEmailRequest) returns (RemoveOTPEmailResponse) { rpc RemoveOTPEmail (RemoveOTPEmailRequest) returns (RemoveOTPEmailResponse) {
option (google.api.http) = { option (google.api.http) = {
delete: "/v2alpha/users/{user_id}/otp_email" delete: "/v2beta/users/{user_id}/otp_email"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -490,7 +490,7 @@ service UserService {
// Start an IDP authentication (for external login, registration or linking) // Start an IDP authentication (for external login, registration or linking)
rpc StartIdentityProviderIntent (StartIdentityProviderIntentRequest) returns (StartIdentityProviderIntentResponse) { rpc StartIdentityProviderIntent (StartIdentityProviderIntentRequest) returns (StartIdentityProviderIntentResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/idp_intents" post: "/v2beta/idp_intents"
body: "*" body: "*"
}; };
@ -514,7 +514,7 @@ service UserService {
rpc RetrieveIdentityProviderIntent (RetrieveIdentityProviderIntentRequest) returns (RetrieveIdentityProviderIntentResponse) { rpc RetrieveIdentityProviderIntent (RetrieveIdentityProviderIntentRequest) returns (RetrieveIdentityProviderIntentResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/idp_intents/{idp_intent_id}" post: "/v2beta/idp_intents/{idp_intent_id}"
body: "*" body: "*"
}; };
@ -539,7 +539,7 @@ service UserService {
// Link an IDP to an existing user // Link an IDP to an existing user
rpc AddIDPLink (AddIDPLinkRequest) returns (AddIDPLinkResponse) { rpc AddIDPLink (AddIDPLinkRequest) returns (AddIDPLinkResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/links" post: "/v2beta/users/{user_id}/links"
body: "*" body: "*"
}; };
@ -564,7 +564,7 @@ service UserService {
// Request password reset // Request password reset
rpc PasswordReset (PasswordResetRequest) returns (PasswordResetResponse) { rpc PasswordReset (PasswordResetRequest) returns (PasswordResetResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/password_reset" post: "/v2beta/users/{user_id}/password_reset"
body: "*" body: "*"
}; };
@ -589,7 +589,7 @@ service UserService {
// Change password // Change password
rpc SetPassword (SetPasswordRequest) returns (SetPasswordResponse) { rpc SetPassword (SetPasswordRequest) returns (SetPasswordResponse) {
option (google.api.http) = { option (google.api.http) = {
post: "/v2alpha/users/{user_id}/password" post: "/v2beta/users/{user_id}/password"
body: "*" body: "*"
}; };
@ -614,7 +614,7 @@ service UserService {
// List all possible authentication methods of a user // List all possible authentication methods of a user
rpc ListAuthenticationMethodTypes (ListAuthenticationMethodTypesRequest) returns (ListAuthenticationMethodTypesResponse) { rpc ListAuthenticationMethodTypes (ListAuthenticationMethodTypesRequest) returns (ListAuthenticationMethodTypesResponse) {
option (google.api.http) = { option (google.api.http) = {
get: "/v2alpha/users/{user_id}/authentication_methods" get: "/v2beta/users/{user_id}/authentication_methods"
}; };
option (zitadel.protoc_gen_zitadel.v2.options) = { option (zitadel.protoc_gen_zitadel.v2.options) = {
@ -655,7 +655,7 @@ message AddHumanUserRequest{
example: "\"minnie-mouse\""; example: "\"minnie-mouse\"";
} }
]; ];
zitadel.object.v2alpha.Organisation organisation = 3; zitadel.object.v2beta.Organisation organisation = 3;
SetHumanProfile profile = 4 [ SetHumanProfile profile = 4 [
(validate.rules).message.required = true, (validate.rules).message.required = true,
(google.api.field_behavior) = REQUIRED (google.api.field_behavior) = REQUIRED
@ -675,7 +675,7 @@ message AddHumanUserRequest{
message AddHumanUserResponse { message AddHumanUserResponse {
string user_id = 1; string user_id = 1;
zitadel.object.v2alpha.Details details = 2; zitadel.object.v2beta.Details details = 2;
optional string email_code = 3; optional string email_code = 3;
optional string phone_code = 4; optional string phone_code = 4;
} }
@ -708,7 +708,7 @@ message SetEmailRequest{
} }
message SetEmailResponse{ message SetEmailResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
// in case the verification was set to return_code, the code will be returned // in case the verification was set to return_code, the code will be returned
optional string verification_code = 2; optional string verification_code = 2;
} }
@ -736,7 +736,7 @@ message VerifyEmailRequest{
} }
message VerifyEmailResponse{ message VerifyEmailResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message SetPhoneRequest{ message SetPhoneRequest{
@ -767,7 +767,7 @@ message SetPhoneRequest{
} }
message SetPhoneResponse{ message SetPhoneResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
// in case the verification was set to return_code, the code will be returned // in case the verification was set to return_code, the code will be returned
optional string verification_code = 2; optional string verification_code = 2;
} }
@ -795,7 +795,7 @@ message VerifyPhoneRequest{
} }
message VerifyPhoneResponse{ message VerifyPhoneResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message RegisterPasskeyRequest{ message RegisterPasskeyRequest{
@ -826,7 +826,7 @@ message RegisterPasskeyRequest{
} }
message RegisterPasskeyResponse{ message RegisterPasskeyResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string passkey_id = 2 [ string passkey_id = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
example: "\"163840776835432705\"" example: "\"163840776835432705\""
@ -881,7 +881,7 @@ message VerifyPasskeyRegistrationRequest{
} }
message VerifyPasskeyRegistrationResponse{ message VerifyPasskeyRegistrationResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message RegisterU2FRequest{ message RegisterU2FRequest{
@ -902,7 +902,7 @@ message RegisterU2FRequest{
} }
message RegisterU2FResponse{ message RegisterU2FResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string u2f_id = 2 [ string u2f_id = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
example: "\"163840776835432705\"" example: "\"163840776835432705\""
@ -957,7 +957,7 @@ message VerifyU2FRegistrationRequest{
} }
message VerifyU2FRegistrationResponse{ message VerifyU2FRegistrationResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message RegisterTOTPRequest { message RegisterTOTPRequest {
@ -973,7 +973,7 @@ message RegisterTOTPRequest {
} }
message RegisterTOTPResponse { message RegisterTOTPResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
string uri = 2 [ string uri = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
example: "\"otpauth://totp/ZITADEL:gigi@acme.zitadel.cloud?algorithm=SHA1&digits=6&issuer=ZITADEL&period=30&secret=TJOPWSDYILLHXFV4MLKNNJOWFG7VSDCK\""; example: "\"otpauth://totp/ZITADEL:gigi@acme.zitadel.cloud?algorithm=SHA1&digits=6&issuer=ZITADEL&period=30&secret=TJOPWSDYILLHXFV4MLKNNJOWFG7VSDCK\"";
@ -1007,7 +1007,7 @@ message VerifyTOTPRegistrationRequest {
} }
message VerifyTOTPRegistrationResponse { message VerifyTOTPRegistrationResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message AddOTPSMSRequest { message AddOTPSMSRequest {
@ -1023,7 +1023,7 @@ message AddOTPSMSRequest {
} }
message AddOTPSMSResponse { message AddOTPSMSResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message RemoveOTPSMSRequest { message RemoveOTPSMSRequest {
@ -1039,7 +1039,7 @@ message RemoveOTPSMSRequest {
} }
message RemoveOTPSMSResponse { message RemoveOTPSMSResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message AddOTPEmailRequest { message AddOTPEmailRequest {
@ -1055,7 +1055,7 @@ message AddOTPEmailRequest {
} }
message AddOTPEmailResponse { message AddOTPEmailResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message RemoveOTPEmailRequest { message RemoveOTPEmailRequest {
@ -1071,7 +1071,7 @@ message RemoveOTPEmailRequest {
} }
message RemoveOTPEmailResponse { message RemoveOTPEmailResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message CreatePasskeyRegistrationLinkRequest{ message CreatePasskeyRegistrationLinkRequest{
@ -1092,7 +1092,7 @@ message CreatePasskeyRegistrationLinkRequest{
} }
message CreatePasskeyRegistrationLinkResponse{ message CreatePasskeyRegistrationLinkResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
// in case the medium was set to return_code, the code will be returned // in case the medium was set to return_code, the code will be returned
optional PasskeyRegistrationCode code = 2 [ optional PasskeyRegistrationCode code = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
@ -1119,7 +1119,7 @@ message StartIdentityProviderIntentRequest{
} }
message StartIdentityProviderIntentResponse{ message StartIdentityProviderIntentResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
oneof next_step { oneof next_step {
string auth_url = 2 [ string auth_url = 2 [
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
@ -1157,7 +1157,7 @@ message RetrieveIdentityProviderIntentRequest{
} }
message RetrieveIdentityProviderIntentResponse{ message RetrieveIdentityProviderIntentResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
IDPInformation idp_information = 2; IDPInformation idp_information = 2;
} }
@ -1175,7 +1175,7 @@ message AddIDPLinkRequest{
} }
message AddIDPLinkResponse { message AddIDPLinkResponse {
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
@ -1197,7 +1197,7 @@ message PasswordResetRequest{
} }
message PasswordResetResponse{ message PasswordResetResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
// in case the medium was set to return_code, the code will be returned // in case the medium was set to return_code, the code will be returned
optional string verification_code = 2; optional string verification_code = 2;
} }
@ -1239,7 +1239,7 @@ message SetPasswordRequest{
} }
message SetPasswordResponse{ message SetPasswordResponse{
zitadel.object.v2alpha.Details details = 1; zitadel.object.v2beta.Details details = 1;
} }
message ListAuthenticationMethodTypesRequest{ message ListAuthenticationMethodTypesRequest{
@ -1255,7 +1255,7 @@ message ListAuthenticationMethodTypesRequest{
} }
message ListAuthenticationMethodTypesResponse{ message ListAuthenticationMethodTypesResponse{
zitadel.object.v2alpha.ListDetails details = 1; zitadel.object.v2beta.ListDetails details = 1;
repeated AuthenticationMethodType auth_method_types = 2; repeated AuthenticationMethodType auth_method_types = 2;
} }