From c635040bd500687c611db4c7ba61421ddab22953 Mon Sep 17 00:00:00 2001 From: scaleway-bot Date: Tue, 16 May 2023 14:50:04 +0000 Subject: [PATCH] feat: update generated APIs --- .../clients/src/api/iam/v1alpha1/api.gen.ts | 29 +++++++++++++++++++ .../clients/src/api/iam/v1alpha1/index.gen.ts | 1 + .../src/api/iam/v1alpha1/marshalling.gen.ts | 9 ++++++ .../clients/src/api/iam/v1alpha1/types.gen.ts | 9 ++++++ 4 files changed, 48 insertions(+) diff --git a/packages/clients/src/api/iam/v1alpha1/api.gen.ts b/packages/clients/src/api/iam/v1alpha1/api.gen.ts index 11dc27c5c..cd9d46b31 100644 --- a/packages/clients/src/api/iam/v1alpha1/api.gen.ts +++ b/packages/clients/src/api/iam/v1alpha1/api.gen.ts @@ -9,6 +9,7 @@ import { } from '../../../bridge' import { marshalAddGroupMemberRequest, + marshalAddGroupMembersRequest, marshalCreateAPIKeyRequest, marshalCreateApplicationRequest, marshalCreateGroupRequest, @@ -45,6 +46,7 @@ import { import type { APIKey, AddGroupMemberRequest, + AddGroupMembersRequest, Application, ClonePolicyRequest, CreateAPIKeyRequest, @@ -565,6 +567,33 @@ export class API extends ParentAPI { unmarshalGroup, ) + /** + * Add multiple users and applications to a group. Add multiple users and + * applications to a group in a single call. You can specify an array of + * `user_id`s and `application_id`s. Note that any existing users and + * applications in the group will remain. To add new users/applications and + * delete pre-existing ones, use the [Overwrite users and applications of a + * group](#path-groups-overwrite-users-and-applications-of-a-group) method. + * + * @param request - The request {@link AddGroupMembersRequest} + * @returns A Promise of Group + */ + addGroupMembers = (request: Readonly) => + this.client.fetch( + { + body: JSON.stringify( + marshalAddGroupMembersRequest(request, this.client.settings), + ), + headers: jsonContentHeaders, + method: 'POST', + path: `/iam/v1alpha1/groups/${validatePathParam( + 'groupId', + request.groupId, + )}/add-members`, + }, + unmarshalGroup, + ) + /** * Remove a user or an application from a group. Remove a user or an * application from a group. You can specify a `user_id` and and diff --git a/packages/clients/src/api/iam/v1alpha1/index.gen.ts b/packages/clients/src/api/iam/v1alpha1/index.gen.ts index 7238401cf..4297ea6b9 100644 --- a/packages/clients/src/api/iam/v1alpha1/index.gen.ts +++ b/packages/clients/src/api/iam/v1alpha1/index.gen.ts @@ -4,6 +4,7 @@ export { API } from './api.gen' export type { APIKey, AddGroupMemberRequest, + AddGroupMembersRequest, Application, BearerType, ClonePolicyRequest, diff --git a/packages/clients/src/api/iam/v1alpha1/marshalling.gen.ts b/packages/clients/src/api/iam/v1alpha1/marshalling.gen.ts index a303ea0a9..0cd6220a7 100644 --- a/packages/clients/src/api/iam/v1alpha1/marshalling.gen.ts +++ b/packages/clients/src/api/iam/v1alpha1/marshalling.gen.ts @@ -11,6 +11,7 @@ import type { DefaultValues } from '../../../bridge' import type { APIKey, AddGroupMemberRequest, + AddGroupMembersRequest, Application, CreateAPIKeyRequest, CreateApplicationRequest, @@ -422,6 +423,14 @@ export const marshalAddGroupMemberRequest = ( ]), }) +export const marshalAddGroupMembersRequest = ( + request: AddGroupMembersRequest, + defaults: DefaultValues, +): Record => ({ + application_ids: request.applicationIds, + user_ids: request.userIds, +}) + export const marshalCreateAPIKeyRequest = ( request: CreateAPIKeyRequest, defaults: DefaultValues, diff --git a/packages/clients/src/api/iam/v1alpha1/types.gen.ts b/packages/clients/src/api/iam/v1alpha1/types.gen.ts index 8454a5d90..ae1de21ee 100644 --- a/packages/clients/src/api/iam/v1alpha1/types.gen.ts +++ b/packages/clients/src/api/iam/v1alpha1/types.gen.ts @@ -626,6 +626,15 @@ export type AddGroupMemberRequest = { applicationId?: string } +export type AddGroupMembersRequest = { + /** ID of the group. */ + groupId: string + /** IDs of the users to add. */ + userIds?: string[] + /** IDs of the applications to add. */ + applicationIds?: string[] +} + export type RemoveGroupMemberRequest = { /** ID of the group. */ groupId: string