diff --git a/src/OrderCloud.SDK/Generated/ErrorCodes.cs b/src/OrderCloud.SDK/Generated/ErrorCodes.cs index fd9867b..4c7c37e 100644 --- a/src/OrderCloud.SDK/Generated/ErrorCodes.cs +++ b/src/OrderCloud.SDK/Generated/ErrorCodes.cs @@ -612,8 +612,31 @@ public static class Promotion public const string CannotSetQuantityLimitPerOrder = "Promotion.CannotSetQuantityLimitPerOrder"; /// QuantityLimitPerOrder is not supported in conjuction with ItemLimitPerOrder. public const string CannotSetQuantityAndItemLimitPerOrder = "Promotion.CannotSetQuantityAndItemLimitPerOrder"; - /// LineItemLevel must be true and ItemLimitPerOrder or QuantityLimitPerOrder must have a value in order to use ItemSortBy. + /// LineItemLevel must be true and ItemLimitPerOrder must have a value in order to use ItemSortBy. public const string CannotSetItemSortBy = "Promotion.CannotSetItemSortBy"; + /// Either set a ValueExpression, or define ValidatePromotion event for your client. + public const string ValueExpressionCannotBeNull = "Promotion.ValueExpressionCannotBeNull"; + /// ValueExpression can be null only if UseIntegration is true. + public const string ValueExpressionCanBeNullIfUseIntegration = "Promotion.ValueExpressionCanBeNullIfUseIntegration"; + /// UseIntegration must be false if ValueExpression is not null. + public const string UseIntegrationMustBeFalse = "Promotion.UseIntegrationMustBeFalse"; + } + public static class PromotionIntegration + { + /// Failed to evaluate integration promotion. + public const string FailedToEvaluate = "PromotionIntegration.FailedToEvaluate"; + /// Promotion integration returned the error. + public const string EvaluationErrorReturned = "PromotionIntegration.EvaluationErrorReturned"; + /// Cannot delete a promotion integration if promotions exist where ValueExpression = null. + public const string CannotDeletePromotionIntegration = "PromotionIntegration.CannotDeletePromotionIntegration"; + /// PromotionID in the response does not match any PromosRequested ID in the Promotion Integration payload. + public const string PromotionIDMismatch = "PromotionIntegration.PromotionIDMismatch"; + /// LineItemId is required for LineItemLevel promotion. + public const string LineItemIdRequired = "PromotionIntegration.LineItemIdRequired"; + /// LineItemId must be null for not LineItemLevel promotion. + public const string LineItemIdMustBeNull = "PromotionIntegration.LineItemIdMustBeNull"; + /// Promotion cannot be used on this order. + public const string NotEligible = "PromotionIntegration.NotEligible"; } public static class Registration { diff --git a/src/OrderCloud.SDK/Generated/Models.cs b/src/OrderCloud.SDK/Generated/Models.cs index ea4485e..49575f4 100644 --- a/src/OrderCloud.SDK/Generated/Models.cs +++ b/src/OrderCloud.SDK/Generated/Models.cs @@ -1774,7 +1774,6 @@ public class OrderPromotion : OrderCloudModel [Required] public string EligibleExpression { get => GetProp("EligibleExpression"); set => SetProp("EligibleExpression", value); } /// The expression evaluated to determine the discount amount of an eligible promotion. See Rules Engine documentation for formatting details. - [Required] public string ValueExpression { get => GetProp("ValueExpression"); set => SetProp("ValueExpression", value); } /// If true, the promotion can be applied to an order that already other promotions applied, as long as they can also be combined. public bool CanCombine { get => GetProp("CanCombine"); set => SetProp("CanCombine", value); } @@ -2027,7 +2026,7 @@ public class PasswordConfig : OrderCloudModel public int? MinimumPasswordAge { get => GetProp("MinimumPasswordAge"); set => SetProp("MinimumPasswordAge", value); } /// The number of failed attempts before the account is Locked for the LockoutDuration. public int? AllowedFailedAttempts { get => GetProp("AllowedFailedAttempts"); set => SetProp("AllowedFailedAttempts", value); } - /// The number of minutes an account is locked when the AllowedFailedAttempts is reached. + /// The number of minutes an account is locked when the AllowedFailedAttempts is reached. Use 0 to indicate that lockout should be indefinite (i.e. require the intervention of a user admininstrator). public int? LockoutDuration { get => GetProp("LockoutDuration"); set => SetProp("LockoutDuration", value); } /// At least one upper case character is required. public bool UpperCaseRequired { get => GetProp("UpperCaseRequired"); set => SetProp("UpperCaseRequired", value); } @@ -2427,7 +2426,6 @@ public class Promotion : OrderCloudModel [Required] public string EligibleExpression { get => GetProp("EligibleExpression"); set => SetProp("EligibleExpression", value); } /// The expression evaluated to determine the discount amount of an eligible promotion. See Rules Engine documentation for formatting details. - [Required] public string ValueExpression { get => GetProp("ValueExpression"); set => SetProp("ValueExpression", value); } /// If true, the promotion can be applied to an order that already other promotions applied, as long as they can also be combined. public bool CanCombine { get => GetProp("CanCombine"); set => SetProp("CanCombine", value); } diff --git a/src/OrderCloud.SDK/Generated/Resources.cs b/src/OrderCloud.SDK/Generated/Resources.cs index 36af83e..373b774 100644 --- a/src/OrderCloud.SDK/Generated/Resources.cs +++ b/src/OrderCloud.SDK/Generated/Resources.cs @@ -395,6 +395,10 @@ public interface IAdminUsersResource /// The object that will be partially serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. Task PatchAsync(string userID, PartialUser partialUser, string accessToken = null) where TUser : User; + /// Unlock a user account. + /// ID of the user. + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task UnlockUserAccountAsync(string userID, string accessToken = null); } public interface IApiClientsResource @@ -1700,54 +1704,74 @@ public interface IEntitySyncsResource Task SaveCategoriesAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); /// Get the entity sync delivery configuration for Suppliers Get the entity sync delivery configuration for Suppliers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task GetSuppliersEntitySyncConfigAsync(string accessToken = null); + Task GetSuppliersAsync(string accessToken = null); /// Delete the entity sync delivery configuration for Suppliers Delete the entity sync delivery configuration for Suppliers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task DeleteSuppliersEntitySyncConfigAsync(string accessToken = null); + Task DeleteSuppliersAsync(string accessToken = null); /// Create or update the entity sync delivery configuration for Suppliers Create or update the entity sync delivery configuration for Suppliers /// The object that will be serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task SaveSuppliersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + Task SaveSuppliersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); /// Get the entity sync delivery configuration for BuyerUsers Get the entity sync delivery configuration for BuyerUsers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task GetBuyerUsersEntitySyncConfigAsync(string accessToken = null); + Task GetBuyerUsersAsync(string accessToken = null); /// Delete the entity sync delivery configuration for BuyerUsers Delete the entity sync delivery configuration for BuyerUsers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task DeleteBuyerUsersEntitySyncConfigAsync(string accessToken = null); + Task DeleteBuyerUsersAsync(string accessToken = null); /// Create or update the entity sync delivery configuration for BuyerUsers Create or update the entity sync delivery configuration for BuyerUsers /// The object that will be serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task SaveBuyerUsersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + Task SaveBuyerUsersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); /// Get the entity sync delivery configuration for SupplierUsers Get the entity sync delivery configuration for SupplierUsers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task GetSupplierUsersEntitySyncConfigAsync(string accessToken = null); + Task GetSupplierUsersAsync(string accessToken = null); /// Delete the entity sync delivery configuration for SupplierUsers Delete the entity sync delivery configuration for SupplierUsers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task DeleteSupplierUsersEntitySyncConfigAsync(string accessToken = null); + Task DeleteSupplierUsersAsync(string accessToken = null); /// Create or update the entity sync delivery configuration for SupplierUsers Create or update the entity sync delivery configuration for SupplierUsers /// The object that will be serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task SaveSupplierUsersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + Task SaveSupplierUsersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); /// Get the entity sync delivery configuration for AdminUsers Get the entity sync delivery configuration for AdminUsers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task GetAdminUsersEntitySyncConfigAsync(string accessToken = null); + Task GetAdminUsersAsync(string accessToken = null); /// Delete the entity sync delivery configuration for AdminUsers Delete the entity sync delivery configuration for AdminUsers /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task DeleteAdminUsersEntitySyncConfigAsync(string accessToken = null); + Task DeleteAdminUsersAsync(string accessToken = null); /// Create or update the entity sync delivery configuration for AdminUsers Create or update the entity sync delivery configuration for AdminUsers /// The object that will be serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task SaveAdminUsersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + Task SaveAdminUsersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + /// Get the entity sync delivery configuration for Buyers Get the entity sync delivery configuration for Buyers + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task GetBuyersAsync(string accessToken = null); + /// Delete the entity sync delivery configuration for Buyers Delete the entity sync delivery configuration for Buyers + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task DeleteBuyersAsync(string accessToken = null); + /// Create or update the entity sync delivery configuration for Buyers Create or update the entity sync delivery configuration for Buyers + /// The object that will be serialized to JSON and sent in the request body. + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task SaveBuyersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + /// Get the entity sync delivery configuration for BuyerUserGroups Get the entity sync delivery configuration for BuyerUserGroups + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task GetBuyerUserGroupsAsync(string accessToken = null); + /// Delete the entity sync delivery configuration for BuyerUserGroups Delete the entity sync delivery configuration for BuyerUserGroups + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task DeleteUserGroupsAsync(string accessToken = null); + /// Create or update the entity sync delivery configuration for BuyerUserGroups Create or update the entity sync delivery configuration for BuyerUserGroups + /// The object that will be serialized to JSON and sent in the request body. + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task SaveUserGroupsAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); /// Get the entity sync delivery configuration for InventoryRecords Get the entity sync delivery configuration for InventoryRecords /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task GetInventoryRecordEntitySyncConfigAsync(string accessToken = null); + Task GetInventoryRecordsAsync(string accessToken = null); /// Delete the entity sync delivery configuration for InventoryRecords Delete the entity sync delivery configuration for InventoryRecords /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task DeleteInventoryRecordEntitySyncConfigAsync(string accessToken = null); + Task DeleteInventoryRecordsAsync(string accessToken = null); /// Create or update the entity sync delivery configuration for InventoryRecords Create or update the entity sync delivery configuration for InventoryRecords /// The object that will be serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. - Task SaveInventoryRecordEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); + Task SaveInventoryRecordsAsync(EntitySyncConfig entitySyncConfig, string accessToken = null); } public interface IErrorConfigsResource @@ -6130,6 +6154,11 @@ public interface ISupplierUsersResource /// The object that will be partially serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. Task PatchAsync(string supplierID, string userID, PartialUser partialUser, string accessToken = null) where TUser : User; + /// Unlock a user account. + /// ID of the supplier. + /// ID of the user. + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task UnlockUserAccountAsync(string supplierID, string userID, string accessToken = null); } public interface ITrackingEventsResource @@ -6404,6 +6433,11 @@ public interface IUsersResource /// The object that will be serialized to JSON and sent in the request body. /// Optional. Use to provide an existing token instead of authenticating implicitly. Task GetAccessTokenAsync(string buyerID, string userID, ImpersonateTokenRequest impersonateTokenRequest, string accessToken = null); + /// Unlock a user account. + /// ID of the buyer. + /// ID of the user. + /// Optional. Use to provide an existing token instead of authenticating implicitly. + Task UnlockUserAccountAsync(string buyerID, string userID, string accessToken = null); } public interface IWebhooksResource @@ -6666,6 +6700,7 @@ internal AdminUsersResource(OrderCloudClient client) : base(client) { } public Task DeleteAsync(string userID, string accessToken = null) => Request("v1", "adminusers", userID).WithOAuthBearerToken(accessToken).DeleteAsync(); public Task PatchAsync(string userID, PartialUser partialUser, string accessToken = null) => PatchAsync(userID, partialUser, accessToken); public Task PatchAsync(string userID, PartialUser partialUser, string accessToken = null) where TUser : User => Request("v1", "adminusers", userID).WithOAuthBearerToken(accessToken).PatchJsonAsync(ValidateModel(partialUser)).ReceiveJson(); + public Task UnlockUserAccountAsync(string userID, string accessToken = null) => Request("v1", "adminusers", userID, "unlock").WithOAuthBearerToken(accessToken).PostAsync(null); } public class ApiClientsResource : OrderCloudResource, IApiClientsResource @@ -6965,21 +7000,27 @@ internal EntitySyncsResource(OrderCloudClient client) : base(client) { } public Task GetCategoriesAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "categories").WithOAuthBearerToken(accessToken).GetJsonAsync(); public Task DeleteCategoriesAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "categories").WithOAuthBearerToken(accessToken).DeleteAsync(); public Task SaveCategoriesAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "categories").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); - public Task GetSuppliersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers").WithOAuthBearerToken(accessToken).GetJsonAsync(); - public Task DeleteSuppliersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers").WithOAuthBearerToken(accessToken).DeleteAsync(); - public Task SaveSuppliersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); - public Task GetBuyerUsersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "users").WithOAuthBearerToken(accessToken).GetJsonAsync(); - public Task DeleteBuyerUsersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "users").WithOAuthBearerToken(accessToken).DeleteAsync(); - public Task SaveBuyerUsersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "users").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); - public Task GetSupplierUsersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers", "users").WithOAuthBearerToken(accessToken).GetJsonAsync(); - public Task DeleteSupplierUsersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers", "users").WithOAuthBearerToken(accessToken).DeleteAsync(); - public Task SaveSupplierUsersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers", "users").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); - public Task GetAdminUsersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "adminusers").WithOAuthBearerToken(accessToken).GetJsonAsync(); - public Task DeleteAdminUsersEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "adminusers").WithOAuthBearerToken(accessToken).DeleteAsync(); - public Task SaveAdminUsersEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "adminusers").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); - public Task GetInventoryRecordEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "products", "inventoryrecords").WithOAuthBearerToken(accessToken).GetJsonAsync(); - public Task DeleteInventoryRecordEntitySyncConfigAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "products", "inventoryrecords").WithOAuthBearerToken(accessToken).DeleteAsync(); - public Task SaveInventoryRecordEntitySyncConfigAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "products", "inventoryrecords").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetSuppliersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteSuppliersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveSuppliersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetBuyerUsersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "users").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteBuyerUsersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "users").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveBuyerUsersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "users").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetSupplierUsersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers", "users").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteSupplierUsersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers", "users").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveSupplierUsersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "suppliers", "users").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetAdminUsersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "adminusers").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteAdminUsersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "adminusers").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveAdminUsersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "adminusers").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetBuyersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteBuyersAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveBuyersAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetBuyerUserGroupsAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "usergroups").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteUserGroupsAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "usergroups").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveUserGroupsAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "buyers", "usergroups").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); + public Task GetInventoryRecordsAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "products", "inventoryrecords").WithOAuthBearerToken(accessToken).GetJsonAsync(); + public Task DeleteInventoryRecordsAsync(string accessToken = null) => Request("v1", "integrations", "entitysync", "products", "inventoryrecords").WithOAuthBearerToken(accessToken).DeleteAsync(); + public Task SaveInventoryRecordsAsync(EntitySyncConfig entitySyncConfig, string accessToken = null) => Request("v1", "integrations", "entitysync", "products", "inventoryrecords").WithOAuthBearerToken(accessToken).PutJsonAsync(ValidateModel(entitySyncConfig)).ReceiveJson(); } public class ErrorConfigsResource : OrderCloudResource, IErrorConfigsResource @@ -7848,6 +7889,7 @@ internal SupplierUsersResource(OrderCloudClient client) : base(client) { } public Task DeleteAsync(string supplierID, string userID, string accessToken = null) => Request("v1", "suppliers", supplierID, "users", userID).WithOAuthBearerToken(accessToken).DeleteAsync(); public Task PatchAsync(string supplierID, string userID, PartialUser partialUser, string accessToken = null) => PatchAsync(supplierID, userID, partialUser, accessToken); public Task PatchAsync(string supplierID, string userID, PartialUser partialUser, string accessToken = null) where TUser : User => Request("v1", "suppliers", supplierID, "users", userID).WithOAuthBearerToken(accessToken).PatchJsonAsync(ValidateModel(partialUser)).ReceiveJson(); + public Task UnlockUserAccountAsync(string supplierID, string userID, string accessToken = null) => Request("v1", "suppliers", supplierID, "users", userID, "unlock").WithOAuthBearerToken(accessToken).PostAsync(null); } public class TrackingEventsResource : OrderCloudResource, ITrackingEventsResource @@ -7906,6 +7948,7 @@ internal UsersResource(OrderCloudClient client) : base(client) { } public Task MoveAsync(string buyerID, string userID, string newBuyerID, UserOrderMoveOption orders, string accessToken = null) => MoveAsync(buyerID, userID, newBuyerID, orders, accessToken); public Task MoveAsync(string buyerID, string userID, string newBuyerID, UserOrderMoveOption orders, string accessToken = null) where TUser : User => Request("v1", "buyers", buyerID, "users", userID, "moveto", newBuyerID).WithOAuthBearerToken(accessToken).SetQueryParams(new { orders }).PostAsync(null).ReceiveJson(); public Task GetAccessTokenAsync(string buyerID, string userID, ImpersonateTokenRequest impersonateTokenRequest, string accessToken = null) => Request("v1", "buyers", buyerID, "users", userID, "accesstoken").WithOAuthBearerToken(accessToken).PostJsonAsync(ValidateModel(impersonateTokenRequest)).ReceiveJson(); + public Task UnlockUserAccountAsync(string buyerID, string userID, string accessToken = null) => Request("v1", "buyers", buyerID, "users", userID, "unlock").WithOAuthBearerToken(accessToken).PostAsync(null); } public class WebhooksResource : OrderCloudResource, IWebhooksResource diff --git a/src/OrderCloud.SDK/Generated/WebhookPayloads.cs b/src/OrderCloud.SDK/Generated/WebhookPayloads.cs index d57082d..fd95fd3 100644 --- a/src/OrderCloud.SDK/Generated/WebhookPayloads.cs +++ b/src/OrderCloud.SDK/Generated/WebhookPayloads.cs @@ -288,6 +288,19 @@ public class PatchRouteParams { public string UserID { get; set; } } + /// Webhook payload sent by OrderCloud on POST v1/adminusers/{userID}/unlock. + [SentOn("POST", "v1/adminusers/{userID}/unlock")] + public class UnlockUserAccount : WebhookPayload { } + /// Webhook payload sent by OrderCloud on POST v1/adminusers/{userID}/unlock. + /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. + [SentOn("POST", "v1/adminusers/{userID}/unlock")] + public class UnlockUserAccount : WebhookPayload + { } + /// Type used to represent route parameter name/value pairs for v1/adminusers/{userID}/unlock. + public class UnlockUserAccountRouteParams + { + public string UserID { get; set; } + } } public static class ApiClients { @@ -1573,92 +1586,128 @@ public class SaveCategories : WebhookPayloadWebhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/suppliers. [SentOn("DELETE", "v1/integrations/entitysync/suppliers")] - public class DeleteSuppliersEntitySyncConfig : WebhookPayload { } + public class DeleteSuppliers : WebhookPayload { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/suppliers. /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. [SentOn("DELETE", "v1/integrations/entitysync/suppliers")] - public class DeleteSuppliersEntitySyncConfig : WebhookPayload + public class DeleteSuppliers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/suppliers. [SentOn("PUT", "v1/integrations/entitysync/suppliers")] - public class SaveSuppliersEntitySyncConfig : WebhookPayload { } + public class SaveSuppliers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/suppliers. /// Specific type of the ConfigData. If not using a custom type, specify dynamic. /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. [SentOn("PUT", "v1/integrations/entitysync/suppliers")] - public class SaveSuppliersEntitySyncConfig : WebhookPayload + public class SaveSuppliers : WebhookPayload where TEntitySyncConfig : EntitySyncConfig { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/buyers/users. [SentOn("DELETE", "v1/integrations/entitysync/buyers/users")] - public class DeleteBuyerUsersEntitySyncConfig : WebhookPayload { } + public class DeleteBuyerUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/buyers/users. /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. [SentOn("DELETE", "v1/integrations/entitysync/buyers/users")] - public class DeleteBuyerUsersEntitySyncConfig : WebhookPayload + public class DeleteBuyerUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/buyers/users. [SentOn("PUT", "v1/integrations/entitysync/buyers/users")] - public class SaveBuyerUsersEntitySyncConfig : WebhookPayload { } + public class SaveBuyerUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/buyers/users. /// Specific type of the ConfigData. If not using a custom type, specify dynamic. /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. [SentOn("PUT", "v1/integrations/entitysync/buyers/users")] - public class SaveBuyerUsersEntitySyncConfig : WebhookPayload + public class SaveBuyerUsers : WebhookPayload where TEntitySyncConfig : EntitySyncConfig { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/suppliers/users. [SentOn("DELETE", "v1/integrations/entitysync/suppliers/users")] - public class DeleteSupplierUsersEntitySyncConfig : WebhookPayload { } + public class DeleteSupplierUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/suppliers/users. /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. [SentOn("DELETE", "v1/integrations/entitysync/suppliers/users")] - public class DeleteSupplierUsersEntitySyncConfig : WebhookPayload + public class DeleteSupplierUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/suppliers/users. [SentOn("PUT", "v1/integrations/entitysync/suppliers/users")] - public class SaveSupplierUsersEntitySyncConfig : WebhookPayload { } + public class SaveSupplierUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/suppliers/users. /// Specific type of the ConfigData. If not using a custom type, specify dynamic. /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. [SentOn("PUT", "v1/integrations/entitysync/suppliers/users")] - public class SaveSupplierUsersEntitySyncConfig : WebhookPayload + public class SaveSupplierUsers : WebhookPayload where TEntitySyncConfig : EntitySyncConfig { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/adminusers. [SentOn("DELETE", "v1/integrations/entitysync/adminusers")] - public class DeleteAdminUsersEntitySyncConfig : WebhookPayload { } + public class DeleteAdminUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/adminusers. /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. [SentOn("DELETE", "v1/integrations/entitysync/adminusers")] - public class DeleteAdminUsersEntitySyncConfig : WebhookPayload + public class DeleteAdminUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/adminusers. [SentOn("PUT", "v1/integrations/entitysync/adminusers")] - public class SaveAdminUsersEntitySyncConfig : WebhookPayload { } + public class SaveAdminUsers : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/adminusers. /// Specific type of the ConfigData. If not using a custom type, specify dynamic. /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. [SentOn("PUT", "v1/integrations/entitysync/adminusers")] - public class SaveAdminUsersEntitySyncConfig : WebhookPayload + public class SaveAdminUsers : WebhookPayload + where TEntitySyncConfig : EntitySyncConfig + { } + /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/buyers. + [SentOn("DELETE", "v1/integrations/entitysync/buyers")] + public class DeleteBuyers : WebhookPayload { } + /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/buyers. + /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. + [SentOn("DELETE", "v1/integrations/entitysync/buyers")] + public class DeleteBuyers : WebhookPayload + { } + /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/buyers. + [SentOn("PUT", "v1/integrations/entitysync/buyers")] + public class SaveBuyers : WebhookPayload { } + /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/buyers. + /// Specific type of the ConfigData. If not using a custom type, specify dynamic. + /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. + [SentOn("PUT", "v1/integrations/entitysync/buyers")] + public class SaveBuyers : WebhookPayload + where TEntitySyncConfig : EntitySyncConfig + { } + /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/buyers/usergroups. + [SentOn("DELETE", "v1/integrations/entitysync/buyers/usergroups")] + public class DeleteUserGroups : WebhookPayload { } + /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/buyers/usergroups. + /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. + [SentOn("DELETE", "v1/integrations/entitysync/buyers/usergroups")] + public class DeleteUserGroups : WebhookPayload + { } + /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/buyers/usergroups. + [SentOn("PUT", "v1/integrations/entitysync/buyers/usergroups")] + public class SaveUserGroups : WebhookPayload { } + /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/buyers/usergroups. + /// Specific type of the ConfigData. If not using a custom type, specify dynamic. + /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. + [SentOn("PUT", "v1/integrations/entitysync/buyers/usergroups")] + public class SaveUserGroups : WebhookPayload where TEntitySyncConfig : EntitySyncConfig { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/products/inventoryrecords. [SentOn("DELETE", "v1/integrations/entitysync/products/inventoryrecords")] - public class DeleteInventoryRecordEntitySyncConfig : WebhookPayload { } + public class DeleteInventoryRecords : WebhookPayload { } /// Webhook payload sent by OrderCloud on DELETE v1/integrations/entitysync/products/inventoryrecords. /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. [SentOn("DELETE", "v1/integrations/entitysync/products/inventoryrecords")] - public class DeleteInventoryRecordEntitySyncConfig : WebhookPayload + public class DeleteInventoryRecords : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/products/inventoryrecords. [SentOn("PUT", "v1/integrations/entitysync/products/inventoryrecords")] - public class SaveInventoryRecordEntitySyncConfig : WebhookPayload { } + public class SaveInventoryRecords : WebhookPayload { } /// Webhook payload sent by OrderCloud on PUT v1/integrations/entitysync/products/inventoryrecords. /// Specific type of the ConfigData. If not using a custom type, specify dynamic. /// Specific type of the EntitySyncConfig. If not using a custom type, specify EntitySyncConfig. [SentOn("PUT", "v1/integrations/entitysync/products/inventoryrecords")] - public class SaveInventoryRecordEntitySyncConfig : WebhookPayload + public class SaveInventoryRecords : WebhookPayload where TEntitySyncConfig : EntitySyncConfig { } } @@ -4909,6 +4958,20 @@ public class PatchRouteParams public string SupplierID { get; set; } public string UserID { get; set; } } + /// Webhook payload sent by OrderCloud on POST v1/suppliers/{supplierID}/users/{userID}/unlock. + [SentOn("POST", "v1/suppliers/{supplierID}/users/{userID}/unlock")] + public class UnlockUserAccount : WebhookPayload { } + /// Webhook payload sent by OrderCloud on POST v1/suppliers/{supplierID}/users/{userID}/unlock. + /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. + [SentOn("POST", "v1/suppliers/{supplierID}/users/{userID}/unlock")] + public class UnlockUserAccount : WebhookPayload + { } + /// Type used to represent route parameter name/value pairs for v1/suppliers/{supplierID}/users/{userID}/unlock. + public class UnlockUserAccountRouteParams + { + public string SupplierID { get; set; } + public string UserID { get; set; } + } } public static class TrackingEvents { @@ -5158,6 +5221,20 @@ public class GetAccessTokenRouteParams public string BuyerID { get; set; } public string UserID { get; set; } } + /// Webhook payload sent by OrderCloud on POST v1/buyers/{buyerID}/users/{userID}/unlock. + [SentOn("POST", "v1/buyers/{buyerID}/users/{userID}/unlock")] + public class UnlockUserAccount : WebhookPayload { } + /// Webhook payload sent by OrderCloud on POST v1/buyers/{buyerID}/users/{userID}/unlock. + /// Specific type of the ConfigData. If not using a custom type, use the non-generic payload type instead. + [SentOn("POST", "v1/buyers/{buyerID}/users/{userID}/unlock")] + public class UnlockUserAccount : WebhookPayload + { } + /// Type used to represent route parameter name/value pairs for v1/buyers/{buyerID}/users/{userID}/unlock. + public class UnlockUserAccountRouteParams + { + public string BuyerID { get; set; } + public string UserID { get; set; } + } } public static class Webhooks { diff --git a/src/OrderCloud.SDK/OrderCloud.SDK.csproj b/src/OrderCloud.SDK/OrderCloud.SDK.csproj index d71478c..bdea3cb 100644 --- a/src/OrderCloud.SDK/OrderCloud.SDK.csproj +++ b/src/OrderCloud.SDK/OrderCloud.SDK.csproj @@ -4,7 +4,7 @@ netstandard2.0;net461 True - 0.14.3 + 0.15.0 OrderCloud.SDK OrderCloud SDK Todd Menier