@scaleway/sdk-iam 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { API as ParentAPI } from '@scaleway/sdk-client';
2
- import type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateScimTokenRequest, CreateScimTokenResponse, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSamlCertificateRequest, DeleteSamlRequest, DeleteScimRequest, DeleteScimTokenRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EnableOrganizationSamlRequest, EnableOrganizationScimRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSamlRequest, GetOrganizationScimRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, Group, InitiateUserConnectionRequest, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysRequest, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsResponse, ListJWTsRequest, ListJWTsResponse, ListLogsRequest, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesResponse, ListQuotaRequest, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSamlCertificatesRequest, ListSamlCertificatesResponse, ListScimTokensRequest, ListScimTokensResponse, ListSSHKeysRequest, ListSSHKeysResponse, ListUsersRequest, ListUsersResponse, LockUserRequest, Log, MFAOTP, Organization, OrganizationSecuritySettings, ParseSamlMetadataRequest, ParseSamlMetadataResponse, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Saml, SamlCertificate, Scim, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationLoginMethodsRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen.js';
2
+ import type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateScimTokenRequest, CreateScimTokenResponse, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSamlCertificateRequest, DeleteSamlRequest, DeleteScimRequest, DeleteScimTokenRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, DeleteWebAuthnAuthenticatorRequest, EnableOrganizationSamlRequest, EnableOrganizationScimRequest, EncodedJWT, FinishUserWebAuthnRegistrationRequest, FinishUserWebAuthnRegistrationResponse, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSamlRequest, GetOrganizationScimRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, Group, InitiateUserConnectionRequest, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysRequest, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsResponse, ListJWTsRequest, ListJWTsResponse, ListLogsRequest, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesResponse, ListQuotaRequest, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSamlCertificatesRequest, ListSamlCertificatesResponse, ListScimTokensRequest, ListScimTokensResponse, ListSSHKeysRequest, ListSSHKeysResponse, ListUsersRequest, ListUsersResponse, ListUserWebAuthnAuthenticatorsRequest, ListUserWebAuthnAuthenticatorsResponse, LockUserRequest, Log, MFAOTP, Organization, OrganizationSecuritySettings, ParseSamlMetadataRequest, ParseSamlMetadataResponse, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Saml, SamlCertificate, Scim, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, StartUserWebAuthnRegistrationRequest, StartUserWebAuthnRegistrationResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationLoginMethodsRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, UpdateWebAuthnAuthenticatorRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, WebAuthnAuthenticator } from './types.gen.js';
3
3
  /**
4
4
  * IAM API.
5
5
 
@@ -557,4 +557,42 @@ export declare class API extends ParentAPI {
557
557
  * @param request - The request {@link DeleteScimTokenRequest}
558
558
  */
559
559
  deleteScimToken: (request: Readonly<DeleteScimTokenRequest>) => Promise<void>;
560
+ /**
561
+ * Start registering a WebAuthn authenticator.
562
+ *
563
+ * @param request - The request {@link StartUserWebAuthnRegistrationRequest}
564
+ * @returns A Promise of StartUserWebAuthnRegistrationResponse
565
+ */
566
+ startUserWebAuthnRegistration: (request: Readonly<StartUserWebAuthnRegistrationRequest>) => Promise<StartUserWebAuthnRegistrationResponse>;
567
+ /**
568
+ * Complete a WebAuthen authenticator registration.
569
+ *
570
+ * @param request - The request {@link FinishUserWebAuthnRegistrationRequest}
571
+ * @returns A Promise of FinishUserWebAuthnRegistrationResponse
572
+ */
573
+ finishUserWebAuthnRegistration: (request: Readonly<FinishUserWebAuthnRegistrationRequest>) => Promise<FinishUserWebAuthnRegistrationResponse>;
574
+ protected pageOfListUserWebAuthnAuthenticators: (request: Readonly<ListUserWebAuthnAuthenticatorsRequest>) => Promise<ListUserWebAuthnAuthenticatorsResponse>;
575
+ /**
576
+ * List all of a user's WebAuthn Authenticators.
577
+ *
578
+ * @param request - The request {@link ListUserWebAuthnAuthenticatorsRequest}
579
+ * @returns A Promise of ListUserWebAuthnAuthenticatorsResponse
580
+ */
581
+ listUserWebAuthnAuthenticators: (request: Readonly<ListUserWebAuthnAuthenticatorsRequest>) => Promise<ListUserWebAuthnAuthenticatorsResponse> & {
582
+ all: () => Promise<WebAuthnAuthenticator[]>;
583
+ [Symbol.asyncIterator]: () => AsyncGenerator<WebAuthnAuthenticator[], void, void>;
584
+ };
585
+ /**
586
+ * Update a WebAuthn authenticator.
587
+ *
588
+ * @param request - The request {@link UpdateWebAuthnAuthenticatorRequest}
589
+ * @returns A Promise of WebAuthnAuthenticator
590
+ */
591
+ updateWebAuthnAuthenticator: (request: Readonly<UpdateWebAuthnAuthenticatorRequest>) => Promise<WebAuthnAuthenticator>;
592
+ /**
593
+ * Delete a WebAuthn authenticator.
594
+ *
595
+ * @param request - The request {@link DeleteWebAuthnAuthenticatorRequest}
596
+ */
597
+ deleteWebAuthnAuthenticator: (request: Readonly<DeleteWebAuthnAuthenticatorRequest>) => Promise<void>;
560
598
  }
@@ -1,5 +1,5 @@
1
1
  import { API as API$1, urlParams, enrichForPagination, validatePathParam, resolveOneOf } from "@scaleway/sdk-client";
2
- import { unmarshalListSSHKeysResponse, marshalCreateSSHKeyRequest, unmarshalSSHKey, marshalUpdateSSHKeyRequest, unmarshalListUsersResponse, unmarshalUser, marshalUpdateUserRequest, marshalCreateUserRequest, marshalUpdateUserUsernameRequest, marshalUpdateUserPasswordRequest, unmarshalMFAOTP, marshalValidateUserMFAOTPRequest, unmarshalValidateUserMFAOTPResponse, unmarshalListGracePeriodsResponse, unmarshalGetUserConnectionsResponse, unmarshalInitiateUserConnectionResponse, marshalJoinUserConnectionRequest, marshalRemoveUserConnectionRequest, unmarshalListApplicationsResponse, marshalCreateApplicationRequest, unmarshalApplication, marshalUpdateApplicationRequest, unmarshalListGroupsResponse, marshalCreateGroupRequest, unmarshalGroup, marshalUpdateGroupRequest, marshalSetGroupMembersRequest, marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalRemoveGroupMemberRequest, unmarshalListPoliciesResponse, marshalCreatePolicyRequest, unmarshalPolicy, marshalUpdatePolicyRequest, marshalSetRulesRequest, unmarshalSetRulesResponse, unmarshalListRulesResponse, unmarshalListPermissionSetsResponse, unmarshalListAPIKeysResponse, marshalCreateAPIKeyRequest, unmarshalAPIKey, marshalUpdateAPIKeyRequest, unmarshalListQuotaResponse, unmarshalQuotum, unmarshalListJWTsResponse, marshalCreateJWTRequest, unmarshalEncodedJWT, unmarshalJWT, unmarshalListLogsResponse, unmarshalLog, unmarshalOrganizationSecuritySettings, marshalUpdateOrganizationSecuritySettingsRequest, marshalSetOrganizationAliasRequest, unmarshalOrganization, marshalUpdateOrganizationLoginMethodsRequest, unmarshalSaml, marshalUpdateSamlRequest, marshalParseSamlMetadataRequest, unmarshalParseSamlMetadataResponse, unmarshalListSamlCertificatesResponse, marshalAddSamlCertificateRequest, unmarshalSamlCertificate, unmarshalScim, unmarshalListScimTokensResponse, unmarshalCreateScimTokenResponse } from "./marshalling.gen.js";
2
+ import { unmarshalListSSHKeysResponse, marshalCreateSSHKeyRequest, unmarshalSSHKey, marshalUpdateSSHKeyRequest, unmarshalListUsersResponse, unmarshalUser, marshalUpdateUserRequest, marshalCreateUserRequest, marshalUpdateUserUsernameRequest, marshalUpdateUserPasswordRequest, unmarshalMFAOTP, marshalValidateUserMFAOTPRequest, unmarshalValidateUserMFAOTPResponse, unmarshalListGracePeriodsResponse, unmarshalGetUserConnectionsResponse, unmarshalInitiateUserConnectionResponse, marshalJoinUserConnectionRequest, marshalRemoveUserConnectionRequest, unmarshalListApplicationsResponse, marshalCreateApplicationRequest, unmarshalApplication, marshalUpdateApplicationRequest, unmarshalListGroupsResponse, marshalCreateGroupRequest, unmarshalGroup, marshalUpdateGroupRequest, marshalSetGroupMembersRequest, marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalRemoveGroupMemberRequest, unmarshalListPoliciesResponse, marshalCreatePolicyRequest, unmarshalPolicy, marshalUpdatePolicyRequest, marshalSetRulesRequest, unmarshalSetRulesResponse, unmarshalListRulesResponse, unmarshalListPermissionSetsResponse, unmarshalListAPIKeysResponse, marshalCreateAPIKeyRequest, unmarshalAPIKey, marshalUpdateAPIKeyRequest, unmarshalListQuotaResponse, unmarshalQuotum, unmarshalListJWTsResponse, marshalCreateJWTRequest, unmarshalEncodedJWT, unmarshalJWT, unmarshalListLogsResponse, unmarshalLog, unmarshalOrganizationSecuritySettings, marshalUpdateOrganizationSecuritySettingsRequest, marshalSetOrganizationAliasRequest, unmarshalOrganization, marshalUpdateOrganizationLoginMethodsRequest, unmarshalSaml, marshalUpdateSamlRequest, marshalParseSamlMetadataRequest, unmarshalParseSamlMetadataResponse, unmarshalListSamlCertificatesResponse, marshalAddSamlCertificateRequest, unmarshalSamlCertificate, unmarshalScim, unmarshalListScimTokensResponse, unmarshalCreateScimTokenResponse, unmarshalStartUserWebAuthnRegistrationResponse, marshalFinishUserWebAuthnRegistrationRequest, unmarshalFinishUserWebAuthnRegistrationResponse, unmarshalListUserWebAuthnAuthenticatorsResponse, marshalUpdateWebAuthnAuthenticatorRequest, unmarshalWebAuthnAuthenticator } from "./marshalling.gen.js";
3
3
  const jsonContentHeaders = {
4
4
  "Content-Type": "application/json; charset=utf-8"
5
5
  };
@@ -1260,6 +1260,97 @@ class API extends API$1 {
1260
1260
  method: "DELETE",
1261
1261
  path: `/iam/v1alpha1/scim-tokens/${validatePathParam("tokenId", request.tokenId)}`
1262
1262
  });
1263
+ /**
1264
+ * Start registering a WebAuthn authenticator.
1265
+ *
1266
+ * @param request - The request {@link StartUserWebAuthnRegistrationRequest}
1267
+ * @returns A Promise of StartUserWebAuthnRegistrationResponse
1268
+ */
1269
+ startUserWebAuthnRegistration = (request) => this.client.fetch(
1270
+ {
1271
+ method: "POST",
1272
+ path: `/iam/v1alpha1/users/${validatePathParam("userId", request.userId)}/start-webauthn-registration`,
1273
+ urlParams: urlParams(["origin", request.origin])
1274
+ },
1275
+ unmarshalStartUserWebAuthnRegistrationResponse
1276
+ );
1277
+ /**
1278
+ * Complete a WebAuthen authenticator registration.
1279
+ *
1280
+ * @param request - The request {@link FinishUserWebAuthnRegistrationRequest}
1281
+ * @returns A Promise of FinishUserWebAuthnRegistrationResponse
1282
+ */
1283
+ finishUserWebAuthnRegistration = (request) => this.client.fetch(
1284
+ {
1285
+ body: JSON.stringify(
1286
+ marshalFinishUserWebAuthnRegistrationRequest(
1287
+ request,
1288
+ this.client.settings
1289
+ )
1290
+ ),
1291
+ headers: jsonContentHeaders,
1292
+ method: "POST",
1293
+ path: `/iam/v1alpha1/users/${validatePathParam("userId", request.userId)}/finish-webauthn-registration`
1294
+ },
1295
+ unmarshalFinishUserWebAuthnRegistrationResponse
1296
+ );
1297
+ pageOfListUserWebAuthnAuthenticators = (request) => this.client.fetch(
1298
+ {
1299
+ method: "GET",
1300
+ path: `/iam/v1alpha1/users/${validatePathParam("userId", request.userId)}/webauthn-authenticators`,
1301
+ urlParams: urlParams(
1302
+ ["order_by", request.orderBy],
1303
+ ["page", request.page],
1304
+ [
1305
+ "page_size",
1306
+ request.pageSize ?? this.client.settings.defaultPageSize
1307
+ ]
1308
+ )
1309
+ },
1310
+ unmarshalListUserWebAuthnAuthenticatorsResponse
1311
+ );
1312
+ /**
1313
+ * List all of a user's WebAuthn Authenticators.
1314
+ *
1315
+ * @param request - The request {@link ListUserWebAuthnAuthenticatorsRequest}
1316
+ * @returns A Promise of ListUserWebAuthnAuthenticatorsResponse
1317
+ */
1318
+ listUserWebAuthnAuthenticators = (request) => enrichForPagination(
1319
+ "authenticators",
1320
+ this.pageOfListUserWebAuthnAuthenticators,
1321
+ request
1322
+ );
1323
+ /**
1324
+ * Update a WebAuthn authenticator.
1325
+ *
1326
+ * @param request - The request {@link UpdateWebAuthnAuthenticatorRequest}
1327
+ * @returns A Promise of WebAuthnAuthenticator
1328
+ */
1329
+ updateWebAuthnAuthenticator = (request) => this.client.fetch(
1330
+ {
1331
+ body: JSON.stringify(
1332
+ marshalUpdateWebAuthnAuthenticatorRequest(
1333
+ request,
1334
+ this.client.settings
1335
+ )
1336
+ ),
1337
+ headers: jsonContentHeaders,
1338
+ method: "PATCH",
1339
+ path: `/iam/v1alpha1/webauthn-authenticator/${validatePathParam("authenticatorId", request.authenticatorId)}`
1340
+ },
1341
+ unmarshalWebAuthnAuthenticator
1342
+ );
1343
+ /**
1344
+ * Delete a WebAuthn authenticator.
1345
+ *
1346
+ * @param request - The request {@link DeleteWebAuthnAuthenticatorRequest}
1347
+ */
1348
+ deleteWebAuthnAuthenticator = (request) => this.client.fetch({
1349
+ body: "{}",
1350
+ headers: jsonContentHeaders,
1351
+ method: "DELETE",
1352
+ path: `/iam/v1alpha1/webauthn-authenticator/${validatePathParam("authenticatorId", request.authenticatorId)}`
1353
+ });
1263
1354
  }
1264
1355
  export {
1265
1356
  API
@@ -1,4 +1,4 @@
1
1
  export { API } from './api.gen.js';
2
2
  export * from './marshalling.gen.js';
3
- export type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, BearerType, ClonePolicyRequest, Connection, ConnectionConnectedOrganization, ConnectionConnectedUser, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateScimTokenRequest, CreateScimTokenResponse, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, CreateUserRequestMember, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSamlCertificateRequest, DeleteSamlRequest, DeleteScimRequest, DeleteScimTokenRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EnableOrganizationSamlRequest, EnableOrganizationScimRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSamlRequest, GetOrganizationScimRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, GracePeriod, GracePeriodType, Group, InitiateUserConnectionRequest, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysRequest, ListAPIKeysRequestOrderBy, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsRequestOrderBy, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsRequestOrderBy, ListGroupsResponse, ListJWTsRequest, ListJWTsRequestOrderBy, ListJWTsResponse, ListLogsRequest, ListLogsRequestOrderBy, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsRequestOrderBy, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesRequestOrderBy, ListPoliciesResponse, ListQuotaRequest, ListQuotaRequestOrderBy, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSamlCertificatesRequest, ListSamlCertificatesResponse, ListScimTokensRequest, ListScimTokensRequestOrderBy, ListScimTokensResponse, ListSSHKeysRequest, ListSSHKeysRequestOrderBy, ListSSHKeysResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, LocalityType, LockUserRequest, Log, LogAction, LogResourceType, MFAOTP, Organization, OrganizationSecuritySettings, ParseSamlMetadataRequest, ParseSamlMetadataResponse, PermissionSet, PermissionSetScopeType, Policy, Quotum, QuotumLimit, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Rule, RuleSpecs, Saml, SamlCertificate, SamlCertificateOrigin, SamlCertificateType, SamlServiceProvider, SamlStatus, Scim, ScimToken, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationLoginMethodsRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, UserStatus, UserType, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, } from './types.gen.js';
3
+ export type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, BearerType, ClonePolicyRequest, Connection, ConnectionConnectedOrganization, ConnectionConnectedUser, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateScimTokenRequest, CreateScimTokenResponse, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, CreateUserRequestMember, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSamlCertificateRequest, DeleteSamlRequest, DeleteScimRequest, DeleteScimTokenRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, DeleteWebAuthnAuthenticatorRequest, EnableOrganizationSamlRequest, EnableOrganizationScimRequest, EncodedJWT, FinishUserWebAuthnRegistrationRequest, FinishUserWebAuthnRegistrationResponse, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSamlRequest, GetOrganizationScimRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, GracePeriod, GracePeriodType, Group, InitiateUserConnectionRequest, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysRequest, ListAPIKeysRequestOrderBy, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsRequestOrderBy, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsRequestOrderBy, ListGroupsResponse, ListJWTsRequest, ListJWTsRequestOrderBy, ListJWTsResponse, ListLogsRequest, ListLogsRequestOrderBy, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsRequestOrderBy, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesRequestOrderBy, ListPoliciesResponse, ListQuotaRequest, ListQuotaRequestOrderBy, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSamlCertificatesRequest, ListSamlCertificatesResponse, ListScimTokensRequest, ListScimTokensRequestOrderBy, ListScimTokensResponse, ListSSHKeysRequest, ListSSHKeysRequestOrderBy, ListSSHKeysResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, ListUserWebAuthnAuthenticatorsRequest, ListUserWebAuthnAuthenticatorsRequestOrderBy, ListUserWebAuthnAuthenticatorsResponse, LocalityType, LockUserRequest, Log, LogAction, LogResourceType, MFAOTP, Organization, OrganizationSecuritySettings, ParseSamlMetadataRequest, ParseSamlMetadataResponse, PermissionSet, PermissionSetScopeType, Policy, Quotum, QuotumLimit, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Rule, RuleSpecs, Saml, SamlCertificate, SamlCertificateOrigin, SamlCertificateType, SamlServiceProvider, SamlStatus, Scim, ScimToken, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, StartUserWebAuthnRegistrationRequest, StartUserWebAuthnRegistrationResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationLoginMethodsRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, UpdateWebAuthnAuthenticatorRequest, User, UserStatus, UserType, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, WebAuthnAuthenticator, } from './types.gen.js';
4
4
  export * as ValidationRules from './validation-rules.gen.js';
@@ -1,5 +1,5 @@
1
1
  import { API } from "./api.gen.js";
2
- import { marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalAddSamlCertificateRequest, marshalCreateAPIKeyRequest, marshalCreateApplicationRequest, marshalCreateGroupRequest, marshalCreateJWTRequest, marshalCreatePolicyRequest, marshalCreateSSHKeyRequest, marshalCreateUserRequest, marshalJoinUserConnectionRequest, marshalParseSamlMetadataRequest, marshalRemoveGroupMemberRequest, marshalRemoveUserConnectionRequest, marshalSetGroupMembersRequest, marshalSetOrganizationAliasRequest, marshalSetRulesRequest, marshalUpdateAPIKeyRequest, marshalUpdateApplicationRequest, marshalUpdateGroupRequest, marshalUpdateOrganizationLoginMethodsRequest, marshalUpdateOrganizationSecuritySettingsRequest, marshalUpdatePolicyRequest, marshalUpdateSSHKeyRequest, marshalUpdateSamlRequest, marshalUpdateUserPasswordRequest, marshalUpdateUserRequest, marshalUpdateUserUsernameRequest, marshalValidateUserMFAOTPRequest, unmarshalAPIKey, unmarshalApplication, unmarshalCreateScimTokenResponse, unmarshalEncodedJWT, unmarshalGetUserConnectionsResponse, unmarshalGroup, unmarshalInitiateUserConnectionResponse, unmarshalJWT, unmarshalListAPIKeysResponse, unmarshalListApplicationsResponse, unmarshalListGracePeriodsResponse, unmarshalListGroupsResponse, unmarshalListJWTsResponse, unmarshalListLogsResponse, unmarshalListPermissionSetsResponse, unmarshalListPoliciesResponse, unmarshalListQuotaResponse, unmarshalListRulesResponse, unmarshalListSSHKeysResponse, unmarshalListSamlCertificatesResponse, unmarshalListScimTokensResponse, unmarshalListUsersResponse, unmarshalLog, unmarshalMFAOTP, unmarshalOrganization, unmarshalOrganizationSecuritySettings, unmarshalParseSamlMetadataResponse, unmarshalPolicy, unmarshalQuotum, unmarshalSSHKey, unmarshalSaml, unmarshalSamlCertificate, unmarshalScim, unmarshalSetRulesResponse, unmarshalUser, unmarshalValidateUserMFAOTPResponse } from "./marshalling.gen.js";
2
+ import { marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalAddSamlCertificateRequest, marshalCreateAPIKeyRequest, marshalCreateApplicationRequest, marshalCreateGroupRequest, marshalCreateJWTRequest, marshalCreatePolicyRequest, marshalCreateSSHKeyRequest, marshalCreateUserRequest, marshalFinishUserWebAuthnRegistrationRequest, marshalJoinUserConnectionRequest, marshalParseSamlMetadataRequest, marshalRemoveGroupMemberRequest, marshalRemoveUserConnectionRequest, marshalSetGroupMembersRequest, marshalSetOrganizationAliasRequest, marshalSetRulesRequest, marshalUpdateAPIKeyRequest, marshalUpdateApplicationRequest, marshalUpdateGroupRequest, marshalUpdateOrganizationLoginMethodsRequest, marshalUpdateOrganizationSecuritySettingsRequest, marshalUpdatePolicyRequest, marshalUpdateSSHKeyRequest, marshalUpdateSamlRequest, marshalUpdateUserPasswordRequest, marshalUpdateUserRequest, marshalUpdateUserUsernameRequest, marshalUpdateWebAuthnAuthenticatorRequest, marshalValidateUserMFAOTPRequest, unmarshalAPIKey, unmarshalApplication, unmarshalCreateScimTokenResponse, unmarshalEncodedJWT, unmarshalFinishUserWebAuthnRegistrationResponse, unmarshalGetUserConnectionsResponse, unmarshalGroup, unmarshalInitiateUserConnectionResponse, unmarshalJWT, unmarshalListAPIKeysResponse, unmarshalListApplicationsResponse, unmarshalListGracePeriodsResponse, unmarshalListGroupsResponse, unmarshalListJWTsResponse, unmarshalListLogsResponse, unmarshalListPermissionSetsResponse, unmarshalListPoliciesResponse, unmarshalListQuotaResponse, unmarshalListRulesResponse, unmarshalListSSHKeysResponse, unmarshalListSamlCertificatesResponse, unmarshalListScimTokensResponse, unmarshalListUserWebAuthnAuthenticatorsResponse, unmarshalListUsersResponse, unmarshalLog, unmarshalMFAOTP, unmarshalOrganization, unmarshalOrganizationSecuritySettings, unmarshalParseSamlMetadataResponse, unmarshalPolicy, unmarshalQuotum, unmarshalSSHKey, unmarshalSaml, unmarshalSamlCertificate, unmarshalScim, unmarshalSetRulesResponse, unmarshalStartUserWebAuthnRegistrationResponse, unmarshalUser, unmarshalValidateUserMFAOTPResponse, unmarshalWebAuthnAuthenticator } from "./marshalling.gen.js";
3
3
  import * as validationRules_gen from "./validation-rules.gen.js";
4
4
  export {
5
5
  API,
@@ -14,6 +14,7 @@ export {
14
14
  marshalCreatePolicyRequest,
15
15
  marshalCreateSSHKeyRequest,
16
16
  marshalCreateUserRequest,
17
+ marshalFinishUserWebAuthnRegistrationRequest,
17
18
  marshalJoinUserConnectionRequest,
18
19
  marshalParseSamlMetadataRequest,
19
20
  marshalRemoveGroupMemberRequest,
@@ -32,11 +33,13 @@ export {
32
33
  marshalUpdateUserPasswordRequest,
33
34
  marshalUpdateUserRequest,
34
35
  marshalUpdateUserUsernameRequest,
36
+ marshalUpdateWebAuthnAuthenticatorRequest,
35
37
  marshalValidateUserMFAOTPRequest,
36
38
  unmarshalAPIKey,
37
39
  unmarshalApplication,
38
40
  unmarshalCreateScimTokenResponse,
39
41
  unmarshalEncodedJWT,
42
+ unmarshalFinishUserWebAuthnRegistrationResponse,
40
43
  unmarshalGetUserConnectionsResponse,
41
44
  unmarshalGroup,
42
45
  unmarshalInitiateUserConnectionResponse,
@@ -54,6 +57,7 @@ export {
54
57
  unmarshalListSSHKeysResponse,
55
58
  unmarshalListSamlCertificatesResponse,
56
59
  unmarshalListScimTokensResponse,
60
+ unmarshalListUserWebAuthnAuthenticatorsResponse,
57
61
  unmarshalListUsersResponse,
58
62
  unmarshalLog,
59
63
  unmarshalMFAOTP,
@@ -67,6 +71,8 @@ export {
67
71
  unmarshalSamlCertificate,
68
72
  unmarshalScim,
69
73
  unmarshalSetRulesResponse,
74
+ unmarshalStartUserWebAuthnRegistrationResponse,
70
75
  unmarshalUser,
71
- unmarshalValidateUserMFAOTPResponse
76
+ unmarshalValidateUserMFAOTPResponse,
77
+ unmarshalWebAuthnAuthenticator
72
78
  };
@@ -1,5 +1,5 @@
1
1
  import type { DefaultValues } from '@scaleway/sdk-client';
2
- import type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateScimTokenResponse, CreateSSHKeyRequest, CreateUserRequest, EncodedJWT, GetUserConnectionsResponse, Group, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysResponse, ListApplicationsResponse, ListGracePeriodsResponse, ListGroupsResponse, ListJWTsResponse, ListLogsResponse, ListPermissionSetsResponse, ListPoliciesResponse, ListQuotaResponse, ListRulesResponse, ListSamlCertificatesResponse, ListScimTokensResponse, ListSSHKeysResponse, ListUsersResponse, Log, MFAOTP, Organization, OrganizationSecuritySettings, ParseSamlMetadataRequest, ParseSamlMetadataResponse, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Saml, SamlCertificate, Scim, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationLoginMethodsRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen.js';
2
+ import type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateScimTokenResponse, CreateSSHKeyRequest, CreateUserRequest, EncodedJWT, FinishUserWebAuthnRegistrationRequest, FinishUserWebAuthnRegistrationResponse, GetUserConnectionsResponse, Group, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysResponse, ListApplicationsResponse, ListGracePeriodsResponse, ListGroupsResponse, ListJWTsResponse, ListLogsResponse, ListPermissionSetsResponse, ListPoliciesResponse, ListQuotaResponse, ListRulesResponse, ListSamlCertificatesResponse, ListScimTokensResponse, ListSSHKeysResponse, ListUsersResponse, ListUserWebAuthnAuthenticatorsResponse, Log, MFAOTP, Organization, OrganizationSecuritySettings, ParseSamlMetadataRequest, ParseSamlMetadataResponse, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Saml, SamlCertificate, Scim, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, StartUserWebAuthnRegistrationResponse, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationLoginMethodsRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, UpdateWebAuthnAuthenticatorRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, WebAuthnAuthenticator } from './types.gen.js';
3
3
  export declare const unmarshalJWT: (data: unknown) => JWT;
4
4
  export declare const unmarshalAPIKey: (data: unknown) => APIKey;
5
5
  export declare const unmarshalApplication: (data: unknown) => Application;
@@ -9,9 +9,11 @@ export declare const unmarshalPolicy: (data: unknown) => Policy;
9
9
  export declare const unmarshalQuotum: (data: unknown) => Quotum;
10
10
  export declare const unmarshalSSHKey: (data: unknown) => SSHKey;
11
11
  export declare const unmarshalSamlCertificate: (data: unknown) => SamlCertificate;
12
+ export declare const unmarshalWebAuthnAuthenticator: (data: unknown) => WebAuthnAuthenticator;
12
13
  export declare const unmarshalUser: (data: unknown) => User;
13
14
  export declare const unmarshalCreateScimTokenResponse: (data: unknown) => CreateScimTokenResponse;
14
15
  export declare const unmarshalEncodedJWT: (data: unknown) => EncodedJWT;
16
+ export declare const unmarshalFinishUserWebAuthnRegistrationResponse: (data: unknown) => FinishUserWebAuthnRegistrationResponse;
15
17
  export declare const unmarshalGetUserConnectionsResponse: (data: unknown) => GetUserConnectionsResponse;
16
18
  export declare const unmarshalInitiateUserConnectionResponse: (data: unknown) => InitiateUserConnectionResponse;
17
19
  export declare const unmarshalListAPIKeysResponse: (data: unknown) => ListAPIKeysResponse;
@@ -27,6 +29,7 @@ export declare const unmarshalListRulesResponse: (data: unknown) => ListRulesRes
27
29
  export declare const unmarshalListSSHKeysResponse: (data: unknown) => ListSSHKeysResponse;
28
30
  export declare const unmarshalListSamlCertificatesResponse: (data: unknown) => ListSamlCertificatesResponse;
29
31
  export declare const unmarshalListScimTokensResponse: (data: unknown) => ListScimTokensResponse;
32
+ export declare const unmarshalListUserWebAuthnAuthenticatorsResponse: (data: unknown) => ListUserWebAuthnAuthenticatorsResponse;
30
33
  export declare const unmarshalListUsersResponse: (data: unknown) => ListUsersResponse;
31
34
  export declare const unmarshalMFAOTP: (data: unknown) => MFAOTP;
32
35
  export declare const unmarshalOrganization: (data: unknown) => Organization;
@@ -35,6 +38,7 @@ export declare const unmarshalParseSamlMetadataResponse: (data: unknown) => Pars
35
38
  export declare const unmarshalSaml: (data: unknown) => Saml;
36
39
  export declare const unmarshalScim: (data: unknown) => Scim;
37
40
  export declare const unmarshalSetRulesResponse: (data: unknown) => SetRulesResponse;
41
+ export declare const unmarshalStartUserWebAuthnRegistrationResponse: (data: unknown) => StartUserWebAuthnRegistrationResponse;
38
42
  export declare const unmarshalValidateUserMFAOTPResponse: (data: unknown) => ValidateUserMFAOTPResponse;
39
43
  export declare const marshalAddGroupMemberRequest: (request: AddGroupMemberRequest, defaults: DefaultValues) => Record<string, unknown>;
40
44
  export declare const marshalAddGroupMembersRequest: (request: AddGroupMembersRequest, defaults: DefaultValues) => Record<string, unknown>;
@@ -46,6 +50,7 @@ export declare const marshalCreateJWTRequest: (request: CreateJWTRequest, defaul
46
50
  export declare const marshalCreatePolicyRequest: (request: CreatePolicyRequest, defaults: DefaultValues) => Record<string, unknown>;
47
51
  export declare const marshalCreateSSHKeyRequest: (request: CreateSSHKeyRequest, defaults: DefaultValues) => Record<string, unknown>;
48
52
  export declare const marshalCreateUserRequest: (request: CreateUserRequest, defaults: DefaultValues) => Record<string, unknown>;
53
+ export declare const marshalFinishUserWebAuthnRegistrationRequest: (request: FinishUserWebAuthnRegistrationRequest, defaults: DefaultValues) => Record<string, unknown>;
49
54
  export declare const marshalJoinUserConnectionRequest: (request: JoinUserConnectionRequest, defaults: DefaultValues) => Record<string, unknown>;
50
55
  export declare const marshalParseSamlMetadataRequest: (request: ParseSamlMetadataRequest, defaults: DefaultValues) => Promise<Record<string, unknown>>;
51
56
  export declare const marshalRemoveGroupMemberRequest: (request: RemoveGroupMemberRequest, defaults: DefaultValues) => Record<string, unknown>;
@@ -64,4 +69,5 @@ export declare const marshalUpdateSamlRequest: (request: UpdateSamlRequest, defa
64
69
  export declare const marshalUpdateUserPasswordRequest: (request: UpdateUserPasswordRequest, defaults: DefaultValues) => Record<string, unknown>;
65
70
  export declare const marshalUpdateUserRequest: (request: UpdateUserRequest, defaults: DefaultValues) => Record<string, unknown>;
66
71
  export declare const marshalUpdateUserUsernameRequest: (request: UpdateUserUsernameRequest, defaults: DefaultValues) => Record<string, unknown>;
72
+ export declare const marshalUpdateWebAuthnAuthenticatorRequest: (request: UpdateWebAuthnAuthenticatorRequest, defaults: DefaultValues) => Record<string, unknown>;
67
73
  export declare const marshalValidateUserMFAOTPRequest: (request: ValidateUserMFAOTPRequest, defaults: DefaultValues) => Record<string, unknown>;
@@ -187,6 +187,19 @@ const unmarshalSamlCertificate = (data) => {
187
187
  type: data.type
188
188
  };
189
189
  };
190
+ const unmarshalWebAuthnAuthenticator = (data) => {
191
+ if (!isJSONObject(data)) {
192
+ throw new TypeError(
193
+ `Unmarshalling the type 'WebAuthnAuthenticator' failed as data isn't a dictionary.`
194
+ );
195
+ }
196
+ return {
197
+ createdAt: unmarshalDate(data.created_at),
198
+ id: data.id,
199
+ lastLoginAt: unmarshalDate(data.last_login_at),
200
+ name: data.name
201
+ };
202
+ };
190
203
  const unmarshalUser = (data) => {
191
204
  if (!isJSONObject(data)) {
192
205
  throw new TypeError(
@@ -251,6 +264,16 @@ const unmarshalEncodedJWT = (data) => {
251
264
  token: data.token
252
265
  };
253
266
  };
267
+ const unmarshalFinishUserWebAuthnRegistrationResponse = (data) => {
268
+ if (!isJSONObject(data)) {
269
+ throw new TypeError(
270
+ `Unmarshalling the type 'FinishUserWebAuthnRegistrationResponse' failed as data isn't a dictionary.`
271
+ );
272
+ }
273
+ return {
274
+ authenticatorId: data.authenticator_id
275
+ };
276
+ };
254
277
  const unmarshalConnectionConnectedOrganization = (data) => {
255
278
  if (!isJSONObject(data)) {
256
279
  throw new TypeError(
@@ -501,6 +524,20 @@ const unmarshalListScimTokensResponse = (data) => {
501
524
  totalCount: data.total_count
502
525
  };
503
526
  };
527
+ const unmarshalListUserWebAuthnAuthenticatorsResponse = (data) => {
528
+ if (!isJSONObject(data)) {
529
+ throw new TypeError(
530
+ `Unmarshalling the type 'ListUserWebAuthnAuthenticatorsResponse' failed as data isn't a dictionary.`
531
+ );
532
+ }
533
+ return {
534
+ authenticators: unmarshalArrayOfObject(
535
+ data.authenticators,
536
+ unmarshalWebAuthnAuthenticator
537
+ ),
538
+ totalCount: data.total_count
539
+ };
540
+ };
504
541
  const unmarshalListUsersResponse = (data) => {
505
542
  if (!isJSONObject(data)) {
506
543
  throw new TypeError(
@@ -610,6 +647,20 @@ const unmarshalSetRulesResponse = (data) => {
610
647
  rules: unmarshalArrayOfObject(data.rules, unmarshalRule)
611
648
  };
612
649
  };
650
+ const unmarshalStartUserWebAuthnRegistrationResponse = (data) => {
651
+ if (!isJSONObject(data)) {
652
+ throw new TypeError(
653
+ `Unmarshalling the type 'StartUserWebAuthnRegistrationResponse' failed as data isn't a dictionary.`
654
+ );
655
+ }
656
+ return {
657
+ ceremonyId: data.ceremony_id,
658
+ challenge: data.challenge,
659
+ excludeCredentials: data.exclude_credentials,
660
+ publicKeyAlgorithms: data.public_key_algorithms,
661
+ timeout: data.timeout
662
+ };
663
+ };
613
664
  const unmarshalValidateUserMFAOTPResponse = (data) => {
614
665
  if (!isJSONObject(data)) {
615
666
  throw new TypeError(
@@ -707,6 +758,17 @@ const marshalCreateUserRequest = (request, defaults) => ({
707
758
  }
708
759
  ])
709
760
  });
761
+ const marshalFinishUserWebAuthnRegistrationRequest = (request, defaults) => ({
762
+ attestation_object: request.attestationObject,
763
+ authenticator_data: request.authenticatorData,
764
+ authenticator_name: request.authenticatorName,
765
+ ceremony_id: request.ceremonyId,
766
+ client_data_json: request.clientDataJson,
767
+ origin: request.origin,
768
+ public_key: request.publicKey,
769
+ public_key_algorithm: request.publicKeyAlgorithm,
770
+ raw_id: request.rawId
771
+ });
710
772
  const marshalJoinUserConnectionRequest = (request, defaults) => ({
711
773
  token: request.token
712
774
  });
@@ -794,6 +856,9 @@ const marshalUpdateUserRequest = (request, defaults) => ({
794
856
  const marshalUpdateUserUsernameRequest = (request, defaults) => ({
795
857
  username: request.username
796
858
  });
859
+ const marshalUpdateWebAuthnAuthenticatorRequest = (request, defaults) => ({
860
+ authenticator_name: request.authenticatorName
861
+ });
797
862
  const marshalValidateUserMFAOTPRequest = (request, defaults) => ({
798
863
  one_time_password: request.oneTimePassword
799
864
  });
@@ -808,6 +873,7 @@ export {
808
873
  marshalCreatePolicyRequest,
809
874
  marshalCreateSSHKeyRequest,
810
875
  marshalCreateUserRequest,
876
+ marshalFinishUserWebAuthnRegistrationRequest,
811
877
  marshalJoinUserConnectionRequest,
812
878
  marshalParseSamlMetadataRequest,
813
879
  marshalRemoveGroupMemberRequest,
@@ -826,11 +892,13 @@ export {
826
892
  marshalUpdateUserPasswordRequest,
827
893
  marshalUpdateUserRequest,
828
894
  marshalUpdateUserUsernameRequest,
895
+ marshalUpdateWebAuthnAuthenticatorRequest,
829
896
  marshalValidateUserMFAOTPRequest,
830
897
  unmarshalAPIKey,
831
898
  unmarshalApplication,
832
899
  unmarshalCreateScimTokenResponse,
833
900
  unmarshalEncodedJWT,
901
+ unmarshalFinishUserWebAuthnRegistrationResponse,
834
902
  unmarshalGetUserConnectionsResponse,
835
903
  unmarshalGroup,
836
904
  unmarshalInitiateUserConnectionResponse,
@@ -848,6 +916,7 @@ export {
848
916
  unmarshalListSSHKeysResponse,
849
917
  unmarshalListSamlCertificatesResponse,
850
918
  unmarshalListScimTokensResponse,
919
+ unmarshalListUserWebAuthnAuthenticatorsResponse,
851
920
  unmarshalListUsersResponse,
852
921
  unmarshalLog,
853
922
  unmarshalMFAOTP,
@@ -861,6 +930,8 @@ export {
861
930
  unmarshalSamlCertificate,
862
931
  unmarshalScim,
863
932
  unmarshalSetRulesResponse,
933
+ unmarshalStartUserWebAuthnRegistrationResponse,
864
934
  unmarshalUser,
865
- unmarshalValidateUserMFAOTPResponse
935
+ unmarshalValidateUserMFAOTPResponse,
936
+ unmarshalWebAuthnAuthenticator
866
937
  };
@@ -11,6 +11,7 @@ export type ListPoliciesRequestOrderBy = 'policy_name_asc' | 'policy_name_desc'
11
11
  export type ListQuotaRequestOrderBy = 'name_asc' | 'name_desc';
12
12
  export type ListSSHKeysRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'updated_at_asc' | 'updated_at_desc' | 'name_asc' | 'name_desc';
13
13
  export type ListScimTokensRequestOrderBy = 'created_at_asc' | 'created_at_desc';
14
+ export type ListUserWebAuthnAuthenticatorsRequestOrderBy = 'created_at_asc' | 'created_at_desc';
14
15
  export type ListUsersRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'updated_at_asc' | 'updated_at_desc' | 'email_asc' | 'email_desc' | 'last_login_asc' | 'last_login_desc' | 'username_asc' | 'username_desc';
15
16
  export type LocalityType = 'global' | 'region' | 'zone';
16
17
  export type LogAction = 'unknown_action' | 'created' | 'updated' | 'deleted';
@@ -613,6 +614,24 @@ export interface SamlCertificate {
613
614
  */
614
615
  expiresAt?: Date;
615
616
  }
617
+ export interface WebAuthnAuthenticator {
618
+ /**
619
+ * The ID of the authenticator.
620
+ */
621
+ id: string;
622
+ /**
623
+ * The name of the authenticator.
624
+ */
625
+ name: string;
626
+ /**
627
+ * The creation date.
628
+ */
629
+ createdAt?: Date;
630
+ /**
631
+ * The timestamp of the last successful login using the authenticator.
632
+ */
633
+ lastLoginAt?: Date;
634
+ }
616
635
  export interface User {
617
636
  /**
618
637
  * ID of user.
@@ -989,6 +1008,9 @@ export type DeleteUserRequest = {
989
1008
  */
990
1009
  userId: string;
991
1010
  };
1011
+ export type DeleteWebAuthnAuthenticatorRequest = {
1012
+ authenticatorId: string;
1013
+ };
992
1014
  export type EnableOrganizationSamlRequest = {
993
1015
  /**
994
1016
  * ID of the Organization.
@@ -1015,6 +1037,54 @@ export interface EncodedJWT {
1015
1037
  */
1016
1038
  renewToken: string;
1017
1039
  }
1040
+ export type FinishUserWebAuthnRegistrationRequest = {
1041
+ /**
1042
+ * The ID of the user on which to finish a webauthn registration.
1043
+ */
1044
+ userId: string;
1045
+ /**
1046
+ * The ceremony ID returned by StartUserWebAuthnRegistration.
1047
+ */
1048
+ ceremonyId: string;
1049
+ /**
1050
+ * Name of the WebAuthn Authenticator to create.
1051
+ */
1052
+ authenticatorName: string;
1053
+ /**
1054
+ * The domain on which the registration is occurring.
1055
+ */
1056
+ origin: string;
1057
+ /**
1058
+ * Unique identifier of the key used by the authenticator.
1059
+ */
1060
+ rawId: string;
1061
+ /**
1062
+ * JSON representation of the client data.
1063
+ */
1064
+ clientDataJson: string;
1065
+ /**
1066
+ * Data about the authenticator that performed the authentication.
1067
+ */
1068
+ authenticatorData: string;
1069
+ /**
1070
+ * Attestation Object.
1071
+ */
1072
+ attestationObject: string;
1073
+ /**
1074
+ * Public key that allows to verify signature.
1075
+ */
1076
+ publicKey: string;
1077
+ /**
1078
+ * Algorithm used for the signature (see https://www.iana.org/assignments/cose/cose.xhtml#algorithms).
1079
+ */
1080
+ publicKeyAlgorithm: number;
1081
+ };
1082
+ export interface FinishUserWebAuthnRegistrationResponse {
1083
+ /**
1084
+ * The ID of the new authenticator created.
1085
+ */
1086
+ authenticatorId: string;
1087
+ }
1018
1088
  export type GetAPIKeyRequest = {
1019
1089
  /**
1020
1090
  * Access key to search for.
@@ -1598,6 +1668,34 @@ export interface ListScimTokensResponse {
1598
1668
  */
1599
1669
  totalCount: number;
1600
1670
  }
1671
+ export type ListUserWebAuthnAuthenticatorsRequest = {
1672
+ /**
1673
+ * A user ID to filter the authenticators for.
1674
+ */
1675
+ userId: string;
1676
+ /**
1677
+ * Sort order of the Authenticators.
1678
+ */
1679
+ orderBy?: ListUserWebAuthnAuthenticatorsRequestOrderBy;
1680
+ /**
1681
+ * Requested page number. Value must be greater or equal to 1.
1682
+ */
1683
+ page?: number;
1684
+ /**
1685
+ * Number of items per page. Value must be between 1 and 100.
1686
+ */
1687
+ pageSize?: number;
1688
+ };
1689
+ export interface ListUserWebAuthnAuthenticatorsResponse {
1690
+ /**
1691
+ * The total number of authenticators.
1692
+ */
1693
+ totalCount: number;
1694
+ /**
1695
+ * The list of authenticators.
1696
+ */
1697
+ authenticators: WebAuthnAuthenticator[];
1698
+ }
1601
1699
  export type ListUsersRequest = {
1602
1700
  /**
1603
1701
  * Criteria for sorting results.
@@ -1802,6 +1900,38 @@ export interface SetRulesResponse {
1802
1900
  */
1803
1901
  rules: Rule[];
1804
1902
  }
1903
+ export type StartUserWebAuthnRegistrationRequest = {
1904
+ /**
1905
+ * The ID of the user on which to start registering a WebAuthn authenticator.
1906
+ */
1907
+ userId: string;
1908
+ /**
1909
+ * The URL from which the registration request originated.
1910
+ */
1911
+ origin: string;
1912
+ };
1913
+ export interface StartUserWebAuthnRegistrationResponse {
1914
+ /**
1915
+ * A unique ID for this registration attempt, to reuse when calling FinishUserWebAuthnRegistration.
1916
+ */
1917
+ ceremonyId: string;
1918
+ /**
1919
+ * Random bytes constituting the challenge to solve for the credentials creation.
1920
+ */
1921
+ challenge: string;
1922
+ /**
1923
+ * List of algorithms supported by the relying party, as COSE algorithm identifiers.
1924
+ */
1925
+ publicKeyAlgorithms: number[];
1926
+ /**
1927
+ * Maximum duration of the registration ceremony, in milliseconds.
1928
+ */
1929
+ timeout?: string;
1930
+ /**
1931
+ * List of credentials that cannot be used to fulfill the ceremony.
1932
+ */
1933
+ excludeCredentials: string[];
1934
+ }
1805
1935
  export type UnlockUserRequest = {
1806
1936
  /**
1807
1937
  * ID of the user to unlock.
@@ -2027,6 +2157,16 @@ export type UpdateUserUsernameRequest = {
2027
2157
  */
2028
2158
  username: string;
2029
2159
  };
2160
+ export type UpdateWebAuthnAuthenticatorRequest = {
2161
+ /**
2162
+ * The ID of the authenticator to update.
2163
+ */
2164
+ authenticatorId: string;
2165
+ /**
2166
+ * A new name for this authenticator.
2167
+ */
2168
+ authenticatorName?: string;
2169
+ };
2030
2170
  export type ValidateUserMFAOTPRequest = {
2031
2171
  /**
2032
2172
  * User ID of the MFA OTP.
@@ -69,6 +69,12 @@ export declare const CreateUserRequestMember: {
69
69
  pattern: RegExp;
70
70
  };
71
71
  };
72
+ export declare const FinishUserWebAuthnRegistrationRequest: {
73
+ authenticatorName: {
74
+ maxLength: number;
75
+ minLength: number;
76
+ };
77
+ };
72
78
  export declare const GetQuotumRequest: {
73
79
  quotumName: {
74
80
  minLength: number;
@@ -207,6 +213,16 @@ export declare const ListScimTokensRequest: {
207
213
  lessThanOrEqual: number;
208
214
  };
209
215
  };
216
+ export declare const ListUserWebAuthnAuthenticatorsRequest: {
217
+ page: {
218
+ greaterThanOrEqual: number;
219
+ lessThanOrEqual: number;
220
+ };
221
+ pageSize: {
222
+ greaterThanOrEqual: number;
223
+ lessThanOrEqual: number;
224
+ };
225
+ };
210
226
  export declare const ListUsersRequest: {
211
227
  page: {
212
228
  greaterThanOrEqual: number;
@@ -280,6 +296,9 @@ export declare const UpdateSamlRequest: {
280
296
  maxLength: number;
281
297
  minLength: number;
282
298
  };
299
+ singleSignOnUrl: {
300
+ prefix: string;
301
+ };
283
302
  };
284
303
  export declare const UpdateUserRequest: {
285
304
  firstName: {
@@ -296,6 +315,12 @@ export declare const UpdateUserUsernameRequest: {
296
315
  pattern: RegExp;
297
316
  };
298
317
  };
318
+ export declare const UpdateWebAuthnAuthenticatorRequest: {
319
+ authenticatorName: {
320
+ maxLength: number;
321
+ minLength: number;
322
+ };
323
+ };
299
324
  export declare const ValidateUserMFAOTPRequest: {
300
325
  oneTimePassword: {
301
326
  pattern: RegExp;
@@ -69,6 +69,12 @@ const CreateUserRequestMember = {
69
69
  pattern: /^[a-zA-Z0-9@._-]+$/
70
70
  }
71
71
  };
72
+ const FinishUserWebAuthnRegistrationRequest = {
73
+ authenticatorName: {
74
+ maxLength: 256,
75
+ minLength: 1
76
+ }
77
+ };
72
78
  const GetQuotumRequest = {
73
79
  quotumName: {
74
80
  minLength: 1
@@ -207,6 +213,16 @@ const ListScimTokensRequest = {
207
213
  lessThanOrEqual: 100
208
214
  }
209
215
  };
216
+ const ListUserWebAuthnAuthenticatorsRequest = {
217
+ page: {
218
+ greaterThanOrEqual: 1,
219
+ lessThanOrEqual: 1e4
220
+ },
221
+ pageSize: {
222
+ greaterThanOrEqual: 1,
223
+ lessThanOrEqual: 100
224
+ }
225
+ };
210
226
  const ListUsersRequest = {
211
227
  page: {
212
228
  greaterThanOrEqual: 1,
@@ -279,6 +295,9 @@ const UpdateSamlRequest = {
279
295
  entityId: {
280
296
  maxLength: 1024,
281
297
  minLength: 1
298
+ },
299
+ singleSignOnUrl: {
300
+ prefix: "https://"
282
301
  }
283
302
  };
284
303
  const UpdateUserRequest = {
@@ -296,6 +315,12 @@ const UpdateUserUsernameRequest = {
296
315
  pattern: /^[a-zA-Z0-9@._-]+$/
297
316
  }
298
317
  };
318
+ const UpdateWebAuthnAuthenticatorRequest = {
319
+ authenticatorName: {
320
+ maxLength: 256,
321
+ minLength: 1
322
+ }
323
+ };
299
324
  const ValidateUserMFAOTPRequest = {
300
325
  oneTimePassword: {
301
326
  pattern: /^[0-9]{6}$/
@@ -309,6 +334,7 @@ export {
309
334
  CreatePolicyRequest,
310
335
  CreateSSHKeyRequest,
311
336
  CreateUserRequestMember,
337
+ FinishUserWebAuthnRegistrationRequest,
312
338
  GetQuotumRequest,
313
339
  JoinUserConnectionRequest,
314
340
  ListAPIKeysRequest,
@@ -322,6 +348,7 @@ export {
322
348
  ListRulesRequest,
323
349
  ListSSHKeysRequest,
324
350
  ListScimTokensRequest,
351
+ ListUserWebAuthnAuthenticatorsRequest,
325
352
  ListUsersRequest,
326
353
  RuleSpecs,
327
354
  SetOrganizationAliasRequest,
@@ -334,5 +361,6 @@ export {
334
361
  UpdateSamlRequest,
335
362
  UpdateUserRequest,
336
363
  UpdateUserUsernameRequest,
364
+ UpdateWebAuthnAuthenticatorRequest,
337
365
  ValidateUserMFAOTPRequest
338
366
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-iam",
3
- "version": "2.2.0",
3
+ "version": "2.3.0",
4
4
  "description": "Scaleway SDK iam",
5
5
  "license": "Apache-2.0",
6
6
  "files": [