import { SubmitJobRequest as SubmitJobRequest$1, SubmitJobResponse as SubmitJobResponse$1, CreateFileUploadUrlRequest as CreateFileUploadUrlRequest$1, CreateFileUploadUrlResponse as CreateFileUploadUrlResponse$1, GetJobRequest as GetJobRequest$1, GetJobResponse as GetJobResponse$1, ListJobsRequest as ListJobsRequest$1, ListJobsResponse as ListJobsResponse$1, QueryJobsRequest as QueryJobsRequest$1, QueryJobsResponse as QueryJobsResponse$1, TerminateJobRequest as TerminateJobRequest$1, TerminateJobResponse as TerminateJobResponse$1, ListMovementLogsRequest as ListMovementLogsRequest$1, ListMovementLogsResponse as ListMovementLogsResponse$1 } from './index.typings.js'; import '@wix/sdk-types'; /** Data movement job object. */ interface DataMovementJob extends DataMovementJobStatusOptionsOneOf { /** When the job's `status` is `PARTIALLY_SUCCESSFUL`, the additional details. */ partiallySuccessfulOptions?: PartiallySuccessfulStatusOptions; /** * Job ID. * @format GUID * @readonly */ id?: string; /** * When the job was submitted. * @readonly */ startedAt?: Date | null; /** * Current job status. * @readonly */ status?: JobStatusWithLiterals; /** Source to move data from. */ source?: Source; /** Destination to move data to. */ destination?: Destination; /** * Job name. * @maxLength 1024 */ name?: string; /** * When the job `status` is `IN_PROGRESS`, the progress details. * @readonly */ progress?: Progress; /** * Job finish time. * * A job is considered finished when its `status` updates to `COMPLETED`, `FAILED`, or `PARTIALLY_SUCCESSFUL`. * @readonly */ finishedAt?: Date | null; /** * Error information. * @readonly */ error?: ApplicationError; /** * When moving data from a Wix data collection, the source site ID. * * By default, the source site is the current site. To move data from [any site in the same Wix Account](https://support.wix.com/en/article/managing-multiple-sites-under-one-account), specify the site ID, which you can retrieve by calling [Get App Instance](https://dev.wix.com/docs/rest/app-management/app-instance/get-app-instance). * * > **Note**: You can specify the ID of a source site or destination site, but not both. * @format GUID */ sourceSiteId?: string; /** * When moving data to a Wix data collection, the destination site ID. * * By default, the destination site is the current site. To move data to [any site in the same Wix Account](https://support.wix.com/en/article/managing-multiple-sites-under-one-account), specify the site ID, which you can retrieve by calling [Get App Instance](https://dev.wix.com/docs/rest/app-management/app-instance/get-app-instance). * * > **Note**: You can specify the ID of a source site or destination site, but not both. * @format GUID */ destinationSiteId?: string; /** Number of recorded logs. */ logsRecorded?: number; /** * Sync Schedule ID, if the job was triggered by a sync schedule. * @format GUID * @readonly */ scheduleId?: string | null; /** Extended fields for custom metadata added by applications. */ extendedFields?: ExtendedFields; /** * Workflow ID, if the job was created as a child step of a workflow. * @format GUID * @readonly */ workflowId?: string | null; } /** @oneof */ interface DataMovementJobStatusOptionsOneOf { /** When the job's `status` is `PARTIALLY_SUCCESSFUL`, the additional details. */ partiallySuccessfulOptions?: PartiallySuccessfulStatusOptions; } declare enum JobStatus { /** Job was submitted but has not yet started. */ UNINITIALIZED = "UNINITIALIZED", /** Job is initializing. */ INITIALIZING = "INITIALIZING", /** Job is in progress. */ IN_PROGRESS = "IN_PROGRESS", /** Job has successfully completed. */ COMPLETED = "COMPLETED", /** Job has failed. */ FAILED = "FAILED", /** Job has completed but was partially successful due to a destination limitation. See `PartiallySuccessfulOptions` for additional details. */ PARTIALLY_SUCCESSFUL = "PARTIALLY_SUCCESSFUL" } /** @enumType */ type JobStatusWithLiterals = JobStatus | 'UNINITIALIZED' | 'INITIALIZING' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED' | 'PARTIALLY_SUCCESSFUL'; interface Source extends SourceSourceOneOf { /** * Wix data collection. * * You can move items from native Wix collections, [Wix app collections](https://dev.wix.com/docs/develop-websites/articles/databases/wix-data/collections/working-with-wix-app-collections-and-code), and [external database collections](https://dev.wix.com/docs/develop-websites/articles/databases/external-databases/overview/integrating-external-databases-with-your-wix-site). */ wixDataCollection?: WixDataSource; /** * Localized CMS content. Available when the site has [Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-an-overview) installed. * * Learn more about working with [translated CMS content](https://support.wix.com/en/article/wix-multilingual-translating-cms-collection-content). */ localization?: LocalizationSource; /** * Source file. * * You can import data from files in CSV or JSONL formats. Uploading a file with an invalid format causes the movement job to fail. * * To upload a file, call Create File Upload Url ([SDK](https://dev.wix.com/docs/sdk/backend-modules/data/movement-jobs/create-file-upload-url) | [REST](https://dev.wix.com/docs/rest/business-solutions/cms/data-movement-jobs/create-file-upload-url)) and use the `uploadUrl` from the response. For example: * * `curl --request PUT --upload-file "${path_to_file}" "${uploadUrl}"` */ file?: FileSource; } /** @oneof */ interface SourceSourceOneOf { /** * Wix data collection. * * You can move items from native Wix collections, [Wix app collections](https://dev.wix.com/docs/develop-websites/articles/databases/wix-data/collections/working-with-wix-app-collections-and-code), and [external database collections](https://dev.wix.com/docs/develop-websites/articles/databases/external-databases/overview/integrating-external-databases-with-your-wix-site). */ wixDataCollection?: WixDataSource; /** * Localized CMS content. Available when the site has [Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-an-overview) installed. * * Learn more about working with [translated CMS content](https://support.wix.com/en/article/wix-multilingual-translating-cms-collection-content). */ localization?: LocalizationSource; /** * Source file. * * You can import data from files in CSV or JSONL formats. Uploading a file with an invalid format causes the movement job to fail. * * To upload a file, call Create File Upload Url ([SDK](https://dev.wix.com/docs/sdk/backend-modules/data/movement-jobs/create-file-upload-url) | [REST](https://dev.wix.com/docs/rest/business-solutions/cms/data-movement-jobs/create-file-upload-url)) and use the `uploadUrl` from the response. For example: * * `curl --request PUT --upload-file "${path_to_file}" "${uploadUrl}"` */ file?: FileSource; } interface AggregationPipeline extends AggregationPipelinePagingMethodOneOf { /** * Paging options to limit and skip the number of results. * * Learn more about [sorting and paging](https://dev.wix.com/docs/rest/articles/get-started/sorting-and-paging). */ paging?: Paging; /** * Cursor token referring to a page of results. * * Not used in the first request. Subsequent requests use the cursor token and not `filter` or `sort`. */ cursorPaging?: CursorPaging; /** * Sequence of aggregation operations to apply to the data. * * Stages are processed in order, with each stage operating on the output of the previous stage. * @maxSize 100 */ stages?: Stage[]; } /** @oneof */ interface AggregationPipelinePagingMethodOneOf { /** * Paging options to limit and skip the number of results. * * Learn more about [sorting and paging](https://dev.wix.com/docs/rest/articles/get-started/sorting-and-paging). */ paging?: Paging; /** * Cursor token referring to a page of results. * * Not used in the first request. Subsequent requests use the cursor token and not `filter` or `sort`. */ cursorPaging?: CursorPaging; } interface Stage extends StageStageOneOf { /** Groups aggregated items to new result items. */ group?: Group; /** * Aggregation filter. Only items that match the filter are processed. * * Learn more about [filters in API Query Language](https://dev.wix.com/docs/rest/articles/get-started/api-query-language#filters). * * > **Note:** The values you provide for each filter field must adhere to that field's data type. For example, when filtering by a field whose type is Date and Time, use an object in the following format: `"someDateAndTimeFieldKey": { "$date": "YYYY-MM-DDTHH:mm:ss.sssZ"}`. Learn more about [data types in Wix Data](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-types-in-wix-data). */ filter?: Record | null; /** * Sorting preferences. * * Learn more about [sorting and paging](https://dev.wix.com/docs/rest/articles/get-started/sorting-and-paging). */ sort?: Sorting; /** Transforms items by including, excluding, or reshaping fields. */ projection?: Projection; /** Transforms an object into an array where each object property becomes a new array element containing the property's key and value, as well as all other properties from the original object. */ objectToArray?: ObjectToArray; /** Creates a result item for each array element. Each result contains the full original item, with the array field replaced by an element whose key is the array name and whose value is the array element. */ unwindArray?: UnwindArray; /** Number of results to skip from the beginning of the result set. */ skip?: number; /** Maximum number of results to return. */ limit?: number; } /** @oneof */ interface StageStageOneOf { /** Groups aggregated items to new result items. */ group?: Group; /** * Aggregation filter. Only items that match the filter are processed. * * Learn more about [filters in API Query Language](https://dev.wix.com/docs/rest/articles/get-started/api-query-language#filters). * * > **Note:** The values you provide for each filter field must adhere to that field's data type. For example, when filtering by a field whose type is Date and Time, use an object in the following format: `"someDateAndTimeFieldKey": { "$date": "YYYY-MM-DDTHH:mm:ss.sssZ"}`. Learn more about [data types in Wix Data](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-types-in-wix-data). */ filter?: Record | null; /** * Sorting preferences. * * Learn more about [sorting and paging](https://dev.wix.com/docs/rest/articles/get-started/sorting-and-paging). */ sort?: Sorting; /** Transforms items by including, excluding, or reshaping fields. */ projection?: Projection; /** Transforms an object into an array where each object property becomes a new array element containing the property's key and value, as well as all other properties from the original object. */ objectToArray?: ObjectToArray; /** Creates a result item for each array element. Each result contains the full original item, with the array field replaced by an element whose key is the array name and whose value is the array element. */ unwindArray?: UnwindArray; /** Number of results to skip from the beginning of the result set. */ skip?: number; /** Maximum number of results to return. */ limit?: number; } interface Group { /** * Grouping criteria by which to organize items. * * Each `groupId` specifies a field by which to group items, and serves as the result item's unique `_id` property. * * Items with identical values for the specified `expression` are placed in the same group based on the specified `key`. If empty, all items are treated as a single group. * @maxSize 1000 */ groupIds?: GroupId[]; /** * Accumulation operations to run on each group. * * Accumulators aggregate data across all items in the group and return the result in a new field. * * > **Note:** When using accumulators, the type of expression must be compatible with the operation type. For example, when using the `sum` accumulator, the specified expression must resolve to a number. * @maxSize 1000 */ accumulators?: Accumulator[]; } interface Expression extends ExpressionValueOneOf { /** * Path to the field containing the value to resolve. * * Use dot notation to specify nested fields. For example, `user.name` or `product.price`. * @maxLength 1000 */ fieldPath?: string; /** * Text value. * @maxLength 1000 */ text?: string; /** Number value. */ numeric?: number; /** Adds the specified expressions together. */ add?: AddOperation; /** Calculates the total sum of multiple expressions. */ sum?: SumOperation; /** Subtracts 1 expression from another. */ subtract?: SubtractOperation; /** Multiplies multiple expressions together. */ multiply?: MultiplyOperation; /** Divides 1 expression by another. */ divide?: DivideOperation; /** Finds the absolute value of an expression. */ abs?: AbsOperation; /** Finds the remainder when dividing 1 expression by another. */ mod?: ModOperation; /** Rounds an expression down to the nearest whole number. */ floor?: FloorOperation; /** Rounds an expression up to the nearest whole number. */ ceil?: CeilOperation; /** Joins multiple expressions together to create a string. */ concat?: ConcatOperation; /** Converts an expression to a string. */ stringify?: StringifyOperation; /** Converts an expression to lowercase. */ toLower?: ToLowerOperation; /** Converts an expression to uppercase. */ toUpper?: ToUpperOperation; /** Extracts a portion of a string expression. */ substring?: SubstringOperation; /** Finds the length of a string expression. */ length?: LengthOperation; } /** @oneof */ interface ExpressionValueOneOf { /** * Path to the field containing the value to resolve. * * Use dot notation to specify nested fields. For example, `user.name` or `product.price`. * @maxLength 1000 */ fieldPath?: string; /** * Text value. * @maxLength 1000 */ text?: string; /** Number value. */ numeric?: number; /** Adds the specified expressions together. */ add?: AddOperation; /** Calculates the total sum of multiple expressions. */ sum?: SumOperation; /** Subtracts 1 expression from another. */ subtract?: SubtractOperation; /** Multiplies multiple expressions together. */ multiply?: MultiplyOperation; /** Divides 1 expression by another. */ divide?: DivideOperation; /** Finds the absolute value of an expression. */ abs?: AbsOperation; /** Finds the remainder when dividing 1 expression by another. */ mod?: ModOperation; /** Rounds an expression down to the nearest whole number. */ floor?: FloorOperation; /** Rounds an expression up to the nearest whole number. */ ceil?: CeilOperation; /** Joins multiple expressions together to create a string. */ concat?: ConcatOperation; /** Converts an expression to a string. */ stringify?: StringifyOperation; /** Converts an expression to lowercase. */ toLower?: ToLowerOperation; /** Converts an expression to uppercase. */ toUpper?: ToUpperOperation; /** Extracts a portion of a string expression. */ substring?: SubstringOperation; /** Finds the length of a string expression. */ length?: LengthOperation; } interface AddOperation { /** * Expressions to add together. * * All expressions must resolve to numbers. * @maxSize 1000 */ expressions?: Expression[]; } interface SumOperation { /** * Expressions to calculate the total sum of. * * All expressions must resolve to numbers. * @maxSize 1000 */ expressions?: Expression[]; } interface SubtractOperation { /** * Expression to subtract `secondExpression` from. * * Expression must resolve to a number. */ firstExpression?: Expression; /** * Expression to subtract from `firstExpression`. * * Expression must resolve to a number. */ secondExpression?: Expression; } interface MultiplyOperation { /** * Expressions to multiply. * * All expressions must resolve to numbers. * @maxSize 1000 */ expressions?: Expression[]; } interface DivideOperation { /** * Expression to divide by `secondExpression`. * * Expression must resolve to a number. */ firstExpression?: Expression; /** * Expression to divide `firstExpression` by. * * Expression must resolve to a non-zero number. */ secondExpression?: Expression; } interface AbsOperation { /** * Expression to find the absolute value of. * * Expression must resolve to a number. */ expression?: Expression; } interface ModOperation { /** * Expression to divide by `secondExpression` to find the remainder. * * Expression must resolve to a number. */ firstExpression?: Expression; /** * Expression to divide `firstExpression` by. * * Expression must resolve to a non-zero number. */ secondExpression?: Expression; } interface FloorOperation { /** * Expression to round down to the nearest whole number. * * Expression must resolve to a number. */ expression?: Expression; } interface CeilOperation { /** * Expression to round up to the nearest whole number. * * Expression must resolve to a number. */ expression?: Expression; } interface ConcatOperation { /** * Expressions to join together. * * All expressions must resolve to strings. * @maxSize 1000 */ expressions?: Expression[]; } interface StringifyOperation { /** Expression to convert to a string. */ expression?: Expression; } interface ToLowerOperation { /** * Expression to convert to lowercase. * * Expression must resolve to a string. */ expression?: Expression; } interface ToUpperOperation { /** * Expression to convert to uppercase. * * Expression must resolve to a string. */ expression?: Expression; } interface SubstringOperation { /** * Expression to extract a substring from. * * Expression must resolve to a string. */ expression?: Expression; /** * Starting position of the substring to extract, specified in zero-based indexing. * * Expression must resolve to a number. */ startExpression?: Expression; /** * Number of characters to extract from the starting position. * * Expression must resolve to a number. */ lengthExpression?: Expression; } interface LengthOperation { /** * Expression to count the total number of characters of. * * Expression must resolve to a string. */ expression?: Expression; } interface ConditionOperation { /** Expression to evaluate as a condition. */ ifExpression?: Expression; /** Expression to return when `ifExpression` resolves to `true`. */ whenTrue?: Expression; /** Expression to return when `ifExpression` resolves to `false`. */ whenFalse?: Expression; } interface GreaterThanOperation { /** Expression on the left side of the comparison. */ firstExpression?: Expression; /** Expression on the right side of the comparison. */ secondExpression?: Expression; } interface SizeOperation { /** Expression containing the array whose size to return. */ expression?: Expression; } interface GroupId { /** * Name of the field to group items by. * * This becomes the field name in the result's `_id` property. * @maxLength 1000 */ key?: string; /** Expression to determine the grouping value. Items whose expression resolves to the same value are grouped together in the result item's `_id` property. */ expression?: Expression; } interface Accumulator extends AccumulatorExpressionOneOf { /** Calculates the average value across all items in the group based on the specified expression. */ avg?: Avg; /** Finds the minimum value across all items in the group. */ min?: Min; /** Finds the maximum value across all items in the group. */ max?: Max; /** Calculates the sum of the specified expression across all items in the group. */ sum?: Sum; /** Finds the first item in the group. */ first?: First; /** Finds the last item in the group. */ last?: Last; /** Collects values from all items in the group into an array. */ push?: Push; /** * Field key in the output item to store the result in. * @maxLength 1000 */ resultFieldName?: string; } /** @oneof */ interface AccumulatorExpressionOneOf { /** Calculates the average value across all items in the group based on the specified expression. */ avg?: Avg; /** Finds the minimum value across all items in the group. */ min?: Min; /** Finds the maximum value across all items in the group. */ max?: Max; /** Calculates the sum of the specified expression across all items in the group. */ sum?: Sum; /** Finds the first item in the group. */ first?: First; /** Finds the last item in the group. */ last?: Last; /** Collects values from all items in the group into an array. */ push?: Push; } interface Avg { /** * Expression to calculate the group's average value. * * Expression must resolve to a number. */ expression?: Expression; } interface Min { /** * Expression to find the group's minimum value. * * Expression must resolve to a comparable value, such as a number or string. */ expression?: Expression; } interface Max { /** * Expression to find the group's maximum value. * * Expression must resolve to a comparable value, such as a number or string. */ expression?: Expression; } interface Sum { /** * Expression to calculate the group's total sum. * * Expression must resolve to a number. */ expression?: Expression; } interface First { /** Expression to find the first item in the group. */ expression?: Expression; } interface Last { /** Expression to find the last item in the group. */ expression?: Expression; } interface Push { /** Expression to collect items into an array. */ expression?: Expression; } interface Sorting { /** * Fields to sort the results by. * @maxSize 1000 */ values?: CommonSorting[]; } interface CommonSorting { /** * Name of the field to sort by. * @minLength 1 * @maxLength 1000 */ fieldName?: string; /** Sort order. */ order?: SortOrderWithLiterals; } declare enum SortOrder { ASC = "ASC", DESC = "DESC" } /** @enumType */ type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC'; /** Transforms collection items by including, excluding, or reshaping fields. */ interface Projection { /** * Fields to include, exclude, or reshape. * @maxSize 1000 */ fields?: Field[]; } interface Include { /** * Key of the field to include in the result. * * Use dot notation to specify nested fields. For example, `user.name` or `product.price`. Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ fieldName?: string; } interface Exclude { /** * Key of the field to exclude from the result. * * Use dot notation to specify nested fields. For example, `user.name` or `product.price`. Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ fieldName?: string; } interface Reshape { /** * Key of the field to create in the result item. * * Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ resultFieldName?: string; /** Expression to resolve. The result of the expression becomes the value of the new field. */ expression?: Expression; } interface ProjectNested { /** * Key of the parent field for the nested fields. * * Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ resultFieldName?: string; /** * Nested fields to include, exclude, or reshape. * @maxSize 1000 */ fields?: Field[]; } interface Field extends FieldProjectionOneOf { /** When specified, includes only the specified field in the result. All other fields are excluded. */ include?: Include; /** When specified, excludes the specified field from the result. All other fields are included. */ exclude?: Exclude; /** Reshapes a new field based on the specified expression. The field used by the expression is not included in the result. */ reshape?: Reshape; /** Creates nested fields by including, excluding, or reshaping fields. */ projectNested?: ProjectNested; } /** @oneof */ interface FieldProjectionOneOf { /** When specified, includes only the specified field in the result. All other fields are excluded. */ include?: Include; /** When specified, excludes the specified field from the result. All other fields are included. */ exclude?: Exclude; /** Reshapes a new field based on the specified expression. The field used by the expression is not included in the result. */ reshape?: Reshape; /** Creates nested fields by including, excluding, or reshaping fields. */ projectNested?: ProjectNested; } /** Converts an object to an array. */ interface ObjectToArray { /** * Key of the object field to convert to an array. * * Use dot notation to specify nested fields. For example, `user.name` or `product.price`. Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ objectFieldName?: string; /** * Key of the new array to create in the result item. * * Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ destinationFieldName?: string; } /** Unwinds an array. */ interface UnwindArray { /** * Key of the array field to unwind. * * Use dot notation to specify a nested array. For example, `user.products` or `product.colors`. Learn more about [field keys](https://support.wix.com/en/article/cms-formerly-content-manager-about-your-collection-fields#field-id-velo-by-wix-only). * @maxLength 1000 */ arrayFieldName?: string; } interface AddFields { /** * Fields to add or replace in the result items. * @maxSize 1000 */ fields?: AddField[]; } interface AddField { /** * Key of the field to add or replace in the result item. * @maxLength 1000 */ fieldName?: string; /** Expression to resolve. The result of the expression becomes the value of the field. */ expression?: Expression; } interface Lookup { /** * ID of the collection to join with. * @maxLength 256 */ dataCollectionId?: string; /** * Key of the local field whose value is used for matching items in the joined collection. * @maxLength 1000 */ localField?: string; /** * Key of the field in the joined collection to match against the local field value. * @maxLength 1000 */ foreignField?: string; /** * Key of the array field where matching joined items are stored. * @maxLength 1000 */ asField?: string; } interface UnionWith { /** * ID of the collection whose results are appended to the current pipeline results. * @maxLength 256 */ dataCollectionId?: string; /** Pipeline to run on the union collection before appending its results. */ pipeline?: AggregationPipeline; } interface Paging { /** Number of items to load. */ limit?: number | null; /** Number of items to skip in the current sort order. */ offset?: number | null; } interface CursorPaging { /** * Number of items to load. * @max 1000 */ limit?: number | null; /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. * @maxLength 150000 */ cursor?: string | null; } interface V1Field { /** * Field ID. * * If the field type is `Array`, specify the item index. If the field type is `Object`, specify the field path. Use dot notation to specify nested fields, for example: `data.address.city`. * @maxLength 1024 */ key?: string; /** * Field display name. * * When moving items to CSV files, use this to set the header of the target column. * @maxLength 1024 */ displayName?: string; /** * Field data type. Default: `ANY`. * * Learn more about [data types in Wix Data](https://dev.wix.com/docs/rest/business-solutions/cms/data-types-in-wix-data). */ fieldType?: FieldTypeWithLiterals; } declare enum FieldType { /** Any data type. */ ANY = "ANY", /** String. */ STRING = "STRING", /** Number. */ NUMBER = "NUMBER", /** Boolean. */ BOOLEAN = "BOOLEAN", /** Date string in ISO 8601 date format: `YYYY-MM-DD`. */ DATE = "DATE", /** [Date object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) (SDK) or an object in the following format: `"someFieldKey": { "$date": "YYYY-MM-DDTHH:mm:ss.sssZ"}`. */ DATETIME = "DATETIME", /** Binary file. */ BINARY = "BINARY", /** object. */ OBJECT = "OBJECT", /** Array. */ ARRAY = "ARRAY", /** Web URL. */ URL = "URL", WIX_MEDIA_URL = "WIX_MEDIA_URL", WIX_MEDIA_IMAGE_URL = "WIX_MEDIA_IMAGE_URL", WIX_MEDIA_VIDEO_URL = "WIX_MEDIA_VIDEO_URL", WIX_MEDIA_DOCUMENT_URL = "WIX_MEDIA_DOCUMENT_URL", IMAGE_URL = "IMAGE_URL", VIDEO_URL = "VIDEO_URL" } /** @enumType */ type FieldTypeWithLiterals = FieldType | 'ANY' | 'STRING' | 'NUMBER' | 'BOOLEAN' | 'DATE' | 'DATETIME' | 'BINARY' | 'OBJECT' | 'ARRAY' | 'URL' | 'WIX_MEDIA_URL' | 'WIX_MEDIA_IMAGE_URL' | 'WIX_MEDIA_VIDEO_URL' | 'WIX_MEDIA_DOCUMENT_URL' | 'IMAGE_URL' | 'VIDEO_URL'; declare enum WixDataEnvironment { /** Collection's [live environment](https://support.wix.com/en/article/cms-about-sandbox-and-live-collections-and-syncing#sandbox-collections). */ LIVE = "LIVE", /** Collection's [sandbox environment](https://support.wix.com/en/article/cms-about-sandbox-and-live-collections-and-syncing#live-collections). */ SANDBOX = "SANDBOX" } /** @enumType */ type WixDataEnvironmentWithLiterals = WixDataEnvironment | 'LIVE' | 'SANDBOX'; /** Filter and field selection query. */ interface FilterQuery { /** * Filter to apply to the items. Only items that pass the filter are moved. * * Learn more about building a query filter using [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters). */ filter?: Record | null; /** Item fields to move. If not set, the method moves the full items. */ fields?: string[]; } interface AggregationQuery { /** Aggregation pipeline to run on the collection. */ aggregationPipeline?: AggregationPipeline; /** * Fields, will be used to map aggregation pipeline result to export result. * Fields in the aggregation pipeline results that are not in the provided list will be ignored. * If no fields provided, data will be exported as is, without transformation or field name mapping. * @maxSize 1000 */ fields?: V1Field[]; } declare enum FileFormat { /** Unknown format. */ UNKNOWN = "UNKNOWN", /** CSV format. */ CSV = "CSV", /** JSONL format. */ JSONL = "JSONL" } /** @enumType */ type FileFormatWithLiterals = FileFormat | 'UNKNOWN' | 'CSV' | 'JSONL'; declare enum MediaType { /** All media types. */ ALL = "ALL", /** Images. */ IMAGE = "IMAGE", /** Videos. */ VIDEO = "VIDEO", /** Audio files. */ AUDIO = "AUDIO", /** Documents. */ DOCUMENT = "DOCUMENT" } /** @enumType */ type MediaTypeWithLiterals = MediaType | 'ALL' | 'IMAGE' | 'VIDEO' | 'AUDIO' | 'DOCUMENT'; /** Wix data collection. */ interface WixDataSource extends WixDataSourceQueryOneOf { /** Filter and field selection to apply to the collection items. */ filterQuery?: FilterQuery; /** Aggregation pipeline to run on the collection. */ aggregationQuery?: AggregationQuery; /** * ID of the data collection. * @minLength 1 * @maxLength 256 */ collectionId?: string; /** * Filter to apply to the items. Only items that pass the filter are moved. * * Learn more about building a query filter using [API Query Language](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters). * Deprecated: Use `filter_query.filter` instead. * @deprecated * @replacedBy filter_query * @targetRemovalDate 2027-01-01 */ filter?: Record | null; /** * Deprecated: Use `filter_query.fields` instead. * @deprecated * @replacedBy filter_query * @targetRemovalDate 2027-01-01 */ fields?: string[]; } /** @oneof */ interface WixDataSourceQueryOneOf { /** Filter and field selection to apply to the collection items. */ filterQuery?: FilterQuery; /** Aggregation pipeline to run on the collection. */ aggregationQuery?: AggregationQuery; } interface LocalizationSource { /** * Translated CMS content in the specified languages. Content in these languages is exported to the destination, with the first specified language treated as the main one. * * Use two-letter language codes in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format. You can also specify a two-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) format. * * Learn more about [available languages in Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-languages-available). * @format LANGUAGE_TAG * @minSize 2 * @maxSize 64 */ languages?: string[]; } /** * File. * * To create a file upload URL, call the Create File Upload Url method and use the `uploadURL` in the response to upload the source file. */ interface FileSource { /** File format. If not specified, automatically determined by Wix. */ format?: FileFormatWithLiterals; /** * File ID as returned in the `fileId` property of the Create File Upload URL method's response. * @maxLength 512 */ fileId?: string; /** * URL where the source file is uploaded. Automatically generated by Wix. * @readonly * @maxLength 2048 */ url?: string; } interface TestSource { /** * Discriminator value for a particular test source. * @maxLength 512 */ type?: string; /** Test source details. */ details?: Record | null; } /** Job logs. */ interface DataMovementJobLogs { /** * ID of the job from which to export logs. * @format GUID */ jobId?: string; } /** File. */ interface ExternalFileSource { /** File format. If not specified, automatically determined by Wix. */ format?: FileFormatWithLiterals; /** * URL where the source file is located. * @maxLength 2048 * @format WEB_URL */ url?: string; } /** Google Sheets source. */ interface GoogleSheetsSource { /** * ID of the Google Sheets spreadsheet. * @minLength 1 * @maxLength 256 */ spreadsheetId?: string; /** * Name of the sheet within the spreadsheet. * @maxLength 256 */ sheetName?: string | null; /** * Range of cells within the sheet. * @maxLength 256 */ range?: string | null; /** * Entity ID of the saved OAuth token. * @format GUID */ oauthTokenId?: string; } /** Wix Media Manager source. */ interface WixMediaSource { /** * ID of the source folder in the Media Manager. If not specified, all media items are included. * @maxLength 256 */ sourceFolderId?: string | null; } /** Exports collection structure (fields, permissions, etc.) from a site. */ interface WixDataCollectionDefinitionSource { /** * IDs of collections whose definitions to read. * @minSize 1 * @maxSize 1000 * @maxLength 256 */ collectionIds?: string[]; } interface Destination extends DestinationDestinationOneOf { /** * Wix data collection. * * You can move items to native Wix collections, [Wix app collections](https://dev.wix.com/docs/develop-websites/articles/databases/wix-data/collections/working-with-wix-app-collections-and-code), and [external database collections](https://dev.wix.com/docs/develop-websites/articles/databases/external-databases/overview/integrating-external-databases-with-your-wix-site). */ wixDataCollection?: WixDataDestination; /** * Localized CMS content. Available when the site has [Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-an-overview) installed. * * Learn more about working with [translated CMS content](https://support.wix.com/en/article/wix-multilingual-translating-cms-collection-content). */ localization?: LocalizationDestination; /** Downloadable file with the moved items. */ file?: FileDestination; } /** @oneof */ interface DestinationDestinationOneOf { /** * Wix data collection. * * You can move items to native Wix collections, [Wix app collections](https://dev.wix.com/docs/develop-websites/articles/databases/wix-data/collections/working-with-wix-app-collections-and-code), and [external database collections](https://dev.wix.com/docs/develop-websites/articles/databases/external-databases/overview/integrating-external-databases-with-your-wix-site). */ wixDataCollection?: WixDataDestination; /** * Localized CMS content. Available when the site has [Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-an-overview) installed. * * Learn more about working with [translated CMS content](https://support.wix.com/en/article/wix-multilingual-translating-cms-collection-content). */ localization?: LocalizationDestination; /** Downloadable file with the moved items. */ file?: FileDestination; } /** Wix data collection. */ interface WixDataDestination { /** * ID of the destination collection. * @maxLength 256 */ collectionId?: string; /** * When items already exist in the destination collection, the data writing policy. * * Default: `OVERWRITE`. */ writePolicy?: WixDataDestinationWritePolicyWithLiterals; } declare enum WixDataDestinationWritePolicy { /** When an item with the same ID exists in the collection, overwrite it. */ OVERWRITE = "OVERWRITE", /** When an item with the same ID exists in the collection, skip it. */ SKIP_EXISTING = "SKIP_EXISTING", /** Clear the destination collection before moving data. When the job completes, the collection contains only the moved data. */ TRUNCATE_BEFORE = "TRUNCATE_BEFORE" } /** @enumType */ type WixDataDestinationWritePolicyWithLiterals = WixDataDestinationWritePolicy | 'OVERWRITE' | 'SKIP_EXISTING' | 'TRUNCATE_BEFORE'; interface LocalizationDestination { /** * Translated CMS content in the specified languages. Content in these languages is imported from the source, with the first specified language treated as the main one. * * Use two-letter language codes in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) format. You can also specify a two-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements) format. * * Learn more about [available languages in Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-languages-available). * @minSize 2 * @maxSize 64 * @format LANGUAGE_TAG */ languages?: string[]; } /** Destination file. Creates a file and generates a download URL. */ interface FileDestination { /** File format. */ format?: FileFormatWithLiterals; /** * File name. * @maxLength 512 */ fileName?: string | null; /** * File download URL. * @readonly * @maxLength 2048 */ url?: string; } /** Schema used to specify item format. */ interface Schema { /** * Item fields to move to the destination file. * @maxSize 1000 */ fields?: V1Field[]; } interface StoresCatalogProductsDestination { } /** Wix Media Manager destination. */ interface WixMediaDestination { /** * ID of the target folder in the Media Manager. If not specified, media is imported to the root folder. * @maxLength 256 */ targetFolderId?: string | null; } declare enum WixMediaDestinationWritePolicy { /** Overwrite existing media with the same name. */ OVERWRITE = "OVERWRITE", /** Skip media that already exists. */ SKIP_EXISTING = "SKIP_EXISTING" } /** @enumType */ type WixMediaDestinationWritePolicyWithLiterals = WixMediaDestinationWritePolicy | 'OVERWRITE' | 'SKIP_EXISTING'; /** Creates empty Wix data collections (no data items are inserted). */ interface WixDataCollectionDefinitionDestination { /** Policy for handling collections that already exist on the target site. */ writePolicy?: WritePolicyWithLiterals; } declare enum WritePolicy { /** Only create new collections. Skip collections that already exist on the target site. */ SKIP_EXISTING = "SKIP_EXISTING", /** Create new collections and overwrite existing ones. */ OVERWRITE = "OVERWRITE" } /** @enumType */ type WritePolicyWithLiterals = WritePolicy | 'SKIP_EXISTING' | 'OVERWRITE'; interface StoresCatalogInventoryDestination { } interface TestDestination { /** * Discriminator value for a particular test destination. * @maxLength 512 */ type?: string; /** Test destination details. */ details?: Record | null; } interface Transformation extends TransformationTransformationOneOf { } /** @oneof */ interface TransformationTransformationOneOf { } interface TestTransformation { } /** When the job's status is `IN_PROGRESS`, the job's progress details. */ interface Progress { /** * Number of units already processed. * @readonly */ current?: number; /** * Total number of units to move. * @readonly */ total?: number | null; /** Number of items that failed to move to the destination. */ itemsRejected?: number; /** Number of items successfully moved to the destination. */ itemsSuccessful?: number; } interface ItemsSuccessfulInfo { /** Number of new items created in the destination. */ itemsCreated?: number; /** Number of existing items updated in the destination. */ itemsUpdated?: number; /** * Number of items whose movement was partially successful. * * > **Note**: Call List Movement Logs for additional details. */ itemsPartiallySuccessful?: number; } declare enum Units { /** Unit of bytes. */ BYTES = "BYTES", /** Unit of items. */ ITEMS = "ITEMS" } /** @enumType */ type UnitsWithLiterals = Units | 'BYTES' | 'ITEMS'; interface ApplicationError { /** Error code. */ code?: string; /** Description of the error. */ description?: string; /** Data related to the error. */ data?: Record | null; } interface PartiallySuccessfulStatusOptions { /** * Reason the job was partially successful. * @maxLength 1000 */ cause?: string; } 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 SubmitJobRequest extends SubmitJobRequestSiteOverrideOneOf { /** * When moving data from the Wix data collection of a site other than the current one, the source site ID. * * By default, the source site is the current site. However, you can move data from any site in the same [Wix Account](https://support.wix.com/en/article/managing-multiple-sites-under-one-account). * * > **Note**: You can specify the ID of another source site or destination site, but not both. * @format GUID */ sourceSiteId?: string; /** * When moving data to the Wix data collection of a site other than the current one, the destination site ID. * * By default, the destination site is the current site. However, you can move data to any site in the same [Wix Account](https://support.wix.com/en/article/managing-multiple-sites-under-one-account) by specifying its ID. You can retrieve this ID by calling [Get App Instance](https://dev.wix.com/docs/rest/app-management/app-instance/get-app-instance). * * > **Note**: You can specify the ID of another source site or destination site, but not both. * @format GUID */ destinationSiteId?: string; /** Source to move data from. */ source: Source; /** Destination to move data to. */ destination: Destination; /** Job name. */ name?: string; } /** @oneof */ interface SubmitJobRequestSiteOverrideOneOf { /** * When moving data from the Wix data collection of a site other than the current one, the source site ID. * * By default, the source site is the current site. However, you can move data from any site in the same [Wix Account](https://support.wix.com/en/article/managing-multiple-sites-under-one-account). * * > **Note**: You can specify the ID of another source site or destination site, but not both. * @format GUID */ sourceSiteId?: string; /** * When moving data to the Wix data collection of a site other than the current one, the destination site ID. * * By default, the destination site is the current site. However, you can move data to any site in the same [Wix Account](https://support.wix.com/en/article/managing-multiple-sites-under-one-account) by specifying its ID. You can retrieve this ID by calling [Get App Instance](https://dev.wix.com/docs/rest/app-management/app-instance/get-app-instance). * * > **Note**: You can specify the ID of another source site or destination site, but not both. * @format GUID */ destinationSiteId?: string; } interface SubmitJobResponse { /** Details of the submitted job. */ job?: DataMovementJob; } interface CreateFileUploadUrlRequest { /** * Name of uploaded file. * @maxLength 512 */ fileName?: string | null; } interface CreateFileUploadUrlResponse { /** * File ID. * @maxLength 512 */ fileId?: string; /** * URL to which you can upload the file. * @maxLength 8192 */ uploadUrl?: string; } interface GetJobRequest { /** * Job ID. * @format GUID */ jobId: string; } interface GetJobResponse { /** Details of the retrieved job. */ job?: DataMovementJob; } interface ListJobsRequest { /** Paging metadata. */ paging?: CommonCursorPaging; } interface CommonCursorPaging { /** * Maximum number of items to return in the results. * @max 100 */ limit?: number | null; /** * Pointer to the next or previous page in the list of results. * * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. * @maxLength 16000 */ cursor?: string | null; } interface QueryV2 extends QueryV2PagingMethodOneOf { /** Paging options to limit and offset the number of items. */ paging?: CommonPaging; /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */ cursorPaging?: CommonCursorPaging; /** * Filter object. * * Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters). */ filter?: Record | null; /** * Sort object. * * Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting). */ sort?: WixCommonSorting[]; /** Array of projected fields. A list of specific field names to return. If `fieldsets` are also specified, the union of `fieldsets` and `fields` is returned. */ fields?: string[]; /** Array of named, predefined sets of projected fields. A array of predefined named sets of fields to be returned. Specifying multiple `fieldsets` will return the union of fields from all sets. If `fields` are also specified, the union of `fieldsets` and `fields` is returned. */ fieldsets?: string[]; } /** @oneof */ interface QueryV2PagingMethodOneOf { /** Paging options to limit and offset the number of items. */ paging?: CommonPaging; /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */ cursorPaging?: CommonCursorPaging; } interface WixCommonSorting { /** * Name of the field to sort by. * @maxLength 512 */ fieldName?: string; /** Sort order. */ order?: CommonSortOrderWithLiterals; } declare enum CommonSortOrder { ASC = "ASC", DESC = "DESC" } /** @enumType */ type CommonSortOrderWithLiterals = CommonSortOrder | 'ASC' | 'DESC'; interface CommonPaging { /** Number of items to load. */ limit?: number | null; /** Number of items to skip in the current sort order. */ offset?: number | null; } interface ListJobsResponse { /** List of jobs for the current site. */ jobs?: DataMovementJob[]; /** Paging metadata. */ pagingMetadata?: CursorPagingMetadata; } interface CursorPagingMetadata { /** Number of items returned in current page. */ count?: number | null; /** Cursor strings that point to the next page, previous page, or both. */ cursors?: Cursors; /** * Whether there are more pages to retrieve following the current page. * * + `true`: Another page of results can be retrieved. * + `false`: This is the last page. */ hasNext?: boolean | null; } interface Cursors { /** * Cursor string pointing to the next page in the list of results. * @maxLength 16000 */ next?: string | null; /** * Cursor pointing to the previous page in the list of results. * @maxLength 16000 */ prev?: string | null; } interface QueryJobsRequest { /** Query preferences. Learn more about [API Query Language](https://dev.wix.com/api/rest/getting-started/api-query-language). */ query?: CursorQuery; } interface CursorQuery extends CursorQueryPagingMethodOneOf { /** * Cursor paging options. * * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging). */ cursorPaging?: CommonCursorPaging; /** * Filter object. * * Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters). */ filter?: Record | null; /** * Sort object. * * Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting). * @maxSize 5 */ sort?: WixCommonSorting[]; } /** @oneof */ interface CursorQueryPagingMethodOneOf { /** * Cursor paging options. * * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging). */ cursorPaging?: CommonCursorPaging; } interface QueryJobsResponse { /** List of jobs matching the query. */ jobs?: DataMovementJob[]; /** Paging metadata. */ pagingMetadata?: CursorPagingMetadata; } interface TerminateJobRequest { /** * ID of the job to terminate. * @format GUID */ jobId: string; } interface TerminateJobResponse { /** Details of the terminated job. */ job?: DataMovementJob; } interface ListMovementLogsRequest { /** * ID of the job for which to list logs. * @format GUID */ jobId: string; /** Paging metadata. */ paging?: CommonCursorPaging; } interface ListMovementLogsResponse { /** Job logs. */ logs?: MovementLog[]; /** Paging metadata. */ pagingMetadata?: CursorPagingMetadata; } /** * Details about the attempt to move the source item. * * Logs are generated by the destination for each item that failed to move. Some destination also generate logs for items that successfully moved. */ interface MovementLog { /** * ID of the item in the source, such as a Wix Data Item or a row number in a CSV file. * @maxLength 512 */ sourceItemId?: string; /** Details about the failure if moving the item fails. */ failure?: ApplicationError; /** * Additional details provided when moving the item succeeds with details. * * > **Note**: Each destination type determines the structure of its `details` object. */ details?: Record | null; } interface JobCallback extends JobCallbackOptionsOneOf { /** Options for the callback's `IN_PROGRESS` stage. */ inProgressOptions?: InProgressOptions; /** Options for the callback's `FAILED` stage. */ failedOptions?: FailedOptions; /** Options for the callback's `PARTIALLY_SUCCESSFUL` stage. */ partiallySuccessfulOptions?: PartiallySuccessfulOptions; /** * ID of the job that triggered this callback. * @format GUID */ jobId?: string; /** Job status. */ status?: JobStatusWithLiterals; /** Additional data to be merged into the job entity's extended_fields. */ additionalData?: ExtendedFields; } /** @oneof */ interface JobCallbackOptionsOneOf { /** Options for the callback's `IN_PROGRESS` stage. */ inProgressOptions?: InProgressOptions; /** Options for the callback's `FAILED` stage. */ failedOptions?: FailedOptions; /** Options for the callback's `PARTIALLY_SUCCESSFUL` stage. */ partiallySuccessfulOptions?: PartiallySuccessfulOptions; } interface InProgressOptions { /** When the job status is `IN_PROGRESS`, the job progress information. */ progress?: Progress; /** * Job movement log. Includes information about failed items or items that succeeded with notes. * @maxSize 1024 */ log?: MovementLog[]; } interface FailedOptions { /** Details of the failure. */ error?: ApplicationError; } interface PartiallySuccessfulOptions { /** * Why the job was partially successful. * @maxLength 1000 */ cause?: string; } interface Empty { } interface TerminateJobByIdRequest { /** * ID of the job to terminate. * @format GUID */ jobId?: string; } interface TerminateJobByIdResponse { /** Details of the terminated job. */ job?: DataMovementJob; } 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; } type __PublicMethodMetaInfo = { getUrl: (context: any) => string; httpMethod: K; path: string; pathParams: M; __requestType: T; __originalRequestType: S; __responseType: Q; __originalResponseType: R; }; declare function submitJob(): __PublicMethodMetaInfo<'POST', {}, SubmitJobRequest$1, SubmitJobRequest, SubmitJobResponse$1, SubmitJobResponse>; declare function createFileUploadUrl(): __PublicMethodMetaInfo<'POST', {}, CreateFileUploadUrlRequest$1, CreateFileUploadUrlRequest, CreateFileUploadUrlResponse$1, CreateFileUploadUrlResponse>; declare function getJob(): __PublicMethodMetaInfo<'GET', { jobId: string; }, GetJobRequest$1, GetJobRequest, GetJobResponse$1, GetJobResponse>; declare function listJobs(): __PublicMethodMetaInfo<'GET', {}, ListJobsRequest$1, ListJobsRequest, ListJobsResponse$1, ListJobsResponse>; declare function queryJobs(): __PublicMethodMetaInfo<'GET', {}, QueryJobsRequest$1, QueryJobsRequest, QueryJobsResponse$1, QueryJobsResponse>; declare function terminateJob(): __PublicMethodMetaInfo<'POST', { jobId: string; }, TerminateJobRequest$1, TerminateJobRequest, TerminateJobResponse$1, TerminateJobResponse>; declare function listMovementLogs(): __PublicMethodMetaInfo<'GET', { jobId: string; }, ListMovementLogsRequest$1, ListMovementLogsRequest, ListMovementLogsResponse$1, ListMovementLogsResponse>; export { type AbsOperation as AbsOperationOriginal, type AccountInfo as AccountInfoOriginal, type AccumulatorExpressionOneOf as AccumulatorExpressionOneOfOriginal, type Accumulator as AccumulatorOriginal, type ActionEvent as ActionEventOriginal, type AddField as AddFieldOriginal, type AddFields as AddFieldsOriginal, type AddOperation as AddOperationOriginal, type AggregationPipeline as AggregationPipelineOriginal, type AggregationPipelinePagingMethodOneOf as AggregationPipelinePagingMethodOneOfOriginal, type AggregationQuery as AggregationQueryOriginal, type ApplicationError as ApplicationErrorOriginal, type Avg as AvgOriginal, type CeilOperation as CeilOperationOriginal, type CommonCursorPaging as CommonCursorPagingOriginal, type CommonPaging as CommonPagingOriginal, CommonSortOrder as CommonSortOrderOriginal, type CommonSortOrderWithLiterals as CommonSortOrderWithLiteralsOriginal, type CommonSorting as CommonSortingOriginal, type ConcatOperation as ConcatOperationOriginal, type ConditionOperation as ConditionOperationOriginal, type CreateFileUploadUrlRequest as CreateFileUploadUrlRequestOriginal, type CreateFileUploadUrlResponse as CreateFileUploadUrlResponseOriginal, type CursorPagingMetadata as CursorPagingMetadataOriginal, type CursorPaging as CursorPagingOriginal, type CursorQuery as CursorQueryOriginal, type CursorQueryPagingMethodOneOf as CursorQueryPagingMethodOneOfOriginal, type Cursors as CursorsOriginal, type DataMovementJobLogs as DataMovementJobLogsOriginal, type DataMovementJob as DataMovementJobOriginal, type DataMovementJobStatusOptionsOneOf as DataMovementJobStatusOptionsOneOfOriginal, type DestinationDestinationOneOf as DestinationDestinationOneOfOriginal, type Destination as DestinationOriginal, type DivideOperation as DivideOperationOriginal, type DomainEventBodyOneOf as DomainEventBodyOneOfOriginal, type DomainEvent as DomainEventOriginal, type Empty as EmptyOriginal, type EntityCreatedEvent as EntityCreatedEventOriginal, type EntityDeletedEvent as EntityDeletedEventOriginal, type EntityUpdatedEvent as EntityUpdatedEventOriginal, type Exclude as ExcludeOriginal, type Expression as ExpressionOriginal, type ExpressionValueOneOf as ExpressionValueOneOfOriginal, type ExtendedFields as ExtendedFieldsOriginal, type ExternalFileSource as ExternalFileSourceOriginal, type FailedOptions as FailedOptionsOriginal, type Field as FieldOriginal, type FieldProjectionOneOf as FieldProjectionOneOfOriginal, FieldType as FieldTypeOriginal, type FieldTypeWithLiterals as FieldTypeWithLiteralsOriginal, type FileDestination as FileDestinationOriginal, FileFormat as FileFormatOriginal, type FileFormatWithLiterals as FileFormatWithLiteralsOriginal, type FileSource as FileSourceOriginal, type FilterQuery as FilterQueryOriginal, type First as FirstOriginal, type FloorOperation as FloorOperationOriginal, type GetJobRequest as GetJobRequestOriginal, type GetJobResponse as GetJobResponseOriginal, type GoogleSheetsSource as GoogleSheetsSourceOriginal, type GreaterThanOperation as GreaterThanOperationOriginal, type GroupId as GroupIdOriginal, type Group as GroupOriginal, type IdentificationDataIdOneOf as IdentificationDataIdOneOfOriginal, type IdentificationData as IdentificationDataOriginal, type InProgressOptions as InProgressOptionsOriginal, type Include as IncludeOriginal, type ItemsSuccessfulInfo as ItemsSuccessfulInfoOriginal, type JobCallbackOptionsOneOf as JobCallbackOptionsOneOfOriginal, type JobCallback as JobCallbackOriginal, JobStatus as JobStatusOriginal, type JobStatusWithLiterals as JobStatusWithLiteralsOriginal, type Last as LastOriginal, type LengthOperation as LengthOperationOriginal, type ListJobsRequest as ListJobsRequestOriginal, type ListJobsResponse as ListJobsResponseOriginal, type ListMovementLogsRequest as ListMovementLogsRequestOriginal, type ListMovementLogsResponse as ListMovementLogsResponseOriginal, type LocalizationDestination as LocalizationDestinationOriginal, type LocalizationSource as LocalizationSourceOriginal, type Lookup as LookupOriginal, type Max as MaxOriginal, MediaType as MediaTypeOriginal, type MediaTypeWithLiterals as MediaTypeWithLiteralsOriginal, type MessageEnvelope as MessageEnvelopeOriginal, type Min as MinOriginal, type ModOperation as ModOperationOriginal, type MovementLog as MovementLogOriginal, type MultiplyOperation as MultiplyOperationOriginal, type ObjectToArray as ObjectToArrayOriginal, type Paging as PagingOriginal, type PartiallySuccessfulOptions as PartiallySuccessfulOptionsOriginal, type PartiallySuccessfulStatusOptions as PartiallySuccessfulStatusOptionsOriginal, type Progress as ProgressOriginal, type ProjectNested as ProjectNestedOriginal, type Projection as ProjectionOriginal, type Push as PushOriginal, type QueryJobsRequest as QueryJobsRequestOriginal, type QueryJobsResponse as QueryJobsResponseOriginal, type QueryV2 as QueryV2Original, type QueryV2PagingMethodOneOf as QueryV2PagingMethodOneOfOriginal, type Reshape as ReshapeOriginal, type RestoreInfo as RestoreInfoOriginal, type Schema as SchemaOriginal, type SizeOperation as SizeOperationOriginal, SortOrder as SortOrderOriginal, type SortOrderWithLiterals as SortOrderWithLiteralsOriginal, type Sorting as SortingOriginal, type Source as SourceOriginal, type SourceSourceOneOf as SourceSourceOneOfOriginal, type Stage as StageOriginal, type StageStageOneOf as StageStageOneOfOriginal, type StoresCatalogInventoryDestination as StoresCatalogInventoryDestinationOriginal, type StoresCatalogProductsDestination as StoresCatalogProductsDestinationOriginal, type StringifyOperation as StringifyOperationOriginal, type SubmitJobRequest as SubmitJobRequestOriginal, type SubmitJobRequestSiteOverrideOneOf as SubmitJobRequestSiteOverrideOneOfOriginal, type SubmitJobResponse as SubmitJobResponseOriginal, type SubstringOperation as SubstringOperationOriginal, type SubtractOperation as SubtractOperationOriginal, type SumOperation as SumOperationOriginal, type Sum as SumOriginal, type TerminateJobByIdRequest as TerminateJobByIdRequestOriginal, type TerminateJobByIdResponse as TerminateJobByIdResponseOriginal, type TerminateJobRequest as TerminateJobRequestOriginal, type TerminateJobResponse as TerminateJobResponseOriginal, type TestDestination as TestDestinationOriginal, type TestSource as TestSourceOriginal, type TestTransformation as TestTransformationOriginal, type ToLowerOperation as ToLowerOperationOriginal, type ToUpperOperation as ToUpperOperationOriginal, type Transformation as TransformationOriginal, type TransformationTransformationOneOf as TransformationTransformationOneOfOriginal, type UnionWith as UnionWithOriginal, Units as UnitsOriginal, type UnitsWithLiterals as UnitsWithLiteralsOriginal, type UnwindArray as UnwindArrayOriginal, type V1Field as V1FieldOriginal, WebhookIdentityType as WebhookIdentityTypeOriginal, type WebhookIdentityTypeWithLiterals as WebhookIdentityTypeWithLiteralsOriginal, type WixCommonSorting as WixCommonSortingOriginal, type WixDataCollectionDefinitionDestination as WixDataCollectionDefinitionDestinationOriginal, type WixDataCollectionDefinitionSource as WixDataCollectionDefinitionSourceOriginal, type WixDataDestination as WixDataDestinationOriginal, WixDataDestinationWritePolicy as WixDataDestinationWritePolicyOriginal, type WixDataDestinationWritePolicyWithLiterals as WixDataDestinationWritePolicyWithLiteralsOriginal, WixDataEnvironment as WixDataEnvironmentOriginal, type WixDataEnvironmentWithLiterals as WixDataEnvironmentWithLiteralsOriginal, type WixDataSource as WixDataSourceOriginal, type WixDataSourceQueryOneOf as WixDataSourceQueryOneOfOriginal, type WixMediaDestination as WixMediaDestinationOriginal, WixMediaDestinationWritePolicy as WixMediaDestinationWritePolicyOriginal, type WixMediaDestinationWritePolicyWithLiterals as WixMediaDestinationWritePolicyWithLiteralsOriginal, type WixMediaSource as WixMediaSourceOriginal, WritePolicy as WritePolicyOriginal, type WritePolicyWithLiterals as WritePolicyWithLiteralsOriginal, type __PublicMethodMetaInfo, createFileUploadUrl, getJob, listJobs, listMovementLogs, queryJobs, submitJob, terminateJob };