@transloadit/node 4.1.3

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.
Files changed (593) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +701 -0
  3. package/dist/ApiError.d.ts +22 -0
  4. package/dist/ApiError.d.ts.map +1 -0
  5. package/dist/ApiError.js +33 -0
  6. package/dist/ApiError.js.map +1 -0
  7. package/dist/InconsistentResponseError.d.ts +4 -0
  8. package/dist/InconsistentResponseError.d.ts.map +1 -0
  9. package/dist/InconsistentResponseError.js +4 -0
  10. package/dist/InconsistentResponseError.js.map +1 -0
  11. package/dist/PaginationStream.d.ts +14 -0
  12. package/dist/PaginationStream.d.ts.map +1 -0
  13. package/dist/PaginationStream.js +36 -0
  14. package/dist/PaginationStream.js.map +1 -0
  15. package/dist/PollingTimeoutError.d.ts +5 -0
  16. package/dist/PollingTimeoutError.d.ts.map +1 -0
  17. package/dist/PollingTimeoutError.js +5 -0
  18. package/dist/PollingTimeoutError.js.map +1 -0
  19. package/dist/Transloadit.d.ts +250 -0
  20. package/dist/Transloadit.d.ts.map +1 -0
  21. package/dist/Transloadit.js +661 -0
  22. package/dist/Transloadit.js.map +1 -0
  23. package/dist/alphalib/lib/nativeGlobby.d.ts +14 -0
  24. package/dist/alphalib/lib/nativeGlobby.d.ts.map +1 -0
  25. package/dist/alphalib/lib/nativeGlobby.js +181 -0
  26. package/dist/alphalib/lib/nativeGlobby.js.map +1 -0
  27. package/dist/alphalib/mcache.d.ts +65 -0
  28. package/dist/alphalib/mcache.d.ts.map +1 -0
  29. package/dist/alphalib/mcache.js +135 -0
  30. package/dist/alphalib/mcache.js.map +1 -0
  31. package/dist/alphalib/tryCatch.d.ts +21 -0
  32. package/dist/alphalib/tryCatch.d.ts.map +1 -0
  33. package/dist/alphalib/tryCatch.js +17 -0
  34. package/dist/alphalib/tryCatch.js.map +1 -0
  35. package/dist/alphalib/types/assembliesGet.d.ts +62 -0
  36. package/dist/alphalib/types/assembliesGet.d.ts.map +1 -0
  37. package/dist/alphalib/types/assembliesGet.js +33 -0
  38. package/dist/alphalib/types/assembliesGet.js.map +1 -0
  39. package/dist/alphalib/types/assemblyReplay.d.ts +7858 -0
  40. package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -0
  41. package/dist/alphalib/types/assemblyReplay.js +15 -0
  42. package/dist/alphalib/types/assemblyReplay.js.map +1 -0
  43. package/dist/alphalib/types/assemblyReplayNotification.d.ts +7849 -0
  44. package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -0
  45. package/dist/alphalib/types/assemblyReplayNotification.js +13 -0
  46. package/dist/alphalib/types/assemblyReplayNotification.js.map +1 -0
  47. package/dist/alphalib/types/assemblyStatus.d.ts +71084 -0
  48. package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -0
  49. package/dist/alphalib/types/assemblyStatus.js +710 -0
  50. package/dist/alphalib/types/assemblyStatus.js.map +1 -0
  51. package/dist/alphalib/types/bill.d.ts +44 -0
  52. package/dist/alphalib/types/bill.d.ts.map +1 -0
  53. package/dist/alphalib/types/bill.js +8 -0
  54. package/dist/alphalib/types/bill.js.map +1 -0
  55. package/dist/alphalib/types/robots/_index.d.ts +76306 -0
  56. package/dist/alphalib/types/robots/_index.d.ts.map +1 -0
  57. package/dist/alphalib/types/robots/_index.js +354 -0
  58. package/dist/alphalib/types/robots/_index.js.map +1 -0
  59. package/dist/alphalib/types/robots/_instructions-primitives.d.ts +3533 -0
  60. package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -0
  61. package/dist/alphalib/types/robots/_instructions-primitives.js +1491 -0
  62. package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -0
  63. package/dist/alphalib/types/robots/ai-chat.d.ts +2096 -0
  64. package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -0
  65. package/dist/alphalib/types/robots/ai-chat.js +223 -0
  66. package/dist/alphalib/types/robots/ai-chat.js.map +1 -0
  67. package/dist/alphalib/types/robots/assembly-savejson.d.ts +52 -0
  68. package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -0
  69. package/dist/alphalib/types/robots/assembly-savejson.js +22 -0
  70. package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -0
  71. package/dist/alphalib/types/robots/audio-artwork.d.ts +2867 -0
  72. package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -0
  73. package/dist/alphalib/types/robots/audio-artwork.js +73 -0
  74. package/dist/alphalib/types/robots/audio-artwork.js.map +1 -0
  75. package/dist/alphalib/types/robots/audio-concat.d.ts +2916 -0
  76. package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -0
  77. package/dist/alphalib/types/robots/audio-concat.js +106 -0
  78. package/dist/alphalib/types/robots/audio-concat.js.map +1 -0
  79. package/dist/alphalib/types/robots/audio-encode.d.ts +2864 -0
  80. package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -0
  81. package/dist/alphalib/types/robots/audio-encode.js +67 -0
  82. package/dist/alphalib/types/robots/audio-encode.js.map +1 -0
  83. package/dist/alphalib/types/robots/audio-loop.d.ts +2879 -0
  84. package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -0
  85. package/dist/alphalib/types/robots/audio-loop.js +67 -0
  86. package/dist/alphalib/types/robots/audio-loop.js.map +1 -0
  87. package/dist/alphalib/types/robots/audio-merge.d.ts +2931 -0
  88. package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -0
  89. package/dist/alphalib/types/robots/audio-merge.js +101 -0
  90. package/dist/alphalib/types/robots/audio-merge.js.map +1 -0
  91. package/dist/alphalib/types/robots/audio-waveform.d.ts +3131 -0
  92. package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -0
  93. package/dist/alphalib/types/robots/audio-waveform.js +238 -0
  94. package/dist/alphalib/types/robots/audio-waveform.js.map +1 -0
  95. package/dist/alphalib/types/robots/azure-import.d.ts +210 -0
  96. package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -0
  97. package/dist/alphalib/types/robots/azure-import.js +73 -0
  98. package/dist/alphalib/types/robots/azure-import.js.map +1 -0
  99. package/dist/alphalib/types/robots/azure-store.d.ts +562 -0
  100. package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -0
  101. package/dist/alphalib/types/robots/azure-store.js +115 -0
  102. package/dist/alphalib/types/robots/azure-store.js.map +1 -0
  103. package/dist/alphalib/types/robots/backblaze-import.d.ts +210 -0
  104. package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -0
  105. package/dist/alphalib/types/robots/backblaze-import.js +81 -0
  106. package/dist/alphalib/types/robots/backblaze-import.js.map +1 -0
  107. package/dist/alphalib/types/robots/backblaze-store.d.ts +478 -0
  108. package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -0
  109. package/dist/alphalib/types/robots/backblaze-store.js +76 -0
  110. package/dist/alphalib/types/robots/backblaze-store.js.map +1 -0
  111. package/dist/alphalib/types/robots/cloudfiles-import.d.ts +234 -0
  112. package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -0
  113. package/dist/alphalib/types/robots/cloudfiles-import.js +80 -0
  114. package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -0
  115. package/dist/alphalib/types/robots/cloudfiles-store.d.ts +490 -0
  116. package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -0
  117. package/dist/alphalib/types/robots/cloudfiles-store.js +70 -0
  118. package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -0
  119. package/dist/alphalib/types/robots/cloudflare-import.d.ts +234 -0
  120. package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -0
  121. package/dist/alphalib/types/robots/cloudflare-import.js +81 -0
  122. package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -0
  123. package/dist/alphalib/types/robots/cloudflare-store.d.ts +514 -0
  124. package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -0
  125. package/dist/alphalib/types/robots/cloudflare-store.js +86 -0
  126. package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -0
  127. package/dist/alphalib/types/robots/digitalocean-import.d.ts +234 -0
  128. package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -0
  129. package/dist/alphalib/types/robots/digitalocean-import.js +78 -0
  130. package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -0
  131. package/dist/alphalib/types/robots/digitalocean-store.d.ts +526 -0
  132. package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -0
  133. package/dist/alphalib/types/robots/digitalocean-store.js +91 -0
  134. package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -0
  135. package/dist/alphalib/types/robots/document-autorotate.d.ts +405 -0
  136. package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -0
  137. package/dist/alphalib/types/robots/document-autorotate.js +44 -0
  138. package/dist/alphalib/types/robots/document-autorotate.js.map +1 -0
  139. package/dist/alphalib/types/robots/document-convert.d.ts +513 -0
  140. package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -0
  141. package/dist/alphalib/types/robots/document-convert.js +273 -0
  142. package/dist/alphalib/types/robots/document-convert.js.map +1 -0
  143. package/dist/alphalib/types/robots/document-merge.d.ts +429 -0
  144. package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -0
  145. package/dist/alphalib/types/robots/document-merge.js +86 -0
  146. package/dist/alphalib/types/robots/document-merge.js.map +1 -0
  147. package/dist/alphalib/types/robots/document-ocr.d.ts +441 -0
  148. package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -0
  149. package/dist/alphalib/types/robots/document-ocr.js +86 -0
  150. package/dist/alphalib/types/robots/document-ocr.js.map +1 -0
  151. package/dist/alphalib/types/robots/document-split.d.ts +417 -0
  152. package/dist/alphalib/types/robots/document-split.d.ts.map +1 -0
  153. package/dist/alphalib/types/robots/document-split.js +48 -0
  154. package/dist/alphalib/types/robots/document-split.js.map +1 -0
  155. package/dist/alphalib/types/robots/document-thumbs.d.ts +592 -0
  156. package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -0
  157. package/dist/alphalib/types/robots/document-thumbs.js +196 -0
  158. package/dist/alphalib/types/robots/document-thumbs.js.map +1 -0
  159. package/dist/alphalib/types/robots/dropbox-import.d.ts +144 -0
  160. package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -0
  161. package/dist/alphalib/types/robots/dropbox-import.js +65 -0
  162. package/dist/alphalib/types/robots/dropbox-import.js.map +1 -0
  163. package/dist/alphalib/types/robots/dropbox-store.d.ts +449 -0
  164. package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -0
  165. package/dist/alphalib/types/robots/dropbox-store.js +68 -0
  166. package/dist/alphalib/types/robots/dropbox-store.js.map +1 -0
  167. package/dist/alphalib/types/robots/edgly-deliver.d.ts +100 -0
  168. package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -0
  169. package/dist/alphalib/types/robots/edgly-deliver.js +46 -0
  170. package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -0
  171. package/dist/alphalib/types/robots/file-compress.d.ts +477 -0
  172. package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -0
  173. package/dist/alphalib/types/robots/file-compress.js +139 -0
  174. package/dist/alphalib/types/robots/file-compress.js.map +1 -0
  175. package/dist/alphalib/types/robots/file-decompress.d.ts +404 -0
  176. package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -0
  177. package/dist/alphalib/types/robots/file-decompress.js +94 -0
  178. package/dist/alphalib/types/robots/file-decompress.js.map +1 -0
  179. package/dist/alphalib/types/robots/file-filter.d.ts +465 -0
  180. package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -0
  181. package/dist/alphalib/types/robots/file-filter.js +136 -0
  182. package/dist/alphalib/types/robots/file-filter.js.map +1 -0
  183. package/dist/alphalib/types/robots/file-hash.d.ts +417 -0
  184. package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -0
  185. package/dist/alphalib/types/robots/file-hash.js +59 -0
  186. package/dist/alphalib/types/robots/file-hash.js.map +1 -0
  187. package/dist/alphalib/types/robots/file-preview.d.ts +854 -0
  188. package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -0
  189. package/dist/alphalib/types/robots/file-preview.js +221 -0
  190. package/dist/alphalib/types/robots/file-preview.js.map +1 -0
  191. package/dist/alphalib/types/robots/file-read.d.ts +405 -0
  192. package/dist/alphalib/types/robots/file-read.d.ts.map +1 -0
  193. package/dist/alphalib/types/robots/file-read.js +44 -0
  194. package/dist/alphalib/types/robots/file-read.js.map +1 -0
  195. package/dist/alphalib/types/robots/file-serve.d.ts +418 -0
  196. package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -0
  197. package/dist/alphalib/types/robots/file-serve.js +99 -0
  198. package/dist/alphalib/types/robots/file-serve.js.map +1 -0
  199. package/dist/alphalib/types/robots/file-verify.d.ts +441 -0
  200. package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -0
  201. package/dist/alphalib/types/robots/file-verify.js +73 -0
  202. package/dist/alphalib/types/robots/file-verify.js.map +1 -0
  203. package/dist/alphalib/types/robots/file-virusscan.d.ts +435 -0
  204. package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -0
  205. package/dist/alphalib/types/robots/file-virusscan.js +82 -0
  206. package/dist/alphalib/types/robots/file-virusscan.js.map +1 -0
  207. package/dist/alphalib/types/robots/file-watermark.d.ts +417 -0
  208. package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -0
  209. package/dist/alphalib/types/robots/file-watermark.js +28 -0
  210. package/dist/alphalib/types/robots/file-watermark.js.map +1 -0
  211. package/dist/alphalib/types/robots/ftp-import.d.ts +198 -0
  212. package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -0
  213. package/dist/alphalib/types/robots/ftp-import.js +60 -0
  214. package/dist/alphalib/types/robots/ftp-import.js.map +1 -0
  215. package/dist/alphalib/types/robots/ftp-store.d.ts +532 -0
  216. package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -0
  217. package/dist/alphalib/types/robots/ftp-store.js +91 -0
  218. package/dist/alphalib/types/robots/ftp-store.js.map +1 -0
  219. package/dist/alphalib/types/robots/google-import.d.ts +174 -0
  220. package/dist/alphalib/types/robots/google-import.d.ts.map +1 -0
  221. package/dist/alphalib/types/robots/google-import.js +77 -0
  222. package/dist/alphalib/types/robots/google-import.js.map +1 -0
  223. package/dist/alphalib/types/robots/google-store.d.ts +476 -0
  224. package/dist/alphalib/types/robots/google-store.d.ts.map +1 -0
  225. package/dist/alphalib/types/robots/google-store.js +111 -0
  226. package/dist/alphalib/types/robots/google-store.js.map +1 -0
  227. package/dist/alphalib/types/robots/html-convert.d.ts +531 -0
  228. package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -0
  229. package/dist/alphalib/types/robots/html-convert.js +137 -0
  230. package/dist/alphalib/types/robots/html-convert.js.map +1 -0
  231. package/dist/alphalib/types/robots/http-import.d.ts +215 -0
  232. package/dist/alphalib/types/robots/http-import.d.ts.map +1 -0
  233. package/dist/alphalib/types/robots/http-import.js +135 -0
  234. package/dist/alphalib/types/robots/http-import.js.map +1 -0
  235. package/dist/alphalib/types/robots/image-bgremove.d.ts +453 -0
  236. package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -0
  237. package/dist/alphalib/types/robots/image-bgremove.js +65 -0
  238. package/dist/alphalib/types/robots/image-bgremove.js.map +1 -0
  239. package/dist/alphalib/types/robots/image-describe.d.ts +453 -0
  240. package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -0
  241. package/dist/alphalib/types/robots/image-describe.js +86 -0
  242. package/dist/alphalib/types/robots/image-describe.js.map +1 -0
  243. package/dist/alphalib/types/robots/image-facedetect.d.ts +477 -0
  244. package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -0
  245. package/dist/alphalib/types/robots/image-facedetect.js +151 -0
  246. package/dist/alphalib/types/robots/image-facedetect.js.map +1 -0
  247. package/dist/alphalib/types/robots/image-generate.d.ts +522 -0
  248. package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -0
  249. package/dist/alphalib/types/robots/image-generate.js +64 -0
  250. package/dist/alphalib/types/robots/image-generate.js.map +1 -0
  251. package/dist/alphalib/types/robots/image-merge.d.ts +477 -0
  252. package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -0
  253. package/dist/alphalib/types/robots/image-merge.js +92 -0
  254. package/dist/alphalib/types/robots/image-merge.js.map +1 -0
  255. package/dist/alphalib/types/robots/image-ocr.d.ts +441 -0
  256. package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -0
  257. package/dist/alphalib/types/robots/image-ocr.js +79 -0
  258. package/dist/alphalib/types/robots/image-ocr.js.map +1 -0
  259. package/dist/alphalib/types/robots/image-optimize.d.ts +453 -0
  260. package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -0
  261. package/dist/alphalib/types/robots/image-optimize.js +81 -0
  262. package/dist/alphalib/types/robots/image-optimize.js.map +1 -0
  263. package/dist/alphalib/types/robots/image-resize.d.ts +1758 -0
  264. package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -0
  265. package/dist/alphalib/types/robots/image-resize.js +602 -0
  266. package/dist/alphalib/types/robots/image-resize.js.map +1 -0
  267. package/dist/alphalib/types/robots/meta-read.d.ts +98 -0
  268. package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -0
  269. package/dist/alphalib/types/robots/meta-read.js +24 -0
  270. package/dist/alphalib/types/robots/meta-read.js.map +1 -0
  271. package/dist/alphalib/types/robots/meta-write.d.ts +2842 -0
  272. package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -0
  273. package/dist/alphalib/types/robots/meta-write.js +66 -0
  274. package/dist/alphalib/types/robots/meta-write.js.map +1 -0
  275. package/dist/alphalib/types/robots/minio-import.d.ts +234 -0
  276. package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -0
  277. package/dist/alphalib/types/robots/minio-import.js +81 -0
  278. package/dist/alphalib/types/robots/minio-import.js.map +1 -0
  279. package/dist/alphalib/types/robots/minio-store.d.ts +514 -0
  280. package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -0
  281. package/dist/alphalib/types/robots/minio-store.js +87 -0
  282. package/dist/alphalib/types/robots/minio-store.js.map +1 -0
  283. package/dist/alphalib/types/robots/progress-simulate.d.ts +229 -0
  284. package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -0
  285. package/dist/alphalib/types/robots/progress-simulate.js +25 -0
  286. package/dist/alphalib/types/robots/progress-simulate.js.map +1 -0
  287. package/dist/alphalib/types/robots/s3-import.d.ts +246 -0
  288. package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -0
  289. package/dist/alphalib/types/robots/s3-import.js +137 -0
  290. package/dist/alphalib/types/robots/s3-import.js.map +1 -0
  291. package/dist/alphalib/types/robots/s3-store.d.ts +593 -0
  292. package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -0
  293. package/dist/alphalib/types/robots/s3-store.js +169 -0
  294. package/dist/alphalib/types/robots/s3-store.js.map +1 -0
  295. package/dist/alphalib/types/robots/script-run.d.ts +423 -0
  296. package/dist/alphalib/types/robots/script-run.d.ts.map +1 -0
  297. package/dist/alphalib/types/robots/script-run.js +95 -0
  298. package/dist/alphalib/types/robots/script-run.js.map +1 -0
  299. package/dist/alphalib/types/robots/sftp-import.d.ts +192 -0
  300. package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -0
  301. package/dist/alphalib/types/robots/sftp-import.js +62 -0
  302. package/dist/alphalib/types/robots/sftp-import.js.map +1 -0
  303. package/dist/alphalib/types/robots/sftp-store.d.ts +520 -0
  304. package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -0
  305. package/dist/alphalib/types/robots/sftp-store.js +83 -0
  306. package/dist/alphalib/types/robots/sftp-store.js.map +1 -0
  307. package/dist/alphalib/types/robots/speech-transcribe.d.ts +465 -0
  308. package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -0
  309. package/dist/alphalib/types/robots/speech-transcribe.js +103 -0
  310. package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -0
  311. package/dist/alphalib/types/robots/supabase-import.d.ts +246 -0
  312. package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -0
  313. package/dist/alphalib/types/robots/supabase-import.js +83 -0
  314. package/dist/alphalib/types/robots/supabase-import.js.map +1 -0
  315. package/dist/alphalib/types/robots/supabase-store.d.ts +514 -0
  316. package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -0
  317. package/dist/alphalib/types/robots/supabase-store.js +77 -0
  318. package/dist/alphalib/types/robots/supabase-store.js.map +1 -0
  319. package/dist/alphalib/types/robots/swift-import.d.ts +246 -0
  320. package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -0
  321. package/dist/alphalib/types/robots/swift-import.js +81 -0
  322. package/dist/alphalib/types/robots/swift-import.js.map +1 -0
  323. package/dist/alphalib/types/robots/swift-store.d.ts +526 -0
  324. package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -0
  325. package/dist/alphalib/types/robots/swift-store.js +84 -0
  326. package/dist/alphalib/types/robots/swift-store.js.map +1 -0
  327. package/dist/alphalib/types/robots/text-speak.d.ts +465 -0
  328. package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -0
  329. package/dist/alphalib/types/robots/text-speak.js +119 -0
  330. package/dist/alphalib/types/robots/text-speak.js.map +1 -0
  331. package/dist/alphalib/types/robots/text-translate.d.ts +441 -0
  332. package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -0
  333. package/dist/alphalib/types/robots/text-translate.js +211 -0
  334. package/dist/alphalib/types/robots/text-translate.js.map +1 -0
  335. package/dist/alphalib/types/robots/tigris-import.d.ts +244 -0
  336. package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -0
  337. package/dist/alphalib/types/robots/tigris-import.js +85 -0
  338. package/dist/alphalib/types/robots/tigris-import.js.map +1 -0
  339. package/dist/alphalib/types/robots/tigris-store.d.ts +524 -0
  340. package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -0
  341. package/dist/alphalib/types/robots/tigris-store.js +91 -0
  342. package/dist/alphalib/types/robots/tigris-store.js.map +1 -0
  343. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts +100 -0
  344. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -0
  345. package/dist/alphalib/types/robots/tlcdn-deliver.js +46 -0
  346. package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -0
  347. package/dist/alphalib/types/robots/tus-store.d.ts +477 -0
  348. package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -0
  349. package/dist/alphalib/types/robots/tus-store.js +102 -0
  350. package/dist/alphalib/types/robots/tus-store.js.map +1 -0
  351. package/dist/alphalib/types/robots/upload-handle.d.ts +100 -0
  352. package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -0
  353. package/dist/alphalib/types/robots/upload-handle.js +66 -0
  354. package/dist/alphalib/types/robots/upload-handle.js.map +1 -0
  355. package/dist/alphalib/types/robots/video-adaptive.d.ts +2915 -0
  356. package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -0
  357. package/dist/alphalib/types/robots/video-adaptive.js +144 -0
  358. package/dist/alphalib/types/robots/video-adaptive.js.map +1 -0
  359. package/dist/alphalib/types/robots/video-concat.d.ts +2891 -0
  360. package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -0
  361. package/dist/alphalib/types/robots/video-concat.js +96 -0
  362. package/dist/alphalib/types/robots/video-concat.js.map +1 -0
  363. package/dist/alphalib/types/robots/video-encode.d.ts +3280 -0
  364. package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -0
  365. package/dist/alphalib/types/robots/video-encode.js +107 -0
  366. package/dist/alphalib/types/robots/video-encode.js.map +1 -0
  367. package/dist/alphalib/types/robots/video-merge.d.ts +2987 -0
  368. package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -0
  369. package/dist/alphalib/types/robots/video-merge.js +102 -0
  370. package/dist/alphalib/types/robots/video-merge.js.map +1 -0
  371. package/dist/alphalib/types/robots/video-ondemand.d.ts +4553 -0
  372. package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -0
  373. package/dist/alphalib/types/robots/video-ondemand.js +112 -0
  374. package/dist/alphalib/types/robots/video-ondemand.js.map +1 -0
  375. package/dist/alphalib/types/robots/video-subtitle.d.ts +2975 -0
  376. package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -0
  377. package/dist/alphalib/types/robots/video-subtitle.js +122 -0
  378. package/dist/alphalib/types/robots/video-subtitle.js.map +1 -0
  379. package/dist/alphalib/types/robots/video-thumbs.d.ts +2938 -0
  380. package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -0
  381. package/dist/alphalib/types/robots/video-thumbs.js +122 -0
  382. package/dist/alphalib/types/robots/video-thumbs.js.map +1 -0
  383. package/dist/alphalib/types/robots/vimeo-import.d.ts +189 -0
  384. package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -0
  385. package/dist/alphalib/types/robots/vimeo-import.js +92 -0
  386. package/dist/alphalib/types/robots/vimeo-import.js.map +1 -0
  387. package/dist/alphalib/types/robots/vimeo-store.d.ts +520 -0
  388. package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -0
  389. package/dist/alphalib/types/robots/vimeo-store.js +115 -0
  390. package/dist/alphalib/types/robots/vimeo-store.js.map +1 -0
  391. package/dist/alphalib/types/robots/wasabi-import.d.ts +244 -0
  392. package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -0
  393. package/dist/alphalib/types/robots/wasabi-import.js +85 -0
  394. package/dist/alphalib/types/robots/wasabi-import.js.map +1 -0
  395. package/dist/alphalib/types/robots/wasabi-store.d.ts +526 -0
  396. package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -0
  397. package/dist/alphalib/types/robots/wasabi-store.js +85 -0
  398. package/dist/alphalib/types/robots/wasabi-store.js.map +1 -0
  399. package/dist/alphalib/types/robots/youtube-store.d.ts +477 -0
  400. package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -0
  401. package/dist/alphalib/types/robots/youtube-store.js +122 -0
  402. package/dist/alphalib/types/robots/youtube-store.js.map +1 -0
  403. package/dist/alphalib/types/stackVersions.d.ts +13 -0
  404. package/dist/alphalib/types/stackVersions.d.ts.map +1 -0
  405. package/dist/alphalib/types/stackVersions.js +13 -0
  406. package/dist/alphalib/types/stackVersions.js.map +1 -0
  407. package/dist/alphalib/types/template.d.ts +131710 -0
  408. package/dist/alphalib/types/template.d.ts.map +1 -0
  409. package/dist/alphalib/types/template.js +218 -0
  410. package/dist/alphalib/types/template.js.map +1 -0
  411. package/dist/alphalib/types/templateCredential.d.ts +95 -0
  412. package/dist/alphalib/types/templateCredential.d.ts.map +1 -0
  413. package/dist/alphalib/types/templateCredential.js +57 -0
  414. package/dist/alphalib/types/templateCredential.js.map +1 -0
  415. package/dist/alphalib/zodParseWithContext.d.ts +17 -0
  416. package/dist/alphalib/zodParseWithContext.d.ts.map +1 -0
  417. package/dist/alphalib/zodParseWithContext.js +248 -0
  418. package/dist/alphalib/zodParseWithContext.js.map +1 -0
  419. package/dist/apiTypes.d.ts +112 -0
  420. package/dist/apiTypes.d.ts.map +1 -0
  421. package/dist/apiTypes.js +3 -0
  422. package/dist/apiTypes.js.map +1 -0
  423. package/dist/cli/OutputCtl.d.ts +47 -0
  424. package/dist/cli/OutputCtl.d.ts.map +1 -0
  425. package/dist/cli/OutputCtl.js +85 -0
  426. package/dist/cli/OutputCtl.js.map +1 -0
  427. package/dist/cli/commands/BaseCommand.d.ts +24 -0
  428. package/dist/cli/commands/BaseCommand.d.ts.map +1 -0
  429. package/dist/cli/commands/BaseCommand.js +52 -0
  430. package/dist/cli/commands/BaseCommand.js.map +1 -0
  431. package/dist/cli/commands/assemblies.d.ts +93 -0
  432. package/dist/cli/commands/assemblies.d.ts.map +1 -0
  433. package/dist/cli/commands/assemblies.js +1021 -0
  434. package/dist/cli/commands/assemblies.js.map +1 -0
  435. package/dist/cli/commands/auth.d.ts +28 -0
  436. package/dist/cli/commands/auth.d.ts.map +1 -0
  437. package/dist/cli/commands/auth.js +280 -0
  438. package/dist/cli/commands/auth.js.map +1 -0
  439. package/dist/cli/commands/bills.d.ts +14 -0
  440. package/dist/cli/commands/bills.d.ts.map +1 -0
  441. package/dist/cli/commands/bills.js +69 -0
  442. package/dist/cli/commands/bills.js.map +1 -0
  443. package/dist/cli/commands/index.d.ts +3 -0
  444. package/dist/cli/commands/index.d.ts.map +1 -0
  445. package/dist/cli/commands/index.js +39 -0
  446. package/dist/cli/commands/index.js.map +1 -0
  447. package/dist/cli/commands/notifications.d.ts +9 -0
  448. package/dist/cli/commands/notifications.d.ts.map +1 -0
  449. package/dist/cli/commands/notifications.js +44 -0
  450. package/dist/cli/commands/notifications.js.map +1 -0
  451. package/dist/cli/commands/templates.d.ts +73 -0
  452. package/dist/cli/commands/templates.d.ts.map +1 -0
  453. package/dist/cli/commands/templates.js +428 -0
  454. package/dist/cli/commands/templates.js.map +1 -0
  455. package/dist/cli/helpers.d.ts +13 -0
  456. package/dist/cli/helpers.d.ts.map +1 -0
  457. package/dist/cli/helpers.js +39 -0
  458. package/dist/cli/helpers.js.map +1 -0
  459. package/dist/cli/template-last-modified.d.ts +10 -0
  460. package/dist/cli/template-last-modified.d.ts.map +1 -0
  461. package/dist/cli/template-last-modified.js +134 -0
  462. package/dist/cli/template-last-modified.js.map +1 -0
  463. package/dist/cli/types.d.ts +78 -0
  464. package/dist/cli/types.d.ts.map +1 -0
  465. package/dist/cli/types.js +49 -0
  466. package/dist/cli/types.js.map +1 -0
  467. package/dist/cli.d.ts +6 -0
  468. package/dist/cli.d.ts.map +1 -0
  469. package/dist/cli.js +41 -0
  470. package/dist/cli.js.map +1 -0
  471. package/dist/tus.d.ts +18 -0
  472. package/dist/tus.d.ts.map +1 -0
  473. package/dist/tus.js +122 -0
  474. package/dist/tus.js.map +1 -0
  475. package/package.json +92 -0
  476. package/src/ApiError.ts +49 -0
  477. package/src/InconsistentResponseError.ts +3 -0
  478. package/src/PaginationStream.ts +54 -0
  479. package/src/PollingTimeoutError.ts +5 -0
  480. package/src/Transloadit.ts +980 -0
  481. package/src/alphalib/lib/nativeGlobby.ts +244 -0
  482. package/src/alphalib/mcache.ts +184 -0
  483. package/src/alphalib/tryCatch.ts +30 -0
  484. package/src/alphalib/types/assembliesGet.ts +42 -0
  485. package/src/alphalib/types/assemblyReplay.ts +24 -0
  486. package/src/alphalib/types/assemblyReplayNotification.ts +16 -0
  487. package/src/alphalib/types/assemblyStatus.ts +794 -0
  488. package/src/alphalib/types/bill.ts +9 -0
  489. package/src/alphalib/types/robots/_index.ts +1201 -0
  490. package/src/alphalib/types/robots/_instructions-primitives.ts +1770 -0
  491. package/src/alphalib/types/robots/ai-chat.ts +278 -0
  492. package/src/alphalib/types/robots/assembly-savejson.ts +37 -0
  493. package/src/alphalib/types/robots/audio-artwork.ts +107 -0
  494. package/src/alphalib/types/robots/audio-concat.ts +142 -0
  495. package/src/alphalib/types/robots/audio-encode.ts +103 -0
  496. package/src/alphalib/types/robots/audio-loop.ts +102 -0
  497. package/src/alphalib/types/robots/audio-merge.ts +137 -0
  498. package/src/alphalib/types/robots/audio-waveform.ts +280 -0
  499. package/src/alphalib/types/robots/azure-import.ts +111 -0
  500. package/src/alphalib/types/robots/azure-store.ts +143 -0
  501. package/src/alphalib/types/robots/backblaze-import.ts +119 -0
  502. package/src/alphalib/types/robots/backblaze-store.ts +104 -0
  503. package/src/alphalib/types/robots/cloudfiles-import.ts +118 -0
  504. package/src/alphalib/types/robots/cloudfiles-store.ts +104 -0
  505. package/src/alphalib/types/robots/cloudflare-import.ts +121 -0
  506. package/src/alphalib/types/robots/cloudflare-store.ts +120 -0
  507. package/src/alphalib/types/robots/digitalocean-import.ts +118 -0
  508. package/src/alphalib/types/robots/digitalocean-store.ts +125 -0
  509. package/src/alphalib/types/robots/document-autorotate.ts +74 -0
  510. package/src/alphalib/types/robots/document-convert.ts +302 -0
  511. package/src/alphalib/types/robots/document-merge.ts +114 -0
  512. package/src/alphalib/types/robots/document-ocr.ts +120 -0
  513. package/src/alphalib/types/robots/document-split.ts +78 -0
  514. package/src/alphalib/types/robots/document-thumbs.ts +231 -0
  515. package/src/alphalib/types/robots/dropbox-import.ts +100 -0
  516. package/src/alphalib/types/robots/dropbox-store.ts +97 -0
  517. package/src/alphalib/types/robots/edgly-deliver.ts +73 -0
  518. package/src/alphalib/types/robots/file-compress.ts +167 -0
  519. package/src/alphalib/types/robots/file-decompress.ts +125 -0
  520. package/src/alphalib/types/robots/file-filter.ts +173 -0
  521. package/src/alphalib/types/robots/file-hash.ts +86 -0
  522. package/src/alphalib/types/robots/file-preview.ts +260 -0
  523. package/src/alphalib/types/robots/file-read.ts +71 -0
  524. package/src/alphalib/types/robots/file-serve.ts +128 -0
  525. package/src/alphalib/types/robots/file-verify.ts +102 -0
  526. package/src/alphalib/types/robots/file-virusscan.ts +113 -0
  527. package/src/alphalib/types/robots/file-watermark.ts +56 -0
  528. package/src/alphalib/types/robots/ftp-import.ts +95 -0
  529. package/src/alphalib/types/robots/ftp-store.ts +119 -0
  530. package/src/alphalib/types/robots/google-import.ts +115 -0
  531. package/src/alphalib/types/robots/google-store.ts +139 -0
  532. package/src/alphalib/types/robots/html-convert.ts +165 -0
  533. package/src/alphalib/types/robots/http-import.ts +168 -0
  534. package/src/alphalib/types/robots/image-bgremove.ts +95 -0
  535. package/src/alphalib/types/robots/image-describe.ts +121 -0
  536. package/src/alphalib/types/robots/image-facedetect.ts +187 -0
  537. package/src/alphalib/types/robots/image-generate.ts +92 -0
  538. package/src/alphalib/types/robots/image-merge.ts +127 -0
  539. package/src/alphalib/types/robots/image-ocr.ts +112 -0
  540. package/src/alphalib/types/robots/image-optimize.ts +114 -0
  541. package/src/alphalib/types/robots/image-resize.ts +653 -0
  542. package/src/alphalib/types/robots/meta-read.ts +44 -0
  543. package/src/alphalib/types/robots/meta-write.ts +93 -0
  544. package/src/alphalib/types/robots/minio-import.ts +120 -0
  545. package/src/alphalib/types/robots/minio-store.ts +115 -0
  546. package/src/alphalib/types/robots/progress-simulate.ts +40 -0
  547. package/src/alphalib/types/robots/s3-import.ts +175 -0
  548. package/src/alphalib/types/robots/s3-store.ts +198 -0
  549. package/src/alphalib/types/robots/script-run.ts +122 -0
  550. package/src/alphalib/types/robots/sftp-import.ts +92 -0
  551. package/src/alphalib/types/robots/sftp-store.ts +110 -0
  552. package/src/alphalib/types/robots/speech-transcribe.ts +139 -0
  553. package/src/alphalib/types/robots/supabase-import.ts +122 -0
  554. package/src/alphalib/types/robots/supabase-store.ts +105 -0
  555. package/src/alphalib/types/robots/swift-import.ts +120 -0
  556. package/src/alphalib/types/robots/swift-store.ts +112 -0
  557. package/src/alphalib/types/robots/text-speak.ts +152 -0
  558. package/src/alphalib/types/robots/text-translate.ts +245 -0
  559. package/src/alphalib/types/robots/tigris-import.ts +124 -0
  560. package/src/alphalib/types/robots/tigris-store.ts +119 -0
  561. package/src/alphalib/types/robots/tlcdn-deliver.ts +73 -0
  562. package/src/alphalib/types/robots/tus-store.ts +129 -0
  563. package/src/alphalib/types/robots/upload-handle.ts +95 -0
  564. package/src/alphalib/types/robots/video-adaptive.ts +179 -0
  565. package/src/alphalib/types/robots/video-concat.ts +130 -0
  566. package/src/alphalib/types/robots/video-encode.ts +141 -0
  567. package/src/alphalib/types/robots/video-merge.ts +138 -0
  568. package/src/alphalib/types/robots/video-ondemand.ts +161 -0
  569. package/src/alphalib/types/robots/video-subtitle.ts +159 -0
  570. package/src/alphalib/types/robots/video-thumbs.ts +158 -0
  571. package/src/alphalib/types/robots/vimeo-import.ts +126 -0
  572. package/src/alphalib/types/robots/vimeo-store.ts +143 -0
  573. package/src/alphalib/types/robots/wasabi-import.ts +124 -0
  574. package/src/alphalib/types/robots/wasabi-store.ts +113 -0
  575. package/src/alphalib/types/robots/youtube-store.ts +153 -0
  576. package/src/alphalib/types/stackVersions.ts +12 -0
  577. package/src/alphalib/types/template.ts +277 -0
  578. package/src/alphalib/types/templateCredential.ts +61 -0
  579. package/src/alphalib/zodParseWithContext.ts +306 -0
  580. package/src/apiTypes.ts +154 -0
  581. package/src/cli/OutputCtl.ts +115 -0
  582. package/src/cli/commands/BaseCommand.ts +71 -0
  583. package/src/cli/commands/assemblies.ts +1373 -0
  584. package/src/cli/commands/auth.ts +354 -0
  585. package/src/cli/commands/bills.ts +91 -0
  586. package/src/cli/commands/index.ts +65 -0
  587. package/src/cli/commands/notifications.ts +63 -0
  588. package/src/cli/commands/templates.ts +556 -0
  589. package/src/cli/helpers.ts +50 -0
  590. package/src/cli/template-last-modified.ts +156 -0
  591. package/src/cli/types.ts +70 -0
  592. package/src/cli.ts +44 -0
  593. package/src/tus.ts +168 -0
@@ -0,0 +1,198 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import { interpolateRobot, robotBase, robotUse, s3Base } from './_instructions-primitives.ts'
5
+
6
+ export const meta: RobotMetaInput = {
7
+ allowed_for_url_transform: true,
8
+ bytescount: 10,
9
+ discount_factor: 0.1,
10
+ discount_pct: 90,
11
+ example_code: {
12
+ steps: {
13
+ exported: {
14
+ robot: '/s3/store',
15
+ use: ':original',
16
+ credentials: 'YOUR_AWS_CREDENTIALS',
17
+ path: 'my_target_folder/${unique_prefix}/${file.url_name}',
18
+ },
19
+ },
20
+ },
21
+ example_code_description: 'Export uploaded files to `my_target_folder` in an S3 bucket:',
22
+ has_small_icon: true,
23
+ minimum_charge: 0,
24
+ output_factor: 1,
25
+ override_lvl1: 'File Exporting',
26
+ purpose_sentence: 'exports encoding results to Amazon S3',
27
+ purpose_verb: 'export',
28
+ purpose_word: 'Amazon S3',
29
+ purpose_words: 'Export files to Amazon S3',
30
+ service_slug: 'file-exporting',
31
+ slot_count: 2,
32
+ title: 'Export files to Amazon S3',
33
+ typical_file_size_mb: 1.2,
34
+ typical_file_type: 'file',
35
+ name: 'S3StoreRobot',
36
+ priceFactor: 10,
37
+ queueSlotCount: 2,
38
+ isAllowedForUrlTransform: true,
39
+ trackOutputFileSize: false,
40
+ isInternal: false,
41
+ stage: 'ga',
42
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
43
+ }
44
+
45
+ export const robotS3StoreInstructionsSchema = robotBase
46
+ .merge(robotUse)
47
+ .merge(s3Base)
48
+ .extend({
49
+ robot: z.literal('/s3/store').describe(`
50
+ If you are new to Amazon S3, see our tutorial on [using your own S3 bucket](/docs/faq/how-to-set-up-an-amazon-s3-bucket/).
51
+
52
+ The URL to the result file in your S3 bucket will be returned in the <dfn>Assembly Status JSON</dfn>. If your S3 bucket has versioning enabled, the version ID of the file will be returned within \`meta.version_id\`
53
+
54
+ > [!Warning]
55
+ > **Avoid permission errors.** By default, \`acl\` is set to \`"public"\`. AWS S3 has a bucket setting called "Block new public ACLs and uploading public objects". Set this to <strong>False</strong> in your bucket if you intend to leave \`acl\` as \`"public"\`. Otherwise, you’ll receive permission errors in your Assemblies despite your S3 credentials being configured correctly.
56
+
57
+ > [!Warning]
58
+ > **Use DNS-compliant bucket names.** Your bucket name [must be DNS-compliant](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html) and must not contain uppercase letters. Any non-alphanumeric characters in the file names will be replaced with an underscore, and spaces will be replaced with dashes. If your existing S3 bucket contains uppercase letters or is otherwise not DNS-compliant, rewrite the result URLs using the <dfn>Robot</dfn>’s \`url_prefix\` parameter.
59
+
60
+ <span id="minimum-s3-iam-permissions" aria-hidden="true"></span>
61
+
62
+ ## Limit access
63
+
64
+ You will also need to add permissions to your bucket so that Transloadit can access it properly. Here is an example IAM policy that you can use. Following the [principle of least privilege](https://en.wikipedia.org/wiki/Principle_of_least_privilege), it contains the **minimum required permissions** to export a file to your S3 bucket using Transloadit. You may require more permissions (especially viewing permissions) depending on your application.
65
+
66
+ Please change \`{BUCKET_NAME}\` in the values for \`Sid\` and \`Resource\` accordingly. Also, this policy will grant the minimum required permissions to all your users. We advise you to create a separate Amazon IAM user, and use its User ARN (can be found in the "Summary" tab of a user [here](https://console.aws.amazon.com/iam/home#users)) for the \`Principal\` value. More information about this can be found [here](https://docs.aws.amazon.com/AmazonS3/latest/dev/AccessPolicyLanguage_UseCases_s3_a.html).
67
+
68
+ \`\`\`json
69
+ {
70
+ "Version": "2012-10-17",
71
+ "Statement": [
72
+ {
73
+ "Sid": "AllowTransloaditToStoreFilesIn{BUCKET_NAME}Bucket",
74
+ "Effect": "Allow",
75
+ "Action": ["s3:GetBucketLocation", "s3:ListBucket", "s3:PutObject", "s3:PutObjectAcl"],
76
+ "Resource": ["arn:aws:s3:::{BUCKET_NAME}", "arn:aws:s3:::{BUCKET_NAME}/*"]
77
+ }
78
+ ]
79
+ }
80
+ \`\`\`
81
+
82
+ The \`Sid\` value is just an identifier for you to recognize the rule later. You can name it anything you like.
83
+
84
+ The policy needs to be separated into two parts, because the \`ListBucket\` action requires permissions on the bucket while the other actions require permissions on the objects in the bucket. When targeting the objects there's a trailing slash and an asterisk in the \`Resource\` parameter, whereas when the policy targets the bucket, the slash and the asterisk are omitted.
85
+
86
+ Please note that if you give the <dfn>Robot</dfn>'s \`acl\` parameter a value of \`"bucket-default"\`, then you do not need the \`"s3:PutObjectAcl"\` permission in your bucket policy.
87
+
88
+ In order to build proper result URLs we need to know the region in which your S3 bucket resides. For this we require the \`GetBucketLocation\` permission. Figuring out your bucket's region this way will also slow down your Assemblies. To make this much faster and to also not require the \`GetBucketLocation\` permission, we have added the \`bucket_region\` parameter to the /s3/store and /s3/import Robots. We recommend using them at all times.
89
+
90
+ Please keep in mind that if you use bucket encryption you may also need to add \`"sts:*"\` and \`"kms:*"\` to the bucket policy. Please read [here](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html) and [here](https://aws.amazon.com/blogs/security/how-to-restrict-amazon-s3-bucket-access-to-a-specific-iam-role/) in case you run into trouble with our example bucket policy.
91
+ `),
92
+ path: z
93
+ .string()
94
+ .default('${unique_prefix}/${file.url_name}')
95
+ .describe(`
96
+ The path at which the file is to be stored. This may include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables). The path must not be a directory.
97
+ `),
98
+ url_prefix: z
99
+ .string()
100
+ .default('http://{bucket}.s3.amazonaws.com/')
101
+ .describe(`
102
+ The URL prefix used for the returned URL, such as \`"http://my.cdn.com/some/path/"\`.
103
+ `),
104
+ acl: z
105
+ .enum(['bucket-default', 'private', 'public', 'public-read'])
106
+ .default('public-read')
107
+ .describe(`
108
+ The permissions used for this file.
109
+
110
+ Please keep in mind that the default value \`"public-read"\` can lead to permission errors due to the \`"Block all public access"\` checkbox that is checked by default when creating a new Amazon S3 Bucket in the AWS console.
111
+ `),
112
+ check_integrity: z
113
+ .boolean()
114
+ .default(false)
115
+ .describe(`
116
+ Calculate and submit the file's checksum in order for S3 to verify its integrity after uploading, which can help with occasional file corruption issues.
117
+
118
+ Enabling this option adds to the overall execution time, as integrity checking can be CPU intensive, especially for larger files.
119
+ `),
120
+ headers: z
121
+ .record(z.string())
122
+ .default({ 'Content-Type': '${file.mime}' })
123
+ .describe(`
124
+ An object containing a list of headers to be set for this file on S3, such as \`{ FileURL: "\${file.url_name}" }\`. This can also include any available [Assembly Variables](/docs/topics/assembly-instructions/#assembly-variables). You can find a list of available headers [here](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html).
125
+
126
+ Object Metadata can be specified using \`x-amz-meta-*\` headers. Note that these headers [do not support non-ASCII metadata values](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#UserMetadata).
127
+ `),
128
+ tags: z
129
+ .record(z.string())
130
+ .default({})
131
+ .describe(`
132
+ Object tagging allows you to categorize storage. You can associate up to 10 tags with an object. Tags that are associated with an object must have unique tag keys.
133
+ `),
134
+ host: z
135
+ .string()
136
+ .default('s3.amazonaws.com')
137
+ .describe(`
138
+ The host of the storage service used. This only needs to be set when the storage service used is not Amazon S3, but has a compatible API (such as hosteurope.de). The default protocol used is HTTP, for anything else the protocol needs to be explicitly specified. For example, prefix the host with \`https://\` or \`s3://\` to use either respective protocol.
139
+ `),
140
+ no_vhost: z
141
+ .boolean()
142
+ .default(false)
143
+ .describe(`
144
+ Set to \`true\` if you use a custom host and run into access denied errors.
145
+ `),
146
+ sign_urls_for: z
147
+ .number()
148
+ .int()
149
+ .min(0)
150
+ .optional()
151
+ .describe(`
152
+ This parameter provides signed URLs in the result JSON (in the \`signed_url\` and \`signed_ssl_url\` properties). The number that you set this parameter to is the URL expiry time in seconds. If this parameter is not used, no URL signing is done.
153
+ `),
154
+ session_token: z
155
+ .string()
156
+ .optional()
157
+ .describe(`
158
+ The session token to use for the S3 store. This is only used if the credentials are from an IAM user with the \`sts:AssumeRole\` permission.
159
+ `),
160
+ })
161
+ .strict()
162
+
163
+ export const robotS3StoreInstructionsWithHiddenFieldsSchema = robotS3StoreInstructionsSchema.extend(
164
+ {
165
+ result: z.union([z.literal('debug'), robotS3StoreInstructionsSchema.shape.result]).optional(),
166
+ skip_region_lookup: z
167
+ .boolean()
168
+ .optional()
169
+ .describe(`
170
+ Internal parameter to skip region lookup for testing purposes.
171
+ `),
172
+ },
173
+ )
174
+
175
+ export type RobotS3StoreInstructions = z.infer<typeof robotS3StoreInstructionsSchema>
176
+ export type RobotS3StoreInstructionsInput = z.input<typeof robotS3StoreInstructionsSchema>
177
+ export type RobotS3StoreInstructionsWithHiddenFields = z.infer<
178
+ typeof robotS3StoreInstructionsWithHiddenFieldsSchema
179
+ >
180
+
181
+ export const interpolatableRobotS3StoreInstructionsSchema = interpolateRobot(
182
+ robotS3StoreInstructionsSchema,
183
+ )
184
+ export type InterpolatableRobotS3StoreInstructions = InterpolatableRobotS3StoreInstructionsInput
185
+
186
+ export type InterpolatableRobotS3StoreInstructionsInput = z.input<
187
+ typeof interpolatableRobotS3StoreInstructionsSchema
188
+ >
189
+
190
+ export const interpolatableRobotS3StoreInstructionsWithHiddenFieldsSchema = interpolateRobot(
191
+ robotS3StoreInstructionsWithHiddenFieldsSchema,
192
+ )
193
+ export type InterpolatableRobotS3StoreInstructionsWithHiddenFields = z.infer<
194
+ typeof interpolatableRobotS3StoreInstructionsWithHiddenFieldsSchema
195
+ >
196
+ export type InterpolatableRobotS3StoreInstructionsWithHiddenFieldsInput = z.input<
197
+ typeof interpolatableRobotS3StoreInstructionsWithHiddenFieldsSchema
198
+ >
@@ -0,0 +1,122 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import { interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
5
+
6
+ export const meta: RobotMetaInput = {
7
+ allowed_for_url_transform: true,
8
+ bytescount: 10,
9
+ discount_factor: 0.1,
10
+ discount_pct: 90,
11
+ minimum_charge: 0,
12
+ output_factor: 1,
13
+ override_lvl1: 'Code Evaluation',
14
+ purpose_sentence: 'runs scripts in Assemblies',
15
+ purpose_verb: 'run',
16
+ purpose_word: 'script',
17
+ purpose_words: 'Run scripts in Assemblies',
18
+ service_slug: 'code-evaluation',
19
+ slot_count: 5,
20
+ title: 'Run Scripts',
21
+ typical_file_size_mb: 0.0001,
22
+ typical_file_type: 'file',
23
+ name: 'ScriptRunRobot',
24
+ priceFactor: 10,
25
+ queueSlotCount: 5,
26
+ isAllowedForUrlTransform: true,
27
+ trackOutputFileSize: false,
28
+ isInternal: false,
29
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
30
+ stage: 'ga',
31
+ }
32
+
33
+ export const robotScriptRunInstructionsSchema = robotBase
34
+ .merge(robotUse)
35
+ .extend({
36
+ robot: z.literal('/script/run').describe(`
37
+ This <dfn>Robot</dfn> allows you to run arbitrary \`JavaScript\` as part of the <dfn>Assembly</dfn>
38
+ execution process. The <dfn>Robot</dfn> is invoked automatically when there are <dfn>Assembly
39
+ Instructions</dfn> containing \`\${...}\`:
40
+
41
+ \`\`\`json
42
+ {
43
+ "robot": "/image/resize",
44
+ "width": "\${Math.max(file.meta.width, file.meta.height)}"
45
+ }
46
+ \`\`\`
47
+
48
+ You can also invoke this <dfn>Robot</dfn> directly, leaving out the \`\${...}\`:
49
+
50
+ \`\`\`json
51
+ {
52
+ "robot": "/script/run",
53
+ "script": "Math.max(file.meta.width, file.meta.height)"
54
+ }
55
+ \`\`\`
56
+
57
+ When accessing arrays, the syntax is the same as in any JavaScript program:
58
+
59
+ \`\`\`json
60
+ {
61
+ "robot": "/image/resize",
62
+ "width": "\${file.meta.faces[0].width * 2}"
63
+ }
64
+ \`\`\`
65
+
66
+ Compared to only accessing an <dfn>Assembly Variable</dfn>:
67
+
68
+ \`\`\`json
69
+ {
70
+ "robot": "/image/resize",
71
+ "width": "\${file.meta.faces[0].width}"
72
+ }
73
+ \`\`\`
74
+
75
+ For more information, see [Dynamic Evaluation](/docs/topics/dynamic-evaluation/).
76
+ `),
77
+ script: z.string().describe(`
78
+ A string of JavaScript to evaluate. It has access to all JavaScript features available in a modern browser environment.
79
+
80
+ The script is expected to return a \`JSON.stringify\`-able value in the same tick, so no \`await\` or callbacks are allowed (yet).
81
+
82
+ If the script does not finish within 1000ms it times out with an error. The return value or error is exported as \`file.meta.result\`. If there was an error, \`file.meta.isError\` is \`true\`. Note that the <dfn>Assembly</dfn> will not crash in this case. If you need it to crash, you can check this value with a [🤖/file/filter](/docs/robots/file-filter/) <dfn>Step</dfn>, setting \`error_on_decline\` to \`true\`.
83
+
84
+ You can check whether evaluating this script was free by inspecting \`file.meta.isFree\`. It is recommended to do this during development as to not see sudden unexpected costs in production.
85
+ `),
86
+ })
87
+ .strict()
88
+
89
+ export const robotScriptRunInstructionsWithHiddenFieldsSchema =
90
+ robotScriptRunInstructionsSchema.extend({
91
+ result: z.union([z.literal('debug'), robotScriptRunInstructionsSchema.shape.result]).optional(),
92
+ contextJSON: z
93
+ .string()
94
+ .optional()
95
+ .describe(`
96
+ A JSON string that provides additional context data to the script. This will be parsed and made available to the script as a \`context\` variable. For example, if you pass \`'{"foo":{"bar":"baz"}}'\`, the script can access \`context.foo.bar\` to get the value \`"baz"\`.
97
+ `),
98
+ })
99
+
100
+ export type RobotScriptRunInstructions = z.infer<typeof robotScriptRunInstructionsSchema>
101
+ export type RobotScriptRunInstructionsWithHiddenFields = z.infer<
102
+ typeof robotScriptRunInstructionsWithHiddenFieldsSchema
103
+ >
104
+
105
+ export const interpolatableRobotScriptRunInstructionsSchema = interpolateRobot(
106
+ robotScriptRunInstructionsSchema,
107
+ )
108
+ export type InterpolatableRobotScriptRunInstructions = InterpolatableRobotScriptRunInstructionsInput
109
+
110
+ export type InterpolatableRobotScriptRunInstructionsInput = z.input<
111
+ typeof interpolatableRobotScriptRunInstructionsSchema
112
+ >
113
+
114
+ export const interpolatableRobotScriptRunInstructionsWithHiddenFieldsSchema = interpolateRobot(
115
+ robotScriptRunInstructionsWithHiddenFieldsSchema,
116
+ )
117
+ export type InterpolatableRobotScriptRunInstructionsWithHiddenFields = z.infer<
118
+ typeof interpolatableRobotScriptRunInstructionsWithHiddenFieldsSchema
119
+ >
120
+ export type InterpolatableRobotScriptRunInstructionsWithHiddenFieldsInput = z.input<
121
+ typeof interpolatableRobotScriptRunInstructionsWithHiddenFieldsSchema
122
+ >
@@ -0,0 +1,92 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import { interpolateRobot, robotBase, robotImport, sftpBase } from './_instructions-primitives.ts'
5
+
6
+ export const meta: RobotMetaInput = {
7
+ allowed_for_url_transform: true,
8
+ bytescount: 10,
9
+ discount_factor: 0.1,
10
+ discount_pct: 90,
11
+ example_code: {
12
+ steps: {
13
+ imported: {
14
+ robot: '/sftp/import',
15
+ credentials: 'YOUR_SFTP_CREDENTIALS',
16
+ path: 'path/to/files/',
17
+ },
18
+ },
19
+ },
20
+ example_code_description:
21
+ 'Import files from the `path/to/files` directory and its subdirectories:',
22
+ minimum_charge: 0,
23
+ output_factor: 1,
24
+ override_lvl1: 'File Importing',
25
+ purpose_sentence:
26
+ 'imports whole libraries of files from your SFTP servers into Transloadit. This Robot relies on public key authentication',
27
+ purpose_verb: 'import',
28
+ purpose_word: 'SFTP servers',
29
+ purpose_words: 'Import files from SFTP servers',
30
+ service_slug: 'file-importing',
31
+ slot_count: 20,
32
+ title: 'Import files from SFTP servers',
33
+ typical_file_size_mb: 1.2,
34
+ typical_file_type: 'file',
35
+ name: 'SftpImportRobot',
36
+ priceFactor: 6.6666,
37
+ queueSlotCount: 20,
38
+ isAllowedForUrlTransform: true,
39
+ trackOutputFileSize: false,
40
+ isInternal: false,
41
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: true,
42
+ stage: 'ga',
43
+ }
44
+
45
+ export const robotSftpImportInstructionsSchema = robotBase
46
+ .merge(robotImport)
47
+ .merge(sftpBase)
48
+ .extend({
49
+ robot: z.literal('/sftp/import'),
50
+ path: z.string().describe(`
51
+ The path on your SFTP server where to search for files.
52
+ `),
53
+ })
54
+ .strict()
55
+
56
+ export const robotSftpImportInstructionsWithHiddenFieldsSchema =
57
+ robotSftpImportInstructionsSchema.extend({
58
+ result: z
59
+ .union([z.literal('debug'), robotSftpImportInstructionsSchema.shape.result])
60
+ .optional(),
61
+ allowNetwork: z
62
+ .string()
63
+ .optional()
64
+ .describe(`
65
+ Network access permission for the SFTP connection. This is used to control which networks the SFTP robot can access.
66
+ `),
67
+ })
68
+
69
+ export type RobotSftpImportInstructions = z.infer<typeof robotSftpImportInstructionsSchema>
70
+ export type RobotSftpImportInstructionsWithHiddenFields = z.infer<
71
+ typeof robotSftpImportInstructionsWithHiddenFieldsSchema
72
+ >
73
+
74
+ export const interpolatableRobotSftpImportInstructionsSchema = interpolateRobot(
75
+ robotSftpImportInstructionsSchema,
76
+ )
77
+ export type InterpolatableRobotSftpImportInstructions =
78
+ InterpolatableRobotSftpImportInstructionsInput
79
+
80
+ export type InterpolatableRobotSftpImportInstructionsInput = z.input<
81
+ typeof interpolatableRobotSftpImportInstructionsSchema
82
+ >
83
+
84
+ export const interpolatableRobotSftpImportInstructionsWithHiddenFieldsSchema = interpolateRobot(
85
+ robotSftpImportInstructionsWithHiddenFieldsSchema,
86
+ )
87
+ export type InterpolatableRobotSftpImportInstructionsWithHiddenFields = z.infer<
88
+ typeof interpolatableRobotSftpImportInstructionsWithHiddenFieldsSchema
89
+ >
90
+ export type InterpolatableRobotSftpImportInstructionsWithHiddenFieldsInput = z.input<
91
+ typeof interpolatableRobotSftpImportInstructionsWithHiddenFieldsSchema
92
+ >
@@ -0,0 +1,110 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import { interpolateRobot, robotBase, robotUse, sftpBase } from './_instructions-primitives.ts'
5
+
6
+ export const meta: RobotMetaInput = {
7
+ allowed_for_url_transform: true,
8
+ bytescount: 6,
9
+ discount_factor: 0.15000150001500018,
10
+ discount_pct: 84.99984999849998,
11
+ example_code: {
12
+ steps: {
13
+ exported: {
14
+ robot: '/sftp/store',
15
+ use: ':original',
16
+ credentials: 'YOUR_SFTP_CREDENTIALS',
17
+ path: 'my_target_folder/${unique_prefix}/${file.url_name}',
18
+ },
19
+ },
20
+ },
21
+ example_code_description: 'Export uploaded files to `my_target_folder` on an SFTP server:',
22
+ minimum_charge: 0,
23
+ output_factor: 1,
24
+ override_lvl1: 'File Exporting',
25
+ purpose_sentence: 'exports encoding results to your own SFTP server',
26
+ purpose_verb: 'export',
27
+ purpose_word: 'SFTP servers',
28
+ purpose_words: 'Export files to SFTP servers',
29
+ service_slug: 'file-exporting',
30
+ slot_count: 10,
31
+ title: 'Export files to SFTP servers',
32
+ typical_file_size_mb: 1.2,
33
+ typical_file_type: 'file',
34
+ name: 'SftpStoreRobot',
35
+ priceFactor: 6.6666,
36
+ queueSlotCount: 10,
37
+ isAllowedForUrlTransform: true,
38
+ trackOutputFileSize: false,
39
+ isInternal: false,
40
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
41
+ stage: 'ga',
42
+ }
43
+
44
+ export const robotSftpStoreInstructionsSchema = robotBase
45
+ .merge(robotUse)
46
+ .merge(sftpBase)
47
+ .extend({
48
+ robot: z.literal('/sftp/store'),
49
+ path: z
50
+ .string()
51
+ .default('${unique_prefix}/${file.url_name}')
52
+ .describe(`
53
+ The path at which the file is to be stored. This may include any available [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).
54
+ `),
55
+ url_template: z
56
+ .string()
57
+ .default('http://host/path')
58
+ .describe(`
59
+ The URL of the file in the result JSON. This may include any of the following supported [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables).
60
+ `),
61
+ ssl_url_template: z
62
+ .string()
63
+ .default('https://{HOST}/{PATH}')
64
+ .describe(`
65
+ The SSL URL of the file in the result JSON. The following [Assembly variables](/docs/topics/assembly-instructions/#assembly-variables) are supported.
66
+ `),
67
+ file_chmod: z
68
+ .string()
69
+ .regex(/([0-7]{3}|auto)/)
70
+ .default('auto')
71
+ .describe(`
72
+ This optional parameter controls how an uploaded file's permission bits are set. You can use any string format that the \`chmod\` command would accept, such as \`"755"\`. If you don't specify this option, the file's permission bits aren't changed at all, meaning it's up to your server's configuration (e.g. umask).
73
+ `),
74
+ })
75
+ .strict()
76
+
77
+ export const robotSftpStoreInstructionsWithHiddenFieldsSchema =
78
+ robotSftpStoreInstructionsSchema.extend({
79
+ result: z.union([z.literal('debug'), robotSftpStoreInstructionsSchema.shape.result]).optional(),
80
+ allowNetwork: z
81
+ .string()
82
+ .optional()
83
+ .describe(`
84
+ Network access permission for the SFTP connection. This is used to control which networks the SFTP robot can access.
85
+ `),
86
+ })
87
+
88
+ export type RobotSftpStoreInstructions = z.infer<typeof robotSftpStoreInstructionsSchema>
89
+ export type RobotSftpStoreInstructionsWithHiddenFields = z.infer<
90
+ typeof robotSftpStoreInstructionsWithHiddenFieldsSchema
91
+ >
92
+
93
+ export const interpolatableRobotSftpStoreInstructionsSchema = interpolateRobot(
94
+ robotSftpStoreInstructionsSchema,
95
+ )
96
+ export type InterpolatableRobotSftpStoreInstructions = InterpolatableRobotSftpStoreInstructionsInput
97
+
98
+ export type InterpolatableRobotSftpStoreInstructionsInput = z.input<
99
+ typeof interpolatableRobotSftpStoreInstructionsSchema
100
+ >
101
+
102
+ export const interpolatableRobotSftpStoreInstructionsWithHiddenFieldsSchema = interpolateRobot(
103
+ robotSftpStoreInstructionsWithHiddenFieldsSchema,
104
+ )
105
+ export type InterpolatableRobotSftpStoreInstructionsWithHiddenFields = z.infer<
106
+ typeof interpolatableRobotSftpStoreInstructionsWithHiddenFieldsSchema
107
+ >
108
+ export type InterpolatableRobotSftpStoreInstructionsWithHiddenFieldsInput = z.input<
109
+ typeof interpolatableRobotSftpStoreInstructionsWithHiddenFieldsSchema
110
+ >
@@ -0,0 +1,139 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import {
5
+ aiProviderSchema,
6
+ granularitySchema,
7
+ interpolateRobot,
8
+ robotBase,
9
+ robotUse,
10
+ } from './_instructions-primitives.ts'
11
+
12
+ export const meta: RobotMetaInput = {
13
+ allowed_for_url_transform: true,
14
+ bytescount: 1,
15
+ discount_factor: 1,
16
+ discount_pct: 0,
17
+ example_code: {
18
+ steps: {
19
+ transcribed: {
20
+ robot: '/speech/transcribe',
21
+ use: ':original',
22
+ provider: 'aws',
23
+ source_language: 'fr-FR',
24
+ format: 'text',
25
+ },
26
+ },
27
+ },
28
+ example_code_description:
29
+ 'Transcribe speech in French from uploaded audio or video, and save it to a text file:',
30
+ extended_description: `
31
+ > [!Warning]
32
+ > Transloadit aims to be deterministic, but this <dfn>Robot</dfn> uses third-party AI services. The providers (AWS, GCP) will evolve their models over time, giving different responses for the same input media. Avoid relying on exact responses in your tests and application.
33
+ `,
34
+ minimum_charge: 1048576,
35
+ output_factor: 0.05,
36
+ override_lvl1: 'Artificial Intelligence',
37
+ purpose_sentence: 'transcribes speech in audio or video files',
38
+ purpose_verb: 'transcribe',
39
+ purpose_word: 'transcribe speech',
40
+ purpose_words: 'Transcribe speech in audio or video files',
41
+ service_slug: 'artificial-intelligence',
42
+ slot_count: 10,
43
+ title: 'Transcribe speech in audio or video files',
44
+ typical_file_size_mb: 2.4,
45
+ typical_file_type: 'audio or video file',
46
+ name: 'SpeechTranscribeRobot',
47
+ priceFactor: 1,
48
+ queueSlotCount: 10,
49
+ minimumChargeUsdPerSpeechTranscribeMinute: {
50
+ aws: 0.024,
51
+ gcp: 0.016,
52
+ },
53
+ isAllowedForUrlTransform: true,
54
+ trackOutputFileSize: true,
55
+ isInternal: false,
56
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
57
+ stage: 'ga',
58
+ }
59
+
60
+ export const robotSpeechTranscribeInstructionsSchema = robotBase
61
+ .merge(robotUse)
62
+ .extend({
63
+ robot: z.literal('/speech/transcribe').describe(`
64
+ You can use the text that we return in your application, or you can pass the text down to other <dfn>Robots</dfn> to filter audio or video files that contain (or do not contain) certain content, or burn the text into images or video for example.
65
+
66
+ Another common use case is automatically subtitling videos, or making audio searchable.
67
+ `),
68
+ provider: aiProviderSchema.describe(`
69
+ Which AI provider to leverage.
70
+
71
+ Transloadit outsources this task and abstracts the interface so you can expect the same data structures, but different latencies and information being returned. Different cloud vendors have different areas they shine in, and we recommend to try out and see what yields the best results for your use case.
72
+ `),
73
+ granularity: granularitySchema.describe(`
74
+ Whether to return a full response (\`"full"\`), or a flat list of descriptions (\`"list"\`).
75
+ `),
76
+ format: z
77
+ .enum(['json', 'meta', 'srt', 'meta', 'text', 'webvtt'])
78
+ .default('json')
79
+ .describe(`
80
+ Output format for the transcription.
81
+
82
+ - \`"text"\` outputs a plain text file that you can store and process.
83
+ - \`"json"\` outputs a JSON file containing timestamped words.
84
+ - \`"srt"\` and \`"webvtt"\` output subtitle files of those respective file types, which can be stored separately or used in other encoding <dfn>Steps</dfn>.
85
+ - \`"meta"\` does not return a file, but stores the data inside Transloadit's file object (under \`\${file.meta.transcription.text}\`) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to burn the data into videos, filter on them, etc.
86
+ `),
87
+ // TODO determine the list of languages
88
+ source_language: z
89
+ .string()
90
+ .default('en-US')
91
+ .describe(`
92
+ The spoken language of the audio or video. This will also be the language of the transcribed text.
93
+
94
+ The language should be specified in the [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) format, such as \`"en-GB"\`, \`"de-DE"\` or \`"fr-FR"\`. Please also consult the list of supported languages for [the \`gcp\` provider](https://cloud.google.com/speech-to-text/docs/languages) and the [the \`aws\` provider](https://docs.aws.amazon.com/transcribe/latest/dg/what-is-transcribe.html).
95
+ `),
96
+ // TODO determine the list of languages
97
+ target_language: z
98
+ .string()
99
+ .default('en-US')
100
+ .describe(`
101
+ This will also be the language of the written text.
102
+
103
+ The language should be specified in the [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) format, such as \`"en-GB"\`, \`"de-DE"\` or \`"fr-FR"\`. Please consult the list of supported languages and voices.
104
+ `),
105
+ })
106
+ .strict()
107
+
108
+ export const robotSpeechTranscribeInstructionsWithHiddenFieldsSchema =
109
+ robotSpeechTranscribeInstructionsSchema.extend({
110
+ result: z
111
+ .union([z.literal('debug'), robotSpeechTranscribeInstructionsSchema.shape.result])
112
+ .optional(),
113
+ })
114
+
115
+ export type RobotSpeechTranscribeInstructions = z.infer<
116
+ typeof robotSpeechTranscribeInstructionsSchema
117
+ >
118
+ export type RobotSpeechTranscribeInstructionsWithHiddenFields = z.infer<
119
+ typeof robotSpeechTranscribeInstructionsWithHiddenFieldsSchema
120
+ >
121
+
122
+ export const interpolatableRobotSpeechTranscribeInstructionsSchema = interpolateRobot(
123
+ robotSpeechTranscribeInstructionsSchema,
124
+ )
125
+ export type InterpolatableRobotSpeechTranscribeInstructions =
126
+ InterpolatableRobotSpeechTranscribeInstructionsInput
127
+
128
+ export type InterpolatableRobotSpeechTranscribeInstructionsInput = z.input<
129
+ typeof interpolatableRobotSpeechTranscribeInstructionsSchema
130
+ >
131
+
132
+ export const interpolatableRobotSpeechTranscribeInstructionsWithHiddenFieldsSchema =
133
+ interpolateRobot(robotSpeechTranscribeInstructionsWithHiddenFieldsSchema)
134
+ export type InterpolatableRobotSpeechTranscribeInstructionsWithHiddenFields = z.infer<
135
+ typeof interpolatableRobotSpeechTranscribeInstructionsWithHiddenFieldsSchema
136
+ >
137
+ export type InterpolatableRobotSpeechTranscribeInstructionsWithHiddenFieldsInput = z.input<
138
+ typeof interpolatableRobotSpeechTranscribeInstructionsWithHiddenFieldsSchema
139
+ >