@shotstack/schemas 1.8.2 → 1.8.4

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.
@@ -1934,49 +1934,7 @@
1934
1934
  },
1935
1935
  "font": {
1936
1936
  "description": "Font styling properties for inactive words.",
1937
- "properties": {
1938
- "family": {
1939
- "description": "The font family name. This must be the Family name embedded in the font, i.e. \"Roboto\".",
1940
- "type": "string",
1941
- "example": "Roboto",
1942
- "default": "Roboto"
1943
- },
1944
- "size": {
1945
- "description": "The size of the font in pixels (px). Must be between 1 and 500.",
1946
- "type": "integer",
1947
- "minimum": 1,
1948
- "maximum": 500,
1949
- "default": 24,
1950
- "example": 48
1951
- },
1952
- "weight": {
1953
- "description": "The weight of the font. Can be a number (100-900) or a string ('normal', 'bold', etc.). 100 is lightest, 900 is heaviest (boldest).",
1954
- "default": "400"
1955
- },
1956
- "color": {
1957
- "description": "The text color using hexadecimal color notation.",
1958
- "type": "string",
1959
- "pattern": "^#[A-Fa-f0-9]{6}$",
1960
- "default": "#ffffff",
1961
- "example": "#ffffff"
1962
- },
1963
- "opacity": {
1964
- "description": "The opacity of the text where 1 is opaque and 0 is transparent.",
1965
- "type": "number",
1966
- "minimum": 0,
1967
- "maximum": 1,
1968
- "default": 1,
1969
- "example": 0.9
1970
- },
1971
- "background": {
1972
- "description": "The background color behind the text using hexadecimal color notation.",
1973
- "type": "string",
1974
- "pattern": "^#[A-Fa-f0-9]{6}$",
1975
- "example": "#000000"
1976
- }
1977
- },
1978
- "additionalProperties": false,
1979
- "type": "object"
1937
+ "$ref": "#/components/schemas/RichTextFont"
1980
1938
  },
1981
1939
  "style": {
1982
1940
  "description": "Text style properties including spacing, line height, and transformations.",
@@ -3788,6 +3746,106 @@
3788
3746
  "required": [
3789
3747
  "provider"
3790
3748
  ]
3749
+ },
3750
+ {
3751
+ "description": "Send videos and assets to [Akamai NetStorage](https://techdocs.akamai.com/netstorage-usage/docs). Send files to your NetStorage upload directory with a custom path and filename. Akamai credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/akamai-netstorage), not in the request.",
3752
+ "properties": {
3753
+ "provider": {
3754
+ "description": "The destination to send assets to - set to `akamai-netstorage` for Akamai NetStorage.",
3755
+ "type": "string",
3756
+ "default": "akamai-netstorage",
3757
+ "example": "akamai-netstorage"
3758
+ },
3759
+ "options": {
3760
+ "description": "Additional Akamai NetStorage configuration options.",
3761
+ "properties": {
3762
+ "host": {
3763
+ "description": "The Akamai NetStorage hostname, i.e. `example-nsu.akamaihd.net`.",
3764
+ "type": "string",
3765
+ "example": "example-nsu.akamaihd.net"
3766
+ },
3767
+ "cpCode": {
3768
+ "description": "The Content Provider code (CP code) for the NetStorage upload directory.",
3769
+ "type": "string",
3770
+ "example": "123456"
3771
+ },
3772
+ "path": {
3773
+ "description": "A remote directory path/prefix for the file being sent, i.e. `videos` or `customerId/videos`.",
3774
+ "type": [
3775
+ "string",
3776
+ "null"
3777
+ ],
3778
+ "example": "videos"
3779
+ },
3780
+ "filename": {
3781
+ "description": "Use your own filename instead of the default filenames generated by Shotstack. Note: omit the file extension as this will be appended depending on the output format. Also `-poster.jpg` and `-thumb.jpg` will be appended for poster and thumbnail images.",
3782
+ "type": [
3783
+ "string",
3784
+ "null"
3785
+ ],
3786
+ "example": "my-file"
3787
+ }
3788
+ },
3789
+ "required": [
3790
+ "host",
3791
+ "cpCode"
3792
+ ]
3793
+ }
3794
+ },
3795
+ "type": "object",
3796
+ "required": [
3797
+ "provider"
3798
+ ]
3799
+ },
3800
+ {
3801
+ "description": "Send videos and assets to [Azure Blob Storage](https://learn.microsoft.com/en-us/azure/storage/blobs/). Send files to any container with a custom prefix and filename. Azure credentials are required and added via the [dashboard](https://dashboard.shotstack.io/integrations/azure-blob-storage), not in the request.",
3802
+ "properties": {
3803
+ "provider": {
3804
+ "description": "The destination to send assets to - set to `azure-blob-storage` for Azure Blob Storage.",
3805
+ "type": "string",
3806
+ "default": "azure-blob-storage",
3807
+ "example": "azure-blob-storage"
3808
+ },
3809
+ "options": {
3810
+ "description": "Additional Azure Blob Storage configuration options.",
3811
+ "properties": {
3812
+ "accountName": {
3813
+ "description": "The Azure Storage account name.",
3814
+ "type": "string",
3815
+ "example": "mystorageaccount"
3816
+ },
3817
+ "container": {
3818
+ "description": "The Blob container name. The container must exist in the Azure Storage account before files can be sent.",
3819
+ "type": "string",
3820
+ "example": "my-container"
3821
+ },
3822
+ "prefix": {
3823
+ "description": "A virtual directory prefix for the blob being sent, i.e. `videos` or `customerId/videos`.",
3824
+ "type": [
3825
+ "string",
3826
+ "null"
3827
+ ],
3828
+ "example": "videos"
3829
+ },
3830
+ "filename": {
3831
+ "description": "Use your own filename instead of the default filenames generated by Shotstack. Note: omit the file extension as this will be appended depending on the output format. Also `-poster.jpg` and `-thumb.jpg` will be appended for poster and thumbnail images.",
3832
+ "type": [
3833
+ "string",
3834
+ "null"
3835
+ ],
3836
+ "example": "my-file"
3837
+ }
3838
+ },
3839
+ "required": [
3840
+ "accountName",
3841
+ "container"
3842
+ ]
3843
+ }
3844
+ },
3845
+ "type": "object",
3846
+ "required": [
3847
+ "provider"
3848
+ ]
3791
3849
  }
3792
3850
  ],
3793
3851
  "additionalProperties": false
@@ -1519,88 +1519,7 @@
1519
1519
  "font": {
1520
1520
  "anyOf": [
1521
1521
  {
1522
- "type": "object",
1523
- "properties": {
1524
- "family": {
1525
- "anyOf": [
1526
- {
1527
- "type": "string",
1528
- "enum": [
1529
- "Roboto"
1530
- ]
1531
- },
1532
- {
1533
- "type": "null"
1534
- }
1535
- ]
1536
- },
1537
- "size": {
1538
- "anyOf": [
1539
- {
1540
- "type": "integer",
1541
- "minimum": 1,
1542
- "maximum": 500
1543
- },
1544
- {
1545
- "type": "null"
1546
- }
1547
- ]
1548
- },
1549
- "weight": {
1550
- "anyOf": [
1551
- {
1552
- "type": "string"
1553
- },
1554
- {
1555
- "type": "null"
1556
- }
1557
- ]
1558
- },
1559
- "color": {
1560
- "anyOf": [
1561
- {
1562
- "type": "string",
1563
- "enum": [
1564
- "#ffffff"
1565
- ]
1566
- },
1567
- {
1568
- "type": "null"
1569
- }
1570
- ]
1571
- },
1572
- "opacity": {
1573
- "anyOf": [
1574
- {
1575
- "type": "number",
1576
- "minimum": 0,
1577
- "maximum": 1
1578
- },
1579
- {
1580
- "type": "null"
1581
- }
1582
- ]
1583
- },
1584
- "background": {
1585
- "anyOf": [
1586
- {
1587
- "type": "string"
1588
- },
1589
- {
1590
- "type": "null"
1591
- }
1592
- ]
1593
- }
1594
- },
1595
- "additionalProperties": false,
1596
- "required": [
1597
- "family",
1598
- "size",
1599
- "weight",
1600
- "color",
1601
- "opacity",
1602
- "background"
1603
- ]
1522
+ "$ref": "#/$defs/RichTextFont"
1604
1523
  },
1605
1524
  {
1606
1525
  "type": "null"
@@ -1751,88 +1751,7 @@
1751
1751
  "font": {
1752
1752
  "anyOf": [
1753
1753
  {
1754
- "type": "object",
1755
- "properties": {
1756
- "family": {
1757
- "anyOf": [
1758
- {
1759
- "type": "string",
1760
- "enum": [
1761
- "Roboto"
1762
- ]
1763
- },
1764
- {
1765
- "type": "null"
1766
- }
1767
- ]
1768
- },
1769
- "size": {
1770
- "anyOf": [
1771
- {
1772
- "type": "integer",
1773
- "minimum": 1,
1774
- "maximum": 500
1775
- },
1776
- {
1777
- "type": "null"
1778
- }
1779
- ]
1780
- },
1781
- "weight": {
1782
- "anyOf": [
1783
- {
1784
- "type": "string"
1785
- },
1786
- {
1787
- "type": "null"
1788
- }
1789
- ]
1790
- },
1791
- "color": {
1792
- "anyOf": [
1793
- {
1794
- "type": "string",
1795
- "enum": [
1796
- "#ffffff"
1797
- ]
1798
- },
1799
- {
1800
- "type": "null"
1801
- }
1802
- ]
1803
- },
1804
- "opacity": {
1805
- "anyOf": [
1806
- {
1807
- "type": "number",
1808
- "minimum": 0,
1809
- "maximum": 1
1810
- },
1811
- {
1812
- "type": "null"
1813
- }
1814
- ]
1815
- },
1816
- "background": {
1817
- "anyOf": [
1818
- {
1819
- "type": "string"
1820
- },
1821
- {
1822
- "type": "null"
1823
- }
1824
- ]
1825
- }
1826
- },
1827
- "additionalProperties": false,
1828
- "required": [
1829
- "family",
1830
- "size",
1831
- "weight",
1832
- "color",
1833
- "opacity",
1834
- "background"
1835
- ]
1754
+ "$ref": "#/$defs/RichTextFont"
1836
1755
  },
1837
1756
  {
1838
1757
  "type": "null"
@@ -2,7 +2,6 @@
2
2
  "name": "Destinations",
3
3
  "strict": true,
4
4
  "schema": {
5
- "description": "A destination is a...",
6
5
  "anyOf": [
7
6
  {
8
7
  "$ref": "#/$defs/ShotstackDestination"
@@ -20,7 +19,6 @@
20
19
  "$ref": "#/$defs/VimeoDestination"
21
20
  },
22
21
  {
23
- "description": "S...",
24
22
  "properties": {
25
23
  "provider": {
26
24
  "type": "string",
@@ -47,7 +45,6 @@
47
45
  "anyOf": [
48
46
  {
49
47
  "type": "string",
50
- "description": "Th...",
51
48
  "enum": [
52
49
  "public",
53
50
  "friends",
@@ -111,11 +108,116 @@
111
108
  "options"
112
109
  ],
113
110
  "additionalProperties": false
111
+ },
112
+ {
113
+ "properties": {
114
+ "provider": {
115
+ "type": "string",
116
+ "enum": [
117
+ "akamai-netstorage"
118
+ ]
119
+ },
120
+ "options": {
121
+ "anyOf": [
122
+ {
123
+ "type": "object",
124
+ "properties": {
125
+ "host": {
126
+ "type": "string"
127
+ },
128
+ "cpCode": {
129
+ "type": "string"
130
+ },
131
+ "path": {
132
+ "type": [
133
+ "string",
134
+ "null"
135
+ ]
136
+ },
137
+ "filename": {
138
+ "type": [
139
+ "string",
140
+ "null"
141
+ ]
142
+ }
143
+ },
144
+ "required": [
145
+ "host",
146
+ "cpCode",
147
+ "path",
148
+ "filename"
149
+ ],
150
+ "additionalProperties": false
151
+ },
152
+ {
153
+ "type": "null"
154
+ }
155
+ ]
156
+ }
157
+ },
158
+ "type": "object",
159
+ "required": [
160
+ "provider",
161
+ "options"
162
+ ],
163
+ "additionalProperties": false
164
+ },
165
+ {
166
+ "properties": {
167
+ "provider": {
168
+ "type": "string",
169
+ "enum": [
170
+ "azure-blob-storage"
171
+ ]
172
+ },
173
+ "options": {
174
+ "anyOf": [
175
+ {
176
+ "type": "object",
177
+ "properties": {
178
+ "accountName": {
179
+ "type": "string"
180
+ },
181
+ "container": {
182
+ "type": "string"
183
+ },
184
+ "prefix": {
185
+ "type": [
186
+ "string",
187
+ "null"
188
+ ]
189
+ },
190
+ "filename": {
191
+ "type": [
192
+ "string",
193
+ "null"
194
+ ]
195
+ }
196
+ },
197
+ "required": [
198
+ "accountName",
199
+ "container",
200
+ "prefix",
201
+ "filename"
202
+ ],
203
+ "additionalProperties": false
204
+ },
205
+ {
206
+ "type": "null"
207
+ }
208
+ ]
209
+ }
210
+ },
211
+ "type": "object",
212
+ "required": [
213
+ "provider",
214
+ "options"
215
+ ],
216
+ "additionalProperties": false
114
217
  }
115
218
  ],
116
219
  "$defs": {
117
220
  "ShotstackDestination": {
118
- "description": "S...",
119
221
  "properties": {
120
222
  "provider": {
121
223
  "type": "string",
@@ -126,8 +228,7 @@
126
228
  "exclude": {
127
229
  "anyOf": [
128
230
  {
129
- "type": "boolean",
130
- "description": "S..."
231
+ "type": "boolean"
131
232
  },
132
233
  {
133
234
  "type": "null"
@@ -143,7 +244,6 @@
143
244
  "additionalProperties": false
144
245
  },
145
246
  "S3Destination": {
146
- "description": "Send...",
147
247
  "properties": {
148
248
  "provider": {
149
249
  "type": "string",
@@ -172,7 +272,6 @@
172
272
  "S3DestinationOptions": {
173
273
  "properties": {
174
274
  "region": {
175
- "description": "C...",
176
275
  "type": "string"
177
276
  },
178
277
  "bucket": {
@@ -191,8 +290,7 @@
191
290
  "filename": {
192
291
  "anyOf": [
193
292
  {
194
- "type": "string",
195
- "description": "Use..."
293
+ "type": "string"
196
294
  },
197
295
  {
198
296
  "type": "null"
@@ -202,8 +300,7 @@
202
300
  "acl": {
203
301
  "anyOf": [
204
302
  {
205
- "type": "string",
206
- "description": "Se..."
303
+ "type": "string"
207
304
  },
208
305
  {
209
306
  "type": "null"
@@ -222,7 +319,6 @@
222
319
  "additionalProperties": false
223
320
  },
224
321
  "GoogleCloudStorageDestination": {
225
- "description": "Send...",
226
322
  "properties": {
227
323
  "provider": {
228
324
  "type": "string",
@@ -266,8 +362,7 @@
266
362
  "filename": {
267
363
  "anyOf": [
268
364
  {
269
- "type": "string",
270
- "description": "Use..."
365
+ "type": "string"
271
366
  },
272
367
  {
273
368
  "type": "null"
@@ -284,7 +379,6 @@
284
379
  "additionalProperties": false
285
380
  },
286
381
  "GoogleDriveDestination": {
287
- "description": "Send ...",
288
382
  "properties": {
289
383
  "provider": {
290
384
  "type": "string",
@@ -306,14 +400,12 @@
306
400
  "GoogleDriveDestinationOptions": {
307
401
  "properties": {
308
402
  "folderId": {
309
- "description": "The...",
310
403
  "type": "string"
311
404
  },
312
405
  "filename": {
313
406
  "anyOf": [
314
407
  {
315
- "type": "string",
316
- "description": "Use..."
408
+ "type": "string"
317
409
  },
318
410
  {
319
411
  "type": "null"
@@ -329,7 +421,6 @@
329
421
  "additionalProperties": false
330
422
  },
331
423
  "VimeoDestination": {
332
- "description": "Sen...",
333
424
  "properties": {
334
425
  "provider": {
335
426
  "type": "string",
@@ -413,7 +504,6 @@
413
504
  "anyOf": [
414
505
  {
415
506
  "type": "string",
416
- "description": "Set wh...",
417
507
  "enum": [
418
508
  "anybody",
419
509
  "nobody",
@@ -431,7 +521,6 @@
431
521
  "anyOf": [
432
522
  {
433
523
  "type": "string",
434
- "description": "Set...",
435
524
  "enum": [
436
525
  "public",
437
526
  "private",
@@ -447,7 +536,6 @@
447
536
  "anyOf": [
448
537
  {
449
538
  "type": "string",
450
- "description": "Set...",
451
539
  "enum": [
452
540
  "anybody",
453
541
  "nobody",