@wix/auto_sdk_vod_channels 0.0.0-stage → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/index.d.ts +1335 -0
- package/build/cjs/index.js +580 -0
- package/build/cjs/index.js.map +1 -0
- package/build/cjs/index.typings.d.ts +1 -0
- package/build/cjs/index.typings.js +559 -0
- package/build/cjs/index.typings.js.map +1 -0
- package/build/cjs/meta.d.ts +1348 -0
- package/build/cjs/meta.js +543 -0
- package/build/cjs/meta.js.map +1 -0
- package/build/es/index.d.mts +1335 -0
- package/build/es/index.mjs +533 -0
- package/build/es/index.mjs.map +1 -0
- package/build/es/index.typings.d.mts +1 -0
- package/build/es/index.typings.mjs +512 -0
- package/build/es/index.typings.mjs.map +1 -0
- package/build/es/meta.d.mts +1348 -0
- package/build/es/meta.mjs +493 -0
- package/build/es/meta.mjs.map +1 -0
- package/build/es/package.json +3 -0
- package/build/internal/cjs/index.d.ts +30 -0
- package/build/internal/cjs/index.typings.d.ts +1370 -0
- package/build/internal/cjs/meta.d.ts +1362 -0
- package/build/internal/es/index.d.mts +30 -0
- package/build/internal/es/index.typings.d.mts +1370 -0
- package/build/internal/es/meta.d.mts +1362 -0
- package/meta/package.json +3 -0
- package/package.json +51 -3
- package/README.md +0 -3
|
@@ -0,0 +1,1335 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A channel: a collection of videos on a Wix site, shown together in a Wix Video gallery. Its videos are managed on
|
|
3
|
+
* the site, or mirrored from a YouTube channel. List its videos with `QueryChannelVideos`.
|
|
4
|
+
*/
|
|
5
|
+
interface Channel extends ChannelSourceDetailsOneOf {
|
|
6
|
+
/** Set when `source` is YOUTUBE. */
|
|
7
|
+
youtubeDetails?: YoutubeDetails;
|
|
8
|
+
/**
|
|
9
|
+
* Channel ID.
|
|
10
|
+
* @format GUID
|
|
11
|
+
* @readonly
|
|
12
|
+
*/
|
|
13
|
+
_id?: string;
|
|
14
|
+
/**
|
|
15
|
+
* When the channel was created.
|
|
16
|
+
* @readonly
|
|
17
|
+
*/
|
|
18
|
+
_createdDate?: Date | null;
|
|
19
|
+
/**
|
|
20
|
+
* When the channel was last updated.
|
|
21
|
+
* @readonly
|
|
22
|
+
*/
|
|
23
|
+
_updatedDate?: Date | null;
|
|
24
|
+
/**
|
|
25
|
+
* ID of the site the channel belongs to.
|
|
26
|
+
* @format GUID
|
|
27
|
+
* @readonly
|
|
28
|
+
*/
|
|
29
|
+
siteId?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Channel title.
|
|
32
|
+
* @maxLength 250
|
|
33
|
+
*/
|
|
34
|
+
title?: string | null;
|
|
35
|
+
/**
|
|
36
|
+
* Channel description.
|
|
37
|
+
* @maxLength 10000
|
|
38
|
+
*/
|
|
39
|
+
description?: string | null;
|
|
40
|
+
/** Where the channel's videos come from. Selects which `source_details` member is set. */
|
|
41
|
+
source?: SourceWithLiterals;
|
|
42
|
+
/**
|
|
43
|
+
* How visitors get access to the channel's videos: through pricing plans, and whether a channel purchase is
|
|
44
|
+
* required. Not set for YOUTUBE channels.
|
|
45
|
+
*/
|
|
46
|
+
pricing?: Pricing;
|
|
47
|
+
/**
|
|
48
|
+
* ID of the channel's featured video; the video itself is in `featured_video`. Not set for YOUTUBE channels.
|
|
49
|
+
* @format GUID
|
|
50
|
+
*/
|
|
51
|
+
featuredVideoId?: string | null;
|
|
52
|
+
/**
|
|
53
|
+
* The channel's position in the owner's dashboard.
|
|
54
|
+
* Returned only to callers with the `video:v4:channel:channel_read_private_fields` permission.
|
|
55
|
+
*/
|
|
56
|
+
customOrder?: number | null;
|
|
57
|
+
/** The channel's cover image; see Cover. */
|
|
58
|
+
cover?: Cover;
|
|
59
|
+
/** The channel's trailer; see Trailer. */
|
|
60
|
+
trailer?: Trailer;
|
|
61
|
+
/**
|
|
62
|
+
* Who created the channel.
|
|
63
|
+
* @readonly
|
|
64
|
+
*/
|
|
65
|
+
createdBy?: IdentificationData;
|
|
66
|
+
/**
|
|
67
|
+
* The categories and tags of the channel's videos; see VideoFacets. Empty for YOUTUBE channels.
|
|
68
|
+
* @readonly
|
|
69
|
+
*/
|
|
70
|
+
videoFacets?: VideoFacets;
|
|
71
|
+
/**
|
|
72
|
+
* The featured video, with its `video`. Unset when the featured video isn't VISIBLE or isn't published yet.
|
|
73
|
+
* @readonly
|
|
74
|
+
*/
|
|
75
|
+
featuredVideo?: ChannelVideo;
|
|
76
|
+
}
|
|
77
|
+
/** @oneof */
|
|
78
|
+
interface ChannelSourceDetailsOneOf {
|
|
79
|
+
/** Set when `source` is YOUTUBE. */
|
|
80
|
+
youtubeDetails?: YoutubeDetails;
|
|
81
|
+
}
|
|
82
|
+
/** Which cover option is shown. */
|
|
83
|
+
declare enum Choice {
|
|
84
|
+
/** Picked automatically from the channel's videos, or the YouTube channel image. */
|
|
85
|
+
AUTOMATIC = "AUTOMATIC",
|
|
86
|
+
/** Uploaded by the site owner. */
|
|
87
|
+
CUSTOM = "CUSTOM"
|
|
88
|
+
}
|
|
89
|
+
/** @enumType */
|
|
90
|
+
type ChoiceWithLiterals = Choice | 'AUTOMATIC' | 'CUSTOM';
|
|
91
|
+
/**
|
|
92
|
+
* A video file uploaded to Wix, and its processing state. Used for uploaded videos (`Video.media`), video trailers
|
|
93
|
+
* (`Video.trailer`) and channel trailers (`Channel.trailer`). It holds no playback URL: a trailer's URL is in its
|
|
94
|
+
* `playback` field, and a video's comes from `GenerateVideoPlaybackUrl`.
|
|
95
|
+
* Conditional fields use the Video permission, also under `Channel.trailer`: one annotation names one permission.
|
|
96
|
+
*/
|
|
97
|
+
interface WixMediaVideo {
|
|
98
|
+
/**
|
|
99
|
+
* The storage system that holds the file.
|
|
100
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission, also under
|
|
101
|
+
* `Channel.trailer`.
|
|
102
|
+
*/
|
|
103
|
+
storage?: StorageInfo;
|
|
104
|
+
/**
|
|
105
|
+
* Processing state of the file. For the video's own file it sets `Video.status`, except a live stream's recording,
|
|
106
|
+
* which stays VISIBLE while processed; a trailer's file doesn't.
|
|
107
|
+
*/
|
|
108
|
+
status?: MediaStatusWithLiterals;
|
|
109
|
+
/**
|
|
110
|
+
* Why the upload or processing failed. Set only when `status` is FAILED.
|
|
111
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission, also under
|
|
112
|
+
* `Channel.trailer`.
|
|
113
|
+
*/
|
|
114
|
+
error?: MediaError;
|
|
115
|
+
/**
|
|
116
|
+
* ID of the file in Wix storage.
|
|
117
|
+
* @maxLength 256
|
|
118
|
+
*/
|
|
119
|
+
fileId?: string | null;
|
|
120
|
+
/**
|
|
121
|
+
* Name of the file the owner uploaded.
|
|
122
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission, also under
|
|
123
|
+
* `Channel.trailer`.
|
|
124
|
+
* @maxLength 2560
|
|
125
|
+
*/
|
|
126
|
+
originalName?: string | null;
|
|
127
|
+
/**
|
|
128
|
+
* A frame of the video picked by Wix. To show a video's image, use `Video.cover`.
|
|
129
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
130
|
+
* @format WEB_URL
|
|
131
|
+
*/
|
|
132
|
+
thumbnailUrl?: string | null;
|
|
133
|
+
/** Length of the video in milliseconds. */
|
|
134
|
+
durationInMillis?: string | null;
|
|
135
|
+
/** File size in bytes. */
|
|
136
|
+
sizeInBytes?: string | null;
|
|
137
|
+
/**
|
|
138
|
+
* The resolutions the file is available in, e.g. to list the qualities a viewer can pick.
|
|
139
|
+
* @maxSize 10
|
|
140
|
+
*/
|
|
141
|
+
qualities?: MediaQualityWithLiterals[];
|
|
142
|
+
/**
|
|
143
|
+
* Who uploaded the file.
|
|
144
|
+
* @readonly
|
|
145
|
+
*/
|
|
146
|
+
createdBy?: IdentificationData;
|
|
147
|
+
/**
|
|
148
|
+
* When the file was uploaded.
|
|
149
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
150
|
+
* @readonly
|
|
151
|
+
*/
|
|
152
|
+
_createdDate?: Date | null;
|
|
153
|
+
/**
|
|
154
|
+
* When the file or its processing state last changed.
|
|
155
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
156
|
+
* @readonly
|
|
157
|
+
*/
|
|
158
|
+
_updatedDate?: Date | null;
|
|
159
|
+
}
|
|
160
|
+
/** The storage system that holds a file. */
|
|
161
|
+
declare enum Storage {
|
|
162
|
+
PRIVATE_MEDIA_V3 = "PRIVATE_MEDIA_V3",
|
|
163
|
+
MEDIA_PLATFORM_V1 = "MEDIA_PLATFORM_V1"
|
|
164
|
+
}
|
|
165
|
+
/** @enumType */
|
|
166
|
+
type StorageWithLiterals = Storage | 'PRIVATE_MEDIA_V3' | 'MEDIA_PLATFORM_V1';
|
|
167
|
+
/** The storage system that holds the file. */
|
|
168
|
+
interface StorageInfo {
|
|
169
|
+
/** The storage system that holds the file. */
|
|
170
|
+
value?: StorageWithLiterals;
|
|
171
|
+
}
|
|
172
|
+
/** Processing state of a video file. Playback URLs are generated only for READY files. */
|
|
173
|
+
declare enum MediaStatus {
|
|
174
|
+
/** Uploaded and waiting to be processed. */
|
|
175
|
+
IN_QUEUE = "IN_QUEUE",
|
|
176
|
+
/** Being processed. */
|
|
177
|
+
IN_PROGRESS = "IN_PROGRESS",
|
|
178
|
+
/** Processed and ready to play. */
|
|
179
|
+
READY = "READY",
|
|
180
|
+
/** Processing failed. See `WixMediaVideo.error`. */
|
|
181
|
+
FAILED = "FAILED"
|
|
182
|
+
}
|
|
183
|
+
/** @enumType */
|
|
184
|
+
type MediaStatusWithLiterals = MediaStatus | 'IN_QUEUE' | 'IN_PROGRESS' | 'READY' | 'FAILED';
|
|
185
|
+
/** Why a video file failed to upload or process. */
|
|
186
|
+
interface MediaError {
|
|
187
|
+
/**
|
|
188
|
+
* Error key from Wix Media, e.g. `wpm_error.site_quota_total_storage_exceeded`, which other Wix apps use as a
|
|
189
|
+
* translation key.
|
|
190
|
+
* @maxLength 256
|
|
191
|
+
*/
|
|
192
|
+
key?: string;
|
|
193
|
+
/**
|
|
194
|
+
* Short error description from the transcoder.
|
|
195
|
+
* @maxLength 1000
|
|
196
|
+
*/
|
|
197
|
+
message?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Detailed transcoder error message.
|
|
200
|
+
* @maxLength 1000
|
|
201
|
+
*/
|
|
202
|
+
cause?: string;
|
|
203
|
+
}
|
|
204
|
+
/** A video resolution, by its height in pixels. */
|
|
205
|
+
declare enum MediaQuality {
|
|
206
|
+
RES_144P = "RES_144P",
|
|
207
|
+
RES_240P = "RES_240P",
|
|
208
|
+
RES_360P = "RES_360P",
|
|
209
|
+
RES_480P = "RES_480P",
|
|
210
|
+
RES_720P = "RES_720P",
|
|
211
|
+
RES_1080P = "RES_1080P",
|
|
212
|
+
RES_1440P = "RES_1440P",
|
|
213
|
+
RES_2160P = "RES_2160P",
|
|
214
|
+
RES_4320P = "RES_4320P"
|
|
215
|
+
}
|
|
216
|
+
/** @enumType */
|
|
217
|
+
type MediaQualityWithLiterals = MediaQuality | 'RES_144P' | 'RES_240P' | 'RES_360P' | 'RES_480P' | 'RES_720P' | 'RES_1080P' | 'RES_1440P' | 'RES_2160P' | 'RES_4320P';
|
|
218
|
+
interface IdentificationData extends IdentificationDataIdOneOf {
|
|
219
|
+
/**
|
|
220
|
+
* ID of a site visitor that has not logged in to the site.
|
|
221
|
+
* @format GUID
|
|
222
|
+
*/
|
|
223
|
+
anonymousVisitorId?: string;
|
|
224
|
+
/**
|
|
225
|
+
* ID of a site visitor that has logged in to the site.
|
|
226
|
+
* @format GUID
|
|
227
|
+
*/
|
|
228
|
+
memberId?: string;
|
|
229
|
+
/**
|
|
230
|
+
* ID of a Wix user (site owner, contributor, etc.).
|
|
231
|
+
* @format GUID
|
|
232
|
+
*/
|
|
233
|
+
wixUserId?: string;
|
|
234
|
+
/**
|
|
235
|
+
* ID of an app.
|
|
236
|
+
* @format GUID
|
|
237
|
+
*/
|
|
238
|
+
appId?: string;
|
|
239
|
+
/**
|
|
240
|
+
* ID of of a contact in the site's [CRM by Ascend](https://www.wix.com/ascend/crm) system.
|
|
241
|
+
* @format GUID
|
|
242
|
+
*/
|
|
243
|
+
contactId?: string | null;
|
|
244
|
+
}
|
|
245
|
+
/** @oneof */
|
|
246
|
+
interface IdentificationDataIdOneOf {
|
|
247
|
+
/**
|
|
248
|
+
* ID of a site visitor that has not logged in to the site.
|
|
249
|
+
* @format GUID
|
|
250
|
+
*/
|
|
251
|
+
anonymousVisitorId?: string;
|
|
252
|
+
/**
|
|
253
|
+
* ID of a site visitor that has logged in to the site.
|
|
254
|
+
* @format GUID
|
|
255
|
+
*/
|
|
256
|
+
memberId?: string;
|
|
257
|
+
/**
|
|
258
|
+
* ID of a Wix user (site owner, contributor, etc.).
|
|
259
|
+
* @format GUID
|
|
260
|
+
*/
|
|
261
|
+
wixUserId?: string;
|
|
262
|
+
/**
|
|
263
|
+
* ID of an app.
|
|
264
|
+
* @format GUID
|
|
265
|
+
*/
|
|
266
|
+
appId?: string;
|
|
267
|
+
}
|
|
268
|
+
declare enum IdentityType {
|
|
269
|
+
UNKNOWN = "UNKNOWN",
|
|
270
|
+
ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
|
|
271
|
+
MEMBER = "MEMBER",
|
|
272
|
+
WIX_USER = "WIX_USER",
|
|
273
|
+
APP = "APP"
|
|
274
|
+
}
|
|
275
|
+
/** @enumType */
|
|
276
|
+
type IdentityTypeWithLiterals = IdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
|
|
277
|
+
/**
|
|
278
|
+
* A time-limited HLS URL for a video uploaded to Wix. Trailers use it too (`Video.trailer.playback`,
|
|
279
|
+
* `Channel.trailer.playback`).
|
|
280
|
+
*/
|
|
281
|
+
interface WixMediaPlayback {
|
|
282
|
+
/**
|
|
283
|
+
* HLS manifest URL to pass to the player.
|
|
284
|
+
* @format WEB_URL
|
|
285
|
+
*/
|
|
286
|
+
url?: string;
|
|
287
|
+
/** When `url` stops working, about 24 hours after it was generated. */
|
|
288
|
+
expirationDate?: Date | null;
|
|
289
|
+
}
|
|
290
|
+
/** Why `playback` is unset. */
|
|
291
|
+
declare enum PlaybackUnavailableReason {
|
|
292
|
+
/** The site owner turned the trailer off (`enabled` is false). */
|
|
293
|
+
NOT_ENABLED = "NOT_ENABLED",
|
|
294
|
+
/** No trailer file was uploaded. */
|
|
295
|
+
NOT_UPLOADED = "NOT_UPLOADED",
|
|
296
|
+
/** The trailer file is still being processed. */
|
|
297
|
+
PROCESSING = "PROCESSING",
|
|
298
|
+
/** Processing the trailer file failed. */
|
|
299
|
+
FAILED = "FAILED",
|
|
300
|
+
/** The trailer is ready, but its playback URL couldn't be created. Try again later. */
|
|
301
|
+
UNAVAILABLE = "UNAVAILABLE"
|
|
302
|
+
}
|
|
303
|
+
/** @enumType */
|
|
304
|
+
type PlaybackUnavailableReasonWithLiterals = PlaybackUnavailableReason | 'NOT_ENABLED' | 'NOT_UPLOADED' | 'PROCESSING' | 'FAILED' | 'UNAVAILABLE';
|
|
305
|
+
/** Whether the YouTube ID is a playlist ID or a channel ID. */
|
|
306
|
+
declare enum IdType {
|
|
307
|
+
/** `id` is a playlist ID (starts with `PL`, or `UU` for a channel's uploads playlist). */
|
|
308
|
+
PLAYLIST = "PLAYLIST",
|
|
309
|
+
/** `id` is a channel ID (starts with `UC`). */
|
|
310
|
+
CHANNEL = "CHANNEL"
|
|
311
|
+
}
|
|
312
|
+
/** @enumType */
|
|
313
|
+
type IdTypeWithLiterals = IdType | 'PLAYLIST' | 'CHANNEL';
|
|
314
|
+
/** A category or tag of the channel's videos. */
|
|
315
|
+
interface Facet {
|
|
316
|
+
/**
|
|
317
|
+
* The category or tag.
|
|
318
|
+
* @maxLength 250
|
|
319
|
+
* @readonly
|
|
320
|
+
*/
|
|
321
|
+
value?: string;
|
|
322
|
+
}
|
|
323
|
+
/** Where the channel's videos come from. */
|
|
324
|
+
declare enum Source {
|
|
325
|
+
/** The videos are managed on the Wix site. List them with `QueryChannelVideos`. No `source_details`. */
|
|
326
|
+
WIX = "WIX",
|
|
327
|
+
/** The videos come from a YouTube playlist or channel; see `youtube_details`. */
|
|
328
|
+
YOUTUBE = "YOUTUBE"
|
|
329
|
+
}
|
|
330
|
+
/** @enumType */
|
|
331
|
+
type SourceWithLiterals = Source | 'WIX' | 'YOUTUBE';
|
|
332
|
+
/**
|
|
333
|
+
* The YouTube playlist or channel this channel mirrors. Its videos come from YouTube, not from
|
|
334
|
+
* `QueryChannelVideos`.
|
|
335
|
+
*/
|
|
336
|
+
interface YoutubeDetails {
|
|
337
|
+
/**
|
|
338
|
+
* The YouTube playlist ID or channel ID; `id_type` says which.
|
|
339
|
+
* @maxLength 256
|
|
340
|
+
*/
|
|
341
|
+
_id?: string | null;
|
|
342
|
+
/**
|
|
343
|
+
* The playlist's or channel's YouTube URL.
|
|
344
|
+
* @format WEB_URL
|
|
345
|
+
*/
|
|
346
|
+
url?: string | null;
|
|
347
|
+
/**
|
|
348
|
+
* When the playlist or channel was published on YouTube.
|
|
349
|
+
* @readonly
|
|
350
|
+
*/
|
|
351
|
+
publishedDate?: Date | null;
|
|
352
|
+
/**
|
|
353
|
+
* When the channel was last synced from YouTube.
|
|
354
|
+
* Returned only to callers with the `video:v4:channel:channel_read_private_fields` permission.
|
|
355
|
+
* @readonly
|
|
356
|
+
*/
|
|
357
|
+
lastSyncedDate?: Date | null;
|
|
358
|
+
/**
|
|
359
|
+
* False once the playlist or channel no longer exists on YouTube.
|
|
360
|
+
* Returned only to callers with the `video:v4:channel:channel_read_private_fields` permission.
|
|
361
|
+
* @readonly
|
|
362
|
+
*/
|
|
363
|
+
available?: boolean | null;
|
|
364
|
+
/** Whether `id` is a playlist or a channel. */
|
|
365
|
+
idType?: IdTypeWithLiterals;
|
|
366
|
+
}
|
|
367
|
+
/** How visitors can get access to the channel's videos. */
|
|
368
|
+
interface Pricing {
|
|
369
|
+
/**
|
|
370
|
+
* If true, only channel access (a pricing plan, or a legacy channel subscription) gives access to the channel's
|
|
371
|
+
* videos; buying or renting a single video doesn't. False when neither is on, and for YOUTUBE channels.
|
|
372
|
+
* @readonly
|
|
373
|
+
*/
|
|
374
|
+
channelPurchaseRequired?: boolean;
|
|
375
|
+
/**
|
|
376
|
+
* Whether Wix Pricing Plans plans give access to the channel's videos. The plans themselves aren't returned. To
|
|
377
|
+
* list them, call Pricing Plans' `ListPlansByItemIdentifier` with `itemIdentifier.externalId` set to the channel
|
|
378
|
+
* ID and `itemIdentifier.providerAppId` set to `14409595-f076-4753-8303-9a86f9f71469` (Wix Video).
|
|
379
|
+
* @readonly
|
|
380
|
+
*/
|
|
381
|
+
pricingPlansEnabled?: boolean;
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* The channel's cover image. `url` is the cover to show; `choice` says whether it was picked automatically or
|
|
385
|
+
* uploaded by the owner. All URLs are absolute HTTPS URLs.
|
|
386
|
+
*/
|
|
387
|
+
interface Cover {
|
|
388
|
+
/**
|
|
389
|
+
* The cover to show. Unset when the chosen option has no URL.
|
|
390
|
+
* @format WEB_URL
|
|
391
|
+
* @readonly
|
|
392
|
+
*/
|
|
393
|
+
url?: string | null;
|
|
394
|
+
/** Which cover option `url` is. */
|
|
395
|
+
choice?: ChoiceWithLiterals;
|
|
396
|
+
/**
|
|
397
|
+
* The automatic cover: the featured video's cover, else the first VISIBLE video's for WIX channels, or the
|
|
398
|
+
* YouTube channel image for YOUTUBE channels.
|
|
399
|
+
* Returned only to callers with the `video:v4:channel:channel_read_private_fields` permission.
|
|
400
|
+
* @format WEB_URL
|
|
401
|
+
* @readonly
|
|
402
|
+
*/
|
|
403
|
+
automaticUrl?: string | null;
|
|
404
|
+
/**
|
|
405
|
+
* The owner's uploaded cover, or the uploaded trailer's thumbnail.
|
|
406
|
+
* Returned only to callers with the `video:v4:channel:channel_read_private_fields` permission.
|
|
407
|
+
* @format WEB_URL
|
|
408
|
+
* @readonly
|
|
409
|
+
*/
|
|
410
|
+
customUrl?: string | null;
|
|
411
|
+
}
|
|
412
|
+
/** The channel's trailer: a video file the owner uploaded. Not set for YOUTUBE channels. */
|
|
413
|
+
interface Trailer {
|
|
414
|
+
/** Whether the trailer is shown. */
|
|
415
|
+
enabled?: boolean | null;
|
|
416
|
+
/** The uploaded trailer file and its processing state. */
|
|
417
|
+
uploaded?: WixMediaVideo;
|
|
418
|
+
/**
|
|
419
|
+
* HLS URL of the trailer, valid until `playback.expiration_date`. Set when `enabled` is true and `uploaded` is
|
|
420
|
+
* READY; otherwise `playback_unavailable_reason` says why not. Trailers are free for everyone.
|
|
421
|
+
* @readonly
|
|
422
|
+
*/
|
|
423
|
+
playback?: WixMediaPlayback;
|
|
424
|
+
/**
|
|
425
|
+
* Why `playback` is unset. Set only when `playback` is not.
|
|
426
|
+
* @readonly
|
|
427
|
+
*/
|
|
428
|
+
playbackUnavailableReason?: PlaybackUnavailableReasonWithLiterals;
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* The distinct categories and tags of the channel's VISIBLE, published videos, e.g. for filter menus. Computed
|
|
432
|
+
* when the channel is read.
|
|
433
|
+
*/
|
|
434
|
+
interface VideoFacets {
|
|
435
|
+
/**
|
|
436
|
+
* Distinct categories over the channel's VISIBLE, published videos.
|
|
437
|
+
* @maxSize 1000
|
|
438
|
+
*/
|
|
439
|
+
categories?: Facet[];
|
|
440
|
+
/**
|
|
441
|
+
* Distinct tags over the channel's VISIBLE, published videos.
|
|
442
|
+
* @maxSize 1000
|
|
443
|
+
*/
|
|
444
|
+
tags?: Facet[];
|
|
445
|
+
}
|
|
446
|
+
/** A video's placement in a channel, with its sort order and publish date, and the video itself in `video`. */
|
|
447
|
+
interface ChannelVideo {
|
|
448
|
+
/**
|
|
449
|
+
* Channel video ID. Unlike most IDs in this API, it isn't a GUID: treat it as an opaque string of up to 24
|
|
450
|
+
* characters, and don't parse or validate its format. To look one up by channel and video, use
|
|
451
|
+
* `GetChannelVideoByChannelIdAndVideoId`.
|
|
452
|
+
* @readonly
|
|
453
|
+
* @maxLength 24
|
|
454
|
+
*/
|
|
455
|
+
_id?: string;
|
|
456
|
+
/**
|
|
457
|
+
* When the video was added to the channel.
|
|
458
|
+
* @readonly
|
|
459
|
+
*/
|
|
460
|
+
_createdDate?: Date | null;
|
|
461
|
+
/**
|
|
462
|
+
* When the channel video was last updated.
|
|
463
|
+
* @readonly
|
|
464
|
+
*/
|
|
465
|
+
_updatedDate?: Date | null;
|
|
466
|
+
/**
|
|
467
|
+
* ID of the site the channel belongs to.
|
|
468
|
+
* @format GUID
|
|
469
|
+
* @readonly
|
|
470
|
+
*/
|
|
471
|
+
siteId?: string;
|
|
472
|
+
/**
|
|
473
|
+
* ID of the channel.
|
|
474
|
+
* @format GUID
|
|
475
|
+
* @readonly
|
|
476
|
+
*/
|
|
477
|
+
channelId?: string;
|
|
478
|
+
/**
|
|
479
|
+
* ID of the video.
|
|
480
|
+
* @format GUID
|
|
481
|
+
* @readonly
|
|
482
|
+
*/
|
|
483
|
+
videoId?: string;
|
|
484
|
+
/** The video's position in the channel. Videos are sorted by it, highest first. */
|
|
485
|
+
customOrder?: number | null;
|
|
486
|
+
/**
|
|
487
|
+
* When the video is published in the channel. Visitors see the video only from this date, and only when
|
|
488
|
+
* `video.status.value` is VISIBLE. When no publish date is stored, this is `updated_date`.
|
|
489
|
+
*/
|
|
490
|
+
publishDate?: Date | null;
|
|
491
|
+
/**
|
|
492
|
+
* Who added the video to the channel.
|
|
493
|
+
* @readonly
|
|
494
|
+
*/
|
|
495
|
+
createdBy?: IdentificationData;
|
|
496
|
+
/**
|
|
497
|
+
* The video.
|
|
498
|
+
* @readonly
|
|
499
|
+
*/
|
|
500
|
+
video?: Video;
|
|
501
|
+
}
|
|
502
|
+
/**
|
|
503
|
+
* A video on a Wix site: uploaded to Wix, imported from YouTube, Vimeo or Facebook, or streamed live.
|
|
504
|
+
* `media.source` says which. The playback URL isn't part of the video: get it from `GenerateVideoPlaybackUrl`.
|
|
505
|
+
*/
|
|
506
|
+
interface Video {
|
|
507
|
+
/**
|
|
508
|
+
* Video ID.
|
|
509
|
+
* @format GUID
|
|
510
|
+
* @readonly
|
|
511
|
+
*/
|
|
512
|
+
_id?: string;
|
|
513
|
+
/**
|
|
514
|
+
* When the video was created.
|
|
515
|
+
* @readonly
|
|
516
|
+
*/
|
|
517
|
+
_createdDate?: Date | null;
|
|
518
|
+
/**
|
|
519
|
+
* When the video was last updated.
|
|
520
|
+
* @readonly
|
|
521
|
+
*/
|
|
522
|
+
_updatedDate?: Date | null;
|
|
523
|
+
/**
|
|
524
|
+
* ID of the site the video belongs to.
|
|
525
|
+
* @format GUID
|
|
526
|
+
* @readonly
|
|
527
|
+
*/
|
|
528
|
+
siteId?: string;
|
|
529
|
+
/**
|
|
530
|
+
* Video title.
|
|
531
|
+
* @maxLength 250
|
|
532
|
+
*/
|
|
533
|
+
title?: string | null;
|
|
534
|
+
/**
|
|
535
|
+
* Video description.
|
|
536
|
+
* @maxLength 10000
|
|
537
|
+
*/
|
|
538
|
+
description?: string | null;
|
|
539
|
+
/**
|
|
540
|
+
* Who published the video, shown as its "by" line.
|
|
541
|
+
* @maxLength 250
|
|
542
|
+
*/
|
|
543
|
+
publisher?: string | null;
|
|
544
|
+
/**
|
|
545
|
+
* The video's genre.
|
|
546
|
+
* @maxLength 250
|
|
547
|
+
*/
|
|
548
|
+
genre?: string | null;
|
|
549
|
+
/** The kind of production the video is, such as a film, vlog or tutorial, set by the owner. */
|
|
550
|
+
contentType?: ContentTypeWithLiterals;
|
|
551
|
+
/**
|
|
552
|
+
* Whether site visitors get the video, and if not, why. Set from `media`: the file's `status` for WIX_MEDIA (a
|
|
553
|
+
* live stream's recording stays VISIBLE while processed), `live_stream_details.status` for LIVE_STREAM, and always
|
|
554
|
+
* VISIBLE for YOUTUBE, VIMEO and FACEBOOK. Visitor requests return only VISIBLE videos.
|
|
555
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
556
|
+
*/
|
|
557
|
+
status?: StatusInfo;
|
|
558
|
+
/**
|
|
559
|
+
* The video's categories, without duplicates.
|
|
560
|
+
* @maxLength 250
|
|
561
|
+
* @maxSize 100
|
|
562
|
+
*/
|
|
563
|
+
categories?: string[];
|
|
564
|
+
/**
|
|
565
|
+
* The video's tags, without duplicates.
|
|
566
|
+
* @maxLength 250
|
|
567
|
+
* @maxSize 100
|
|
568
|
+
*/
|
|
569
|
+
tags?: string[];
|
|
570
|
+
/**
|
|
571
|
+
* People who made the video, with their positions.
|
|
572
|
+
* @maxSize 100
|
|
573
|
+
*/
|
|
574
|
+
crew?: CrewMember[];
|
|
575
|
+
/**
|
|
576
|
+
* People who appear in the video, with the characters they play.
|
|
577
|
+
* @maxSize 100
|
|
578
|
+
*/
|
|
579
|
+
cast?: CastMember[];
|
|
580
|
+
/** Prices for buying or renting the video on its own. */
|
|
581
|
+
pricing?: VideoPricing;
|
|
582
|
+
/** The video's thumbnail image, shown in lists. */
|
|
583
|
+
cover?: VideoCover;
|
|
584
|
+
/** The image shown in the player before the video plays. */
|
|
585
|
+
poster?: Poster;
|
|
586
|
+
/** What the video plays; see Media. */
|
|
587
|
+
media?: Media;
|
|
588
|
+
/** What a caller without access sees instead of the video; see Trailer. */
|
|
589
|
+
trailer?: VideoTrailer;
|
|
590
|
+
/** Whether visitors can download the video. */
|
|
591
|
+
downloadOptions?: DownloadOptions;
|
|
592
|
+
/** Who can watch the video, and who it is suitable for. */
|
|
593
|
+
viewerOptions?: ViewerOptions;
|
|
594
|
+
/** Embedding and player button settings. */
|
|
595
|
+
embedOptions?: EmbedOptions;
|
|
596
|
+
/**
|
|
597
|
+
* If true, the video can still be played when the site goes over its video storage or duration quota.
|
|
598
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
599
|
+
*/
|
|
600
|
+
quotaExempt?: boolean | null;
|
|
601
|
+
/**
|
|
602
|
+
* Who created the video.
|
|
603
|
+
* @readonly
|
|
604
|
+
*/
|
|
605
|
+
createdBy?: IdentificationData;
|
|
606
|
+
/** Data for search engines; see SeoInfo for when it is set. The same for every caller. */
|
|
607
|
+
seoInfo?: SeoInfo;
|
|
608
|
+
/**
|
|
609
|
+
* Whether the video has action cards. Get them with `ListActionCards`.
|
|
610
|
+
* @readonly
|
|
611
|
+
*/
|
|
612
|
+
hasActionCards?: boolean | null;
|
|
613
|
+
}
|
|
614
|
+
/** Whether site visitors get the video, and if not, why. */
|
|
615
|
+
declare enum VideoStatus {
|
|
616
|
+
/**
|
|
617
|
+
* Not shown to visitors: the video has no media yet, such as a live stream created without a start time that the
|
|
618
|
+
* broadcaster hasn't started.
|
|
619
|
+
*/
|
|
620
|
+
INITIALIZED = "INITIALIZED",
|
|
621
|
+
/** Not shown to visitors while an uploaded file is being transcoded. */
|
|
622
|
+
IN_PROGRESS = "IN_PROGRESS",
|
|
623
|
+
/**
|
|
624
|
+
* Shown to site visitors. An uploaded video is visible once its file is ready. A live stream is visible from when
|
|
625
|
+
* it's scheduled or started, and stays visible after the broadcast ends, while its recording is processed.
|
|
626
|
+
* Visible doesn't mean playable: see `media`.
|
|
627
|
+
*/
|
|
628
|
+
VISIBLE = "VISIBLE",
|
|
629
|
+
/** Transcoding failed, or the live stream expired. */
|
|
630
|
+
FAILED = "FAILED"
|
|
631
|
+
}
|
|
632
|
+
/** @enumType */
|
|
633
|
+
type VideoStatusWithLiterals = VideoStatus | 'INITIALIZED' | 'IN_PROGRESS' | 'VISIBLE' | 'FAILED';
|
|
634
|
+
/** A crew position. */
|
|
635
|
+
declare enum Position {
|
|
636
|
+
/** The stored position isn't one of the values below. */
|
|
637
|
+
UNKNOWN_POSITION = "UNKNOWN_POSITION",
|
|
638
|
+
ACADEMIC_ADVISOR = "ACADEMIC_ADVISOR",
|
|
639
|
+
ADAPTATION = "ADAPTATION",
|
|
640
|
+
ADDITIONAL_GRIP = "ADDITIONAL_GRIP",
|
|
641
|
+
ADDITIONAL_PHOTOGRAPHY = "ADDITIONAL_PHOTOGRAPHY",
|
|
642
|
+
AGENT = "AGENT",
|
|
643
|
+
ANIMAL_TRAINER = "ANIMAL_TRAINER",
|
|
644
|
+
ANIMATOR = "ANIMATOR",
|
|
645
|
+
ART_DIRECTOR = "ART_DIRECTOR",
|
|
646
|
+
ASSISTANT_ART_DIRECTOR = "ASSISTANT_ART_DIRECTOR",
|
|
647
|
+
ASSISTANT_CAMERA = "ASSISTANT_CAMERA",
|
|
648
|
+
ASSISTANT_DIRECTOR = "ASSISTANT_DIRECTOR",
|
|
649
|
+
ASSISTANT_EDITOR = "ASSISTANT_EDITOR",
|
|
650
|
+
ASSOCIATE_PRODUCER = "ASSOCIATE_PRODUCER",
|
|
651
|
+
AUTHOR_OF_ADAPTED_MATERIAL = "AUTHOR_OF_ADAPTED_MATERIAL",
|
|
652
|
+
BEST_BOY = "BEST_BOY",
|
|
653
|
+
BOOM_OPERATOR = "BOOM_OPERATOR",
|
|
654
|
+
CABLE_PERSON = "CABLE_PERSON",
|
|
655
|
+
CAMERA_OPERATOR = "CAMERA_OPERATOR",
|
|
656
|
+
CHOREOGRAPHER = "CHOREOGRAPHER",
|
|
657
|
+
/** Cinematographer, also called director of photography (DP). */
|
|
658
|
+
CINEMATOGRAPHER_DP = "CINEMATOGRAPHER_DP",
|
|
659
|
+
COLLABORATING_DIRECTOR = "COLLABORATING_DIRECTOR",
|
|
660
|
+
COSTUMER = "COSTUMER",
|
|
661
|
+
COSTUME_DESIGNER = "COSTUME_DESIGNER",
|
|
662
|
+
CO_DIRECTOR = "CO_DIRECTOR",
|
|
663
|
+
CO_PRODUCER = "CO_PRODUCER",
|
|
664
|
+
CO_WRITER = "CO_WRITER",
|
|
665
|
+
DIGITAL_EFFECTS = "DIGITAL_EFFECTS",
|
|
666
|
+
DIRECTOR = "DIRECTOR",
|
|
667
|
+
DOLLY_GRIP = "DOLLY_GRIP",
|
|
668
|
+
EDITOR = "EDITOR",
|
|
669
|
+
EXECUTIVE_PRODUCER = "EXECUTIVE_PRODUCER",
|
|
670
|
+
GAFFER = "GAFFER",
|
|
671
|
+
GRIP = "GRIP",
|
|
672
|
+
HAIRSTYLIST = "HAIRSTYLIST",
|
|
673
|
+
KEY_GRIP = "KEY_GRIP",
|
|
674
|
+
LEAD_PERSON = "LEAD_PERSON",
|
|
675
|
+
LOCATION_MANAGER = "LOCATION_MANAGER",
|
|
676
|
+
MAKEUP_ARTIST = "MAKEUP_ARTIST",
|
|
677
|
+
MAKEUP_EFFECTS = "MAKEUP_EFFECTS",
|
|
678
|
+
MANAGER = "MANAGER",
|
|
679
|
+
ORIGINAL_MUSIC_COMPOSER = "ORIGINAL_MUSIC_COMPOSER",
|
|
680
|
+
/** Returns preview copies of the film after screenings. */
|
|
681
|
+
PREVIEW_RETURN = "PREVIEW_RETURN",
|
|
682
|
+
/** Returns film prints after screenings. */
|
|
683
|
+
PRINT_RETURN = "PRINT_RETURN",
|
|
684
|
+
/** Ships film prints to screenings. */
|
|
685
|
+
PRINT_SHIPPER = "PRINT_SHIPPER",
|
|
686
|
+
PRODUCER = "PRODUCER",
|
|
687
|
+
PRODUCTION_ASSISTANT = "PRODUCTION_ASSISTANT",
|
|
688
|
+
PRODUCTION_COORDINATOR = "PRODUCTION_COORDINATOR",
|
|
689
|
+
PRODUCTION_DESIGNER = "PRODUCTION_DESIGNER",
|
|
690
|
+
PRODUCTION_MANAGER = "PRODUCTION_MANAGER",
|
|
691
|
+
PROPERTY_MASTER = "PROPERTY_MASTER",
|
|
692
|
+
PUBLICIST = "PUBLICIST",
|
|
693
|
+
SCHOOL_ADMINISTRATOR = "SCHOOL_ADMINISTRATOR",
|
|
694
|
+
SCRIPT_SUPERVISOR = "SCRIPT_SUPERVISOR",
|
|
695
|
+
SECOND_ASSISTANT_DIRECTOR = "SECOND_ASSISTANT_DIRECTOR",
|
|
696
|
+
/** Second unit director of photography. */
|
|
697
|
+
SECOND_UNIT_DIR_OF_PHOTOGRAPHY = "SECOND_UNIT_DIR_OF_PHOTOGRAPHY",
|
|
698
|
+
SET_DECORATOR = "SET_DECORATOR",
|
|
699
|
+
SET_DESIGNER = "SET_DESIGNER",
|
|
700
|
+
SOUND_EDITOR = "SOUND_EDITOR",
|
|
701
|
+
SOUND_MIXER = "SOUND_MIXER",
|
|
702
|
+
SPECIAL_EFFECTS = "SPECIAL_EFFECTS",
|
|
703
|
+
STORY = "STORY",
|
|
704
|
+
STUNT_COORDINATOR = "STUNT_COORDINATOR",
|
|
705
|
+
SWING_GANG = "SWING_GANG",
|
|
706
|
+
TECHNICAL_ADVISOR = "TECHNICAL_ADVISOR",
|
|
707
|
+
VIDEO_OPERATOR = "VIDEO_OPERATOR",
|
|
708
|
+
WRITER = "WRITER"
|
|
709
|
+
}
|
|
710
|
+
/** @enumType */
|
|
711
|
+
type PositionWithLiterals = Position | 'UNKNOWN_POSITION' | 'ACADEMIC_ADVISOR' | 'ADAPTATION' | 'ADDITIONAL_GRIP' | 'ADDITIONAL_PHOTOGRAPHY' | 'AGENT' | 'ANIMAL_TRAINER' | 'ANIMATOR' | 'ART_DIRECTOR' | 'ASSISTANT_ART_DIRECTOR' | 'ASSISTANT_CAMERA' | 'ASSISTANT_DIRECTOR' | 'ASSISTANT_EDITOR' | 'ASSOCIATE_PRODUCER' | 'AUTHOR_OF_ADAPTED_MATERIAL' | 'BEST_BOY' | 'BOOM_OPERATOR' | 'CABLE_PERSON' | 'CAMERA_OPERATOR' | 'CHOREOGRAPHER' | 'CINEMATOGRAPHER_DP' | 'COLLABORATING_DIRECTOR' | 'COSTUMER' | 'COSTUME_DESIGNER' | 'CO_DIRECTOR' | 'CO_PRODUCER' | 'CO_WRITER' | 'DIGITAL_EFFECTS' | 'DIRECTOR' | 'DOLLY_GRIP' | 'EDITOR' | 'EXECUTIVE_PRODUCER' | 'GAFFER' | 'GRIP' | 'HAIRSTYLIST' | 'KEY_GRIP' | 'LEAD_PERSON' | 'LOCATION_MANAGER' | 'MAKEUP_ARTIST' | 'MAKEUP_EFFECTS' | 'MANAGER' | 'ORIGINAL_MUSIC_COMPOSER' | 'PREVIEW_RETURN' | 'PRINT_RETURN' | 'PRINT_SHIPPER' | 'PRODUCER' | 'PRODUCTION_ASSISTANT' | 'PRODUCTION_COORDINATOR' | 'PRODUCTION_DESIGNER' | 'PRODUCTION_MANAGER' | 'PROPERTY_MASTER' | 'PUBLICIST' | 'SCHOOL_ADMINISTRATOR' | 'SCRIPT_SUPERVISOR' | 'SECOND_ASSISTANT_DIRECTOR' | 'SECOND_UNIT_DIR_OF_PHOTOGRAPHY' | 'SET_DECORATOR' | 'SET_DESIGNER' | 'SOUND_EDITOR' | 'SOUND_MIXER' | 'SPECIAL_EFFECTS' | 'STORY' | 'STUNT_COORDINATOR' | 'SWING_GANG' | 'TECHNICAL_ADVISOR' | 'VIDEO_OPERATOR' | 'WRITER';
|
|
712
|
+
/** Which cover option is shown. */
|
|
713
|
+
declare enum CoverChoice {
|
|
714
|
+
/** A frame picked automatically from the video, or the provider's thumbnail for external videos. */
|
|
715
|
+
AUTOMATIC = "AUTOMATIC",
|
|
716
|
+
/** Uploaded by the site owner. */
|
|
717
|
+
CUSTOM = "CUSTOM"
|
|
718
|
+
}
|
|
719
|
+
/** @enumType */
|
|
720
|
+
type CoverChoiceWithLiterals = CoverChoice | 'AUTOMATIC' | 'CUSTOM';
|
|
721
|
+
/** Frames picked automatically from the video. */
|
|
722
|
+
interface AutomaticUrlsInfo {
|
|
723
|
+
/**
|
|
724
|
+
* Frames picked automatically from the video (or the provider's thumbnails for external videos).
|
|
725
|
+
* @format WEB_URL
|
|
726
|
+
* @maxSize 4
|
|
727
|
+
* @readonly
|
|
728
|
+
*/
|
|
729
|
+
urls?: string[];
|
|
730
|
+
}
|
|
731
|
+
/** Whether an offer sells or rents the video. */
|
|
732
|
+
declare enum PurchaseType {
|
|
733
|
+
/** Buy the video. Access never expires. */
|
|
734
|
+
SALE = "SALE",
|
|
735
|
+
/** Rent the video for `rental_duration_in_hours`. */
|
|
736
|
+
RENT = "RENT"
|
|
737
|
+
}
|
|
738
|
+
/** @enumType */
|
|
739
|
+
type PurchaseTypeWithLiterals = PurchaseType | 'SALE' | 'RENT';
|
|
740
|
+
/** A price for buying or renting the video. */
|
|
741
|
+
interface Offer {
|
|
742
|
+
/** Sale or rental. */
|
|
743
|
+
type?: PurchaseTypeWithLiterals;
|
|
744
|
+
/**
|
|
745
|
+
* Whether the offer can be bought. Disabled offers are returned too. When no offer is enabled, the video has
|
|
746
|
+
* no price of its own.
|
|
747
|
+
*/
|
|
748
|
+
enabled?: boolean | null;
|
|
749
|
+
/**
|
|
750
|
+
* Price in `Pricing.currency`.
|
|
751
|
+
* @decimalValue options { gte:0.00, maxScale:2 }
|
|
752
|
+
*/
|
|
753
|
+
price?: string | null;
|
|
754
|
+
/**
|
|
755
|
+
* How long a rental grants access, in hours. Set for RENT only; a SALE never expires.
|
|
756
|
+
* @min 1
|
|
757
|
+
*/
|
|
758
|
+
rentalDurationInHours?: number | null;
|
|
759
|
+
}
|
|
760
|
+
/** Where the owner uploaded the file from. */
|
|
761
|
+
declare enum UploadOrigin {
|
|
762
|
+
COMPUTER = "COMPUTER",
|
|
763
|
+
GOOGLE_DRIVE = "GOOGLE_DRIVE",
|
|
764
|
+
DROPBOX = "DROPBOX"
|
|
765
|
+
}
|
|
766
|
+
/** @enumType */
|
|
767
|
+
type UploadOriginWithLiterals = UploadOrigin | 'COMPUTER' | 'GOOGLE_DRIVE' | 'DROPBOX';
|
|
768
|
+
/** The app the stream is broadcast from. */
|
|
769
|
+
declare enum BroadcastApp {
|
|
770
|
+
/** The Wix mobile app. */
|
|
771
|
+
WIX_MOBILE_APP = "WIX_MOBILE_APP",
|
|
772
|
+
/** Desktop streaming software, such as OBS, that sends the stream over RTMP. */
|
|
773
|
+
STREAMING_SOFTWARE = "STREAMING_SOFTWARE"
|
|
774
|
+
}
|
|
775
|
+
/** @enumType */
|
|
776
|
+
type BroadcastAppWithLiterals = BroadcastApp | 'WIX_MOBILE_APP' | 'STREAMING_SOFTWARE';
|
|
777
|
+
/**
|
|
778
|
+
* Where the stream is in its lifecycle. SCHEDULED, PENDING, STREAMING and RECONNECTING mean the stream is
|
|
779
|
+
* live or about to be.
|
|
780
|
+
*/
|
|
781
|
+
declare enum Status {
|
|
782
|
+
/** Created for a later time, in `start_date`; the broadcast hasn't started. */
|
|
783
|
+
SCHEDULED = "SCHEDULED",
|
|
784
|
+
/**
|
|
785
|
+
* Not live yet: the broadcaster hasn't started the stream, or started it and their video hasn't arrived.
|
|
786
|
+
* Visitors get only the second case.
|
|
787
|
+
*/
|
|
788
|
+
PENDING = "PENDING",
|
|
789
|
+
/** Live now. */
|
|
790
|
+
STREAMING = "STREAMING",
|
|
791
|
+
/** The broadcaster disconnected; waiting for them to reconnect. */
|
|
792
|
+
RECONNECTING = "RECONNECTING",
|
|
793
|
+
/**
|
|
794
|
+
* The broadcast ended and its recording is being saved as a video. The video stays VISIBLE, but can't be
|
|
795
|
+
* played until the recording is ready.
|
|
796
|
+
*/
|
|
797
|
+
PROCESSING_RECORDING = "PROCESSING_RECORDING",
|
|
798
|
+
/**
|
|
799
|
+
* Legacy: the stream reached its maximum length. Only on streams created before the current flow; new
|
|
800
|
+
* streams never get it.
|
|
801
|
+
*/
|
|
802
|
+
EXPIRED = "EXPIRED"
|
|
803
|
+
}
|
|
804
|
+
/** @enumType */
|
|
805
|
+
type StatusWithLiterals = Status | 'SCHEDULED' | 'PENDING' | 'STREAMING' | 'RECONNECTING' | 'PROCESSING_RECORDING' | 'EXPIRED';
|
|
806
|
+
/** The protocol the broadcaster uses to send the stream. */
|
|
807
|
+
declare enum Protocol {
|
|
808
|
+
WEBRTC = "WEBRTC",
|
|
809
|
+
RTMP = "RTMP"
|
|
810
|
+
}
|
|
811
|
+
/** @enumType */
|
|
812
|
+
type ProtocolWithLiterals = Protocol | 'WEBRTC' | 'RTMP';
|
|
813
|
+
/** The app the stream is broadcast from. */
|
|
814
|
+
interface BroadcastAppInfo {
|
|
815
|
+
/** The app the stream is broadcast from. */
|
|
816
|
+
value?: BroadcastAppWithLiterals;
|
|
817
|
+
}
|
|
818
|
+
/** Where the media comes from. */
|
|
819
|
+
declare enum MediaSource {
|
|
820
|
+
WIX_MEDIA = "WIX_MEDIA",
|
|
821
|
+
YOUTUBE = "YOUTUBE",
|
|
822
|
+
VIMEO = "VIMEO",
|
|
823
|
+
FACEBOOK = "FACEBOOK",
|
|
824
|
+
LIVE_STREAM = "LIVE_STREAM"
|
|
825
|
+
}
|
|
826
|
+
/** @enumType */
|
|
827
|
+
type MediaSourceWithLiterals = MediaSource | 'WIX_MEDIA' | 'YOUTUBE' | 'VIMEO' | 'FACEBOOK' | 'LIVE_STREAM';
|
|
828
|
+
/** A video file uploaded to Wix. */
|
|
829
|
+
interface WixMediaDetails {
|
|
830
|
+
/** The uploaded video file and its processing state. */
|
|
831
|
+
file?: WixMediaVideo;
|
|
832
|
+
/** Where the owner uploaded the file from. */
|
|
833
|
+
uploadOrigin?: UploadOriginWithLiterals;
|
|
834
|
+
}
|
|
835
|
+
/** A video imported from YouTube. Its data is refreshed from YouTube at most once every 24 hours. */
|
|
836
|
+
interface MediaYoutubeDetails {
|
|
837
|
+
/**
|
|
838
|
+
* The video's YouTube URL. Play it directly: external videos are free and need no playback URL.
|
|
839
|
+
* @format WEB_URL
|
|
840
|
+
*/
|
|
841
|
+
url?: string | null;
|
|
842
|
+
/**
|
|
843
|
+
* The video's title on YouTube when it was imported.
|
|
844
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
845
|
+
* @maxLength 2560
|
|
846
|
+
*/
|
|
847
|
+
originalTitle?: string | null;
|
|
848
|
+
/**
|
|
849
|
+
* False once the video is no longer available on YouTube.
|
|
850
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
851
|
+
* @readonly
|
|
852
|
+
*/
|
|
853
|
+
available?: boolean | null;
|
|
854
|
+
/**
|
|
855
|
+
* When the video was last synced from YouTube.
|
|
856
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
857
|
+
* @readonly
|
|
858
|
+
*/
|
|
859
|
+
lastSyncedDate?: Date | null;
|
|
860
|
+
}
|
|
861
|
+
/** A video imported from Vimeo. Its data is copied at import and not refreshed. */
|
|
862
|
+
interface VimeoDetails {
|
|
863
|
+
/**
|
|
864
|
+
* The video's Vimeo URL. Play it directly: external videos are free and need no playback URL.
|
|
865
|
+
* @format WEB_URL
|
|
866
|
+
*/
|
|
867
|
+
url?: string | null;
|
|
868
|
+
/**
|
|
869
|
+
* The video's title on Vimeo when it was imported.
|
|
870
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
871
|
+
* @maxLength 2560
|
|
872
|
+
*/
|
|
873
|
+
originalTitle?: string | null;
|
|
874
|
+
/**
|
|
875
|
+
* When the video was last synced from Vimeo. These videos aren't re-synced yet, so this is when the video was
|
|
876
|
+
* imported.
|
|
877
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
878
|
+
* @readonly
|
|
879
|
+
*/
|
|
880
|
+
lastSyncedDate?: Date | null;
|
|
881
|
+
}
|
|
882
|
+
/** A video imported from Facebook. Its data is copied at import and not refreshed. */
|
|
883
|
+
interface FacebookDetails {
|
|
884
|
+
/**
|
|
885
|
+
* The video's Facebook URL. Play it directly: external videos are free and need no playback URL.
|
|
886
|
+
* @format WEB_URL
|
|
887
|
+
*/
|
|
888
|
+
url?: string | null;
|
|
889
|
+
/**
|
|
890
|
+
* When the video was last synced from Facebook. These videos aren't re-synced yet, so this is when the video was
|
|
891
|
+
* imported.
|
|
892
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
893
|
+
* @readonly
|
|
894
|
+
*/
|
|
895
|
+
lastSyncedDate?: Date | null;
|
|
896
|
+
}
|
|
897
|
+
/** A live stream. The stream URL isn't here: get it from `GenerateVideoPlaybackUrl`, which checks access. */
|
|
898
|
+
interface LiveStreamDetails {
|
|
899
|
+
/**
|
|
900
|
+
* Where the stream is in its lifecycle. Sets `Video.status`: VISIBLE from SCHEDULED through
|
|
901
|
+
* PROCESSING_RECORDING, except a stream created without a start time, which is INITIALIZED until the broadcaster
|
|
902
|
+
* starts it; FAILED when EXPIRED.
|
|
903
|
+
*/
|
|
904
|
+
status?: StatusWithLiterals;
|
|
905
|
+
/** The protocol the broadcaster uses to send the stream. It doesn't affect playback. */
|
|
906
|
+
protocol?: ProtocolWithLiterals;
|
|
907
|
+
/**
|
|
908
|
+
* The app the stream is broadcast from.
|
|
909
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
910
|
+
*/
|
|
911
|
+
broadcastApp?: BroadcastAppInfo;
|
|
912
|
+
/**
|
|
913
|
+
* To read the count without being counted, e.g. on the broadcaster's screen, send a GET request. It returns the
|
|
914
|
+
* approximate number of players watching now, as a plain-text integer, e.g. `12`: the pings to `ping_url` in the
|
|
915
|
+
* last 5 seconds. Each response is the full current count, not a change. Poll every 5 seconds.
|
|
916
|
+
* @format WEB_URL
|
|
917
|
+
*/
|
|
918
|
+
counterUrl?: string | null;
|
|
919
|
+
/**
|
|
920
|
+
* Send a GET request every 5 seconds while the stream plays. The response is the current viewer count, as for
|
|
921
|
+
* `counter_url`. Each ping counts toward the total for 5 seconds, so pinging more often inflates it.
|
|
922
|
+
* @format WEB_URL
|
|
923
|
+
*/
|
|
924
|
+
pingUrl?: string | null;
|
|
925
|
+
/**
|
|
926
|
+
* Who created the stream.
|
|
927
|
+
* @readonly
|
|
928
|
+
*/
|
|
929
|
+
createdBy?: IdentificationData;
|
|
930
|
+
/**
|
|
931
|
+
* When the stream starts. While SCHEDULED, the start time the owner planned; once STREAMING, when the broadcast
|
|
932
|
+
* actually started. Unset while PENDING.
|
|
933
|
+
* @readonly
|
|
934
|
+
*/
|
|
935
|
+
startDate?: Date | null;
|
|
936
|
+
/**
|
|
937
|
+
* When the broadcast ended. Unset while the stream is live.
|
|
938
|
+
* @readonly
|
|
939
|
+
*/
|
|
940
|
+
endDate?: Date | null;
|
|
941
|
+
}
|
|
942
|
+
/** Which trailer is shown. */
|
|
943
|
+
declare enum TrailerChoice {
|
|
944
|
+
/** The first 20 seconds of the video (`content_clip`). */
|
|
945
|
+
CONTENT_CLIP = "CONTENT_CLIP",
|
|
946
|
+
/** A file the owner uploaded (`uploaded`). */
|
|
947
|
+
UPLOADED = "UPLOADED",
|
|
948
|
+
/** A trailer generated from the video (`autogenerated`). */
|
|
949
|
+
AUTOGENERATED = "AUTOGENERATED"
|
|
950
|
+
}
|
|
951
|
+
/** @enumType */
|
|
952
|
+
type TrailerChoiceWithLiterals = TrailerChoice | 'CONTENT_CLIP' | 'UPLOADED' | 'AUTOGENERATED';
|
|
953
|
+
/** A clip from the start of the video, created when the video is uploaded. It plays from the video's own file. */
|
|
954
|
+
interface ContentClip {
|
|
955
|
+
/**
|
|
956
|
+
* Processing state of the clip, separate from the video's.
|
|
957
|
+
* @readonly
|
|
958
|
+
*/
|
|
959
|
+
status?: MediaStatusWithLiterals;
|
|
960
|
+
/**
|
|
961
|
+
* Length of the clip in milliseconds. Currently always 20000.
|
|
962
|
+
* @readonly
|
|
963
|
+
*/
|
|
964
|
+
durationInMillis?: string | null;
|
|
965
|
+
}
|
|
966
|
+
/** Why `playback` is unset. */
|
|
967
|
+
declare enum TrailerPlaybackUnavailableReason {
|
|
968
|
+
/** The site owner turned the trailer off (`enabled` is false). */
|
|
969
|
+
NOT_ENABLED = "NOT_ENABLED",
|
|
970
|
+
/**
|
|
971
|
+
* `choice` is UPLOADED and no trailer file was uploaded. A live stream plays only `uploaded`, so this is also
|
|
972
|
+
* its reason when `choice` is CONTENT_CLIP.
|
|
973
|
+
*/
|
|
974
|
+
NOT_UPLOADED = "NOT_UPLOADED",
|
|
975
|
+
/** `choice` is AUTOGENERATED and no trailer was generated. */
|
|
976
|
+
NOT_GENERATED = "NOT_GENERATED",
|
|
977
|
+
/** A live stream with `choice` AUTOGENERATED: live streams play only `uploaded`. */
|
|
978
|
+
NOT_SUPPORTED_FOR_LIVE = "NOT_SUPPORTED_FOR_LIVE",
|
|
979
|
+
/** The chosen trailer is still being processed. */
|
|
980
|
+
PROCESSING = "PROCESSING",
|
|
981
|
+
/** Processing the chosen trailer failed. */
|
|
982
|
+
FAILED = "FAILED",
|
|
983
|
+
/** The chosen trailer is ready, but its playback URL couldn't be created. Try again later. */
|
|
984
|
+
UNAVAILABLE = "UNAVAILABLE"
|
|
985
|
+
}
|
|
986
|
+
/** @enumType */
|
|
987
|
+
type TrailerPlaybackUnavailableReasonWithLiterals = TrailerPlaybackUnavailableReason | 'NOT_ENABLED' | 'NOT_UPLOADED' | 'NOT_GENERATED' | 'NOT_SUPPORTED_FOR_LIVE' | 'PROCESSING' | 'FAILED' | 'UNAVAILABLE';
|
|
988
|
+
/** Who the content is suitable for. */
|
|
989
|
+
declare enum ContentRating {
|
|
990
|
+
/** Suitable for all audiences. */
|
|
991
|
+
ALL_AUDIENCES = "ALL_AUDIENCES",
|
|
992
|
+
/** Mature content (violence, profanity, nudity, drugs...). */
|
|
993
|
+
MATURE = "MATURE"
|
|
994
|
+
}
|
|
995
|
+
/** @enumType */
|
|
996
|
+
type ContentRatingWithLiterals = ContentRating | 'ALL_AUDIENCES' | 'MATURE';
|
|
997
|
+
/** When the embedded player shows the logo. */
|
|
998
|
+
declare enum DisplayMode {
|
|
999
|
+
/** Shown together with the player's control bar. */
|
|
1000
|
+
WITH_CONTROL_BAR = "WITH_CONTROL_BAR",
|
|
1001
|
+
/** Always shown. */
|
|
1002
|
+
ALWAYS = "ALWAYS"
|
|
1003
|
+
}
|
|
1004
|
+
/** @enumType */
|
|
1005
|
+
type DisplayModeWithLiterals = DisplayMode | 'WITH_CONTROL_BAR' | 'ALWAYS';
|
|
1006
|
+
/** The logo the embedded player shows. */
|
|
1007
|
+
interface Logo {
|
|
1008
|
+
/**
|
|
1009
|
+
* Whether the embedded player shows the logo. Turning it off keeps `display_mode` and `url`, so it can be
|
|
1010
|
+
* turned back on.
|
|
1011
|
+
*/
|
|
1012
|
+
visible?: boolean | null;
|
|
1013
|
+
/** When the logo is shown: with the player's control bar, or always. Applies only when `visible` is true. */
|
|
1014
|
+
displayMode?: DisplayModeWithLiterals;
|
|
1015
|
+
/**
|
|
1016
|
+
* The logo image: one of the embed logos uploaded to the site.
|
|
1017
|
+
* @format WEB_URL
|
|
1018
|
+
*/
|
|
1019
|
+
url?: string | null;
|
|
1020
|
+
}
|
|
1021
|
+
/** The kind of production the video is, such as a film, vlog or tutorial. */
|
|
1022
|
+
declare enum ContentType {
|
|
1023
|
+
/** The stored type isn't one of the values below. */
|
|
1024
|
+
UNKNOWN_CONTENT_TYPE = "UNKNOWN_CONTENT_TYPE",
|
|
1025
|
+
/** A movie released in theaters. */
|
|
1026
|
+
MOVIE_THEATRICAL = "MOVIE_THEATRICAL",
|
|
1027
|
+
/** A TV show or episode. */
|
|
1028
|
+
TELEVISION = "TELEVISION",
|
|
1029
|
+
/** A movie released directly to video, not in theaters. */
|
|
1030
|
+
MADE_FOR_VIDEO = "MADE_FOR_VIDEO",
|
|
1031
|
+
/** A lesson in a course. */
|
|
1032
|
+
VIDEO_COURSE = "VIDEO_COURSE",
|
|
1033
|
+
/** A showreel or portfolio piece. */
|
|
1034
|
+
PORTFOLIO = "PORTFOLIO",
|
|
1035
|
+
/** A personal or family video. */
|
|
1036
|
+
PERSONAL = "PERSONAL",
|
|
1037
|
+
/** Any other film, such as a short or independent film. */
|
|
1038
|
+
FILM = "FILM",
|
|
1039
|
+
/** A video blog. */
|
|
1040
|
+
VLOG = "VLOG",
|
|
1041
|
+
/** An episode of a series made for the web. */
|
|
1042
|
+
WEB_SERIES = "WEB_SERIES",
|
|
1043
|
+
/** A product demo. */
|
|
1044
|
+
PRODUCT_DEMO = "PRODUCT_DEMO",
|
|
1045
|
+
/** Customer testimonials. */
|
|
1046
|
+
TESTIMONIALS = "TESTIMONIALS",
|
|
1047
|
+
/** A how-to or tutorial. */
|
|
1048
|
+
TUTORIALS = "TUTORIALS",
|
|
1049
|
+
/** Educational content that isn't a course. */
|
|
1050
|
+
EDUCATION = "EDUCATION",
|
|
1051
|
+
/** A music video or performance. */
|
|
1052
|
+
MUSIC = "MUSIC",
|
|
1053
|
+
/** None of the above. */
|
|
1054
|
+
OTHER = "OTHER"
|
|
1055
|
+
}
|
|
1056
|
+
/** @enumType */
|
|
1057
|
+
type ContentTypeWithLiterals = ContentType | 'UNKNOWN_CONTENT_TYPE' | 'MOVIE_THEATRICAL' | 'TELEVISION' | 'MADE_FOR_VIDEO' | 'VIDEO_COURSE' | 'PORTFOLIO' | 'PERSONAL' | 'FILM' | 'VLOG' | 'WEB_SERIES' | 'PRODUCT_DEMO' | 'TESTIMONIALS' | 'TUTORIALS' | 'EDUCATION' | 'MUSIC' | 'OTHER';
|
|
1058
|
+
/** Whether site visitors get the video. */
|
|
1059
|
+
interface StatusInfo {
|
|
1060
|
+
/** Visibility state. */
|
|
1061
|
+
value?: VideoStatusWithLiterals;
|
|
1062
|
+
}
|
|
1063
|
+
/** A person who worked on the video. */
|
|
1064
|
+
interface CrewMember {
|
|
1065
|
+
/** The person's position on the crew, e.g. DIRECTOR. */
|
|
1066
|
+
position?: PositionWithLiterals;
|
|
1067
|
+
/**
|
|
1068
|
+
* The person's full name, as the owner entered it.
|
|
1069
|
+
* @maxLength 1024
|
|
1070
|
+
*/
|
|
1071
|
+
fullName?: string | null;
|
|
1072
|
+
}
|
|
1073
|
+
/** A person who appears in the video. */
|
|
1074
|
+
interface CastMember {
|
|
1075
|
+
/**
|
|
1076
|
+
* The character the person plays, as the owner entered it.
|
|
1077
|
+
* @maxLength 1024
|
|
1078
|
+
*/
|
|
1079
|
+
role?: string | null;
|
|
1080
|
+
/**
|
|
1081
|
+
* The person's full name, as the owner entered it.
|
|
1082
|
+
* @maxLength 1024
|
|
1083
|
+
*/
|
|
1084
|
+
fullName?: string | null;
|
|
1085
|
+
}
|
|
1086
|
+
/** Prices for buying or renting this video on its own. Channel pricing can also grant access; see `Channel.pricing`. */
|
|
1087
|
+
interface VideoPricing {
|
|
1088
|
+
/**
|
|
1089
|
+
* Currency of every offer's `price`, set in the site's video settings. Empty when the settings have no currency.
|
|
1090
|
+
* @format CURRENCY
|
|
1091
|
+
* @readonly
|
|
1092
|
+
*/
|
|
1093
|
+
currency?: string;
|
|
1094
|
+
/**
|
|
1095
|
+
* The sale and rental offers. Empty for YouTube, Vimeo and Facebook videos, which are free.
|
|
1096
|
+
* @maxSize 2
|
|
1097
|
+
*/
|
|
1098
|
+
offers?: Offer[];
|
|
1099
|
+
}
|
|
1100
|
+
/**
|
|
1101
|
+
* The video's cover. `url` is the cover to show; `choice` says whether it was picked automatically or uploaded by
|
|
1102
|
+
* the owner.
|
|
1103
|
+
*/
|
|
1104
|
+
interface VideoCover {
|
|
1105
|
+
/**
|
|
1106
|
+
* The cover to show.
|
|
1107
|
+
* @format WEB_URL
|
|
1108
|
+
*/
|
|
1109
|
+
url?: string | null;
|
|
1110
|
+
/** Which cover option `url` is. */
|
|
1111
|
+
choice?: CoverChoiceWithLiterals;
|
|
1112
|
+
/**
|
|
1113
|
+
* Frames picked automatically from the video. `url` is one of them when `choice` is AUTOMATIC.
|
|
1114
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
1115
|
+
* @readonly
|
|
1116
|
+
*/
|
|
1117
|
+
automaticUrls?: AutomaticUrlsInfo;
|
|
1118
|
+
/**
|
|
1119
|
+
* The owner's uploaded cover.
|
|
1120
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
1121
|
+
* @format WEB_URL
|
|
1122
|
+
* @readonly
|
|
1123
|
+
*/
|
|
1124
|
+
customUrl?: string | null;
|
|
1125
|
+
}
|
|
1126
|
+
/** The image shown in the player before the video plays. */
|
|
1127
|
+
interface Poster {
|
|
1128
|
+
/**
|
|
1129
|
+
* The owner's uploaded image. Unset when the owner has not set one.
|
|
1130
|
+
* @format WEB_URL
|
|
1131
|
+
*/
|
|
1132
|
+
url?: string | null;
|
|
1133
|
+
}
|
|
1134
|
+
/**
|
|
1135
|
+
* What the video plays: a file uploaded to Wix, a YouTube, Vimeo or Facebook video, or a live stream.
|
|
1136
|
+
* `source` says which `source_details` member is set. When a live stream finishes, its recording replaces it
|
|
1137
|
+
* and `source` becomes WIX_MEDIA.
|
|
1138
|
+
*/
|
|
1139
|
+
interface Media extends MediaSourceDetailsOneOf {
|
|
1140
|
+
/** Set when `source` is WIX_MEDIA. */
|
|
1141
|
+
wixMediaDetails?: WixMediaDetails;
|
|
1142
|
+
/** Set when `source` is YOUTUBE. */
|
|
1143
|
+
youtubeDetails?: MediaYoutubeDetails;
|
|
1144
|
+
/** Set when `source` is VIMEO. */
|
|
1145
|
+
vimeoDetails?: VimeoDetails;
|
|
1146
|
+
/** Set when `source` is FACEBOOK. */
|
|
1147
|
+
facebookDetails?: FacebookDetails;
|
|
1148
|
+
/** Set when `source` is LIVE_STREAM. When the stream finishes, `source` becomes WIX_MEDIA and this is cleared. */
|
|
1149
|
+
liveStreamDetails?: LiveStreamDetails;
|
|
1150
|
+
/**
|
|
1151
|
+
* Where the media comes from. Selects which `source_details` member is set. YOUTUBE, VIMEO and FACEBOOK videos
|
|
1152
|
+
* are free and play from the provider's URL.
|
|
1153
|
+
*/
|
|
1154
|
+
source?: MediaSourceWithLiterals;
|
|
1155
|
+
/**
|
|
1156
|
+
* The media's ID at its source: the Wix file ID for WIX_MEDIA (same as `wix_media_details.file.file_id`), the
|
|
1157
|
+
* provider's video ID for YOUTUBE, VIMEO and FACEBOOK, and the stream ID for LIVE_STREAM.
|
|
1158
|
+
* @maxLength 256
|
|
1159
|
+
* @readonly
|
|
1160
|
+
*/
|
|
1161
|
+
sourceId?: string | null;
|
|
1162
|
+
/**
|
|
1163
|
+
* Length of the media in milliseconds. Unset when unknown, and always for FACEBOOK. For YOUTUBE and VIMEO, the
|
|
1164
|
+
* provider's duration at import. For LIVE_STREAM, the stream's length.
|
|
1165
|
+
* @readonly
|
|
1166
|
+
*/
|
|
1167
|
+
durationInMillis?: string | null;
|
|
1168
|
+
/**
|
|
1169
|
+
* Thumbnail from the source: a frame picked by Wix for WIX_MEDIA, or the provider's thumbnail. Unset for
|
|
1170
|
+
* LIVE_STREAM. To show a video's image, use `Video.cover`.
|
|
1171
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
1172
|
+
* @format WEB_URL
|
|
1173
|
+
* @readonly
|
|
1174
|
+
*/
|
|
1175
|
+
thumbnailUrl?: string | null;
|
|
1176
|
+
/**
|
|
1177
|
+
* When the media was attached to the video.
|
|
1178
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
1179
|
+
* @readonly
|
|
1180
|
+
*/
|
|
1181
|
+
_createdDate?: Date | null;
|
|
1182
|
+
/**
|
|
1183
|
+
* When the media last changed, e.g. finished processing or was re-synced from the provider.
|
|
1184
|
+
* Returned only to callers with the `video:v4:video:video_read_private_fields` permission.
|
|
1185
|
+
* @readonly
|
|
1186
|
+
*/
|
|
1187
|
+
_updatedDate?: Date | null;
|
|
1188
|
+
}
|
|
1189
|
+
/** @oneof */
|
|
1190
|
+
interface MediaSourceDetailsOneOf {
|
|
1191
|
+
/** Set when `source` is WIX_MEDIA. */
|
|
1192
|
+
wixMediaDetails?: WixMediaDetails;
|
|
1193
|
+
/** Set when `source` is YOUTUBE. */
|
|
1194
|
+
youtubeDetails?: MediaYoutubeDetails;
|
|
1195
|
+
/** Set when `source` is VIMEO. */
|
|
1196
|
+
vimeoDetails?: VimeoDetails;
|
|
1197
|
+
/** Set when `source` is FACEBOOK. */
|
|
1198
|
+
facebookDetails?: FacebookDetails;
|
|
1199
|
+
/** Set when `source` is LIVE_STREAM. When the stream finishes, `source` becomes WIX_MEDIA and this is cleared. */
|
|
1200
|
+
liveStreamDetails?: LiveStreamDetails;
|
|
1201
|
+
}
|
|
1202
|
+
/**
|
|
1203
|
+
* The trailer shown to visitors who can't watch the video. The owner can keep every kind of trailer and pick one
|
|
1204
|
+
* with `choice`; only that one gets a `playback` URL. Trailers are free for everyone.
|
|
1205
|
+
*/
|
|
1206
|
+
interface VideoTrailer {
|
|
1207
|
+
/** Whether a trailer is shown to visitors who can't watch the video. */
|
|
1208
|
+
enabled?: boolean | null;
|
|
1209
|
+
/** Which trailer is shown. */
|
|
1210
|
+
choice?: TrailerChoiceWithLiterals;
|
|
1211
|
+
/** The clip from the start of the video. Shown when `choice` is CONTENT_CLIP. */
|
|
1212
|
+
contentClip?: ContentClip;
|
|
1213
|
+
/** A trailer file the owner uploaded. Shown when `choice` is UPLOADED. Live streams can have one too. */
|
|
1214
|
+
uploaded?: WixMediaVideo;
|
|
1215
|
+
/** A trailer generated from the video at the owner's request. Shown when `choice` is AUTOGENERATED. */
|
|
1216
|
+
autogenerated?: WixMediaVideo;
|
|
1217
|
+
/**
|
|
1218
|
+
* HLS URL of the trailer that is shown, valid until `playback.expiration_date`. Set only when `enabled` is true
|
|
1219
|
+
* and that trailer is READY; otherwise `playback_unavailable_reason` says why not. A live stream shows
|
|
1220
|
+
* `uploaded`, and only when `choice` is CONTENT_CLIP or UPLOADED.
|
|
1221
|
+
* @readonly
|
|
1222
|
+
*/
|
|
1223
|
+
playback?: WixMediaPlayback;
|
|
1224
|
+
/**
|
|
1225
|
+
* Why `playback` is unset. Set only when `playback` is not, and never for YouTube, Vimeo and Facebook videos.
|
|
1226
|
+
* @readonly
|
|
1227
|
+
*/
|
|
1228
|
+
playbackUnavailableReason?: TrailerPlaybackUnavailableReasonWithLiterals;
|
|
1229
|
+
}
|
|
1230
|
+
/** Download settings for the video. */
|
|
1231
|
+
interface DownloadOptions {
|
|
1232
|
+
/** Whether visitors can download the video. Always false for YouTube, Vimeo and Facebook videos. */
|
|
1233
|
+
enabled?: boolean | null;
|
|
1234
|
+
}
|
|
1235
|
+
/** Who can watch the video, and who it is suitable for. */
|
|
1236
|
+
interface ViewerOptions {
|
|
1237
|
+
/** Whether only logged-in site members can watch the video. */
|
|
1238
|
+
memberLoginRequired?: boolean | null;
|
|
1239
|
+
/** Who the video is suitable for. */
|
|
1240
|
+
contentRating?: ContentRatingWithLiterals;
|
|
1241
|
+
}
|
|
1242
|
+
/**
|
|
1243
|
+
* Settings for embedding the video on other websites. `enabled` turns embedding on; the other fields set up the
|
|
1244
|
+
* embedded player and apply only when it's on.
|
|
1245
|
+
*/
|
|
1246
|
+
interface EmbedOptions {
|
|
1247
|
+
/** Whether the video can be embedded on other websites. Always false for YouTube, Vimeo and Facebook videos. */
|
|
1248
|
+
enabled?: boolean | null;
|
|
1249
|
+
/** Whether the embedded player shows the info button. */
|
|
1250
|
+
infoButtonVisible?: boolean | null;
|
|
1251
|
+
/** Whether the embedded player shows the share button. */
|
|
1252
|
+
shareButtonVisible?: boolean | null;
|
|
1253
|
+
/** Whether the embedded player shows the video title. */
|
|
1254
|
+
titleVisible?: boolean | null;
|
|
1255
|
+
/** Shown only when `logo.visible` is true and `url` is set. */
|
|
1256
|
+
logo?: Logo;
|
|
1257
|
+
}
|
|
1258
|
+
/**
|
|
1259
|
+
* Data for search engines. Set only when the video is VISIBLE, free (by its own pricing, not its channel's),
|
|
1260
|
+
* and uploaded to Wix (not YouTube, Vimeo or Facebook).
|
|
1261
|
+
*/
|
|
1262
|
+
interface SeoInfo {
|
|
1263
|
+
/**
|
|
1264
|
+
* HLS URL to use as the `contentUrl` in the video's structured data. The same for every caller.
|
|
1265
|
+
* @format WEB_URL
|
|
1266
|
+
*/
|
|
1267
|
+
url?: string | null;
|
|
1268
|
+
}
|
|
1269
|
+
interface GetChannelRequest {
|
|
1270
|
+
/**
|
|
1271
|
+
* ID of the channel to get.
|
|
1272
|
+
* @format GUID
|
|
1273
|
+
*/
|
|
1274
|
+
channelId: string;
|
|
1275
|
+
}
|
|
1276
|
+
interface GetChannelResponse {
|
|
1277
|
+
/** The requested channel. */
|
|
1278
|
+
channel?: Channel;
|
|
1279
|
+
}
|
|
1280
|
+
interface ListChannelsRequest {
|
|
1281
|
+
/** Paging. Limit defaults to 100, max 100. */
|
|
1282
|
+
paging?: CursorPaging;
|
|
1283
|
+
}
|
|
1284
|
+
interface CursorPaging {
|
|
1285
|
+
/**
|
|
1286
|
+
* Maximum number of items to return in the results.
|
|
1287
|
+
* @max 100
|
|
1288
|
+
*/
|
|
1289
|
+
limit?: number | null;
|
|
1290
|
+
/**
|
|
1291
|
+
* Pointer to the next or previous page in the list of results.
|
|
1292
|
+
*
|
|
1293
|
+
* Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.
|
|
1294
|
+
* Not relevant for the first request.
|
|
1295
|
+
* @maxLength 16000
|
|
1296
|
+
*/
|
|
1297
|
+
cursor?: string | null;
|
|
1298
|
+
}
|
|
1299
|
+
interface ListChannelsResponse {
|
|
1300
|
+
/** The site's channels, in the owner's dashboard order (`custom_order` ascending). */
|
|
1301
|
+
channels?: Channel[];
|
|
1302
|
+
/** Cursors for the next and previous pages. */
|
|
1303
|
+
pagingMetadata?: CursorPagingMetadata;
|
|
1304
|
+
}
|
|
1305
|
+
interface CursorPagingMetadata {
|
|
1306
|
+
/** Number of items returned in current page. */
|
|
1307
|
+
count?: number | null;
|
|
1308
|
+
/** Cursor strings that point to the next page, previous page, or both. */
|
|
1309
|
+
cursors?: Cursors;
|
|
1310
|
+
/**
|
|
1311
|
+
* Whether there are more pages to retrieve following the current page.
|
|
1312
|
+
*
|
|
1313
|
+
* + `true`: Another page of results can be retrieved.
|
|
1314
|
+
* + `false`: This is the last page.
|
|
1315
|
+
*/
|
|
1316
|
+
hasNext?: boolean | null;
|
|
1317
|
+
}
|
|
1318
|
+
interface Cursors {
|
|
1319
|
+
/**
|
|
1320
|
+
* Cursor string pointing to the next page in the list of results.
|
|
1321
|
+
* @maxLength 16000
|
|
1322
|
+
*/
|
|
1323
|
+
next?: string | null;
|
|
1324
|
+
/**
|
|
1325
|
+
* Cursor pointing to the previous page in the list of results.
|
|
1326
|
+
* @maxLength 16000
|
|
1327
|
+
*/
|
|
1328
|
+
prev?: string | null;
|
|
1329
|
+
}
|
|
1330
|
+
interface ListChannelsOptions {
|
|
1331
|
+
/** Paging. Limit defaults to 100, max 100. */
|
|
1332
|
+
paging?: CursorPaging;
|
|
1333
|
+
}
|
|
1334
|
+
|
|
1335
|
+
export { type AutomaticUrlsInfo, BroadcastApp, type BroadcastAppInfo, type BroadcastAppWithLiterals, type CastMember, type Channel, type ChannelSourceDetailsOneOf, type ChannelVideo, Choice, type ChoiceWithLiterals, type ContentClip, ContentRating, type ContentRatingWithLiterals, ContentType, type ContentTypeWithLiterals, type Cover, CoverChoice, type CoverChoiceWithLiterals, type CrewMember, type CursorPaging, type CursorPagingMetadata, type Cursors, DisplayMode, type DisplayModeWithLiterals, type DownloadOptions, type EmbedOptions, type FacebookDetails, type Facet, type GetChannelRequest, type GetChannelResponse, IdType, type IdTypeWithLiterals, type IdentificationData, type IdentificationDataIdOneOf, IdentityType, type IdentityTypeWithLiterals, type ListChannelsOptions, type ListChannelsRequest, type ListChannelsResponse, type LiveStreamDetails, type Logo, type Media, type MediaError, MediaQuality, type MediaQualityWithLiterals, MediaSource, type MediaSourceDetailsOneOf, type MediaSourceWithLiterals, MediaStatus, type MediaStatusWithLiterals, type MediaYoutubeDetails, type Offer, PlaybackUnavailableReason, type PlaybackUnavailableReasonWithLiterals, Position, type PositionWithLiterals, type Poster, type Pricing, Protocol, type ProtocolWithLiterals, PurchaseType, type PurchaseTypeWithLiterals, type SeoInfo, Source, type SourceWithLiterals, Status, type StatusInfo, type StatusWithLiterals, Storage, type StorageInfo, type StorageWithLiterals, type Trailer, TrailerChoice, type TrailerChoiceWithLiterals, TrailerPlaybackUnavailableReason, type TrailerPlaybackUnavailableReasonWithLiterals, UploadOrigin, type UploadOriginWithLiterals, type Video, type VideoCover, type VideoFacets, type VideoPricing, VideoStatus, type VideoStatusWithLiterals, type VideoTrailer, type ViewerOptions, type VimeoDetails, type WixMediaDetails, type WixMediaPlayback, type WixMediaVideo, type YoutubeDetails };
|