@transcodely/sdk 0.3.7 → 0.3.8
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/CHANGELOG.md +16 -0
- package/README.md +220 -2
- package/dist/index.cjs +3723 -807
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2049 -102
- package/dist/index.d.ts +2049 -102
- package/dist/index.mjs +3707 -808
- package/dist/index.mjs.map +1 -1
- package/package.json +16 -6
package/dist/index.d.ts
CHANGED
|
@@ -747,8 +747,12 @@ declare class CreateAPIKeyRequest extends Message<CreateAPIKeyRequest> {
|
|
|
747
747
|
*/
|
|
748
748
|
expiresAt?: Timestamp;
|
|
749
749
|
/**
|
|
750
|
-
* App ID to create the key for.
|
|
751
|
-
*
|
|
750
|
+
* App ID to create the key for. API-key callers may omit it (their key's app
|
|
751
|
+
* is used) or pass their own app; a different app is rejected with
|
|
752
|
+
* PermissionDenied. Portal/JWT callers pass it to create in a specific app in
|
|
753
|
+
* their org; omitted selects the org's first active app. Still REQUIRED on
|
|
754
|
+
* the unauthenticated onboarding bootstrap path, where nothing else can name
|
|
755
|
+
* an app: omitting it there is invalid_argument (`app_id_required`).
|
|
752
756
|
*
|
|
753
757
|
* @generated from field: string app_id = 5;
|
|
754
758
|
*/
|
|
@@ -1044,6 +1048,18 @@ declare class InvalidRequestError extends TranscodelyError {
|
|
|
1044
1048
|
/** 412 — preconditions not met (e.g. job not cancelable in current state). */
|
|
1045
1049
|
declare class PreconditionError extends TranscodelyError {
|
|
1046
1050
|
}
|
|
1051
|
+
/**
|
|
1052
|
+
* Raised by `client.uploads.putFile` when the byte transfer itself fails —
|
|
1053
|
+
* a presigned PUT rejected after retries, a store that returned no ETag, or a
|
|
1054
|
+
* source the SDK refuses to send (empty, over the 5 GB ceiling, a stream with
|
|
1055
|
+
* no declared size). Errors from the upload RPCs themselves stay in their own
|
|
1056
|
+
* classes; this one covers the part of the upload the API never sees.
|
|
1057
|
+
*/
|
|
1058
|
+
declare class UploadError extends TranscodelyError {
|
|
1059
|
+
}
|
|
1060
|
+
/** The upload's `signal` fired. The multipart upload is aborted server-side. */
|
|
1061
|
+
declare class UploadAbortedError extends UploadError {
|
|
1062
|
+
}
|
|
1047
1063
|
/**
|
|
1048
1064
|
* Base class for errors thrown by {@link Webhooks.constructEvent}. Unlike the
|
|
1049
1065
|
* other SDK errors, these originate locally — the SDK never made a network
|
|
@@ -1732,13 +1748,22 @@ declare class EnableHostingResponse extends Message<EnableHostingResponse> {
|
|
|
1732
1748
|
*/
|
|
1733
1749
|
declare class HostingConfig extends Message<HostingConfig> {
|
|
1734
1750
|
/**
|
|
1735
|
-
* Default visibility for
|
|
1751
|
+
* Default visibility for videos this app creates: "public", "unlisted", or
|
|
1752
|
+
* "private". Applies to every creation path — CreateUpload,
|
|
1753
|
+
* CreateMultipartUpload, CreateFromUrl and the video a managed CreateJob
|
|
1754
|
+
* produces — whenever the request itself does not name a visibility. Unset
|
|
1755
|
+
* means "unlisted".
|
|
1736
1756
|
*
|
|
1737
1757
|
* @generated from field: optional string default_visibility = 1;
|
|
1738
1758
|
*/
|
|
1739
1759
|
defaultVisibility?: string;
|
|
1740
1760
|
/**
|
|
1741
|
-
* Max upload file size in bytes (0 = no limit).
|
|
1761
|
+
* Max upload file size in bytes (0 = no limit). Enforced at CreateUpload and
|
|
1762
|
+
* CreateMultipartUpload against the request's declared size_bytes, on top of
|
|
1763
|
+
* the fixed 5 GB per-request ceiling; over-limit requests are rejected with
|
|
1764
|
+
* error code "max_upload_size_exceeded" before anything is created. Not
|
|
1765
|
+
* enforced by CreateFromUrl, whose source size is unknown until the worker
|
|
1766
|
+
* fetches the URL.
|
|
1742
1767
|
*
|
|
1743
1768
|
* @generated from field: optional int64 max_upload_size_bytes = 2;
|
|
1744
1769
|
*/
|
|
@@ -3859,7 +3884,10 @@ declare class WebhookDelivery extends Message<WebhookDelivery> {
|
|
|
3859
3884
|
*/
|
|
3860
3885
|
declare class CreateWebhookEndpointRequest extends Message<CreateWebhookEndpointRequest> {
|
|
3861
3886
|
/**
|
|
3862
|
-
* App to create the endpoint for.
|
|
3887
|
+
* App to create the endpoint for. API-key callers may omit it (their key's
|
|
3888
|
+
* app is used) or pass their own app; a different app is rejected with
|
|
3889
|
+
* PermissionDenied. Portal/JWT callers pass it to create in a specific app in
|
|
3890
|
+
* their org; omitted selects the org's first active app.
|
|
3863
3891
|
*
|
|
3864
3892
|
* @generated from field: string app_id = 1;
|
|
3865
3893
|
*/
|
|
@@ -4088,7 +4116,10 @@ declare class DeleteWebhookEndpointResponse extends Message<DeleteWebhookEndpoin
|
|
|
4088
4116
|
*/
|
|
4089
4117
|
declare class ListWebhookEndpointsRequest extends Message<ListWebhookEndpointsRequest> {
|
|
4090
4118
|
/**
|
|
4091
|
-
*
|
|
4119
|
+
* Optional app filter. API-key callers may omit it (their key's app is used)
|
|
4120
|
+
* or pass their own app; a different app is rejected with PermissionDenied.
|
|
4121
|
+
* Portal/JWT callers pass it to list a specific app in their org; omitted
|
|
4122
|
+
* returns endpoints across all apps in the org.
|
|
4092
4123
|
*
|
|
4093
4124
|
* @generated from field: string app_id = 1;
|
|
4094
4125
|
*/
|
|
@@ -4198,7 +4229,10 @@ declare class RotateWebhookSecretResponse extends Message<RotateWebhookSecretRes
|
|
|
4198
4229
|
*/
|
|
4199
4230
|
declare class ListEventsRequest extends Message<ListEventsRequest> {
|
|
4200
4231
|
/**
|
|
4201
|
-
*
|
|
4232
|
+
* Optional app filter. API-key callers may omit it (their key's app is used)
|
|
4233
|
+
* or pass their own app; a different app is rejected with PermissionDenied.
|
|
4234
|
+
* Portal/JWT callers pass it to list a specific app in their org; omitted
|
|
4235
|
+
* returns events across all apps in the org.
|
|
4202
4236
|
*
|
|
4203
4237
|
* @generated from field: string app_id = 1;
|
|
4204
4238
|
*/
|
|
@@ -6256,10 +6290,11 @@ declare class DRMConfig extends Message<DRMConfig> {
|
|
|
6256
6290
|
/**
|
|
6257
6291
|
* Content-aware encoding mode.
|
|
6258
6292
|
*
|
|
6259
|
-
*
|
|
6260
|
-
*
|
|
6261
|
-
*
|
|
6262
|
-
*
|
|
6293
|
+
* One of the two modes ships: `per_title` is accepted and acted on. `auto_abr`
|
|
6294
|
+
* is still rejected at CreateJob with error code `parameter_unsupported` and
|
|
6295
|
+
* the message "auto_abr is not available yet; per_title is" (issue #167),
|
|
6296
|
+
* because it would change the NUMBER of renditions after the job was already
|
|
6297
|
+
* quoted per rendition at create time.
|
|
6263
6298
|
*
|
|
6264
6299
|
* @generated from enum transcodely.v1.ContentAwareMode
|
|
6265
6300
|
*/
|
|
@@ -6269,15 +6304,18 @@ declare enum ContentAwareMode {
|
|
|
6269
6304
|
*/
|
|
6270
6305
|
UNSPECIFIED = 0,
|
|
6271
6306
|
/**
|
|
6272
|
-
*
|
|
6273
|
-
*
|
|
6307
|
+
* Find the CRF this source needs to reach the VMAF target, and encode the
|
|
6308
|
+
* declared ladder at it. The search runs once per output, on the ladder's
|
|
6309
|
+
* highest-resolution quality-driven rendition; the lower rungs move by the
|
|
6310
|
+
* CRF offsets the ladder already declares. Priced at 1.5x. What the search
|
|
6311
|
+
* decided comes back on OutputReport.content_aware.
|
|
6274
6312
|
*
|
|
6275
6313
|
* @generated from enum value: CONTENT_AWARE_MODE_PER_TITLE = 1;
|
|
6276
6314
|
*/
|
|
6277
6315
|
PER_TITLE = 1,
|
|
6278
6316
|
/**
|
|
6279
|
-
* Generate
|
|
6280
|
-
*
|
|
6317
|
+
* Generate the bitrate ladder automatically. NOT YET ACCEPTED — rejected at
|
|
6318
|
+
* create.
|
|
6281
6319
|
*
|
|
6282
6320
|
* @generated from enum value: CONTENT_AWARE_MODE_AUTO_ABR = 2;
|
|
6283
6321
|
*/
|
|
@@ -6286,9 +6324,9 @@ declare enum ContentAwareMode {
|
|
|
6286
6324
|
/**
|
|
6287
6325
|
* Auto ABR ladder generation constraints.
|
|
6288
6326
|
*
|
|
6289
|
-
* NOT YET
|
|
6290
|
-
* for shape but never applied, because a request
|
|
6291
|
-
*
|
|
6327
|
+
* NOT YET ACCEPTED — see ContentAwareConfig. These constraints are validated
|
|
6328
|
+
* for shape but never applied, because a request in auto_abr mode is rejected
|
|
6329
|
+
* at create.
|
|
6292
6330
|
*
|
|
6293
6331
|
* @generated from message transcodely.v1.AutoABRConfig
|
|
6294
6332
|
*/
|
|
@@ -6331,35 +6369,51 @@ declare class AutoABRConfig extends Message<AutoABRConfig> {
|
|
|
6331
6369
|
/**
|
|
6332
6370
|
* Content-aware encoding configuration for an output.
|
|
6333
6371
|
*
|
|
6334
|
-
*
|
|
6335
|
-
*
|
|
6336
|
-
*
|
|
6337
|
-
*
|
|
6338
|
-
*
|
|
6339
|
-
*
|
|
6340
|
-
*
|
|
6341
|
-
*
|
|
6372
|
+
* In `per_title` mode the encode is tuned to this particular source: the worker
|
|
6373
|
+
* measures short samples of it at several CRFs and encodes the declared ladder
|
|
6374
|
+
* at the cheapest one that reaches the VMAF target. The ladder itself is
|
|
6375
|
+
* unchanged — same renditions, same resolutions — so the price quoted at create
|
|
6376
|
+
* still holds, with the 1.5x per-title multiplier applied.
|
|
6377
|
+
*
|
|
6378
|
+
* Three requests are refused at create:
|
|
6379
|
+
* - `auto_abr` mode (`parameter_unsupported`) — not available yet;
|
|
6380
|
+
* - an output with no video renditions, or one whose every video rendition is
|
|
6381
|
+
* pinned to an explicit bitrate (`parameter_incompatible`) — a pinned
|
|
6382
|
+
* rendition ignores CRF, so the search would change nothing while still
|
|
6383
|
+
* being billed;
|
|
6384
|
+
* - a source shorter than 120 seconds, refused at probe with
|
|
6385
|
+
* `per_title_source_too_short` once the input has been measured.
|
|
6386
|
+
*
|
|
6387
|
+
* What the search decided is reported back on OutputReport.content_aware.
|
|
6342
6388
|
*
|
|
6343
6389
|
* @generated from message transcodely.v1.ContentAwareConfig
|
|
6344
6390
|
*/
|
|
6345
6391
|
declare class ContentAwareConfig extends Message<ContentAwareConfig> {
|
|
6346
6392
|
/**
|
|
6347
|
-
* Encoding mode (required).
|
|
6348
|
-
*
|
|
6393
|
+
* Encoding mode (required). `per_title` is accepted; `auto_abr` is rejected
|
|
6394
|
+
* at create.
|
|
6349
6395
|
*
|
|
6350
6396
|
* @generated from field: transcodely.v1.ContentAwareMode mode = 1;
|
|
6351
6397
|
*/
|
|
6352
6398
|
mode: ContentAwareMode;
|
|
6353
6399
|
/**
|
|
6354
|
-
* Override VMAF target (
|
|
6355
|
-
*
|
|
6400
|
+
* Override VMAF target (80-97). Default: 93, regardless of quality tier.
|
|
6401
|
+
*
|
|
6402
|
+
* The range is the one the per-title search can actually work in, narrowed
|
|
6403
|
+
* from 70-99 before the feature was ever accepted: below 80 the result is not
|
|
6404
|
+
* a quality target anyone would ask for, and above 97 the search cannot
|
|
6405
|
+
* distinguish the last point from the one below it. Asking for a number we
|
|
6406
|
+
* would silently move is worse than refusing it.
|
|
6407
|
+
*
|
|
6408
|
+
* The value the analysis actually searched against is reported back on
|
|
6409
|
+
* OutputReport.content_aware.vmaf_target, which is the one to read.
|
|
6356
6410
|
*
|
|
6357
6411
|
* @generated from field: optional double vmaf_target = 2;
|
|
6358
6412
|
*/
|
|
6359
6413
|
vmafTarget?: number;
|
|
6360
6414
|
/**
|
|
6361
|
-
* Auto ABR constraints (only for auto_abr mode). NOT YET
|
|
6362
|
-
* at create.
|
|
6415
|
+
* Auto ABR constraints (only for auto_abr mode). NOT YET ACCEPTED — an
|
|
6416
|
+
* auto_abr request is rejected at create whatever these say.
|
|
6363
6417
|
*
|
|
6364
6418
|
* @generated from field: optional transcodely.v1.AutoABRConfig auto_abr = 3;
|
|
6365
6419
|
*/
|
|
@@ -6376,9 +6430,10 @@ declare class ContentAwareConfig extends Message<ContentAwareConfig> {
|
|
|
6376
6430
|
/**
|
|
6377
6431
|
* Content analysis results from extended probe.
|
|
6378
6432
|
*
|
|
6379
|
-
* NOT YET POPULATED
|
|
6380
|
-
*
|
|
6381
|
-
*
|
|
6433
|
+
* NOT YET POPULATED, and not carried by any RPC. The worker measures these
|
|
6434
|
+
* complexity scores but has nowhere to send them: the API stores the per-title
|
|
6435
|
+
* SEARCH RESULT (see OutputReportContentAware) and not the source scores behind
|
|
6436
|
+
* it. Retained for wire compatibility.
|
|
6382
6437
|
*
|
|
6383
6438
|
* @generated from message transcodely.v1.ContentAnalysis
|
|
6384
6439
|
*/
|
|
@@ -8751,7 +8806,10 @@ declare class OutputSpec extends Message<OutputSpec> {
|
|
|
8751
8806
|
drm?: DRMConfig;
|
|
8752
8807
|
/**
|
|
8753
8808
|
* Content-aware encoding configuration.
|
|
8754
|
-
* Enables per-title encoding
|
|
8809
|
+
* Enables per-title encoding, which tunes this output's CRF to the source
|
|
8810
|
+
* rather than to its quality tier. Requires at least one video rendition that
|
|
8811
|
+
* is not pinned to an explicit bitrate, and a source of at least 120 seconds.
|
|
8812
|
+
* `auto_abr` mode is not accepted yet.
|
|
8755
8813
|
*
|
|
8756
8814
|
* @generated from field: optional transcodely.v1.ContentAwareConfig content_aware = 13;
|
|
8757
8815
|
*/
|
|
@@ -9206,6 +9264,18 @@ declare class JobOutput extends Message<JobOutput> {
|
|
|
9206
9264
|
* @generated from field: optional string signed_url = 26;
|
|
9207
9265
|
*/
|
|
9208
9266
|
signedUrl?: string;
|
|
9267
|
+
/**
|
|
9268
|
+
* What the produced file actually is, measured from the file itself, plus
|
|
9269
|
+
* the verdict of comparing those measurements against what this output
|
|
9270
|
+
* asked for. See OutputReport.
|
|
9271
|
+
*
|
|
9272
|
+
* Absent until the output has been measured: outputs that never produced a
|
|
9273
|
+
* file, and outputs produced before this field existed, carry no report.
|
|
9274
|
+
* Absence means "not measured" — never "nothing wrong".
|
|
9275
|
+
*
|
|
9276
|
+
* @generated from field: optional transcodely.v1.OutputReport report = 27;
|
|
9277
|
+
*/
|
|
9278
|
+
report?: OutputReport;
|
|
9209
9279
|
constructor(data?: PartialMessage<JobOutput>);
|
|
9210
9280
|
static readonly runtime: typeof proto3;
|
|
9211
9281
|
static readonly typeName = "transcodely.v1.JobOutput";
|
|
@@ -9215,6 +9285,440 @@ declare class JobOutput extends Message<JobOutput> {
|
|
|
9215
9285
|
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): JobOutput;
|
|
9216
9286
|
static equals(a: JobOutput | PlainMessage<JobOutput> | undefined, b: JobOutput | PlainMessage<JobOutput> | undefined): boolean;
|
|
9217
9287
|
}
|
|
9288
|
+
/**
|
|
9289
|
+
* OutputReport is what the produced file turned out to be: codec, profile,
|
|
9290
|
+
* pixel format, color signaling, dimensions, frame rate, audio and duration,
|
|
9291
|
+
* all read back from the encoded file after it was written — not copied from
|
|
9292
|
+
* the request and not inherited from the input. The one field that is not a
|
|
9293
|
+
* measurement is container, which states the delivery format (see below).
|
|
9294
|
+
*
|
|
9295
|
+
* Alongside the facts sits a verdict: whether the file matches what the job
|
|
9296
|
+
* asked for, and the exact field-by-field differences where it does not. The
|
|
9297
|
+
* facts are measured by the encoder host; the verdict is computed by the API,
|
|
9298
|
+
* so the same request always produces the same verdict.
|
|
9299
|
+
*
|
|
9300
|
+
* For a single-file output the facts describe that file. For a multi-rendition
|
|
9301
|
+
* output (an ABR ladder, HLS, DASH, adaptive) they describe the
|
|
9302
|
+
* HIGHEST-RESOLUTION rendition — the same one width, height and
|
|
9303
|
+
* average_bitrate_kbps already report, and the one the verdict is judged
|
|
9304
|
+
* against. Per-rendition detail stays in variant_results.
|
|
9305
|
+
*
|
|
9306
|
+
* Every value here is a parsed, named fact. The report never carries encoder
|
|
9307
|
+
* command lines, tool output, stack traces, log lines or storage paths, and
|
|
9308
|
+
* values that do not look like the short identifiers media tools emit are
|
|
9309
|
+
* dropped rather than passed through.
|
|
9310
|
+
*
|
|
9311
|
+
* The string-typed fields (container, codec, profile, level, pix_fmt, the
|
|
9312
|
+
* color fields, hdr_format) are deliberately strings and not enums: their
|
|
9313
|
+
* vocabularies belong to the media formats themselves, and a value we have not
|
|
9314
|
+
* catalogued yet must be reportable the day it appears rather than wait for a
|
|
9315
|
+
* new enum value to travel through every SDK. They are always lowercase, and
|
|
9316
|
+
* the documented spellings below are the ones you will see in practice.
|
|
9317
|
+
*
|
|
9318
|
+
* @generated from message transcodely.v1.OutputReport
|
|
9319
|
+
*/
|
|
9320
|
+
declare class OutputReport extends Message<OutputReport> {
|
|
9321
|
+
/**
|
|
9322
|
+
* Delivery format of this output, lowercase: "mp4", "mov", "webm", "mkv",
|
|
9323
|
+
* "hls", "dash" or "adaptive" — the same vocabulary as the request's
|
|
9324
|
+
* OutputSpec.type, and what a container mismatch is stated in.
|
|
9325
|
+
*
|
|
9326
|
+
* It names what was DELIVERED, not what a demuxer called an intermediate
|
|
9327
|
+
* file: for a streaming output the delivered thing is the manifest and its
|
|
9328
|
+
* segments, while the measurements in the fields below were taken on the
|
|
9329
|
+
* encoded rendition before it was packaged.
|
|
9330
|
+
*
|
|
9331
|
+
* That makes this the one field the verdict cannot really police — a report
|
|
9332
|
+
* echoing the requested type always matches. The check that a file is in the
|
|
9333
|
+
* container it was promised runs on the encoder host, before delivery, and
|
|
9334
|
+
* fails the output outright rather than describing it. This field is here so
|
|
9335
|
+
* the report is self-describing, not as that check's second opinion.
|
|
9336
|
+
*
|
|
9337
|
+
* @generated from field: string container = 1;
|
|
9338
|
+
*/
|
|
9339
|
+
container: string;
|
|
9340
|
+
/**
|
|
9341
|
+
* The produced video stream. Absent when the file carries no video stream.
|
|
9342
|
+
*
|
|
9343
|
+
* @generated from field: optional transcodely.v1.OutputReportVideo video = 2;
|
|
9344
|
+
*/
|
|
9345
|
+
video?: OutputReportVideo;
|
|
9346
|
+
/**
|
|
9347
|
+
* The produced audio streams, in the order the container carries them.
|
|
9348
|
+
* Empty for an output encoded without audio.
|
|
9349
|
+
*
|
|
9350
|
+
* @generated from field: repeated transcodely.v1.OutputReportAudio audio = 3;
|
|
9351
|
+
*/
|
|
9352
|
+
audio: OutputReportAudio[];
|
|
9353
|
+
/**
|
|
9354
|
+
* Measured playback duration of the produced file in seconds.
|
|
9355
|
+
*
|
|
9356
|
+
* This is read from the produced file. It is not the input's duration and
|
|
9357
|
+
* not the requested length, which is exactly what makes it able to catch an
|
|
9358
|
+
* encode that stopped early.
|
|
9359
|
+
*
|
|
9360
|
+
* @generated from field: optional double duration_seconds = 4;
|
|
9361
|
+
*/
|
|
9362
|
+
durationSeconds?: number;
|
|
9363
|
+
/**
|
|
9364
|
+
* Whether the produced file matches what this output asked for, and where it
|
|
9365
|
+
* does not. Always present on a report.
|
|
9366
|
+
*
|
|
9367
|
+
* @generated from field: transcodely.v1.OutputReportVerdict verdict = 5;
|
|
9368
|
+
*/
|
|
9369
|
+
verdict?: OutputReportVerdict;
|
|
9370
|
+
/**
|
|
9371
|
+
* When the produced file was measured.
|
|
9372
|
+
*
|
|
9373
|
+
* @generated from field: google.protobuf.Timestamp checked_at = 6;
|
|
9374
|
+
*/
|
|
9375
|
+
checkedAt?: Timestamp;
|
|
9376
|
+
/**
|
|
9377
|
+
* What the content-aware analysis decided for this output, when the output
|
|
9378
|
+
* was encoded with per-title analysis.
|
|
9379
|
+
*
|
|
9380
|
+
* Present ONLY for an output whose encode ran that analysis. Absent on every
|
|
9381
|
+
* ordinary output, which is the overwhelming majority of them, and absent on
|
|
9382
|
+
* an output that requested content-aware encoding but whose analysis pass
|
|
9383
|
+
* never reported (it fell back to the quality tier's own CRF).
|
|
9384
|
+
*
|
|
9385
|
+
* @generated from field: optional transcodely.v1.OutputReportContentAware content_aware = 7;
|
|
9386
|
+
*/
|
|
9387
|
+
contentAware?: OutputReportContentAware;
|
|
9388
|
+
constructor(data?: PartialMessage<OutputReport>);
|
|
9389
|
+
static readonly runtime: typeof proto3;
|
|
9390
|
+
static readonly typeName = "transcodely.v1.OutputReport";
|
|
9391
|
+
static readonly fields: FieldList;
|
|
9392
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReport;
|
|
9393
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReport;
|
|
9394
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReport;
|
|
9395
|
+
static equals(a: OutputReport | PlainMessage<OutputReport> | undefined, b: OutputReport | PlainMessage<OutputReport> | undefined): boolean;
|
|
9396
|
+
}
|
|
9397
|
+
/**
|
|
9398
|
+
* What the content-aware analysis decided for one output: the quality it aimed
|
|
9399
|
+
* at, the quality it reached on its samples, and the encoder setting it chose.
|
|
9400
|
+
*
|
|
9401
|
+
* These describe the SEARCH, not the finished file. The search runs on short
|
|
9402
|
+
* samples taken from the source before the real encode starts, so
|
|
9403
|
+
* vmaf_achieved is the score those samples got at the chosen setting — not a
|
|
9404
|
+
* measurement of the delivered output, which is never scored. The facts about
|
|
9405
|
+
* the delivered file are the other fields of OutputReport.
|
|
9406
|
+
*
|
|
9407
|
+
* The fields are strings and numbers for the same reason the rest of the report
|
|
9408
|
+
* is: this records what an encoder did, and a value we have not catalogued must
|
|
9409
|
+
* be reportable the day it appears.
|
|
9410
|
+
*
|
|
9411
|
+
* @generated from message transcodely.v1.OutputReportContentAware
|
|
9412
|
+
*/
|
|
9413
|
+
declare class OutputReportContentAware extends Message<OutputReportContentAware> {
|
|
9414
|
+
/**
|
|
9415
|
+
* Analysis mode that ran, lowercase: "per_title". Same vocabulary as the
|
|
9416
|
+
* request's ContentAwareMode.
|
|
9417
|
+
*
|
|
9418
|
+
* @generated from field: string mode = 1;
|
|
9419
|
+
*/
|
|
9420
|
+
mode: string;
|
|
9421
|
+
/**
|
|
9422
|
+
* VMAF score the search aimed at, 0-100.
|
|
9423
|
+
*
|
|
9424
|
+
* This is the target actually used, which is not always the one requested:
|
|
9425
|
+
* a value outside the range the analysis can search is clamped into it, and
|
|
9426
|
+
* what you read here is the clamped one.
|
|
9427
|
+
*
|
|
9428
|
+
* @generated from field: optional double vmaf_target = 2;
|
|
9429
|
+
*/
|
|
9430
|
+
vmafTarget?: number;
|
|
9431
|
+
/**
|
|
9432
|
+
* VMAF score the chosen setting reached on the analysis samples, 0-100.
|
|
9433
|
+
* Absent when the search ended without a scored result.
|
|
9434
|
+
*
|
|
9435
|
+
* @generated from field: optional double vmaf_achieved = 3;
|
|
9436
|
+
*/
|
|
9437
|
+
vmafAchieved?: number;
|
|
9438
|
+
/**
|
|
9439
|
+
* Constant-rate-factor the search settled on, in the encoder's own scale
|
|
9440
|
+
* (lower is higher quality). Absent when the search produced none and the
|
|
9441
|
+
* encode fell back to the quality tier's default.
|
|
9442
|
+
*
|
|
9443
|
+
* For a multi-rendition output this is the highest-resolution rendition's
|
|
9444
|
+
* value; the lower rungs derive from it by the ladder's fixed offsets.
|
|
9445
|
+
*
|
|
9446
|
+
* @generated from field: optional int32 crf_chosen = 4;
|
|
9447
|
+
*/
|
|
9448
|
+
crfChosen?: number;
|
|
9449
|
+
constructor(data?: PartialMessage<OutputReportContentAware>);
|
|
9450
|
+
static readonly runtime: typeof proto3;
|
|
9451
|
+
static readonly typeName = "transcodely.v1.OutputReportContentAware";
|
|
9452
|
+
static readonly fields: FieldList;
|
|
9453
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReportContentAware;
|
|
9454
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReportContentAware;
|
|
9455
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReportContentAware;
|
|
9456
|
+
static equals(a: OutputReportContentAware | PlainMessage<OutputReportContentAware> | undefined, b: OutputReportContentAware | PlainMessage<OutputReportContentAware> | undefined): boolean;
|
|
9457
|
+
}
|
|
9458
|
+
/**
|
|
9459
|
+
* Measured properties of a produced video stream.
|
|
9460
|
+
*
|
|
9461
|
+
* @generated from message transcodely.v1.OutputReportVideo
|
|
9462
|
+
*/
|
|
9463
|
+
declare class OutputReportVideo extends Message<OutputReportVideo> {
|
|
9464
|
+
/**
|
|
9465
|
+
* Codec the stream is encoded with, lowercase, e.g. "h264", "hevc", "vp9",
|
|
9466
|
+
* "av1". Note "hevc" — that is the decoder name for the codec this API calls
|
|
9467
|
+
* "h265" on a request.
|
|
9468
|
+
*
|
|
9469
|
+
* @generated from field: string codec = 1;
|
|
9470
|
+
*/
|
|
9471
|
+
codec: string;
|
|
9472
|
+
/**
|
|
9473
|
+
* Encoded profile, lowercase and without spaces, e.g. "high", "main",
|
|
9474
|
+
* "main10", "baseline", "profile0". Absent when the codec has no profile
|
|
9475
|
+
* concept or the encoder reported none.
|
|
9476
|
+
*
|
|
9477
|
+
* @generated from field: optional string profile = 2;
|
|
9478
|
+
*/
|
|
9479
|
+
profile?: string;
|
|
9480
|
+
/**
|
|
9481
|
+
* Encoded level as the codec expresses it, e.g. "4.0", "5.1". Absent when
|
|
9482
|
+
* not reported.
|
|
9483
|
+
*
|
|
9484
|
+
* @generated from field: optional string level = 3;
|
|
9485
|
+
*/
|
|
9486
|
+
level?: string;
|
|
9487
|
+
/**
|
|
9488
|
+
* Pixel format, lowercase, e.g. "yuv420p" (8-bit) or "yuv420p10le"
|
|
9489
|
+
* (10-bit). This is how bit depth is read back: a 10-bit output that came
|
|
9490
|
+
* out 8-bit says so here.
|
|
9491
|
+
*
|
|
9492
|
+
* @generated from field: optional string pix_fmt = 4;
|
|
9493
|
+
*/
|
|
9494
|
+
pixFmt?: string;
|
|
9495
|
+
/**
|
|
9496
|
+
* Encoded frame dimensions in pixels, as stored.
|
|
9497
|
+
*
|
|
9498
|
+
* @generated from field: int32 width = 5;
|
|
9499
|
+
*/
|
|
9500
|
+
width: number;
|
|
9501
|
+
/**
|
|
9502
|
+
* @generated from field: int32 height = 6;
|
|
9503
|
+
*/
|
|
9504
|
+
height: number;
|
|
9505
|
+
/**
|
|
9506
|
+
* Measured average frame rate in frames per second, e.g. 29.97, 30, 59.94.
|
|
9507
|
+
*
|
|
9508
|
+
* @generated from field: optional double frame_rate = 7;
|
|
9509
|
+
*/
|
|
9510
|
+
frameRate?: number;
|
|
9511
|
+
/**
|
|
9512
|
+
* Measured video bitrate in kbps. Absent when the container does not carry a
|
|
9513
|
+
* per-stream bitrate.
|
|
9514
|
+
*
|
|
9515
|
+
* @generated from field: optional int32 bitrate_kbps = 8;
|
|
9516
|
+
*/
|
|
9517
|
+
bitrateKbps?: number;
|
|
9518
|
+
/**
|
|
9519
|
+
* Color signaling carried by the stream.
|
|
9520
|
+
*
|
|
9521
|
+
* @generated from field: optional transcodely.v1.OutputReportColor color = 9;
|
|
9522
|
+
*/
|
|
9523
|
+
color?: OutputReportColor;
|
|
9524
|
+
/**
|
|
9525
|
+
* HDR format the stream signals. Today this resolves to exactly one of
|
|
9526
|
+
* "none", "hdr10" or "hlg" — nothing else is ever emitted.
|
|
9527
|
+
*
|
|
9528
|
+
* It is derived from the color signaling above, so it is a reading of the
|
|
9529
|
+
* file and not an echo of the request: an SDR source that arrived wearing HDR
|
|
9530
|
+
* tags, and whose tags we rewrote, reports "none". Wide-gamut primaries with
|
|
9531
|
+
* a PQ transfer read as "hdr10"; with an HLG transfer, as "hlg".
|
|
9532
|
+
*
|
|
9533
|
+
* "hdr10_plus" and "dolby_vision" are RESERVED spellings — documented so
|
|
9534
|
+
* consumers can switch on them ahead of time, and NOT EMITTED. Telling HDR10+
|
|
9535
|
+
* from static HDR10, or finding a Dolby Vision RPU, needs the per-frame side
|
|
9536
|
+
* data this report does not carry. Until that lands, an HDR10+ or Dolby
|
|
9537
|
+
* Vision output reads as "hdr10" here, which is the static layer it also
|
|
9538
|
+
* genuinely signals. Do not read "hdr10" as proof the dynamic layer is
|
|
9539
|
+
* absent.
|
|
9540
|
+
*
|
|
9541
|
+
* @generated from field: string hdr_format = 10;
|
|
9542
|
+
*/
|
|
9543
|
+
hdrFormat: string;
|
|
9544
|
+
constructor(data?: PartialMessage<OutputReportVideo>);
|
|
9545
|
+
static readonly runtime: typeof proto3;
|
|
9546
|
+
static readonly typeName = "transcodely.v1.OutputReportVideo";
|
|
9547
|
+
static readonly fields: FieldList;
|
|
9548
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReportVideo;
|
|
9549
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReportVideo;
|
|
9550
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReportVideo;
|
|
9551
|
+
static equals(a: OutputReportVideo | PlainMessage<OutputReportVideo> | undefined, b: OutputReportVideo | PlainMessage<OutputReportVideo> | undefined): boolean;
|
|
9552
|
+
}
|
|
9553
|
+
/**
|
|
9554
|
+
* Color signaling read from a produced video stream. Each value is the
|
|
9555
|
+
* lowercase name the format assigns it; absent means the stream carries no
|
|
9556
|
+
* value for it.
|
|
9557
|
+
*
|
|
9558
|
+
* @generated from message transcodely.v1.OutputReportColor
|
|
9559
|
+
*/
|
|
9560
|
+
declare class OutputReportColor extends Message<OutputReportColor> {
|
|
9561
|
+
/**
|
|
9562
|
+
* Color primaries, e.g. "bt709" (SDR), "bt2020" (wide gamut).
|
|
9563
|
+
*
|
|
9564
|
+
* @generated from field: optional string primaries = 1;
|
|
9565
|
+
*/
|
|
9566
|
+
primaries?: string;
|
|
9567
|
+
/**
|
|
9568
|
+
* Transfer characteristics, e.g. "bt709" (SDR), "smpte2084" (PQ / HDR10),
|
|
9569
|
+
* "arib-std-b67" (HLG).
|
|
9570
|
+
*
|
|
9571
|
+
* @generated from field: optional string transfer = 2;
|
|
9572
|
+
*/
|
|
9573
|
+
transfer?: string;
|
|
9574
|
+
/**
|
|
9575
|
+
* Matrix coefficients, e.g. "bt709", "bt2020nc".
|
|
9576
|
+
*
|
|
9577
|
+
* @generated from field: optional string matrix = 3;
|
|
9578
|
+
*/
|
|
9579
|
+
matrix?: string;
|
|
9580
|
+
/**
|
|
9581
|
+
* Signal range: "tv" (limited) or "pc" (full).
|
|
9582
|
+
*
|
|
9583
|
+
* @generated from field: optional string range = 4;
|
|
9584
|
+
*/
|
|
9585
|
+
range?: string;
|
|
9586
|
+
constructor(data?: PartialMessage<OutputReportColor>);
|
|
9587
|
+
static readonly runtime: typeof proto3;
|
|
9588
|
+
static readonly typeName = "transcodely.v1.OutputReportColor";
|
|
9589
|
+
static readonly fields: FieldList;
|
|
9590
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReportColor;
|
|
9591
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReportColor;
|
|
9592
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReportColor;
|
|
9593
|
+
static equals(a: OutputReportColor | PlainMessage<OutputReportColor> | undefined, b: OutputReportColor | PlainMessage<OutputReportColor> | undefined): boolean;
|
|
9594
|
+
}
|
|
9595
|
+
/**
|
|
9596
|
+
* Measured properties of a produced audio stream.
|
|
9597
|
+
*
|
|
9598
|
+
* @generated from message transcodely.v1.OutputReportAudio
|
|
9599
|
+
*/
|
|
9600
|
+
declare class OutputReportAudio extends Message<OutputReportAudio> {
|
|
9601
|
+
/**
|
|
9602
|
+
* Codec the stream is encoded with, lowercase, e.g. "aac", "opus", "mp3",
|
|
9603
|
+
* "flac".
|
|
9604
|
+
*
|
|
9605
|
+
* @generated from field: string codec = 1;
|
|
9606
|
+
*/
|
|
9607
|
+
codec: string;
|
|
9608
|
+
/**
|
|
9609
|
+
* Channel count: 1 for mono, 2 for stereo, 6 for 5.1.
|
|
9610
|
+
*
|
|
9611
|
+
* @generated from field: optional int32 channels = 2;
|
|
9612
|
+
*/
|
|
9613
|
+
channels?: number;
|
|
9614
|
+
/**
|
|
9615
|
+
* Sampling rate in hertz, e.g. 48000.
|
|
9616
|
+
*
|
|
9617
|
+
* @generated from field: optional int32 sample_rate_hz = 3;
|
|
9618
|
+
*/
|
|
9619
|
+
sampleRateHz?: number;
|
|
9620
|
+
/**
|
|
9621
|
+
* Measured audio bitrate in kbps. Absent when the container does not carry
|
|
9622
|
+
* a per-stream bitrate.
|
|
9623
|
+
*
|
|
9624
|
+
* @generated from field: optional int32 bitrate_kbps = 4;
|
|
9625
|
+
*/
|
|
9626
|
+
bitrateKbps?: number;
|
|
9627
|
+
/**
|
|
9628
|
+
* Language tag carried by the stream, e.g. "eng", "spa". Absent when the
|
|
9629
|
+
* stream is untagged.
|
|
9630
|
+
*
|
|
9631
|
+
* @generated from field: optional string language = 5;
|
|
9632
|
+
*/
|
|
9633
|
+
language?: string;
|
|
9634
|
+
constructor(data?: PartialMessage<OutputReportAudio>);
|
|
9635
|
+
static readonly runtime: typeof proto3;
|
|
9636
|
+
static readonly typeName = "transcodely.v1.OutputReportAudio";
|
|
9637
|
+
static readonly fields: FieldList;
|
|
9638
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReportAudio;
|
|
9639
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReportAudio;
|
|
9640
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReportAudio;
|
|
9641
|
+
static equals(a: OutputReportAudio | PlainMessage<OutputReportAudio> | undefined, b: OutputReportAudio | PlainMessage<OutputReportAudio> | undefined): boolean;
|
|
9642
|
+
}
|
|
9643
|
+
/**
|
|
9644
|
+
* The result of comparing a produced file against what the job asked for.
|
|
9645
|
+
*
|
|
9646
|
+
* @generated from message transcodely.v1.OutputReportVerdict
|
|
9647
|
+
*/
|
|
9648
|
+
declare class OutputReportVerdict extends Message<OutputReportVerdict> {
|
|
9649
|
+
/**
|
|
9650
|
+
* True when every property we can check matched the request.
|
|
9651
|
+
*
|
|
9652
|
+
* Properties the request left open — "keep the original frame rate", a
|
|
9653
|
+
* container that does not pin its audio codec — are not checked and cannot
|
|
9654
|
+
* make this false.
|
|
9655
|
+
*
|
|
9656
|
+
* @generated from field: bool matches_request = 1;
|
|
9657
|
+
*/
|
|
9658
|
+
matchesRequest: boolean;
|
|
9659
|
+
/**
|
|
9660
|
+
* Every property that did not match, one entry each. Empty when
|
|
9661
|
+
* matches_request is true; a mismatch list is never empty when it is false.
|
|
9662
|
+
*
|
|
9663
|
+
* @generated from field: repeated transcodely.v1.OutputReportMismatch mismatches = 2;
|
|
9664
|
+
*/
|
|
9665
|
+
mismatches: OutputReportMismatch[];
|
|
9666
|
+
constructor(data?: PartialMessage<OutputReportVerdict>);
|
|
9667
|
+
static readonly runtime: typeof proto3;
|
|
9668
|
+
static readonly typeName = "transcodely.v1.OutputReportVerdict";
|
|
9669
|
+
static readonly fields: FieldList;
|
|
9670
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReportVerdict;
|
|
9671
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReportVerdict;
|
|
9672
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReportVerdict;
|
|
9673
|
+
static equals(a: OutputReportVerdict | PlainMessage<OutputReportVerdict> | undefined, b: OutputReportVerdict | PlainMessage<OutputReportVerdict> | undefined): boolean;
|
|
9674
|
+
}
|
|
9675
|
+
/**
|
|
9676
|
+
* One property of the produced file that does not match what was requested.
|
|
9677
|
+
*
|
|
9678
|
+
* @generated from message transcodely.v1.OutputReportMismatch
|
|
9679
|
+
*/
|
|
9680
|
+
declare class OutputReportMismatch extends Message<OutputReportMismatch> {
|
|
9681
|
+
/**
|
|
9682
|
+
* Which property differs, from a fixed vocabulary: "container",
|
|
9683
|
+
* "video.present", "video.codec", "video.profile", "video.pix_fmt",
|
|
9684
|
+
* "video.resolution", "video.width", "video.height", "video.frame_rate",
|
|
9685
|
+
* "video.color.transfer", "video.color.primaries", "audio.present",
|
|
9686
|
+
* "duration_seconds".
|
|
9687
|
+
*
|
|
9688
|
+
* "video.resolution" carries resolution tier names ("1080p") and appears
|
|
9689
|
+
* when the request named a tier; "video.width" / "video.height" carry pixel
|
|
9690
|
+
* counts and appear when the request named exact dimensions.
|
|
9691
|
+
*
|
|
9692
|
+
* Branch on this, not on the values beside it.
|
|
9693
|
+
*
|
|
9694
|
+
* @generated from field: string field = 1;
|
|
9695
|
+
*/
|
|
9696
|
+
field: string;
|
|
9697
|
+
/**
|
|
9698
|
+
* What the request asked for, as a short value, e.g. "h264", "1920",
|
|
9699
|
+
* "high", "present". Where the request allows several answers — a
|
|
9700
|
+
* multi-codec ABR ladder, for instance — this is the alternatives joined
|
|
9701
|
+
* with "|", e.g. "h264|hevc".
|
|
9702
|
+
*
|
|
9703
|
+
* @generated from field: string expected = 2;
|
|
9704
|
+
*/
|
|
9705
|
+
expected: string;
|
|
9706
|
+
/**
|
|
9707
|
+
* What the produced file carries instead, in the same vocabulary as
|
|
9708
|
+
* expected, e.g. "hevc", "1280", "main", "absent".
|
|
9709
|
+
*
|
|
9710
|
+
* @generated from field: string actual = 3;
|
|
9711
|
+
*/
|
|
9712
|
+
actual: string;
|
|
9713
|
+
constructor(data?: PartialMessage<OutputReportMismatch>);
|
|
9714
|
+
static readonly runtime: typeof proto3;
|
|
9715
|
+
static readonly typeName = "transcodely.v1.OutputReportMismatch";
|
|
9716
|
+
static readonly fields: FieldList;
|
|
9717
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutputReportMismatch;
|
|
9718
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutputReportMismatch;
|
|
9719
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutputReportMismatch;
|
|
9720
|
+
static equals(a: OutputReportMismatch | PlainMessage<OutputReportMismatch> | undefined, b: OutputReportMismatch | PlainMessage<OutputReportMismatch> | undefined): boolean;
|
|
9721
|
+
}
|
|
9218
9722
|
/**
|
|
9219
9723
|
* Measured encode results for one variant of a multi-variant output.
|
|
9220
9724
|
* Reported by the worker after encoding; index matches the variant's
|
|
@@ -10196,8 +10700,16 @@ declare class CreateJobRequest extends Message<CreateJobRequest> {
|
|
|
10196
10700
|
*/
|
|
10197
10701
|
outputPathTemplate?: string;
|
|
10198
10702
|
/**
|
|
10199
|
-
* Write outputs to managed
|
|
10200
|
-
* When true, output_origin_id is not required.
|
|
10703
|
+
* Write outputs to Transcodely-managed storage and create a hosted video
|
|
10704
|
+
* record, playable over our CDN. When true, output_origin_id is not required.
|
|
10705
|
+
*
|
|
10706
|
+
* Managed hosting is enabled for the app the first time a job asks for it —
|
|
10707
|
+
* there is no dashboard step and no AppService.EnableHosting call to make
|
|
10708
|
+
* first. That first request provisions the app's storage bucket, its managed
|
|
10709
|
+
* origin and its CDN pull zone, so it can take a few seconds longer than the
|
|
10710
|
+
* ones after it. If provisioning fails the request is rejected with error
|
|
10711
|
+
* code `hosting_provisioning_failed` (gRPC `unavailable`) and no job is
|
|
10712
|
+
* created; the request is safe to retry unchanged.
|
|
10201
10713
|
*
|
|
10202
10714
|
* @generated from field: optional bool managed = 20;
|
|
10203
10715
|
*/
|
|
@@ -11029,12 +11541,25 @@ declare class VideoTextTrack extends Message<VideoTextTrack> {
|
|
|
11029
11541
|
/**
|
|
11030
11542
|
* Request to create a presigned upload URL for direct client upload.
|
|
11031
11543
|
*
|
|
11544
|
+
* Managed hosting is enabled for the app the first time a video is created —
|
|
11545
|
+
* there is no dashboard step and no AppService.EnableHosting call to make
|
|
11546
|
+
* first. That first request provisions the app's storage bucket, its managed
|
|
11547
|
+
* origin and its CDN pull zone, so it can take a few seconds longer than the
|
|
11548
|
+
* ones after it. If provisioning fails the request is rejected with error code
|
|
11549
|
+
* `hosting_provisioning_failed` (gRPC `unavailable`) and no video is created;
|
|
11550
|
+
* the request is safe to retry unchanged.
|
|
11551
|
+
*
|
|
11032
11552
|
* @generated from message transcodely.v1.CreateUploadRequest
|
|
11033
11553
|
*/
|
|
11034
11554
|
declare class CreateUploadRequest extends Message<CreateUploadRequest> {
|
|
11035
11555
|
/**
|
|
11036
|
-
* App to create the video under.
|
|
11037
|
-
*
|
|
11556
|
+
* App to create the video under. API-key callers may omit it (their key's app
|
|
11557
|
+
* is used) or pass their own app; a different app is rejected with
|
|
11558
|
+
* PermissionDenied. Portal/JWT callers pass it to create in a specific app in
|
|
11559
|
+
* their org; omitted selects the org's first active app.
|
|
11560
|
+
*
|
|
11561
|
+
* Managed hosting does not have to be enabled on it first — see the note on
|
|
11562
|
+
* this message; the call enables it.
|
|
11038
11563
|
*
|
|
11039
11564
|
* @generated from field: string app_id = 8;
|
|
11040
11565
|
*/
|
|
@@ -11076,7 +11601,11 @@ declare class CreateUploadRequest extends Message<CreateUploadRequest> {
|
|
|
11076
11601
|
*/
|
|
11077
11602
|
tags: string[];
|
|
11078
11603
|
/**
|
|
11079
|
-
* Visibility setting
|
|
11604
|
+
* Visibility setting: "public", "unlisted" or "private".
|
|
11605
|
+
*
|
|
11606
|
+
* When omitted (or sent as an empty string), the app's hosting
|
|
11607
|
+
* default_visibility applies; if the app has no default_visibility set
|
|
11608
|
+
* either, the video is created "unlisted".
|
|
11080
11609
|
*
|
|
11081
11610
|
* @generated from field: optional string visibility = 7;
|
|
11082
11611
|
*/
|
|
@@ -11200,12 +11729,25 @@ declare class CompleteUploadResponse extends Message<CompleteUploadResponse> {
|
|
|
11200
11729
|
/**
|
|
11201
11730
|
* Request to create a hosted video from a remote URL (one-call ingest).
|
|
11202
11731
|
*
|
|
11732
|
+
* Managed hosting is enabled for the app the first time a video is created —
|
|
11733
|
+
* there is no dashboard step and no AppService.EnableHosting call to make
|
|
11734
|
+
* first. That first request provisions the app's storage bucket, its managed
|
|
11735
|
+
* origin and its CDN pull zone, so it can take a few seconds longer than the
|
|
11736
|
+
* ones after it. If provisioning fails the request is rejected with error code
|
|
11737
|
+
* `hosting_provisioning_failed` (gRPC `unavailable`) and no video is created;
|
|
11738
|
+
* the request is safe to retry unchanged.
|
|
11739
|
+
*
|
|
11203
11740
|
* @generated from message transcodely.v1.CreateFromUrlRequest
|
|
11204
11741
|
*/
|
|
11205
11742
|
declare class CreateFromUrlRequest extends Message<CreateFromUrlRequest> {
|
|
11206
11743
|
/**
|
|
11207
|
-
* App to create the video under.
|
|
11208
|
-
*
|
|
11744
|
+
* App to create the video under. API-key callers may omit it (their key's app
|
|
11745
|
+
* is used) or pass their own app; a different app is rejected with
|
|
11746
|
+
* PermissionDenied. Portal/JWT callers pass it to create in a specific app in
|
|
11747
|
+
* their org; omitted selects the org's first active app.
|
|
11748
|
+
*
|
|
11749
|
+
* Managed hosting does not have to be enabled on it first — see the note on
|
|
11750
|
+
* this message; the call enables it.
|
|
11209
11751
|
*
|
|
11210
11752
|
* @generated from field: string app_id = 1;
|
|
11211
11753
|
*/
|
|
@@ -11239,7 +11781,11 @@ declare class CreateFromUrlRequest extends Message<CreateFromUrlRequest> {
|
|
|
11239
11781
|
*/
|
|
11240
11782
|
tags: string[];
|
|
11241
11783
|
/**
|
|
11242
|
-
* Visibility setting
|
|
11784
|
+
* Visibility setting: "public", "unlisted" or "private".
|
|
11785
|
+
*
|
|
11786
|
+
* When omitted (or sent as an empty string), the app's hosting
|
|
11787
|
+
* default_visibility applies; if the app has no default_visibility set
|
|
11788
|
+
* either, the video is created "unlisted".
|
|
11243
11789
|
*
|
|
11244
11790
|
* @generated from field: optional string visibility = 6;
|
|
11245
11791
|
*/
|
|
@@ -11363,12 +11909,25 @@ declare class CompletedPart extends Message<CompletedPart> {
|
|
|
11363
11909
|
/**
|
|
11364
11910
|
* Request to create a multipart upload for large files.
|
|
11365
11911
|
*
|
|
11912
|
+
* Managed hosting is enabled for the app the first time a video is created —
|
|
11913
|
+
* there is no dashboard step and no AppService.EnableHosting call to make
|
|
11914
|
+
* first. That first request provisions the app's storage bucket, its managed
|
|
11915
|
+
* origin and its CDN pull zone, so it can take a few seconds longer than the
|
|
11916
|
+
* ones after it. If provisioning fails the request is rejected with error code
|
|
11917
|
+
* `hosting_provisioning_failed` (gRPC `unavailable`) and no video is created;
|
|
11918
|
+
* the request is safe to retry unchanged.
|
|
11919
|
+
*
|
|
11366
11920
|
* @generated from message transcodely.v1.CreateMultipartUploadRequest
|
|
11367
11921
|
*/
|
|
11368
11922
|
declare class CreateMultipartUploadRequest extends Message<CreateMultipartUploadRequest> {
|
|
11369
11923
|
/**
|
|
11370
|
-
* App to create the video under.
|
|
11371
|
-
*
|
|
11924
|
+
* App to create the video under. API-key callers may omit it (their key's app
|
|
11925
|
+
* is used) or pass their own app; a different app is rejected with
|
|
11926
|
+
* PermissionDenied. Portal/JWT callers pass it to create in a specific app in
|
|
11927
|
+
* their org; omitted selects the org's first active app.
|
|
11928
|
+
*
|
|
11929
|
+
* Managed hosting does not have to be enabled on it first — see the note on
|
|
11930
|
+
* this message; the call enables it.
|
|
11372
11931
|
*
|
|
11373
11932
|
* @generated from field: string app_id = 1;
|
|
11374
11933
|
*/
|
|
@@ -11424,7 +11983,11 @@ declare class CreateMultipartUploadRequest extends Message<CreateMultipartUpload
|
|
|
11424
11983
|
*/
|
|
11425
11984
|
tags: string[];
|
|
11426
11985
|
/**
|
|
11427
|
-
* Visibility setting
|
|
11986
|
+
* Visibility setting: "public", "unlisted" or "private".
|
|
11987
|
+
*
|
|
11988
|
+
* When omitted (or sent as an empty string), the app's hosting
|
|
11989
|
+
* default_visibility applies; if the app has no default_visibility set
|
|
11990
|
+
* either, the video is created "unlisted".
|
|
11428
11991
|
*
|
|
11429
11992
|
* @generated from field: optional string visibility = 13;
|
|
11430
11993
|
*/
|
|
@@ -12585,106 +13148,1120 @@ declare class Events {
|
|
|
12585
13148
|
} & CallOptions): Promise<WebhookDelivery[]>;
|
|
12586
13149
|
}
|
|
12587
13150
|
|
|
13151
|
+
declare class Health {
|
|
13152
|
+
private readonly transport;
|
|
13153
|
+
constructor(transport: Transport);
|
|
13154
|
+
check(opts?: CallOptions): Promise<HealthCheckResponse>;
|
|
13155
|
+
}
|
|
13156
|
+
|
|
12588
13157
|
/**
|
|
12589
|
-
*
|
|
13158
|
+
* Which provider shape an inbound event arrived in. Detected from the payload;
|
|
13159
|
+
* you never declare it.
|
|
12590
13160
|
*
|
|
12591
|
-
* @generated from enum transcodely.v1.
|
|
13161
|
+
* @generated from enum transcodely.v1.StorageEventSource
|
|
12592
13162
|
*/
|
|
12593
|
-
declare enum
|
|
13163
|
+
declare enum StorageEventSource {
|
|
12594
13164
|
/**
|
|
12595
|
-
* @generated from enum value:
|
|
13165
|
+
* @generated from enum value: STORAGE_EVENT_SOURCE_UNSPECIFIED = 0;
|
|
12596
13166
|
*/
|
|
12597
13167
|
UNSPECIFIED = 0,
|
|
12598
13168
|
/**
|
|
12599
|
-
*
|
|
13169
|
+
* Amazon S3 event notification delivered through an SNS HTTPS subscription.
|
|
12600
13170
|
*
|
|
12601
|
-
* @generated from enum value:
|
|
13171
|
+
* @generated from enum value: STORAGE_EVENT_SOURCE_S3_SNS = 1;
|
|
12602
13172
|
*/
|
|
12603
|
-
|
|
13173
|
+
S3_SNS = 1,
|
|
12604
13174
|
/**
|
|
12605
|
-
*
|
|
13175
|
+
* Google Cloud Storage notification delivered by a Pub/Sub push
|
|
13176
|
+
* subscription.
|
|
12606
13177
|
*
|
|
12607
|
-
* @generated from enum value:
|
|
13178
|
+
* @generated from enum value: STORAGE_EVENT_SOURCE_GCS_PUBSUB = 2;
|
|
12608
13179
|
*/
|
|
12609
|
-
|
|
13180
|
+
GCS_PUBSUB = 2,
|
|
12610
13181
|
/**
|
|
12611
|
-
*
|
|
13182
|
+
* Supabase Storage, delivered by a database webhook on storage.objects.
|
|
12612
13183
|
*
|
|
12613
|
-
* @generated from enum value:
|
|
13184
|
+
* @generated from enum value: STORAGE_EVENT_SOURCE_SUPABASE = 3;
|
|
12614
13185
|
*/
|
|
12615
|
-
|
|
13186
|
+
SUPABASE = 3,
|
|
13187
|
+
/**
|
|
13188
|
+
* The generic shape: {"bucket", "key", "etag", "size", "content_type"}.
|
|
13189
|
+
* Used by the Cloudflare R2 queue-consumer template and anything you write
|
|
13190
|
+
* yourself.
|
|
13191
|
+
*
|
|
13192
|
+
* @generated from enum value: STORAGE_EVENT_SOURCE_GENERIC = 4;
|
|
13193
|
+
*/
|
|
13194
|
+
GENERIC = 4
|
|
12616
13195
|
}
|
|
12617
13196
|
/**
|
|
12618
|
-
*
|
|
13197
|
+
* What happened to a storage event.
|
|
12619
13198
|
*
|
|
12620
|
-
* @generated from
|
|
13199
|
+
* @generated from enum transcodely.v1.StorageEventStatus
|
|
12621
13200
|
*/
|
|
12622
|
-
declare
|
|
13201
|
+
declare enum StorageEventStatus {
|
|
12623
13202
|
/**
|
|
12624
|
-
*
|
|
13203
|
+
* @generated from enum value: STORAGE_EVENT_STATUS_UNSPECIFIED = 0;
|
|
13204
|
+
*/
|
|
13205
|
+
UNSPECIFIED = 0,
|
|
13206
|
+
/**
|
|
13207
|
+
* Accepted and stored; not processed yet.
|
|
12625
13208
|
*
|
|
12626
|
-
* @generated from
|
|
13209
|
+
* @generated from enum value: STORAGE_EVENT_STATUS_RECEIVED = 1;
|
|
12627
13210
|
*/
|
|
12628
|
-
|
|
13211
|
+
RECEIVED = 1,
|
|
12629
13212
|
/**
|
|
12630
|
-
*
|
|
13213
|
+
* Matched the rule's filters; the job is being created.
|
|
12631
13214
|
*
|
|
12632
|
-
* @generated from
|
|
13215
|
+
* @generated from enum value: STORAGE_EVENT_STATUS_MATCHED = 2;
|
|
12633
13216
|
*/
|
|
12634
|
-
|
|
13217
|
+
MATCHED = 2,
|
|
12635
13218
|
/**
|
|
12636
|
-
*
|
|
13219
|
+
* Deliberately not turned into a job. `reason` says why — the filters did
|
|
13220
|
+
* not match, the object is in a different bucket than the rule's origin, the
|
|
13221
|
+
* rule is disabled, or the same object was already ingested.
|
|
12637
13222
|
*
|
|
12638
|
-
* @generated from
|
|
13223
|
+
* @generated from enum value: STORAGE_EVENT_STATUS_SKIPPED = 3;
|
|
12639
13224
|
*/
|
|
12640
|
-
|
|
12641
|
-
|
|
12642
|
-
|
|
12643
|
-
|
|
12644
|
-
|
|
12645
|
-
|
|
12646
|
-
|
|
12647
|
-
|
|
12648
|
-
|
|
13225
|
+
SKIPPED = 3,
|
|
13226
|
+
/**
|
|
13227
|
+
* A job was created. `job_id` names it.
|
|
13228
|
+
*
|
|
13229
|
+
* @generated from enum value: STORAGE_EVENT_STATUS_CREATED = 4;
|
|
13230
|
+
*/
|
|
13231
|
+
CREATED = 4,
|
|
13232
|
+
/**
|
|
13233
|
+
* Job creation was refused and will not be retried. `reason` carries the API
|
|
13234
|
+
* error code that refused it, e.g. `limit_exceeded` or `billing_past_due`.
|
|
13235
|
+
*
|
|
13236
|
+
* @generated from enum value: STORAGE_EVENT_STATUS_FAILED = 5;
|
|
13237
|
+
*/
|
|
13238
|
+
FAILED = 5
|
|
13239
|
+
}
|
|
13240
|
+
/**
|
|
13241
|
+
* IngestRule is one standing instruction on one origin.
|
|
13242
|
+
*
|
|
13243
|
+
* @generated from message transcodely.v1.IngestRule
|
|
13244
|
+
*/
|
|
13245
|
+
declare class IngestRule extends Message<IngestRule> {
|
|
13246
|
+
/**
|
|
13247
|
+
* Rule ID, e.g. "ing_a1b2c3d4e5f6".
|
|
13248
|
+
*
|
|
13249
|
+
* @generated from field: string id = 1;
|
|
13250
|
+
*/
|
|
13251
|
+
id: string;
|
|
13252
|
+
/**
|
|
13253
|
+
* App that owns the rule.
|
|
13254
|
+
*
|
|
13255
|
+
* @generated from field: string app_id = 2;
|
|
13256
|
+
*/
|
|
13257
|
+
appId: string;
|
|
13258
|
+
/**
|
|
13259
|
+
* Origin the objects live in. Must have read permission.
|
|
13260
|
+
*
|
|
13261
|
+
* @generated from field: string origin_id = 3;
|
|
13262
|
+
*/
|
|
13263
|
+
originId: string;
|
|
13264
|
+
/**
|
|
13265
|
+
* Human-readable name.
|
|
13266
|
+
*
|
|
13267
|
+
* @generated from field: string name = 4;
|
|
13268
|
+
*/
|
|
13269
|
+
name: string;
|
|
13270
|
+
/**
|
|
13271
|
+
* Whether the endpoint accepts events. A disabled rule answers 202 and
|
|
13272
|
+
* records the event as skipped, so a provider subscription does not start
|
|
13273
|
+
* failing while the rule is paused.
|
|
13274
|
+
*
|
|
13275
|
+
* @generated from field: bool enabled = 5;
|
|
13276
|
+
*/
|
|
13277
|
+
enabled: boolean;
|
|
13278
|
+
/**
|
|
13279
|
+
* Which objects this rule acts on. An empty filter set matches everything in
|
|
13280
|
+
* the origin's bucket.
|
|
13281
|
+
*
|
|
13282
|
+
* @generated from field: transcodely.v1.IngestRuleFilters filters = 6;
|
|
13283
|
+
*/
|
|
13284
|
+
filters?: IngestRuleFilters;
|
|
13285
|
+
/**
|
|
13286
|
+
* The job to create for a matching object.
|
|
13287
|
+
*
|
|
13288
|
+
* @generated from field: transcodely.v1.IngestRuleAction action = 7;
|
|
13289
|
+
*/
|
|
13290
|
+
action?: IngestRuleAction;
|
|
13291
|
+
/**
|
|
13292
|
+
* Where the event sender posts. Computed; read-only.
|
|
13293
|
+
*
|
|
13294
|
+
* @generated from field: string endpoint_url = 8;
|
|
13295
|
+
*/
|
|
13296
|
+
endpointUrl: string;
|
|
13297
|
+
/**
|
|
13298
|
+
* First 8 characters of the inbound secret, e.g. "ings_a1b". Enough to tell
|
|
13299
|
+
* two secrets apart in a log; never enough to use one.
|
|
13300
|
+
*
|
|
13301
|
+
* @generated from field: string secret_prefix = 9;
|
|
13302
|
+
*/
|
|
13303
|
+
secretPrefix: string;
|
|
13304
|
+
/**
|
|
13305
|
+
* Last 4 characters of the inbound secret.
|
|
13306
|
+
*
|
|
13307
|
+
* @generated from field: string secret_hint = 10;
|
|
13308
|
+
*/
|
|
13309
|
+
secretHint: string;
|
|
13310
|
+
/**
|
|
13311
|
+
* When the secret was last rotated. Absent if it has never been rotated.
|
|
13312
|
+
*
|
|
13313
|
+
* @generated from field: optional google.protobuf.Timestamp secret_rotated_at = 11;
|
|
13314
|
+
*/
|
|
13315
|
+
secretRotatedAt?: Timestamp;
|
|
13316
|
+
/**
|
|
13317
|
+
* Until when the PREVIOUS secret is still accepted after a rotation, so the
|
|
13318
|
+
* sender can be updated without dropping an event. Absent when no rotation is
|
|
13319
|
+
* in flight.
|
|
13320
|
+
*
|
|
13321
|
+
* @generated from field: optional google.protobuf.Timestamp previous_secret_expires_at = 12;
|
|
13322
|
+
*/
|
|
13323
|
+
previousSecretExpiresAt?: Timestamp;
|
|
13324
|
+
/**
|
|
13325
|
+
* How many events this rule has accepted, all time.
|
|
13326
|
+
*
|
|
13327
|
+
* @generated from field: int64 events_received = 13;
|
|
13328
|
+
*/
|
|
13329
|
+
eventsReceived: bigint;
|
|
13330
|
+
/**
|
|
13331
|
+
* How many jobs this rule has created, all time.
|
|
13332
|
+
*
|
|
13333
|
+
* @generated from field: int64 jobs_created = 14;
|
|
13334
|
+
*/
|
|
13335
|
+
jobsCreated: bigint;
|
|
13336
|
+
/**
|
|
13337
|
+
* When the last event arrived.
|
|
13338
|
+
*
|
|
13339
|
+
* @generated from field: optional google.protobuf.Timestamp last_event_at = 15;
|
|
13340
|
+
*/
|
|
13341
|
+
lastEventAt?: Timestamp;
|
|
13342
|
+
/**
|
|
13343
|
+
* When the rule was created.
|
|
13344
|
+
*
|
|
13345
|
+
* @generated from field: google.protobuf.Timestamp created_at = 16;
|
|
13346
|
+
*/
|
|
13347
|
+
createdAt?: Timestamp;
|
|
13348
|
+
/**
|
|
13349
|
+
* When the rule was last updated.
|
|
13350
|
+
*
|
|
13351
|
+
* @generated from field: google.protobuf.Timestamp updated_at = 17;
|
|
13352
|
+
*/
|
|
13353
|
+
updatedAt?: Timestamp;
|
|
13354
|
+
constructor(data?: PartialMessage<IngestRule>);
|
|
13355
|
+
static readonly runtime: typeof proto3;
|
|
13356
|
+
static readonly typeName = "transcodely.v1.IngestRule";
|
|
13357
|
+
static readonly fields: FieldList;
|
|
13358
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): IngestRule;
|
|
13359
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): IngestRule;
|
|
13360
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): IngestRule;
|
|
13361
|
+
static equals(a: IngestRule | PlainMessage<IngestRule> | undefined, b: IngestRule | PlainMessage<IngestRule> | undefined): boolean;
|
|
13362
|
+
}
|
|
13363
|
+
/**
|
|
13364
|
+
* IngestRuleFilters narrows which objects a rule acts on. All set filters must
|
|
13365
|
+
* pass. An object that fails any of them is recorded as skipped, never as an
|
|
13366
|
+
* error.
|
|
13367
|
+
*
|
|
13368
|
+
* @generated from message transcodely.v1.IngestRuleFilters
|
|
13369
|
+
*/
|
|
13370
|
+
declare class IngestRuleFilters extends Message<IngestRuleFilters> {
|
|
13371
|
+
/**
|
|
13372
|
+
* Object key prefix, e.g. "uploads/". Matched against the key as the
|
|
13373
|
+
* provider reports it, after URL-decoding.
|
|
13374
|
+
*
|
|
13375
|
+
* @generated from field: string prefix = 1;
|
|
13376
|
+
*/
|
|
13377
|
+
prefix: string;
|
|
13378
|
+
/**
|
|
13379
|
+
* Case-insensitive key suffixes, e.g. [".mp4", ".mov"]. The object matches
|
|
13380
|
+
* if it ends with any one of them. Empty accepts every extension.
|
|
13381
|
+
*
|
|
13382
|
+
* @generated from field: repeated string suffixes = 2;
|
|
13383
|
+
*/
|
|
13384
|
+
suffixes: string[];
|
|
13385
|
+
/**
|
|
13386
|
+
* Exact content types, e.g. ["video/mp4"]. The object matches if the event
|
|
13387
|
+
* reports any one of them. Empty accepts every content type — including an
|
|
13388
|
+
* event that reports none, which several providers do.
|
|
13389
|
+
*
|
|
13390
|
+
* @generated from field: repeated string content_types = 3;
|
|
13391
|
+
*/
|
|
13392
|
+
contentTypes: string[];
|
|
13393
|
+
/**
|
|
13394
|
+
* Smallest object size to act on, in bytes. 0 means no lower bound. Useful
|
|
13395
|
+
* for ignoring the zero-byte placeholder some clients write first.
|
|
13396
|
+
*
|
|
13397
|
+
* @generated from field: int64 min_bytes = 4;
|
|
13398
|
+
*/
|
|
13399
|
+
minBytes: bigint;
|
|
13400
|
+
/**
|
|
13401
|
+
* Largest object size to act on, in bytes. 0 means no upper bound.
|
|
13402
|
+
*
|
|
13403
|
+
* @generated from field: int64 max_bytes = 5;
|
|
13404
|
+
*/
|
|
13405
|
+
maxBytes: bigint;
|
|
13406
|
+
constructor(data?: PartialMessage<IngestRuleFilters>);
|
|
13407
|
+
static readonly runtime: typeof proto3;
|
|
13408
|
+
static readonly typeName = "transcodely.v1.IngestRuleFilters";
|
|
13409
|
+
static readonly fields: FieldList;
|
|
13410
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): IngestRuleFilters;
|
|
13411
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): IngestRuleFilters;
|
|
13412
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): IngestRuleFilters;
|
|
13413
|
+
static equals(a: IngestRuleFilters | PlainMessage<IngestRuleFilters> | undefined, b: IngestRuleFilters | PlainMessage<IngestRuleFilters> | undefined): boolean;
|
|
13414
|
+
}
|
|
13415
|
+
/**
|
|
13416
|
+
* IngestRuleAction is the job a rule creates. It is the subset of
|
|
13417
|
+
* CreateJobRequest that can be decided ahead of time; the input is supplied by
|
|
13418
|
+
* the event (the rule's origin, and the key the event names).
|
|
13419
|
+
*
|
|
13420
|
+
* @generated from message transcodely.v1.IngestRuleAction
|
|
13421
|
+
*/
|
|
13422
|
+
declare class IngestRuleAction extends Message<IngestRuleAction> {
|
|
13423
|
+
/**
|
|
13424
|
+
* Output specifications, exactly as CreateJobRequest.outputs. Presets may be
|
|
13425
|
+
* referenced by ID or slug.
|
|
13426
|
+
*
|
|
13427
|
+
* A rule always has at least one, enforced on the requests that can leave it
|
|
13428
|
+
* without one (`create_ingest_rule.outputs_required` and
|
|
13429
|
+
* `update_ingest_rule.clear_action_is_complete`) rather than on this field —
|
|
13430
|
+
* an Update that changes only the priority sends no outputs at all, and a
|
|
13431
|
+
* min_items here would refuse it.
|
|
13432
|
+
*
|
|
13433
|
+
* @generated from field: repeated transcodely.v1.OutputSpec outputs = 1;
|
|
13434
|
+
*/
|
|
13435
|
+
outputs: OutputSpec[];
|
|
13436
|
+
/**
|
|
13437
|
+
* Write outputs to Transcodely-managed storage and create a hosted video,
|
|
13438
|
+
* playable over our CDN. Set this or output_origin_id, not both.
|
|
13439
|
+
*
|
|
13440
|
+
* @generated from field: bool managed = 2;
|
|
13441
|
+
*/
|
|
13442
|
+
managed: boolean;
|
|
13443
|
+
/**
|
|
13444
|
+
* Origin to write outputs to. Must have write permission. Set this or
|
|
13445
|
+
* managed, not both.
|
|
13446
|
+
*
|
|
13447
|
+
* @generated from field: optional string output_origin_id = 3;
|
|
13448
|
+
*/
|
|
13449
|
+
outputOriginId?: string;
|
|
13450
|
+
/**
|
|
13451
|
+
* Job-level output path template, as CreateJobRequest.output_path_template.
|
|
13452
|
+
* In addition to the job variables it accepts {input_key}, {input_name} (the
|
|
13453
|
+
* key's last segment without its extension) and {input_dir} (everything
|
|
13454
|
+
* before the last segment), so outputs can mirror the source layout.
|
|
13455
|
+
*
|
|
13456
|
+
* @generated from field: optional string output_path_template = 4;
|
|
13457
|
+
*/
|
|
13458
|
+
outputPathTemplate?: string;
|
|
13459
|
+
/**
|
|
13460
|
+
* Thumbnail specifications, as CreateJobRequest.thumbnails.
|
|
13461
|
+
*
|
|
13462
|
+
* @generated from field: repeated transcodely.v1.ThumbnailSpec thumbnails = 5;
|
|
13463
|
+
*/
|
|
13464
|
+
thumbnails: ThumbnailSpec[];
|
|
13465
|
+
/**
|
|
13466
|
+
* Job priority.
|
|
13467
|
+
*
|
|
13468
|
+
* @generated from field: transcodely.v1.JobPriority priority = 6;
|
|
13469
|
+
*/
|
|
13470
|
+
priority: JobPriority;
|
|
13471
|
+
/**
|
|
13472
|
+
* Metadata copied onto every job the rule creates. The rule also adds
|
|
13473
|
+
* `ingest_rule_id` and `ingest_object_key` of its own, which you can read
|
|
13474
|
+
* back on the job and in webhook payloads.
|
|
13475
|
+
*
|
|
13476
|
+
* @generated from field: map<string, string> metadata = 7;
|
|
13477
|
+
*/
|
|
13478
|
+
metadata: {
|
|
13479
|
+
[key: string]: string;
|
|
13480
|
+
};
|
|
13481
|
+
constructor(data?: PartialMessage<IngestRuleAction>);
|
|
13482
|
+
static readonly runtime: typeof proto3;
|
|
13483
|
+
static readonly typeName = "transcodely.v1.IngestRuleAction";
|
|
13484
|
+
static readonly fields: FieldList;
|
|
13485
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): IngestRuleAction;
|
|
13486
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): IngestRuleAction;
|
|
13487
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): IngestRuleAction;
|
|
13488
|
+
static equals(a: IngestRuleAction | PlainMessage<IngestRuleAction> | undefined, b: IngestRuleAction | PlainMessage<IngestRuleAction> | undefined): boolean;
|
|
13489
|
+
}
|
|
13490
|
+
/**
|
|
13491
|
+
* StorageEvent is one delivery from a storage provider, and what came of it.
|
|
13492
|
+
*
|
|
13493
|
+
* @generated from message transcodely.v1.StorageEvent
|
|
13494
|
+
*/
|
|
13495
|
+
declare class StorageEvent extends Message<StorageEvent> {
|
|
13496
|
+
/**
|
|
13497
|
+
* Event ID, e.g. "sev_a1b2c3d4e5f6g7".
|
|
13498
|
+
*
|
|
13499
|
+
* @generated from field: string id = 1;
|
|
13500
|
+
*/
|
|
13501
|
+
id: string;
|
|
13502
|
+
/**
|
|
13503
|
+
* Rule that received it.
|
|
13504
|
+
*
|
|
13505
|
+
* @generated from field: string rule_id = 2;
|
|
13506
|
+
*/
|
|
13507
|
+
ruleId: string;
|
|
13508
|
+
/**
|
|
13509
|
+
* App that owns the rule.
|
|
13510
|
+
*
|
|
13511
|
+
* @generated from field: string app_id = 3;
|
|
13512
|
+
*/
|
|
13513
|
+
appId: string;
|
|
13514
|
+
/**
|
|
13515
|
+
* Bucket the object is in, as the provider reported it.
|
|
13516
|
+
*
|
|
13517
|
+
* @generated from field: string bucket = 4;
|
|
13518
|
+
*/
|
|
13519
|
+
bucket: string;
|
|
13520
|
+
/**
|
|
13521
|
+
* Object key, URL-decoded. S3 percent-encodes keys and writes a space as
|
|
13522
|
+
* "+"; what is stored here is the real key.
|
|
13523
|
+
*
|
|
13524
|
+
* @generated from field: string object_key = 5;
|
|
13525
|
+
*/
|
|
13526
|
+
objectKey: string;
|
|
13527
|
+
/**
|
|
13528
|
+
* Object version identity, used for deduplication: an S3/R2 eTag, a GCS
|
|
13529
|
+
* generation, or a Supabase metadata eTag. Empty when the provider sent
|
|
13530
|
+
* none — the key alone then identifies the object.
|
|
13531
|
+
*
|
|
13532
|
+
* @generated from field: string etag = 6;
|
|
13533
|
+
*/
|
|
13534
|
+
etag: string;
|
|
13535
|
+
/**
|
|
13536
|
+
* Object size in bytes, when the event reported one.
|
|
13537
|
+
*
|
|
13538
|
+
* @generated from field: int64 size_bytes = 7;
|
|
13539
|
+
*/
|
|
13540
|
+
sizeBytes: bigint;
|
|
13541
|
+
/**
|
|
13542
|
+
* Content type, when the event reported one.
|
|
13543
|
+
*
|
|
13544
|
+
* @generated from field: string content_type = 8;
|
|
13545
|
+
*/
|
|
13546
|
+
contentType: string;
|
|
13547
|
+
/**
|
|
13548
|
+
* Which provider shape the event arrived in.
|
|
13549
|
+
*
|
|
13550
|
+
* @generated from field: transcodely.v1.StorageEventSource source = 9;
|
|
13551
|
+
*/
|
|
13552
|
+
source: StorageEventSource;
|
|
13553
|
+
/**
|
|
13554
|
+
* What happened to it.
|
|
13555
|
+
*
|
|
13556
|
+
* @generated from field: transcodely.v1.StorageEventStatus status = 10;
|
|
13557
|
+
*/
|
|
13558
|
+
status: StorageEventStatus;
|
|
13559
|
+
/**
|
|
13560
|
+
* Why, for `skipped` and `failed`. A short machine-readable slug:
|
|
13561
|
+
* "filter_prefix", "filter_suffix", "filter_content_type", "filter_size",
|
|
13562
|
+
* "bucket_mismatch", "rule_disabled", "duplicate", or the API error code
|
|
13563
|
+
* that refused the job.
|
|
13564
|
+
*
|
|
13565
|
+
* @generated from field: string reason = 11;
|
|
13566
|
+
*/
|
|
13567
|
+
reason: string;
|
|
13568
|
+
/**
|
|
13569
|
+
* The job created from this event, if one was.
|
|
13570
|
+
*
|
|
13571
|
+
* @generated from field: string job_id = 12;
|
|
13572
|
+
*/
|
|
13573
|
+
jobId: string;
|
|
13574
|
+
/**
|
|
13575
|
+
* When the event was accepted.
|
|
13576
|
+
*
|
|
13577
|
+
* @generated from field: google.protobuf.Timestamp received_at = 13;
|
|
13578
|
+
*/
|
|
13579
|
+
receivedAt?: Timestamp;
|
|
13580
|
+
/**
|
|
13581
|
+
* When the event reached a terminal status.
|
|
13582
|
+
*
|
|
13583
|
+
* @generated from field: optional google.protobuf.Timestamp processed_at = 14;
|
|
13584
|
+
*/
|
|
13585
|
+
processedAt?: Timestamp;
|
|
13586
|
+
constructor(data?: PartialMessage<StorageEvent>);
|
|
13587
|
+
static readonly runtime: typeof proto3;
|
|
13588
|
+
static readonly typeName = "transcodely.v1.StorageEvent";
|
|
13589
|
+
static readonly fields: FieldList;
|
|
13590
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): StorageEvent;
|
|
13591
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): StorageEvent;
|
|
13592
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): StorageEvent;
|
|
13593
|
+
static equals(a: StorageEvent | PlainMessage<StorageEvent> | undefined, b: StorageEvent | PlainMessage<StorageEvent> | undefined): boolean;
|
|
13594
|
+
}
|
|
13595
|
+
/**
|
|
13596
|
+
* Request to create an ingest rule.
|
|
13597
|
+
*
|
|
13598
|
+
* @generated from message transcodely.v1.CreateIngestRuleRequest
|
|
13599
|
+
*/
|
|
13600
|
+
declare class CreateIngestRuleRequest extends Message<CreateIngestRuleRequest> {
|
|
13601
|
+
/**
|
|
13602
|
+
* Origin the objects land in. Must be active and have read permission.
|
|
13603
|
+
*
|
|
13604
|
+
* @generated from field: string origin_id = 1;
|
|
13605
|
+
*/
|
|
13606
|
+
originId: string;
|
|
13607
|
+
/**
|
|
13608
|
+
* Human-readable name.
|
|
13609
|
+
*
|
|
13610
|
+
* @generated from field: string name = 2;
|
|
13611
|
+
*/
|
|
13612
|
+
name: string;
|
|
13613
|
+
/**
|
|
13614
|
+
* Which objects to act on. Omit to act on everything in the bucket.
|
|
13615
|
+
*
|
|
13616
|
+
* @generated from field: transcodely.v1.IngestRuleFilters filters = 3;
|
|
13617
|
+
*/
|
|
13618
|
+
filters?: IngestRuleFilters;
|
|
13619
|
+
/**
|
|
13620
|
+
* The job to create for a matching object.
|
|
13621
|
+
*
|
|
13622
|
+
* @generated from field: transcodely.v1.IngestRuleAction action = 4;
|
|
13623
|
+
*/
|
|
13624
|
+
action?: IngestRuleAction;
|
|
13625
|
+
/**
|
|
13626
|
+
* Whether the rule starts enabled. Defaults to true; send false to create it
|
|
13627
|
+
* paused and turn it on once the sender is configured.
|
|
13628
|
+
*
|
|
13629
|
+
* @generated from field: optional bool enabled = 5;
|
|
13630
|
+
*/
|
|
13631
|
+
enabled?: boolean;
|
|
13632
|
+
/**
|
|
13633
|
+
* Optional target app. API-key callers may omit it (their key's app is used)
|
|
13634
|
+
* or pass their own app; a different app is rejected with PermissionDenied.
|
|
13635
|
+
* Portal/JWT callers pass it to create in a specific app in their org;
|
|
13636
|
+
* omitted selects the org's first active app.
|
|
13637
|
+
*
|
|
13638
|
+
* @generated from field: optional string app_id = 6;
|
|
13639
|
+
*/
|
|
13640
|
+
appId?: string;
|
|
13641
|
+
constructor(data?: PartialMessage<CreateIngestRuleRequest>);
|
|
13642
|
+
static readonly runtime: typeof proto3;
|
|
13643
|
+
static readonly typeName = "transcodely.v1.CreateIngestRuleRequest";
|
|
13644
|
+
static readonly fields: FieldList;
|
|
13645
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CreateIngestRuleRequest;
|
|
13646
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CreateIngestRuleRequest;
|
|
13647
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CreateIngestRuleRequest;
|
|
13648
|
+
static equals(a: CreateIngestRuleRequest | PlainMessage<CreateIngestRuleRequest> | undefined, b: CreateIngestRuleRequest | PlainMessage<CreateIngestRuleRequest> | undefined): boolean;
|
|
13649
|
+
}
|
|
13650
|
+
/**
|
|
13651
|
+
* Response from creating an ingest rule.
|
|
13652
|
+
*
|
|
13653
|
+
* @generated from message transcodely.v1.CreateIngestRuleResponse
|
|
13654
|
+
*/
|
|
13655
|
+
declare class CreateIngestRuleResponse extends Message<CreateIngestRuleResponse> {
|
|
13656
|
+
/**
|
|
13657
|
+
* The created rule.
|
|
13658
|
+
*
|
|
13659
|
+
* @generated from field: transcodely.v1.IngestRule rule = 1;
|
|
13660
|
+
*/
|
|
13661
|
+
rule?: IngestRule;
|
|
13662
|
+
/**
|
|
13663
|
+
* The inbound secret, in full. Returned ONCE, here. We keep only enough of
|
|
13664
|
+
* it to verify a delivery and to show you its first and last characters, so
|
|
13665
|
+
* this value cannot be recovered later — rotate the rule to get a new one.
|
|
13666
|
+
*
|
|
13667
|
+
* @generated from field: string secret = 2;
|
|
13668
|
+
*/
|
|
13669
|
+
secret: string;
|
|
13670
|
+
constructor(data?: PartialMessage<CreateIngestRuleResponse>);
|
|
13671
|
+
static readonly runtime: typeof proto3;
|
|
13672
|
+
static readonly typeName = "transcodely.v1.CreateIngestRuleResponse";
|
|
13673
|
+
static readonly fields: FieldList;
|
|
13674
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CreateIngestRuleResponse;
|
|
13675
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CreateIngestRuleResponse;
|
|
13676
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CreateIngestRuleResponse;
|
|
13677
|
+
static equals(a: CreateIngestRuleResponse | PlainMessage<CreateIngestRuleResponse> | undefined, b: CreateIngestRuleResponse | PlainMessage<CreateIngestRuleResponse> | undefined): boolean;
|
|
13678
|
+
}
|
|
13679
|
+
/**
|
|
13680
|
+
* Request to get an ingest rule.
|
|
13681
|
+
*
|
|
13682
|
+
* @generated from message transcodely.v1.GetIngestRuleRequest
|
|
13683
|
+
*/
|
|
13684
|
+
declare class GetIngestRuleRequest extends Message<GetIngestRuleRequest> {
|
|
13685
|
+
/**
|
|
13686
|
+
* ID of the rule.
|
|
13687
|
+
*
|
|
13688
|
+
* @generated from field: string id = 1;
|
|
13689
|
+
*/
|
|
13690
|
+
id: string;
|
|
13691
|
+
constructor(data?: PartialMessage<GetIngestRuleRequest>);
|
|
13692
|
+
static readonly runtime: typeof proto3;
|
|
13693
|
+
static readonly typeName = "transcodely.v1.GetIngestRuleRequest";
|
|
13694
|
+
static readonly fields: FieldList;
|
|
13695
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GetIngestRuleRequest;
|
|
13696
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GetIngestRuleRequest;
|
|
13697
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GetIngestRuleRequest;
|
|
13698
|
+
static equals(a: GetIngestRuleRequest | PlainMessage<GetIngestRuleRequest> | undefined, b: GetIngestRuleRequest | PlainMessage<GetIngestRuleRequest> | undefined): boolean;
|
|
13699
|
+
}
|
|
13700
|
+
/**
|
|
13701
|
+
* Response from getting an ingest rule.
|
|
13702
|
+
*
|
|
13703
|
+
* @generated from message transcodely.v1.GetIngestRuleResponse
|
|
13704
|
+
*/
|
|
13705
|
+
declare class GetIngestRuleResponse extends Message<GetIngestRuleResponse> {
|
|
13706
|
+
/**
|
|
13707
|
+
* The requested rule.
|
|
13708
|
+
*
|
|
13709
|
+
* @generated from field: transcodely.v1.IngestRule rule = 1;
|
|
13710
|
+
*/
|
|
13711
|
+
rule?: IngestRule;
|
|
13712
|
+
constructor(data?: PartialMessage<GetIngestRuleResponse>);
|
|
13713
|
+
static readonly runtime: typeof proto3;
|
|
13714
|
+
static readonly typeName = "transcodely.v1.GetIngestRuleResponse";
|
|
13715
|
+
static readonly fields: FieldList;
|
|
13716
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GetIngestRuleResponse;
|
|
13717
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GetIngestRuleResponse;
|
|
13718
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GetIngestRuleResponse;
|
|
13719
|
+
static equals(a: GetIngestRuleResponse | PlainMessage<GetIngestRuleResponse> | undefined, b: GetIngestRuleResponse | PlainMessage<GetIngestRuleResponse> | undefined): boolean;
|
|
13720
|
+
}
|
|
13721
|
+
/**
|
|
13722
|
+
* Request to list ingest rules.
|
|
13723
|
+
*
|
|
13724
|
+
* @generated from message transcodely.v1.ListIngestRulesRequest
|
|
13725
|
+
*/
|
|
13726
|
+
declare class ListIngestRulesRequest extends Message<ListIngestRulesRequest> {
|
|
13727
|
+
/**
|
|
13728
|
+
* Only rules on this origin.
|
|
13729
|
+
*
|
|
13730
|
+
* @generated from field: optional string origin_id = 1;
|
|
13731
|
+
*/
|
|
13732
|
+
originId?: string;
|
|
13733
|
+
/**
|
|
13734
|
+
* Only enabled, or only disabled, rules.
|
|
13735
|
+
*
|
|
13736
|
+
* @generated from field: optional bool enabled = 2;
|
|
13737
|
+
*/
|
|
13738
|
+
enabled?: boolean;
|
|
13739
|
+
/**
|
|
13740
|
+
* Pagination parameters.
|
|
13741
|
+
*
|
|
13742
|
+
* @generated from field: transcodely.v1.PaginationRequest pagination = 3;
|
|
13743
|
+
*/
|
|
13744
|
+
pagination?: PaginationRequest;
|
|
13745
|
+
/**
|
|
13746
|
+
* Optional app filter. API-key callers may omit it (their key's app is used)
|
|
13747
|
+
* or pass their own app; a different app is rejected with PermissionDenied.
|
|
13748
|
+
* Portal/JWT callers pass it to list a specific app in their org; omitted
|
|
13749
|
+
* returns rules across all apps in the org.
|
|
13750
|
+
*
|
|
13751
|
+
* @generated from field: optional string app_id = 4;
|
|
13752
|
+
*/
|
|
13753
|
+
appId?: string;
|
|
13754
|
+
constructor(data?: PartialMessage<ListIngestRulesRequest>);
|
|
13755
|
+
static readonly runtime: typeof proto3;
|
|
13756
|
+
static readonly typeName = "transcodely.v1.ListIngestRulesRequest";
|
|
13757
|
+
static readonly fields: FieldList;
|
|
13758
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ListIngestRulesRequest;
|
|
13759
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ListIngestRulesRequest;
|
|
13760
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ListIngestRulesRequest;
|
|
13761
|
+
static equals(a: ListIngestRulesRequest | PlainMessage<ListIngestRulesRequest> | undefined, b: ListIngestRulesRequest | PlainMessage<ListIngestRulesRequest> | undefined): boolean;
|
|
13762
|
+
}
|
|
13763
|
+
/**
|
|
13764
|
+
* Response from listing ingest rules.
|
|
13765
|
+
*
|
|
13766
|
+
* @generated from message transcodely.v1.ListIngestRulesResponse
|
|
13767
|
+
*/
|
|
13768
|
+
declare class ListIngestRulesResponse extends Message<ListIngestRulesResponse> {
|
|
13769
|
+
/**
|
|
13770
|
+
* The rules, newest first.
|
|
13771
|
+
*
|
|
13772
|
+
* @generated from field: repeated transcodely.v1.IngestRule rules = 1;
|
|
13773
|
+
*/
|
|
13774
|
+
rules: IngestRule[];
|
|
13775
|
+
/**
|
|
13776
|
+
* Pagination metadata.
|
|
13777
|
+
*
|
|
13778
|
+
* @generated from field: transcodely.v1.PaginationResponse pagination = 2;
|
|
13779
|
+
*/
|
|
13780
|
+
pagination?: PaginationResponse;
|
|
13781
|
+
constructor(data?: PartialMessage<ListIngestRulesResponse>);
|
|
13782
|
+
static readonly runtime: typeof proto3;
|
|
13783
|
+
static readonly typeName = "transcodely.v1.ListIngestRulesResponse";
|
|
13784
|
+
static readonly fields: FieldList;
|
|
13785
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ListIngestRulesResponse;
|
|
13786
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ListIngestRulesResponse;
|
|
13787
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ListIngestRulesResponse;
|
|
13788
|
+
static equals(a: ListIngestRulesResponse | PlainMessage<ListIngestRulesResponse> | undefined, b: ListIngestRulesResponse | PlainMessage<ListIngestRulesResponse> | undefined): boolean;
|
|
13789
|
+
}
|
|
13790
|
+
/**
|
|
13791
|
+
* Request to update an ingest rule.
|
|
13792
|
+
*
|
|
13793
|
+
* Every field is optional and an update applies only what it carries: a field
|
|
13794
|
+
* you do not send keeps the value it has, down to the individual filters and
|
|
13795
|
+
* the individual parts of the action. This matters more here than on most
|
|
13796
|
+
* objects, because a rule is a standing instruction to spend money — its
|
|
13797
|
+
* filters are the only thing between "the objects I meant" and "everything that
|
|
13798
|
+
* lands in the bucket", and a request that silently cleared them would be paid
|
|
13799
|
+
* for one transcode at a time.
|
|
13800
|
+
*
|
|
13801
|
+
* Because the fields inside `filters` and `action` carry no presence of their
|
|
13802
|
+
* own, "not sent" means "left at its default" — the same rule
|
|
13803
|
+
* UpdateVideoRequest.tags states. Set `clear_filters` or `clear_action` when
|
|
13804
|
+
* you mean to remove something rather than change it.
|
|
13805
|
+
*
|
|
13806
|
+
* @generated from message transcodely.v1.UpdateIngestRuleRequest
|
|
13807
|
+
*/
|
|
13808
|
+
declare class UpdateIngestRuleRequest extends Message<UpdateIngestRuleRequest> {
|
|
13809
|
+
/**
|
|
13810
|
+
* ID of the rule to update.
|
|
13811
|
+
*
|
|
13812
|
+
* @generated from field: string id = 1;
|
|
13813
|
+
*/
|
|
13814
|
+
id: string;
|
|
13815
|
+
/**
|
|
13816
|
+
* New name. Omit to leave unchanged.
|
|
13817
|
+
*
|
|
13818
|
+
* @generated from field: optional string name = 2;
|
|
13819
|
+
*/
|
|
13820
|
+
name?: string;
|
|
13821
|
+
/**
|
|
13822
|
+
* Enable or disable the rule. Omit to leave unchanged. Turning a rule back on
|
|
13823
|
+
* reports how many events it declined while it was off, in
|
|
13824
|
+
* `events_skipped_while_disabled`.
|
|
13825
|
+
*
|
|
13826
|
+
* @generated from field: optional bool enabled = 3;
|
|
13827
|
+
*/
|
|
13828
|
+
enabled?: boolean;
|
|
13829
|
+
/**
|
|
13830
|
+
* Filters to change. Each one you send replaces that filter; each one you
|
|
13831
|
+
* leave out keeps the value it has. Narrowing a rule to a new prefix is
|
|
13832
|
+
* therefore `{"filters": {"prefix": "raw/"}}` and nothing else — the suffix,
|
|
13833
|
+
* content-type and size filters are untouched.
|
|
13834
|
+
*
|
|
13835
|
+
* A filter is removed rather than changed with `clear_filters`, which empties
|
|
13836
|
+
* the set before this one is applied. So `clear_filters` alone widens the rule
|
|
13837
|
+
* to everything in the bucket, and `clear_filters` together with a filter set
|
|
13838
|
+
* replaces the set outright.
|
|
13839
|
+
*
|
|
13840
|
+
* @generated from field: transcodely.v1.IngestRuleFilters filters = 4;
|
|
13841
|
+
*/
|
|
13842
|
+
filters?: IngestRuleFilters;
|
|
13843
|
+
/**
|
|
13844
|
+
* Parts of the action to change. Each field you send replaces that part of
|
|
13845
|
+
* the action; each field you leave out keeps what it had. Repeated and map
|
|
13846
|
+
* fields replace whole — sending one output replaces the output list, and
|
|
13847
|
+
* sending one metadata pair replaces the metadata map — because neither
|
|
13848
|
+
* carries the presence needed to merge a single entry.
|
|
13849
|
+
*
|
|
13850
|
+
* The destination is a pair, so it changes as a pair: send `managed` or
|
|
13851
|
+
* `output_origin_id` to move the outputs, or neither to leave them where they
|
|
13852
|
+
* are. Sending both is refused.
|
|
13853
|
+
*
|
|
13854
|
+
* `managed: false` is not a way to turn managed storage off — a false boolean
|
|
13855
|
+
* is indistinguishable from an absent one, so it reads as "leave the
|
|
13856
|
+
* destination alone" and changes nothing. Send `output_origin_id` instead.
|
|
13857
|
+
*
|
|
13858
|
+
* Emptying a repeated or map field is not expressible by sending it empty, so
|
|
13859
|
+
* dropping the thumbnails or the metadata means `clear_action` with the action
|
|
13860
|
+
* you want kept.
|
|
13861
|
+
*
|
|
13862
|
+
* @generated from field: transcodely.v1.IngestRuleAction action = 5;
|
|
13863
|
+
*/
|
|
13864
|
+
action?: IngestRuleAction;
|
|
13865
|
+
/**
|
|
13866
|
+
* Issue a new secret. The previous one keeps working for 24 hours so the
|
|
13867
|
+
* sender can be updated without dropping an event; the new secret is
|
|
13868
|
+
* returned once, on this response.
|
|
13869
|
+
*
|
|
13870
|
+
* @generated from field: bool rotate_secret = 6;
|
|
13871
|
+
*/
|
|
13872
|
+
rotateSecret: boolean;
|
|
13873
|
+
/**
|
|
13874
|
+
* Empty the filter set before applying `filters`. On its own it widens the
|
|
13875
|
+
* rule to every object in the bucket; with `filters` it replaces the set
|
|
13876
|
+
* outright instead of merging into it.
|
|
13877
|
+
*
|
|
13878
|
+
* @generated from field: bool clear_filters = 7;
|
|
13879
|
+
*/
|
|
13880
|
+
clearFilters: boolean;
|
|
13881
|
+
/**
|
|
13882
|
+
* Replace the action outright instead of merging into it. `action` must then
|
|
13883
|
+
* be complete — at least one output and exactly one destination — because
|
|
13884
|
+
* nothing is carried over. This is how thumbnails or metadata are removed.
|
|
13885
|
+
*
|
|
13886
|
+
* @generated from field: bool clear_action = 8;
|
|
13887
|
+
*/
|
|
13888
|
+
clearAction: boolean;
|
|
13889
|
+
constructor(data?: PartialMessage<UpdateIngestRuleRequest>);
|
|
13890
|
+
static readonly runtime: typeof proto3;
|
|
13891
|
+
static readonly typeName = "transcodely.v1.UpdateIngestRuleRequest";
|
|
13892
|
+
static readonly fields: FieldList;
|
|
13893
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): UpdateIngestRuleRequest;
|
|
13894
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): UpdateIngestRuleRequest;
|
|
13895
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): UpdateIngestRuleRequest;
|
|
13896
|
+
static equals(a: UpdateIngestRuleRequest | PlainMessage<UpdateIngestRuleRequest> | undefined, b: UpdateIngestRuleRequest | PlainMessage<UpdateIngestRuleRequest> | undefined): boolean;
|
|
13897
|
+
}
|
|
13898
|
+
/**
|
|
13899
|
+
* Response from updating an ingest rule.
|
|
13900
|
+
*
|
|
13901
|
+
* @generated from message transcodely.v1.UpdateIngestRuleResponse
|
|
13902
|
+
*/
|
|
13903
|
+
declare class UpdateIngestRuleResponse extends Message<UpdateIngestRuleResponse> {
|
|
13904
|
+
/**
|
|
13905
|
+
* The updated rule.
|
|
13906
|
+
*
|
|
13907
|
+
* @generated from field: transcodely.v1.IngestRule rule = 1;
|
|
13908
|
+
*/
|
|
13909
|
+
rule?: IngestRule;
|
|
13910
|
+
/**
|
|
13911
|
+
* The new inbound secret, in full. Present only when rotate_secret was set,
|
|
13912
|
+
* and returned only here.
|
|
13913
|
+
*
|
|
13914
|
+
* @generated from field: string secret = 2;
|
|
13915
|
+
*/
|
|
13916
|
+
secret: string;
|
|
13917
|
+
/**
|
|
13918
|
+
* How many objects this rule declined while it was switched off, and can now
|
|
13919
|
+
* be replayed with ReplayEvent.
|
|
13920
|
+
*
|
|
13921
|
+
* Returned when an update turns a paused rule back on, because pausing is
|
|
13922
|
+
* advertised as safe and that is only half true: the deliveries were accepted
|
|
13923
|
+
* and recorded, but nothing will retry them on its own. This is the number
|
|
13924
|
+
* you would otherwise have to go and discover.
|
|
13925
|
+
*
|
|
13926
|
+
* @generated from field: int64 events_skipped_while_disabled = 3;
|
|
13927
|
+
*/
|
|
13928
|
+
eventsSkippedWhileDisabled: bigint;
|
|
13929
|
+
constructor(data?: PartialMessage<UpdateIngestRuleResponse>);
|
|
13930
|
+
static readonly runtime: typeof proto3;
|
|
13931
|
+
static readonly typeName = "transcodely.v1.UpdateIngestRuleResponse";
|
|
13932
|
+
static readonly fields: FieldList;
|
|
13933
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): UpdateIngestRuleResponse;
|
|
13934
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): UpdateIngestRuleResponse;
|
|
13935
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): UpdateIngestRuleResponse;
|
|
13936
|
+
static equals(a: UpdateIngestRuleResponse | PlainMessage<UpdateIngestRuleResponse> | undefined, b: UpdateIngestRuleResponse | PlainMessage<UpdateIngestRuleResponse> | undefined): boolean;
|
|
13937
|
+
}
|
|
13938
|
+
/**
|
|
13939
|
+
* Request to delete an ingest rule.
|
|
13940
|
+
*
|
|
13941
|
+
* @generated from message transcodely.v1.DeleteIngestRuleRequest
|
|
13942
|
+
*/
|
|
13943
|
+
declare class DeleteIngestRuleRequest extends Message<DeleteIngestRuleRequest> {
|
|
13944
|
+
/**
|
|
13945
|
+
* ID of the rule to delete.
|
|
13946
|
+
*
|
|
13947
|
+
* @generated from field: string id = 1;
|
|
13948
|
+
*/
|
|
13949
|
+
id: string;
|
|
13950
|
+
constructor(data?: PartialMessage<DeleteIngestRuleRequest>);
|
|
13951
|
+
static readonly runtime: typeof proto3;
|
|
13952
|
+
static readonly typeName = "transcodely.v1.DeleteIngestRuleRequest";
|
|
13953
|
+
static readonly fields: FieldList;
|
|
13954
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): DeleteIngestRuleRequest;
|
|
13955
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): DeleteIngestRuleRequest;
|
|
13956
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): DeleteIngestRuleRequest;
|
|
13957
|
+
static equals(a: DeleteIngestRuleRequest | PlainMessage<DeleteIngestRuleRequest> | undefined, b: DeleteIngestRuleRequest | PlainMessage<DeleteIngestRuleRequest> | undefined): boolean;
|
|
13958
|
+
}
|
|
13959
|
+
/**
|
|
13960
|
+
* Response from deleting an ingest rule.
|
|
13961
|
+
*
|
|
13962
|
+
* @generated from message transcodely.v1.DeleteIngestRuleResponse
|
|
13963
|
+
*/
|
|
13964
|
+
declare class DeleteIngestRuleResponse extends Message<DeleteIngestRuleResponse> {
|
|
13965
|
+
/**
|
|
13966
|
+
* The rule as it was at deletion.
|
|
13967
|
+
*
|
|
13968
|
+
* @generated from field: transcodely.v1.IngestRule rule = 1;
|
|
13969
|
+
*/
|
|
13970
|
+
rule?: IngestRule;
|
|
13971
|
+
constructor(data?: PartialMessage<DeleteIngestRuleResponse>);
|
|
13972
|
+
static readonly runtime: typeof proto3;
|
|
13973
|
+
static readonly typeName = "transcodely.v1.DeleteIngestRuleResponse";
|
|
13974
|
+
static readonly fields: FieldList;
|
|
13975
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): DeleteIngestRuleResponse;
|
|
13976
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): DeleteIngestRuleResponse;
|
|
13977
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): DeleteIngestRuleResponse;
|
|
13978
|
+
static equals(a: DeleteIngestRuleResponse | PlainMessage<DeleteIngestRuleResponse> | undefined, b: DeleteIngestRuleResponse | PlainMessage<DeleteIngestRuleResponse> | undefined): boolean;
|
|
13979
|
+
}
|
|
13980
|
+
/**
|
|
13981
|
+
* Request to list storage events.
|
|
13982
|
+
*
|
|
13983
|
+
* @generated from message transcodely.v1.ListIngestEventsRequest
|
|
13984
|
+
*/
|
|
13985
|
+
declare class ListIngestEventsRequest extends Message<ListIngestEventsRequest> {
|
|
13986
|
+
/**
|
|
13987
|
+
* Only events for this rule. Omit for every rule in scope.
|
|
13988
|
+
*
|
|
13989
|
+
* @generated from field: optional string rule_id = 1;
|
|
13990
|
+
*/
|
|
13991
|
+
ruleId?: string;
|
|
13992
|
+
/**
|
|
13993
|
+
* Only events with this status.
|
|
13994
|
+
*
|
|
13995
|
+
* @generated from field: optional transcodely.v1.StorageEventStatus status = 2;
|
|
13996
|
+
*/
|
|
13997
|
+
status?: StorageEventStatus;
|
|
13998
|
+
/**
|
|
13999
|
+
* Pagination parameters.
|
|
14000
|
+
*
|
|
14001
|
+
* @generated from field: transcodely.v1.PaginationRequest pagination = 3;
|
|
14002
|
+
*/
|
|
14003
|
+
pagination?: PaginationRequest;
|
|
14004
|
+
/**
|
|
14005
|
+
* Optional app filter. API-key callers may omit it (their key's app is used)
|
|
14006
|
+
* or pass their own app; a different app is rejected with PermissionDenied.
|
|
14007
|
+
* Portal/JWT callers pass it to read a specific app in their org; omitted
|
|
14008
|
+
* returns events across all apps in the org.
|
|
14009
|
+
*
|
|
14010
|
+
* @generated from field: optional string app_id = 4;
|
|
14011
|
+
*/
|
|
14012
|
+
appId?: string;
|
|
14013
|
+
constructor(data?: PartialMessage<ListIngestEventsRequest>);
|
|
14014
|
+
static readonly runtime: typeof proto3;
|
|
14015
|
+
static readonly typeName = "transcodely.v1.ListIngestEventsRequest";
|
|
14016
|
+
static readonly fields: FieldList;
|
|
14017
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ListIngestEventsRequest;
|
|
14018
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ListIngestEventsRequest;
|
|
14019
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ListIngestEventsRequest;
|
|
14020
|
+
static equals(a: ListIngestEventsRequest | PlainMessage<ListIngestEventsRequest> | undefined, b: ListIngestEventsRequest | PlainMessage<ListIngestEventsRequest> | undefined): boolean;
|
|
14021
|
+
}
|
|
14022
|
+
/**
|
|
14023
|
+
* Response from listing storage events.
|
|
14024
|
+
*
|
|
14025
|
+
* @generated from message transcodely.v1.ListIngestEventsResponse
|
|
14026
|
+
*/
|
|
14027
|
+
declare class ListIngestEventsResponse extends Message<ListIngestEventsResponse> {
|
|
14028
|
+
/**
|
|
14029
|
+
* The events, newest first.
|
|
14030
|
+
*
|
|
14031
|
+
* @generated from field: repeated transcodely.v1.StorageEvent events = 1;
|
|
14032
|
+
*/
|
|
14033
|
+
events: StorageEvent[];
|
|
14034
|
+
/**
|
|
14035
|
+
* Pagination metadata.
|
|
14036
|
+
*
|
|
14037
|
+
* @generated from field: transcodely.v1.PaginationResponse pagination = 2;
|
|
14038
|
+
*/
|
|
14039
|
+
pagination?: PaginationResponse;
|
|
14040
|
+
constructor(data?: PartialMessage<ListIngestEventsResponse>);
|
|
14041
|
+
static readonly runtime: typeof proto3;
|
|
14042
|
+
static readonly typeName = "transcodely.v1.ListIngestEventsResponse";
|
|
14043
|
+
static readonly fields: FieldList;
|
|
14044
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ListIngestEventsResponse;
|
|
14045
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ListIngestEventsResponse;
|
|
14046
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ListIngestEventsResponse;
|
|
14047
|
+
static equals(a: ListIngestEventsResponse | PlainMessage<ListIngestEventsResponse> | undefined, b: ListIngestEventsResponse | PlainMessage<ListIngestEventsResponse> | undefined): boolean;
|
|
12649
14048
|
}
|
|
12650
14049
|
/**
|
|
12651
|
-
*
|
|
14050
|
+
* Request to dry-run an object against a rule.
|
|
12652
14051
|
*
|
|
12653
|
-
* @generated from message transcodely.v1.
|
|
14052
|
+
* @generated from message transcodely.v1.TestIngestRuleRequest
|
|
12654
14053
|
*/
|
|
12655
|
-
declare class
|
|
14054
|
+
declare class TestIngestRuleRequest extends Message<TestIngestRuleRequest> {
|
|
12656
14055
|
/**
|
|
12657
|
-
*
|
|
14056
|
+
* ID of the rule to test.
|
|
12658
14057
|
*
|
|
12659
|
-
* @generated from field: string
|
|
14058
|
+
* @generated from field: string id = 1;
|
|
12660
14059
|
*/
|
|
12661
|
-
|
|
14060
|
+
id: string;
|
|
12662
14061
|
/**
|
|
12663
|
-
*
|
|
14062
|
+
* Object key to test, e.g. "uploads/clip.mp4".
|
|
12664
14063
|
*
|
|
12665
|
-
* @generated from field:
|
|
14064
|
+
* @generated from field: string object_key = 2;
|
|
12666
14065
|
*/
|
|
12667
|
-
|
|
14066
|
+
objectKey: string;
|
|
12668
14067
|
/**
|
|
12669
|
-
*
|
|
14068
|
+
* Bucket the object would be in. Omit to use the rule's origin bucket, which
|
|
14069
|
+
* is what a real event will almost always carry.
|
|
12670
14070
|
*
|
|
12671
|
-
* @generated from field:
|
|
14071
|
+
* @generated from field: string bucket = 3;
|
|
12672
14072
|
*/
|
|
12673
|
-
|
|
12674
|
-
|
|
14073
|
+
bucket: string;
|
|
14074
|
+
/**
|
|
14075
|
+
* Object size in bytes, for testing the size filters.
|
|
14076
|
+
*
|
|
14077
|
+
* @generated from field: int64 size_bytes = 4;
|
|
14078
|
+
*/
|
|
14079
|
+
sizeBytes: bigint;
|
|
14080
|
+
/**
|
|
14081
|
+
* Content type, for testing the content-type filter.
|
|
14082
|
+
*
|
|
14083
|
+
* @generated from field: string content_type = 5;
|
|
14084
|
+
*/
|
|
14085
|
+
contentType: string;
|
|
14086
|
+
/**
|
|
14087
|
+
* Version identity the real event would carry — an S3/R2 eTag, a GCS
|
|
14088
|
+
* generation, a Supabase metadata eTag.
|
|
14089
|
+
*
|
|
14090
|
+
* It changes no filter decision, and it is here for one reason: the
|
|
14091
|
+
* idempotency key on the returned job request is derived from it, so a dry
|
|
14092
|
+
* run that omits it predicts a key no real delivery will ever use. Supply it
|
|
14093
|
+
* when you want the preview to name the key the job will actually carry.
|
|
14094
|
+
*
|
|
14095
|
+
* @generated from field: string etag = 6;
|
|
14096
|
+
*/
|
|
14097
|
+
etag: string;
|
|
14098
|
+
constructor(data?: PartialMessage<TestIngestRuleRequest>);
|
|
12675
14099
|
static readonly runtime: typeof proto3;
|
|
12676
|
-
static readonly typeName = "transcodely.v1.
|
|
14100
|
+
static readonly typeName = "transcodely.v1.TestIngestRuleRequest";
|
|
12677
14101
|
static readonly fields: FieldList;
|
|
12678
|
-
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>):
|
|
12679
|
-
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>):
|
|
12680
|
-
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>):
|
|
12681
|
-
static equals(a:
|
|
14102
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TestIngestRuleRequest;
|
|
14103
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TestIngestRuleRequest;
|
|
14104
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TestIngestRuleRequest;
|
|
14105
|
+
static equals(a: TestIngestRuleRequest | PlainMessage<TestIngestRuleRequest> | undefined, b: TestIngestRuleRequest | PlainMessage<TestIngestRuleRequest> | undefined): boolean;
|
|
14106
|
+
}
|
|
14107
|
+
/**
|
|
14108
|
+
* Request to replay a storage event.
|
|
14109
|
+
*
|
|
14110
|
+
* @generated from message transcodely.v1.ReplayIngestEventRequest
|
|
14111
|
+
*/
|
|
14112
|
+
declare class ReplayIngestEventRequest extends Message<ReplayIngestEventRequest> {
|
|
14113
|
+
/**
|
|
14114
|
+
* ID of the event to re-queue.
|
|
14115
|
+
*
|
|
14116
|
+
* @generated from field: string event_id = 1;
|
|
14117
|
+
*/
|
|
14118
|
+
eventId: string;
|
|
14119
|
+
constructor(data?: PartialMessage<ReplayIngestEventRequest>);
|
|
14120
|
+
static readonly runtime: typeof proto3;
|
|
14121
|
+
static readonly typeName = "transcodely.v1.ReplayIngestEventRequest";
|
|
14122
|
+
static readonly fields: FieldList;
|
|
14123
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ReplayIngestEventRequest;
|
|
14124
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ReplayIngestEventRequest;
|
|
14125
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ReplayIngestEventRequest;
|
|
14126
|
+
static equals(a: ReplayIngestEventRequest | PlainMessage<ReplayIngestEventRequest> | undefined, b: ReplayIngestEventRequest | PlainMessage<ReplayIngestEventRequest> | undefined): boolean;
|
|
14127
|
+
}
|
|
14128
|
+
/**
|
|
14129
|
+
* Response from a replay.
|
|
14130
|
+
*
|
|
14131
|
+
* @generated from message transcodely.v1.ReplayIngestEventResponse
|
|
14132
|
+
*/
|
|
14133
|
+
declare class ReplayIngestEventResponse extends Message<ReplayIngestEventResponse> {
|
|
14134
|
+
/**
|
|
14135
|
+
* The event, back in `received` and waiting to be processed.
|
|
14136
|
+
*
|
|
14137
|
+
* @generated from field: transcodely.v1.StorageEvent event = 1;
|
|
14138
|
+
*/
|
|
14139
|
+
event?: StorageEvent;
|
|
14140
|
+
constructor(data?: PartialMessage<ReplayIngestEventResponse>);
|
|
14141
|
+
static readonly runtime: typeof proto3;
|
|
14142
|
+
static readonly typeName = "transcodely.v1.ReplayIngestEventResponse";
|
|
14143
|
+
static readonly fields: FieldList;
|
|
14144
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ReplayIngestEventResponse;
|
|
14145
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ReplayIngestEventResponse;
|
|
14146
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ReplayIngestEventResponse;
|
|
14147
|
+
static equals(a: ReplayIngestEventResponse | PlainMessage<ReplayIngestEventResponse> | undefined, b: ReplayIngestEventResponse | PlainMessage<ReplayIngestEventResponse> | undefined): boolean;
|
|
14148
|
+
}
|
|
14149
|
+
/**
|
|
14150
|
+
* Response from a dry run.
|
|
14151
|
+
*
|
|
14152
|
+
* @generated from message transcodely.v1.TestIngestRuleResponse
|
|
14153
|
+
*/
|
|
14154
|
+
declare class TestIngestRuleResponse extends Message<TestIngestRuleResponse> {
|
|
14155
|
+
/**
|
|
14156
|
+
* Whether the object would produce a job.
|
|
14157
|
+
*
|
|
14158
|
+
* @generated from field: bool matched = 1;
|
|
14159
|
+
*/
|
|
14160
|
+
matched: boolean;
|
|
14161
|
+
/**
|
|
14162
|
+
* Why not, when it would not. Same slugs as StorageEvent.reason.
|
|
14163
|
+
*
|
|
14164
|
+
* @generated from field: string reason = 2;
|
|
14165
|
+
*/
|
|
14166
|
+
reason: string;
|
|
14167
|
+
/**
|
|
14168
|
+
* The job request this rule would submit for the object. Present only when
|
|
14169
|
+
* matched. Nothing was created — this is what WOULD be sent.
|
|
14170
|
+
*
|
|
14171
|
+
* @generated from field: transcodely.v1.CreateJobRequest job_request = 3;
|
|
14172
|
+
*/
|
|
14173
|
+
jobRequest?: CreateJobRequest;
|
|
14174
|
+
constructor(data?: PartialMessage<TestIngestRuleResponse>);
|
|
14175
|
+
static readonly runtime: typeof proto3;
|
|
14176
|
+
static readonly typeName = "transcodely.v1.TestIngestRuleResponse";
|
|
14177
|
+
static readonly fields: FieldList;
|
|
14178
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TestIngestRuleResponse;
|
|
14179
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TestIngestRuleResponse;
|
|
14180
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TestIngestRuleResponse;
|
|
14181
|
+
static equals(a: TestIngestRuleResponse | PlainMessage<TestIngestRuleResponse> | undefined, b: TestIngestRuleResponse | PlainMessage<TestIngestRuleResponse> | undefined): boolean;
|
|
12682
14182
|
}
|
|
12683
14183
|
|
|
12684
|
-
|
|
14184
|
+
/**
|
|
14185
|
+
* Ingest rules — standing instructions that turn an object landing in a watched
|
|
14186
|
+
* bucket into a job, with no server of yours in the path.
|
|
14187
|
+
*
|
|
14188
|
+
* A rule hangs off one readable storage origin. Your provider posts its
|
|
14189
|
+
* object-created events to the rule's `endpointUrl`, authenticated with the
|
|
14190
|
+
* rule's secret; a delivery that passes the filters becomes a job. Duplicate
|
|
14191
|
+
* deliveries are absorbed — an object is identified by (rule, bucket, key,
|
|
14192
|
+
* etag) and produces exactly one job.
|
|
14193
|
+
*
|
|
14194
|
+
* The inbound endpoint itself is not part of this SDK: your storage provider
|
|
14195
|
+
* calls it, not you.
|
|
14196
|
+
*/
|
|
14197
|
+
declare class IngestRules {
|
|
12685
14198
|
private readonly transport;
|
|
12686
14199
|
constructor(transport: Transport);
|
|
12687
|
-
|
|
14200
|
+
/**
|
|
14201
|
+
* Creates a rule on a readable origin. The full response is returned because
|
|
14202
|
+
* `secret` rides on it — the inbound secret is shown once, here, and cannot
|
|
14203
|
+
* be read back. Store it wherever the event sender will read it from.
|
|
14204
|
+
*/
|
|
14205
|
+
create(req: PartialMessage<CreateIngestRuleRequest>, opts?: CallOptions): Promise<CreateIngestRuleResponse>;
|
|
14206
|
+
/**
|
|
14207
|
+
* Fetches a rule by ID (`ing_*`). The secret is never returned again — the
|
|
14208
|
+
* rule carries only `secretPrefix` and `secretHint`.
|
|
14209
|
+
*/
|
|
14210
|
+
get(id: string, opts?: CallOptions): Promise<IngestRule>;
|
|
14211
|
+
/** Rules in scope, newest first. Narrow with `originId` or `enabled`. */
|
|
14212
|
+
list(req?: PartialMessage<ListIngestRulesRequest>, opts?: CallOptions): Page<IngestRule>;
|
|
14213
|
+
/**
|
|
14214
|
+
* Updates name, enabled state, filters or action, and optionally rotates the
|
|
14215
|
+
* secret. It MERGES: an update applies only what it carries, down to the
|
|
14216
|
+
* individual filters and the individual parts of the action. Narrowing a
|
|
14217
|
+
* rule to a new prefix is `{ filters: { prefix: "raw/" } }` and nothing
|
|
14218
|
+
* else — the suffix, content-type and size filters are untouched.
|
|
14219
|
+
*
|
|
14220
|
+
* Removing something rather than changing it takes the two clear flags.
|
|
14221
|
+
* `clearFilters` empties the filter set before `filters` is applied, so on
|
|
14222
|
+
* its own it widens the rule to everything in the bucket. `clearAction`
|
|
14223
|
+
* replaces the action outright, and `action` must then be complete — at
|
|
14224
|
+
* least one output and exactly one destination. That is the only way to drop
|
|
14225
|
+
* an action's thumbnails or metadata, since a repeated or map field sent
|
|
14226
|
+
* empty reads as "not sent".
|
|
14227
|
+
*
|
|
14228
|
+
* For the same reason `managed: false` does not turn managed storage off; it
|
|
14229
|
+
* leaves the destination alone. Send `outputOriginId` instead.
|
|
14230
|
+
*
|
|
14231
|
+
* The full response is returned: a rotation puts the new secret on it (once),
|
|
14232
|
+
* and switching a paused rule back on reports how many deliveries it declined
|
|
14233
|
+
* while off in `eventsSkippedWhileDisabled`. After a rotation the previous
|
|
14234
|
+
* secret keeps working for 24 hours.
|
|
14235
|
+
*/
|
|
14236
|
+
update(req: PartialMessage<UpdateIngestRuleRequest>, opts?: CallOptions): Promise<UpdateIngestRuleResponse>;
|
|
14237
|
+
/**
|
|
14238
|
+
* Deletes a rule; its endpoint stops accepting events immediately. The events
|
|
14239
|
+
* it already received are kept, and the rule as it stood is returned.
|
|
14240
|
+
*/
|
|
14241
|
+
delete(id: string, opts?: CallOptions): Promise<IngestRule>;
|
|
14242
|
+
/**
|
|
14243
|
+
* Every delivery received and what came of it, newest first. Omit `ruleId`
|
|
14244
|
+
* for all rules in scope; set `status` to read only the skipped or failed.
|
|
14245
|
+
*/
|
|
14246
|
+
listEvents(req?: PartialMessage<ListIngestEventsRequest>, opts?: CallOptions): Page<StorageEvent>;
|
|
14247
|
+
/**
|
|
14248
|
+
* Dry-runs an object key against a rule: whether the filters match and, when
|
|
14249
|
+
* they do, the exact job request the rule would submit. Nothing is stored and
|
|
14250
|
+
* no job is created.
|
|
14251
|
+
*
|
|
14252
|
+
* Supply `etag` when you want the preview to name the idempotency key a real
|
|
14253
|
+
* delivery would carry — the key is derived from it.
|
|
14254
|
+
*/
|
|
14255
|
+
test(req: PartialMessage<TestIngestRuleRequest>, opts?: CallOptions): Promise<TestIngestRuleResponse>;
|
|
14256
|
+
/**
|
|
14257
|
+
* Re-queues a skipped or refused event (`sev_*`), giving the object one more
|
|
14258
|
+
* pass through the rule.
|
|
14259
|
+
*
|
|
14260
|
+
* It exists because deduplication is permanent: re-sending the event, or
|
|
14261
|
+
* re-uploading the same bytes, is absorbed and produces nothing. The event is
|
|
14262
|
+
* reset rather than duplicated, so it keeps its id and its history.
|
|
14263
|
+
*/
|
|
14264
|
+
replayEvent(eventId: string, opts?: CallOptions): Promise<StorageEvent>;
|
|
12688
14265
|
}
|
|
12689
14266
|
|
|
12690
14267
|
declare class Jobs {
|
|
@@ -14505,6 +16082,225 @@ declare class Presets {
|
|
|
14505
16082
|
archive(id: string, opts?: CallOptions): Promise<Preset>;
|
|
14506
16083
|
}
|
|
14507
16084
|
|
|
16085
|
+
/**
|
|
16086
|
+
* Byte uploader for hosted videos.
|
|
16087
|
+
*
|
|
16088
|
+
* The API hands out presigned S3 URLs but never touches the bytes itself, so
|
|
16089
|
+
* pushing a file at it is three steps: open an upload, PUT the bytes, tell the
|
|
16090
|
+
* API the bytes landed. This module does all three, picking a single PUT for a
|
|
16091
|
+
* file that fits in one part and an S3 multipart upload for anything larger.
|
|
16092
|
+
*
|
|
16093
|
+
* Everything here is plain `fetch` + Web Streams. `node:fs` is imported
|
|
16094
|
+
* dynamically and only when the caller passes a filesystem path, so a bundler
|
|
16095
|
+
* targeting the browser never pulls it in.
|
|
16096
|
+
*/
|
|
16097
|
+
|
|
16098
|
+
/** Smallest part S3 accepts, except for the final part (5 MiB). */
|
|
16099
|
+
declare const MIN_PART_SIZE: number;
|
|
16100
|
+
/** Part size used when the caller doesn't pick one (25 MiB — the API default). */
|
|
16101
|
+
declare const DEFAULT_PART_SIZE: number;
|
|
16102
|
+
/** S3's hard ceiling on parts per multipart upload. */
|
|
16103
|
+
declare const MAX_PARTS = 10000;
|
|
16104
|
+
/** Platform upload ceiling enforced by the API (5 GB). */
|
|
16105
|
+
declare const MAX_UPLOAD_SIZE_BYTES = 5368709120;
|
|
16106
|
+
/** Parts uploaded at once when the caller doesn't pick a number. */
|
|
16107
|
+
declare const DEFAULT_CONCURRENCY = 4;
|
|
16108
|
+
/** Retries per part after the first attempt. */
|
|
16109
|
+
declare const DEFAULT_MAX_RETRIES = 4;
|
|
16110
|
+
/** First backoff step; doubles per retry, jittered, capped at 10 s. */
|
|
16111
|
+
declare const DEFAULT_RETRY_BASE_DELAY_MS = 500;
|
|
16112
|
+
/**
|
|
16113
|
+
* Anything {@link Uploads.putFile} can read bytes from.
|
|
16114
|
+
*
|
|
16115
|
+
* - `string` — a filesystem path. Size and filename come from the path itself.
|
|
16116
|
+
* - `Blob` / `File` — size comes from the blob; a `File` also supplies the name.
|
|
16117
|
+
* - `ReadableStream<Uint8Array>` — you must pass `sizeBytes` and `filename`,
|
|
16118
|
+
* because the API needs both before the first byte moves.
|
|
16119
|
+
*/
|
|
16120
|
+
type UploadSource = string | Blob | ReadableStream<Uint8Array>;
|
|
16121
|
+
/** Progress snapshot, reported once per completed part. */
|
|
16122
|
+
interface UploadProgress {
|
|
16123
|
+
uploadedBytes: number;
|
|
16124
|
+
totalBytes: number;
|
|
16125
|
+
partsCompleted: number;
|
|
16126
|
+
totalParts: number;
|
|
16127
|
+
/** 0–100, rounded. */
|
|
16128
|
+
percent: number;
|
|
16129
|
+
}
|
|
16130
|
+
interface PutFileOptions {
|
|
16131
|
+
/**
|
|
16132
|
+
* App the video is created under. Optional for an API-key client: omit it
|
|
16133
|
+
* and the key's own app is used. Pass it to be explicit, or when the client
|
|
16134
|
+
* authenticates as a portal user, where omitting it selects the
|
|
16135
|
+
* organization's first active app. An API key given a different app's ID is
|
|
16136
|
+
* refused with `permission_denied`.
|
|
16137
|
+
*
|
|
16138
|
+
* The app does not have to have managed hosting turned on first: the create
|
|
16139
|
+
* call provisions the bucket, the managed origin and the CDN pull zone on an
|
|
16140
|
+
* app that has never hosted anything, which is why a first upload can take a
|
|
16141
|
+
* few seconds longer than the ones after it. If that provisioning fails the
|
|
16142
|
+
* request is refused with `hosting_provisioning_failed` and nothing is
|
|
16143
|
+
* created, so the same call is safe to retry. A refusal on billing or
|
|
16144
|
+
* admission grounds carries its own code instead (`billing_past_due`,
|
|
16145
|
+
* `outstanding_balance_exceeded`, `limit_exceeded`, `intake_paused`, …).
|
|
16146
|
+
*/
|
|
16147
|
+
appId?: string;
|
|
16148
|
+
/** Required for a `Blob` or stream; inferred from the path or `File.name` otherwise. */
|
|
16149
|
+
filename?: string;
|
|
16150
|
+
/** Inferred from the extension (or `Blob.type`) when omitted. */
|
|
16151
|
+
contentType?: string;
|
|
16152
|
+
/** Required for a `ReadableStream`; ignored for a path or blob. */
|
|
16153
|
+
sizeBytes?: number;
|
|
16154
|
+
title?: string;
|
|
16155
|
+
description?: string;
|
|
16156
|
+
tags?: string[];
|
|
16157
|
+
/** "public", "unlisted" or "private". Omit to take the app's default. */
|
|
16158
|
+
visibility?: string;
|
|
16159
|
+
/** Preset ID or slug driving the auto-transcode. */
|
|
16160
|
+
preset?: string;
|
|
16161
|
+
hoverPreviews?: boolean;
|
|
16162
|
+
autoCaptions?: boolean;
|
|
16163
|
+
/** Bytes per part. Clamped up to 5 MiB, and raised further if 10,000 parts would not cover the file. */
|
|
16164
|
+
partSize?: number;
|
|
16165
|
+
/** Parts in flight at once. Default 4. */
|
|
16166
|
+
concurrency?: number;
|
|
16167
|
+
/** Retries per part after the first attempt. Default 4. */
|
|
16168
|
+
maxRetries?: number;
|
|
16169
|
+
/** First backoff step in ms. Default 500. */
|
|
16170
|
+
retryBaseDelayMs?: number;
|
|
16171
|
+
/** Called after each part lands. Progress is per part, not per byte. */
|
|
16172
|
+
onProgress?: (progress: UploadProgress) => void;
|
|
16173
|
+
/** Abort the upload. In-flight parts are canceled and the multipart upload is aborted server-side. */
|
|
16174
|
+
signal?: AbortSignal;
|
|
16175
|
+
}
|
|
16176
|
+
/**
|
|
16177
|
+
* Part size for a file: the requested size (or the default), never below the
|
|
16178
|
+
* 5 MiB S3 minimum, and raised as far as it takes to keep the part count
|
|
16179
|
+
* inside S3's 10,000-part ceiling.
|
|
16180
|
+
*/
|
|
16181
|
+
declare function calculatePartSize(fileSize: number, requestedPartSize?: number): number;
|
|
16182
|
+
/** Number of parts a file of `fileSize` splits into at `partSize`. */
|
|
16183
|
+
declare function calculateTotalParts(fileSize: number, partSize: number): number;
|
|
16184
|
+
/** Best-effort MIME type from a filename extension. */
|
|
16185
|
+
declare function contentTypeForFilename(filename: string): string;
|
|
16186
|
+
/** The subset of VideoService the uploader drives. Lets tests stand in a double. */
|
|
16187
|
+
interface UploadRpcClient {
|
|
16188
|
+
createUpload(req: {
|
|
16189
|
+
appId?: string;
|
|
16190
|
+
filename: string;
|
|
16191
|
+
contentType: string;
|
|
16192
|
+
sizeBytes: bigint;
|
|
16193
|
+
title?: string;
|
|
16194
|
+
description?: string;
|
|
16195
|
+
tags?: string[];
|
|
16196
|
+
visibility?: string;
|
|
16197
|
+
preset?: string;
|
|
16198
|
+
hoverPreviews?: boolean;
|
|
16199
|
+
autoCaptions?: boolean;
|
|
16200
|
+
}): Promise<{
|
|
16201
|
+
video?: Video;
|
|
16202
|
+
uploadUrl: string;
|
|
16203
|
+
}>;
|
|
16204
|
+
completeUpload(req: {
|
|
16205
|
+
id: string;
|
|
16206
|
+
}): Promise<{
|
|
16207
|
+
video?: Video;
|
|
16208
|
+
}>;
|
|
16209
|
+
createMultipartUpload(req: {
|
|
16210
|
+
appId?: string;
|
|
16211
|
+
filename: string;
|
|
16212
|
+
contentType: string;
|
|
16213
|
+
sizeBytes: bigint;
|
|
16214
|
+
totalParts: number;
|
|
16215
|
+
partSizeBytes: bigint;
|
|
16216
|
+
title?: string;
|
|
16217
|
+
description?: string;
|
|
16218
|
+
tags?: string[];
|
|
16219
|
+
visibility?: string;
|
|
16220
|
+
preset?: string;
|
|
16221
|
+
hoverPreviews?: boolean;
|
|
16222
|
+
autoCaptions?: boolean;
|
|
16223
|
+
}): Promise<{
|
|
16224
|
+
video?: Video;
|
|
16225
|
+
uploadId: string;
|
|
16226
|
+
parts: UploadPart[];
|
|
16227
|
+
}>;
|
|
16228
|
+
getUploadPartUrls(req: {
|
|
16229
|
+
id: string;
|
|
16230
|
+
uploadId: string;
|
|
16231
|
+
partNumbers: number[];
|
|
16232
|
+
}): Promise<{
|
|
16233
|
+
parts: UploadPart[];
|
|
16234
|
+
}>;
|
|
16235
|
+
completeMultipartUpload(req: {
|
|
16236
|
+
id: string;
|
|
16237
|
+
uploadId: string;
|
|
16238
|
+
parts: {
|
|
16239
|
+
partNumber: number;
|
|
16240
|
+
etag: string;
|
|
16241
|
+
}[];
|
|
16242
|
+
}): Promise<{
|
|
16243
|
+
video?: Video;
|
|
16244
|
+
}>;
|
|
16245
|
+
abortMultipartUpload(req: {
|
|
16246
|
+
id: string;
|
|
16247
|
+
uploadId: string;
|
|
16248
|
+
}): Promise<unknown>;
|
|
16249
|
+
}
|
|
16250
|
+
/**
|
|
16251
|
+
* The upload state machine, decoupled from the transport so it can be driven
|
|
16252
|
+
* by a double in tests. `client.uploads` is the wired-up subclass in
|
|
16253
|
+
* `resources/uploads.ts`.
|
|
16254
|
+
*
|
|
16255
|
+
* The API's own transcode fires as soon as the upload is marked complete, so
|
|
16256
|
+
* the returned `Video` is already in `processing` — watch it with
|
|
16257
|
+
* `client.videos.watch(video.id)`.
|
|
16258
|
+
*/
|
|
16259
|
+
declare class UploadEngine {
|
|
16260
|
+
private readonly rpc;
|
|
16261
|
+
private readonly fetchImpl;
|
|
16262
|
+
constructor(rpc: UploadRpcClient, fetchImpl: typeof fetch);
|
|
16263
|
+
/**
|
|
16264
|
+
* Upload a file and return the hosted video it created.
|
|
16265
|
+
*
|
|
16266
|
+
* A file that fits in one part goes up as a single PUT; anything larger uses
|
|
16267
|
+
* an S3 multipart upload with `concurrency` parts in flight, per-part retry
|
|
16268
|
+
* with jittered backoff, automatic re-signing when a presigned URL expires,
|
|
16269
|
+
* and a server-side abort if the upload can't finish.
|
|
16270
|
+
*
|
|
16271
|
+
* @example
|
|
16272
|
+
* ```ts
|
|
16273
|
+
* const video = await client.uploads.putFile("./talk.mp4", {
|
|
16274
|
+
* appId: "app_k1l2m3n4o5",
|
|
16275
|
+
* title: "Conference talk",
|
|
16276
|
+
* onProgress: (p) => process.stdout.write(`\r${String(p.percent)}%`),
|
|
16277
|
+
* });
|
|
16278
|
+
* ```
|
|
16279
|
+
*/
|
|
16280
|
+
putFile(source: UploadSource, opts: PutFileOptions): Promise<Video>;
|
|
16281
|
+
private run;
|
|
16282
|
+
private single;
|
|
16283
|
+
private multipart;
|
|
16284
|
+
/**
|
|
16285
|
+
* One part, with retry/backoff. `invalidate` is what makes a 403 retryable:
|
|
16286
|
+
* pass it on the multipart path, where the URL can be re-signed, and omit it
|
|
16287
|
+
* for the single PUT, where there is nothing new to try.
|
|
16288
|
+
*/
|
|
16289
|
+
private attempt;
|
|
16290
|
+
}
|
|
16291
|
+
|
|
16292
|
+
/**
|
|
16293
|
+
* `client.uploads` — the byte-pushing half of hosted video creation.
|
|
16294
|
+
*
|
|
16295
|
+
* The API only ever hands out presigned URLs; the bytes travel straight from
|
|
16296
|
+
* the caller to object storage. This namespace wires {@link UploadEngine} to
|
|
16297
|
+
* the SDK transport so `putFile` is one call.
|
|
16298
|
+
*/
|
|
16299
|
+
|
|
16300
|
+
declare class Uploads extends UploadEngine {
|
|
16301
|
+
constructor(transport: Transport);
|
|
16302
|
+
}
|
|
16303
|
+
|
|
14508
16304
|
/**
|
|
14509
16305
|
* User account status.
|
|
14510
16306
|
*
|
|
@@ -15066,8 +16862,10 @@ declare class Transcodely {
|
|
|
15066
16862
|
private readonly transport;
|
|
15067
16863
|
private _jobs;
|
|
15068
16864
|
private _videos;
|
|
16865
|
+
private _uploads;
|
|
15069
16866
|
private _presets;
|
|
15070
16867
|
private _origins;
|
|
16868
|
+
private _ingestRules;
|
|
15071
16869
|
private _apps;
|
|
15072
16870
|
private _apiKeys;
|
|
15073
16871
|
private _organizations;
|
|
@@ -15082,8 +16880,19 @@ declare class Transcodely {
|
|
|
15082
16880
|
get lastRequestId(): string | undefined;
|
|
15083
16881
|
get jobs(): Jobs;
|
|
15084
16882
|
get videos(): Videos;
|
|
16883
|
+
/**
|
|
16884
|
+
* Byte uploads for hosted videos. `client.uploads.putFile(path, { appId })`
|
|
16885
|
+
* runs the whole create → PUT → complete dance, picking a single PUT or an
|
|
16886
|
+
* S3 multipart upload by file size.
|
|
16887
|
+
*/
|
|
16888
|
+
get uploads(): Uploads;
|
|
15085
16889
|
get presets(): Presets;
|
|
15086
16890
|
get origins(): Origins;
|
|
16891
|
+
/**
|
|
16892
|
+
* Ingest rules: watch a bucket, transcode what lands in it. See
|
|
16893
|
+
* {@link IngestRules}.
|
|
16894
|
+
*/
|
|
16895
|
+
get ingestRules(): IngestRules;
|
|
15087
16896
|
get apps(): Apps;
|
|
15088
16897
|
get apiKeys(): ApiKeys;
|
|
15089
16898
|
get organizations(): Organizations;
|
|
@@ -15106,8 +16915,29 @@ declare class Transcodely {
|
|
|
15106
16915
|
get webhooks(): typeof Webhooks;
|
|
15107
16916
|
}
|
|
15108
16917
|
|
|
16918
|
+
/**
|
|
16919
|
+
* JSON serialization for the Transcodely wire format. Wraps protojson
|
|
16920
|
+
* (`MessageType.toJson` / `fromJson`) with snake_case field names + lowercase
|
|
16921
|
+
* simplified enum values, mirroring `internal/connect/codec.go` on the server.
|
|
16922
|
+
*/
|
|
16923
|
+
|
|
16924
|
+
interface SerializeOptions {
|
|
16925
|
+
/** Always emit unpopulated fields (matches server's EmitUnpopulated). */
|
|
16926
|
+
emitDefaultValues?: boolean;
|
|
16927
|
+
}
|
|
16928
|
+
/**
|
|
16929
|
+
* Render a generated message as a plain JSON value in the Transcodely wire
|
|
16930
|
+
* format — snake_case field names, simplified lowercase enums, exactly what
|
|
16931
|
+
* the REST/Connect API returns. Useful for logging and for tools that print
|
|
16932
|
+
* API entities (the `transcodely` CLI's `--json` mode uses it).
|
|
16933
|
+
*
|
|
16934
|
+
* Unlike {@link serialize} it takes no MessageType: the message carries its
|
|
16935
|
+
* own descriptor.
|
|
16936
|
+
*/
|
|
16937
|
+
declare function toWireJson<T extends Message<T>>(msg: T, opts?: SerializeOptions): JsonValue;
|
|
16938
|
+
|
|
15109
16939
|
/** SDK version. Bumped by release-please from package.json on each tag. */
|
|
15110
|
-
declare const SDK_VERSION = "0.3.
|
|
16940
|
+
declare const SDK_VERSION = "0.3.8";
|
|
15111
16941
|
/**
|
|
15112
16942
|
* API version this SDK release is pinned to. Sent on every request as
|
|
15113
16943
|
* `Transcodely-Version`. Customers can override per-client via the
|
|
@@ -15117,4 +16947,121 @@ declare const API_VERSION = "2026-05-03";
|
|
|
15117
16947
|
/** Default base URL for the production Transcodely API. */
|
|
15118
16948
|
declare const DEFAULT_BASE_URL = "https://api.transcodely.com";
|
|
15119
16949
|
|
|
15120
|
-
|
|
16950
|
+
/**
|
|
16951
|
+
* Health status.
|
|
16952
|
+
*
|
|
16953
|
+
* @generated from enum transcodely.v1.HealthStatus
|
|
16954
|
+
*/
|
|
16955
|
+
declare enum HealthStatus {
|
|
16956
|
+
/**
|
|
16957
|
+
* @generated from enum value: HEALTH_STATUS_UNSPECIFIED = 0;
|
|
16958
|
+
*/
|
|
16959
|
+
UNSPECIFIED = 0,
|
|
16960
|
+
/**
|
|
16961
|
+
* Service is healthy and operational.
|
|
16962
|
+
*
|
|
16963
|
+
* @generated from enum value: HEALTH_STATUS_HEALTHY = 1;
|
|
16964
|
+
*/
|
|
16965
|
+
HEALTHY = 1,
|
|
16966
|
+
/**
|
|
16967
|
+
* Service is degraded but operational.
|
|
16968
|
+
*
|
|
16969
|
+
* @generated from enum value: HEALTH_STATUS_DEGRADED = 2;
|
|
16970
|
+
*/
|
|
16971
|
+
DEGRADED = 2,
|
|
16972
|
+
/**
|
|
16973
|
+
* Service is unhealthy and not operational.
|
|
16974
|
+
*
|
|
16975
|
+
* @generated from enum value: HEALTH_STATUS_UNHEALTHY = 3;
|
|
16976
|
+
*/
|
|
16977
|
+
UNHEALTHY = 3
|
|
16978
|
+
}
|
|
16979
|
+
/**
|
|
16980
|
+
* Request for health check.
|
|
16981
|
+
*
|
|
16982
|
+
* @generated from message transcodely.v1.HealthCheckRequest
|
|
16983
|
+
*/
|
|
16984
|
+
declare class HealthCheckRequest extends Message<HealthCheckRequest> {
|
|
16985
|
+
/**
|
|
16986
|
+
* Optional: specific service to check (empty = all).
|
|
16987
|
+
*
|
|
16988
|
+
* @generated from field: optional string service = 1;
|
|
16989
|
+
*/
|
|
16990
|
+
service?: string;
|
|
16991
|
+
constructor(data?: PartialMessage<HealthCheckRequest>);
|
|
16992
|
+
static readonly runtime: typeof proto3;
|
|
16993
|
+
static readonly typeName = "transcodely.v1.HealthCheckRequest";
|
|
16994
|
+
static readonly fields: FieldList;
|
|
16995
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): HealthCheckRequest;
|
|
16996
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): HealthCheckRequest;
|
|
16997
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): HealthCheckRequest;
|
|
16998
|
+
static equals(a: HealthCheckRequest | PlainMessage<HealthCheckRequest> | undefined, b: HealthCheckRequest | PlainMessage<HealthCheckRequest> | undefined): boolean;
|
|
16999
|
+
}
|
|
17000
|
+
/**
|
|
17001
|
+
* Response from health check.
|
|
17002
|
+
*
|
|
17003
|
+
* @generated from message transcodely.v1.HealthCheckResponse
|
|
17004
|
+
*/
|
|
17005
|
+
declare class HealthCheckResponse extends Message<HealthCheckResponse> {
|
|
17006
|
+
/**
|
|
17007
|
+
* Overall service status.
|
|
17008
|
+
*
|
|
17009
|
+
* @generated from field: transcodely.v1.HealthStatus status = 1;
|
|
17010
|
+
*/
|
|
17011
|
+
status: HealthStatus;
|
|
17012
|
+
/**
|
|
17013
|
+
* Service version.
|
|
17014
|
+
*
|
|
17015
|
+
* @generated from field: string version = 2;
|
|
17016
|
+
*/
|
|
17017
|
+
version: string;
|
|
17018
|
+
/**
|
|
17019
|
+
* Individual component statuses.
|
|
17020
|
+
*
|
|
17021
|
+
* @generated from field: repeated transcodely.v1.ComponentHealth components = 3;
|
|
17022
|
+
*/
|
|
17023
|
+
components: ComponentHealth[];
|
|
17024
|
+
constructor(data?: PartialMessage<HealthCheckResponse>);
|
|
17025
|
+
static readonly runtime: typeof proto3;
|
|
17026
|
+
static readonly typeName = "transcodely.v1.HealthCheckResponse";
|
|
17027
|
+
static readonly fields: FieldList;
|
|
17028
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): HealthCheckResponse;
|
|
17029
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): HealthCheckResponse;
|
|
17030
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): HealthCheckResponse;
|
|
17031
|
+
static equals(a: HealthCheckResponse | PlainMessage<HealthCheckResponse> | undefined, b: HealthCheckResponse | PlainMessage<HealthCheckResponse> | undefined): boolean;
|
|
17032
|
+
}
|
|
17033
|
+
/**
|
|
17034
|
+
* Health status of an individual component.
|
|
17035
|
+
*
|
|
17036
|
+
* @generated from message transcodely.v1.ComponentHealth
|
|
17037
|
+
*/
|
|
17038
|
+
declare class ComponentHealth extends Message<ComponentHealth> {
|
|
17039
|
+
/**
|
|
17040
|
+
* Component name (e.g., "database", "storage", "queue").
|
|
17041
|
+
*
|
|
17042
|
+
* @generated from field: string name = 1;
|
|
17043
|
+
*/
|
|
17044
|
+
name: string;
|
|
17045
|
+
/**
|
|
17046
|
+
* Component status.
|
|
17047
|
+
*
|
|
17048
|
+
* @generated from field: transcodely.v1.HealthStatus status = 2;
|
|
17049
|
+
*/
|
|
17050
|
+
status: HealthStatus;
|
|
17051
|
+
/**
|
|
17052
|
+
* Optional message with additional details.
|
|
17053
|
+
*
|
|
17054
|
+
* @generated from field: optional string message = 3;
|
|
17055
|
+
*/
|
|
17056
|
+
message?: string;
|
|
17057
|
+
constructor(data?: PartialMessage<ComponentHealth>);
|
|
17058
|
+
static readonly runtime: typeof proto3;
|
|
17059
|
+
static readonly typeName = "transcodely.v1.ComponentHealth";
|
|
17060
|
+
static readonly fields: FieldList;
|
|
17061
|
+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ComponentHealth;
|
|
17062
|
+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ComponentHealth;
|
|
17063
|
+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ComponentHealth;
|
|
17064
|
+
static equals(a: ComponentHealth | PlainMessage<ComponentHealth> | undefined, b: ComponentHealth | PlainMessage<ComponentHealth> | undefined): boolean;
|
|
17065
|
+
}
|
|
17066
|
+
|
|
17067
|
+
export { APIConnectionError, APIError, Event as APIEvent, APIKey, API_VERSION, AV1Options, AbortMultipartUploadRequest, App, AppStatus, ArchiveAppRequest, ArchiveOriginRequest, ArchivePresetRequest, AudioCodec, AudioSettings, AudioStreamInfo, AudioTrackConfig, AuthenticationError, AutoABRConfig, AutoProfileDefaults, BYOKConfig, BillingPaymentMethod, BillingPortalSession, BillingProfile, BillingStanding, BillingTreatment, BitrateMode, Budget, BurnInStyle, type CallOptions, CancelJobRequest, CancelJobResponse, CaptionStyle, ChapterPoint, ChapterResult, CheckSlugRequest, CheckSlugResponse, ClipConfig, CompleteMultipartUploadRequest, CompleteMultipartUploadResponse, CompleteUploadRequest, CompleteUploadResponse, CompletedPart, ComponentHealth, ConfirmJobRequest, ConfirmJobResponse, ConflictError, Container, ContentAnalysis, ContentAwareConfig, ContentAwareMode, ContentType, CreateAPIKeyRequest, CreateAPIKeyResponse, CreateAppRequest, CreateAppResponse, CreateBillingPortalSessionRequest, CreateBillingPortalSessionResponse, CreateFromUrlRequest, CreateFromUrlResponse, CreateIngestRuleRequest, CreateIngestRuleResponse, CreateJobRequest, CreateJobResponse, CreateMultipartUploadRequest, CreateMultipartUploadResponse, CreateOrganizationRequest, CreateOrganizationResponse, CreateOriginRequest, CreateOriginResponse, CreatePresetRequest, CreatePresetResponse, CreateUploadRequest, CreateUploadResponse, CreateWebhookEndpointRequest, CreateWebhookEndpointResponse, DASHConfig, DEFAULT_BASE_URL, DEFAULT_CONCURRENCY, DEFAULT_MAX_RETRIES, DEFAULT_PART_SIZE, DEFAULT_RETRY_BASE_DELAY_MS, DEFAULT_TOLERANCE_SECONDS, DRMConfig, DRMSystem, DailyUsage, DeleteIngestRuleRequest, DeleteIngestRuleResponse, DeleteVideoRequest, DeleteWebhookEndpointRequest, DeleteWebhookEndpointResponse, DeliveryFormat, DunningStage, DuplicatePresetRequest, DuplicatePresetResponse, EVENT_ID_HEADER, EnableHostingRequest, EnableHostingResponse, EncryptionScheme, EndpointHealthSummary, ErrorDetails, type EventBase, ExecutionTiming, ExposureThresholdSource, type FieldViolation, GOPAlignmentMode, GcsCredentials, GcsOriginConfig, GetAPIKeyRequest, GetAPIKeyResponse, GetAppRequest, GetAppResponse, GetBillingProfileRequest, GetBillingProfileResponse, GetBudgetRequest, GetBudgetResponse, GetEndpointHealthRequest, GetEndpointHealthResponse, GetIngestRuleRequest, GetIngestRuleResponse, GetInvoiceRequest, GetInvoiceResponse, GetJobRequest, GetJobResponse, GetMeRequest, GetMeResponse, GetMembershipRequest, GetMembershipResponse, GetOrganizationRequest, GetOrganizationResponse, GetOriginRequest, GetOriginResponse, GetOutstandingBalanceRequest, GetOutstandingBalanceResponse, GetPresetBySlugRequest, GetPresetBySlugResponse, GetPresetRequest, GetPresetResponse, GetSpendRequest, GetSpendResponse, GetStatsRequest, GetStatsResponse, GetUpcomingInvoiceRequest, GetUpcomingInvoiceResponse, GetUploadPartUrlsRequest, GetUploadPartUrlsResponse, GetUsageRequest, GetUsageResponse, GetUserRequest, GetUserResponse, GetVideoRequest, GetVideoResponse, H264Options, H265Options, HDRConfig, HDRFormat, HDRMode, HLSConfig, HLSPlaylistType, HLSSegmentFormat, HealthBucket, HealthCheckRequest, HealthCheckResponse, HealthStatus, HostingConfig, HttpCredentials, HttpOriginConfig, IngestRule, IngestRuleAction, IngestRuleFilters, InputMetadata, InvalidRequestError, Invoice, InvoiceLineItem, InvoiceLineType, InvoiceStatus, Job, JobCostBreakdown, JobCostLine, JobCostLineType, JobFee, JobOutput, JobPriority, JobStatus, KeyServerConfig, type KnownWebhookEvent, ListAPIKeysRequest, ListAPIKeysResponse, ListAppsRequest, ListAppsResponse, ListEventsRequest, ListEventsResponse, ListIngestEventsRequest, ListIngestEventsResponse, ListIngestRulesRequest, ListIngestRulesResponse, ListInvoicesRequest, ListInvoicesResponse, ListJobsRequest, ListJobsResponse, ListMembershipsRequest, ListMembershipsResponse, ListOrganizationsRequest, ListOrganizationsResponse, ListOriginsRequest, ListOriginsResponse, ListPresetsRequest, ListPresetsResponse, ListTopVideosRequest, ListTopVideosResponse, ListUsersRequest, ListUsersResponse, ListVideosRequest, ListVideosResponse, ListWebhookDeliveriesRequest, ListWebhookDeliveriesResponse, ListWebhookEndpointsRequest, ListWebhookEndpointsResponse, type LogEvent, MAX_PARTS, MAX_UPLOAD_SIZE_BYTES, MIN_PART_SIZE, Membership, MembershipRole, MembershipStatus, MembershipWithUser, NotFoundError, Organization, OrganizationStatus, Origin, OriginPermission, OriginProvider, OriginRef, OriginStatus, OutputFormat, OutputReport, OutputReportAudio, OutputReportColor, OutputReportContentAware, OutputReportMismatch, OutputReportVerdict, OutputReportVideo, OutputSpec, OutputStatus, OutputVariantResult, OutstandingBalance, Page, PaginationRequest, PaginationResponse, PaymentMethodState, PermissionError, PlayerConfig, PreconditionError, Preset, PresetVariant, PricingSnapshot, type PutFileOptions, QualityTier, R2Jurisdiction, R2OriginConfig, RateLimitError, RemoveMembershipRequest, ReplayIngestEventRequest, ReplayIngestEventResponse, ResendEventRequest, ResendEventResponse, Resolution, RetrieveEventRequest, RetrieveEventResponse, RetrieveWebhookEndpointRequest, RetrieveWebhookEndpointResponse, RevokeAPIKeyRequest, RotateWebhookSecretRequest, RotateWebhookSecretResponse, S3Credentials, S3OriginConfig, SDK_VERSION, SIGNATURE_HEADER, SegmentConfig, SendTestWebhookRequest, SendTestWebhookResponse, SettleOutstandingBalanceRequest, SettleOutstandingBalanceResponse, Settlement, type SpendLimitNotification, StorageEvent, StorageEventSource, StorageEventStatus, StreamingConfig, SubtitleFormat, SubtitleOperation, SubtitleResult, SubtitleStreamInfo, SubtitleTrack, TestIngestRuleRequest, TestIngestRuleResponse, ThumbnailFormat, ThumbnailMode, ThumbnailResult, ThumbnailSpec, ToneMapping, TopVideo, Transcodely, type TranscodelyConfig, TranscodelyError, TrustTier, type UnknownWebhookEvent, UpdateAppRequest, UpdateAppResponse, UpdateBudgetRequest, UpdateBudgetResponse, UpdateHostingConfigRequest, UpdateHostingConfigResponse, UpdateIngestRuleRequest, UpdateIngestRuleResponse, UpdateMeRequest, UpdateMeResponse, UpdateMembershipRoleRequest, UpdateMembershipRoleResponse, UpdateOrganizationRequest, UpdateOrganizationResponse, UpdateOriginRequest, UpdateOriginResponse, UpdatePlayerConfigRequest, UpdatePlayerConfigResponse, UpdatePresetRequest, UpdatePresetResponse, UpdateSpendLimitRequest, UpdateSpendLimitResponse, UpdateVideoRequest, UpdateVideoResponse, UpdateWebhookEndpointRequest, UpdateWebhookEndpointResponse, UploadAbortedError, UploadError, UploadPart, type UploadProgress, type UploadSource, Uploads, UsageSummary, User, UserApprovalStatus, UserOrganization, UserStatus, UserWithOrganizations, VP9Options, ValidateOriginRequest, ValidateOriginResponse, ValidationResult, VariantPricingSnapshot, type VerifyOptions, Video, VideoCodec, VideoRendition, VideoSettings, VideoStatsDay, VideoStatsTotals, VideoStatus, VideoStreamInfo, VideoTextTrack, VideoVariant, VideoVisibility, WEBHOOK_EVENT_TYPES, WatchEventType, WatchJobRequest, WatchJobResponse, WatchVideoRequest, WatchVideoResponse, WatermarkAnchor, WatermarkConfig, WatermarkPixelPlacement, WebhookDelivery, WebhookEndpoint, WebhookError, type WebhookEvent, type WebhookEventType, WebhookPayloadError, WebhookSignatureError, WebhookTimestampError, Webhooks, calculatePartSize, calculateTotalParts, constructEvent, contentTypeForFilename, isEventType, isKnownEvent, toWireJson, verifySignature };
|