diff --git a/src/Norbix.Sdk.Types/Generated/Api.dtos.cs b/src/Norbix.Sdk.Types/Generated/Api.dtos.cs index 39a7abe..b7ec785 100644 --- a/src/Norbix.Sdk.Types/Generated/Api.dtos.cs +++ b/src/Norbix.Sdk.Types/Generated/Api.dtos.cs @@ -8,8 +8,8 @@ #pragma warning disable CS0114, CS1570, CS0102, CS0108, CS0618 using System; -using System.IO; using System.Collections; +using System.IO; using System.Collections.Generic; using System.Runtime.Serialization; using Norbix.Sdk.Types; @@ -1011,6 +1011,12 @@ public partial class CommitUploadRequest [DataMember] public virtual string? FileName { get; set; } + + [DataMember] + public virtual string? OwnerUserId { get; set; } + + [DataMember] + public virtual bool? ReassignOwner { get; set; } } /// @@ -1202,6 +1208,70 @@ public partial class PutFileContentRequest public virtual string? Token { get; set; } } + [DataContract] + public partial class RegisterFileItem + { + [DataMember] + public virtual string? Path { get; set; } + + [DataMember] + public virtual string? OwnerUserId { get; set; } + + [DataMember] + public virtual string? ContentType { get; set; } + + [DataMember] + public virtual long? SizeBytes { get; set; } + + [DataMember] + public virtual string? FileName { get; set; } + } + + public partial class RegisterFileResult + { + public virtual int Index { get; set; } + public virtual string? Path { get; set; } + public virtual string? OwnerUserId { get; set; } + public virtual string? Status { get; set; } + public virtual string? FileId { get; set; } + public virtual bool? Verified { get; set; } + public virtual string? Warning { get; set; } + public virtual string? ErrorCode { get; set; } + public virtual int? ErrorStatus { get; set; } + public virtual string? Error { get; set; } + } + + /// + ///Files + /// + [NorbixRoute("/{version}/files/{filesIntegrationId}/register", "POST")] + [DataContract] + public partial class RegisterFilesRequest + : CodeMashRequestBase, INorbixRequest + { + [DataMember] + public virtual string FilesIntegrationId { get; set; } + + [DataMember] + public virtual List? Items { get; set; } + + [DataMember] + public virtual bool? ReassignOwner { get; set; } + + [DataMember] + public virtual bool? DryRun { get; set; } + } + + public partial class RegisterFilesResponse + : ResponseBase + { + public virtual bool DryRun { get; set; } + public virtual int Registered { get; set; } + public virtual int Unchanged { get; set; } + public virtual int Failed { get; set; } + public virtual List? Items { get; set; } + } + /// ///Files /// @@ -1221,6 +1291,12 @@ public partial class RequestUploadUrlRequest [DataMember] public virtual int? ExpirationSeconds { get; set; } + + [DataMember] + public virtual string? OwnerUserId { get; set; } + + [DataMember] + public virtual bool? ReassignOwner { get; set; } } public partial class RequestUploadUrlResponse @@ -1254,6 +1330,12 @@ public partial class UseFileRequest [DataMember] public virtual string Path { get; set; } + + [DataMember] + public virtual string? OwnerUserId { get; set; } + + [DataMember] + public virtual bool? ReassignOwner { get; set; } } /// @@ -1663,7 +1745,7 @@ public partial class DeleteUserRequest [NorbixRoute("/{version}/membership/auth/invitation/finish", "POST")] [DataContract] public partial class FinishInvitationRequest - : CodeMashRequestBase, INorbixRequest + : CodeMashRequestBase, INorbixRequest, INorbixOptionalAuth { /// ///One-time invitation token from the e-mail link (the #token= fragment). @@ -2976,6 +3058,9 @@ public partial class SchemaSettingsDto [DataMember] public virtual List? UniqueIndexes { get; set; } + + [DataMember] + public virtual bool? EndUserOwnRecords { get; set; } } public partial class SchemaUniqueIndexDto diff --git a/src/Norbix.Sdk.Types/Generated/Hub.dtos.cs b/src/Norbix.Sdk.Types/Generated/Hub.dtos.cs index 24b0a03..e8c7010 100644 --- a/src/Norbix.Sdk.Types/Generated/Hub.dtos.cs +++ b/src/Norbix.Sdk.Types/Generated/Hub.dtos.cs @@ -84,6 +84,15 @@ public partial class RenderSmsTextResponse public virtual string? Text { get; set; } } + public partial class TeamInvitationDto + { + public virtual string Id { get; set; } + public virtual string Email { get; set; } + public virtual List Roles { get; set; } = []; + public virtual DateTime SentOn { get; set; } + public virtual DateTime ExpiresOn { get; set; } + } + [Flags] public enum AccountStatus { @@ -1863,6 +1872,9 @@ public partial class AiRoleDto [DataMember] public virtual bool IsSystem { get; set; } + + [DataMember] + public virtual List Environments { get; set; } = []; } [DataContract] @@ -1900,6 +1912,19 @@ public partial class AiServiceUserKeyDto public virtual DateTime IssuedAt { get; set; } } + [DataContract] + public partial class BuiltInRepairDto + { + [DataMember] + public virtual string Env { get; set; } + + [DataMember] + public virtual List Items { get; set; } = []; + + [DataMember] + public virtual bool IsNoOp { get; set; } + } + public partial class CodeMashSubscriptionDto { public virtual string ViewId { get; set; } @@ -2143,6 +2168,9 @@ public partial class ProjectEnvironmentsDto { [DataMember] public virtual List Environments { get; set; } = []; + + [DataMember] + public virtual List PromotionOrder { get; set; } = []; } [DataContract] @@ -2161,6 +2189,124 @@ public partial class PromotionBlockerDto public virtual string UnresolvedRef { get; set; } } + [DataContract] + public partial class PromotionIntegrationChangeDto + { + [DataMember] + public virtual string Module { get; set; } + + [DataMember] + public virtual string Id { get; set; } + + [DataMember] + public virtual string Name { get; set; } + + [DataMember] + public virtual string Provider { get; set; } + + [DataMember] + public virtual string Status { get; set; } + + [DataMember] + public virtual string DefaultAction { get; set; } + + [DataMember] + public virtual string? Action { get; set; } + + [DataMember] + public virtual string? TargetId { get; set; } + + [DataMember] + public virtual string? MapToId { get; set; } + + [DataMember] + public virtual bool HoldsSecret { get; set; } + + [DataMember] + public virtual bool IsFake { get; set; } + + [DataMember] + public virtual bool RealSender { get; set; } + + [DataMember] + public virtual List Targets { get; set; } = []; + + [DataMember] + public virtual string? Warning { get; set; } + + [DataMember] + public virtual string? Note { get; set; } + } + + [DataContract] + public partial class PromotionIntegrationChoiceDto + { + /// + ///The SOURCE integration id (int_…), as listed in the preview's integrations[].id. + /// + [DataMember] + public virtual string Id { get; set; } + + /// + ///'seed' = copy the integration (with its secret) into the target; 'skip' = leave it out; 'map' = point the promoted content at an existing target integration of the same module (mapToId). + /// + [DataMember] + public virtual string Action { get; set; } + + /// + ///Only for 'map': the TARGET integration id (same module), from the preview's integrations[].targets[].id. + /// + [DataMember] + public virtual string? MapToId { get; set; } + } + + [DataContract] + public partial class PromotionIntegrationTargetDto + { + [DataMember] + public virtual string Id { get; set; } + + [DataMember] + public virtual string Name { get; set; } + + [DataMember] + public virtual string Provider { get; set; } + + [DataMember] + public virtual bool IsDefault { get; set; } + } + + [DataContract] + public partial class PromotionItemChangeDto + { + [DataMember] + public virtual string Type { get; set; } + + [DataMember] + public virtual string Id { get; set; } + + [DataMember] + public virtual string? Name { get; set; } + + [DataMember] + public virtual string Status { get; set; } + + [DataMember] + public virtual string? MatchedBy { get; set; } + + [DataMember] + public virtual string? PreviousTargetId { get; set; } + + [DataMember] + public virtual bool BuiltIn { get; set; } + + [DataMember] + public virtual long? RecordCount { get; set; } + + [DataMember] + public virtual string? Note { get; set; } + } + [DataContract] public partial class PromotionItemDto { @@ -2171,9 +2317,40 @@ public partial class PromotionItemDto public virtual string Id { get; set; } } + [DataContract] + public partial class PromotionNotPromotedDto + { + [DataMember] + public virtual string Area { get; set; } + + [DataMember] + public virtual string Scope { get; set; } + + [DataMember] + public virtual string Reason { get; set; } + + [DataMember] + public virtual int? Count { get; set; } + } + [DataContract] public partial class PromotionResultDto { + [DataMember] + public virtual PromotionSummaryDto Summary { get; set; } + + [DataMember] + public virtual List Items { get; set; } = []; + + [DataMember] + public virtual List Integrations { get; set; } = []; + + [DataMember] + public virtual List NotPromoted { get; set; } = []; + + [DataMember] + public virtual bool RequiresConfirmation { get; set; } + [DataMember] public virtual List ContentMirrored { get; set; } = []; @@ -2203,6 +2380,52 @@ public partial class PromotionResultDto [DataMember] public virtual bool WasDryRun { get; set; } + + [DataMember] + public virtual bool? Promoted { get; set; } + + [DataMember] + public virtual string? Message { get; set; } + } + + [DataContract] + public partial class PromotionSummaryDto + { + [DataMember] + public virtual int Added { get; set; } + + [DataMember] + public virtual int Changed { get; set; } + + [DataMember] + public virtual int Unchanged { get; set; } + + [DataMember] + public virtual int Deleted { get; set; } + + [DataMember] + public virtual int Kept { get; set; } + + [DataMember] + public virtual int Skipped { get; set; } + + [DataMember] + public virtual long RecordsAtRisk { get; set; } + + [DataMember] + public virtual int IntegrationsSeeded { get; set; } + + [DataMember] + public virtual int IntegrationsSkipped { get; set; } + + [DataMember] + public virtual int IntegrationsMapped { get; set; } + + [DataMember] + public virtual int IntegrationsRemoved { get; set; } + + [DataMember] + public virtual bool IsNoOp { get; set; } } [DataContract] @@ -5326,6 +5549,9 @@ public partial class SchemaSettingsDto [DataMember] public virtual List? UniqueIndexes { get; set; } + + [DataMember] + public virtual bool? EndUserOwnRecords { get; set; } } public partial class SchemaUniqueIndexDto @@ -6336,6 +6562,16 @@ public partial class RegistrationDto public virtual AccessInformationDto RegistrationInformation { get; set; } } + [DataContract] + public partial class RoleEnvironmentsDto + { + [DataMember] + public virtual string RoleId { get; set; } + + [DataMember] + public virtual List Environments { get; set; } = []; + } + public partial class RoleItemDto { public virtual string Id { get; set; } @@ -7178,9 +7414,10 @@ public partial class AdyenPaymentIntegrationDto public partial class AppleInAppPaymentIntegrationDto : PaymentsIntegrationDto { - public virtual string MerchantIdentifier { get; set; } - public virtual string MerchantDomain { get; set; } - public virtual string DisplayName { get; set; } + public virtual string? WebhookBundleId { get; set; } + public virtual string? MerchantIdentifier { get; set; } + public virtual string? MerchantDomain { get; set; } + public virtual string? DisplayName { get; set; } } public partial class AuthorizeNetPaymentIntegrationDto @@ -7188,7 +7425,6 @@ public partial class AuthorizeNetPaymentIntegrationDto { public virtual string MerchantLoginId { get; set; } public virtual string Environment { get; set; } - public virtual string? WebhookSignatureKey { get; set; } } public partial class BraintreePaymentIntegrationDto @@ -7196,7 +7432,6 @@ public partial class BraintreePaymentIntegrationDto { public virtual string MerchantId { get; set; } public virtual string Environment { get; set; } - public virtual string? WebhookSecret { get; set; } } public partial class CheckOutComPaymentIntegrationDto @@ -7204,15 +7439,15 @@ public partial class CheckOutComPaymentIntegrationDto { public virtual string MerchantAccount { get; set; } public virtual string Environment { get; set; } - public virtual string? WebhookSecret { get; set; } } public partial class GoogleInAppPaymentIntegrationDto : PaymentsIntegrationDto { - public virtual string MerchantId { get; set; } - public virtual string MerchantName { get; set; } - public virtual string Gateway { get; set; } + public virtual string? WebhookPackageName { get; set; } + public virtual string? MerchantId { get; set; } + public virtual string? MerchantName { get; set; } + public virtual string? Gateway { get; set; } public virtual string? GatewayMerchantId { get; set; } } @@ -7227,7 +7462,6 @@ public partial class MagentoPaymentIntegrationDto : PaymentsIntegrationDto { public virtual string StoreUrl { get; set; } - public virtual string? WebhookSecret { get; set; } } public partial class MolliePaymentIntegrationDto @@ -7264,7 +7498,6 @@ public partial class ShopifyPaymentIntegrationDto : PaymentsIntegrationDto { public virtual string ShopDomain { get; set; } - public virtual string? WebhookSecret { get; set; } } public partial class StripePaymentIntegrationDto @@ -7279,7 +7512,6 @@ public partial class WooCommercePaymentIntegrationDto : PaymentsIntegrationDto { public virtual string StoreUrl { get; set; } - public virtual string? WebhookSecret { get; set; } } public partial class WorldpayPaymentIntegrationDto @@ -7287,7 +7519,6 @@ public partial class WorldpayPaymentIntegrationDto { public virtual string MerchantCode { get; set; } public virtual string Environment { get; set; } - public virtual string? WebhookSecret { get; set; } } [DataContract] @@ -8872,6 +9103,11 @@ public partial class CreateAiServiceUserRequest ///Project roles to give: [{ projectId, roleIds: [pr_…_nr_…] }]. Without an account role the service user is pinned to these projects. /// public virtual List? ProjectRoles { get; set; } + + /// + ///Optional "Applies in" per role (N41): [{ roleId, environments: ["TEST"] }]. A role given here applies only in those environments (requests in another environment get 403 CM-ERRORS-MEMBERSHIP-041). No entry or an empty list = every environment. + /// + public virtual List? RoleEnvironments { get; set; } } [NorbixRoute("/{version}/account/ai/service-users/{Id}", "DELETE")] @@ -9254,6 +9490,19 @@ public partial class AccountTeamRoleDto public virtual HashSet? Policies { get; set; } } + /// + ///Cancels a pending team invitation + /// + [NorbixRoute("/{version}/account/team/invitations/{InvitationId}", "DELETE")] + public partial class CancelTeamInvitation + : RequestBase, INorbixRequest + { + /// + ///The invitation id, as get_account_team_invitations lists it. + /// + public virtual string InvitationId { get; set; } + } + [NorbixRoute("/{version}/account/team/member/password", "POST")] public partial class ChangeTeamMemberPassword : RequestBase, INorbixRequest, INorbixOptionalAuth @@ -9400,6 +9649,21 @@ public partial class GetAccountPasswordPolicyResponse public virtual AccountPasswordPolicyDto? Policy { get; set; } } + /// + ///Lists the account's pending team invitations + /// + [NorbixRoute("/{version}/account/team/invitations", "GET")] + public partial class GetAccountTeamInvitations + : RequestBase, INorbixRequest + { + } + + public partial class GetAccountTeamInvitationsResponse + : ResponseBase + { + public virtual List Items { get; set; } = []; + } + [NorbixRoute("/{version}/account/team/policies", "GET")] public partial class GetAccountTeamPolicies : RequestBase, INorbixRequest @@ -9424,6 +9688,19 @@ public partial class GetAccountTeamRolesResponse public virtual List? Roles { get; set; } } + /// + ///Removes a team member from the account + /// + [NorbixRoute("/{version}/account/team/member/{MemberId}", "DELETE")] + public partial class RemoveTeamMember + : RequestBase, INorbixRequest + { + /// + ///The team member's id (usr_…), as get_account_collaborators lists it. + /// + public virtual string MemberId { get; set; } + } + /// ///Send invite to team member /// @@ -9442,6 +9719,39 @@ public partial class SendInviteToTeamMember public virtual HashSet? Roles { get; set; } } + [NorbixRoute("/{version}/account/team/member/role-environments", "PUT")] + public partial class SetTeamMemberRoleEnvironmentsRequest + : RequestBase, INorbixRequest + { + /// + ///The team member's id (usr_…), as GET /account/collaborators lists it. + /// + public virtual string MemberId { get; set; } + + /// + ///The account role the member holds: its id (acc_…_nr_…) or its template id (GUID, as GetAccountTeamRoles lists it). + /// + public virtual string RoleId { get; set; } + + /// + ///Environment names, e.g. ["TEST"]. Empty = every environment. + /// + public virtual List? Environments { get; set; } + } + + public partial class TeamMemberRoleInput + { + /// + ///Account role id (acc_…_nr_…) or its template id (GUID), as get_account_team_roles lists it. + /// + public virtual string RoleId { get; set; } + + /// + ///Environment names the role applies in, e.g. ["TEST"]. Empty or omitted = every environment. + /// + public virtual List? Environments { get; set; } + } + [NorbixRoute("/{version}/account/team/policies", "PUT")] public partial class UpdateAccountPolicy : RequestBase, INorbixRequest @@ -9492,6 +9802,29 @@ public partial class UpdateAccountRole public virtual HashSet? Policies { get; set; } } + /// + ///Updates a team member's display name and/or account roles + /// + [NorbixRoute("/{version}/account/team/member", "PUT")] + public partial class UpdateTeamMember + : RequestBase, INorbixRequest + { + /// + ///The team member's id (usr_…), as get_account_collaborators lists it. + /// + public virtual string MemberId { get; set; } + + /// + ///New display name. Omit to keep the current one. + /// + public virtual string? DisplayName { get; set; } + + /// + ///The member's account roles after the change — REPLACES the current ones. Omit to keep the roles; an empty list removes every account role (the member stays on the team). + /// + public virtual List? Roles { get; set; } + } + [NorbixRoute("/{version}/account/projects/environments", "POST")] [DataContract] public partial class CreateProjectEnvironmentRequest @@ -9638,6 +9971,18 @@ public partial class PromoteEnvironmentRequest /// [DataMember] public virtual bool DryRun { get; set; } + + /// + ///Must be true for a real run that deletes a collection holding records in the target (the preview lists each with recordCount). Without it the run refuses and changes nothing. + /// + [DataMember] + public virtual bool ConfirmRecordLoss { get; set; } + + /// + ///Per source integration id: action 'seed' (copy it with its secret into the target), 'skip' (leave it out) or 'map' (mapToId: a target integration of the same module the promoted content should use). Missing ids use the default: Fake providers 'seed' (unless the target already has its own Fake of that module), everything else 'skip'. + /// + [DataMember] + public virtual List? IntegrationChoices { get; set; } } public partial class PromoteEnvironmentResponse @@ -9646,6 +9991,30 @@ public partial class PromoteEnvironmentResponse public virtual PromotionResultDto? Item { get; set; } } + [NorbixRoute("/{version}/account/projects/environments/built-ins/repair", "POST")] + [DataContract] + public partial class RepairEnvironmentBuiltInsRequest + : CodeMashRequestBase, INorbixRequest + { + /// + ///The environment to repair. Empty = every environment except PROD. + /// + [DataMember] + public virtual string? EnvironmentName { get; set; } + + /// + ///When true, only returns what would be done. + /// + [DataMember] + public virtual bool DryRun { get; set; } + } + + public partial class RepairEnvironmentBuiltInsResponse + : ResponseBase + { + public virtual List Items { get; set; } = []; + } + [NorbixRoute("/{version}/account/projects/environments/promote/rollback", "POST")] [DataContract] public partial class RollbackPromotionRequest @@ -9662,6 +10031,18 @@ public partial class RollbackPromotionRequest /// [DataMember] public virtual long FromVersion { get; set; } + + /// + ///When true, only returns the rollback plan without applying it. + /// + [DataMember] + public virtual bool DryRun { get; set; } + + /// + ///Must be true when the rollback deletes a collection holding records in the target. + /// + [DataMember] + public virtual bool ConfirmRecordLoss { get; set; } } [NorbixRoute("/{version}/account/projects/environments/{environmentName}/rank", "PATCH")] @@ -14092,6 +14473,62 @@ public partial class DiscardDatabaseSchemaDraftRequest public virtual string Id { get; set; } } + [DataContract] + public partial class EndUserOwnRecordsReportDto + { + [DataMember(Name="dryRun")] + public virtual bool DryRun { get; set; } + + [DataMember(Name="env")] + public virtual string Env { get; set; } + + [DataMember(Name="schemas")] + public virtual List Schemas { get; set; } = []; + } + + /// + ///List the endUserOwnRecords switch of every schema (and turn it on for named schemas) + /// + [NorbixRoute("/{version}/database/schemas/end-user-own-records", "POST")] + public partial class EndUserOwnRecordsReportRequest + : CodeMashRequestBase, INorbixRequest + { + /// + ///True (default) = only list. False = turn the switch on for the schemas in 'enable'. + /// + public virtual bool DryRun { get; set; } + + /// + ///Schema names to turn the switch ON for (only with dryRun:false). Empty = change nothing. + /// + public virtual List Enable { get; set; } = []; + } + + public partial class EndUserOwnRecordsReportResponse + : ResponseBase + { + public virtual EndUserOwnRecordsReportDto? Result { get; set; } + } + + [DataContract] + public partial class EndUserOwnRecordsRowDto + { + [DataMember(Name="schemaId")] + public virtual string SchemaId { get; set; } + + [DataMember(Name="schemaName")] + public virtual string SchemaName { get; set; } + + [DataMember(Name="hasRecordOwner")] + public virtual bool HasRecordOwner { get; set; } + + [DataMember(Name="endUserOwnRecords")] + public virtual bool EndUserOwnRecords { get; set; } + + [DataMember(Name="action")] + public virtual string Action { get; set; } + } + /// ///Gets database schema by id /// @@ -17782,14 +18219,14 @@ public partial class AppleInAppPaymentIntegrationRequest : PaymentIntegrationRequest { public virtual PaymentGatewayPlatform Provider { get; set; } - public virtual string MerchantIdentifier { get; set; } - public virtual string MerchantDomain { get; set; } - public virtual string DisplayName { get; set; } - public virtual string MerchantIdentityCertificateP12Base64 { get; set; } - public virtual string MerchantIdentityCertificatePassword { get; set; } - public virtual string PaymentProcessingCertificateP12Base64 { get; set; } - public virtual string PaymentProcessingCertificatePassword { get; set; } - public virtual string? WebhookBundleId { get; set; } + public virtual string WebhookBundleId { get; set; } + public virtual string? MerchantIdentifier { get; set; } + public virtual string? MerchantDomain { get; set; } + public virtual string? DisplayName { get; set; } + public virtual string? MerchantIdentityCertificateP12Base64 { get; set; } + public virtual string? MerchantIdentityCertificatePassword { get; set; } + public virtual string? PaymentProcessingCertificateP12Base64 { get; set; } + public virtual string? PaymentProcessingCertificatePassword { get; set; } } public partial class AuthorizeNetPaymentIntegrationRequest @@ -17914,12 +18351,12 @@ public partial class GoogleInAppPaymentIntegrationRequest : PaymentIntegrationRequest { public virtual PaymentGatewayPlatform Provider { get; set; } - public virtual string MerchantId { get; set; } - public virtual string MerchantName { get; set; } - public virtual string Gateway { get; set; } - public virtual string PrivateKeyOrToken { get; set; } + public virtual string WebhookPackageName { get; set; } + public virtual string? MerchantId { get; set; } + public virtual string? MerchantName { get; set; } + public virtual string? Gateway { get; set; } + public virtual string? PrivateKeyOrToken { get; set; } public virtual string? GatewayMerchantId { get; set; } - public virtual string? WebhookPackageName { get; set; } } public partial class LemonSqueezyPaymentIntegrationRequest @@ -18048,7 +18485,7 @@ public partial class WorldpayPaymentIntegrationRequest public virtual string MerchantCode { get; set; } public virtual string Environment { get; set; } public virtual string ApiKey { get; set; } - public virtual string? WebhookSecret { get; set; } + public virtual string WebhookSecret { get; set; } } /// diff --git a/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Account.verified.txt b/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Account.verified.txt index 7ffa337..d24d2ff 100644 --- a/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Account.verified.txt +++ b/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Account.verified.txt @@ -1,7 +1,7 @@ { Target: Hub, Group: account, - Count: 122, + Count: 128, Endpoints: [ { Target: Hub, @@ -367,6 +367,9 @@ ], projectRoles: [ null + ], + roleEnvironments: [ + null ] } }, @@ -1099,6 +1102,39 @@ } } }, + { + Target: Hub, + Group: account, + MethodName: CancelTeamInvitationAsync, + RequestType: CancelTeamInvitation, + HttpMethod: DELETE, + Path: /{version}/account/team/invitations/{InvitationId}, + PathParams: [ + InvitationId + ], + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: DELETE, + Path: /v2/account/team/invitations/{guid}, + Headers: { + Authorization: Bearer test-bearer, + norbix-account-id: test-account, + norbix-project-id: test-project + } + }, + ResponseType: IdResponse, + Response: { + Id: Guid_1, + Status: test-status, + Warnings: [ + test-string + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: account, @@ -1379,6 +1415,34 @@ } } }, + { + Target: Hub, + Group: account, + MethodName: GetAccountTeamInvitationsAsync, + RequestType: GetAccountTeamInvitations, + HttpMethod: GET, + Path: /{version}/account/team/invitations, + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: GET, + Path: /v2/account/team/invitations, + Headers: { + Authorization: Bearer test-bearer, + norbix-account-id: test-account, + norbix-project-id: test-project + } + }, + ResponseType: GetAccountTeamInvitationsResponse, + Response: { + Items: [ + {} + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: account, @@ -1439,6 +1503,39 @@ } } }, + { + Target: Hub, + Group: account, + MethodName: RemoveTeamMemberAsync, + RequestType: RemoveTeamMember, + HttpMethod: DELETE, + Path: /{version}/account/team/member/{MemberId}, + PathParams: [ + MemberId + ], + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: DELETE, + Path: /v2/account/team/member/{guid}, + Headers: { + Authorization: Bearer test-bearer, + norbix-account-id: test-account, + norbix-project-id: test-project + } + }, + ResponseType: IdResponse, + Response: { + Id: Guid_1, + Status: test-status, + Warnings: [ + test-string + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: account, @@ -1468,6 +1565,44 @@ } } }, + { + Target: Hub, + Group: account, + MethodName: SetTeamMemberRoleEnvironmentsAsync, + RequestType: SetTeamMemberRoleEnvironmentsRequest, + HttpMethod: PUT, + Path: /{version}/account/team/member/role-environments, + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: PUT, + Path: /v2/account/team/member/role-environments, + Headers: { + Authorization: Bearer test-bearer, + Content-Type: application/json; charset=utf-8, + norbix-account-id: test-account, + norbix-project-id: test-project + }, + Body: { + memberId: Guid_1, + roleId: Guid_1, + environments: [ + test-string + ] + } + }, + ResponseType: IdResponse, + Response: { + Id: Guid_1, + Status: test-status, + Warnings: [ + test-string + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: account, @@ -1541,6 +1676,44 @@ } } }, + { + Target: Hub, + Group: account, + MethodName: UpdateTeamMemberAsync, + RequestType: UpdateTeamMember, + HttpMethod: PUT, + Path: /{version}/account/team/member, + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: PUT, + Path: /v2/account/team/member, + Headers: { + Authorization: Bearer test-bearer, + Content-Type: application/json; charset=utf-8, + norbix-account-id: test-account, + norbix-project-id: test-project + }, + Body: { + memberId: Guid_1, + displayName: test-displayName, + roles: [ + null + ] + } + }, + ResponseType: IdResponse, + Response: { + Id: Guid_1, + Status: test-status, + Warnings: [ + test-string + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: account, @@ -1779,6 +1952,9 @@ Item: { Environments: [ test-string + ], + PromotionOrder: [ + test-string ] }, ResponseStatus: { @@ -1833,34 +2009,42 @@ sourceEnv: test-sourceEnv, targetEnv: test-targetEnv, dryRun: true, + confirmRecordLoss: true, + integrationChoices: [ + null + ], env: test-env } }, ResponseType: PromoteEnvironmentResponse, Response: { Item: { - ContentMirrored: [ - {} - ], - ContentDeleted: [ - {} - ], - IntegrationsSeeded: [ - {} + Summary: { + IsNoOp: false + }, + Items: [ + { + BuiltIn: false + } ], - IntegrationsToProvision: [ - {} + Integrations: [ + { + HoldsSecret: false, + IsFake: false, + RealSender: false + } ], - IntegrationsSkipped: [ + NotPromoted: [ {} ], - Blockers: [ + RequiresConfirmation: true, + ContentMirrored: [ {} ], - TermChanges: [ + ContentDeleted: [ {} ], - Warnings: [ + IntegrationsSeeded: [ {} ], WasDryRun: false @@ -1870,6 +2054,42 @@ } } }, + { + Target: Hub, + Group: account, + MethodName: RepairEnvironmentBuiltInsAsync, + RequestType: RepairEnvironmentBuiltInsRequest, + HttpMethod: POST, + Path: /{version}/account/projects/environments/built-ins/repair, + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: POST, + Path: /v2/account/projects/environments/built-ins/repair, + Headers: { + Authorization: Bearer test-bearer, + Content-Type: application/json; charset=utf-8, + norbix-account-id: test-account, + norbix-project-id: test-project + }, + Body: { + environmentName: test-environmentName, + dryRun: true, + env: test-env + } + }, + ResponseType: RepairEnvironmentBuiltInsResponse, + Response: { + Items: [ + { + IsNoOp: false + } + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: account, @@ -1891,34 +2111,40 @@ Body: { targetEnv: test-targetEnv, fromVersion: 1.0, + dryRun: true, + confirmRecordLoss: true, env: test-env } }, ResponseType: PromoteEnvironmentResponse, Response: { Item: { - ContentMirrored: [ - {} - ], - ContentDeleted: [ - {} - ], - IntegrationsSeeded: [ - {} + Summary: { + IsNoOp: false + }, + Items: [ + { + BuiltIn: false + } ], - IntegrationsToProvision: [ - {} + Integrations: [ + { + HoldsSecret: false, + IsFake: false, + RealSender: false + } ], - IntegrationsSkipped: [ + NotPromoted: [ {} ], - Blockers: [ + RequiresConfirmation: true, + ContentMirrored: [ {} ], - TermChanges: [ + ContentDeleted: [ {} ], - Warnings: [ + IntegrationsSeeded: [ {} ], WasDryRun: false diff --git a/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Database.verified.txt b/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Database.verified.txt index 196fc74..f112b57 100644 --- a/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Database.verified.txt +++ b/tests/Norbix.Hub.Tests/test_results/EndpointCoverageTests.Hub.Database.verified.txt @@ -1,7 +1,7 @@ { Target: Hub, Group: database, - Count: 74, + Count: 75, Endpoints: [ { Target: Hub, @@ -1495,6 +1495,49 @@ } } }, + { + Target: Hub, + Group: database, + MethodName: EndUserOwnRecordsReportAsync, + RequestType: EndUserOwnRecordsReportRequest, + HttpMethod: POST, + Path: /{version}/database/schemas/end-user-own-records, + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: POST, + Path: /v2/database/schemas/end-user-own-records, + Headers: { + Authorization: Bearer test-bearer, + Content-Type: application/json; charset=utf-8, + norbix-account-id: test-account, + norbix-project-id: test-project + }, + Body: { + dryRun: true, + enable: [ + test-string + ], + env: test-env + } + }, + ResponseType: EndUserOwnRecordsReportResponse, + Response: { + Result: { + dryRun: true, + env: test-env, + schemas: [ + { + hasRecordOwner: false, + endUserOwnRecords: false + } + ] + }, + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Hub, Group: database, @@ -1857,7 +1900,8 @@ description: test-description, uniqueIndexes: [ null - ] + ], + endUserOwnRecords: true }, env: test-env } @@ -2016,7 +2060,8 @@ description: test-description, uniqueIndexes: [ null - ] + ], + endUserOwnRecords: true }, env: test-env } diff --git a/tests/Norbix.Sdk.Tests/test_results/EndpointCoverageTests.Api.Files.verified.txt b/tests/Norbix.Sdk.Tests/test_results/EndpointCoverageTests.Api.Files.verified.txt index 493df32..854de13 100644 --- a/tests/Norbix.Sdk.Tests/test_results/EndpointCoverageTests.Api.Files.verified.txt +++ b/tests/Norbix.Sdk.Tests/test_results/EndpointCoverageTests.Api.Files.verified.txt @@ -1,7 +1,7 @@ { Target: Api, Group: files, - Count: 14, + Count: 15, Endpoints: [ { Target: Api, @@ -29,6 +29,8 @@ contentType: test-contentType, sizeBytes: 1.0, fileName: test-fileName, + ownerUserId: Guid_1, + reassignOwner: true, env: test-env } }, @@ -364,6 +366,50 @@ } } }, + { + Target: Api, + Group: files, + MethodName: RegisterFilesAsync, + RequestType: RegisterFilesRequest, + HttpMethod: POST, + Path: /{version}/files/{filesIntegrationId}/register, + PathParams: [ + filesIntegrationId + ], + IsAccountScoped: false, + IsUnauthenticated: false, + Sent: { + Method: POST, + Path: /v2/files/{guid}/register, + Headers: { + Authorization: Bearer test-bearer, + Content-Type: application/json; charset=utf-8, + norbix-account-id: test-account, + norbix-project-id: test-project + }, + Body: { + items: [ + null + ], + reassignOwner: true, + dryRun: true, + env: test-env + } + }, + ResponseType: RegisterFilesResponse, + Response: { + DryRun: true, + Registered: 7, + Unchanged: 7, + Failed: 7, + Items: [ + {} + ], + ResponseStatus: { + IsSuccess: true + } + } + }, { Target: Api, Group: files, @@ -389,6 +435,8 @@ path: test-path, contentType: test-contentType, expirationSeconds: 1.0, + ownerUserId: Guid_1, + reassignOwner: true, env: test-env } }, @@ -458,6 +506,8 @@ }, Body: { path: test-path, + ownerUserId: Guid_1, + reassignOwner: true, env: test-env } },