@transcodely/sdk 0.3.12 → 0.3.13

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/dist/index.d.cts CHANGED
@@ -3550,6 +3550,7 @@ declare class WebhookEndpoint extends Message<WebhookEndpoint> {
3550
3550
  * "job.insights.failed", "output.created", "output.ready",
3551
3551
  * "output.failed", "output.progress", "video.uploaded", "video.ready",
3552
3552
  * "video.failed", "video.deleted", "video.source_scheduled_for_deletion",
3553
+ * "video.insights.ready", "video.insights.failed",
3553
3554
  * "app.created", "app.updated", "app.spend_limit_warning",
3554
3555
  * "app.spend_limit_exceeded", or "*".
3555
3556
  * Keep in sync with domain.WebhookEventTypes() ("job.updated" does not exist).
@@ -5786,6 +5787,31 @@ declare enum TranscriptFormat {
5786
5787
  */
5787
5788
  MD = 3
5788
5789
  }
5790
+ /**
5791
+ * Where an insights entry came from.
5792
+ *
5793
+ * @generated from enum transcodely.v1.InsightsSource
5794
+ */
5795
+ declare enum InsightsSource {
5796
+ /**
5797
+ * @generated from enum value: INSIGHTS_SOURCE_UNSPECIFIED = 0;
5798
+ */
5799
+ UNSPECIFIED = 0,
5800
+ /**
5801
+ * Requested on a captions job (SubtitleTrack.insights or the auto_insights
5802
+ * upload flag). Its fees are on the job (Job.fees).
5803
+ *
5804
+ * @generated from enum value: INSIGHTS_SOURCE_JOB = 1;
5805
+ */
5806
+ JOB = 1,
5807
+ /**
5808
+ * Requested on a hosted video's existing captions
5809
+ * (VideoService.GenerateInsights). Its price is fee_eur.
5810
+ *
5811
+ * @generated from enum value: INSIGHTS_SOURCE_VIDEO = 2;
5812
+ */
5813
+ VIDEO = 2
5814
+ }
5789
5815
  /**
5790
5816
  * Processing state of a transcript's insights.
5791
5817
  *
@@ -6408,20 +6434,23 @@ declare class InsightsHighlight extends Message<InsightsHighlight> {
6408
6434
  }
6409
6435
  /**
6410
6436
  * AI insights produced from one generated transcript (read-only). Requested
6411
- * with SubtitleTrack.insights; one per generate track that requested them.
6437
+ * with SubtitleTrack.insights (one per generate track that requested them),
6438
+ * or on a hosted video's existing captions with VideoService.GenerateInsights.
6412
6439
  *
6413
6440
  * The sections are written in the transcript's language (unless your hint
6414
6441
  * asks otherwise) and are present only once status is "ready". Every timing
6415
6442
  * refers to the transcript, and every highlight is a verbatim quote from it.
6416
6443
  *
6417
6444
  * The artifact files (insights.json, insights.md and chapters.vtt) are
6418
- * written next to the caption file in the job's output destination.
6445
+ * written next to the caption file: in the job's output destination, or in
6446
+ * the video's managed storage for source "video".
6419
6447
  *
6420
6448
  * @generated from message transcodely.v1.TranscriptInsights
6421
6449
  */
6422
6450
  declare class TranscriptInsights extends Message<TranscriptInsights> {
6423
6451
  /**
6424
- * The out_… output the generate track was configured on.
6452
+ * The out_… output the generate track was configured on. Empty for source
6453
+ * "video".
6425
6454
  *
6426
6455
  * @generated from field: string output_id = 1;
6427
6456
  */
@@ -6566,6 +6595,38 @@ declare class TranscriptInsights extends Message<TranscriptInsights> {
6566
6595
  * @generated from field: string hint = 23;
6567
6596
  */
6568
6597
  hint: string;
6598
+ /**
6599
+ * Unique identifier of this insights entry (ins_…).
6600
+ *
6601
+ * @generated from field: string id = 24;
6602
+ */
6603
+ id: string;
6604
+ /**
6605
+ * job | video: requested on a captions job, or on a hosted video's existing
6606
+ * captions with VideoService.GenerateInsights.
6607
+ *
6608
+ * @generated from field: transcodely.v1.InsightsSource source = 25;
6609
+ */
6610
+ source: InsightsSource;
6611
+ /**
6612
+ * The hosted video (vid_…) the insights belong to, for source "video".
6613
+ * Empty for source "job" (see Video.insights for a hosted video's
6614
+ * job-sourced insights).
6615
+ *
6616
+ * @generated from field: string video_id = 26;
6617
+ */
6618
+ videoId: string;
6619
+ /**
6620
+ * Price of this entry in EUR, for source "video": EUR 0.02 per video plus
6621
+ * EUR 0.005 per minute of source, fixed when the entry was created. Charged
6622
+ * only when status becomes "ready"; nothing is charged when it fails. An
6623
+ * entry that becomes "ready" after a newer entry for the same language was
6624
+ * already shown on the video is not charged either, and shows 0.
6625
+ * Absent for source "job", whose insights fees are listed on Job.fees.
6626
+ *
6627
+ * @generated from field: optional double fee_eur = 27;
6628
+ */
6629
+ feeEur?: number;
6569
6630
  constructor(data?: PartialMessage<TranscriptInsights>);
6570
6631
  static readonly runtime: typeof proto3;
6571
6632
  static readonly typeName = "transcodely.v1.TranscriptInsights";
@@ -11299,7 +11360,8 @@ declare class CreateJobRequest extends Message<CreateJobRequest> {
11299
11360
  * Optional target app. API-key callers may omit it (their key's app is used)
11300
11361
  * or pass their own app; a different app is rejected with PermissionDenied.
11301
11362
  * Portal/JWT callers pass it to create in a specific app in their org;
11302
- * omitted selects the org's first active app.
11363
+ * omitted selects the org's first active app, or, when input_video_id
11364
+ * names a video in the org, that video's app.
11303
11365
  *
11304
11366
  * @generated from field: optional string app_id = 21;
11305
11367
  */
@@ -11865,9 +11927,14 @@ declare class Video extends Message<Video> {
11865
11927
  textTracks: VideoTextTrack[];
11866
11928
  /**
11867
11929
  * AI insights for this video, one per transcript language, from the
11868
- * captions job that requested them (SubtitleTrack.insights). Each moves
11869
- * from "pending" to "ready" or "failed". Signed URLs are computed per
11870
- * request under the same rules as text track URLs and are never stored.
11930
+ * captions job that requested them (SubtitleTrack.insights) or from
11931
+ * GenerateInsights. Each moves from "pending" to "ready" or "failed". A
11932
+ * GenerateInsights entry still pending for a language that already has
11933
+ * ready insights is listed first, ahead of the ready entry it will replace.
11934
+ * If that entry fails, the ready insights stay and the failed entry is no
11935
+ * longer listed; video.insights.failed reports it.
11936
+ * Signed URLs are computed per request under the same rules as text track
11937
+ * URLs and are never stored.
11871
11938
  *
11872
11939
  * @generated from field: repeated transcodely.v1.TranscriptInsights insights = 53;
11873
11940
  */
@@ -11910,12 +11977,13 @@ declare class Video extends Message<Video> {
11910
11977
  /**
11911
11978
  * Everything this video has cost, in EUR: the sum of the settled totals of
11912
11979
  * every job billed for it — the transcode that produced it plus any later
11913
- * job that took it as input (retro captions, for example).
11980
+ * job that took it as input (retro captions, for example) — plus the fee of
11981
+ * every ready GenerateInsights entry (TranscriptInsights.fee_eur).
11914
11982
  *
11915
11983
  * This is the authoritative per-video figure and the one to display. It is
11916
- * built from the same job totals the billing ledger is written from, so it
11984
+ * built from the same amounts the billing ledger is written from, so it
11917
11985
  * reconciles with the invoice; captions_cost is a breakdown inside it.
11918
- * Absent while no linked job has settled yet.
11986
+ * Absent while nothing linked to the video has been billed yet.
11919
11987
  *
11920
11988
  * @generated from field: optional double total_cost = 52;
11921
11989
  */
@@ -13668,6 +13736,75 @@ declare class GetSeoMarkupResponse extends Message<GetSeoMarkupResponse> {
13668
13736
  static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GetSeoMarkupResponse;
13669
13737
  static equals(a: GetSeoMarkupResponse | PlainMessage<GetSeoMarkupResponse> | undefined, b: GetSeoMarkupResponse | PlainMessage<GetSeoMarkupResponse> | undefined): boolean;
13670
13738
  }
13739
+ /**
13740
+ * Request to generate AI insights from a hosted video's existing captions.
13741
+ *
13742
+ * @generated from message transcodely.v1.GenerateInsightsRequest
13743
+ */
13744
+ declare class GenerateInsightsRequest extends Message<GenerateInsightsRequest> {
13745
+ /**
13746
+ * Video ID.
13747
+ *
13748
+ * @generated from field: string id = 1;
13749
+ */
13750
+ id: string;
13751
+ /**
13752
+ * ISO 639-2 language of the AI caption track to use (e.g. "eng"). Optional
13753
+ * when the video has exactly one AI caption track; required when it has
13754
+ * several (refused with code parameter_required, listing the available
13755
+ * languages).
13756
+ *
13757
+ * @generated from field: optional string language = 2;
13758
+ */
13759
+ language?: string;
13760
+ /**
13761
+ * Optional free-text guidance about the content, its audience or the tone
13762
+ * you want, at most 300 characters. Same meaning as InsightsOptions.hint.
13763
+ *
13764
+ * @generated from field: optional string hint = 3;
13765
+ */
13766
+ hint?: string;
13767
+ /**
13768
+ * Optional app the video belongs to. API-key callers may omit it (their
13769
+ * key's app is used) or pass their own app; a different app is rejected
13770
+ * with PermissionDenied. Portal/JWT callers may pass it; omitted, the app
13771
+ * is resolved from the video.
13772
+ *
13773
+ * @generated from field: optional string app_id = 4;
13774
+ */
13775
+ appId?: string;
13776
+ constructor(data?: PartialMessage<GenerateInsightsRequest>);
13777
+ static readonly runtime: typeof proto3;
13778
+ static readonly typeName = "transcodely.v1.GenerateInsightsRequest";
13779
+ static readonly fields: FieldList;
13780
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GenerateInsightsRequest;
13781
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GenerateInsightsRequest;
13782
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GenerateInsightsRequest;
13783
+ static equals(a: GenerateInsightsRequest | PlainMessage<GenerateInsightsRequest> | undefined, b: GenerateInsightsRequest | PlainMessage<GenerateInsightsRequest> | undefined): boolean;
13784
+ }
13785
+ /**
13786
+ * Response from GenerateInsights.
13787
+ *
13788
+ * @generated from message transcodely.v1.GenerateInsightsResponse
13789
+ */
13790
+ declare class GenerateInsightsResponse extends Message<GenerateInsightsResponse> {
13791
+ /**
13792
+ * The insights entry: newly created, or the one already pending for this
13793
+ * video and language. Status is "pending"; poll VideoService.Get (or
13794
+ * Watch) or subscribe to video.insights.ready / video.insights.failed.
13795
+ *
13796
+ * @generated from field: transcodely.v1.TranscriptInsights insights = 1;
13797
+ */
13798
+ insights?: TranscriptInsights;
13799
+ constructor(data?: PartialMessage<GenerateInsightsResponse>);
13800
+ static readonly runtime: typeof proto3;
13801
+ static readonly typeName = "transcodely.v1.GenerateInsightsResponse";
13802
+ static readonly fields: FieldList;
13803
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GenerateInsightsResponse;
13804
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GenerateInsightsResponse;
13805
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GenerateInsightsResponse;
13806
+ static equals(a: GenerateInsightsResponse | PlainMessage<GenerateInsightsResponse> | undefined, b: GenerateInsightsResponse | PlainMessage<GenerateInsightsResponse> | undefined): boolean;
13807
+ }
13671
13808
 
13672
13809
  /**
13673
13810
  * Public types for the webhook surface — the discriminated union customers
@@ -13758,6 +13895,12 @@ type KnownWebhookEvent = (EventBase & {
13758
13895
  }) | (EventBase & {
13759
13896
  type: "video.source_scheduled_for_deletion";
13760
13897
  data: Video;
13898
+ }) | (EventBase & {
13899
+ type: "video.insights.ready";
13900
+ data: TranscriptInsights;
13901
+ }) | (EventBase & {
13902
+ type: "video.insights.failed";
13903
+ data: TranscriptInsights;
13761
13904
  }) | (EventBase & {
13762
13905
  type: "app.created";
13763
13906
  data: App;
@@ -13818,7 +13961,7 @@ interface SpendLimitNotification {
13818
13961
  currency: "EUR";
13819
13962
  }
13820
13963
  /**
13821
- * The 20 concrete webhook event types the API can emit. Mirrors the source of
13964
+ * The 22 concrete webhook event types the API can emit. Mirrors the source of
13822
13965
  * truth in `domain.WebhookEventTypes()` (api/internal/domain/webhook.go). The
13823
13966
  * `"*"` wildcard is a subscription-only value and is intentionally absent.
13824
13967
  *
@@ -13826,7 +13969,7 @@ interface SpendLimitNotification {
13826
13969
  * catalog-drift regression test can compare this set against the discriminated
13827
13970
  * union literals above.
13828
13971
  */
13829
- declare const WEBHOOK_EVENT_TYPES: readonly ["job.created", "job.succeeded", "job.failed", "job.canceled", "job.progress", "job.insights.ready", "job.insights.failed", "output.created", "output.ready", "output.failed", "output.progress", "video.uploaded", "video.ready", "video.failed", "video.deleted", "video.source_scheduled_for_deletion", "app.created", "app.updated", "app.spend_limit_warning", "app.spend_limit_exceeded"];
13972
+ declare const WEBHOOK_EVENT_TYPES: readonly ["job.created", "job.succeeded", "job.failed", "job.canceled", "job.progress", "job.insights.ready", "job.insights.failed", "output.created", "output.ready", "output.failed", "output.progress", "video.uploaded", "video.ready", "video.failed", "video.deleted", "video.source_scheduled_for_deletion", "video.insights.ready", "video.insights.failed", "app.created", "app.updated", "app.spend_limit_warning", "app.spend_limit_exceeded"];
13830
13973
  /** A concrete event type the API can emit (excludes the `"*"` wildcard). */
13831
13974
  type WebhookEventType = (typeof WEBHOOK_EVENT_TYPES)[number];
13832
13975
  /**
@@ -17509,6 +17652,21 @@ declare class Videos {
17509
17652
  * context; paste it as-is.
17510
17653
  */
17511
17654
  getSeoMarkup(req: PartialMessage<GetSeoMarkupRequest>, opts?: CallOptions): Promise<GetSeoMarkupResponse>;
17655
+ /**
17656
+ * Generate AI insights (title suggestions, summary, key points, chapters,
17657
+ * questions, key terms, highlights, topics) from a hosted video's existing
17658
+ * AI captions, without transcribing again. Returns the TranscriptInsights
17659
+ * entry in "pending"; it also appears on `video.insights`, and
17660
+ * `video.insights.ready` or `video.insights.failed` fires when it finishes.
17661
+ * Billed EUR 0.02 per video plus EUR 0.005 per minute of source, charged
17662
+ * only when the insights become ready.
17663
+ *
17664
+ * While an entry for the same video and language is pending, the call
17665
+ * returns that entry and bills nothing new. Pass `language` when the video
17666
+ * has several AI caption tracks. A video without AI captions is refused with
17667
+ * failed_precondition (code captions_required).
17668
+ */
17669
+ generateInsights(req: PartialMessage<GenerateInsightsRequest>, opts?: CallOptions): Promise<TranscriptInsights>;
17512
17670
  }
17513
17671
 
17514
17672
  /**
@@ -17694,7 +17852,7 @@ interface SerializeOptions {
17694
17852
  declare function toWireJson<T extends Message<T>>(msg: T, opts?: SerializeOptions): JsonValue;
17695
17853
 
17696
17854
  /** SDK version. Bumped by release-please from package.json on each tag. */
17697
- declare const SDK_VERSION = "0.3.12";
17855
+ declare const SDK_VERSION = "0.3.13";
17698
17856
  /**
17699
17857
  * API version this SDK release is pinned to. Sent on every request as
17700
17858
  * `Transcodely-Version`. Customers can override per-client via the
@@ -17821,4 +17979,4 @@ declare class ComponentHealth extends Message<ComponentHealth> {
17821
17979
  static equals(a: ComponentHealth | PlainMessage<ComponentHealth> | undefined, b: ComponentHealth | PlainMessage<ComponentHealth> | undefined): boolean;
17822
17980
  }
17823
17981
 
17824
- 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, GetSeoMarkupRequest, GetSeoMarkupResponse, 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, InsightsHighlight, InsightsOptions, InsightsQuestion, InsightsStatus, InsightsTerm, 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, OutputReportContentAwareProbe, 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, TranscriptFormat, TranscriptInsights, TranscriptOptions, TranscriptRendition, TranscriptStyle, 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 };
17982
+ 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, GenerateInsightsRequest, GenerateInsightsResponse, 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, GetSeoMarkupRequest, GetSeoMarkupResponse, 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, InsightsHighlight, InsightsOptions, InsightsQuestion, InsightsSource, InsightsStatus, InsightsTerm, 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, OutputReportContentAwareProbe, 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, TranscriptFormat, TranscriptInsights, TranscriptOptions, TranscriptRendition, TranscriptStyle, 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 };
package/dist/index.d.ts CHANGED
@@ -3550,6 +3550,7 @@ declare class WebhookEndpoint extends Message<WebhookEndpoint> {
3550
3550
  * "job.insights.failed", "output.created", "output.ready",
3551
3551
  * "output.failed", "output.progress", "video.uploaded", "video.ready",
3552
3552
  * "video.failed", "video.deleted", "video.source_scheduled_for_deletion",
3553
+ * "video.insights.ready", "video.insights.failed",
3553
3554
  * "app.created", "app.updated", "app.spend_limit_warning",
3554
3555
  * "app.spend_limit_exceeded", or "*".
3555
3556
  * Keep in sync with domain.WebhookEventTypes() ("job.updated" does not exist).
@@ -5786,6 +5787,31 @@ declare enum TranscriptFormat {
5786
5787
  */
5787
5788
  MD = 3
5788
5789
  }
5790
+ /**
5791
+ * Where an insights entry came from.
5792
+ *
5793
+ * @generated from enum transcodely.v1.InsightsSource
5794
+ */
5795
+ declare enum InsightsSource {
5796
+ /**
5797
+ * @generated from enum value: INSIGHTS_SOURCE_UNSPECIFIED = 0;
5798
+ */
5799
+ UNSPECIFIED = 0,
5800
+ /**
5801
+ * Requested on a captions job (SubtitleTrack.insights or the auto_insights
5802
+ * upload flag). Its fees are on the job (Job.fees).
5803
+ *
5804
+ * @generated from enum value: INSIGHTS_SOURCE_JOB = 1;
5805
+ */
5806
+ JOB = 1,
5807
+ /**
5808
+ * Requested on a hosted video's existing captions
5809
+ * (VideoService.GenerateInsights). Its price is fee_eur.
5810
+ *
5811
+ * @generated from enum value: INSIGHTS_SOURCE_VIDEO = 2;
5812
+ */
5813
+ VIDEO = 2
5814
+ }
5789
5815
  /**
5790
5816
  * Processing state of a transcript's insights.
5791
5817
  *
@@ -6408,20 +6434,23 @@ declare class InsightsHighlight extends Message<InsightsHighlight> {
6408
6434
  }
6409
6435
  /**
6410
6436
  * AI insights produced from one generated transcript (read-only). Requested
6411
- * with SubtitleTrack.insights; one per generate track that requested them.
6437
+ * with SubtitleTrack.insights (one per generate track that requested them),
6438
+ * or on a hosted video's existing captions with VideoService.GenerateInsights.
6412
6439
  *
6413
6440
  * The sections are written in the transcript's language (unless your hint
6414
6441
  * asks otherwise) and are present only once status is "ready". Every timing
6415
6442
  * refers to the transcript, and every highlight is a verbatim quote from it.
6416
6443
  *
6417
6444
  * The artifact files (insights.json, insights.md and chapters.vtt) are
6418
- * written next to the caption file in the job's output destination.
6445
+ * written next to the caption file: in the job's output destination, or in
6446
+ * the video's managed storage for source "video".
6419
6447
  *
6420
6448
  * @generated from message transcodely.v1.TranscriptInsights
6421
6449
  */
6422
6450
  declare class TranscriptInsights extends Message<TranscriptInsights> {
6423
6451
  /**
6424
- * The out_… output the generate track was configured on.
6452
+ * The out_… output the generate track was configured on. Empty for source
6453
+ * "video".
6425
6454
  *
6426
6455
  * @generated from field: string output_id = 1;
6427
6456
  */
@@ -6566,6 +6595,38 @@ declare class TranscriptInsights extends Message<TranscriptInsights> {
6566
6595
  * @generated from field: string hint = 23;
6567
6596
  */
6568
6597
  hint: string;
6598
+ /**
6599
+ * Unique identifier of this insights entry (ins_…).
6600
+ *
6601
+ * @generated from field: string id = 24;
6602
+ */
6603
+ id: string;
6604
+ /**
6605
+ * job | video: requested on a captions job, or on a hosted video's existing
6606
+ * captions with VideoService.GenerateInsights.
6607
+ *
6608
+ * @generated from field: transcodely.v1.InsightsSource source = 25;
6609
+ */
6610
+ source: InsightsSource;
6611
+ /**
6612
+ * The hosted video (vid_…) the insights belong to, for source "video".
6613
+ * Empty for source "job" (see Video.insights for a hosted video's
6614
+ * job-sourced insights).
6615
+ *
6616
+ * @generated from field: string video_id = 26;
6617
+ */
6618
+ videoId: string;
6619
+ /**
6620
+ * Price of this entry in EUR, for source "video": EUR 0.02 per video plus
6621
+ * EUR 0.005 per minute of source, fixed when the entry was created. Charged
6622
+ * only when status becomes "ready"; nothing is charged when it fails. An
6623
+ * entry that becomes "ready" after a newer entry for the same language was
6624
+ * already shown on the video is not charged either, and shows 0.
6625
+ * Absent for source "job", whose insights fees are listed on Job.fees.
6626
+ *
6627
+ * @generated from field: optional double fee_eur = 27;
6628
+ */
6629
+ feeEur?: number;
6569
6630
  constructor(data?: PartialMessage<TranscriptInsights>);
6570
6631
  static readonly runtime: typeof proto3;
6571
6632
  static readonly typeName = "transcodely.v1.TranscriptInsights";
@@ -11299,7 +11360,8 @@ declare class CreateJobRequest extends Message<CreateJobRequest> {
11299
11360
  * Optional target app. API-key callers may omit it (their key's app is used)
11300
11361
  * or pass their own app; a different app is rejected with PermissionDenied.
11301
11362
  * Portal/JWT callers pass it to create in a specific app in their org;
11302
- * omitted selects the org's first active app.
11363
+ * omitted selects the org's first active app, or, when input_video_id
11364
+ * names a video in the org, that video's app.
11303
11365
  *
11304
11366
  * @generated from field: optional string app_id = 21;
11305
11367
  */
@@ -11865,9 +11927,14 @@ declare class Video extends Message<Video> {
11865
11927
  textTracks: VideoTextTrack[];
11866
11928
  /**
11867
11929
  * AI insights for this video, one per transcript language, from the
11868
- * captions job that requested them (SubtitleTrack.insights). Each moves
11869
- * from "pending" to "ready" or "failed". Signed URLs are computed per
11870
- * request under the same rules as text track URLs and are never stored.
11930
+ * captions job that requested them (SubtitleTrack.insights) or from
11931
+ * GenerateInsights. Each moves from "pending" to "ready" or "failed". A
11932
+ * GenerateInsights entry still pending for a language that already has
11933
+ * ready insights is listed first, ahead of the ready entry it will replace.
11934
+ * If that entry fails, the ready insights stay and the failed entry is no
11935
+ * longer listed; video.insights.failed reports it.
11936
+ * Signed URLs are computed per request under the same rules as text track
11937
+ * URLs and are never stored.
11871
11938
  *
11872
11939
  * @generated from field: repeated transcodely.v1.TranscriptInsights insights = 53;
11873
11940
  */
@@ -11910,12 +11977,13 @@ declare class Video extends Message<Video> {
11910
11977
  /**
11911
11978
  * Everything this video has cost, in EUR: the sum of the settled totals of
11912
11979
  * every job billed for it — the transcode that produced it plus any later
11913
- * job that took it as input (retro captions, for example).
11980
+ * job that took it as input (retro captions, for example) — plus the fee of
11981
+ * every ready GenerateInsights entry (TranscriptInsights.fee_eur).
11914
11982
  *
11915
11983
  * This is the authoritative per-video figure and the one to display. It is
11916
- * built from the same job totals the billing ledger is written from, so it
11984
+ * built from the same amounts the billing ledger is written from, so it
11917
11985
  * reconciles with the invoice; captions_cost is a breakdown inside it.
11918
- * Absent while no linked job has settled yet.
11986
+ * Absent while nothing linked to the video has been billed yet.
11919
11987
  *
11920
11988
  * @generated from field: optional double total_cost = 52;
11921
11989
  */
@@ -13668,6 +13736,75 @@ declare class GetSeoMarkupResponse extends Message<GetSeoMarkupResponse> {
13668
13736
  static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GetSeoMarkupResponse;
13669
13737
  static equals(a: GetSeoMarkupResponse | PlainMessage<GetSeoMarkupResponse> | undefined, b: GetSeoMarkupResponse | PlainMessage<GetSeoMarkupResponse> | undefined): boolean;
13670
13738
  }
13739
+ /**
13740
+ * Request to generate AI insights from a hosted video's existing captions.
13741
+ *
13742
+ * @generated from message transcodely.v1.GenerateInsightsRequest
13743
+ */
13744
+ declare class GenerateInsightsRequest extends Message<GenerateInsightsRequest> {
13745
+ /**
13746
+ * Video ID.
13747
+ *
13748
+ * @generated from field: string id = 1;
13749
+ */
13750
+ id: string;
13751
+ /**
13752
+ * ISO 639-2 language of the AI caption track to use (e.g. "eng"). Optional
13753
+ * when the video has exactly one AI caption track; required when it has
13754
+ * several (refused with code parameter_required, listing the available
13755
+ * languages).
13756
+ *
13757
+ * @generated from field: optional string language = 2;
13758
+ */
13759
+ language?: string;
13760
+ /**
13761
+ * Optional free-text guidance about the content, its audience or the tone
13762
+ * you want, at most 300 characters. Same meaning as InsightsOptions.hint.
13763
+ *
13764
+ * @generated from field: optional string hint = 3;
13765
+ */
13766
+ hint?: string;
13767
+ /**
13768
+ * Optional app the video belongs to. API-key callers may omit it (their
13769
+ * key's app is used) or pass their own app; a different app is rejected
13770
+ * with PermissionDenied. Portal/JWT callers may pass it; omitted, the app
13771
+ * is resolved from the video.
13772
+ *
13773
+ * @generated from field: optional string app_id = 4;
13774
+ */
13775
+ appId?: string;
13776
+ constructor(data?: PartialMessage<GenerateInsightsRequest>);
13777
+ static readonly runtime: typeof proto3;
13778
+ static readonly typeName = "transcodely.v1.GenerateInsightsRequest";
13779
+ static readonly fields: FieldList;
13780
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GenerateInsightsRequest;
13781
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GenerateInsightsRequest;
13782
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GenerateInsightsRequest;
13783
+ static equals(a: GenerateInsightsRequest | PlainMessage<GenerateInsightsRequest> | undefined, b: GenerateInsightsRequest | PlainMessage<GenerateInsightsRequest> | undefined): boolean;
13784
+ }
13785
+ /**
13786
+ * Response from GenerateInsights.
13787
+ *
13788
+ * @generated from message transcodely.v1.GenerateInsightsResponse
13789
+ */
13790
+ declare class GenerateInsightsResponse extends Message<GenerateInsightsResponse> {
13791
+ /**
13792
+ * The insights entry: newly created, or the one already pending for this
13793
+ * video and language. Status is "pending"; poll VideoService.Get (or
13794
+ * Watch) or subscribe to video.insights.ready / video.insights.failed.
13795
+ *
13796
+ * @generated from field: transcodely.v1.TranscriptInsights insights = 1;
13797
+ */
13798
+ insights?: TranscriptInsights;
13799
+ constructor(data?: PartialMessage<GenerateInsightsResponse>);
13800
+ static readonly runtime: typeof proto3;
13801
+ static readonly typeName = "transcodely.v1.GenerateInsightsResponse";
13802
+ static readonly fields: FieldList;
13803
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GenerateInsightsResponse;
13804
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GenerateInsightsResponse;
13805
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GenerateInsightsResponse;
13806
+ static equals(a: GenerateInsightsResponse | PlainMessage<GenerateInsightsResponse> | undefined, b: GenerateInsightsResponse | PlainMessage<GenerateInsightsResponse> | undefined): boolean;
13807
+ }
13671
13808
 
13672
13809
  /**
13673
13810
  * Public types for the webhook surface — the discriminated union customers
@@ -13758,6 +13895,12 @@ type KnownWebhookEvent = (EventBase & {
13758
13895
  }) | (EventBase & {
13759
13896
  type: "video.source_scheduled_for_deletion";
13760
13897
  data: Video;
13898
+ }) | (EventBase & {
13899
+ type: "video.insights.ready";
13900
+ data: TranscriptInsights;
13901
+ }) | (EventBase & {
13902
+ type: "video.insights.failed";
13903
+ data: TranscriptInsights;
13761
13904
  }) | (EventBase & {
13762
13905
  type: "app.created";
13763
13906
  data: App;
@@ -13818,7 +13961,7 @@ interface SpendLimitNotification {
13818
13961
  currency: "EUR";
13819
13962
  }
13820
13963
  /**
13821
- * The 20 concrete webhook event types the API can emit. Mirrors the source of
13964
+ * The 22 concrete webhook event types the API can emit. Mirrors the source of
13822
13965
  * truth in `domain.WebhookEventTypes()` (api/internal/domain/webhook.go). The
13823
13966
  * `"*"` wildcard is a subscription-only value and is intentionally absent.
13824
13967
  *
@@ -13826,7 +13969,7 @@ interface SpendLimitNotification {
13826
13969
  * catalog-drift regression test can compare this set against the discriminated
13827
13970
  * union literals above.
13828
13971
  */
13829
- declare const WEBHOOK_EVENT_TYPES: readonly ["job.created", "job.succeeded", "job.failed", "job.canceled", "job.progress", "job.insights.ready", "job.insights.failed", "output.created", "output.ready", "output.failed", "output.progress", "video.uploaded", "video.ready", "video.failed", "video.deleted", "video.source_scheduled_for_deletion", "app.created", "app.updated", "app.spend_limit_warning", "app.spend_limit_exceeded"];
13972
+ declare const WEBHOOK_EVENT_TYPES: readonly ["job.created", "job.succeeded", "job.failed", "job.canceled", "job.progress", "job.insights.ready", "job.insights.failed", "output.created", "output.ready", "output.failed", "output.progress", "video.uploaded", "video.ready", "video.failed", "video.deleted", "video.source_scheduled_for_deletion", "video.insights.ready", "video.insights.failed", "app.created", "app.updated", "app.spend_limit_warning", "app.spend_limit_exceeded"];
13830
13973
  /** A concrete event type the API can emit (excludes the `"*"` wildcard). */
13831
13974
  type WebhookEventType = (typeof WEBHOOK_EVENT_TYPES)[number];
13832
13975
  /**
@@ -17509,6 +17652,21 @@ declare class Videos {
17509
17652
  * context; paste it as-is.
17510
17653
  */
17511
17654
  getSeoMarkup(req: PartialMessage<GetSeoMarkupRequest>, opts?: CallOptions): Promise<GetSeoMarkupResponse>;
17655
+ /**
17656
+ * Generate AI insights (title suggestions, summary, key points, chapters,
17657
+ * questions, key terms, highlights, topics) from a hosted video's existing
17658
+ * AI captions, without transcribing again. Returns the TranscriptInsights
17659
+ * entry in "pending"; it also appears on `video.insights`, and
17660
+ * `video.insights.ready` or `video.insights.failed` fires when it finishes.
17661
+ * Billed EUR 0.02 per video plus EUR 0.005 per minute of source, charged
17662
+ * only when the insights become ready.
17663
+ *
17664
+ * While an entry for the same video and language is pending, the call
17665
+ * returns that entry and bills nothing new. Pass `language` when the video
17666
+ * has several AI caption tracks. A video without AI captions is refused with
17667
+ * failed_precondition (code captions_required).
17668
+ */
17669
+ generateInsights(req: PartialMessage<GenerateInsightsRequest>, opts?: CallOptions): Promise<TranscriptInsights>;
17512
17670
  }
17513
17671
 
17514
17672
  /**
@@ -17694,7 +17852,7 @@ interface SerializeOptions {
17694
17852
  declare function toWireJson<T extends Message<T>>(msg: T, opts?: SerializeOptions): JsonValue;
17695
17853
 
17696
17854
  /** SDK version. Bumped by release-please from package.json on each tag. */
17697
- declare const SDK_VERSION = "0.3.12";
17855
+ declare const SDK_VERSION = "0.3.13";
17698
17856
  /**
17699
17857
  * API version this SDK release is pinned to. Sent on every request as
17700
17858
  * `Transcodely-Version`. Customers can override per-client via the
@@ -17821,4 +17979,4 @@ declare class ComponentHealth extends Message<ComponentHealth> {
17821
17979
  static equals(a: ComponentHealth | PlainMessage<ComponentHealth> | undefined, b: ComponentHealth | PlainMessage<ComponentHealth> | undefined): boolean;
17822
17980
  }
17823
17981
 
17824
- 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, GetSeoMarkupRequest, GetSeoMarkupResponse, 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, InsightsHighlight, InsightsOptions, InsightsQuestion, InsightsStatus, InsightsTerm, 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, OutputReportContentAwareProbe, 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, TranscriptFormat, TranscriptInsights, TranscriptOptions, TranscriptRendition, TranscriptStyle, 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 };
17982
+ 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, GenerateInsightsRequest, GenerateInsightsResponse, 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, GetSeoMarkupRequest, GetSeoMarkupResponse, 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, InsightsHighlight, InsightsOptions, InsightsQuestion, InsightsSource, InsightsStatus, InsightsTerm, 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, OutputReportContentAwareProbe, 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, TranscriptFormat, TranscriptInsights, TranscriptOptions, TranscriptRendition, TranscriptStyle, 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 };