@scaleway/sdk-iam 1.3.0 → 1.4.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.
@@ -1060,5 +1060,98 @@ class API extends sdkClient.API {
1060
1060
  method: "POST",
1061
1061
  path: `/iam/v1alpha1/organizations/${sdkClient.validatePathParam("organizationId", request.organizationId ?? this.client.settings.defaultOrganizationId)}/migrate-guests`
1062
1062
  });
1063
+ /**
1064
+ * Get SAML Identity Provider configuration of an Organization.
1065
+ *
1066
+ * @param request - The request {@link GetOrganizationSamlRequest}
1067
+ * @returns A Promise of Saml
1068
+ */
1069
+ getOrganizationSaml = (request = {}) => this.client.fetch(
1070
+ {
1071
+ method: "GET",
1072
+ path: `/iam/v1alpha1/organizations/${sdkClient.validatePathParam("organizationId", request.organizationId ?? this.client.settings.defaultOrganizationId)}/saml`
1073
+ },
1074
+ marshalling_gen.unmarshalSaml
1075
+ );
1076
+ /**
1077
+ * Enable SAML Identity Provider for an Organization.
1078
+ *
1079
+ * @param request - The request {@link EnableOrganizationSamlRequest}
1080
+ * @returns A Promise of Saml
1081
+ */
1082
+ enableOrganizationSaml = (request = {}) => this.client.fetch(
1083
+ {
1084
+ body: "{}",
1085
+ headers: jsonContentHeaders,
1086
+ method: "POST",
1087
+ path: `/iam/v1alpha1/organizations/${sdkClient.validatePathParam("organizationId", request.organizationId ?? this.client.settings.defaultOrganizationId)}/saml`
1088
+ },
1089
+ marshalling_gen.unmarshalSaml
1090
+ );
1091
+ /**
1092
+ * Update SAML Identity Provider configuration.
1093
+ *
1094
+ * @param request - The request {@link UpdateSamlRequest}
1095
+ * @returns A Promise of Saml
1096
+ */
1097
+ updateSaml = (request) => this.client.fetch(
1098
+ {
1099
+ body: JSON.stringify(
1100
+ marshalling_gen.marshalUpdateSamlRequest(request, this.client.settings)
1101
+ ),
1102
+ headers: jsonContentHeaders,
1103
+ method: "PATCH",
1104
+ path: `/iam/v1alpha1/saml/${sdkClient.validatePathParam("samlId", request.samlId)}`
1105
+ },
1106
+ marshalling_gen.unmarshalSaml
1107
+ );
1108
+ /**
1109
+ * Disable SAML Identity Provider for an Organization.
1110
+ *
1111
+ * @param request - The request {@link DeleteSamlRequest}
1112
+ */
1113
+ deleteSaml = (request) => this.client.fetch({
1114
+ method: "DELETE",
1115
+ path: `/iam/v1alpha1/saml/${sdkClient.validatePathParam("samlId", request.samlId)}`
1116
+ });
1117
+ /**
1118
+ * List SAML certificates.
1119
+ *
1120
+ * @param request - The request {@link ListSamlCertificatesRequest}
1121
+ * @returns A Promise of ListSamlCertificatesResponse
1122
+ */
1123
+ listSamlCertificates = (request) => this.client.fetch(
1124
+ {
1125
+ method: "GET",
1126
+ path: `/iam/v1alpha1/saml/${sdkClient.validatePathParam("samlId", request.samlId)}/certificates`
1127
+ },
1128
+ marshalling_gen.unmarshalListSamlCertificatesResponse
1129
+ );
1130
+ /**
1131
+ * Add a SAML certificate.
1132
+ *
1133
+ * @param request - The request {@link AddSamlCertificateRequest}
1134
+ * @returns A Promise of SamlCertificate
1135
+ */
1136
+ addSamlCertificate = (request) => this.client.fetch(
1137
+ {
1138
+ body: JSON.stringify(
1139
+ marshalling_gen.marshalAddSamlCertificateRequest(request, this.client.settings)
1140
+ ),
1141
+ headers: jsonContentHeaders,
1142
+ method: "POST",
1143
+ path: `/iam/v1alpha1/saml/${sdkClient.validatePathParam("samlId", request.samlId)}/certificates`
1144
+ },
1145
+ marshalling_gen.unmarshalSamlCertificate
1146
+ );
1147
+ /**
1148
+ * Delete a SAML certificate.
1149
+ *
1150
+ * @param request - The request {@link DeleteSamlCertificateRequest}
1151
+ */
1152
+ deleteSamlCertificate = (request) => this.client.fetch({
1153
+ method: "DELETE",
1154
+ path: `/iam/v1alpha1/saml-certificates/${sdkClient.validatePathParam("certificateId", request.certificateId)}`
1155
+ });
1063
1156
  }
1064
1157
  exports.API = API;
@@ -1,5 +1,5 @@
1
1
  import { API as ParentAPI } from '@scaleway/sdk-client';
2
- import type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, Group, InitiateUserConnectionRequest, InitiateUserConnectionResponse, JWT, JoinUserConnectionRequest, ListAPIKeysRequest, ListAPIKeysResponse, ListApplicationsRequest, ListApplicationsResponse, ListGracePeriodsRequest, ListGracePeriodsResponse, ListGroupsRequest, ListGroupsResponse, ListJWTsRequest, ListJWTsResponse, ListLogsRequest, ListLogsResponse, ListPermissionSetsRequest, ListPermissionSetsResponse, ListPoliciesRequest, ListPoliciesResponse, ListQuotaRequest, ListQuotaResponse, ListRulesRequest, ListRulesResponse, ListSSHKeysRequest, ListSSHKeysResponse, ListUsersRequest, ListUsersResponse, LockUserRequest, Log, MFAOTP, MigrateOrganizationGuestsRequest, Organization, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, SSHKey, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
2
+ import type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, ClonePolicyRequest, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSamlCertificateRequest, DeleteSamlRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EnableOrganizationSamlRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSamlRequest, 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, ListSSHKeysRequest, ListSSHKeysResponse, ListUsersRequest, ListUsersResponse, LockUserRequest, Log, MFAOTP, MigrateOrganizationGuestsRequest, Organization, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Saml, SamlCertificate, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
3
3
  /**
4
4
  * IAM API.
5
5
 
@@ -458,4 +458,51 @@ export declare class API extends ParentAPI {
458
458
  * @param request - The request {@link MigrateOrganizationGuestsRequest}
459
459
  */
460
460
  migrateOrganizationGuests: (request?: Readonly<MigrateOrganizationGuestsRequest>) => Promise<void>;
461
+ /**
462
+ * Get SAML Identity Provider configuration of an Organization.
463
+ *
464
+ * @param request - The request {@link GetOrganizationSamlRequest}
465
+ * @returns A Promise of Saml
466
+ */
467
+ getOrganizationSaml: (request?: Readonly<GetOrganizationSamlRequest>) => Promise<Saml>;
468
+ /**
469
+ * Enable SAML Identity Provider for an Organization.
470
+ *
471
+ * @param request - The request {@link EnableOrganizationSamlRequest}
472
+ * @returns A Promise of Saml
473
+ */
474
+ enableOrganizationSaml: (request?: Readonly<EnableOrganizationSamlRequest>) => Promise<Saml>;
475
+ /**
476
+ * Update SAML Identity Provider configuration.
477
+ *
478
+ * @param request - The request {@link UpdateSamlRequest}
479
+ * @returns A Promise of Saml
480
+ */
481
+ updateSaml: (request: Readonly<UpdateSamlRequest>) => Promise<Saml>;
482
+ /**
483
+ * Disable SAML Identity Provider for an Organization.
484
+ *
485
+ * @param request - The request {@link DeleteSamlRequest}
486
+ */
487
+ deleteSaml: (request: Readonly<DeleteSamlRequest>) => Promise<void>;
488
+ /**
489
+ * List SAML certificates.
490
+ *
491
+ * @param request - The request {@link ListSamlCertificatesRequest}
492
+ * @returns A Promise of ListSamlCertificatesResponse
493
+ */
494
+ listSamlCertificates: (request: Readonly<ListSamlCertificatesRequest>) => Promise<ListSamlCertificatesResponse>;
495
+ /**
496
+ * Add a SAML certificate.
497
+ *
498
+ * @param request - The request {@link AddSamlCertificateRequest}
499
+ * @returns A Promise of SamlCertificate
500
+ */
501
+ addSamlCertificate: (request: Readonly<AddSamlCertificateRequest>) => Promise<SamlCertificate>;
502
+ /**
503
+ * Delete a SAML certificate.
504
+ *
505
+ * @param request - The request {@link DeleteSamlCertificateRequest}
506
+ */
507
+ deleteSamlCertificate: (request: Readonly<DeleteSamlCertificateRequest>) => Promise<void>;
461
508
  }
@@ -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 } 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, unmarshalSaml, marshalUpdateSamlRequest, unmarshalListSamlCertificatesResponse, marshalAddSamlCertificateRequest, unmarshalSamlCertificate } from "./marshalling.gen.js";
3
3
  const jsonContentHeaders = {
4
4
  "Content-Type": "application/json; charset=utf-8"
5
5
  };
@@ -1058,6 +1058,99 @@ class API extends API$1 {
1058
1058
  method: "POST",
1059
1059
  path: `/iam/v1alpha1/organizations/${validatePathParam("organizationId", request.organizationId ?? this.client.settings.defaultOrganizationId)}/migrate-guests`
1060
1060
  });
1061
+ /**
1062
+ * Get SAML Identity Provider configuration of an Organization.
1063
+ *
1064
+ * @param request - The request {@link GetOrganizationSamlRequest}
1065
+ * @returns A Promise of Saml
1066
+ */
1067
+ getOrganizationSaml = (request = {}) => this.client.fetch(
1068
+ {
1069
+ method: "GET",
1070
+ path: `/iam/v1alpha1/organizations/${validatePathParam("organizationId", request.organizationId ?? this.client.settings.defaultOrganizationId)}/saml`
1071
+ },
1072
+ unmarshalSaml
1073
+ );
1074
+ /**
1075
+ * Enable SAML Identity Provider for an Organization.
1076
+ *
1077
+ * @param request - The request {@link EnableOrganizationSamlRequest}
1078
+ * @returns A Promise of Saml
1079
+ */
1080
+ enableOrganizationSaml = (request = {}) => this.client.fetch(
1081
+ {
1082
+ body: "{}",
1083
+ headers: jsonContentHeaders,
1084
+ method: "POST",
1085
+ path: `/iam/v1alpha1/organizations/${validatePathParam("organizationId", request.organizationId ?? this.client.settings.defaultOrganizationId)}/saml`
1086
+ },
1087
+ unmarshalSaml
1088
+ );
1089
+ /**
1090
+ * Update SAML Identity Provider configuration.
1091
+ *
1092
+ * @param request - The request {@link UpdateSamlRequest}
1093
+ * @returns A Promise of Saml
1094
+ */
1095
+ updateSaml = (request) => this.client.fetch(
1096
+ {
1097
+ body: JSON.stringify(
1098
+ marshalUpdateSamlRequest(request, this.client.settings)
1099
+ ),
1100
+ headers: jsonContentHeaders,
1101
+ method: "PATCH",
1102
+ path: `/iam/v1alpha1/saml/${validatePathParam("samlId", request.samlId)}`
1103
+ },
1104
+ unmarshalSaml
1105
+ );
1106
+ /**
1107
+ * Disable SAML Identity Provider for an Organization.
1108
+ *
1109
+ * @param request - The request {@link DeleteSamlRequest}
1110
+ */
1111
+ deleteSaml = (request) => this.client.fetch({
1112
+ method: "DELETE",
1113
+ path: `/iam/v1alpha1/saml/${validatePathParam("samlId", request.samlId)}`
1114
+ });
1115
+ /**
1116
+ * List SAML certificates.
1117
+ *
1118
+ * @param request - The request {@link ListSamlCertificatesRequest}
1119
+ * @returns A Promise of ListSamlCertificatesResponse
1120
+ */
1121
+ listSamlCertificates = (request) => this.client.fetch(
1122
+ {
1123
+ method: "GET",
1124
+ path: `/iam/v1alpha1/saml/${validatePathParam("samlId", request.samlId)}/certificates`
1125
+ },
1126
+ unmarshalListSamlCertificatesResponse
1127
+ );
1128
+ /**
1129
+ * Add a SAML certificate.
1130
+ *
1131
+ * @param request - The request {@link AddSamlCertificateRequest}
1132
+ * @returns A Promise of SamlCertificate
1133
+ */
1134
+ addSamlCertificate = (request) => this.client.fetch(
1135
+ {
1136
+ body: JSON.stringify(
1137
+ marshalAddSamlCertificateRequest(request, this.client.settings)
1138
+ ),
1139
+ headers: jsonContentHeaders,
1140
+ method: "POST",
1141
+ path: `/iam/v1alpha1/saml/${validatePathParam("samlId", request.samlId)}/certificates`
1142
+ },
1143
+ unmarshalSamlCertificate
1144
+ );
1145
+ /**
1146
+ * Delete a SAML certificate.
1147
+ *
1148
+ * @param request - The request {@link DeleteSamlCertificateRequest}
1149
+ */
1150
+ deleteSamlCertificate = (request) => this.client.fetch({
1151
+ method: "DELETE",
1152
+ path: `/iam/v1alpha1/saml-certificates/${validatePathParam("certificateId", request.certificateId)}`
1153
+ });
1061
1154
  }
1062
1155
  export {
1063
1156
  API
@@ -6,6 +6,7 @@ const validationRules_gen = require("./validation-rules.gen.cjs");
6
6
  exports.API = api_gen.API;
7
7
  exports.marshalAddGroupMemberRequest = marshalling_gen.marshalAddGroupMemberRequest;
8
8
  exports.marshalAddGroupMembersRequest = marshalling_gen.marshalAddGroupMembersRequest;
9
+ exports.marshalAddSamlCertificateRequest = marshalling_gen.marshalAddSamlCertificateRequest;
9
10
  exports.marshalCreateAPIKeyRequest = marshalling_gen.marshalCreateAPIKeyRequest;
10
11
  exports.marshalCreateApplicationRequest = marshalling_gen.marshalCreateApplicationRequest;
11
12
  exports.marshalCreateGroupRequest = marshalling_gen.marshalCreateGroupRequest;
@@ -25,6 +26,7 @@ exports.marshalUpdateGroupRequest = marshalling_gen.marshalUpdateGroupRequest;
25
26
  exports.marshalUpdateOrganizationSecuritySettingsRequest = marshalling_gen.marshalUpdateOrganizationSecuritySettingsRequest;
26
27
  exports.marshalUpdatePolicyRequest = marshalling_gen.marshalUpdatePolicyRequest;
27
28
  exports.marshalUpdateSSHKeyRequest = marshalling_gen.marshalUpdateSSHKeyRequest;
29
+ exports.marshalUpdateSamlRequest = marshalling_gen.marshalUpdateSamlRequest;
28
30
  exports.marshalUpdateUserPasswordRequest = marshalling_gen.marshalUpdateUserPasswordRequest;
29
31
  exports.marshalUpdateUserRequest = marshalling_gen.marshalUpdateUserRequest;
30
32
  exports.marshalUpdateUserUsernameRequest = marshalling_gen.marshalUpdateUserUsernameRequest;
@@ -47,6 +49,7 @@ exports.unmarshalListPoliciesResponse = marshalling_gen.unmarshalListPoliciesRes
47
49
  exports.unmarshalListQuotaResponse = marshalling_gen.unmarshalListQuotaResponse;
48
50
  exports.unmarshalListRulesResponse = marshalling_gen.unmarshalListRulesResponse;
49
51
  exports.unmarshalListSSHKeysResponse = marshalling_gen.unmarshalListSSHKeysResponse;
52
+ exports.unmarshalListSamlCertificatesResponse = marshalling_gen.unmarshalListSamlCertificatesResponse;
50
53
  exports.unmarshalListUsersResponse = marshalling_gen.unmarshalListUsersResponse;
51
54
  exports.unmarshalLog = marshalling_gen.unmarshalLog;
52
55
  exports.unmarshalMFAOTP = marshalling_gen.unmarshalMFAOTP;
@@ -55,6 +58,8 @@ exports.unmarshalOrganizationSecuritySettings = marshalling_gen.unmarshalOrganiz
55
58
  exports.unmarshalPolicy = marshalling_gen.unmarshalPolicy;
56
59
  exports.unmarshalQuotum = marshalling_gen.unmarshalQuotum;
57
60
  exports.unmarshalSSHKey = marshalling_gen.unmarshalSSHKey;
61
+ exports.unmarshalSaml = marshalling_gen.unmarshalSaml;
62
+ exports.unmarshalSamlCertificate = marshalling_gen.unmarshalSamlCertificate;
58
63
  exports.unmarshalSetRulesResponse = marshalling_gen.unmarshalSetRulesResponse;
59
64
  exports.unmarshalUser = marshalling_gen.unmarshalUser;
60
65
  exports.unmarshalValidateUserMFAOTPResponse = marshalling_gen.unmarshalValidateUserMFAOTPResponse;
@@ -1,4 +1,4 @@
1
1
  export { API } from './api.gen';
2
2
  export * from './marshalling.gen';
3
- export type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, BearerType, ClonePolicyRequest, Connection, ConnectionConnectedOrganization, ConnectionConnectedUser, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, CreateUserRequestMember, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSecuritySettingsRequest, GetPolicyRequest, GetQuotumRequest, GetSSHKeyRequest, GetUserConnectionsRequest, GetUserConnectionsResponse, GetUserRequest, GracePeriod, GracePeriodType, Group, InitiateUserConnectionRequest, InitiateUserConnectionResponse, JWT, JoinUserConnectionRequest, 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, ListSSHKeysRequest, ListSSHKeysRequestOrderBy, ListSSHKeysResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, LocalityType, LockUserRequest, Log, LogAction, LogResourceType, MFAOTP, MigrateOrganizationGuestsRequest, Organization, OrganizationSecuritySettings, PermissionSet, PermissionSetScopeType, Policy, Quotum, QuotumLimit, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Rule, RuleSpecs, SSHKey, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, UserStatus, UserType, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, } from './types.gen';
3
+ export type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, BearerType, ClonePolicyRequest, Connection, ConnectionConnectedOrganization, ConnectionConnectedUser, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserMFAOTPRequest, CreateUserRequest, CreateUserRequestMember, DeleteAPIKeyRequest, DeleteApplicationRequest, DeleteGroupRequest, DeleteJWTRequest, DeletePolicyRequest, DeleteSamlCertificateRequest, DeleteSamlRequest, DeleteSSHKeyRequest, DeleteUserMFAOTPRequest, DeleteUserRequest, EnableOrganizationSamlRequest, EncodedJWT, GetAPIKeyRequest, GetApplicationRequest, GetGroupRequest, GetJWTRequest, GetLogRequest, GetOrganizationRequest, GetOrganizationSamlRequest, 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, ListSSHKeysRequest, ListSSHKeysRequestOrderBy, ListSSHKeysResponse, ListUsersRequest, ListUsersRequestOrderBy, ListUsersResponse, LocalityType, LockUserRequest, Log, LogAction, LogResourceType, MFAOTP, MigrateOrganizationGuestsRequest, Organization, OrganizationSecuritySettings, PermissionSet, PermissionSetScopeType, Policy, Quotum, QuotumLimit, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Rule, RuleSpecs, Saml, SamlCertificate, SamlCertificateOrigin, SamlCertificateType, SamlServiceProvider, SamlStatus, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, UnlockUserRequest, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, UserStatus, UserType, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse, } from './types.gen';
4
4
  export * as ValidationRules from './validation-rules.gen';
@@ -1,11 +1,12 @@
1
1
  import { API } from "./api.gen.js";
2
- import { marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalCreateAPIKeyRequest, marshalCreateApplicationRequest, marshalCreateGroupRequest, marshalCreateJWTRequest, marshalCreatePolicyRequest, marshalCreateSSHKeyRequest, marshalCreateUserRequest, marshalJoinUserConnectionRequest, marshalRemoveGroupMemberRequest, marshalRemoveUserConnectionRequest, marshalSetGroupMembersRequest, marshalSetOrganizationAliasRequest, marshalSetRulesRequest, marshalUpdateAPIKeyRequest, marshalUpdateApplicationRequest, marshalUpdateGroupRequest, marshalUpdateOrganizationSecuritySettingsRequest, marshalUpdatePolicyRequest, marshalUpdateSSHKeyRequest, marshalUpdateUserPasswordRequest, marshalUpdateUserRequest, marshalUpdateUserUsernameRequest, marshalValidateUserMFAOTPRequest, unmarshalAPIKey, unmarshalApplication, unmarshalEncodedJWT, unmarshalGetUserConnectionsResponse, unmarshalGroup, unmarshalInitiateUserConnectionResponse, unmarshalJWT, unmarshalListAPIKeysResponse, unmarshalListApplicationsResponse, unmarshalListGracePeriodsResponse, unmarshalListGroupsResponse, unmarshalListJWTsResponse, unmarshalListLogsResponse, unmarshalListPermissionSetsResponse, unmarshalListPoliciesResponse, unmarshalListQuotaResponse, unmarshalListRulesResponse, unmarshalListSSHKeysResponse, unmarshalListUsersResponse, unmarshalLog, unmarshalMFAOTP, unmarshalOrganization, unmarshalOrganizationSecuritySettings, unmarshalPolicy, unmarshalQuotum, unmarshalSSHKey, unmarshalSetRulesResponse, unmarshalUser, unmarshalValidateUserMFAOTPResponse } from "./marshalling.gen.js";
2
+ import { marshalAddGroupMemberRequest, marshalAddGroupMembersRequest, marshalAddSamlCertificateRequest, marshalCreateAPIKeyRequest, marshalCreateApplicationRequest, marshalCreateGroupRequest, marshalCreateJWTRequest, marshalCreatePolicyRequest, marshalCreateSSHKeyRequest, marshalCreateUserRequest, marshalJoinUserConnectionRequest, marshalRemoveGroupMemberRequest, marshalRemoveUserConnectionRequest, marshalSetGroupMembersRequest, marshalSetOrganizationAliasRequest, marshalSetRulesRequest, marshalUpdateAPIKeyRequest, marshalUpdateApplicationRequest, marshalUpdateGroupRequest, marshalUpdateOrganizationSecuritySettingsRequest, marshalUpdatePolicyRequest, marshalUpdateSSHKeyRequest, marshalUpdateSamlRequest, marshalUpdateUserPasswordRequest, marshalUpdateUserRequest, marshalUpdateUserUsernameRequest, marshalValidateUserMFAOTPRequest, unmarshalAPIKey, unmarshalApplication, unmarshalEncodedJWT, unmarshalGetUserConnectionsResponse, unmarshalGroup, unmarshalInitiateUserConnectionResponse, unmarshalJWT, unmarshalListAPIKeysResponse, unmarshalListApplicationsResponse, unmarshalListGracePeriodsResponse, unmarshalListGroupsResponse, unmarshalListJWTsResponse, unmarshalListLogsResponse, unmarshalListPermissionSetsResponse, unmarshalListPoliciesResponse, unmarshalListQuotaResponse, unmarshalListRulesResponse, unmarshalListSSHKeysResponse, unmarshalListSamlCertificatesResponse, unmarshalListUsersResponse, unmarshalLog, unmarshalMFAOTP, unmarshalOrganization, unmarshalOrganizationSecuritySettings, unmarshalPolicy, unmarshalQuotum, unmarshalSSHKey, unmarshalSaml, unmarshalSamlCertificate, unmarshalSetRulesResponse, unmarshalUser, unmarshalValidateUserMFAOTPResponse } from "./marshalling.gen.js";
3
3
  import * as validationRules_gen from "./validation-rules.gen.js";
4
4
  export {
5
5
  API,
6
6
  validationRules_gen as ValidationRules,
7
7
  marshalAddGroupMemberRequest,
8
8
  marshalAddGroupMembersRequest,
9
+ marshalAddSamlCertificateRequest,
9
10
  marshalCreateAPIKeyRequest,
10
11
  marshalCreateApplicationRequest,
11
12
  marshalCreateGroupRequest,
@@ -25,6 +26,7 @@ export {
25
26
  marshalUpdateOrganizationSecuritySettingsRequest,
26
27
  marshalUpdatePolicyRequest,
27
28
  marshalUpdateSSHKeyRequest,
29
+ marshalUpdateSamlRequest,
28
30
  marshalUpdateUserPasswordRequest,
29
31
  marshalUpdateUserRequest,
30
32
  marshalUpdateUserUsernameRequest,
@@ -47,6 +49,7 @@ export {
47
49
  unmarshalListQuotaResponse,
48
50
  unmarshalListRulesResponse,
49
51
  unmarshalListSSHKeysResponse,
52
+ unmarshalListSamlCertificatesResponse,
50
53
  unmarshalListUsersResponse,
51
54
  unmarshalLog,
52
55
  unmarshalMFAOTP,
@@ -55,6 +58,8 @@ export {
55
58
  unmarshalPolicy,
56
59
  unmarshalQuotum,
57
60
  unmarshalSSHKey,
61
+ unmarshalSaml,
62
+ unmarshalSamlCertificate,
58
63
  unmarshalSetRulesResponse,
59
64
  unmarshalUser,
60
65
  unmarshalValidateUserMFAOTPResponse
@@ -175,6 +175,20 @@ const unmarshalSSHKey = (data) => {
175
175
  updatedAt: sdkClient.unmarshalDate(data.updated_at)
176
176
  };
177
177
  };
178
+ const unmarshalSamlCertificate = (data) => {
179
+ if (!sdkClient.isJSONObject(data)) {
180
+ throw new TypeError(
181
+ `Unmarshalling the type 'SamlCertificate' failed as data isn't a dictionary.`
182
+ );
183
+ }
184
+ return {
185
+ content: data.content,
186
+ expiresAt: sdkClient.unmarshalDate(data.expires_at),
187
+ id: data.id,
188
+ origin: data.origin,
189
+ type: data.type
190
+ };
191
+ };
178
192
  const unmarshalUser = (data) => {
179
193
  if (!sdkClient.isJSONObject(data)) {
180
194
  throw new TypeError(
@@ -195,7 +209,7 @@ const unmarshalUser = (data) => {
195
209
  mfa: data.mfa,
196
210
  organizationId: data.organization_id,
197
211
  phoneNumber: data.phone_number,
198
- status: data.status,
212
+ status: data.status ? data.status : void 0,
199
213
  tags: data.tags,
200
214
  twoFactorEnabled: data.two_factor_enabled,
201
215
  type: data.type,
@@ -441,6 +455,19 @@ const unmarshalListSSHKeysResponse = (data) => {
441
455
  totalCount: data.total_count
442
456
  };
443
457
  };
458
+ const unmarshalListSamlCertificatesResponse = (data) => {
459
+ if (!sdkClient.isJSONObject(data)) {
460
+ throw new TypeError(
461
+ `Unmarshalling the type 'ListSamlCertificatesResponse' failed as data isn't a dictionary.`
462
+ );
463
+ }
464
+ return {
465
+ certificates: sdkClient.unmarshalArrayOfObject(
466
+ data.certificates,
467
+ unmarshalSamlCertificate
468
+ )
469
+ };
470
+ };
444
471
  const unmarshalListUsersResponse = (data) => {
445
472
  if (!sdkClient.isJSONObject(data)) {
446
473
  throw new TypeError(
@@ -486,6 +513,31 @@ const unmarshalOrganizationSecuritySettings = (data) => {
486
513
  loginAttemptsBeforeLocked: data.login_attempts_before_locked
487
514
  };
488
515
  };
516
+ const unmarshalSamlServiceProvider = (data) => {
517
+ if (!sdkClient.isJSONObject(data)) {
518
+ throw new TypeError(
519
+ `Unmarshalling the type 'SamlServiceProvider' failed as data isn't a dictionary.`
520
+ );
521
+ }
522
+ return {
523
+ assertionConsumerServiceUrl: data.assertion_consumer_service_url,
524
+ entityId: data.entity_id
525
+ };
526
+ };
527
+ const unmarshalSaml = (data) => {
528
+ if (!sdkClient.isJSONObject(data)) {
529
+ throw new TypeError(
530
+ `Unmarshalling the type 'Saml' failed as data isn't a dictionary.`
531
+ );
532
+ }
533
+ return {
534
+ entityId: data.entity_id,
535
+ id: data.id,
536
+ serviceProvider: data.service_provider ? unmarshalSamlServiceProvider(data.service_provider) : void 0,
537
+ singleSignOnUrl: data.single_sign_on_url,
538
+ status: data.status
539
+ };
540
+ };
489
541
  const unmarshalSetRulesResponse = (data) => {
490
542
  if (!sdkClient.isJSONObject(data)) {
491
543
  throw new TypeError(
@@ -516,6 +568,10 @@ const marshalAddGroupMembersRequest = (request, defaults) => ({
516
568
  application_ids: request.applicationIds,
517
569
  user_ids: request.userIds
518
570
  });
571
+ const marshalAddSamlCertificateRequest = (request, defaults) => ({
572
+ content: request.content,
573
+ type: request.type
574
+ });
519
575
  const marshalCreateAPIKeyRequest = (request, defaults) => ({
520
576
  default_project_id: request.defaultProjectId,
521
577
  description: request.description,
@@ -646,6 +702,10 @@ const marshalUpdateSSHKeyRequest = (request, defaults) => ({
646
702
  disabled: request.disabled,
647
703
  name: request.name
648
704
  });
705
+ const marshalUpdateSamlRequest = (request, defaults) => ({
706
+ entity_id: request.entityId,
707
+ single_sign_on_url: request.singleSignOnUrl
708
+ });
649
709
  const marshalUpdateUserPasswordRequest = (request, defaults) => ({
650
710
  password: request.password
651
711
  });
@@ -665,6 +725,7 @@ const marshalValidateUserMFAOTPRequest = (request, defaults) => ({
665
725
  });
666
726
  exports.marshalAddGroupMemberRequest = marshalAddGroupMemberRequest;
667
727
  exports.marshalAddGroupMembersRequest = marshalAddGroupMembersRequest;
728
+ exports.marshalAddSamlCertificateRequest = marshalAddSamlCertificateRequest;
668
729
  exports.marshalCreateAPIKeyRequest = marshalCreateAPIKeyRequest;
669
730
  exports.marshalCreateApplicationRequest = marshalCreateApplicationRequest;
670
731
  exports.marshalCreateGroupRequest = marshalCreateGroupRequest;
@@ -684,6 +745,7 @@ exports.marshalUpdateGroupRequest = marshalUpdateGroupRequest;
684
745
  exports.marshalUpdateOrganizationSecuritySettingsRequest = marshalUpdateOrganizationSecuritySettingsRequest;
685
746
  exports.marshalUpdatePolicyRequest = marshalUpdatePolicyRequest;
686
747
  exports.marshalUpdateSSHKeyRequest = marshalUpdateSSHKeyRequest;
748
+ exports.marshalUpdateSamlRequest = marshalUpdateSamlRequest;
687
749
  exports.marshalUpdateUserPasswordRequest = marshalUpdateUserPasswordRequest;
688
750
  exports.marshalUpdateUserRequest = marshalUpdateUserRequest;
689
751
  exports.marshalUpdateUserUsernameRequest = marshalUpdateUserUsernameRequest;
@@ -706,6 +768,7 @@ exports.unmarshalListPoliciesResponse = unmarshalListPoliciesResponse;
706
768
  exports.unmarshalListQuotaResponse = unmarshalListQuotaResponse;
707
769
  exports.unmarshalListRulesResponse = unmarshalListRulesResponse;
708
770
  exports.unmarshalListSSHKeysResponse = unmarshalListSSHKeysResponse;
771
+ exports.unmarshalListSamlCertificatesResponse = unmarshalListSamlCertificatesResponse;
709
772
  exports.unmarshalListUsersResponse = unmarshalListUsersResponse;
710
773
  exports.unmarshalLog = unmarshalLog;
711
774
  exports.unmarshalMFAOTP = unmarshalMFAOTP;
@@ -714,6 +777,8 @@ exports.unmarshalOrganizationSecuritySettings = unmarshalOrganizationSecuritySet
714
777
  exports.unmarshalPolicy = unmarshalPolicy;
715
778
  exports.unmarshalQuotum = unmarshalQuotum;
716
779
  exports.unmarshalSSHKey = unmarshalSSHKey;
780
+ exports.unmarshalSaml = unmarshalSaml;
781
+ exports.unmarshalSamlCertificate = unmarshalSamlCertificate;
717
782
  exports.unmarshalSetRulesResponse = unmarshalSetRulesResponse;
718
783
  exports.unmarshalUser = unmarshalUser;
719
784
  exports.unmarshalValidateUserMFAOTPResponse = unmarshalValidateUserMFAOTPResponse;
@@ -1,5 +1,5 @@
1
1
  import type { DefaultValues } from '@scaleway/sdk-client';
2
- import type { APIKey, AddGroupMemberRequest, AddGroupMembersRequest, Application, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserRequest, EncodedJWT, GetUserConnectionsResponse, Group, InitiateUserConnectionResponse, JWT, JoinUserConnectionRequest, ListAPIKeysResponse, ListApplicationsResponse, ListGracePeriodsResponse, ListGroupsResponse, ListJWTsResponse, ListLogsResponse, ListPermissionSetsResponse, ListPoliciesResponse, ListQuotaResponse, ListRulesResponse, ListSSHKeysResponse, ListUsersResponse, Log, MFAOTP, Organization, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, SSHKey, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
2
+ import type { AddGroupMemberRequest, AddGroupMembersRequest, AddSamlCertificateRequest, APIKey, Application, CreateAPIKeyRequest, CreateApplicationRequest, CreateGroupRequest, CreateJWTRequest, CreatePolicyRequest, CreateSSHKeyRequest, CreateUserRequest, EncodedJWT, GetUserConnectionsResponse, Group, InitiateUserConnectionResponse, JoinUserConnectionRequest, JWT, ListAPIKeysResponse, ListApplicationsResponse, ListGracePeriodsResponse, ListGroupsResponse, ListJWTsResponse, ListLogsResponse, ListPermissionSetsResponse, ListPoliciesResponse, ListQuotaResponse, ListRulesResponse, ListSamlCertificatesResponse, ListSSHKeysResponse, ListUsersResponse, Log, MFAOTP, Organization, OrganizationSecuritySettings, Policy, Quotum, RemoveGroupMemberRequest, RemoveUserConnectionRequest, Saml, SamlCertificate, SetGroupMembersRequest, SetOrganizationAliasRequest, SetRulesRequest, SetRulesResponse, SSHKey, UpdateAPIKeyRequest, UpdateApplicationRequest, UpdateGroupRequest, UpdateOrganizationSecuritySettingsRequest, UpdatePolicyRequest, UpdateSamlRequest, UpdateSSHKeyRequest, UpdateUserPasswordRequest, UpdateUserRequest, UpdateUserUsernameRequest, User, ValidateUserMFAOTPRequest, ValidateUserMFAOTPResponse } from './types.gen';
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;
@@ -8,6 +8,7 @@ export declare const unmarshalLog: (data: unknown) => Log;
8
8
  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
+ export declare const unmarshalSamlCertificate: (data: unknown) => SamlCertificate;
11
12
  export declare const unmarshalUser: (data: unknown) => User;
12
13
  export declare const unmarshalEncodedJWT: (data: unknown) => EncodedJWT;
13
14
  export declare const unmarshalGetUserConnectionsResponse: (data: unknown) => GetUserConnectionsResponse;
@@ -23,14 +24,17 @@ export declare const unmarshalListPoliciesResponse: (data: unknown) => ListPolic
23
24
  export declare const unmarshalListQuotaResponse: (data: unknown) => ListQuotaResponse;
24
25
  export declare const unmarshalListRulesResponse: (data: unknown) => ListRulesResponse;
25
26
  export declare const unmarshalListSSHKeysResponse: (data: unknown) => ListSSHKeysResponse;
27
+ export declare const unmarshalListSamlCertificatesResponse: (data: unknown) => ListSamlCertificatesResponse;
26
28
  export declare const unmarshalListUsersResponse: (data: unknown) => ListUsersResponse;
27
29
  export declare const unmarshalMFAOTP: (data: unknown) => MFAOTP;
28
30
  export declare const unmarshalOrganization: (data: unknown) => Organization;
29
31
  export declare const unmarshalOrganizationSecuritySettings: (data: unknown) => OrganizationSecuritySettings;
32
+ export declare const unmarshalSaml: (data: unknown) => Saml;
30
33
  export declare const unmarshalSetRulesResponse: (data: unknown) => SetRulesResponse;
31
34
  export declare const unmarshalValidateUserMFAOTPResponse: (data: unknown) => ValidateUserMFAOTPResponse;
32
35
  export declare const marshalAddGroupMemberRequest: (request: AddGroupMemberRequest, defaults: DefaultValues) => Record<string, unknown>;
33
36
  export declare const marshalAddGroupMembersRequest: (request: AddGroupMembersRequest, defaults: DefaultValues) => Record<string, unknown>;
37
+ export declare const marshalAddSamlCertificateRequest: (request: AddSamlCertificateRequest, defaults: DefaultValues) => Record<string, unknown>;
34
38
  export declare const marshalCreateAPIKeyRequest: (request: CreateAPIKeyRequest, defaults: DefaultValues) => Record<string, unknown>;
35
39
  export declare const marshalCreateApplicationRequest: (request: CreateApplicationRequest, defaults: DefaultValues) => Record<string, unknown>;
36
40
  export declare const marshalCreateGroupRequest: (request: CreateGroupRequest, defaults: DefaultValues) => Record<string, unknown>;
@@ -50,6 +54,7 @@ export declare const marshalUpdateGroupRequest: (request: UpdateGroupRequest, de
50
54
  export declare const marshalUpdateOrganizationSecuritySettingsRequest: (request: UpdateOrganizationSecuritySettingsRequest, defaults: DefaultValues) => Record<string, unknown>;
51
55
  export declare const marshalUpdatePolicyRequest: (request: UpdatePolicyRequest, defaults: DefaultValues) => Record<string, unknown>;
52
56
  export declare const marshalUpdateSSHKeyRequest: (request: UpdateSSHKeyRequest, defaults: DefaultValues) => Record<string, unknown>;
57
+ export declare const marshalUpdateSamlRequest: (request: UpdateSamlRequest, defaults: DefaultValues) => Record<string, unknown>;
53
58
  export declare const marshalUpdateUserPasswordRequest: (request: UpdateUserPasswordRequest, defaults: DefaultValues) => Record<string, unknown>;
54
59
  export declare const marshalUpdateUserRequest: (request: UpdateUserRequest, defaults: DefaultValues) => Record<string, unknown>;
55
60
  export declare const marshalUpdateUserUsernameRequest: (request: UpdateUserUsernameRequest, defaults: DefaultValues) => Record<string, unknown>;
@@ -173,6 +173,20 @@ const unmarshalSSHKey = (data) => {
173
173
  updatedAt: unmarshalDate(data.updated_at)
174
174
  };
175
175
  };
176
+ const unmarshalSamlCertificate = (data) => {
177
+ if (!isJSONObject(data)) {
178
+ throw new TypeError(
179
+ `Unmarshalling the type 'SamlCertificate' failed as data isn't a dictionary.`
180
+ );
181
+ }
182
+ return {
183
+ content: data.content,
184
+ expiresAt: unmarshalDate(data.expires_at),
185
+ id: data.id,
186
+ origin: data.origin,
187
+ type: data.type
188
+ };
189
+ };
176
190
  const unmarshalUser = (data) => {
177
191
  if (!isJSONObject(data)) {
178
192
  throw new TypeError(
@@ -193,7 +207,7 @@ const unmarshalUser = (data) => {
193
207
  mfa: data.mfa,
194
208
  organizationId: data.organization_id,
195
209
  phoneNumber: data.phone_number,
196
- status: data.status,
210
+ status: data.status ? data.status : void 0,
197
211
  tags: data.tags,
198
212
  twoFactorEnabled: data.two_factor_enabled,
199
213
  type: data.type,
@@ -439,6 +453,19 @@ const unmarshalListSSHKeysResponse = (data) => {
439
453
  totalCount: data.total_count
440
454
  };
441
455
  };
456
+ const unmarshalListSamlCertificatesResponse = (data) => {
457
+ if (!isJSONObject(data)) {
458
+ throw new TypeError(
459
+ `Unmarshalling the type 'ListSamlCertificatesResponse' failed as data isn't a dictionary.`
460
+ );
461
+ }
462
+ return {
463
+ certificates: unmarshalArrayOfObject(
464
+ data.certificates,
465
+ unmarshalSamlCertificate
466
+ )
467
+ };
468
+ };
442
469
  const unmarshalListUsersResponse = (data) => {
443
470
  if (!isJSONObject(data)) {
444
471
  throw new TypeError(
@@ -484,6 +511,31 @@ const unmarshalOrganizationSecuritySettings = (data) => {
484
511
  loginAttemptsBeforeLocked: data.login_attempts_before_locked
485
512
  };
486
513
  };
514
+ const unmarshalSamlServiceProvider = (data) => {
515
+ if (!isJSONObject(data)) {
516
+ throw new TypeError(
517
+ `Unmarshalling the type 'SamlServiceProvider' failed as data isn't a dictionary.`
518
+ );
519
+ }
520
+ return {
521
+ assertionConsumerServiceUrl: data.assertion_consumer_service_url,
522
+ entityId: data.entity_id
523
+ };
524
+ };
525
+ const unmarshalSaml = (data) => {
526
+ if (!isJSONObject(data)) {
527
+ throw new TypeError(
528
+ `Unmarshalling the type 'Saml' failed as data isn't a dictionary.`
529
+ );
530
+ }
531
+ return {
532
+ entityId: data.entity_id,
533
+ id: data.id,
534
+ serviceProvider: data.service_provider ? unmarshalSamlServiceProvider(data.service_provider) : void 0,
535
+ singleSignOnUrl: data.single_sign_on_url,
536
+ status: data.status
537
+ };
538
+ };
487
539
  const unmarshalSetRulesResponse = (data) => {
488
540
  if (!isJSONObject(data)) {
489
541
  throw new TypeError(
@@ -514,6 +566,10 @@ const marshalAddGroupMembersRequest = (request, defaults) => ({
514
566
  application_ids: request.applicationIds,
515
567
  user_ids: request.userIds
516
568
  });
569
+ const marshalAddSamlCertificateRequest = (request, defaults) => ({
570
+ content: request.content,
571
+ type: request.type
572
+ });
517
573
  const marshalCreateAPIKeyRequest = (request, defaults) => ({
518
574
  default_project_id: request.defaultProjectId,
519
575
  description: request.description,
@@ -644,6 +700,10 @@ const marshalUpdateSSHKeyRequest = (request, defaults) => ({
644
700
  disabled: request.disabled,
645
701
  name: request.name
646
702
  });
703
+ const marshalUpdateSamlRequest = (request, defaults) => ({
704
+ entity_id: request.entityId,
705
+ single_sign_on_url: request.singleSignOnUrl
706
+ });
647
707
  const marshalUpdateUserPasswordRequest = (request, defaults) => ({
648
708
  password: request.password
649
709
  });
@@ -664,6 +724,7 @@ const marshalValidateUserMFAOTPRequest = (request, defaults) => ({
664
724
  export {
665
725
  marshalAddGroupMemberRequest,
666
726
  marshalAddGroupMembersRequest,
727
+ marshalAddSamlCertificateRequest,
667
728
  marshalCreateAPIKeyRequest,
668
729
  marshalCreateApplicationRequest,
669
730
  marshalCreateGroupRequest,
@@ -683,6 +744,7 @@ export {
683
744
  marshalUpdateOrganizationSecuritySettingsRequest,
684
745
  marshalUpdatePolicyRequest,
685
746
  marshalUpdateSSHKeyRequest,
747
+ marshalUpdateSamlRequest,
686
748
  marshalUpdateUserPasswordRequest,
687
749
  marshalUpdateUserRequest,
688
750
  marshalUpdateUserUsernameRequest,
@@ -705,6 +767,7 @@ export {
705
767
  unmarshalListQuotaResponse,
706
768
  unmarshalListRulesResponse,
707
769
  unmarshalListSSHKeysResponse,
770
+ unmarshalListSamlCertificatesResponse,
708
771
  unmarshalListUsersResponse,
709
772
  unmarshalLog,
710
773
  unmarshalMFAOTP,
@@ -713,6 +776,8 @@ export {
713
776
  unmarshalPolicy,
714
777
  unmarshalQuotum,
715
778
  unmarshalSSHKey,
779
+ unmarshalSaml,
780
+ unmarshalSamlCertificate,
716
781
  unmarshalSetRulesResponse,
717
782
  unmarshalUser,
718
783
  unmarshalValidateUserMFAOTPResponse
@@ -15,6 +15,9 @@ export type LocalityType = 'global' | 'region' | 'zone';
15
15
  export type LogAction = 'unknown_action' | 'created' | 'updated' | 'deleted';
16
16
  export type LogResourceType = 'unknown_resource_type' | 'api_key' | 'user' | 'application' | 'group' | 'policy';
17
17
  export type PermissionSetScopeType = 'unknown_scope_type' | 'projects' | 'organization' | 'account_root_user';
18
+ export type SamlCertificateOrigin = 'unknown_certificate_origin' | 'scaleway' | 'identity_provider';
19
+ export type SamlCertificateType = 'unknown_certificate_type' | 'signing' | 'encryption';
20
+ export type SamlStatus = 'unknown_saml_status' | 'valid' | 'missing_certificate' | 'missing_entity_id' | 'missing_single_sign_on_url';
18
21
  export type UserStatus = 'unknown_status' | 'invitation_pending' | 'activated';
19
22
  export type UserType = 'unknown_type' | 'guest' | 'owner' | 'member';
20
23
  export interface ConnectionConnectedOrganization {
@@ -581,6 +584,28 @@ export interface SSHKey {
581
584
  */
582
585
  disabled: boolean;
583
586
  }
587
+ export interface SamlCertificate {
588
+ /**
589
+ * ID of the SAML certificate.
590
+ */
591
+ id: string;
592
+ /**
593
+ * Type of the SAML certificate.
594
+ */
595
+ type: SamlCertificateType;
596
+ /**
597
+ * Origin of the SAML certificate.
598
+ */
599
+ origin: SamlCertificateOrigin;
600
+ /**
601
+ * Content of the SAML certificate.
602
+ */
603
+ content: string;
604
+ /**
605
+ * Date and time of the SAML certificate expiration.
606
+ */
607
+ expiresAt?: Date;
608
+ }
584
609
  export interface User {
585
610
  /**
586
611
  * ID of user.
@@ -639,9 +664,9 @@ export interface User {
639
664
  */
640
665
  twoFactorEnabled?: boolean;
641
666
  /**
642
- * Status of user invitation.
667
+ * @deprecated Status of user invitation.
643
668
  */
644
- status: UserStatus;
669
+ status?: UserStatus;
645
670
  /**
646
671
  * Defines whether MFA is enabled.
647
672
  */
@@ -659,6 +684,10 @@ export interface User {
659
684
  */
660
685
  locked: boolean;
661
686
  }
687
+ export interface SamlServiceProvider {
688
+ entityId: string;
689
+ assertionConsumerServiceUrl: string;
690
+ }
662
691
  export type AddGroupMemberRequest = {
663
692
  /**
664
693
  * ID of the group.
@@ -691,6 +720,20 @@ export type AddGroupMembersRequest = {
691
720
  */
692
721
  applicationIds?: string[];
693
722
  };
723
+ export type AddSamlCertificateRequest = {
724
+ /**
725
+ * ID of the SAML configuration.
726
+ */
727
+ samlId: string;
728
+ /**
729
+ * Type of the SAML certificate.
730
+ */
731
+ type: SamlCertificateType;
732
+ /**
733
+ * Content of the SAML certificate.
734
+ */
735
+ content: string;
736
+ };
694
737
  export type ClonePolicyRequest = {
695
738
  policyId: string;
696
739
  };
@@ -887,6 +930,18 @@ export type DeletePolicyRequest = {
887
930
  export type DeleteSSHKeyRequest = {
888
931
  sshKeyId: string;
889
932
  };
933
+ export type DeleteSamlCertificateRequest = {
934
+ /**
935
+ * ID of the certificate to delete.
936
+ */
937
+ certificateId: string;
938
+ };
939
+ export type DeleteSamlRequest = {
940
+ /**
941
+ * ID of the SAML configuration.
942
+ */
943
+ samlId: string;
944
+ };
890
945
  export type DeleteUserMFAOTPRequest = {
891
946
  /**
892
947
  * User ID of the MFA OTP.
@@ -899,6 +954,12 @@ export type DeleteUserRequest = {
899
954
  */
900
955
  userId: string;
901
956
  };
957
+ export type EnableOrganizationSamlRequest = {
958
+ /**
959
+ * ID of the Organization.
960
+ */
961
+ organizationId?: string;
962
+ };
902
963
  export interface EncodedJWT {
903
964
  /**
904
965
  * The renewed JWT.
@@ -949,6 +1010,12 @@ export type GetOrganizationRequest = {
949
1010
  */
950
1011
  organizationId?: string;
951
1012
  };
1013
+ export type GetOrganizationSamlRequest = {
1014
+ /**
1015
+ * ID of the Organization.
1016
+ */
1017
+ organizationId?: string;
1018
+ };
952
1019
  export type GetOrganizationSecuritySettingsRequest = {
953
1020
  /**
954
1021
  * ID of the Organization.
@@ -1447,6 +1514,18 @@ export interface ListSSHKeysResponse {
1447
1514
  */
1448
1515
  totalCount: number;
1449
1516
  }
1517
+ export type ListSamlCertificatesRequest = {
1518
+ /**
1519
+ * ID of the SAML configuration.
1520
+ */
1521
+ samlId: string;
1522
+ };
1523
+ export interface ListSamlCertificatesResponse {
1524
+ /**
1525
+ * List of SAML certificates.
1526
+ */
1527
+ certificates: SamlCertificate[];
1528
+ }
1450
1529
  export type ListUsersRequest = {
1451
1530
  /**
1452
1531
  * Criteria for sorting results.
@@ -1562,6 +1641,28 @@ export type RemoveUserConnectionRequest = {
1562
1641
  */
1563
1642
  targetUserId: string;
1564
1643
  };
1644
+ export interface Saml {
1645
+ /**
1646
+ * ID of the SAML configuration.
1647
+ */
1648
+ id: string;
1649
+ /**
1650
+ * Status of the SAML configuration.
1651
+ */
1652
+ status: SamlStatus;
1653
+ /**
1654
+ * Service Provider information.
1655
+ */
1656
+ serviceProvider?: SamlServiceProvider;
1657
+ /**
1658
+ * Entity ID of the SAML Identity Provider.
1659
+ */
1660
+ entityId: string;
1661
+ /**
1662
+ * Single Sign-On URL of the SAML Identity Provider.
1663
+ */
1664
+ singleSignOnUrl: string;
1665
+ }
1565
1666
  export type SetGroupMembersRequest = {
1566
1667
  groupId: string;
1567
1668
  userIds: string[];
@@ -1720,6 +1821,20 @@ export type UpdateSSHKeyRequest = {
1720
1821
  */
1721
1822
  disabled?: boolean;
1722
1823
  };
1824
+ export type UpdateSamlRequest = {
1825
+ /**
1826
+ * ID of the SAML configuration.
1827
+ */
1828
+ samlId: string;
1829
+ /**
1830
+ * Entity ID of the SAML Identity Provider.
1831
+ */
1832
+ entityId?: string;
1833
+ /**
1834
+ * Single Sign-On URL of the SAML Identity Provider.
1835
+ */
1836
+ singleSignOnUrl?: string;
1837
+ };
1723
1838
  export type UpdateUserPasswordRequest = {
1724
1839
  /**
1725
1840
  * ID of the user to update.
@@ -1,5 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const AddSamlCertificateRequest = {
4
+ content: {
5
+ maxLength: 16384,
6
+ minLength: 1
7
+ }
8
+ };
3
9
  const CreateAPIKeyRequest = {
4
10
  description: {
5
11
  ignoreEmpty: true,
@@ -57,8 +63,7 @@ const CreateUserRequestMember = {
57
63
  maxLength: 64
58
64
  },
59
65
  password: {
60
- ignoreEmpty: true,
61
- maxLength: 72
66
+ ignoreEmpty: true
62
67
  },
63
68
  username: {
64
69
  maxLength: 64,
@@ -262,9 +267,9 @@ const UpdateSSHKeyRequest = {
262
267
  maxLength: 1e3
263
268
  }
264
269
  };
265
- const UpdateUserPasswordRequest = {
266
- password: {
267
- maxLength: 72,
270
+ const UpdateSamlRequest = {
271
+ entityId: {
272
+ maxLength: 1024,
268
273
  minLength: 1
269
274
  }
270
275
  };
@@ -288,6 +293,7 @@ const ValidateUserMFAOTPRequest = {
288
293
  pattern: /^[0-9]{6}$/
289
294
  }
290
295
  };
296
+ exports.AddSamlCertificateRequest = AddSamlCertificateRequest;
291
297
  exports.CreateAPIKeyRequest = CreateAPIKeyRequest;
292
298
  exports.CreateApplicationRequest = CreateApplicationRequest;
293
299
  exports.CreateGroupRequest = CreateGroupRequest;
@@ -315,7 +321,7 @@ exports.UpdateGroupRequest = UpdateGroupRequest;
315
321
  exports.UpdateOrganizationSecuritySettingsRequest = UpdateOrganizationSecuritySettingsRequest;
316
322
  exports.UpdatePolicyRequest = UpdatePolicyRequest;
317
323
  exports.UpdateSSHKeyRequest = UpdateSSHKeyRequest;
318
- exports.UpdateUserPasswordRequest = UpdateUserPasswordRequest;
324
+ exports.UpdateSamlRequest = UpdateSamlRequest;
319
325
  exports.UpdateUserRequest = UpdateUserRequest;
320
326
  exports.UpdateUserUsernameRequest = UpdateUserUsernameRequest;
321
327
  exports.ValidateUserMFAOTPRequest = ValidateUserMFAOTPRequest;
@@ -1,3 +1,9 @@
1
+ export declare const AddSamlCertificateRequest: {
2
+ content: {
3
+ maxLength: number;
4
+ minLength: number;
5
+ };
6
+ };
1
7
  export declare const CreateAPIKeyRequest: {
2
8
  description: {
3
9
  ignoreEmpty: boolean;
@@ -56,7 +62,6 @@ export declare const CreateUserRequestMember: {
56
62
  };
57
63
  password: {
58
64
  ignoreEmpty: boolean;
59
- maxLength: number;
60
65
  };
61
66
  username: {
62
67
  maxLength: number;
@@ -260,8 +265,8 @@ export declare const UpdateSSHKeyRequest: {
260
265
  maxLength: number;
261
266
  };
262
267
  };
263
- export declare const UpdateUserPasswordRequest: {
264
- password: {
268
+ export declare const UpdateSamlRequest: {
269
+ entityId: {
265
270
  maxLength: number;
266
271
  minLength: number;
267
272
  };
@@ -1,3 +1,9 @@
1
+ const AddSamlCertificateRequest = {
2
+ content: {
3
+ maxLength: 16384,
4
+ minLength: 1
5
+ }
6
+ };
1
7
  const CreateAPIKeyRequest = {
2
8
  description: {
3
9
  ignoreEmpty: true,
@@ -55,8 +61,7 @@ const CreateUserRequestMember = {
55
61
  maxLength: 64
56
62
  },
57
63
  password: {
58
- ignoreEmpty: true,
59
- maxLength: 72
64
+ ignoreEmpty: true
60
65
  },
61
66
  username: {
62
67
  maxLength: 64,
@@ -260,9 +265,9 @@ const UpdateSSHKeyRequest = {
260
265
  maxLength: 1e3
261
266
  }
262
267
  };
263
- const UpdateUserPasswordRequest = {
264
- password: {
265
- maxLength: 72,
268
+ const UpdateSamlRequest = {
269
+ entityId: {
270
+ maxLength: 1024,
266
271
  minLength: 1
267
272
  }
268
273
  };
@@ -287,6 +292,7 @@ const ValidateUserMFAOTPRequest = {
287
292
  }
288
293
  };
289
294
  export {
295
+ AddSamlCertificateRequest,
290
296
  CreateAPIKeyRequest,
291
297
  CreateApplicationRequest,
292
298
  CreateGroupRequest,
@@ -314,7 +320,7 @@ export {
314
320
  UpdateOrganizationSecuritySettingsRequest,
315
321
  UpdatePolicyRequest,
316
322
  UpdateSSHKeyRequest,
317
- UpdateUserPasswordRequest,
323
+ UpdateSamlRequest,
318
324
  UpdateUserRequest,
319
325
  UpdateUserUsernameRequest,
320
326
  ValidateUserMFAOTPRequest
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-iam",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "Scaleway SDK iam",
5
5
  "license": "Apache-2.0",
6
6
  "files": [
@@ -26,17 +26,17 @@
26
26
  "directory": "packages_generated/iam"
27
27
  },
28
28
  "engines": {
29
- "node": ">=20.19.1"
29
+ "node": ">=20.19.4"
30
30
  },
31
31
  "dependencies": {
32
- "@scaleway/random-name": "5.1.1",
33
- "@scaleway/sdk-std": "1.0.5"
32
+ "@scaleway/random-name": "5.1.2",
33
+ "@scaleway/sdk-std": "1.0.6"
34
34
  },
35
35
  "peerDependencies": {
36
- "@scaleway/sdk-client": "^1.3.0"
36
+ "@scaleway/sdk-client": "^1.3.1"
37
37
  },
38
38
  "devDependencies": {
39
- "@scaleway/sdk-client": "^1.3.0"
39
+ "@scaleway/sdk-client": "^1.3.1"
40
40
  },
41
41
  "scripts": {
42
42
  "package:check": "pnpm publint",