From 2105dd232afc95b57fe9fbf6246d64598b94055d Mon Sep 17 00:00:00 2001 From: Iraq Jaber Date: Mon, 5 May 2025 09:33:40 +0200 Subject: [PATCH] fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! fixup! refactor(api): moving organization API resourced based --- internal/api/grpc/org/v2beta/org.go | 10 ---- proto/zitadel/admin.proto | 2 + proto/zitadel/management.proto | 65 +++++++++++++--------- proto/zitadel/org/v2beta/org_service.proto | 46 +-------------- 4 files changed, 43 insertions(+), 80 deletions(-) diff --git a/internal/api/grpc/org/v2beta/org.go b/internal/api/grpc/org/v2beta/org.go index bd585c54c2..912144b62f 100644 --- a/internal/api/grpc/org/v2beta/org.go +++ b/internal/api/grpc/org/v2beta/org.go @@ -36,16 +36,6 @@ func (s *Server) UpdateOrganization(ctx context.Context, request *v2beta_org.Upd }, nil } -func (s *Server) GetOrganizationByID(ctx context.Context, request *v2beta_org.GetOrganizationByIDRequest) (*v2beta_org.GetOrganizationByIDResponse, error) { - org, err := s.query.OrgByID(ctx, true, request.Id) - if err != nil { - return nil, err - } - return &v2beta_org.GetOrganizationByIDResponse{ - Organization: OrganizationViewToPb(org), - }, nil -} - func (s *Server) ListOrganizations(ctx context.Context, request *v2beta_org.ListOrganizationsRequest) (*v2beta_org.ListOrganizationsResponse, error) { queries, err := listOrgRequestToModel(request) if err != nil { diff --git a/proto/zitadel/admin.proto b/proto/zitadel/admin.proto index d9f8bee2c7..e6685fdca5 100644 --- a/proto/zitadel/admin.proto +++ b/proto/zitadel/admin.proto @@ -1237,6 +1237,7 @@ service AdminService { }; } + // Deprecated: use ListOrganization [/v2beta/organization/_search] API instead rpc ListOrgs(ListOrgsRequest) returns (ListOrgsResponse) { option (google.api.http) = { post: "/orgs/_search"; @@ -1305,6 +1306,7 @@ service AdminService { }; } + // Deprecated: use ListOrganization [/v2beta/organization] API instead rpc RemoveOrg(RemoveOrgRequest) returns (RemoveOrgResponse) { option (google.api.http) = { delete: "/orgs/{org_id}" diff --git a/proto/zitadel/management.proto b/proto/zitadel/management.proto index e69e331f87..524e0ed8f4 100644 --- a/proto/zitadel/management.proto +++ b/proto/zitadel/management.proto @@ -2119,6 +2119,7 @@ service ManagementService { }; } + // Deprecated: use CreateOrganization [/v2beta/organization] API instead rpc AddOrg(AddOrgRequest) returns (AddOrgResponse) { option (google.api.http) = { post: "/orgs" @@ -2144,6 +2145,7 @@ service ManagementService { }; } + // Deprecated: use UpdateOrganization [/v2beta/organization] API instead rpc UpdateOrg(UpdateOrgRequest) returns (UpdateOrgResponse) { option (google.api.http) = { put: "/orgs/me" @@ -2169,6 +2171,7 @@ service ManagementService { }; } + // Deprecated: use DeactivateOrganization [/v2beta/organization/_deactivate] API instead rpc DeactivateOrg(DeactivateOrgRequest) returns (DeactivateOrgResponse) { option (google.api.http) = { post: "/orgs/me/_deactivate" @@ -2194,6 +2197,7 @@ service ManagementService { }; } + // Reprecated: use ReactivateOrganization [/v2beta/organization/_reactivate] API instead rpc ReactivateOrg(ReactivateOrgRequest) returns (ReactivateOrgResponse) { option (google.api.http) = { post: "/orgs/me/_reactivate" @@ -2219,6 +2223,7 @@ service ManagementService { }; } + // Deprecated: use ListOrganization [/v2beta/organization] API instead rpc RemoveOrg(RemoveOrgRequest) returns (RemoveOrgResponse) { option (google.api.http) = { delete: "/orgs/me" @@ -2243,6 +2248,7 @@ service ManagementService { }; } + // Deprecated: use SetOrganizationMetadata [/v2beta/organization/metadata] API instead rpc SetOrgMetadata(SetOrgMetadataRequest) returns (SetOrgMetadataResponse) { option (google.api.http) = { post: "/metadata/{key}" @@ -2269,6 +2275,7 @@ service ManagementService { }; } + // Deprecated: use SetOrganizationMetadata [/v2beta/organization/metadata] API instead rpc BulkSetOrgMetadata(BulkSetOrgMetadataRequest) returns (BulkSetOrgMetadataResponse) { option (google.api.http) = { post: "/metadata/_bulk" @@ -2295,6 +2302,7 @@ service ManagementService { }; } + // Deprecated: use ListOrganizationMetadata [/v2beta/organization/metadata/_search] API instead rpc ListOrgMetadata(ListOrgMetadataRequest) returns (ListOrgMetadataResponse) { option (google.api.http) = { post: "/metadata/_search" @@ -2321,6 +2329,7 @@ service ManagementService { }; } + // Deprecated: use ListOrganizationMetadata [/v2beta/organization/metadata/_search] API instead rpc GetOrgMetadata(GetOrgMetadataRequest) returns (GetOrgMetadataResponse) { option (google.api.http) = { get: "/metadata/{key}" @@ -2346,6 +2355,7 @@ service ManagementService { }; } + // Deprecated: use DeleteOrganizationMetadata [/v2beta/organization/metadata] API instead rpc RemoveOrgMetadata(RemoveOrgMetadataRequest) returns (RemoveOrgMetadataResponse) { option (google.api.http) = { delete: "/metadata/{key}" @@ -2397,31 +2407,7 @@ service ManagementService { }; } - rpc ListOrgDomains(ListOrgDomainsRequest) returns (ListOrgDomainsResponse) { - option (google.api.http) = { - post: "/orgs/me/domains/_search" - body: "*" - }; - - option (zitadel.v1.auth_option) = { - permission: "org.read" - }; - - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - tags: "Organizations"; - summary: "Search Domains"; - description: "Returns the list of registered domains of an organization. The domains are used to identify to which organization a user belongs." - parameters: { - headers: { - name: "x-zitadel-orgid"; - description: "The default is always the organization of the requesting user. If you like to get/set a result of another organization include the header. Make sure the user has permission to access the requested data."; - type: STRING, - required: false; - }; - }; - }; - } - + // Deprecated: use AddOrganizationDomain [/v2beta/organization/domain] API instead rpc AddOrgDomain(AddOrgDomainRequest) returns (AddOrgDomainResponse) { option (google.api.http) = { post: "/orgs/me/domains" @@ -2447,6 +2433,33 @@ service ManagementService { }; } + // Deprecated: use ListOrganizationDomains [/v2beta/organization/domain/_search] API instead + rpc ListOrgDomains(ListOrgDomainsRequest) returns (ListOrgDomainsResponse) { + option (google.api.http) = { + post: "/orgs/me/domains/_search" + body: "*" + }; + + option (zitadel.v1.auth_option) = { + permission: "org.read" + }; + + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { + tags: "Organizations"; + summary: "Search Domains"; + description: "Returns the list of registered domains of an organization. The domains are used to identify to which organization a user belongs." + parameters: { + headers: { + name: "x-zitadel-orgid"; + description: "The default is always the organization of the requesting user. If you like to get/set a result of another organization include the header. Make sure the user has permission to access the requested data."; + type: STRING, + required: false; + }; + }; + }; + } + + // Deprecated: use DeleteOrganizationDomain [/v2beta/organization/domain] API instead rpc RemoveOrgDomain(RemoveOrgDomainRequest) returns (RemoveOrgDomainResponse) { option (google.api.http) = { delete: "/orgs/me/domains/{domain}" @@ -2471,6 +2484,7 @@ service ManagementService { }; } + // Deprecated: use GenerateOrganizationDomainValidation [/v2beta/organization/domains/validation/_generate] API instead rpc GenerateOrgDomainValidation(GenerateOrgDomainValidationRequest) returns (GenerateOrgDomainValidationResponse) { option (google.api.http) = { post: "/orgs/me/domains/{domain}/validation/_generate" @@ -2496,6 +2510,7 @@ service ManagementService { }; } + // Deprecated: use VerifyOrganizationDomain [/v2beta/organization/domains/validation/_verify] API instead rpc ValidateOrgDomain(ValidateOrgDomainRequest) returns (ValidateOrgDomainResponse) { option (google.api.http) = { post: "/orgs/me/domains/{domain}/validation/_validate" diff --git a/proto/zitadel/org/v2beta/org_service.proto b/proto/zitadel/org/v2beta/org_service.proto index 03bea3361d..2032b89f2e 100644 --- a/proto/zitadel/org/v2beta/org_service.proto +++ b/proto/zitadel/org/v2beta/org_service.proto @@ -163,33 +163,6 @@ service OrganizationService { }; } - rpc GetOrganizationByID(GetOrganizationByIDRequest) returns (GetOrganizationByIDResponse) { - option (google.api.http) = { - get: "/v2beta/organization" - }; - - option (zitadel.protoc_gen_zitadel.v2.options) = { - auth_option: { - permission: "iam.read"; - } - http_response: { - success_code: 200 - } - }; - - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - tags: "Organizations"; - summary: "Get Organization By ID"; - description: "Returns an organization by its ID." - responses: { - key: "200"; - value: { - description: "requested organization found"; - }; - }; - }; - } - rpc ListOrganizations(ListOrganizationsRequest) returns (ListOrganizationsResponse) { option (google.api.http) = { post: "/v2beta/organization/_search"; @@ -479,7 +452,7 @@ service OrganizationService { rpc VerifyOrganizationDomain(VerifyOrganizationDomainRequest) returns (VerifyOrganizationDomainResponse) { option (google.api.http) = { - post: "/v2beta/organization/domains/validation/_validate" + post: "/v2beta/organization/domains/validation/_verify" body: "*" }; @@ -638,23 +611,6 @@ message UpdateOrganizationResponse { zitadel.object.v2beta.Details details = 1; } -message GetOrganizationByIDRequest { - string id = 1 [ - (validate.rules).string = {min_len: 1, max_len: 200}, - (google.api.field_behavior) = REQUIRED, - (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { - min_length: 1; - max_length: 200; - example: "\"69629012906488334\""; - description: "Organization ID of the organization you want to get." - } - ]; -} - -message GetOrganizationByIDResponse { - zitadel.org.v2beta.Organization organization = 1; -} - message ListOrganizationsRequest { option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema) = { json_schema: {