import { ReportEventRequest as ReportEventRequest$1, ReportEventResponse as ReportEventResponse$1, BulkReportEventRequest as BulkReportEventRequest$1, BulkReportEventResponse as BulkReportEventResponse$1, BulkCancelEventRequest as BulkCancelEventRequest$1, BulkCancelEventResponse as BulkCancelEventResponse$1, CancelEventRequest as CancelEventRequest$1, CancelEventResponse as CancelEventResponse$1, RerunActivationRequest as RerunActivationRequest$1, RerunActivationResponse as RerunActivationResponse$1, ReportActionInvocationCompletedRequest as ReportActionInvocationCompletedRequest$1, ReportActionInvocationCompletedResponse as ReportActionInvocationCompletedResponse$1 } from './index.typings.js'; import '@wix/sdk-types'; interface Activation { /** * Activation ID * @format GUID */ id?: string; /** Activation automation */ automation?: Automation; /** Activation Initiation Source information */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } interface Automation extends AutomationOriginInfoOneOf { /** When the origin of the automation is `APPLICATION`, the details of the app that created it. */ applicationInfo?: ApplicationOrigin; /** When the origin of the automation is `PREINSTALLED`, the details of the preinstalled automation. */ preinstalledInfo?: PreinstalledOrigin; /** * Automation ID. * @format GUID * @readonly */ id?: string | null; /** * Revision number. This increments by 1 whenever the automation is updated. Specify the current revision number whenever updating an existing automation. * @readonly */ revision?: string | null; /** * Who created the automation. * @immutable * @readonly */ createdBy?: AuditInfo; /** * When the automation was created. * @readonly */ createdDate?: Date | null; /** * Who last updated the automation. * @readonly */ updatedBy?: AuditInfo; /** * When the automation was last updated. * @readonly */ updatedDate?: Date | null; /** * Automation name as displayed on the user's site. * @minLength 1 * @maxLength 500 */ name?: string; /** * Automation description. * @maxLength 2000 */ description?: string | null; /** Automation configuration. */ configuration?: AutomationConfiguration; /** * How the automation was added to the user's site. * @immutable */ origin?: OriginWithLiterals; /** Automation settings. Applied only for pre-installed and application automations. Not applied to User origin automations */ settings?: AutomationSettings; /** * When the automation is a draft, the draft details. * @readonly */ draftInfo?: DraftInfo; /** * Whether the automation is archived. * * To archive an automation, set this to `true`. To restore an archived automation, set this to `false`. */ archived?: boolean; /** Auto archive policy */ autoArchivePolicy?: AutoArchivePolicy; } /** @oneof */ interface AutomationOriginInfoOneOf { /** When the origin of the automation is `APPLICATION`, the details of the app that created it. */ applicationInfo?: ApplicationOrigin; /** When the origin of the automation is `PREINSTALLED`, the details of the preinstalled automation. */ preinstalledInfo?: PreinstalledOrigin; } interface AIMetadata { /** * Origin agent identifier. * @minLength 1 * @maxLength 64 */ originAgentIdentifier?: string | null; } interface ActionSettings { /** * IDs of actions whose `skipActionExpression` can't be modified. * * An action's `skipActionExpression` determines whether the action is skipped. Including an action's ID in this array makes its `skipActionExpression` permanent, so it can't be changed. * * When empty, the `skipActionExpression` of all actions can be edited. * @maxSize 30 * @format GUID */ permanentActionIds?: string[]; /** * IDs of read-only actions. Read-only actions cannot be modified. * * When empty and the automation's `settings.readonly` is `false`, all actions are modifiable. * @maxSize 30 * @format GUID */ readonlyActionIds?: string[]; } declare enum Domain { /** User domain (default). */ USER = "USER", /** Wix domain. */ WIX = "WIX", /** Wix account-level domain. */ WIX_ACCOUNT = "WIX_ACCOUNT" } /** @enumType */ type DomainWithLiterals = Domain | 'USER' | 'WIX' | 'WIX_ACCOUNT'; interface TriggerSettings { } interface Enrichment { /** * Enrichment input mappings. * @maxSize 2 */ inputMappings?: Record[] | null; } interface AuditInfo extends AuditInfoIdOneOf { /** * [User ID](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#user-id). * @format GUID */ userId?: string; /** * [App ID](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#app-id). * * You can find the app ID on the [Home page](https://manage.wix.com/app-selector?title=Select+an+App&primaryButtonText=Select+Site&actionUrl=https%3A%2F%2Fdev.wix.com%2Fapps%2F%7BappId%7D%home) in the app's dashboard. * @format GUID */ appId?: string; } /** @oneof */ interface AuditInfoIdOneOf { /** * [User ID](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#user-id). * @format GUID */ userId?: string; /** * [App ID](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#app-id). * * You can find the app ID on the [Home page](https://manage.wix.com/app-selector?title=Select+an+App&primaryButtonText=Select+Site&actionUrl=https%3A%2F%2Fdev.wix.com%2Fapps%2F%7BappId%7D%home) in the app's dashboard. * @format GUID */ appId?: string; } interface AutomationConfiguration { /** Status of the automation on the site. */ status?: AutomationConfigurationStatusWithLiterals; /** Trigger configuration. */ trigger?: Trigger; /** * Root action IDs. A root action is the first action that runs after the trigger occurs. Root actions run in parallel. * * > **Note**: You can currently only specify 1 root action. * @maxSize 20 * @format GUID */ rootActionIds?: string[]; /** Actions the automation can execute, as `key:value` pairs. For the key, specify the action ID. The value must be an object structured as described below. */ actions?: Record; } declare enum TimeUnit { /** Minutes. */ MINUTES = "MINUTES", /** Hours. */ HOURS = "HOURS", /** Days. */ DAYS = "DAYS", /** Weeks. */ WEEKS = "WEEKS", /** Months. */ MONTHS = "MONTHS" } /** @enumType */ type TimeUnitWithLiterals = TimeUnit | 'MINUTES' | 'HOURS' | 'DAYS' | 'WEEKS' | 'MONTHS'; interface Filter { /** * Filter ID. * @format GUID */ id?: string; /** * Field key. * * You can find the field key in [the trigger payload schema](https://dev.wix.com/docs/rest/business-management/automations/triggers/the-trigger-payload-schema). * @minLength 1 * @maxLength 110 */ fieldKey?: string; /** * Filter expression in bracket notation. * * For the automation to run, the expression must evaluate to `true`. * @maxLength 5000 */ filterExpression?: string; } interface FutureDateActivationOffset { /** * Amount of time before the trigger to run the automation. * * > **Note**: To delay an automation after the trigger event occurs, use a [delay action](https://dev.wix.com/docs/rest/business-management/automations/automations/automations-v2/configure-your-automation#delay-action). * @maxLength 1000 */ preScheduledEventOffsetExpression?: string; /** Unit in which to set the action offset. */ scheduledEventOffsetTimeUnit?: TimeUnitWithLiterals; } interface RateLimit { /** * Maximum number of times the trigger can be activated. * @maxLength 1000 */ maxActivationsExpression?: string; /** * Duration of the rate limit. The rate limit applies for the specified duration and then expires. * * When empty, the rate limit does not expire. * @maxLength 1000 */ durationExpression?: string | null; /** Unit in which to set the duration of the rate limit. */ durationTimeUnit?: TimeUnitWithLiterals; /** * Activation identifier used to count the number of activations. * @minLength 1 * @maxLength 400 */ uniqueIdentifierExpression?: string | null; } interface FilterValueSelection { /** * Values that can help the user filter certain automations. Specify values in the following format: `__`. * @maxLength 80 * @maxSize 50 */ selectedFilterValues?: string[]; } interface ConditionExpressionGroup { /** Logical operator used to evaluate the condition expressions. */ operator?: OperatorWithLiterals; /** * Expressions evaluated using the selected operator. * @minSize 1 * @maxSize 20 * @maxLength 5000 */ booleanExpressions?: string[]; } declare enum Operator { /** `OR` operator. */ OR = "OR", /** `AND` operator. */ AND = "AND" } /** @enumType */ type OperatorWithLiterals = Operator | 'OR' | 'AND'; interface ActionCodeSnippet { /** Logical operator used to evaluate the condition expressions. */ language?: CodeSnippetLanguageWithLiterals; /** * Expressions evaluated using the selected operator. this code should comply the language syntax. and format * @maxLength 1500 */ code?: string; } declare enum CodeSnippetLanguage { /** JavaScript. */ JAVASCRIPT = "JAVASCRIPT" } /** @enumType */ type CodeSnippetLanguageWithLiterals = CodeSnippetLanguage | 'JAVASCRIPT'; /** Path definition */ interface SplitActionPath { /** * Unique path ID. * @format GUID */ id?: string; /** * Path name. * @minLength 1 * @maxLength 100 */ name?: string; /** * ID of the action to run when this path is taken. * @format GUID */ postActionId?: string | null; /** * Editable display name for the path. * @minLength 1 * @maxLength 60 */ displayName?: string | null; } declare enum Type { /** Defined by a [Wix app](https://dev.wix.com/docs/rest/business-management/automations/automations/automations-v2/configure-your-automation#app-defined-action). This action type is available in the site dashboard. */ APP_DEFINED = "APP_DEFINED", /** * Condition action. Evaluates a condition to determine which action runs next. * * Learn more about [adding and setting up conditions](https://support.wix.com/en/article/the-new-automation-builder-understanding-conditions-operators) in Wix Automations. * * > **Note**: When `skipActionExpression` evaluates to `true`, the actions in `conditionInfo.truePostActionIds` run and those in `conditionInfo.falsePostActionIds` are skipped. */ CONDITION = "CONDITION", /** * Code condition action. Evaluates custom code to determine which action runs next. * * Learn more about [adding and setting up conditions](https://support.wix.com/en/article/the-new-automation-builder-understanding-conditions-operators) in Wix Automations. * * > **Note**: When `skipActionExpression` evaluates to `true`, the actions in `codeConditionInfo.truePostActionIds` run and those in `codeConditionInfo.falsePostActionIds` are skipped. */ CODE_CONDITION = "CODE_CONDITION", /** Delay. The automation must wait before executing the next step. */ DELAY = "DELAY", /** Rate-limiter. This stops the automation flow if the subsequent action has reached its maximum allowed executions. */ RATE_LIMIT = "RATE_LIMIT" } /** @enumType */ type TypeWithLiterals = Type | 'APP_DEFINED' | 'CONDITION' | 'CODE_CONDITION' | 'DELAY' | 'RATE_LIMIT'; interface AppDefinedAction { /** * ID of the app that defines the action. * @format GUID */ appId?: string; /** * Action key. * @minLength 1 * @maxLength 100 */ actionKey?: string; /** * Action input mapping as defined in the action's [input schema](https://dev.wix.com/docs/rest/business-management/automations/actions/the-action-input-schema). * * The input mapping must include all parameters specified in the action's input schema's `required` array, and can include any other parameters from the schema. */ inputMapping?: Record | null; /** * Action skip conditions. An action is skipped if any of the specified conditions evaluates to `true`. * * > **Note**: Actions that follow a skipped action still run. * @maxSize 10 * @deprecated Action skip conditions. An action is skipped if any of the specified conditions evaluates to `true`. * * > **Note**: Actions that follow a skipped action still run. * @replacedBy skip_action_expression * @targetRemovalDate 2026-02-01 */ skipConditionOrExpressionGroups?: ConditionExpressionGroup[]; /** * IDs of actions that run in parallel after the action completes. * @maxSize 1 * @format GUID */ postActionIds?: string[]; /** Action output schema. When specified, this replaces the action schema. */ overrideOutputSchema?: Record | null; } interface ConditionAction { /** * Condition is `true` if one or more of the expression groups evaluates to `true`. * @minSize 1 * @maxSize 10 */ orExpressionGroups?: ConditionExpressionGroup[]; /** * IDs of actions to run when the condition evaluates to `true`. * @maxSize 1 * @format GUID */ truePostActionIds?: string[]; /** * IDs of actions to run when the condition evaluates to `false`. * @maxSize 1 * @format GUID */ falsePostActionIds?: string[]; /** * ID of the MERGE action for this condition. When absent, branches run independently (current behavior). * @format GUID */ mergeActionId?: string | null; } interface CodeConditionAction { /** condition code. This is a code that can be used to identify the condition in the automation. code should return a boolean value. otherwise the value will be tried to be casted to boolean. */ snippet?: ActionCodeSnippet; /** * dynamic variables used in the code snippet. these variables can be used inside the code using var('variableName') function. * this list is mainly for validation purpose. * @maxSize 50 * @maxLength 100 */ dynamicVariableExpressions?: string[]; /** * IDs of actions to run when the condition evaluates to `true`. * @maxSize 1 * @format GUID */ truePostActionIds?: string[]; /** * IDs of actions to run when the condition evaluates to `false`. * @maxSize 1 * @format GUID */ falsePostActionIds?: string[]; /** * ID of the MERGE action for this condition. When absent, branches run independently (current behavior). * @format GUID */ mergeActionId?: string | null; } interface DelayAction { /** * Time to wait before running the action. The wait time starts from when the current action completes. * * > **Note**: To define the wait time from a specific moment in time, use `dueDateExpression`. * @maxLength 1000 */ offsetExpression?: string | null; /** Unit in which to set the wait time to wait before the action runs. */ offsetTimeUnit?: TimeUnitWithLiterals; /** * Action run date in milliseconds elapsed since January 1, 1970 UTC. * * > **Note**: If an `offsetExpression` is defined, the delay is calculated from the time of the offset. * @maxLength 1000 * @deprecated Action run date in milliseconds elapsed since January 1, 1970 UTC. * * > **Note**: If an `offsetExpression` is defined, the delay is calculated from the time of the offset. * @replacedBy due_date_expression * @targetRemovalDate 2026-02-01 */ dueDateEpochExpression?: string | null; /** * Action run date as a timestamp or DateTime expression using bracket notation. * * > **Note**: If an `offsetExpression` is defined, the delay is calculated from the time of the offset. * @maxLength 1000 */ dueDateExpression?: string | null; /** * IDs of actions to run in parallel after the time delay. * @maxSize 1 * @format GUID */ postActionIds?: string[]; } interface RateLimitAction { /** * Maximum number of times the action can run. * @maxLength 1000 */ maxActivationsExpression?: string; /** * Rate limit duration. * * When empty, the rate limit does not expire. * @maxLength 1000 */ rateLimitDurationExpression?: string | null; /** Unit in which to set the duration of the rate limit. */ rateLimitDurationTimeUnit?: TimeUnitWithLiterals; /** * Unique identifier of each activation by which rate limiter counts activations. * @minLength 1 * @maxLength 400 */ uniqueIdentifierExpression?: string | null; /** * IDs of actions to run in parallel after the action completes. * @maxSize 1 * @format GUID */ postActionIds?: string[]; } interface SetVariablesAction { /** Output mapping. For example: `{"someField": "{{10}}", "someOtherField": "{{multiply( var('account.points.balance') ;2 )}}" }`. */ outputMapping?: Record | null; /** * Output JSON schema representation. * * > **Note**: To minimize request size, you can also specify a string. */ outputSchema?: Record | null; /** * IDs of actions to run in parallel after variable initialization. * @maxSize 1 * @format GUID */ postActionIds?: string[]; } interface OutputAction { /** Output action output mapping. */ outputMapping?: Record | null; } interface ActionSplitAction { /** * List of paths to split execution into. * @minSize 2 * @maxSize 10 */ paths?: SplitActionPath[]; } interface MergeAction { /** * ID of the action to execute after the arriving branch completes. * @format GUID */ postActionId?: string | null; } declare enum AutomationConfigurationStatus { /** Active. Active automations can be triggered. */ ACTIVE = "ACTIVE", /** Inactive. Inactive automations cannot be triggered. */ INACTIVE = "INACTIVE" } /** @enumType */ type AutomationConfigurationStatusWithLiterals = AutomationConfigurationStatus | 'ACTIVE' | 'INACTIVE'; interface Trigger { /** * ID of the app that defines the trigger. * @format GUID */ appId?: string; /** * Trigger key. * * Learn about [setting up a trigger](https://dev.wix.com/docs/rest/business-management/automations/triggers/add-a-trigger-to-your-app#step-1--set-up-the-trigger). * @minLength 1 * @maxLength 100 */ triggerKey?: string; /** * Schema field filters. All filter conditions must be met for the automation to run. * * Learn more about setting up [automation filters](https://dev.wix.com/docs/rest/business-management/automations/automations/automations-v2/configure-your-automation#filters). * @maxSize 5 */ filters?: Filter[]; /** * Automation offset. You can schedule automations to run before the trigger occurs. * * Learn more about [scheduled events](https://dev.wix.com/docs/rest/business-management/automations/automations/automations-v2/configure-your-automation#scheduled-events). */ scheduledEventOffset?: FutureDateActivationOffset; /** Limit on the number of times an automation can be triggered. */ rateLimit?: RateLimit; /** Trigger schema override. When specified, this replaces the trigger schema. */ overrideSchema?: Record | null; } interface AutomationConfigurationAction extends AutomationConfigurationActionInfoOneOf { /** Details of the action whose `type` is `APP_DEFINED`. */ appDefinedInfo?: AppDefinedAction; /** Details of the action whose `type` is `CONDITION`. */ conditionInfo?: ConditionAction; /** Details of the action whose `type` is `CODE_CONDITION`. */ codeConditionInfo?: CodeConditionAction; /** Details of the action whose `type` is `DELAY`. */ delayInfo?: DelayAction; /** Details of the action whose `type` is `RATE_LIMIT`. */ rateLimitInfo?: RateLimitAction; /** * Action ID. * * Unique identifier for the action instance in the current automation. Use this to refer to this action in the automation flow. * * If not specified, automatically generated by Wix. * @format GUID */ id?: string | null; /** [Action type](https://dev.wix.com/docs/rest/business-management/automations/automations/automations-v2/configure-your-automation#action-type). */ type?: TypeWithLiterals; /** * Editable display name for the action. * @minLength 1 * @maxLength 60 */ displayName?: string | null; /** * [Action namespace](https://dev.wix.com/docs/rest/business-management/automations/automations/automations-v2/configure-your-automation#namespace). This differentiates it from other actions of the same type. * * If the action outputs any data, the data appears under the namespace in the payload sent to the subsequent steps in the automation. If the user has multiple actions with the same `appId` and `actionKey`, the output of the previous action is overwritten. * @minLength 1 * @maxLength 100 */ namespace?: string | null; /** * Evaluated to determine whether the action is skipped. When evaluated to `true`, the action is skipped. Otherwise, the action runs. * * When empty, the action runs. * @maxLength 1000 */ skipActionExpression?: string | null; } /** @oneof */ interface AutomationConfigurationActionInfoOneOf { /** Details of the action whose `type` is `APP_DEFINED`. */ appDefinedInfo?: AppDefinedAction; /** Details of the action whose `type` is `CONDITION`. */ conditionInfo?: ConditionAction; /** Details of the action whose `type` is `CODE_CONDITION`. */ codeConditionInfo?: CodeConditionAction; /** Details of the action whose `type` is `DELAY`. */ delayInfo?: DelayAction; /** Details of the action whose `type` is `RATE_LIMIT`. */ rateLimitInfo?: RateLimitAction; } interface FilterableAppDefinedActions { /** * App-defined action identifiers. Identifiers have the following format: `${appId}_${actionKey}`. * @minSize 1 * @maxSize 100 * @minLength 1 * @maxLength 150 */ actionIdentifiers?: string[]; } declare enum Origin { /** Created by a [Wix user](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#wix-user). */ USER = "USER", /** Created by a [Wix app](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#wix-app) for a particular site. */ APPLICATION = "APPLICATION", /** [Preinstalled automation](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/automations/pre-installed-automations/about-pre-installed-automations). */ PREINSTALLED = "PREINSTALLED" } /** @enumType */ type OriginWithLiterals = Origin | 'USER' | 'APPLICATION' | 'PREINSTALLED'; interface ApplicationOrigin { /** * [App ID](https://dev.wix.com/docs/build-apps/get-started/overview/glossary#app-id). * * You can find the app ID on the [Home page](https://manage.wix.com/app-selector?title=Select+an+App&primaryButtonText=Select+Site&actionUrl=https%3A%2F%2Fdev.wix.com%2Fapps%2F%7BappId%7D%home) in the app's dashboard. * @format GUID */ appId?: string; } interface PreinstalledOrigin { /** * ID of the app that added the [preinstalled automation](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/backend-extensions/automations/pre-installed-automations/about-pre-installed-automations). * @format GUID */ appId?: string; /** * Whether the automation is an override. * * When a user modifies the preinstalled automation installed on their site, a site-specific version of the automation is created that overrides the automation that was originally installed. This override automation has the same automation ID as the original preinstalled automation. * * > **Note**: An override automation can no longer be updated by the app that originally installed it. * > * > To revert to the original preinstalled version, the user must delete the override by calling the Delete Automation method. Calling Delete Automation on an override automation removes the override method and restores the preinstalled automation that was previously installed. * * Default: `false`. * @immutable * @readonly */ override?: boolean | null; } interface AutomationSettings { /** * Whether the automation is hidden from users. * * Default: `false` */ hidden?: boolean; /** * Whether the automation is read-only. * * When `true`, site owners can't modify the automation or any of its actions. When `false`, users can configure specific actions as skippable or read-only using `settings.actionSettings`. * * Default: `false`. * * > **Note**: Setting `readOnly` to `true` overrides `settings.actionSettings`. */ readonly?: boolean; /** * Whether to disable the option to delete the automation from the site. * * Default: `false`. */ disableDelete?: boolean; /** * Whether to disable the option to change the automation's `configuration.status`. * * Default: `false`. */ disableStatusChange?: boolean; /** Automation action settings. */ actionSettings?: ActionSettings; } interface DraftInfo { /** * ID of the original automation. * @format GUID * @readonly */ originalAutomationId?: string | null; } interface Enrichments { /** Whether the studio site enrichment is wanted. */ studioSite?: Enrichment; } interface ExtendedFields { /** * Extended field data. Each key corresponds to the namespace of the app that created the extended fields. * The value of each key is structured according to the schema defined when the extended fields were configured. * * You can only access fields for which you have the appropriate permissions. * * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields). */ namespaces?: Record>; } interface AutoArchivePolicy { /** * Date when to archive the automation * If this date in the past, nothing will happen (automation will not go into archived state) * If this date in the future, on this date the automation will be updated with archived = true and configuration.status = INACTIVE * After this date the automation may be unarchived and archived again, this date will have no influence */ archiveDate?: Date | null; } interface Notes { } interface Note { } interface Position { } interface Offset { } interface Dimensions { } /** Activation initiation source with additional details based on origin. */ interface ActivationInitiationSourceInfo extends ActivationInitiationSourceInfoInitiationSourceInfoOneOf { /** Details for MANUAL_ACTIVATION source. */ manualActivationInfo?: ManualActivationInfo; /** Details for RERUN_ACTIVATION source. */ rerunActivationInfo?: RerunActivationInfo; /** The source type of this activation. */ activationInitiationSource?: ActivationInitiationSourceWithLiterals; /** Information about the user who initiated the activation. */ initiatorInfo?: InitiatorInfo; } /** @oneof */ interface ActivationInitiationSourceInfoInitiationSourceInfoOneOf { /** Details for MANUAL_ACTIVATION source. */ manualActivationInfo?: ManualActivationInfo; /** Details for RERUN_ACTIVATION source. */ rerunActivationInfo?: RerunActivationInfo; } /** * Source types for automation activation. * This enum may be extended in the future to support additional activation origins. */ declare enum ActivationInitiationSource { /** * Activation triggered by a provider event (e.g., reportEvent, bulkReportEvent). * The automation runs in response to a business event. Uses published automations only. */ TRIGGER_PROVIDER_EVENT = "TRIGGER_PROVIDER_EVENT", /** * Activation triggered by manual execution (e.g., testAutomation, ReRunAutomation). * Explicitly initiated by user or API caller with explicit payload. */ MANUAL_ACTIVATION = "MANUAL_ACTIVATION", /** Activation triggered by re-running a previous activation. */ RERUN_ACTIVATION = "RERUN_ACTIVATION" } /** @enumType */ type ActivationInitiationSourceWithLiterals = ActivationInitiationSource | 'TRIGGER_PROVIDER_EVENT' | 'MANUAL_ACTIVATION' | 'RERUN_ACTIVATION'; /** Additional information for manual automation activations. */ interface ManualActivationInfo { /** * Whether this activation is running in test mode. * * In test mode: * - Draft automations can be executed * - Certain actions may be skipped (e.g., delays, rate limits) * - Used primarily for testing automations before publication * * Default: false (standard production mode) */ testMode?: boolean; } /** Additional information for rerun activation operations. */ interface RerunActivationInfo { /** * The activation ID of the original activation being rerun. * @format GUID */ originalActivationId?: string; /** When true, delay actions will be skipped during the rerun. */ skipDelays?: boolean; } /** Information about the user who initiated an activation. */ interface InitiatorInfo { /** * The user ID of the initiator. * @format GUID */ initiatorUserId?: string | null; /** Whether the initiating user is a Wix employee. */ wixEmployee?: boolean | null; } interface ActivationStatusChanged extends ActivationStatusChangedStatusInfoOneOf { /** Initiated status information */ initiatedInfo?: InitiatedStatusInfo; /** Started status information */ startedInfo?: ActivationStatusChangedStartedStatusInfo; /** Scheduled status information */ scheduledInfo?: ScheduledStatusInfo; /** Cancelled status information */ cancelledInfo?: CancelledStatusInfo; /** Failed status information */ failedInfo?: ActivationStatusChangedFailedStatusInfo; /** Skipped status information */ skippedInfo?: SkippedStatusInfo; /** Activation */ activation?: Activation; /** Activation status */ status?: ActivationStatusChangedStatusWithLiterals; /** Change event created date */ statusChangedDate?: Date | null; } /** @oneof */ interface ActivationStatusChangedStatusInfoOneOf { /** Initiated status information */ initiatedInfo?: InitiatedStatusInfo; /** Started status information */ startedInfo?: ActivationStatusChangedStartedStatusInfo; /** Scheduled status information */ scheduledInfo?: ScheduledStatusInfo; /** Cancelled status information */ cancelledInfo?: CancelledStatusInfo; /** Failed status information */ failedInfo?: ActivationStatusChangedFailedStatusInfo; /** Skipped status information */ skippedInfo?: SkippedStatusInfo; } declare enum Target { SCHEDULE = "SCHEDULE", IMMEDIATE = "IMMEDIATE" } /** @enumType */ type TargetWithLiterals = Target | 'SCHEDULE' | 'IMMEDIATE'; declare enum CancellationReason { /** Indicates that the activation was cancelled directly. */ EVENT_CANCELLED = "EVENT_CANCELLED", /** Indicates that the activation was cancelled because the automation was deactivated. */ AUTOMATION_DEACTIVATED = "AUTOMATION_DEACTIVATED", /** Indicates that the activation was cancelled because the automation was deleted. */ AUTOMATION_DELETED = "AUTOMATION_DELETED", /** Indicates that the activation was cancelled after the automation schedule time was reached. */ CANCELLED_BY_REFRESH_PAYLOAD = "CANCELLED_BY_REFRESH_PAYLOAD", /** Indicates that the activation was cancelled due to a UoU GDPR "Right to be Forgotten" request. */ CANCELLED_BY_GDPR_REQUEST = "CANCELLED_BY_GDPR_REQUEST" } /** @enumType */ type CancellationReasonWithLiterals = CancellationReason | 'EVENT_CANCELLED' | 'AUTOMATION_DEACTIVATED' | 'AUTOMATION_DELETED' | 'CANCELLED_BY_REFRESH_PAYLOAD' | 'CANCELLED_BY_GDPR_REQUEST'; interface Identity { /** * User ID * @format GUID */ userId?: string | null; /** * App ID * @format GUID */ appId?: string | null; } declare enum ErrorReason { /** Unexpected error reason */ UNEXPECTED_ERROR_REASON = "UNEXPECTED_ERROR_REASON", /** Failed to evaluate the schedule date expression */ SCHEDULE_DATE_EVALUATION_FAILED = "SCHEDULE_DATE_EVALUATION_FAILED" } /** @enumType */ type ErrorReasonWithLiterals = ErrorReason | 'UNEXPECTED_ERROR_REASON' | 'SCHEDULE_DATE_EVALUATION_FAILED'; declare enum SkipReason { /** Activation was skipped because the scheduled execution time had already passed at the time of execution. */ SCHEDULE_DATE_EXPIRED = "SCHEDULE_DATE_EXPIRED", /** Activation was skipped because the trigger filters defined in the automation did not match the payload. */ TRIGGER_FILTERS_NOT_PASSED = "TRIGGER_FILTERS_NOT_PASSED", /** Activation was skipped because it exceeded the configured rate limit (maximum number of executions allowed in a time period). */ RATE_LIMIT_EXCEEDED = "RATE_LIMIT_EXCEEDED", /** Activation was skipped because an event with the same idempotency key was already processed. */ EVENT_ALREADY_PROCESSED = "EVENT_ALREADY_PROCESSED" } /** @enumType */ type SkipReasonWithLiterals = SkipReason | 'SCHEDULE_DATE_EXPIRED' | 'TRIGGER_FILTERS_NOT_PASSED' | 'RATE_LIMIT_EXCEEDED' | 'EVENT_ALREADY_PROCESSED'; declare enum ActivationStatusChangedStatus { /** Indicates that activation has not started yet and no actions have been executed. */ INITIATED = "INITIATED", /** Activation is in scheduled status when the automation has a future date or debounce defined and we're in the waiting stage and no actions have been executed. */ SCHEDULED = "SCHEDULED", /** Indicates the automation activation has started and is currently in progress. */ STARTED = "STARTED", /** Indicates all the automation actions were handled either by invoking them, skipping them, etc. */ ENDED = "ENDED", /** Indicates the activation was cancelled. */ CANCELLED = "CANCELLED", /** * Indicates the activation failed to start. * Note that failure in the activation of a single action will not result in a failure in activation of the entire automation. */ FAILED = "FAILED", /** * Indicates that the automation activation was skipped without executing any actions. * Note that an activation will either be skipped immediately or move to INITIATED state. */ SKIPPED = "SKIPPED" } /** @enumType */ type ActivationStatusChangedStatusWithLiterals = ActivationStatusChangedStatus | 'INITIATED' | 'SCHEDULED' | 'STARTED' | 'ENDED' | 'CANCELLED' | 'FAILED' | 'SKIPPED'; interface Metadata { /** * Identity field keys that are collected from the trigger payload schema, including contact and member ids * @maxSize 100 * @maxLength 100 */ identityFieldKeys?: string[]; } interface InitiatedStatusInfo { /** Activation target */ target?: TargetWithLiterals; /** Event payload */ payload?: Record | null; /** * External entity ID * @maxLength 40 */ externalEntityId?: string | null; /** * Unique identifier for the request that initiated the automation * @maxLength 100 */ requestId?: string; } interface ActivationStatusChangedStartedStatusInfo { /** Enriched and refreshed payload */ payload?: Record | null; } interface ScheduledStatusInfo { /** * Schedule identifier * @format GUID */ scheduleId?: string; /** Indicates when the activation should start */ date?: Date | null; } interface CancelledStatusInfo { /** Cancellation reason */ reason?: CancellationReasonWithLiterals; /** Identity (such as user, app, etc.) that caused the cancellation. */ initiator?: Identity; } interface ActivationStatusChangedFailedStatusInfo { /** * Error description * @maxLength 1000 * @readonly */ errorDescription?: string; /** * Error code * @maxLength 20 * @readonly */ errorCode?: string | null; /** Error reason */ errorReason?: ErrorReasonWithLiterals; /** Event payload */ payload?: Record | null; /** * External entity ID * @maxLength 40 */ externalEntityId?: string | null; /** * Unique identifier for the request that initiated the automation * @maxLength 100 */ requestId?: string | null; } interface SkippedStatusInfo { /** The reason why the automation activation was skipped */ reason?: SkipReasonWithLiterals; /** Event payload */ payload?: Record | null; /** * External entity ID * @maxLength 40 */ externalEntityId?: string | null; /** * Unique identifier for the request that initiated the automation * @maxLength 100 */ requestId?: string; } interface ScheduleRequest { schedule?: Schedule; } interface Schedule { /** * @format GUID * @readonly */ id?: string | null; /** * doesn't have to be unique. example: triggerName+entityId * @maxLength 300 */ identifier?: string; /** @format GUID */ configurationCorrelationId?: string; /** @format GUID */ activationId?: string; scheduledAction?: ScheduledAction; /** Raw domain event, not enriched */ eventPayload?: string; scheduleStatus?: ScheduleStatusWithLiterals; /** @readonly */ scheduleDate?: Date | null; /** @readonly */ createdDate?: Date | null; /** @readonly */ updatedDate?: Date | null; overrideable?: boolean | null; triggerInfo?: TriggerInfo; automation?: Automation; } interface ScheduledAction { /** * Action's id. * @format GUID */ id?: string; /** decide how long we should wait */ delay?: Delay; } interface Delay extends DelayOfOneOf { simple?: SimpleDelay; /** * jsonata expression - sleep until the given date * for example: $toMillis(MyObject.Date) + 2*1000*60*60*24) -> will schedule 2 days after MyObject.Date * @maxLength 400 */ dateExpression?: string; } /** @oneof */ interface DelayOfOneOf { simple?: SimpleDelay; /** * jsonata expression - sleep until the given date * for example: $toMillis(MyObject.Date) + 2*1000*60*60*24) -> will schedule 2 days after MyObject.Date * @maxLength 400 */ dateExpression?: string; } interface SimpleDelay { value?: number; units?: UnitsWithLiterals; /** * Optional, used if provided: Jsonata expression that evaluates to a number of milliseconds to wait * @maxLength 300 */ delayExpression?: string | null; } declare enum Units { UNKNOWN = "UNKNOWN", MINUTES = "MINUTES", HOURS = "HOURS", DAYS = "DAYS" } /** @enumType */ type UnitsWithLiterals = Units | 'UNKNOWN' | 'MINUTES' | 'HOURS' | 'DAYS'; declare enum ScheduleStatus { UNKNOWN_SCHEDULE_STATUS = "UNKNOWN_SCHEDULE_STATUS", PENDING = "PENDING", CANCELLED = "CANCELLED", DONE = "DONE", MIGRATED = "MIGRATED", /** esb configuration was deleted after the schedule was created */ ESB_CONFIGURATION_NOT_FOUND = "ESB_CONFIGURATION_NOT_FOUND", /** automation v3 was deleted after the schedule was created */ AUTOMATION_NOT_FOUND = "AUTOMATION_NOT_FOUND", METASITE_DELETED = "METASITE_DELETED", /** during the migration process we found duplicate schedules, and we want to give this status to those we discover that are duplicated and had already been migrated */ DUPLICATE = "DUPLICATE" } /** @enumType */ type ScheduleStatusWithLiterals = ScheduleStatus | 'UNKNOWN_SCHEDULE_STATUS' | 'PENDING' | 'CANCELLED' | 'DONE' | 'MIGRATED' | 'ESB_CONFIGURATION_NOT_FOUND' | 'AUTOMATION_NOT_FOUND' | 'METASITE_DELETED' | 'DUPLICATE'; interface TriggerInfo { /** * App id of the initial trigger. * @format GUID */ appId?: string; /** Trigger key of the initial trigger. */ triggerKey?: string; } interface ScheduleResponse { /** @format GUID */ id?: string; } interface CancelPendingScheduleRequest extends CancelPendingScheduleRequestByOneOf { /** @format GUID */ id?: string; identifier?: string; /** @format GUID */ configurationCorrelationId?: string; /** @format GUID */ activationId?: string; /** * @minLength 1 * @maxLength 500 */ identifierPattern?: string; } /** @oneof */ interface CancelPendingScheduleRequestByOneOf { /** @format GUID */ id?: string; identifier?: string; /** @format GUID */ configurationCorrelationId?: string; /** @format GUID */ activationId?: string; /** * @minLength 1 * @maxLength 500 */ identifierPattern?: string; } interface CancelPendingScheduleResponse { } interface UpdatePendingSchedulesPayloadRequest { identifier?: string; eventPayload?: string; } interface UpdatePendingSchedulesPayloadResponse { } interface GetScheduleRequest { /** @format GUID */ id?: string; } interface GetScheduleResponse { schedule?: Schedule; } interface UpdateScheduleStatusRequest { /** @format GUID */ id?: string; status?: ScheduleStatusWithLiterals; } interface UpdateScheduleStatusResponse { } interface DomainEvent extends DomainEventBodyOneOf { createdEvent?: EntityCreatedEvent; updatedEvent?: EntityUpdatedEvent; deletedEvent?: EntityDeletedEvent; actionEvent?: ActionEvent; /** Event ID. With this ID you can easily spot duplicated events and ignore them. */ id?: string; /** * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities. * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`. */ entityFqdn?: string; /** * Event action name, placed at the top level to make it easier for users to dispatch messages. * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`. */ slug?: string; /** ID of the entity associated with the event. */ entityId?: string; /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */ eventTime?: Date | null; /** * Whether the event was triggered as a result of a privacy regulation application * (for example, GDPR). */ triggeredByAnonymizeRequest?: boolean | null; /** If present, indicates the action that triggered the event. */ originatedFrom?: string | null; /** * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number. * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it. */ entityEventSequence?: string | null; } /** @oneof */ interface DomainEventBodyOneOf { createdEvent?: EntityCreatedEvent; updatedEvent?: EntityUpdatedEvent; deletedEvent?: EntityDeletedEvent; actionEvent?: ActionEvent; } interface EntityCreatedEvent { entityAsJson?: string; /** Indicates the event was triggered by a restore-from-trashbin operation for a previously deleted entity */ restoreInfo?: RestoreInfo; } interface RestoreInfo { deletedDate?: Date | null; } interface EntityUpdatedEvent { /** * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff. * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects. * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it. */ currentEntityAsJson?: string; } interface EntityDeletedEvent { /** Entity that was deleted. */ deletedEntityAsJson?: string | null; } interface ActionEvent { bodyAsJson?: string; } interface MessageEnvelope { /** * App instance ID. * @format GUID */ instanceId?: string | null; /** * Event type. * @maxLength 150 */ eventType?: string; /** The identification type and identity data. */ identity?: IdentificationData; /** Stringify payload. */ data?: string; /** Details related to the account */ accountInfo?: AccountInfo; } interface IdentificationData extends IdentificationDataIdOneOf { /** * ID of a site visitor that has not logged in to the site. * @format GUID */ anonymousVisitorId?: string; /** * ID of a site visitor that has logged in to the site. * @format GUID */ memberId?: string; /** * ID of a Wix user (site owner, contributor, etc.). * @format GUID */ wixUserId?: string; /** * ID of an app. * @format GUID */ appId?: string; /** @readonly */ identityType?: WebhookIdentityTypeWithLiterals; } /** @oneof */ interface IdentificationDataIdOneOf { /** * ID of a site visitor that has not logged in to the site. * @format GUID */ anonymousVisitorId?: string; /** * ID of a site visitor that has logged in to the site. * @format GUID */ memberId?: string; /** * ID of a Wix user (site owner, contributor, etc.). * @format GUID */ wixUserId?: string; /** * ID of an app. * @format GUID */ appId?: string; } declare enum WebhookIdentityType { UNKNOWN = "UNKNOWN", ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR", MEMBER = "MEMBER", WIX_USER = "WIX_USER", APP = "APP" } /** @enumType */ type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP'; interface AccountInfo { /** * ID of the Wix account associated with the event. * @format GUID */ accountId?: string | null; /** * ID of the parent Wix account. Only included when accountId belongs to a child account. * @format GUID */ parentAccountId?: string | null; /** * ID of the Wix site associated with the event. Only included when the event is tied to a specific site. * @format GUID */ siteId?: string | null; } interface ConsumeReportEventRequest { /** * Repeated list of event details for bulk reporting. * @minSize 1 * @maxSize 100 */ eventsInfo?: EventInfo[]; /** * trigger app id * @format GUID */ triggerAppId?: string; /** * trigger key * @minLength 1 * @maxLength 100 */ triggerKey?: string; /** * Unique identifier for message-level idempotency in the consumer. * @format GUID */ executionId?: string | null; } interface EventInfo { /** * Event payload, formatted as key:value pairs. * Must comply with the payload schema * if you provided one when configuring your trigger. */ payload?: Record | null; /** * ID of the related resource in GUID format. * @format GUID */ externalEntityId?: string | null; /** Idempotency information for the event. */ idempotency?: Idempotency; } interface Idempotency { /** * A unique identifier for the event. * If you send the same idempotency key in multiple report event requests, for the same trigger key and app id, * consecutive requests will be ignored after the first one. Note that the idempotency key is kept for a week before it expires. * @minLength 1 * @maxLength 80 */ key?: string; /** * Optional. The time to live (TTL) in milliseconds before the key will expire. Default is a week. * @min 1 */ ttlInMilliseconds?: string | null; } interface BatchActivationRequest { /** List of Activation-Request. */ activationRequests?: ActivationRequest[]; } interface ActivationRequest { /** * Activation's ID. * @format GUID */ activationId?: string; /** * Configuration's ID. * @format GUID */ configurationId?: string; /** @format GUID */ configurationCorrelationId?: string; /** * Received event name. * @maxLength 80 */ eventName?: string; /** * Received event slug. * @maxLength 50 */ eventSlug?: string | null; /** Received event payload. */ eventPayload?: string | null; /** List of action data. */ actions?: ActionData[]; /** * External ID. * @format GUID */ externalId?: string; /** The source of this activation */ source?: ActivationSource; /** Actions tree */ actionsMap?: ActionsData; /** Automation V2. Used for reporting domain event until activation request will be deprecated. */ automation?: Automation; /** Trigger entity for the activation, available for v2 and v3 automations only */ triggerSchema?: Record | null; /** Information about the source that initiated this activation (event-driven vs manual/test mode). */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } interface Runtime { } interface Scheduler { scheduleId?: string | null; } interface AsyncAction { } interface ActionData { /** * Action's id. * @format GUID * @readonly */ id?: string | null; /** Action's data. */ action?: Action; } interface Action extends ActionActionOneOf { service?: Service; systemHelper?: SystemHelper; spiAction?: SpiAction; } /** @oneof */ interface ActionActionOneOf { service?: Service; systemHelper?: SystemHelper; spiAction?: SpiAction; } interface ServiceMapping { /** Sevice name. */ name?: string; /** Method name. */ method?: string; } interface IfFilter { /** If filter's condition. */ condition?: string; /** If's true post actions. */ truePostActions?: ActionData[]; /** If's false post actions. */ falsePostActions?: ActionData[]; /** * If's true post actions ids. * @maxSize 20 */ truePostActionsIds?: string[]; /** * If's false post actions ids. * @maxSize 20 */ falsePostActionsIds?: string[]; } interface SwitchFilter { /** Switch's filter cases. */ cases?: Case[]; } interface Case { /** Case's condition. */ condition?: any; /** Case's post actions. */ postActions?: ActionData[]; /** * Case's post actions ids. * @maxSize 20 */ postActionsIds?: string[]; } interface DelayHelper { /** jsonata expression, for example: triggerName + eventId */ scheduleIdentifier?: string; /** decide how long we should wait */ delay?: Delay; /** Delay's post actions. */ postActions?: ActionData[]; /** * Optional: if true, any new schedule with the same schedule identifier will override the existing one. * If false, the new schedule will be ignored. */ overrideable?: boolean | null; /** * Delay's post actions ids. * @maxSize 20 */ postActionsIds?: string[]; /** * Optional expression to determine whether the action should be skipped * @maxLength 1000 */ skipConditionExpression?: string | null; } interface RateLimiting { /** The maximum number of activations allowed in the given time frame */ maxNumOfActivations?: number; /** * Optional, used if provided: A jsonata expression that evaluates to the maximum number of activations allowed in the given time frame * @maxLength 300 */ maxNumOfActivationsExpression?: string | null; /** If given - the time frame in minutes, otherwise, for life */ timeFrameInMinutes?: number | null; /** * Optional, used if provided - A jsonata expression that evaluates to the time frame in minutes, otherwise, for life * @maxLength 300 */ timeFrameInMinutesExpression?: string | null; /** * The jsonata to use to extract the entity/resource key from the enriched event payload * @maxLength 1000 */ keyJsonata?: string; /** * The actions to perform if this rate limiting action succeeded - meaning we are still in the allowed number of activations in the given time frame * @maxSize 9999 */ postActions?: ActionData[]; /** * The ids of actions to perform if this rate limiting action succeeded - meaning we are still in the allowed number of activations in the given time frame * @maxSize 20 */ postActionsIds?: string[]; /** * Optional expression to determine whether the action should be skipped * @maxLength 1000 */ skipConditionExpression?: string | null; } interface ConditionFilter { /** * condition evaluates to `true` if either of the blocks evaluate to `true` (aka OR between all). * @minSize 1 * @maxSize 10 */ conditionBlocks?: ConditionBlock[]; /** Actions to perform when condition_blocks evaluates to `true`. */ postActions?: ActionData[]; /** * Action's post actions ids. * @maxSize 20 */ postActionsIds?: string[]; /** * Actions to perform when condition_blocks evaluates to `false`. * @maxSize 2000 */ elsePostActions?: ActionData[]; /** * Optional expression to determine whether the action should be skipped * @maxLength 1000 */ skipConditionExpression?: string | null; } declare enum BlockType { UNKNOWN = "UNKNOWN", OR = "OR", AND = "AND" } /** @enumType */ type BlockTypeWithLiterals = BlockType | 'UNKNOWN' | 'OR' | 'AND'; interface ConditionBlock { type?: BlockTypeWithLiterals; /** * @minSize 1 * @maxSize 20 */ lineExpressions?: string[]; } interface CodeConditionFilter { /** Code Snippet */ snippet?: CodeSnippet; /** * Actions to perform when condition_blocks evaluates to `true`. * @maxSize 2000 */ postActions?: ActionData[]; /** * Action's post actions ids. * @format GUID * @maxSize 20 */ postActionsIds?: string[]; /** * Actions to perform when condition_blocks evaluates to `false`. * @maxSize 2000 */ elsePostActions?: ActionData[]; /** * Optional expression to determine whether the action should be skipped * @maxLength 1000 */ skipConditionExpression?: string | null; } interface CodeSnippet { /** Logical operator used to evaluate the condition expressions. */ language?: LanguageWithLiterals; /** * Expressions evaluated using the selected operator. * @maxLength 1500 */ code?: string; } declare enum Language { /** `JAVASCRIPT` language. */ JAVASCRIPT = "JAVASCRIPT" } /** @enumType */ type LanguageWithLiterals = Language | 'JAVASCRIPT'; interface Output { /** * The jsonata to use to produce the output * @minLength 1 * @maxLength 5000 */ outputMapping?: string; } interface SetVariables { /** * Action's output mapping. * Jsonata expressions to set variables * for example: { "var1": "$average([10,20])", "var2": "$number($lookup($, $decodeUrlComponent(\"var1\"))) >= $number(8)"" } * @minLength 1 * @maxLength 5000 */ outputMapping?: string; /** * Action's post actions. * @maxSize 20 */ postActions?: ActionData[]; /** * Action's post actions ids. * @format GUID * @maxSize 20 */ postActionsIds?: string[]; /** * The namespace of the action * @minLength 1 * @maxLength 100 */ namespace?: string | null; /** Json Schema for the output mapping */ outputSchema?: Record | null; /** * Optional expression to determine whether the action should be skipped * @maxLength 1000 */ skipConditionExpression?: string | null; } interface SplitAction { /** * Sequence of paths for parallel execution * @minSize 2 * @maxSize 10 */ paths?: Path[]; } interface Path { /** * Path ID * @format GUID */ id?: string; /** * Path name * @minLength 1 * @maxLength 100 */ name?: string | null; /** * Post action to execute in this path (optional) * @format GUID */ postActionId?: string | null; /** post action to execute in this path */ postAction?: ActionData; } interface Service { /** Action's service mapping. */ serviceMapping?: ServiceMapping; /** * Action's input mapping. * Jsonata description of the input this service gets. */ inputMapping?: string | null; /** * Action's output mapping. * Jsonata description of the output this service returns. */ outputMapping?: string | null; /** Action's post actions. */ postActions?: ActionData[]; /** * Action's post actions ids. * @maxSize 20 */ postActionsIds?: string[]; /** * The namespace of the action * @minLength 1 * @maxLength 100 */ namespace?: string | null; } interface SystemHelper extends SystemHelperHelperOneOf { ifFilter?: IfFilter; switchFilter?: SwitchFilter; delay?: DelayHelper; rateLimiting?: RateLimiting; conditionFilter?: ConditionFilter; codeConditionFilter?: CodeConditionFilter; output?: Output; setVariables?: SetVariables; split?: SplitAction; } /** @oneof */ interface SystemHelperHelperOneOf { ifFilter?: IfFilter; switchFilter?: SwitchFilter; delay?: DelayHelper; rateLimiting?: RateLimiting; conditionFilter?: ConditionFilter; codeConditionFilter?: CodeConditionFilter; output?: Output; setVariables?: SetVariables; split?: SplitAction; } interface SpiAction { /** The App Def Id of the action provider */ appDefId?: string; /** Identifier for this action - human readable action key - unique per app def id */ actionKey?: string; /** The configuration of the user for this action, can include params that are taken from the trigger event payload */ userActionConfig?: string | null; /** The post action to execute after this action */ postActions?: ActionData[]; /** The output configuration of the user for this action, can include params that are taken from the trigger event payload */ userOutputActionConfig?: string | null; /** * optional skip condition expression for current action * decides whether to skip the action before executing it's post actions * @maxLength 1000 */ skipConditionExpression?: string | null; /** * Action's post actions ids. * @maxSize 20 */ postActionsIds?: string[]; /** * The namespace of the action * @minLength 1 * @maxLength 100 */ namespace?: string | null; } interface ActivationSource extends ActivationSourceOfOneOf { runtime?: Runtime; scheduler?: Scheduler; asyncAction?: AsyncAction; } /** @oneof */ interface ActivationSourceOfOneOf { runtime?: Runtime; scheduler?: Scheduler; asyncAction?: AsyncAction; } interface ActionsData { /** * Ids of the first level actions. * @maxSize 20 */ rootActionIds?: string[]; /** Map of action id to action data. */ actions?: Record; } interface ScheduleActivationRequested { /** * Activation identifier * @format GUID * @immutable */ id?: string; /** * Optional - external entity id that this activation is related to * @format GUID * @immutable */ externalEntityId?: string | null; /** * Activation payload * @immutable */ payload?: Record | null; /** * Activation Automation * @immutable */ automation?: Automation; /** * Activation schedule date * @immutable */ scheduleDate?: Date | null; /** * Information about the source that initiated this activation (event-driven vs manual/test mode) * @immutable */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } interface ActivationContinuedAfterSchedule { /** * Activation identifier * @format GUID */ id?: string; /** Activation Automation */ automation?: Automation; } interface ReportEventRequest { /** * Trigger key as defined in your app's trigger configuration * in the app dashboard. * For example, `form_submitted` or `invoice_due`. * @minLength 1 * @maxLength 100 */ triggerKey: string; /** * Event payload, formatted as key:value pairs. * Must comply with the payload schema * if you provided one when configuring your trigger. * * Key names can include only alphanumeric characters or underscores * (`A-Z`, `a-z`, `0-9`, `_`). * They cannot start with an underscore. * * Values can be strings, numbers, integers, booleans, or arrays. * If a value is an array, the array items must be objects, * and nested object properties must be * strings, numbers, integers, or booleans only. */ payload?: Record | null; /** * ID of the related resource in GUID format. * For example, `fc81a355-3429-50fc-a4c7-def486e828f3`. * * Required if your app needs to * [cancel the event](https://dev.wix.com/docs/rest/business-management/automations/triggered-events/cancel-event) * if the automation becomes no longer relevant. * * Typically, this ID is defined in your system, * but you can also use any Wix resource GUID, * such as contact ID, member ID, or invoice ID. * See * [Choose the right `externalEntityId`](https://dev.wix.com/docs/rest/business-management/automations/triggered-events/reporting-and-canceling-events#about-canceling-events) * for more information. * @format GUID */ externalEntityId?: string | null; /** Idempotency information for the event. */ idempotency?: Idempotency; } interface ReportEventResponse { /** * The activation IDs of triggered ReportEvents. * Deprecated: This field is being removed. Activation IDs are no longer returned in responses. * Will be removed on 2026-06-30. * @maxSize 100 * @format GUID * @deprecated * @targetRemovalDate 2026-06-30 */ activationIds?: string[]; } interface BulkReportEventRequest { /** * Trigger key as defined in your app's trigger configuration * in the app dashboard. * For example, `form_submitted` or `invoice_due`. * @minLength 1 * @maxLength 100 */ triggerKey: string; /** * Repeated list of event details for bulk reporting. * @minSize 1 * @maxSize 100 */ eventsInfo: EventInfo[]; } interface BulkReportEventResponse { /** * Trigger key associated with the event. * @minLength 1 * @maxLength 100 */ triggerKey?: string; /** List of results for each item in the bulk report event request. */ results?: BulkReportEventResult[]; /** Metadata for the overall bulk action, including success and failure counts. */ bulkActionMetadata?: BulkActionMetadata; } interface BulkReportEventResult { /** Metadata for the individual item in the request. */ itemMetadata?: ItemMetadata; /** Event details for the item in the request. */ eventInfo?: EventInfo; /** * The activation IDs of triggered ReportEvents. * Deprecated: This field is being removed. Activation IDs are no longer returned in bulk operations. * Will be removed on 2026-06-30. * @maxSize 100 * @format GUID * @deprecated * @targetRemovalDate 2026-06-30 */ activationIds?: string[]; } interface ItemMetadata { /** Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */ id?: string | null; /** Index of the item within the request array. Allows for correlation between request and response items. */ originalIndex?: number; /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */ success?: boolean; /** Details about the error in case of failure. */ error?: ApplicationError; } interface ApplicationError { /** Error code. */ code?: string; /** Description of the error. */ description?: string; /** Data related to the error. */ data?: Record | null; } interface BulkActionMetadata { /** Number of items that were successfully processed. */ totalSuccesses?: number; /** Number of items that couldn't be processed. */ totalFailures?: number; /** Number of failures without details because detailed failure threshold was exceeded. */ undetailedFailures?: number; } interface BulkCancelEventRequest { /** * Trigger key whose events you want to cancel. * For example, `form_submitted` or `invoice_due`. * @minLength 1 * @maxLength 100 */ triggerKey: string; /** * Repeated list of external_entity_id, representing the related resources' IDs. * @format GUID * @minSize 1 * @maxSize 100 */ externalEntityIds: string[]; } interface BulkCancelEventResponse { /** * Trigger key related to the canceled event. * @minLength 1 * @maxLength 100 */ triggerKey?: string; /** List of results for each item in the bulk cancel event request. */ results?: BulkCancelEventResult[]; /** Metadata for the overall bulk action, including success and failure counts. */ bulkActionMetadata?: BulkActionMetadata; } interface BulkCancelEventResult { /** Metadata of the item, including its ID and success or failure status. */ itemMetadata?: ItemMetadata; /** * ID of the related resource in GUID format. * @format GUID */ externalEntityId?: string; } interface CancelEventRequest { /** * ID of the related resource in GUID format. * For example, `fc81a355-3429-50fc-a4c7-def486e828f3`. * * Typically, this ID is defined in your system, * but you can also use any Wix resource GUID, * such as contact ID, member ID, or invoice ID. * See * [Choose the right `externalEntityId`](https://dev.wix.com/docs/rest/business-management/automations/triggered-events/reporting-and-canceling-events#choose-the-right-externalentityid) * for more information. * @format GUID */ externalEntityId: string; /** * Trigger key whose event you want to cancel. * For example, `form_submitted` or `invoice_due`. * @minLength 1 * @maxLength 100 */ triggerKey: string; } interface CancelEventResponse { } interface V1RunAutomationRequest extends V1RunAutomationRequestIdentifierOneOf { /** a preinstalled automation identifier */ preinstalledIdentifier?: PreinstalledIdentifier; /** a automation of any type identifier that will be available in future */ automationIdentifier?: AutomationIdentifier; /** * identifier MUST be either AUTOMATION or PREINSTALLED * @immutable */ identifierType?: IdentifierTypeWithLiterals; /** * Event payload, formatted as key:value pairs. * Must comply with the payload schema * if you provided one when configuring your trigger. * * Key names can include only alphanumeric characters or underscores * (`A-Z`, `a-z`, `0-9`, `_`). * They cannot start with an underscore. * * Values can be strings, numbers, integers, booleans, or arrays. * If a value is an array, the array items must be objects, * and nested object properties must be * strings, numbers, integers, or booleans only. */ payload?: Record | null; /** * When true, indicates this is a migration flow and should bypass * the check for future dates that have already passed. */ migrationFlow?: boolean; } /** @oneof */ interface V1RunAutomationRequestIdentifierOneOf { /** a preinstalled automation identifier */ preinstalledIdentifier?: PreinstalledIdentifier; /** a automation of any type identifier that will be available in future */ automationIdentifier?: AutomationIdentifier; } /** Specifies how an automation is identified when invoking RunAutomation or TestAutomation endpoints. */ declare enum IdentifierType { /** Identifies a pre-installed automation by component ID and app ID. */ PREINSTALLED = "PREINSTALLED", /** Identifies a specific automation by its unique automation ID. */ AUTOMATION = "AUTOMATION" } /** @enumType */ type IdentifierTypeWithLiterals = IdentifierType | 'PREINSTALLED' | 'AUTOMATION'; interface PreinstalledIdentifier { /** * identifier for the application of the preinstalled * @format GUID */ appId?: string; /** * application component id * @format GUID */ componentId?: string; } interface AutomationIdentifier { /** * automation id * @format GUID */ automationId?: string; } interface V1RunAutomationResponse { /** * Activation ID generated (for tracking) * @format GUID */ activationId?: string | null; } /** Test mode variant of RunAutomationRequest. */ interface TestAutomationRequest extends TestAutomationRequestIdentifierOneOf { /** a preinstalled automation identifier */ preinstalledIdentifier?: PreinstalledIdentifier; /** a automation of any type identifier that will be available in future */ automationIdentifier?: AutomationIdentifier; /** * identifier MUST be either AUTOMATION or PREINSTALLED * @immutable */ identifierType?: IdentifierTypeWithLiterals; /** * Event payload, formatted as key:value pairs. * Must comply with the payload schema * if you provided one when configuring your trigger. * * Key names can include only alphanumeric characters or underscores * (`A-Z`, `a-z`, `0-9`, `_`). * They cannot start with an underscore. * * Values can be strings, numbers, integers, booleans, or arrays. * If a value is an array, the array items must be objects, * and nested object properties must be * strings, numbers, integers, or booleans only. */ payload?: Record | null; } /** @oneof */ interface TestAutomationRequestIdentifierOneOf { /** a preinstalled automation identifier */ preinstalledIdentifier?: PreinstalledIdentifier; /** a automation of any type identifier that will be available in future */ automationIdentifier?: AutomationIdentifier; } interface TestAutomationResponse { /** * Activation ID generated (for tracking) * @format GUID */ activationId?: string | null; } /** Request to rerun an automation using a previous activation's payload. */ interface RerunActivationRequest { /** * The activation ID whose payload will be used for the rerun. * @format GUID */ activationId: string; /** Options controlling execution behavior. */ options?: RunOptions; } /** Options that control how an automation activation is executed. */ interface RunOptions { /** When true, delay actions will be skipped (similar to test mode behavior). */ skipDelays?: boolean; } interface RerunActivationResponse { /** * Activation ID generated (for tracking) * @format GUID */ activationId?: string | null; } interface ReportDomainEventRequest { /** * trigger app id * @format GUID */ triggerAppId?: string; /** report event request */ reportEventRequest?: ReportEventRequest; } interface ReportDomainEventResponse { } interface ReportAccountLevelEventRequest { /** report event request */ reportEventRequest?: ReportEventRequest; } interface ReportAccountLevelEventResponse { } interface ExecuteFromActionRequest { /** * Requested action id * @format GUID */ actionId?: string; /** * Optional: an activation id to link this action to * @format GUID */ activationId?: string | null; /** Activation payload */ payload?: Record | null; /** * Configuration correlation id to run this action from * @format GUID */ configurationCorrelationId?: string; /** * Optional - schedule id that this action was scheduled from * @format GUID */ scheduleId?: string | null; /** * Optional - an external entity id that this execution is related to * @format GUID */ externalEntityId?: string | null; /** Optional - Activation automation */ automation?: Automation; /** Information about the source that initiated this activation (event-driven vs manual/test mode) */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } interface ExecuteFromActionResponse { } interface ActivationScheduleCompleted { /** * Activation identifier * @format GUID */ id?: string; /** * Activation schedule identifier * @format GUID */ scheduleId?: string; /** Activation schedule due date */ scheduleDate?: Date | null; /** Activation payload */ payload?: Record | null; /** Activation Automation */ automation?: Automation; /** * Optional - external entity id that this activation is related to * @format GUID */ externalEntityId?: string | null; /** Information about the source that initiated this activation (event-driven vs manual/test mode) */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } interface Empty { } interface ActionRetryRequest { /** The activation context */ activationContext?: ActivationContext; /** The action to retry */ actionToRetryData?: ActionData; } interface ActivationContext { /** * Activation ID * @format GUID */ activationId?: string; /** * Action ID * @format GUID */ actionId?: string; /** * Configuration ID * @format GUID */ configurationId?: string; /** * Configuration Correlation ID * @format GUID */ configurationCorrelationId?: string; /** name of the event. intended to keep backwards compatibility, probably not in use. */ eventName?: string; /** Event slug, also probably not in use */ eventSlug?: string | null; /** Enriched event payload */ enrichedEventPayload?: string; /** Raw event payload */ rawEventPayload?: string; /** Actions */ actions?: ActionData[]; /** Activation status */ activationStatus?: RuntimeStatusWithLiterals; /** External ID */ externalId?: string; /** Automation */ automationV2?: Automation; /** Output */ output?: string | null; /** trigger schema */ triggerSchema?: Record | null; /** Information about the source that initiated this activation (event-driven vs manual/test mode) */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } declare enum RuntimeStatus { UNKNOWN_STATUS = "UNKNOWN_STATUS", STARTED = "STARTED", ENDED = "ENDED", ERROR = "ERROR", SCHEDULED = "SCHEDULED", FROM_SCHEDULER = "FROM_SCHEDULER", RETRY = "RETRY", RESUMED = "RESUMED", PAUSED = "PAUSED", ACTION_SKIPPED = "ACTION_SKIPPED" } /** @enumType */ type RuntimeStatusWithLiterals = RuntimeStatus | 'UNKNOWN_STATUS' | 'STARTED' | 'ENDED' | 'ERROR' | 'SCHEDULED' | 'FROM_SCHEDULER' | 'RETRY' | 'RESUMED' | 'PAUSED' | 'ACTION_SKIPPED'; interface ResumeAfterAsyncActionCompleted extends ResumeAfterAsyncActionCompletedStatusInfoOneOf { /** Success info */ successInfo?: SuccessInfo; /** Fail info */ failureInfo?: FailureInfo; /** * External ID * @format GUID */ externalId?: string | null; /** Payload */ payload?: Record | null; /** Automation */ automation?: Automation; /** * Activation ID * @format GUID */ activationId?: string; /** * Action ID * @format GUID */ actionId?: string; /** Result status */ status?: StatusWithLiterals; /** Information about the source that initiated this activation (event-driven vs manual/test mode) */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } /** @oneof */ interface ResumeAfterAsyncActionCompletedStatusInfoOneOf { /** Success info */ successInfo?: SuccessInfo; /** Fail info */ failureInfo?: FailureInfo; } declare enum Status { /** Unknown action completion status. */ UNKNOWN_STATUS = "UNKNOWN_STATUS", /** Action completed successfully. */ SUCCESS = "SUCCESS", /** Action failed to complete. */ FAILURE = "FAILURE" } /** @enumType */ type StatusWithLiterals = Status | 'UNKNOWN_STATUS' | 'SUCCESS' | 'FAILURE'; interface SuccessInfo { /** Your action's results as specified in its [output schema](https://dev.wix.com/docs/api-reference/business-management/automations/actions/about-actions#the-output-schema). */ result?: Record | null; } interface FailureInfo { /** * Why the action failed. * @maxLength 1000 */ errorDescription?: string; } interface ActivationActionStatusChanged extends ActivationActionStatusChangedInfoOneOf, ActivationActionStatusChangedStatusInfoOneOf { /** App defined action info */ appDefinedInfo?: AppDefinedActionInfo; /** Started status information */ startedInfo?: StartedStatusInfo; /** Invoked status information */ invokedAsyncInfo?: InvokedAsyncStatusInfo; /** Ended status information */ endedInfo?: EndedStatusInfo; /** Failed status information */ failedInfo?: FailedStatusInfo; /** * Action ID * @format GUID */ id?: string; /** * Activation ID * @format GUID */ activationId?: string; /** * Automation info * @deprecated Automation info * @replacedBy automation * @targetRemovalDate 2025-12-01 */ automationInfo?: AutomationInfo; /** Action type */ type?: TypeWithLiterals; /** Action attributes */ attributes?: ActionAttributes; /** Activation automation */ automation?: Automation; /** * External entity ID * @maxLength 40 */ externalEntityId?: string | null; /** Event date */ statusChangedDate?: Date | null; /** Action activation status */ status?: ActivationActionStatusChangedStatusWithLiterals; } /** @oneof */ interface ActivationActionStatusChangedInfoOneOf { /** App defined action info */ appDefinedInfo?: AppDefinedActionInfo; } /** @oneof */ interface ActivationActionStatusChangedStatusInfoOneOf { /** Started status information */ startedInfo?: StartedStatusInfo; /** Invoked status information */ invokedAsyncInfo?: InvokedAsyncStatusInfo; /** Ended status information */ endedInfo?: EndedStatusInfo; /** Failed status information */ failedInfo?: FailedStatusInfo; } interface RetryInfo { } interface StartedStatusInfoAppDefinedActionInfo { /** Action input */ input?: Record | null; } interface StartedStatusInfoDelayActionInfo { /** Indicates when this action becomes completed and the activation will move to the post actions */ date?: Date | null; } interface InvokedAsyncStatusInfoAppDefinedActionInfo { /** Default action output, in case we reach the timeout before provider called complete action activation method */ output?: Record | null; /** Timeout date */ timeoutDate?: Date | null; } interface ExpressionEvaluationResult { /** Indicates if the expression was evaluated to true or false */ passed?: boolean; /** Indicates if there was an error in the evaluation process */ error?: boolean; } interface EndedStatusInfoAppDefinedActionInfo { /** Output returned by the action implementer. */ output?: Record | null; } interface ConditionActionInfo { /** Indicates that the condition `if` clause evaluated to `true`. */ passed?: boolean; /** Collects results per each expression evaluation that took place */ expressionResults?: Record; } interface CodeConditionActionInfo { /** Indicates that the code condition `if` clause evaluated to `true`. */ passed?: boolean; } interface RateLimitActionInfo { /** Indicates if the rate limiter passed (not reached the quota) */ passed?: boolean; } interface DelayActionInfo { /** Enriched and refreshed payload */ payload?: Record | null; } interface SetVariablesActionInfo { /** Output returned after jsonata expression evaluation */ output?: Record | null; } interface AutomationInfo extends AutomationInfoOriginInfoOneOf { /** Application info */ applicationInfo?: ApplicationOrigin; /** Preinstalled info */ preinstalledInfo?: PreinstalledOrigin; /** * Automation ID * @format GUID */ id?: string; /** Origin type */ origin?: OriginWithLiterals; /** Trigger info */ triggerInfo?: AutomationInfoTriggerInfo; } /** @oneof */ interface AutomationInfoOriginInfoOneOf { /** Application info */ applicationInfo?: ApplicationOrigin; /** Preinstalled info */ preinstalledInfo?: PreinstalledOrigin; } interface AutomationInfoTriggerInfo { /** * Trigger app ID * @format GUID */ appId?: string; /** * Trigger key * @minLength 1 * @maxLength 100 */ triggerKey?: string; } interface ActionAttributes { /** * Indicates if this action run is part of a retry attempt * If it's not null, it's a retry action run */ retry?: RetryInfo; } interface AppDefinedActionInfo { /** * Action app ID * @format GUID */ appId?: string; /** * Action key * @minLength 1 * @maxLength 100 */ actionKey?: string; } declare enum ActivationActionStatusChangedStatus { /** * Indicates that action activation has started and is in progress. * Relevant to action types: APP_DEFINED, DELAY. */ STARTED = "STARTED", /** Indicates that async action was invoked and now waiting to be completed */ INVOKED_ASYNC = "INVOKED_ASYNC", /** * Indicates that the action activation was completed without errors. * Relevant to action types: APP_DEFINED, DELAY, CONDITION, RATE_LIMIT. */ ENDED = "ENDED", /** * Indicates that the action was skipped and post actions won't start. * Relevant to action types: APP_DEFINED. */ SKIPPED = "SKIPPED", /** * Indicates that the action failed. * Relevant to action types: APP_DEFINED, DELAY, RATE_LIMIT. */ FAILED = "FAILED" } /** @enumType */ type ActivationActionStatusChangedStatusWithLiterals = ActivationActionStatusChangedStatus | 'STARTED' | 'INVOKED_ASYNC' | 'ENDED' | 'SKIPPED' | 'FAILED'; interface StartedStatusInfo extends StartedStatusInfoTypeInfoOneOf { /** APP DEFINED action additional info */ appDefinedActionInfo?: StartedStatusInfoAppDefinedActionInfo; /** Delay action additional info */ delayActionInfo?: StartedStatusInfoDelayActionInfo; } /** @oneof */ interface StartedStatusInfoTypeInfoOneOf { /** APP DEFINED action additional info */ appDefinedActionInfo?: StartedStatusInfoAppDefinedActionInfo; /** Delay action additional info */ delayActionInfo?: StartedStatusInfoDelayActionInfo; } interface InvokedAsyncStatusInfo extends InvokedAsyncStatusInfoTypeInfoOneOf { /** APP DEFINED action additional info */ appDefinedActionInfo?: InvokedAsyncStatusInfoAppDefinedActionInfo; } /** @oneof */ interface InvokedAsyncStatusInfoTypeInfoOneOf { /** APP DEFINED action additional info */ appDefinedActionInfo?: InvokedAsyncStatusInfoAppDefinedActionInfo; } interface EndedStatusInfo extends EndedStatusInfoTypeInfoOneOf { /** APP DEFINED action additional info */ appDefinedActionInfo?: EndedStatusInfoAppDefinedActionInfo; /** Condition action additional info */ conditionActionInfo?: ConditionActionInfo; /** Code Condition action additional info */ codeConditionActionInfo?: CodeConditionActionInfo; /** Rate limit action additional info */ rateLimitActionInfo?: RateLimitActionInfo; /** Delay action additional info */ delayActionInfo?: DelayActionInfo; /** Set Variables action additional info */ setVariablesActionInfo?: SetVariablesActionInfo; } /** @oneof */ interface EndedStatusInfoTypeInfoOneOf { /** APP DEFINED action additional info */ appDefinedActionInfo?: EndedStatusInfoAppDefinedActionInfo; /** Condition action additional info */ conditionActionInfo?: ConditionActionInfo; /** Code Condition action additional info */ codeConditionActionInfo?: CodeConditionActionInfo; /** Rate limit action additional info */ rateLimitActionInfo?: RateLimitActionInfo; /** Delay action additional info */ delayActionInfo?: DelayActionInfo; /** Set Variables action additional info */ setVariablesActionInfo?: SetVariablesActionInfo; } interface FailedStatusInfo { /** * Error description * @maxLength 1000 */ errorDescription?: string; /** * Error code * @maxLength 20 */ errorCode?: string | null; } interface ActivationResumeAfterDelay { /** * Activation identifier * @format GUID */ id?: string; /** * Activation schedule identifier * @format GUID */ scheduleId?: string; /** Activation schedule due date */ scheduleDate?: Date | null; /** Activation payload */ payload?: Record | null; /** Activation Automation */ automation?: Automation; /** * Scheduled action identifier - with the intent to execute that action's post actions * @format GUID */ scheduledActionId?: string; /** * Optional - external entity id that this activation is related to * @format GUID */ externalEntityId?: string | null; /** Information about the source that initiated this activation (event-driven vs manual/test mode) */ activationInitiationSourceInfo?: ActivationInitiationSourceInfo; } interface ActionCompletedRequest { /** The execution identifier that was given to the spi provider when we invoked the action */ executionIdentifier?: string; /** The result of invoking the action. Must conform to the output schema configured by the action provider. */ result?: Record | null; } interface RefreshPayloadRequest { /** * Application definition ID. * @format GUID */ appDefId?: string; /** Trigger key. */ triggerKey?: string; /** Payload to refresh. */ payload?: Record | null; /** * External entity ID. * @format GUID */ externalEntityId?: string | null; } interface RefreshPayloadResponse { /** Updated payload. */ payload?: Record | null; /** If the automation activation should be canceled (default is false) */ cancelActivation?: boolean | null; } interface RunAutomationRequest { /** * App of the automation trigger * @format GUID */ appId?: string; /** * Trigger key of the action * @minLength 1 * @maxLength 100 */ triggerKey?: string; /** Payload of the triggered event */ triggerPayload?: Record | null; /** * Specific automation id to run * @format GUID */ automationId?: string; /** Schema of the trigger */ triggerSchema?: Record | null; /** Skip retry mechanism. If set to true, we will not retry the automations actions in case of a retryable error. */ skipRetry?: boolean | null; } interface RunAutomationResponse { /** Automation activation output payload */ output?: Record | null; } interface RunPreinstalledAutomationRequest { /** * Component ID of the preinstalled automation * @format GUID */ componentId?: string; /** Payload of the triggered event */ triggerPayload?: Record | null; } interface RunPreinstalledAutomationResponse { } interface ReportActionInvocationCompletedRequest extends ReportActionInvocationCompletedRequestStatusInfoOneOf { /** When the `status` is `SUCCESS`, your action's results. */ successInfo?: SuccessInfo; /** When the `status` is `FAILURE`, why the action failed. */ failureInfo?: FailureInfo; /** Action completion status. */ status?: StatusWithLiterals; /** * Invocation token from Wix's original call to [Invoke](https://dev.wix.com/docs/api-reference/business-management/automations/actions/action-provider-service-plugin/invoke). Wix uses this token to match your results with the correct automation run. * * Learn more about [running an invoked action with a timeout](https://dev.wix.com/docs/api-reference/business-management/automations/actions/action-provider-service-plugin/sample-flow#run-an-invoked-action-with-a-timeout). * @maxLength 2048 */ invocationToken: string; } /** @oneof */ interface ReportActionInvocationCompletedRequestStatusInfoOneOf { /** When the `status` is `SUCCESS`, your action's results. */ successInfo?: SuccessInfo; /** When the `status` is `FAILURE`, why the action failed. */ failureInfo?: FailureInfo; } interface ReportActionInvocationCompletedResponse { } /** @docsIgnore */ type ReportEventApplicationErrors = { code?: 'REQUIRED_PROPERTY'; description?: string; data?: Record; } | { code?: 'SCHEMA_VALIDATION_FAILED'; description?: string; data?: Record; }; type __PublicMethodMetaInfo = { getUrl: (context: any) => string; httpMethod: K; path: string; pathParams: M; __requestType: T; __originalRequestType: S; __responseType: Q; __originalResponseType: R; }; declare function reportEvent(): __PublicMethodMetaInfo<'POST', {}, ReportEventRequest$1, ReportEventRequest, ReportEventResponse$1, ReportEventResponse>; declare function bulkReportEvent(): __PublicMethodMetaInfo<'POST', {}, BulkReportEventRequest$1, BulkReportEventRequest, BulkReportEventResponse$1, BulkReportEventResponse>; declare function bulkCancelEvent(): __PublicMethodMetaInfo<'POST', {}, BulkCancelEventRequest$1, BulkCancelEventRequest, BulkCancelEventResponse$1, BulkCancelEventResponse>; declare function cancelEvent(): __PublicMethodMetaInfo<'POST', {}, CancelEventRequest$1, CancelEventRequest, CancelEventResponse$1, CancelEventResponse>; declare function rerunActivation(): __PublicMethodMetaInfo<'POST', {}, RerunActivationRequest$1, RerunActivationRequest, RerunActivationResponse$1, RerunActivationResponse>; declare function reportActionInvocationCompleted(): __PublicMethodMetaInfo<'POST', {}, ReportActionInvocationCompletedRequest$1, ReportActionInvocationCompletedRequest, ReportActionInvocationCompletedResponse$1, ReportActionInvocationCompletedResponse>; export { type AIMetadata as AIMetadataOriginal, type AccountInfo as AccountInfoOriginal, type ActionActionOneOf as ActionActionOneOfOriginal, type ActionAttributes as ActionAttributesOriginal, type ActionCodeSnippet as ActionCodeSnippetOriginal, type ActionCompletedRequest as ActionCompletedRequestOriginal, type ActionData as ActionDataOriginal, type ActionEvent as ActionEventOriginal, type Action as ActionOriginal, type ActionRetryRequest as ActionRetryRequestOriginal, type ActionSettings as ActionSettingsOriginal, type ActionSplitAction as ActionSplitActionOriginal, type ActionsData as ActionsDataOriginal, type ActivationActionStatusChangedInfoOneOf as ActivationActionStatusChangedInfoOneOfOriginal, type ActivationActionStatusChanged as ActivationActionStatusChangedOriginal, type ActivationActionStatusChangedStatusInfoOneOf as ActivationActionStatusChangedStatusInfoOneOfOriginal, ActivationActionStatusChangedStatus as ActivationActionStatusChangedStatusOriginal, type ActivationActionStatusChangedStatusWithLiterals as ActivationActionStatusChangedStatusWithLiteralsOriginal, type ActivationContext as ActivationContextOriginal, type ActivationContinuedAfterSchedule as ActivationContinuedAfterScheduleOriginal, type ActivationInitiationSourceInfoInitiationSourceInfoOneOf as ActivationInitiationSourceInfoInitiationSourceInfoOneOfOriginal, type ActivationInitiationSourceInfo as ActivationInitiationSourceInfoOriginal, ActivationInitiationSource as ActivationInitiationSourceOriginal, type ActivationInitiationSourceWithLiterals as ActivationInitiationSourceWithLiteralsOriginal, type Activation as ActivationOriginal, type ActivationRequest as ActivationRequestOriginal, type ActivationResumeAfterDelay as ActivationResumeAfterDelayOriginal, type ActivationScheduleCompleted as ActivationScheduleCompletedOriginal, type ActivationSourceOfOneOf as ActivationSourceOfOneOfOriginal, type ActivationSource as ActivationSourceOriginal, type ActivationStatusChangedFailedStatusInfo as ActivationStatusChangedFailedStatusInfoOriginal, type ActivationStatusChanged as ActivationStatusChangedOriginal, type ActivationStatusChangedStartedStatusInfo as ActivationStatusChangedStartedStatusInfoOriginal, type ActivationStatusChangedStatusInfoOneOf as ActivationStatusChangedStatusInfoOneOfOriginal, ActivationStatusChangedStatus as ActivationStatusChangedStatusOriginal, type ActivationStatusChangedStatusWithLiterals as ActivationStatusChangedStatusWithLiteralsOriginal, type AppDefinedActionInfo as AppDefinedActionInfoOriginal, type AppDefinedAction as AppDefinedActionOriginal, type ApplicationError as ApplicationErrorOriginal, type ApplicationOrigin as ApplicationOriginOriginal, type AsyncAction as AsyncActionOriginal, type AuditInfoIdOneOf as AuditInfoIdOneOfOriginal, type AuditInfo as AuditInfoOriginal, type AutoArchivePolicy as AutoArchivePolicyOriginal, type AutomationConfigurationActionInfoOneOf as AutomationConfigurationActionInfoOneOfOriginal, type AutomationConfigurationAction as AutomationConfigurationActionOriginal, type AutomationConfiguration as AutomationConfigurationOriginal, AutomationConfigurationStatus as AutomationConfigurationStatusOriginal, type AutomationConfigurationStatusWithLiterals as AutomationConfigurationStatusWithLiteralsOriginal, type AutomationIdentifier as AutomationIdentifierOriginal, type AutomationInfoOriginInfoOneOf as AutomationInfoOriginInfoOneOfOriginal, type AutomationInfo as AutomationInfoOriginal, type AutomationInfoTriggerInfo as AutomationInfoTriggerInfoOriginal, type AutomationOriginInfoOneOf as AutomationOriginInfoOneOfOriginal, type Automation as AutomationOriginal, type AutomationSettings as AutomationSettingsOriginal, type BatchActivationRequest as BatchActivationRequestOriginal, BlockType as BlockTypeOriginal, type BlockTypeWithLiterals as BlockTypeWithLiteralsOriginal, type BulkActionMetadata as BulkActionMetadataOriginal, type BulkCancelEventRequest as BulkCancelEventRequestOriginal, type BulkCancelEventResponse as BulkCancelEventResponseOriginal, type BulkCancelEventResult as BulkCancelEventResultOriginal, type BulkReportEventRequest as BulkReportEventRequestOriginal, type BulkReportEventResponse as BulkReportEventResponseOriginal, type BulkReportEventResult as BulkReportEventResultOriginal, type CancelEventRequest as CancelEventRequestOriginal, type CancelEventResponse as CancelEventResponseOriginal, type CancelPendingScheduleRequestByOneOf as CancelPendingScheduleRequestByOneOfOriginal, type CancelPendingScheduleRequest as CancelPendingScheduleRequestOriginal, type CancelPendingScheduleResponse as CancelPendingScheduleResponseOriginal, CancellationReason as CancellationReasonOriginal, type CancellationReasonWithLiterals as CancellationReasonWithLiteralsOriginal, type CancelledStatusInfo as CancelledStatusInfoOriginal, type Case as CaseOriginal, type CodeConditionActionInfo as CodeConditionActionInfoOriginal, type CodeConditionAction as CodeConditionActionOriginal, type CodeConditionFilter as CodeConditionFilterOriginal, CodeSnippetLanguage as CodeSnippetLanguageOriginal, type CodeSnippetLanguageWithLiterals as CodeSnippetLanguageWithLiteralsOriginal, type CodeSnippet as CodeSnippetOriginal, type ConditionActionInfo as ConditionActionInfoOriginal, type ConditionAction as ConditionActionOriginal, type ConditionBlock as ConditionBlockOriginal, type ConditionExpressionGroup as ConditionExpressionGroupOriginal, type ConditionFilter as ConditionFilterOriginal, type ConsumeReportEventRequest as ConsumeReportEventRequestOriginal, type DelayActionInfo as DelayActionInfoOriginal, type DelayAction as DelayActionOriginal, type DelayHelper as DelayHelperOriginal, type DelayOfOneOf as DelayOfOneOfOriginal, type Delay as DelayOriginal, type Dimensions as DimensionsOriginal, type DomainEventBodyOneOf as DomainEventBodyOneOfOriginal, type DomainEvent as DomainEventOriginal, Domain as DomainOriginal, type DomainWithLiterals as DomainWithLiteralsOriginal, type DraftInfo as DraftInfoOriginal, type Empty as EmptyOriginal, type EndedStatusInfoAppDefinedActionInfo as EndedStatusInfoAppDefinedActionInfoOriginal, type EndedStatusInfo as EndedStatusInfoOriginal, type EndedStatusInfoTypeInfoOneOf as EndedStatusInfoTypeInfoOneOfOriginal, type Enrichment as EnrichmentOriginal, type Enrichments as EnrichmentsOriginal, type EntityCreatedEvent as EntityCreatedEventOriginal, type EntityDeletedEvent as EntityDeletedEventOriginal, type EntityUpdatedEvent as EntityUpdatedEventOriginal, ErrorReason as ErrorReasonOriginal, type ErrorReasonWithLiterals as ErrorReasonWithLiteralsOriginal, type EventInfo as EventInfoOriginal, type ExecuteFromActionRequest as ExecuteFromActionRequestOriginal, type ExecuteFromActionResponse as ExecuteFromActionResponseOriginal, type ExpressionEvaluationResult as ExpressionEvaluationResultOriginal, type ExtendedFields as ExtendedFieldsOriginal, type FailedStatusInfo as FailedStatusInfoOriginal, type FailureInfo as FailureInfoOriginal, type Filter as FilterOriginal, type FilterValueSelection as FilterValueSelectionOriginal, type FilterableAppDefinedActions as FilterableAppDefinedActionsOriginal, type FutureDateActivationOffset as FutureDateActivationOffsetOriginal, type GetScheduleRequest as GetScheduleRequestOriginal, type GetScheduleResponse as GetScheduleResponseOriginal, type Idempotency as IdempotencyOriginal, type IdentificationDataIdOneOf as IdentificationDataIdOneOfOriginal, type IdentificationData as IdentificationDataOriginal, IdentifierType as IdentifierTypeOriginal, type IdentifierTypeWithLiterals as IdentifierTypeWithLiteralsOriginal, type Identity as IdentityOriginal, type IfFilter as IfFilterOriginal, type InitiatedStatusInfo as InitiatedStatusInfoOriginal, type InitiatorInfo as InitiatorInfoOriginal, type InvokedAsyncStatusInfoAppDefinedActionInfo as InvokedAsyncStatusInfoAppDefinedActionInfoOriginal, type InvokedAsyncStatusInfo as InvokedAsyncStatusInfoOriginal, type InvokedAsyncStatusInfoTypeInfoOneOf as InvokedAsyncStatusInfoTypeInfoOneOfOriginal, type ItemMetadata as ItemMetadataOriginal, Language as LanguageOriginal, type LanguageWithLiterals as LanguageWithLiteralsOriginal, type ManualActivationInfo as ManualActivationInfoOriginal, type MergeAction as MergeActionOriginal, type MessageEnvelope as MessageEnvelopeOriginal, type Metadata as MetadataOriginal, type Note as NoteOriginal, type Notes as NotesOriginal, type Offset as OffsetOriginal, Operator as OperatorOriginal, type OperatorWithLiterals as OperatorWithLiteralsOriginal, Origin as OriginOriginal, type OriginWithLiterals as OriginWithLiteralsOriginal, type OutputAction as OutputActionOriginal, type Output as OutputOriginal, type Path as PathOriginal, type Position as PositionOriginal, type PreinstalledIdentifier as PreinstalledIdentifierOriginal, type PreinstalledOrigin as PreinstalledOriginOriginal, type RateLimitActionInfo as RateLimitActionInfoOriginal, type RateLimitAction as RateLimitActionOriginal, type RateLimit as RateLimitOriginal, type RateLimiting as RateLimitingOriginal, type RefreshPayloadRequest as RefreshPayloadRequestOriginal, type RefreshPayloadResponse as RefreshPayloadResponseOriginal, type ReportAccountLevelEventRequest as ReportAccountLevelEventRequestOriginal, type ReportAccountLevelEventResponse as ReportAccountLevelEventResponseOriginal, type ReportActionInvocationCompletedRequest as ReportActionInvocationCompletedRequestOriginal, type ReportActionInvocationCompletedRequestStatusInfoOneOf as ReportActionInvocationCompletedRequestStatusInfoOneOfOriginal, type ReportActionInvocationCompletedResponse as ReportActionInvocationCompletedResponseOriginal, type ReportDomainEventRequest as ReportDomainEventRequestOriginal, type ReportDomainEventResponse as ReportDomainEventResponseOriginal, type ReportEventApplicationErrors as ReportEventApplicationErrorsOriginal, type ReportEventRequest as ReportEventRequestOriginal, type ReportEventResponse as ReportEventResponseOriginal, type RerunActivationInfo as RerunActivationInfoOriginal, type RerunActivationRequest as RerunActivationRequestOriginal, type RerunActivationResponse as RerunActivationResponseOriginal, type RestoreInfo as RestoreInfoOriginal, type ResumeAfterAsyncActionCompleted as ResumeAfterAsyncActionCompletedOriginal, type ResumeAfterAsyncActionCompletedStatusInfoOneOf as ResumeAfterAsyncActionCompletedStatusInfoOneOfOriginal, type RetryInfo as RetryInfoOriginal, type RunAutomationRequest as RunAutomationRequestOriginal, type RunAutomationResponse as RunAutomationResponseOriginal, type RunOptions as RunOptionsOriginal, type RunPreinstalledAutomationRequest as RunPreinstalledAutomationRequestOriginal, type RunPreinstalledAutomationResponse as RunPreinstalledAutomationResponseOriginal, type Runtime as RuntimeOriginal, RuntimeStatus as RuntimeStatusOriginal, type RuntimeStatusWithLiterals as RuntimeStatusWithLiteralsOriginal, type ScheduleActivationRequested as ScheduleActivationRequestedOriginal, type Schedule as ScheduleOriginal, type ScheduleRequest as ScheduleRequestOriginal, type ScheduleResponse as ScheduleResponseOriginal, ScheduleStatus as ScheduleStatusOriginal, type ScheduleStatusWithLiterals as ScheduleStatusWithLiteralsOriginal, type ScheduledAction as ScheduledActionOriginal, type ScheduledStatusInfo as ScheduledStatusInfoOriginal, type Scheduler as SchedulerOriginal, type ServiceMapping as ServiceMappingOriginal, type Service as ServiceOriginal, type SetVariablesActionInfo as SetVariablesActionInfoOriginal, type SetVariablesAction as SetVariablesActionOriginal, type SetVariables as SetVariablesOriginal, type SimpleDelay as SimpleDelayOriginal, SkipReason as SkipReasonOriginal, type SkipReasonWithLiterals as SkipReasonWithLiteralsOriginal, type SkippedStatusInfo as SkippedStatusInfoOriginal, type SpiAction as SpiActionOriginal, type SplitAction as SplitActionOriginal, type SplitActionPath as SplitActionPathOriginal, type StartedStatusInfoAppDefinedActionInfo as StartedStatusInfoAppDefinedActionInfoOriginal, type StartedStatusInfoDelayActionInfo as StartedStatusInfoDelayActionInfoOriginal, type StartedStatusInfo as StartedStatusInfoOriginal, type StartedStatusInfoTypeInfoOneOf as StartedStatusInfoTypeInfoOneOfOriginal, Status as StatusOriginal, type StatusWithLiterals as StatusWithLiteralsOriginal, type SuccessInfo as SuccessInfoOriginal, type SwitchFilter as SwitchFilterOriginal, type SystemHelperHelperOneOf as SystemHelperHelperOneOfOriginal, type SystemHelper as SystemHelperOriginal, Target as TargetOriginal, type TargetWithLiterals as TargetWithLiteralsOriginal, type TestAutomationRequestIdentifierOneOf as TestAutomationRequestIdentifierOneOfOriginal, type TestAutomationRequest as TestAutomationRequestOriginal, type TestAutomationResponse as TestAutomationResponseOriginal, TimeUnit as TimeUnitOriginal, type TimeUnitWithLiterals as TimeUnitWithLiteralsOriginal, type TriggerInfo as TriggerInfoOriginal, type Trigger as TriggerOriginal, type TriggerSettings as TriggerSettingsOriginal, Type as TypeOriginal, type TypeWithLiterals as TypeWithLiteralsOriginal, Units as UnitsOriginal, type UnitsWithLiterals as UnitsWithLiteralsOriginal, type UpdatePendingSchedulesPayloadRequest as UpdatePendingSchedulesPayloadRequestOriginal, type UpdatePendingSchedulesPayloadResponse as UpdatePendingSchedulesPayloadResponseOriginal, type UpdateScheduleStatusRequest as UpdateScheduleStatusRequestOriginal, type UpdateScheduleStatusResponse as UpdateScheduleStatusResponseOriginal, type V1RunAutomationRequestIdentifierOneOf as V1RunAutomationRequestIdentifierOneOfOriginal, type V1RunAutomationRequest as V1RunAutomationRequestOriginal, type V1RunAutomationResponse as V1RunAutomationResponseOriginal, WebhookIdentityType as WebhookIdentityTypeOriginal, type WebhookIdentityTypeWithLiterals as WebhookIdentityTypeWithLiteralsOriginal, type __PublicMethodMetaInfo, bulkCancelEvent, bulkReportEvent, cancelEvent, reportActionInvocationCompleted, reportEvent, rerunActivation };