Skip to content

Commit 0597748

Browse files
committed
feat(frontier): add list and search service users api
1 parent dfb40e5 commit 0597748

1 file changed

Lines changed: 49 additions & 4 deletions

File tree

raystack/frontier/v1beta1/admin.proto

Lines changed: 49 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,15 @@ service AdminService {
136136
};
137137
}
138138

139+
rpc ListAllServiceUsers(ListAllServiceUsersRequest) returns (ListAllServiceUsersResponse) {
140+
option (google.api.http) = {get: "/v1beta1/admin/serviceusers"};
141+
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
142+
tags: "User";
143+
summary: "List all service users";
144+
description: "Lists all the service users from all the organizations in a Frontier instance.";
145+
};
146+
}
147+
139148
// Group
140149
rpc ListGroups(ListGroupsRequest) returns (ListGroupsResponse) {
141150
option (google.api.http) = {get: "/v1beta1/admin/groups"};
@@ -181,7 +190,7 @@ service AdminService {
181190

182191
rpc SearchOrganizationUsers(SearchOrganizationUsersRequest) returns (SearchOrganizationUsersResponse) {
183192
option (google.api.http) = {
184-
post: "/v1beta1/admin/organizations/{id}/users/search",
193+
post: "/v1beta1/admin/organizations/{id}/users/search",
185194
body: "query"
186195
};
187196
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
@@ -192,7 +201,7 @@ service AdminService {
192201

193202
rpc SearchProjectUsers(SearchProjectUsersRequest) returns (SearchProjectUsersResponse) {
194203
option (google.api.http) = {
195-
post: "/v1beta1/admin/projects/{id}/users/search",
204+
post: "/v1beta1/admin/projects/{id}/users/search",
196205
body: "query"
197206
};
198207
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
@@ -214,7 +223,7 @@ service AdminService {
214223

215224
rpc SearchOrganizationInvoices(SearchOrganizationInvoicesRequest) returns (SearchOrganizationInvoicesResponse) {
216225
option (google.api.http) = {
217-
post: "/v1beta1/admin/organizations/{id}/invoices/search",
226+
post: "/v1beta1/admin/organizations/{id}/invoices/search",
218227
body: "query"
219228
};
220229
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
@@ -245,6 +254,17 @@ service AdminService {
245254
};
246255
}
247256

257+
rpc SearchOrganizationServiceUsers(SearchOrganizationServiceUsersRequest) returns (SearchOrganizationServiceUsersResponse) {
258+
option (google.api.http) = {
259+
post: "/v1beta1/admin/organizations/{id}/serviceusers/search",
260+
body: "query"
261+
};
262+
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
263+
tags: "Organization";
264+
summary: "Search organization service users";
265+
};
266+
}
267+
248268
// buf:lint:ignore RPC_RESPONSE_STANDARD_NAME
249269
// buf:lint:ignore RPC_REQUEST_RESPONSE_UNIQUE
250270
rpc ExportOrganizations(ExportOrganizationsRequest) returns (stream google.api.HttpBody) {
@@ -329,7 +349,7 @@ service AdminService {
329349

330350
rpc SearchUserOrganizations(SearchUserOrganizationsRequest) returns (SearchUserOrganizationsResponse) {
331351
option (google.api.http) = {
332-
post: "/v1beta1/admin/users/{id}/organizations/search",
352+
post: "/v1beta1/admin/users/{id}/organizations/search",
333353
body: "query"
334354
};
335355
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
@@ -780,6 +800,13 @@ message ListAllUsersResponse {
780800
repeated User users = 2;
781801
}
782802

803+
message ListAllServiceUsersRequest {
804+
}
805+
806+
message ListAllServiceUsersResponse {
807+
repeated ServiceUser service_users = 1;
808+
}
809+
783810
message ListGroupsRequest {
784811
reserved 1;
785812
string org_id = 2 [(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {description: "The organization id to filter by."}];
@@ -1630,3 +1657,21 @@ message SearchInvoicesResponse {
16301657
RQLQueryPaginationResponse pagination = 2;
16311658
RQLQueryGroupResponse group = 3;
16321659
}
1660+
1661+
message SearchOrganizationServiceUsersRequest {
1662+
string id = 1 [(validate.rules).string.min_len = 3];
1663+
RQLRequest query = 2;
1664+
}
1665+
1666+
message SearchOrganizationServiceUsersResponse {
1667+
message OrganizationServiceUser {
1668+
string title = 1;
1669+
google.protobuf.Timestamp created_at = 2;
1670+
string org_id = 3;
1671+
repeated string project_titles = 4;
1672+
}
1673+
1674+
repeated OrganizationServiceUser organization_service_users = 1;
1675+
RQLQueryPaginationResponse pagination = 2;
1676+
RQLQueryGroupResponse group = 3;
1677+
}

0 commit comments

Comments
 (0)