transcodely 0.3.5__py3-none-any.whl → 0.3.7__py3-none-any.whl

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.
transcodely/__init__.py CHANGED
@@ -55,6 +55,10 @@ from .types import (
55
55
  App,
56
56
  AudioTrackConfig,
57
57
  AutoABRConfig,
58
+ BillingPaymentMethod,
59
+ BillingPortalSession,
60
+ BillingProfile,
61
+ BillingStanding,
58
62
  ChapterPoint,
59
63
  ChapterResult,
60
64
  ClipConfig,
@@ -77,6 +81,7 @@ from .types import (
77
81
  OutputFormat,
78
82
  OutputSpec,
79
83
  OutputStatus,
84
+ PaymentMethodState,
80
85
  Preset,
81
86
  PresetVariant,
82
87
  Resolution,
@@ -127,6 +132,10 @@ __all__ = [
127
132
  "AudioTrackConfig",
128
133
  "AuthenticationError",
129
134
  "AutoABRConfig",
135
+ "BillingPaymentMethod",
136
+ "BillingPortalSession",
137
+ "BillingProfile",
138
+ "BillingStanding",
130
139
  "ChapterPoint",
131
140
  "ChapterResult",
132
141
  "ClipConfig",
@@ -158,6 +167,7 @@ __all__ = [
158
167
  "OutputStatus",
159
168
  "Page",
160
169
  "PageContents",
170
+ "PaymentMethodState",
161
171
  "PermissionError",
162
172
  "PreconditionError",
163
173
  "Preset",
@@ -88,3 +88,51 @@ class Billing:
88
88
  billing_pb2.GetUpcomingInvoiceResponse(),
89
89
  opts,
90
90
  ).invoice
91
+
92
+ def retrieve_profile(self, opts: CallOptions | None = None) -> billing_pb2.BillingProfile:
93
+ """Retrieve the organization's payment standing.
94
+
95
+ Reports whether the payment provider holds a chargeable method, and
96
+ whatever it will say about that method for display. Read-only and
97
+ side-effect free — it never creates provider resources. An organization
98
+ that has never touched billing reports ``PAYMENT_METHOD_STATE_NONE``
99
+ and no payment methods.
100
+
101
+ ``payment_method_state`` is the only reliable signal. A method's
102
+ ``brand`` and ``last4`` are frequently absent even for a working card,
103
+ because the provider does not always expose card metadata; render such
104
+ a method as "Card on file" rather than treating the missing digits as
105
+ an error.
106
+ """
107
+ req = billing_pb2.GetBillingProfileRequest()
108
+ return self._t.unary(
109
+ _SERVICE,
110
+ "GetBillingProfile",
111
+ req,
112
+ billing_pb2.GetBillingProfileResponse(),
113
+ opts,
114
+ ).profile
115
+
116
+ def create_portal_session(
117
+ self, opts: CallOptions | None = None
118
+ ) -> billing_pb2.BillingPortalSession:
119
+ """Create a session for the payment provider's hosted billing portal.
120
+
121
+ The portal is where a payment method is added or replaced and where
122
+ receipts live — card details never touch this SDK.
123
+
124
+ The first call for an organization also links it to the payment
125
+ provider, so the returned portal is already attached to this
126
+ organization's billing account. Safe to call repeatedly.
127
+
128
+ The session is single-use and expires; request a fresh one per visit
129
+ rather than storing the URL.
130
+ """
131
+ req = billing_pb2.CreateBillingPortalSessionRequest()
132
+ return self._t.unary(
133
+ _SERVICE,
134
+ "CreateBillingPortalSession",
135
+ req,
136
+ billing_pb2.CreateBillingPortalSessionResponse(),
137
+ opts,
138
+ ).session
transcodely/types.py CHANGED
@@ -61,7 +61,20 @@ from transcodely.v1.app_pb2 import (
61
61
  # token for an organization owner plus ``organization_id`` — an API key is
62
62
  # scoped to one app, while an invoice settles a whole organization, so API keys
63
63
  # are rejected.
64
+ #
65
+ # ``BillingProfile`` reports whether the payment provider holds a chargeable
66
+ # method; a portal session is the only place a card is added or replaced, so
67
+ # card details never reach this SDK. Branch on ``PaymentMethodState``, not on
68
+ # the card fields — ``brand`` and ``last4`` are frequently absent even for a
69
+ # working card.
64
70
  from transcodely.v1.billing_pb2 import (
71
+ BillingPaymentMethod,
72
+ BillingPortalSession,
73
+ BillingProfile,
74
+ CreateBillingPortalSessionRequest,
75
+ CreateBillingPortalSessionResponse,
76
+ GetBillingProfileRequest,
77
+ GetBillingProfileResponse,
65
78
  GetInvoiceRequest,
66
79
  GetInvoiceResponse,
67
80
  GetUpcomingInvoiceRequest,
@@ -72,13 +85,21 @@ from transcodely.v1.billing_pb2 import (
72
85
  InvoiceStatus,
73
86
  ListInvoicesRequest,
74
87
  ListInvoicesResponse,
88
+ PaymentMethodState,
75
89
  )
76
90
  from transcodely.v1.codec_av1_pb2 import AV1Options
77
91
  from transcodely.v1.codec_h264_pb2 import H264Options
78
92
  from transcodely.v1.codec_h265_pb2 import H265Options
79
93
  from transcodely.v1.codec_vp9_pb2 import VP9Options
94
+
95
+ # ``BillingStanding`` is ``BillingProfile.standing`` — derived from the
96
+ # organization's billing facts rather than assigned, so there is nothing to set.
97
+ # ``FREE`` and ``DELINQUENT`` both resolve usage limits to the free tier's, but
98
+ # ``DELINQUENT`` still bills; neither is a suspension. An organization exempt
99
+ # from the payment-method requirement always reports ``ACTIVE``.
80
100
  from transcodely.v1.common_pb2 import (
81
101
  AudioCodec,
102
+ BillingStanding,
82
103
  BitrateMode,
83
104
  Container,
84
105
  ContentType,
@@ -143,6 +164,9 @@ from transcodely.v1.job_pb2 import (
143
164
  GetJobResponse,
144
165
  HLSConfig,
145
166
  Job,
167
+ JobCostBreakdown,
168
+ JobCostLine,
169
+ JobCostLineType,
146
170
  JobFee,
147
171
  JobOutput,
148
172
  JobPriority,
@@ -385,6 +409,10 @@ __all__ = [
385
409
  "AutoABRConfig",
386
410
  "AutoProfileDefaults",
387
411
  "BYOKConfig",
412
+ "BillingPaymentMethod",
413
+ "BillingPortalSession",
414
+ "BillingProfile",
415
+ "BillingStanding",
388
416
  "BitrateMode",
389
417
  "BurnInStyle",
390
418
  "CancelJobRequest",
@@ -411,6 +439,8 @@ __all__ = [
411
439
  "CreateAPIKeyResponse",
412
440
  "CreateAppRequest",
413
441
  "CreateAppResponse",
442
+ "CreateBillingPortalSessionRequest",
443
+ "CreateBillingPortalSessionResponse",
414
444
  "CreateFromUrlRequest",
415
445
  "CreateFromUrlResponse",
416
446
  "CreateJobRequest",
@@ -454,6 +484,8 @@ __all__ = [
454
484
  "GetAPIKeyResponse",
455
485
  "GetAppRequest",
456
486
  "GetAppResponse",
487
+ "GetBillingProfileRequest",
488
+ "GetBillingProfileResponse",
457
489
  "GetEndpointHealthRequest",
458
490
  "GetEndpointHealthResponse",
459
491
  "GetInvoiceRequest",
@@ -506,6 +538,9 @@ __all__ = [
506
538
  "InvoiceLineType",
507
539
  "InvoiceStatus",
508
540
  "Job",
541
+ "JobCostBreakdown",
542
+ "JobCostLine",
543
+ "JobCostLineType",
509
544
  "JobFee",
510
545
  "JobOutput",
511
546
  "JobPriority",
@@ -553,6 +588,7 @@ __all__ = [
553
588
  "OutputVariantResult",
554
589
  "PaginationRequest",
555
590
  "PaginationResponse",
591
+ "PaymentMethodState",
556
592
  "Preset",
557
593
  "PresetVariant",
558
594
  "PricingSnapshot",
@@ -27,7 +27,7 @@ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__
27
27
  from transcodely.v1 import common_pb2 as transcodely_dot_v1_dot_common__pb2
28
28
 
29
29
 
30
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1ctranscodely/v1/billing.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xa5\x05\n\x07Invoice\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x16\n\x06object\x18\x02 \x01(\tR\x06object\x12\x15\n\x06org_id\x18\x03 \x01(\tR\x05orgId\x12\x35\n\x06status\x18\x04 \x01(\x0e\x32\x1d.transcodely.v1.InvoiceStatusR\x06status\x12=\n\x0cperiod_start\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bperiodStart\x12\x39\n\nperiod_end\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tperiodEnd\x12\x1a\n\x08\x63urrency\x18\x07 \x01(\tR\x08\x63urrency\x12%\n\x0esubtotal_cents\x18\x08 \x01(\x03R\rsubtotalCents\x12\x1f\n\x0btotal_cents\x18\t \x01(\x03R\ntotalCents\x12;\n\x17provider_invoice_number\x18\n \x01(\tH\x00R\x15providerInvoiceNumber\x88\x01\x01\x12=\n\x0c\x66inalized_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x66inalizedAt\x12\x33\n\x07paid_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06paidAt\x12>\n\nline_items\x18\r \x03(\x0b\x32\x1f.transcodely.v1.InvoiceLineItemR\tlineItems\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAtB\x1a\n\x18_provider_invoice_number\"\xf6\x02\n\x0fInvoiceLineItem\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12<\n\tline_type\x18\x02 \x01(\x0e\x32\x1f.transcodely.v1.InvoiceLineTypeR\x08lineType\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1f\n\x08quantity\x18\x04 \x01(\x01H\x00R\x08quantity\x88\x01\x01\x12\x12\n\x04unit\x18\x05 \x01(\tR\x04unit\x12!\n\x0c\x61mount_cents\x18\x06 \x01(\x03R\x0b\x61mountCents\x12O\n\ndimensions\x18\x07 \x03(\x0b\x32/.transcodely.v1.InvoiceLineItem.DimensionsEntryR\ndimensions\x1a=\n\x0f\x44imensionsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0b\n\t_quantity\"X\n\x13ListInvoicesRequest\x12\x41\n\npagination\x18\x01 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\"\x8f\x01\n\x14ListInvoicesResponse\x12\x33\n\x08invoices\x18\x01 \x03(\x0b\x32\x17.transcodely.v1.InvoiceR\x08invoices\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"C\n\x11GetInvoiceRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^inv_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"G\n\x12GetInvoiceResponse\x12\x31\n\x07invoice\x18\x01 \x01(\x0b\x32\x17.transcodely.v1.InvoiceR\x07invoice\"\x1b\n\x19GetUpcomingInvoiceRequest\"O\n\x1aGetUpcomingInvoiceResponse\x12\x31\n\x07invoice\x18\x01 \x01(\x0b\x32\x17.transcodely.v1.InvoiceR\x07invoice*\xb6\x01\n\rInvoiceStatus\x12\x1e\n\x1aINVOICE_STATUS_UNSPECIFIED\x10\x00\x12\x18\n\x14INVOICE_STATUS_DRAFT\x10\x01\x12\x17\n\x13INVOICE_STATUS_OPEN\x10\x02\x12\x17\n\x13INVOICE_STATUS_PAID\x10\x03\x12\x17\n\x13INVOICE_STATUS_VOID\x10\x04\x12 \n\x1cINVOICE_STATUS_UNCOLLECTIBLE\x10\x05*\xb0\x01\n\x0fInvoiceLineType\x12!\n\x1dINVOICE_LINE_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17INVOICE_LINE_TYPE_USAGE\x10\x01\x12\x19\n\x15INVOICE_LINE_TYPE_FEE\x10\x02\x12 \n\x1cINVOICE_LINE_TYPE_MIN_CHARGE\x10\x03\x12 \n\x1cINVOICE_LINE_TYPE_ADJUSTMENT\x10\x04\x32\xad\x02\n\x0e\x42illingService\x12Y\n\x0cListInvoices\x12#.transcodely.v1.ListInvoicesRequest\x1a$.transcodely.v1.ListInvoicesResponse\x12S\n\nGetInvoice\x12!.transcodely.v1.GetInvoiceRequest\x1a\".transcodely.v1.GetInvoiceResponse\x12k\n\x12GetUpcomingInvoice\x12).transcodely.v1.GetUpcomingInvoiceRequest\x1a*.transcodely.v1.GetUpcomingInvoiceResponseb\x06proto3')
30
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1ctranscodely/v1/billing.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xa5\x05\n\x07Invoice\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x16\n\x06object\x18\x02 \x01(\tR\x06object\x12\x15\n\x06org_id\x18\x03 \x01(\tR\x05orgId\x12\x35\n\x06status\x18\x04 \x01(\x0e\x32\x1d.transcodely.v1.InvoiceStatusR\x06status\x12=\n\x0cperiod_start\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bperiodStart\x12\x39\n\nperiod_end\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tperiodEnd\x12\x1a\n\x08\x63urrency\x18\x07 \x01(\tR\x08\x63urrency\x12%\n\x0esubtotal_cents\x18\x08 \x01(\x03R\rsubtotalCents\x12\x1f\n\x0btotal_cents\x18\t \x01(\x03R\ntotalCents\x12;\n\x17provider_invoice_number\x18\n \x01(\tH\x00R\x15providerInvoiceNumber\x88\x01\x01\x12=\n\x0c\x66inalized_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x66inalizedAt\x12\x33\n\x07paid_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06paidAt\x12>\n\nline_items\x18\r \x03(\x0b\x32\x1f.transcodely.v1.InvoiceLineItemR\tlineItems\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAtB\x1a\n\x18_provider_invoice_number\"\xf6\x02\n\x0fInvoiceLineItem\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12<\n\tline_type\x18\x02 \x01(\x0e\x32\x1f.transcodely.v1.InvoiceLineTypeR\x08lineType\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1f\n\x08quantity\x18\x04 \x01(\x01H\x00R\x08quantity\x88\x01\x01\x12\x12\n\x04unit\x18\x05 \x01(\tR\x04unit\x12!\n\x0c\x61mount_cents\x18\x06 \x01(\x03R\x0b\x61mountCents\x12O\n\ndimensions\x18\x07 \x03(\x0b\x32/.transcodely.v1.InvoiceLineItem.DimensionsEntryR\ndimensions\x1a=\n\x0f\x44imensionsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0b\n\t_quantity\"\x90\x04\n\x0e\x42illingProfile\x12\x16\n\x06object\x18\x01 \x01(\tR\x06object\x12\x15\n\x06org_id\x18\x02 \x01(\tR\x05orgId\x12T\n\x14payment_method_state\x18\x03 \x01(\x0e\x32\".transcodely.v1.PaymentMethodStateR\x12paymentMethodState\x12M\n\x0fpayment_methods\x18\x04 \x03(\x0b\x32$.transcodely.v1.BillingPaymentMethodR\x0epaymentMethods\x12(\n\rbilling_email\x18\x05 \x01(\tH\x00R\x0c\x62illingEmail\x88\x01\x01\x12;\n\x08standing\x18\x06 \x01(\x0e\x32\x1f.transcodely.v1.BillingStandingR\x08standing\x12@\n\x0bgrace_until\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\ngraceUntil\x88\x01\x01\x12\'\n\x0fstanding_reason\x18\x08 \x01(\tR\x0estandingReason\x12\x36\n\x17payment_method_required\x18\t \x01(\x08R\x15paymentMethodRequiredB\x10\n\x0e_billing_emailB\x0e\n\x0c_grace_until\"\x80\x02\n\x14\x42illingPaymentMethod\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12\x19\n\x05\x62rand\x18\x03 \x01(\tH\x00R\x05\x62rand\x88\x01\x01\x12\x19\n\x05last4\x18\x04 \x01(\tH\x01R\x05last4\x88\x01\x01\x12 \n\texp_month\x18\x05 \x01(\x05H\x02R\x08\x65xpMonth\x88\x01\x01\x12\x1e\n\x08\x65xp_year\x18\x06 \x01(\x05H\x03R\x07\x65xpYear\x88\x01\x01\x12\x1d\n\nis_default\x18\x07 \x01(\x08R\tisDefaultB\x08\n\x06_brandB\x08\n\x06_last4B\x0c\n\n_exp_monthB\x0b\n\t_exp_year\"{\n\x14\x42illingPortalSession\x12\x16\n\x06object\x18\x01 \x01(\tR\x06object\x12\x10\n\x03url\x18\x02 \x01(\tR\x03url\x12\x39\n\nexpires_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\"X\n\x13ListInvoicesRequest\x12\x41\n\npagination\x18\x01 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\"\x8f\x01\n\x14ListInvoicesResponse\x12\x33\n\x08invoices\x18\x01 \x03(\x0b\x32\x17.transcodely.v1.InvoiceR\x08invoices\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"C\n\x11GetInvoiceRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^inv_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"G\n\x12GetInvoiceResponse\x12\x31\n\x07invoice\x18\x01 \x01(\x0b\x32\x17.transcodely.v1.InvoiceR\x07invoice\"\x1b\n\x19GetUpcomingInvoiceRequest\"O\n\x1aGetUpcomingInvoiceResponse\x12\x31\n\x07invoice\x18\x01 \x01(\x0b\x32\x17.transcodely.v1.InvoiceR\x07invoice\"\x1a\n\x18GetBillingProfileRequest\"U\n\x19GetBillingProfileResponse\x12\x38\n\x07profile\x18\x01 \x01(\x0b\x32\x1e.transcodely.v1.BillingProfileR\x07profile\"#\n!CreateBillingPortalSessionRequest\"d\n\"CreateBillingPortalSessionResponse\x12>\n\x07session\x18\x01 \x01(\x0b\x32$.transcodely.v1.BillingPortalSessionR\x07session*\xb6\x01\n\rInvoiceStatus\x12\x1e\n\x1aINVOICE_STATUS_UNSPECIFIED\x10\x00\x12\x18\n\x14INVOICE_STATUS_DRAFT\x10\x01\x12\x17\n\x13INVOICE_STATUS_OPEN\x10\x02\x12\x17\n\x13INVOICE_STATUS_PAID\x10\x03\x12\x17\n\x13INVOICE_STATUS_VOID\x10\x04\x12 \n\x1cINVOICE_STATUS_UNCOLLECTIBLE\x10\x05*\xb0\x01\n\x0fInvoiceLineType\x12!\n\x1dINVOICE_LINE_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17INVOICE_LINE_TYPE_USAGE\x10\x01\x12\x19\n\x15INVOICE_LINE_TYPE_FEE\x10\x02\x12 \n\x1cINVOICE_LINE_TYPE_MIN_CHARGE\x10\x03\x12 \n\x1cINVOICE_LINE_TYPE_ADJUSTMENT\x10\x04*{\n\x12PaymentMethodState\x12$\n PAYMENT_METHOD_STATE_UNSPECIFIED\x10\x00\x12\x1d\n\x19PAYMENT_METHOD_STATE_NONE\x10\x01\x12 \n\x1cPAYMENT_METHOD_STATE_ON_FILE\x10\x02\x32\x9d\x04\n\x0e\x42illingService\x12Y\n\x0cListInvoices\x12#.transcodely.v1.ListInvoicesRequest\x1a$.transcodely.v1.ListInvoicesResponse\x12S\n\nGetInvoice\x12!.transcodely.v1.GetInvoiceRequest\x1a\".transcodely.v1.GetInvoiceResponse\x12k\n\x12GetUpcomingInvoice\x12).transcodely.v1.GetUpcomingInvoiceRequest\x1a*.transcodely.v1.GetUpcomingInvoiceResponse\x12h\n\x11GetBillingProfile\x12(.transcodely.v1.GetBillingProfileRequest\x1a).transcodely.v1.GetBillingProfileResponse\x12\x83\x01\n\x1a\x43reateBillingPortalSession\x12\x31.transcodely.v1.CreateBillingPortalSessionRequest\x1a\x32.transcodely.v1.CreateBillingPortalSessionResponseb\x06proto3')
31
31
 
32
32
  _globals = globals()
33
33
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -38,28 +38,44 @@ if not _descriptor._USE_C_DESCRIPTORS:
38
38
  _globals['_INVOICELINEITEM_DIMENSIONSENTRY']._serialized_options = b'8\001'
39
39
  _globals['_GETINVOICEREQUEST'].fields_by_name['id']._loaded_options = None
40
40
  _globals['_GETINVOICEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\033r\0262\024^inv_[a-zA-Z0-9_-]+$\310\001\001'
41
- _globals['_INVOICESTATUS']._serialized_start=1685
42
- _globals['_INVOICESTATUS']._serialized_end=1867
43
- _globals['_INVOICELINETYPE']._serialized_start=1870
44
- _globals['_INVOICELINETYPE']._serialized_end=2046
41
+ _globals['_INVOICESTATUS']._serialized_start=2854
42
+ _globals['_INVOICESTATUS']._serialized_end=3036
43
+ _globals['_INVOICELINETYPE']._serialized_start=3039
44
+ _globals['_INVOICELINETYPE']._serialized_end=3215
45
+ _globals['_PAYMENTMETHODSTATE']._serialized_start=3217
46
+ _globals['_PAYMENTMETHODSTATE']._serialized_end=3340
45
47
  _globals['_INVOICE']._serialized_start=140
46
48
  _globals['_INVOICE']._serialized_end=817
47
49
  _globals['_INVOICELINEITEM']._serialized_start=820
48
50
  _globals['_INVOICELINEITEM']._serialized_end=1194
49
51
  _globals['_INVOICELINEITEM_DIMENSIONSENTRY']._serialized_start=1120
50
52
  _globals['_INVOICELINEITEM_DIMENSIONSENTRY']._serialized_end=1181
51
- _globals['_LISTINVOICESREQUEST']._serialized_start=1196
52
- _globals['_LISTINVOICESREQUEST']._serialized_end=1284
53
- _globals['_LISTINVOICESRESPONSE']._serialized_start=1287
54
- _globals['_LISTINVOICESRESPONSE']._serialized_end=1430
55
- _globals['_GETINVOICEREQUEST']._serialized_start=1432
56
- _globals['_GETINVOICEREQUEST']._serialized_end=1499
57
- _globals['_GETINVOICERESPONSE']._serialized_start=1501
58
- _globals['_GETINVOICERESPONSE']._serialized_end=1572
59
- _globals['_GETUPCOMINGINVOICEREQUEST']._serialized_start=1574
60
- _globals['_GETUPCOMINGINVOICEREQUEST']._serialized_end=1601
61
- _globals['_GETUPCOMINGINVOICERESPONSE']._serialized_start=1603
62
- _globals['_GETUPCOMINGINVOICERESPONSE']._serialized_end=1682
63
- _globals['_BILLINGSERVICE']._serialized_start=2049
64
- _globals['_BILLINGSERVICE']._serialized_end=2350
53
+ _globals['_BILLINGPROFILE']._serialized_start=1197
54
+ _globals['_BILLINGPROFILE']._serialized_end=1725
55
+ _globals['_BILLINGPAYMENTMETHOD']._serialized_start=1728
56
+ _globals['_BILLINGPAYMENTMETHOD']._serialized_end=1984
57
+ _globals['_BILLINGPORTALSESSION']._serialized_start=1986
58
+ _globals['_BILLINGPORTALSESSION']._serialized_end=2109
59
+ _globals['_LISTINVOICESREQUEST']._serialized_start=2111
60
+ _globals['_LISTINVOICESREQUEST']._serialized_end=2199
61
+ _globals['_LISTINVOICESRESPONSE']._serialized_start=2202
62
+ _globals['_LISTINVOICESRESPONSE']._serialized_end=2345
63
+ _globals['_GETINVOICEREQUEST']._serialized_start=2347
64
+ _globals['_GETINVOICEREQUEST']._serialized_end=2414
65
+ _globals['_GETINVOICERESPONSE']._serialized_start=2416
66
+ _globals['_GETINVOICERESPONSE']._serialized_end=2487
67
+ _globals['_GETUPCOMINGINVOICEREQUEST']._serialized_start=2489
68
+ _globals['_GETUPCOMINGINVOICEREQUEST']._serialized_end=2516
69
+ _globals['_GETUPCOMINGINVOICERESPONSE']._serialized_start=2518
70
+ _globals['_GETUPCOMINGINVOICERESPONSE']._serialized_end=2597
71
+ _globals['_GETBILLINGPROFILEREQUEST']._serialized_start=2599
72
+ _globals['_GETBILLINGPROFILEREQUEST']._serialized_end=2625
73
+ _globals['_GETBILLINGPROFILERESPONSE']._serialized_start=2627
74
+ _globals['_GETBILLINGPROFILERESPONSE']._serialized_end=2712
75
+ _globals['_CREATEBILLINGPORTALSESSIONREQUEST']._serialized_start=2714
76
+ _globals['_CREATEBILLINGPORTALSESSIONREQUEST']._serialized_end=2749
77
+ _globals['_CREATEBILLINGPORTALSESSIONRESPONSE']._serialized_start=2751
78
+ _globals['_CREATEBILLINGPORTALSESSIONRESPONSE']._serialized_end=2851
79
+ _globals['_BILLINGSERVICE']._serialized_start=3343
80
+ _globals['_BILLINGSERVICE']._serialized_end=3884
65
81
  # @@protoc_insertion_point(module_scope)
@@ -25,6 +25,12 @@ class InvoiceLineType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
25
25
  INVOICE_LINE_TYPE_FEE: _ClassVar[InvoiceLineType]
26
26
  INVOICE_LINE_TYPE_MIN_CHARGE: _ClassVar[InvoiceLineType]
27
27
  INVOICE_LINE_TYPE_ADJUSTMENT: _ClassVar[InvoiceLineType]
28
+
29
+ class PaymentMethodState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
30
+ __slots__ = ()
31
+ PAYMENT_METHOD_STATE_UNSPECIFIED: _ClassVar[PaymentMethodState]
32
+ PAYMENT_METHOD_STATE_NONE: _ClassVar[PaymentMethodState]
33
+ PAYMENT_METHOD_STATE_ON_FILE: _ClassVar[PaymentMethodState]
28
34
  INVOICE_STATUS_UNSPECIFIED: InvoiceStatus
29
35
  INVOICE_STATUS_DRAFT: InvoiceStatus
30
36
  INVOICE_STATUS_OPEN: InvoiceStatus
@@ -36,6 +42,9 @@ INVOICE_LINE_TYPE_USAGE: InvoiceLineType
36
42
  INVOICE_LINE_TYPE_FEE: InvoiceLineType
37
43
  INVOICE_LINE_TYPE_MIN_CHARGE: InvoiceLineType
38
44
  INVOICE_LINE_TYPE_ADJUSTMENT: InvoiceLineType
45
+ PAYMENT_METHOD_STATE_UNSPECIFIED: PaymentMethodState
46
+ PAYMENT_METHOD_STATE_NONE: PaymentMethodState
47
+ PAYMENT_METHOD_STATE_ON_FILE: PaymentMethodState
39
48
 
40
49
  class Invoice(_message.Message):
41
50
  __slots__ = ("id", "object", "org_id", "status", "period_start", "period_end", "currency", "subtotal_cents", "total_cents", "provider_invoice_number", "finalized_at", "paid_at", "line_items", "created_at")
@@ -94,6 +103,56 @@ class InvoiceLineItem(_message.Message):
94
103
  dimensions: _containers.ScalarMap[str, str]
95
104
  def __init__(self, id: _Optional[str] = ..., line_type: _Optional[_Union[InvoiceLineType, str]] = ..., description: _Optional[str] = ..., quantity: _Optional[float] = ..., unit: _Optional[str] = ..., amount_cents: _Optional[int] = ..., dimensions: _Optional[_Mapping[str, str]] = ...) -> None: ...
96
105
 
106
+ class BillingProfile(_message.Message):
107
+ __slots__ = ("object", "org_id", "payment_method_state", "payment_methods", "billing_email", "standing", "grace_until", "standing_reason", "payment_method_required")
108
+ OBJECT_FIELD_NUMBER: _ClassVar[int]
109
+ ORG_ID_FIELD_NUMBER: _ClassVar[int]
110
+ PAYMENT_METHOD_STATE_FIELD_NUMBER: _ClassVar[int]
111
+ PAYMENT_METHODS_FIELD_NUMBER: _ClassVar[int]
112
+ BILLING_EMAIL_FIELD_NUMBER: _ClassVar[int]
113
+ STANDING_FIELD_NUMBER: _ClassVar[int]
114
+ GRACE_UNTIL_FIELD_NUMBER: _ClassVar[int]
115
+ STANDING_REASON_FIELD_NUMBER: _ClassVar[int]
116
+ PAYMENT_METHOD_REQUIRED_FIELD_NUMBER: _ClassVar[int]
117
+ object: str
118
+ org_id: str
119
+ payment_method_state: PaymentMethodState
120
+ payment_methods: _containers.RepeatedCompositeFieldContainer[BillingPaymentMethod]
121
+ billing_email: str
122
+ standing: _common_pb2.BillingStanding
123
+ grace_until: _timestamp_pb2.Timestamp
124
+ standing_reason: str
125
+ payment_method_required: bool
126
+ def __init__(self, object: _Optional[str] = ..., org_id: _Optional[str] = ..., payment_method_state: _Optional[_Union[PaymentMethodState, str]] = ..., payment_methods: _Optional[_Iterable[_Union[BillingPaymentMethod, _Mapping]]] = ..., billing_email: _Optional[str] = ..., standing: _Optional[_Union[_common_pb2.BillingStanding, str]] = ..., grace_until: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., standing_reason: _Optional[str] = ..., payment_method_required: bool = ...) -> None: ...
127
+
128
+ class BillingPaymentMethod(_message.Message):
129
+ __slots__ = ("id", "type", "brand", "last4", "exp_month", "exp_year", "is_default")
130
+ ID_FIELD_NUMBER: _ClassVar[int]
131
+ TYPE_FIELD_NUMBER: _ClassVar[int]
132
+ BRAND_FIELD_NUMBER: _ClassVar[int]
133
+ LAST4_FIELD_NUMBER: _ClassVar[int]
134
+ EXP_MONTH_FIELD_NUMBER: _ClassVar[int]
135
+ EXP_YEAR_FIELD_NUMBER: _ClassVar[int]
136
+ IS_DEFAULT_FIELD_NUMBER: _ClassVar[int]
137
+ id: str
138
+ type: str
139
+ brand: str
140
+ last4: str
141
+ exp_month: int
142
+ exp_year: int
143
+ is_default: bool
144
+ def __init__(self, id: _Optional[str] = ..., type: _Optional[str] = ..., brand: _Optional[str] = ..., last4: _Optional[str] = ..., exp_month: _Optional[int] = ..., exp_year: _Optional[int] = ..., is_default: bool = ...) -> None: ...
145
+
146
+ class BillingPortalSession(_message.Message):
147
+ __slots__ = ("object", "url", "expires_at")
148
+ OBJECT_FIELD_NUMBER: _ClassVar[int]
149
+ URL_FIELD_NUMBER: _ClassVar[int]
150
+ EXPIRES_AT_FIELD_NUMBER: _ClassVar[int]
151
+ object: str
152
+ url: str
153
+ expires_at: _timestamp_pb2.Timestamp
154
+ def __init__(self, object: _Optional[str] = ..., url: _Optional[str] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
155
+
97
156
  class ListInvoicesRequest(_message.Message):
98
157
  __slots__ = ("pagination",)
99
158
  PAGINATION_FIELD_NUMBER: _ClassVar[int]
@@ -129,3 +188,23 @@ class GetUpcomingInvoiceResponse(_message.Message):
129
188
  INVOICE_FIELD_NUMBER: _ClassVar[int]
130
189
  invoice: Invoice
131
190
  def __init__(self, invoice: _Optional[_Union[Invoice, _Mapping]] = ...) -> None: ...
191
+
192
+ class GetBillingProfileRequest(_message.Message):
193
+ __slots__ = ()
194
+ def __init__(self) -> None: ...
195
+
196
+ class GetBillingProfileResponse(_message.Message):
197
+ __slots__ = ("profile",)
198
+ PROFILE_FIELD_NUMBER: _ClassVar[int]
199
+ profile: BillingProfile
200
+ def __init__(self, profile: _Optional[_Union[BillingProfile, _Mapping]] = ...) -> None: ...
201
+
202
+ class CreateBillingPortalSessionRequest(_message.Message):
203
+ __slots__ = ()
204
+ def __init__(self) -> None: ...
205
+
206
+ class CreateBillingPortalSessionResponse(_message.Message):
207
+ __slots__ = ("session",)
208
+ SESSION_FIELD_NUMBER: _ClassVar[int]
209
+ session: BillingPortalSession
210
+ def __init__(self, session: _Optional[_Union[BillingPortalSession, _Mapping]] = ...) -> None: ...
@@ -25,7 +25,7 @@ _sym_db = _symbol_database.Default()
25
25
  from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
26
26
 
27
27
 
28
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1btranscodely/v1/common.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\"m\n\x11PaginationRequest\x12\x1f\n\x05limit\x18\x01 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor\x12\x1f\n\x06offset\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"t\n\x12PaginationResponse\x12\x1f\n\x0bnext_cursor\x18\x01 \x01(\tR\nnextCursor\x12-\n\x0btotal_count\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00H\x00R\ntotalCount\x88\x01\x01\x42\x0e\n\x0c_total_count\"\x87\x01\n\x0c\x45rrorDetails\x12\x12\n\x04\x63ode\x18\x01 \x01(\tR\x04\x63ode\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12I\n\x10\x66ield_violations\x18\x03 \x03(\x0b\x32\x1e.transcodely.v1.FieldViolationR\x0f\x66ieldViolations\"H\n\x0e\x46ieldViolation\x12\x14\n\x05\x66ield\x18\x01 \x01(\tR\x05\x66ield\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription*\x7f\n\nVideoCodec\x12\x1b\n\x17VIDEO_CODEC_UNSPECIFIED\x10\x00\x12\x14\n\x10VIDEO_CODEC_H264\x10\x01\x12\x14\n\x10VIDEO_CODEC_H265\x10\x02\x12\x13\n\x0fVIDEO_CODEC_VP9\x10\x03\x12\x13\n\x0fVIDEO_CODEC_AV1\x10\x04*i\n\nAudioCodec\x12\x1b\n\x17\x41UDIO_CODEC_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x41UDIO_CODEC_AAC\x10\x01\x12\x14\n\x10\x41UDIO_CODEC_OPUS\x10\x02\x12\x13\n\x0f\x41UDIO_CODEC_MP3\x10\x03*\x85\x01\n\tContainer\x12\x19\n\x15\x43ONTAINER_UNSPECIFIED\x10\x00\x12\x11\n\rCONTAINER_MP4\x10\x01\x12\x12\n\x0e\x43ONTAINER_WEBM\x10\x02\x12\x11\n\rCONTAINER_MKV\x10\x03\x12\x10\n\x0c\x43ONTAINER_TS\x10\x04\x12\x11\n\rCONTAINER_MOV\x10\x05*\xaa\x01\n\nResolution\x12\x1a\n\x16RESOLUTION_UNSPECIFIED\x10\x00\x12\x13\n\x0fRESOLUTION_480P\x10\x01\x12\x13\n\x0fRESOLUTION_720P\x10\x02\x12\x14\n\x10RESOLUTION_1080P\x10\x03\x12\x14\n\x10RESOLUTION_1440P\x10\x04\x12\x14\n\x10RESOLUTION_2160P\x10\x05\x12\x14\n\x10RESOLUTION_4320P\x10\x06*z\n\x0bQualityTier\x12\x1c\n\x18QUALITY_TIER_UNSPECIFIED\x10\x00\x12\x18\n\x14QUALITY_TIER_ECONOMY\x10\x01\x12\x19\n\x15QUALITY_TIER_STANDARD\x10\x02\x12\x18\n\x14QUALITY_TIER_PREMIUM\x10\x03*\xd5\x01\n\x0cOutputFormat\x12\x1d\n\x19OUTPUT_FORMAT_UNSPECIFIED\x10\x00\x12\x15\n\x11OUTPUT_FORMAT_MP4\x10\x01\x12\x16\n\x12OUTPUT_FORMAT_WEBM\x10\x02\x12\x15\n\x11OUTPUT_FORMAT_MKV\x10\x03\x12\x15\n\x11OUTPUT_FORMAT_MOV\x10\x04\x12\x15\n\x11OUTPUT_FORMAT_HLS\x10\x05\x12\x16\n\x12OUTPUT_FORMAT_DASH\x10\x06\x12\x1a\n\x16OUTPUT_FORMAT_ADAPTIVE\x10\x07*\xc5\x01\n\x0b\x43ontentType\x12\x1c\n\x18\x43ONTENT_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11\x43ONTENT_TYPE_FILM\x10\x01\x12\x1a\n\x16\x43ONTENT_TYPE_ANIMATION\x10\x02\x12\x16\n\x12\x43ONTENT_TYPE_GRAIN\x10\x03\x12\x17\n\x13\x43ONTENT_TYPE_GAMING\x10\x04\x12\x17\n\x13\x43ONTENT_TYPE_SPORTS\x10\x05\x12\x1b\n\x17\x43ONTENT_TYPE_STILLIMAGE\x10\x06*\x9f\x01\n\x0e\x44\x65liveryFormat\x12\x1f\n\x1b\x44\x45LIVERY_FORMAT_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x44\x45LIVERY_FORMAT_PROGRESSIVE\x10\x01\x12\x17\n\x13\x44\x45LIVERY_FORMAT_HLS\x10\x02\x12\x18\n\x14\x44\x45LIVERY_FORMAT_DASH\x10\x03\x12\x18\n\x14\x44\x45LIVERY_FORMAT_CMAF\x10\x04*m\n\x0b\x42itrateMode\x12\x1c\n\x18\x42ITRATE_MODE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x42ITRATE_MODE_CRF\x10\x01\x12\x14\n\x10\x42ITRATE_MODE_CBR\x10\x02\x12\x14\n\x10\x42ITRATE_MODE_VBR\x10\x03\x62\x06proto3')
28
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1btranscodely/v1/common.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\"m\n\x11PaginationRequest\x12\x1f\n\x05limit\x18\x01 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor\x12\x1f\n\x06offset\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"t\n\x12PaginationResponse\x12\x1f\n\x0bnext_cursor\x18\x01 \x01(\tR\nnextCursor\x12-\n\x0btotal_count\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00H\x00R\ntotalCount\x88\x01\x01\x42\x0e\n\x0c_total_count\"\x87\x01\n\x0c\x45rrorDetails\x12\x12\n\x04\x63ode\x18\x01 \x01(\tR\x04\x63ode\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12I\n\x10\x66ield_violations\x18\x03 \x03(\x0b\x32\x1e.transcodely.v1.FieldViolationR\x0f\x66ieldViolations\"H\n\x0e\x46ieldViolation\x12\x14\n\x05\x66ield\x18\x01 \x01(\tR\x05\x66ield\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription*\x7f\n\nVideoCodec\x12\x1b\n\x17VIDEO_CODEC_UNSPECIFIED\x10\x00\x12\x14\n\x10VIDEO_CODEC_H264\x10\x01\x12\x14\n\x10VIDEO_CODEC_H265\x10\x02\x12\x13\n\x0fVIDEO_CODEC_VP9\x10\x03\x12\x13\n\x0fVIDEO_CODEC_AV1\x10\x04*i\n\nAudioCodec\x12\x1b\n\x17\x41UDIO_CODEC_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x41UDIO_CODEC_AAC\x10\x01\x12\x14\n\x10\x41UDIO_CODEC_OPUS\x10\x02\x12\x13\n\x0f\x41UDIO_CODEC_MP3\x10\x03*\x85\x01\n\tContainer\x12\x19\n\x15\x43ONTAINER_UNSPECIFIED\x10\x00\x12\x11\n\rCONTAINER_MP4\x10\x01\x12\x12\n\x0e\x43ONTAINER_WEBM\x10\x02\x12\x11\n\rCONTAINER_MKV\x10\x03\x12\x10\n\x0c\x43ONTAINER_TS\x10\x04\x12\x11\n\rCONTAINER_MOV\x10\x05*\xaa\x01\n\nResolution\x12\x1a\n\x16RESOLUTION_UNSPECIFIED\x10\x00\x12\x13\n\x0fRESOLUTION_480P\x10\x01\x12\x13\n\x0fRESOLUTION_720P\x10\x02\x12\x14\n\x10RESOLUTION_1080P\x10\x03\x12\x14\n\x10RESOLUTION_1440P\x10\x04\x12\x14\n\x10RESOLUTION_2160P\x10\x05\x12\x14\n\x10RESOLUTION_4320P\x10\x06*z\n\x0bQualityTier\x12\x1c\n\x18QUALITY_TIER_UNSPECIFIED\x10\x00\x12\x18\n\x14QUALITY_TIER_ECONOMY\x10\x01\x12\x19\n\x15QUALITY_TIER_STANDARD\x10\x02\x12\x18\n\x14QUALITY_TIER_PREMIUM\x10\x03*\xd5\x01\n\x0cOutputFormat\x12\x1d\n\x19OUTPUT_FORMAT_UNSPECIFIED\x10\x00\x12\x15\n\x11OUTPUT_FORMAT_MP4\x10\x01\x12\x16\n\x12OUTPUT_FORMAT_WEBM\x10\x02\x12\x15\n\x11OUTPUT_FORMAT_MKV\x10\x03\x12\x15\n\x11OUTPUT_FORMAT_MOV\x10\x04\x12\x15\n\x11OUTPUT_FORMAT_HLS\x10\x05\x12\x16\n\x12OUTPUT_FORMAT_DASH\x10\x06\x12\x1a\n\x16OUTPUT_FORMAT_ADAPTIVE\x10\x07*\xc5\x01\n\x0b\x43ontentType\x12\x1c\n\x18\x43ONTENT_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11\x43ONTENT_TYPE_FILM\x10\x01\x12\x1a\n\x16\x43ONTENT_TYPE_ANIMATION\x10\x02\x12\x16\n\x12\x43ONTENT_TYPE_GRAIN\x10\x03\x12\x17\n\x13\x43ONTENT_TYPE_GAMING\x10\x04\x12\x17\n\x13\x43ONTENT_TYPE_SPORTS\x10\x05\x12\x1b\n\x17\x43ONTENT_TYPE_STILLIMAGE\x10\x06*\x9f\x01\n\x0e\x44\x65liveryFormat\x12\x1f\n\x1b\x44\x45LIVERY_FORMAT_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x44\x45LIVERY_FORMAT_PROGRESSIVE\x10\x01\x12\x17\n\x13\x44\x45LIVERY_FORMAT_HLS\x10\x02\x12\x18\n\x14\x44\x45LIVERY_FORMAT_DASH\x10\x03\x12\x18\n\x14\x44\x45LIVERY_FORMAT_CMAF\x10\x04*m\n\x0b\x42itrateMode\x12\x1c\n\x18\x42ITRATE_MODE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x42ITRATE_MODE_CRF\x10\x01\x12\x14\n\x10\x42ITRATE_MODE_CBR\x10\x02\x12\x14\n\x10\x42ITRATE_MODE_VBR\x10\x03*\xa8\x01\n\x0f\x42illingStanding\x12 \n\x1c\x42ILLING_STANDING_UNSPECIFIED\x10\x00\x12\x19\n\x15\x42ILLING_STANDING_FREE\x10\x01\x12\x1b\n\x17\x42ILLING_STANDING_ACTIVE\x10\x02\x12\x1a\n\x16\x42ILLING_STANDING_GRACE\x10\x03\x12\x1f\n\x1b\x42ILLING_STANDING_DELINQUENT\x10\x04\x62\x06proto3')
29
29
 
30
30
  _globals = globals()
31
31
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -56,6 +56,8 @@ if not _descriptor._USE_C_DESCRIPTORS:
56
56
  _globals['_DELIVERYFORMAT']._serialized_end=1762
57
57
  _globals['_BITRATEMODE']._serialized_start=1764
58
58
  _globals['_BITRATEMODE']._serialized_end=1873
59
+ _globals['_BILLINGSTANDING']._serialized_start=1876
60
+ _globals['_BILLINGSTANDING']._serialized_end=2044
59
61
  _globals['_PAGINATIONREQUEST']._serialized_start=76
60
62
  _globals['_PAGINATIONREQUEST']._serialized_end=185
61
63
  _globals['_PAGINATIONRESPONSE']._serialized_start=187
@@ -83,6 +83,14 @@ class BitrateMode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
83
83
  BITRATE_MODE_CRF: _ClassVar[BitrateMode]
84
84
  BITRATE_MODE_CBR: _ClassVar[BitrateMode]
85
85
  BITRATE_MODE_VBR: _ClassVar[BitrateMode]
86
+
87
+ class BillingStanding(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
88
+ __slots__ = ()
89
+ BILLING_STANDING_UNSPECIFIED: _ClassVar[BillingStanding]
90
+ BILLING_STANDING_FREE: _ClassVar[BillingStanding]
91
+ BILLING_STANDING_ACTIVE: _ClassVar[BillingStanding]
92
+ BILLING_STANDING_GRACE: _ClassVar[BillingStanding]
93
+ BILLING_STANDING_DELINQUENT: _ClassVar[BillingStanding]
86
94
  VIDEO_CODEC_UNSPECIFIED: VideoCodec
87
95
  VIDEO_CODEC_H264: VideoCodec
88
96
  VIDEO_CODEC_H265: VideoCodec
@@ -133,6 +141,11 @@ BITRATE_MODE_UNSPECIFIED: BitrateMode
133
141
  BITRATE_MODE_CRF: BitrateMode
134
142
  BITRATE_MODE_CBR: BitrateMode
135
143
  BITRATE_MODE_VBR: BitrateMode
144
+ BILLING_STANDING_UNSPECIFIED: BillingStanding
145
+ BILLING_STANDING_FREE: BillingStanding
146
+ BILLING_STANDING_ACTIVE: BillingStanding
147
+ BILLING_STANDING_GRACE: BillingStanding
148
+ BILLING_STANDING_DELINQUENT: BillingStanding
136
149
 
137
150
  class PaginationRequest(_message.Message):
138
151
  __slots__ = ("limit", "cursor", "offset")
transcodely/v1/job_pb2.py CHANGED
@@ -40,7 +40,7 @@ from transcodely.v1 import hdr_pb2 as transcodely_dot_v1_dot_hdr__pb2
40
40
  from transcodely.v1 import content_aware_pb2 as transcodely_dot_v1_dot_content__aware__pb2
41
41
 
42
42
 
43
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18transcodely/v1/job.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\x1a\x1atranscodely/v1/media.proto\x1a\x1ftranscodely/v1/codec_h264.proto\x1a\x1ftranscodely/v1/codec_h265.proto\x1a\x1etranscodely/v1/codec_vp9.proto\x1a\x1etranscodely/v1/codec_av1.proto\x1a\x1btranscodely/v1/origin.proto\x1a\x1etranscodely/v1/streaming.proto\x1a\x1ftranscodely/v1/thumbnails.proto\x1a\x1etranscodely/v1/subtitles.proto\x1a\x1etranscodely/v1/watermark.proto\x1a\x18transcodely/v1/drm.proto\x1a\x18transcodely/v1/hdr.proto\x1a\"transcodely/v1/content_aware.proto\"\xe9\x01\n\x10\x41udioTrackConfig\x12\x30\n\x08language\x18\x01 \x01(\tB\x14\xbaH\x11r\x0c\x32\n^[a-z]{3}$\xc8\x01\x01R\x08language\x12\"\n\x05label\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x18@H\x00R\x05label\x88\x01\x01\x12\x31\n\x0csource_track\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x0f(\x00H\x01R\x0bsourceTrack\x88\x01\x01\x12\"\n\nis_default\x18\x04 \x01(\x08H\x02R\tisDefault\x88\x01\x01\x42\x08\n\x06_labelB\x0f\n\r_source_trackB\r\n\x0b_is_default\"\x94\x06\n\x0cVideoVariant\x12=\n\x05\x63odec\x18\x01 \x01(\x0e\x32\x1a.transcodely.v1.VideoCodecB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01R\x05\x63odec\x12\x44\n\nresolution\x18\x02 \x01(\x0e\x32\x1a.transcodely.v1.ResolutionB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nresolution\x12?\n\x07quality\x18\x03 \x01(\x0e\x32\x1b.transcodely.v1.QualityTierB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07quality\x12-\n\tframerate\x18\x04 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xf0\x01(\x00H\x00R\tframerate\x88\x01\x01\x12&\n\x05width\x18\x05 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\x80<(\x80\x01H\x01R\x05width\x88\x01\x01\x12(\n\x06height\x18\x06 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\xe0!(\x80\x01H\x02R\x06height\x88\x01\x01\x12*\n\x07\x62itrate\x18\x07 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\x80\xd3\x0e(dH\x03R\x07\x62itrate\x88\x01\x01\x12\x34\n\x04h264\x18\n \x01(\x0b\x32\x1b.transcodely.v1.H264OptionsH\x04R\x04h264\x88\x01\x01\x12\x34\n\x04h265\x18\x0b \x01(\x0b\x32\x1b.transcodely.v1.H265OptionsH\x05R\x04h265\x88\x01\x01\x12\x31\n\x03vp9\x18\x0c \x01(\x0b\x32\x1a.transcodely.v1.VP9OptionsH\x06R\x03vp9\x88\x01\x01\x12\x31\n\x03\x61v1\x18\r \x01(\x0b\x32\x1a.transcodely.v1.AV1OptionsH\x07R\x03\x61v1\x88\x01\x01\x12\x30\n\x03hdr\x18\x0e \x01(\x0b\x32\x19.transcodely.v1.HDRConfigH\x08R\x03hdr\x88\x01\x01\x42\x0c\n\n_framerateB\x08\n\x06_widthB\t\n\x07_heightB\n\n\x08_bitrateB\x07\n\x05_h264B\x07\n\x05_h265B\x06\n\x04_vp9B\x06\n\x04_av1B\x06\n\x04_hdrR\x0ch264_optionsR\x0ch265_optionsR\x0bvp9_optionsR\x0b\x61v1_options\"\xc3\x02\n\tHLSConfig\x12:\n\x08manifest\x18\x01 \x01(\tB\x19\xbaH\x16r\x14\x18@2\x10^[a-zA-Z0-9_-]+$H\x00R\x08manifest\x88\x01\x01\x12Q\n\x0esegment_format\x18\x02 \x01(\x0e\x32 .transcodely.v1.HLSSegmentFormatB\x08\xbaH\x05\x82\x01\x02\x10\x01R\rsegmentFormat\x12N\n\rplaylist_type\x18\x03 \x01(\x0e\x32\x1f.transcodely.v1.HLSPlaylistTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0cplaylistType\x12\x36\n\x0fvariant_pattern\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x01R\x0evariantPattern\x88\x01\x01\x42\x0b\n\t_manifestB\x12\n\x10_variant_pattern\"U\n\nDASHConfig\x12:\n\x08manifest\x18\x01 \x01(\tB\x19\xbaH\x16r\x14\x18@2\x10^[a-zA-Z0-9_-]+$H\x00R\x08manifest\x88\x01\x01\x42\x0b\n\t_manifest\"\xd1\x01\n\rSegmentConfig\x12*\n\x08\x64uration\x18\x01 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x1e(\x01H\x00R\x08\x64uration\x88\x01\x01\x12O\n\rgop_alignment\x18\x02 \x01(\x0e\x32 .transcodely.v1.GOPAlignmentModeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0cgopAlignment\x12)\n\x08gop_size\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\n(\x01H\x01R\x07gopSize\x88\x01\x01\x42\x0b\n\t_durationB\x0b\n\t_gop_size\"\xd5\x14\n\nOutputSpec\x12:\n\x04type\x18\x01 \x01(\x0e\x32\x1c.transcodely.v1.OutputFormatB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12<\n\x05video\x18\x02 \x03(\x0b\x32\x1c.transcodely.v1.VideoVariantB\x08\xbaH\x05\x92\x01\x02\x10\x14R\x05video\x12@\n\x05\x61udio\x18\x03 \x03(\x0b\x32 .transcodely.v1.AudioTrackConfigB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x05\x61udio\x12\x30\n\x03hls\x18\x04 \x01(\x0b\x32\x19.transcodely.v1.HLSConfigH\x00R\x03hls\x88\x01\x01\x12\x33\n\x04\x64\x61sh\x18\x05 \x01(\x0b\x32\x1a.transcodely.v1.DASHConfigH\x01R\x04\x64\x61sh\x88\x01\x01\x12>\n\x08segments\x18\x06 \x01(\x0b\x32\x1d.transcodely.v1.SegmentConfigH\x02R\x08segments\x88\x01\x01\x12\xce\x01\n\rpath_template\x18\x07 \x01(\tB\xa3\x01\xbaH\x9f\x01r\x03\x18\x80\x04\xba\x01\x96\x01\n\x1eoutput_spec.path_template_safe\x12\x35path_template must not start with `/` or contain `..`\x1a=this == \'\' || (!this.startsWith(\'/\') && !this.contains(\'..\'))H\x03R\x0cpathTemplate\x88\x01\x01\x12\'\n\x06preset\x18\n \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01H\x04R\x06preset\x88\x01\x01\x12P\n\x0fsubtitle_tracks\x18\x0b \x03(\x0b\x32\x1d.transcodely.v1.SubtitleTrackB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0esubtitleTracks\x12\x30\n\x03\x64rm\x18\x0c \x01(\x0b\x32\x19.transcodely.v1.DRMConfigH\x05R\x03\x64rm\x88\x01\x01\x12L\n\rcontent_aware\x18\r \x01(\x0b\x32\".transcodely.v1.ContentAwareConfigH\x06R\x0c\x63ontentAware\x88\x01\x01\x12<\n\rencoding_mode\x18\x0e \x01(\tB\x12\xbaH\x0fr\rR\x05\x66ixedR\x04\x61utoH\x07R\x0c\x65ncodingMode\x88\x01\x01\x12\x45\n\x17\x65\x66\x66\x65\x63tive_path_template\x18\x0f \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04H\x08R\x15\x65\x66\x66\x65\x63tivePathTemplate\x88\x01\x01\x12(\n\rdisable_audio\x18\x10 \x01(\x08H\tR\x0c\x64isableAudio\x88\x01\x01\x12\x42\n\twatermark\x18\x11 \x01(\x0b\x32\x1f.transcodely.v1.WatermarkConfigH\nR\twatermark\x88\x01\x01:\xea\n\xbaH\xe6\n\x1a\xd7\x02\n\x1coutput_spec.preset_or_inline\x12\x8e\x01\x65ither preset must be specified, or type with video[] array must be provided (or a captions-only output with extract/generate subtitle tracks)\x1a\xa5\x01has(this.preset) || (this.type != 0 && size(this.video) > 0) || (size(this.subtitle_tracks) > 0 && this.subtitle_tracks.all(t, t.operation == 4 || t.operation == 5))\x1a\xdf\x01\n\x1aoutput_spec.video_required\x12,video[] array must have at least one variant\x1a\x92\x01has(this.preset) || size(this.video) >= 1 || (size(this.subtitle_tracks) > 0 && this.subtitle_tracks.all(t, t.operation == 4 || t.operation == 5))\x1a\xb2\x01\n#output_spec.audio_require_streaming\x12>audio is only valid for HLS, DASH, or ADAPTIVE streaming types\x1aKsize(this.audio) == 0 || this.type == 5 || this.type == 6 || this.type == 7\x1a\x85\x01\n\x1boutput_spec.hls_config_type\x12\x32hls config is only valid for HLS or ADAPTIVE types\x1a\x32!has(this.hls) || this.type == 5 || this.type == 7\x1a\x89\x01\n\x1coutput_spec.dash_config_type\x12\x34\x64\x61sh config is only valid for DASH or ADAPTIVE types\x1a\x33!has(this.dash) || this.type == 6 || this.type == 7\x1a\xad\x01\n output_spec.segments_config_type\x12>segments config is only valid for HLS, DASH, or ADAPTIVE types\x1aI!has(this.segments) || this.type == 5 || this.type == 6 || this.type == 7\x1a\xae\x01\n#output_spec.disable_audio_no_tracks\x12=disable_audio cannot be combined with explicit audio[] tracks\x1aH!has(this.disable_audio) || !this.disable_audio || size(this.audio) == 0B\x06\n\x04_hlsB\x07\n\x05_dashB\x0b\n\t_segmentsB\x10\n\x0e_path_templateB\t\n\x07_presetB\x06\n\x04_drmB\x10\n\x0e_content_awareB\x10\n\x0e_encoding_modeB\x1a\n\x18_effective_path_templateB\x10\n\x0e_disable_audioB\x0c\n\n_watermarkJ\x04\x08\x08\x10\tJ\x04\x08\t\x10\nR\tstreaming\"\xc7\x03\n\x0fPricingSnapshot\x12\x1d\n\nbase_price\x18\x01 \x01(\x01R\tbasePrice\x12)\n\x10\x63odec_multiplier\x18\x02 \x01(\x01R\x0f\x63odecMultiplier\x12\x33\n\x15resolution_multiplier\x18\x03 \x01(\x01R\x14resolutionMultiplier\x12\x31\n\x14\x66ramerate_multiplier\x18\x04 \x01(\x01R\x13\x66ramerateMultiplier\x12-\n\x12quality_multiplier\x18\x05 \x01(\x01R\x11qualityMultiplier\x12\x43\n\x0fresolution_tier\x18\x06 \x01(\x0e\x32\x1a.transcodely.v1.ResolutionR\x0eresolutionTier\x12)\n\x10\x61\x63tual_framerate\x18\x07 \x01(\x01R\x0f\x61\x63tualFramerate\x12$\n\x0bpixel_count\x18\x08 \x01(\x03H\x00R\npixelCount\x88\x01\x01\x12-\n\x12\x66\x65\x61ture_multiplier\x18\t \x01(\x01R\x11\x66\x65\x61tureMultiplierB\x0e\n\x0c_pixel_count\"\x9d\x07\n\x16VariantPricingSnapshot\x12\x14\n\x05index\x18\x01 \x01(\x05R\x05index\x12\x30\n\x05\x63odec\x18\x02 \x01(\x0e\x32\x1a.transcodely.v1.VideoCodecR\x05\x63odec\x12:\n\nresolution\x18\x03 \x01(\x0e\x32\x1a.transcodely.v1.ResolutionR\nresolution\x12\x1c\n\tframerate\x18\x04 \x01(\x05R\tframerate\x12\x35\n\x07quality\x18\x05 \x01(\x0e\x32\x1b.transcodely.v1.QualityTierR\x07quality\x12\x19\n\x05width\x18\x06 \x01(\x05H\x00R\x05width\x88\x01\x01\x12\x1b\n\x06height\x18\x07 \x01(\x05H\x01R\x06height\x88\x01\x01\x12\x1d\n\nbase_price\x18\n \x01(\x01R\tbasePrice\x12)\n\x10\x63odec_multiplier\x18\x0b \x01(\x01R\x0f\x63odecMultiplier\x12\x33\n\x15resolution_multiplier\x18\x0c \x01(\x01R\x14resolutionMultiplier\x12\x31\n\x14\x66ramerate_multiplier\x18\r \x01(\x01R\x13\x66ramerateMultiplier\x12-\n\x12quality_multiplier\x18\x0e \x01(\x01R\x11qualityMultiplier\x12\x43\n\x0fresolution_tier\x18\x0f \x01(\x0e\x32\x1a.transcodely.v1.ResolutionR\x0eresolutionTier\x12)\n\x10\x61\x63tual_framerate\x18\x10 \x01(\x01R\x0f\x61\x63tualFramerate\x12$\n\x0bpixel_count\x18\x11 \x01(\x03H\x02R\npixelCount\x88\x01\x01\x12*\n\x0e\x65stimated_cost\x18\x12 \x01(\x01H\x03R\restimatedCost\x88\x01\x01\x12$\n\x0b\x61\x63tual_cost\x18\x13 \x01(\x01H\x04R\nactualCost\x88\x01\x01\x12\x16\n\x06status\x18\x14 \x01(\tR\x06status\x12\x1a\n\x08progress\x18\x15 \x01(\x05R\x08progress\x12-\n\x12\x66\x65\x61ture_multiplier\x18\x16 \x01(\x01R\x11\x66\x65\x61tureMultiplierB\x08\n\x06_widthB\t\n\x07_heightB\x0e\n\x0c_pixel_countB\x11\n\x0f_estimated_costB\x0e\n\x0c_actual_cost\"\xee\n\n\tJobOutput\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12.\n\x04spec\x18\x02 \x01(\x0b\x32\x1a.transcodely.v1.OutputSpecR\x04spec\x12\x34\n\x06status\x18\x03 \x01(\x0e\x32\x1c.transcodely.v1.OutputStatusR\x06status\x12\x1a\n\x08progress\x18\x04 \x01(\x05R\x08progress\x12\"\n\noutput_url\x18\x05 \x01(\tH\x00R\toutputUrl\x88\x01\x01\x12/\n\x11output_size_bytes\x18\x06 \x01(\x03H\x01R\x0foutputSizeBytes\x88\x01\x01\x12.\n\x10\x64uration_seconds\x18\x07 \x01(\x03H\x02R\x0f\x64urationSeconds\x88\x01\x01\x12\x39\n\x07pricing\x18\x08 \x01(\x0b\x32\x1f.transcodely.v1.PricingSnapshotR\x07pricing\x12\x41\n\x1a\x65stimated_duration_seconds\x18\t \x01(\x03H\x03R\x18\x65stimatedDurationSeconds\x88\x01\x01\x12*\n\x0e\x65stimated_cost\x18\n \x01(\x01H\x04R\restimatedCost\x88\x01\x01\x12$\n\x0b\x61\x63tual_cost\x18\x0b \x01(\x01H\x05R\nactualCost\x88\x01\x01\x12\"\n\nerror_code\x18\x0c \x01(\tH\x06R\terrorCode\x88\x01\x01\x12(\n\rerror_message\x18\r \x01(\tH\x07R\x0c\x65rrorMessage\x88\x01\x01\x12>\n\nstarted_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x08R\tstartedAt\x88\x01\x01\x12\x42\n\x0c\x63ompleted_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampH\tR\x0b\x63ompletedAt\x88\x01\x01\x12 \n\tpreset_id\x18\x10 \x01(\tH\nR\x08presetId\x88\x01\x01\x12$\n\x0bpreset_slug\x18\x11 \x01(\tH\x0bR\npresetSlug\x88\x01\x01\x12O\n\x0fvariant_pricing\x18\x14 \x03(\x0b\x32&.transcodely.v1.VariantPricingSnapshotR\x0evariantPricing\x12\x16\n\x06object\x18\x15 \x01(\tR\x06object\x12\x19\n\x05width\x18\x16 \x01(\x05H\x0cR\x05width\x88\x01\x01\x12\x1b\n\x06height\x18\x17 \x01(\x05H\rR\x06height\x88\x01\x01\x12\x35\n\x14\x61verage_bitrate_kbps\x18\x18 \x01(\x05H\x0eR\x12\x61verageBitrateKbps\x88\x01\x01\x12L\n\x0fvariant_results\x18\x19 \x03(\x0b\x32#.transcodely.v1.OutputVariantResultR\x0evariantResults\x12\"\n\nsigned_url\x18\x1a \x01(\tH\x0fR\tsignedUrl\x88\x01\x01\x42\r\n\x0b_output_urlB\x14\n\x12_output_size_bytesB\x13\n\x11_duration_secondsB\x1d\n\x1b_estimated_duration_secondsB\x11\n\x0f_estimated_costB\x0e\n\x0c_actual_costB\r\n\x0b_error_codeB\x10\n\x0e_error_messageB\r\n\x0b_started_atB\x0f\n\r_completed_atB\x0c\n\n_preset_idB\x0e\n\x0c_preset_slugB\x08\n\x06_widthB\t\n\x07_heightB\x17\n\x15_average_bitrate_kbpsB\r\n\x0b_signed_url\"\xdc\x01\n\x13OutputVariantResult\x12\x14\n\x05index\x18\x01 \x01(\x05R\x05index\x12\x14\n\x05width\x18\x02 \x01(\x05R\x05width\x12\x16\n\x06height\x18\x03 \x01(\x05R\x06height\x12\x35\n\x14\x61verage_bitrate_kbps\x18\x04 \x01(\x05H\x00R\x12\x61verageBitrateKbps\x88\x01\x01\x12\"\n\nsize_bytes\x18\x05 \x01(\x03H\x01R\tsizeBytes\x88\x01\x01\x42\x17\n\x15_average_bitrate_kbpsB\r\n\x0b_size_bytes\"\x9c\x0c\n\x0f\x45xecutionTiming\x12$\n\x0binstance_id\x18\x01 \x01(\tH\x00R\ninstanceId\x88\x01\x01\x12(\n\rinstance_type\x18\x02 \x01(\tH\x01R\x0cinstanceType\x88\x01\x01\x12\x30\n\x11instance_location\x18\x03 \x01(\tH\x02R\x10instanceLocation\x88\x01\x01\x12\"\n\nvcpu_count\x18\x04 \x01(\x05H\x03R\tvcpuCount\x88\x01\x01\x12 \n\tmemory_mb\x18\x05 \x01(\x05H\x04R\x08memoryMb\x88\x01\x01\x12-\n\x10\x62oot_duration_ms\x18\n \x01(\x03H\x05R\x0e\x62ootDurationMs\x88\x01\x01\x12\x35\n\x14\x64ownload_duration_ms\x18\x0b \x01(\x03H\x06R\x12\x64ownloadDurationMs\x88\x01\x01\x12/\n\x11probe_duration_ms\x18\x0c \x01(\x03H\x07R\x0fprobeDurationMs\x88\x01\x01\x12\x31\n\x12\x65ncode_duration_ms\x18\r \x01(\x03H\x08R\x10\x65ncodeDurationMs\x88\x01\x01\x12\x31\n\x12upload_duration_ms\x18\x0e \x01(\x03H\tR\x10uploadDurationMs\x88\x01\x01\x12\x37\n\x15packaging_duration_ms\x18\x0f \x01(\x03H\nR\x13packagingDurationMs\x88\x01\x01\x12/\n\x11total_duration_ms\x18\x10 \x01(\x03H\x0bR\x0ftotalDurationMs\x88\x01\x01\x12*\n\x0e\x64ownload_bytes\x18\x14 \x01(\x03H\x0cR\rdownloadBytes\x88\x01\x01\x12\x33\n\x13\x64ownload_speed_mbps\x18\x15 \x01(\x01H\rR\x11\x64ownloadSpeedMbps\x88\x01\x01\x12&\n\x0cupload_bytes\x18\x16 \x01(\x03H\x0eR\x0buploadBytes\x88\x01\x01\x12/\n\x11upload_speed_mbps\x18\x17 \x01(\x01H\x0fR\x0fuploadSpeedMbps\x88\x01\x01\x12+\n\x0f\x61vg_cpu_percent\x18\x1e \x01(\x01H\x10R\ravgCpuPercent\x88\x01\x01\x12-\n\x10peak_cpu_percent\x18\x1f \x01(\x01H\x11R\x0epeakCpuPercent\x88\x01\x01\x12\'\n\ravg_memory_mb\x18 \x01(\x05H\x12R\x0b\x61vgMemoryMb\x88\x01\x01\x12)\n\x0epeak_memory_mb\x18! \x01(\x05H\x13R\x0cpeakMemoryMb\x88\x01\x01\x12$\n\x0b\x63hunk_count\x18( \x01(\x05H\x14R\nchunkCount\x88\x01\x01\x12*\n\x0e\x63hunk_strategy\x18) \x01(\tH\x15R\rchunkStrategy\x88\x01\x01\x12 \n\texit_code\x18\x32 \x01(\x05H\x16R\x08\x65xitCode\x88\x01\x01\x12$\n\x0b\x65xit_reason\x18\x33 \x01(\tH\x17R\nexitReason\x88\x01\x01\x42\x0e\n\x0c_instance_idB\x10\n\x0e_instance_typeB\x14\n\x12_instance_locationB\r\n\x0b_vcpu_countB\x0c\n\n_memory_mbB\x13\n\x11_boot_duration_msB\x17\n\x15_download_duration_msB\x14\n\x12_probe_duration_msB\x15\n\x13_encode_duration_msB\x15\n\x13_upload_duration_msB\x18\n\x16_packaging_duration_msB\x14\n\x12_total_duration_msB\x11\n\x0f_download_bytesB\x16\n\x14_download_speed_mbpsB\x0f\n\r_upload_bytesB\x14\n\x12_upload_speed_mbpsB\x12\n\x10_avg_cpu_percentB\x13\n\x11_peak_cpu_percentB\x10\n\x0e_avg_memory_mbB\x11\n\x0f_peak_memory_mbB\x0e\n\x0c_chunk_countB\x11\n\x0f_chunk_strategyB\x0c\n\n_exit_codeB\x0e\n\x0c_exit_reason\"\x9a\x11\n\x03Job\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x15\n\x06\x61pp_id\x18\x1d \x01(\tR\x05\x61ppId\x12\x1b\n\tinput_url\x18\x02 \x01(\tR\x08inputUrl\x12\x41\n\x0cinput_origin\x18\x16 \x01(\x0b\x32\x19.transcodely.v1.OriginRefH\x00R\x0binputOrigin\x88\x01\x01\x12\x43\n\routput_origin\x18\x17 \x01(\x0b\x32\x19.transcodely.v1.OriginRefH\x01R\x0coutputOrigin\x88\x01\x01\x12\x31\n\x06status\x18\x03 \x01(\x0e\x32\x19.transcodely.v1.JobStatusR\x06status\x12\x1a\n\x08progress\x18\x04 \x01(\x05R\x08progress\x12\x37\n\x08priority\x18\x05 \x01(\x0e\x32\x1b.transcodely.v1.JobPriorityR\x08priority\x12I\n\x0einput_metadata\x18\x06 \x01(\x0b\x32\x1d.transcodely.v1.InputMetadataH\x02R\rinputMetadata\x88\x01\x01\x12\x33\n\x07outputs\x18\x07 \x03(\x0b\x32\x19.transcodely.v1.JobOutputR\x07outputs\x12\x35\n\x14total_estimated_cost\x18\x08 \x01(\x01H\x03R\x12totalEstimatedCost\x88\x01\x01\x12/\n\x11total_actual_cost\x18\t \x01(\x01H\x04R\x0ftotalActualCost\x88\x01\x01\x12\"\n\nerror_code\x18\n \x01(\tH\x05R\terrorCode\x88\x01\x01\x12(\n\rerror_message\x18\x0b \x01(\tH\x06R\x0c\x65rrorMessage\x88\x01\x01\x12$\n\x0bwebhook_url\x18\x0c \x01(\tH\x07R\nwebhookUrl\x88\x01\x01\x12=\n\x08metadata\x18\r \x03(\x0b\x32!.transcodely.v1.Job.MetadataEntryR\x08metadata\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12<\n\tprobed_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x08R\x08probedAt\x88\x01\x01\x12>\n\nstarted_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\tR\tstartedAt\x88\x01\x01\x12\x42\n\x0c\x63ompleted_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\nR\x0b\x63ompletedAt\x88\x01\x01\x12#\n\rdelayed_start\x18\x13 \x01(\x08R\x0c\x64\x65layedStart\x12\x42\n\x0c\x63onfirmed_at\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x0bR\x0b\x63onfirmedAt\x88\x01\x01\x12\x1a\n\x08\x63urrency\x18\x15 \x01(\tR\x08\x63urrency\x12=\n\texecution\x18\x18 \x01(\x0b\x32\x1f.transcodely.v1.ExecutionTimingR\texecution\x12=\n\nthumbnails\x18\x19 \x03(\x0b\x32\x1d.transcodely.v1.ThumbnailSpecR\nthumbnails\x12L\n\x11thumbnail_results\x18\x1c \x03(\x0b\x32\x1f.transcodely.v1.ThumbnailResultR\x10thumbnailResults\x12I\n\x10subtitle_results\x18 \x03(\x0b\x32\x1e.transcodely.v1.SubtitleResultR\x0fsubtitleResults\x12\x35\n\x14output_path_template\x18\x1a \x01(\tH\x0cR\x12outputPathTemplate\x88\x01\x01\x12\x16\n\x06object\x18\x1b \x01(\tR\x06object\x12\x31\n\x12minimum_charge_eur\x18\x1e \x01(\x01H\rR\x10minimumChargeEur\x88\x01\x01\x12\x34\n\x16minimum_charge_applied\x18\x1f \x01(\x08R\x14minimumChargeApplied\x12*\n\x04\x66\x65\x65s\x18! \x03(\x0b\x32\x16.transcodely.v1.JobFeeR\x04\x66\x65\x65s\x12$\n\x0einput_video_id\x18\" \x01(\tR\x0cinputVideoId\x12\x46\n\x0f\x63hapter_results\x18# \x03(\x0b\x32\x1d.transcodely.v1.ChapterResultR\x0e\x63hapterResults\x12\x33\n\x04\x63lip\x18$ \x01(\x0b\x32\x1a.transcodely.v1.ClipConfigH\x0eR\x04\x63lip\x88\x01\x01\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0f\n\r_input_originB\x10\n\x0e_output_originB\x11\n\x0f_input_metadataB\x17\n\x15_total_estimated_costB\x14\n\x12_total_actual_costB\r\n\x0b_error_codeB\x10\n\x0e_error_messageB\x0e\n\x0c_webhook_urlB\x0c\n\n_probed_atB\r\n\x0b_started_atB\x0f\n\r_completed_atB\x0f\n\r_confirmed_atB\x17\n\x15_output_path_templateB\x15\n\x13_minimum_charge_eurB\x07\n\x05_clip\"\xbd\x01\n\x06JobFee\x12\x19\n\x08\x66\x65\x65_type\x18\x01 \x01(\tR\x07\x66\x65\x65Type\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription\x12\x12\n\x04unit\x18\x03 \x01(\tR\x04unit\x12\x1a\n\x08quantity\x18\x04 \x01(\x01R\x08quantity\x12\x12\n\x04rate\x18\x05 \x01(\x01R\x04rate\x12\x16\n\x06\x61mount\x18\x06 \x01(\x01R\x06\x61mount\x12\x1a\n\x08\x63urrency\x18\x07 \x01(\tR\x08\x63urrency\"\xdf\x03\n\nClipConfig\x12\x89\x01\n\rstart_seconds\x18\x01 \x01(\x01\x42\x64\xbaHa\x12\x0b)\x00\x00\x00\x00\x00\x00\x00\x00@\x01\xba\x01Q\n\x13\x63lip.start_storable\x12&start_seconds must be at most 10000000\x1a\x12this <= 10000000.0R\x0cstartSeconds\x12\x81\x01\n\x0b\x65nd_seconds\x18\x02 \x01(\x01\x42`\xbaH]\x12\x0b)\x00\x00\x00\x00\x00\x00\x00\x00@\x01\xba\x01M\n\x11\x63lip.end_storable\x12$end_seconds must be at most 10000000\x1a\x12this <= 10000000.0R\nendSeconds:\xc0\x01\xbaH\xbc\x01\x1a\xb9\x01\n\x14\x63lip.end_after_start\x12Vend_seconds must be at least 0.001s greater than start_seconds (or 0 for end of input)\x1aIthis.end_seconds == 0.0 || this.end_seconds - this.start_seconds >= 0.001\"\xd2\x10\n\x10\x43reateJobRequest\x12?\n\tinput_url\x18\x01 \x01(\tB\"\xbaH\x1fr\x1a\x18\x80\x10\x32\x15^(gs|s3|https?)://.*$\xd8\x01\x01R\x08inputUrl\x12H\n\x0finput_origin_id\x18\t \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^ori_[a-zA-Z0-9_-]+$H\x00R\rinputOriginId\x88\x01\x01\x12,\n\ninput_path\x18\n \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x10H\x01R\tinputPath\x88\x01\x01\x12H\n\x0einput_video_id\x18\r \x01(\tB\x1d\xbaH\x1ar\x18\x18 2\x14^vid_[a-zA-Z0-9_-]+$H\x02R\x0cinputVideoId\x88\x01\x01\x12J\n\x10output_origin_id\x18\x0b \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^ori_[a-zA-Z0-9_-]+$H\x03R\x0eoutputOriginId\x88\x01\x01\x12@\n\x07outputs\x18\x02 \x03(\x0b\x32\x1a.transcodely.v1.OutputSpecB\n\xbaH\x07\x92\x01\x04\x08\x01\x10\nR\x07outputs\x12\x41\n\x08priority\x18\x03 \x01(\x0e\x32\x1b.transcodely.v1.JobPriorityB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08priority\x12\x31\n\x0bwebhook_url\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\x18\x80\x10\x88\x01\x01H\x04R\nwebhookUrl\x88\x01\x01\x12\x36\n\x0fidempotency_key\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x05R\x0eidempotencyKey\x88\x01\x01\x12\x63\n\x08metadata\x18\x06 \x03(\x0b\x32..transcodely.v1.CreateJobRequest.MetadataEntryB\x17\xbaH\x14\x9a\x01\x11\x10\x14\"\x06r\x04\x10\x01\x18@*\x05r\x03\x18\x80\x08R\x08metadata\x12#\n\rdelayed_start\x18\x07 \x01(\x08R\x0c\x64\x65layedStart\x12G\n\nthumbnails\x18\x08 \x03(\x0b\x32\x1d.transcodely.v1.ThumbnailSpecB\x08\xbaH\x05\x92\x01\x02\x10\x05R\nthumbnails\x12\xe8\x01\n\x14output_path_template\x18\x0c \x01(\tB\xb0\x01\xbaH\xac\x01r\x03\x18\x80\x04\xba\x01\xa3\x01\n$create_job.output_path_template_safe\x12<output_path_template must not start with `/` or contain `..`\x1a=this == \'\' || (!this.startsWith(\'/\') && !this.contains(\'..\'))H\x06R\x12outputPathTemplate\x88\x01\x01\x12\x1d\n\x07managed\x18\x14 \x01(\x08H\x07R\x07managed\x88\x01\x01\x12\x37\n\x06\x61pp_id\x18\x15 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$H\x08R\x05\x61ppId\x88\x01\x01\x12\x33\n\x04\x63lip\x18\x16 \x01(\x0b\x32\x1a.transcodely.v1.ClipConfigH\tR\x04\x63lip\x88\x01\x01\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01:\xce\x05\xbaH\xca\x05\x1a\xf0\x02\n\x17\x63reate_job.input_source\x12Yexactly one input source must be specified: input_url, input_origin_id, or input_video_id\x1a\xf9\x01(this.input_url != \'\' && !has(this.input_origin_id) && !has(this.input_video_id)) || (this.input_url == \'\' && has(this.input_origin_id) && !has(this.input_video_id)) || (this.input_url == \'\' && !has(this.input_origin_id) && has(this.input_video_id))\x1a\x98\x01\n%create_job.input_path_requires_origin\x12;input_path can only be specified when using input_origin_id\x1a\x32!has(this.input_path) || has(this.input_origin_id)\x1a\xb9\x01\n!create_job.output_origin_required\x12\x35output_origin_id is required when managed is not true\x1a]has(this.output_origin_id) || (has(this.managed) && this.managed) || has(this.input_video_id)B\x12\n\x10_input_origin_idB\r\n\x0b_input_pathB\x11\n\x0f_input_video_idB\x13\n\x11_output_origin_idB\x0e\n\x0c_webhook_urlB\x12\n\x10_idempotency_keyB\x17\n\x15_output_path_templateB\n\n\x08_managedB\t\n\x07_app_idB\x07\n\x05_clip\"g\n\x11\x43reateJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\x12\x1e\n\x08video_id\x18\x05 \x01(\tH\x00R\x07videoId\x88\x01\x01\x42\x0b\n\t_video_id\"?\n\rGetJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"7\n\x0eGetJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\"\xfb\x04\n\x0fListJobsRequest\x12\x36\n\x06status\x18\x01 \x01(\x0e\x32\x19.transcodely.v1.JobStatusH\x00R\x06status\x88\x01\x01\x12\x41\n\npagination\x18\x02 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12\x37\n\x06\x61pp_id\x18\x03 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$H\x01R\x05\x61ppId\x88\x01\x01\x12\x44\n\rcreated_after\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02R\x0c\x63reatedAfter\x88\x01\x01\x12\x46\n\x0e\x63reated_before\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03R\rcreatedBefore\x88\x01\x01\x12J\n\x08statuses\x18\x06 \x03(\x0e\x32\x19.transcodely.v1.JobStatusB\x13\xbaH\x10\x92\x01\r\x10\x08\x18\x01\"\x07\x82\x01\x04\x10\x01 \x00R\x08statuses\x12\x62\n\x08metadata\x18\x07 \x03(\x0b\x32-.transcodely.v1.ListJobsRequest.MetadataEntryB\x17\xbaH\x14\x9a\x01\x11\x10\n\"\x06r\x04\x10\x01\x18@*\x05r\x03\x18\x80\x08R\x08metadata\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\t\n\x07_app_idB\x10\n\x0e_created_afterB\x11\n\x0f_created_before\"\x7f\n\x10ListJobsResponse\x12\'\n\x04jobs\x18\x01 \x03(\x0b\x32\x13.transcodely.v1.JobR\x04jobs\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"B\n\x10\x43\x61ncelJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\":\n\x11\x43\x61ncelJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\"C\n\x11\x43onfirmJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\";\n\x12\x43onfirmJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\"A\n\x0fWatchJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"\xac\x01\n\x10WatchJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\x12\x34\n\x05\x65vent\x18\x02 \x01(\x0e\x32\x1e.transcodely.v1.WatchEventTypeR\x05\x65vent\x12;\n\x0bserver_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nserverTime*\x90\x02\n\tJobStatus\x12\x1a\n\x16JOB_STATUS_UNSPECIFIED\x10\x00\x12\x16\n\x12JOB_STATUS_PENDING\x10\x01\x12\x16\n\x12JOB_STATUS_PROBING\x10\x02\x12\x19\n\x15JOB_STATUS_PROCESSING\x10\x03\x12\x18\n\x14JOB_STATUS_COMPLETED\x10\x04\x12\x15\n\x11JOB_STATUS_FAILED\x10\x05\x12\x17\n\x13JOB_STATUS_CANCELED\x10\x06\x12\x16\n\x12JOB_STATUS_PARTIAL\x10\x07\x12$\n JOB_STATUS_AWAITING_CONFIRMATION\x10\x08*\x14JOB_STATUS_CANCELLED*\xd2\x01\n\x0cOutputStatus\x12\x1d\n\x19OUTPUT_STATUS_UNSPECIFIED\x10\x00\x12\x19\n\x15OUTPUT_STATUS_PENDING\x10\x01\x12\x1c\n\x18OUTPUT_STATUS_PROCESSING\x10\x02\x12\x1b\n\x17OUTPUT_STATUS_COMPLETED\x10\x03\x12\x18\n\x14OUTPUT_STATUS_FAILED\x10\x04\x12\x1a\n\x16OUTPUT_STATUS_CANCELED\x10\x05*\x17OUTPUT_STATUS_CANCELLED*z\n\x0bJobPriority\x12\x1c\n\x18JOB_PRIORITY_UNSPECIFIED\x10\x00\x12\x18\n\x14JOB_PRIORITY_ECONOMY\x10\x01\x12\x19\n\x15JOB_PRIORITY_STANDARD\x10\x02\x12\x18\n\x14JOB_PRIORITY_PREMIUM\x10\x03*\xd4\x01\n\x0eWatchEventType\x12 \n\x1cWATCH_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x1d\n\x19WATCH_EVENT_TYPE_SNAPSHOT\x10\x01\x12\x1d\n\x19WATCH_EVENT_TYPE_PROGRESS\x10\x02\x12\"\n\x1eWATCH_EVENT_TYPE_STATUS_CHANGE\x10\x03\x12\x1e\n\x1aWATCH_EVENT_TYPE_COMPLETED\x10\x04\x12\x1e\n\x1aWATCH_EVENT_TYPE_HEARTBEAT\x10\x05\x32\xdb\x03\n\nJobService\x12M\n\x06\x43reate\x12 .transcodely.v1.CreateJobRequest\x1a!.transcodely.v1.CreateJobResponse\x12\x44\n\x03Get\x12\x1d.transcodely.v1.GetJobRequest\x1a\x1e.transcodely.v1.GetJobResponse\x12I\n\x04List\x12\x1f.transcodely.v1.ListJobsRequest\x1a .transcodely.v1.ListJobsResponse\x12M\n\x06\x43\x61ncel\x12 .transcodely.v1.CancelJobRequest\x1a!.transcodely.v1.CancelJobResponse\x12P\n\x07\x43onfirm\x12!.transcodely.v1.ConfirmJobRequest\x1a\".transcodely.v1.ConfirmJobResponse\x12L\n\x05Watch\x12\x1f.transcodely.v1.WatchJobRequest\x1a .transcodely.v1.WatchJobResponse0\x01\x62\x06proto3')
43
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18transcodely/v1/job.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\x1a\x1atranscodely/v1/media.proto\x1a\x1ftranscodely/v1/codec_h264.proto\x1a\x1ftranscodely/v1/codec_h265.proto\x1a\x1etranscodely/v1/codec_vp9.proto\x1a\x1etranscodely/v1/codec_av1.proto\x1a\x1btranscodely/v1/origin.proto\x1a\x1etranscodely/v1/streaming.proto\x1a\x1ftranscodely/v1/thumbnails.proto\x1a\x1etranscodely/v1/subtitles.proto\x1a\x1etranscodely/v1/watermark.proto\x1a\x18transcodely/v1/drm.proto\x1a\x18transcodely/v1/hdr.proto\x1a\"transcodely/v1/content_aware.proto\"\xe9\x01\n\x10\x41udioTrackConfig\x12\x30\n\x08language\x18\x01 \x01(\tB\x14\xbaH\x11r\x0c\x32\n^[a-z]{3}$\xc8\x01\x01R\x08language\x12\"\n\x05label\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x18@H\x00R\x05label\x88\x01\x01\x12\x31\n\x0csource_track\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x0f(\x00H\x01R\x0bsourceTrack\x88\x01\x01\x12\"\n\nis_default\x18\x04 \x01(\x08H\x02R\tisDefault\x88\x01\x01\x42\x08\n\x06_labelB\x0f\n\r_source_trackB\r\n\x0b_is_default\"\x94\x06\n\x0cVideoVariant\x12=\n\x05\x63odec\x18\x01 \x01(\x0e\x32\x1a.transcodely.v1.VideoCodecB\x0b\xbaH\x08\x82\x01\x02\x10\x01\xc8\x01\x01R\x05\x63odec\x12\x44\n\nresolution\x18\x02 \x01(\x0e\x32\x1a.transcodely.v1.ResolutionB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nresolution\x12?\n\x07quality\x18\x03 \x01(\x0e\x32\x1b.transcodely.v1.QualityTierB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07quality\x12-\n\tframerate\x18\x04 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xf0\x01(\x00H\x00R\tframerate\x88\x01\x01\x12&\n\x05width\x18\x05 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\x80<(\x80\x01H\x01R\x05width\x88\x01\x01\x12(\n\x06height\x18\x06 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\xe0!(\x80\x01H\x02R\x06height\x88\x01\x01\x12*\n\x07\x62itrate\x18\x07 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\x80\xd3\x0e(dH\x03R\x07\x62itrate\x88\x01\x01\x12\x34\n\x04h264\x18\n \x01(\x0b\x32\x1b.transcodely.v1.H264OptionsH\x04R\x04h264\x88\x01\x01\x12\x34\n\x04h265\x18\x0b \x01(\x0b\x32\x1b.transcodely.v1.H265OptionsH\x05R\x04h265\x88\x01\x01\x12\x31\n\x03vp9\x18\x0c \x01(\x0b\x32\x1a.transcodely.v1.VP9OptionsH\x06R\x03vp9\x88\x01\x01\x12\x31\n\x03\x61v1\x18\r \x01(\x0b\x32\x1a.transcodely.v1.AV1OptionsH\x07R\x03\x61v1\x88\x01\x01\x12\x30\n\x03hdr\x18\x0e \x01(\x0b\x32\x19.transcodely.v1.HDRConfigH\x08R\x03hdr\x88\x01\x01\x42\x0c\n\n_framerateB\x08\n\x06_widthB\t\n\x07_heightB\n\n\x08_bitrateB\x07\n\x05_h264B\x07\n\x05_h265B\x06\n\x04_vp9B\x06\n\x04_av1B\x06\n\x04_hdrR\x0ch264_optionsR\x0ch265_optionsR\x0bvp9_optionsR\x0b\x61v1_options\"\xc3\x02\n\tHLSConfig\x12:\n\x08manifest\x18\x01 \x01(\tB\x19\xbaH\x16r\x14\x18@2\x10^[a-zA-Z0-9_-]+$H\x00R\x08manifest\x88\x01\x01\x12Q\n\x0esegment_format\x18\x02 \x01(\x0e\x32 .transcodely.v1.HLSSegmentFormatB\x08\xbaH\x05\x82\x01\x02\x10\x01R\rsegmentFormat\x12N\n\rplaylist_type\x18\x03 \x01(\x0e\x32\x1f.transcodely.v1.HLSPlaylistTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0cplaylistType\x12\x36\n\x0fvariant_pattern\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x01R\x0evariantPattern\x88\x01\x01\x42\x0b\n\t_manifestB\x12\n\x10_variant_pattern\"U\n\nDASHConfig\x12:\n\x08manifest\x18\x01 \x01(\tB\x19\xbaH\x16r\x14\x18@2\x10^[a-zA-Z0-9_-]+$H\x00R\x08manifest\x88\x01\x01\x42\x0b\n\t_manifest\"\xd1\x01\n\rSegmentConfig\x12*\n\x08\x64uration\x18\x01 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x1e(\x01H\x00R\x08\x64uration\x88\x01\x01\x12O\n\rgop_alignment\x18\x02 \x01(\x0e\x32 .transcodely.v1.GOPAlignmentModeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0cgopAlignment\x12)\n\x08gop_size\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\n(\x01H\x01R\x07gopSize\x88\x01\x01\x42\x0b\n\t_durationB\x0b\n\t_gop_size\"\xd5\x14\n\nOutputSpec\x12:\n\x04type\x18\x01 \x01(\x0e\x32\x1c.transcodely.v1.OutputFormatB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04type\x12<\n\x05video\x18\x02 \x03(\x0b\x32\x1c.transcodely.v1.VideoVariantB\x08\xbaH\x05\x92\x01\x02\x10\x14R\x05video\x12@\n\x05\x61udio\x18\x03 \x03(\x0b\x32 .transcodely.v1.AudioTrackConfigB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x05\x61udio\x12\x30\n\x03hls\x18\x04 \x01(\x0b\x32\x19.transcodely.v1.HLSConfigH\x00R\x03hls\x88\x01\x01\x12\x33\n\x04\x64\x61sh\x18\x05 \x01(\x0b\x32\x1a.transcodely.v1.DASHConfigH\x01R\x04\x64\x61sh\x88\x01\x01\x12>\n\x08segments\x18\x06 \x01(\x0b\x32\x1d.transcodely.v1.SegmentConfigH\x02R\x08segments\x88\x01\x01\x12\xce\x01\n\rpath_template\x18\x07 \x01(\tB\xa3\x01\xbaH\x9f\x01r\x03\x18\x80\x04\xba\x01\x96\x01\n\x1eoutput_spec.path_template_safe\x12\x35path_template must not start with `/` or contain `..`\x1a=this == \'\' || (!this.startsWith(\'/\') && !this.contains(\'..\'))H\x03R\x0cpathTemplate\x88\x01\x01\x12\'\n\x06preset\x18\n \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01H\x04R\x06preset\x88\x01\x01\x12P\n\x0fsubtitle_tracks\x18\x0b \x03(\x0b\x32\x1d.transcodely.v1.SubtitleTrackB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0esubtitleTracks\x12\x30\n\x03\x64rm\x18\x0c \x01(\x0b\x32\x19.transcodely.v1.DRMConfigH\x05R\x03\x64rm\x88\x01\x01\x12L\n\rcontent_aware\x18\r \x01(\x0b\x32\".transcodely.v1.ContentAwareConfigH\x06R\x0c\x63ontentAware\x88\x01\x01\x12<\n\rencoding_mode\x18\x0e \x01(\tB\x12\xbaH\x0fr\rR\x05\x66ixedR\x04\x61utoH\x07R\x0c\x65ncodingMode\x88\x01\x01\x12\x45\n\x17\x65\x66\x66\x65\x63tive_path_template\x18\x0f \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04H\x08R\x15\x65\x66\x66\x65\x63tivePathTemplate\x88\x01\x01\x12(\n\rdisable_audio\x18\x10 \x01(\x08H\tR\x0c\x64isableAudio\x88\x01\x01\x12\x42\n\twatermark\x18\x11 \x01(\x0b\x32\x1f.transcodely.v1.WatermarkConfigH\nR\twatermark\x88\x01\x01:\xea\n\xbaH\xe6\n\x1a\xd7\x02\n\x1coutput_spec.preset_or_inline\x12\x8e\x01\x65ither preset must be specified, or type with video[] array must be provided (or a captions-only output with extract/generate subtitle tracks)\x1a\xa5\x01has(this.preset) || (this.type != 0 && size(this.video) > 0) || (size(this.subtitle_tracks) > 0 && this.subtitle_tracks.all(t, t.operation == 4 || t.operation == 5))\x1a\xdf\x01\n\x1aoutput_spec.video_required\x12,video[] array must have at least one variant\x1a\x92\x01has(this.preset) || size(this.video) >= 1 || (size(this.subtitle_tracks) > 0 && this.subtitle_tracks.all(t, t.operation == 4 || t.operation == 5))\x1a\xb2\x01\n#output_spec.audio_require_streaming\x12>audio is only valid for HLS, DASH, or ADAPTIVE streaming types\x1aKsize(this.audio) == 0 || this.type == 5 || this.type == 6 || this.type == 7\x1a\x85\x01\n\x1boutput_spec.hls_config_type\x12\x32hls config is only valid for HLS or ADAPTIVE types\x1a\x32!has(this.hls) || this.type == 5 || this.type == 7\x1a\x89\x01\n\x1coutput_spec.dash_config_type\x12\x34\x64\x61sh config is only valid for DASH or ADAPTIVE types\x1a\x33!has(this.dash) || this.type == 6 || this.type == 7\x1a\xad\x01\n output_spec.segments_config_type\x12>segments config is only valid for HLS, DASH, or ADAPTIVE types\x1aI!has(this.segments) || this.type == 5 || this.type == 6 || this.type == 7\x1a\xae\x01\n#output_spec.disable_audio_no_tracks\x12=disable_audio cannot be combined with explicit audio[] tracks\x1aH!has(this.disable_audio) || !this.disable_audio || size(this.audio) == 0B\x06\n\x04_hlsB\x07\n\x05_dashB\x0b\n\t_segmentsB\x10\n\x0e_path_templateB\t\n\x07_presetB\x06\n\x04_drmB\x10\n\x0e_content_awareB\x10\n\x0e_encoding_modeB\x1a\n\x18_effective_path_templateB\x10\n\x0e_disable_audioB\x0c\n\n_watermarkJ\x04\x08\x08\x10\tJ\x04\x08\t\x10\nR\tstreaming\"\xc7\x03\n\x0fPricingSnapshot\x12\x1d\n\nbase_price\x18\x01 \x01(\x01R\tbasePrice\x12)\n\x10\x63odec_multiplier\x18\x02 \x01(\x01R\x0f\x63odecMultiplier\x12\x33\n\x15resolution_multiplier\x18\x03 \x01(\x01R\x14resolutionMultiplier\x12\x31\n\x14\x66ramerate_multiplier\x18\x04 \x01(\x01R\x13\x66ramerateMultiplier\x12-\n\x12quality_multiplier\x18\x05 \x01(\x01R\x11qualityMultiplier\x12\x43\n\x0fresolution_tier\x18\x06 \x01(\x0e\x32\x1a.transcodely.v1.ResolutionR\x0eresolutionTier\x12)\n\x10\x61\x63tual_framerate\x18\x07 \x01(\x01R\x0f\x61\x63tualFramerate\x12$\n\x0bpixel_count\x18\x08 \x01(\x03H\x00R\npixelCount\x88\x01\x01\x12-\n\x12\x66\x65\x61ture_multiplier\x18\t \x01(\x01R\x11\x66\x65\x61tureMultiplierB\x0e\n\x0c_pixel_count\"\x9d\x07\n\x16VariantPricingSnapshot\x12\x14\n\x05index\x18\x01 \x01(\x05R\x05index\x12\x30\n\x05\x63odec\x18\x02 \x01(\x0e\x32\x1a.transcodely.v1.VideoCodecR\x05\x63odec\x12:\n\nresolution\x18\x03 \x01(\x0e\x32\x1a.transcodely.v1.ResolutionR\nresolution\x12\x1c\n\tframerate\x18\x04 \x01(\x05R\tframerate\x12\x35\n\x07quality\x18\x05 \x01(\x0e\x32\x1b.transcodely.v1.QualityTierR\x07quality\x12\x19\n\x05width\x18\x06 \x01(\x05H\x00R\x05width\x88\x01\x01\x12\x1b\n\x06height\x18\x07 \x01(\x05H\x01R\x06height\x88\x01\x01\x12\x1d\n\nbase_price\x18\n \x01(\x01R\tbasePrice\x12)\n\x10\x63odec_multiplier\x18\x0b \x01(\x01R\x0f\x63odecMultiplier\x12\x33\n\x15resolution_multiplier\x18\x0c \x01(\x01R\x14resolutionMultiplier\x12\x31\n\x14\x66ramerate_multiplier\x18\r \x01(\x01R\x13\x66ramerateMultiplier\x12-\n\x12quality_multiplier\x18\x0e \x01(\x01R\x11qualityMultiplier\x12\x43\n\x0fresolution_tier\x18\x0f \x01(\x0e\x32\x1a.transcodely.v1.ResolutionR\x0eresolutionTier\x12)\n\x10\x61\x63tual_framerate\x18\x10 \x01(\x01R\x0f\x61\x63tualFramerate\x12$\n\x0bpixel_count\x18\x11 \x01(\x03H\x02R\npixelCount\x88\x01\x01\x12*\n\x0e\x65stimated_cost\x18\x12 \x01(\x01H\x03R\restimatedCost\x88\x01\x01\x12$\n\x0b\x61\x63tual_cost\x18\x13 \x01(\x01H\x04R\nactualCost\x88\x01\x01\x12\x16\n\x06status\x18\x14 \x01(\tR\x06status\x12\x1a\n\x08progress\x18\x15 \x01(\x05R\x08progress\x12-\n\x12\x66\x65\x61ture_multiplier\x18\x16 \x01(\x01R\x11\x66\x65\x61tureMultiplierB\x08\n\x06_widthB\t\n\x07_heightB\x0e\n\x0c_pixel_countB\x11\n\x0f_estimated_costB\x0e\n\x0c_actual_cost\"\xee\n\n\tJobOutput\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12.\n\x04spec\x18\x02 \x01(\x0b\x32\x1a.transcodely.v1.OutputSpecR\x04spec\x12\x34\n\x06status\x18\x03 \x01(\x0e\x32\x1c.transcodely.v1.OutputStatusR\x06status\x12\x1a\n\x08progress\x18\x04 \x01(\x05R\x08progress\x12\"\n\noutput_url\x18\x05 \x01(\tH\x00R\toutputUrl\x88\x01\x01\x12/\n\x11output_size_bytes\x18\x06 \x01(\x03H\x01R\x0foutputSizeBytes\x88\x01\x01\x12.\n\x10\x64uration_seconds\x18\x07 \x01(\x03H\x02R\x0f\x64urationSeconds\x88\x01\x01\x12\x39\n\x07pricing\x18\x08 \x01(\x0b\x32\x1f.transcodely.v1.PricingSnapshotR\x07pricing\x12\x41\n\x1a\x65stimated_duration_seconds\x18\t \x01(\x03H\x03R\x18\x65stimatedDurationSeconds\x88\x01\x01\x12*\n\x0e\x65stimated_cost\x18\n \x01(\x01H\x04R\restimatedCost\x88\x01\x01\x12$\n\x0b\x61\x63tual_cost\x18\x0b \x01(\x01H\x05R\nactualCost\x88\x01\x01\x12\"\n\nerror_code\x18\x0c \x01(\tH\x06R\terrorCode\x88\x01\x01\x12(\n\rerror_message\x18\r \x01(\tH\x07R\x0c\x65rrorMessage\x88\x01\x01\x12>\n\nstarted_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x08R\tstartedAt\x88\x01\x01\x12\x42\n\x0c\x63ompleted_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampH\tR\x0b\x63ompletedAt\x88\x01\x01\x12 \n\tpreset_id\x18\x10 \x01(\tH\nR\x08presetId\x88\x01\x01\x12$\n\x0bpreset_slug\x18\x11 \x01(\tH\x0bR\npresetSlug\x88\x01\x01\x12O\n\x0fvariant_pricing\x18\x14 \x03(\x0b\x32&.transcodely.v1.VariantPricingSnapshotR\x0evariantPricing\x12\x16\n\x06object\x18\x15 \x01(\tR\x06object\x12\x19\n\x05width\x18\x16 \x01(\x05H\x0cR\x05width\x88\x01\x01\x12\x1b\n\x06height\x18\x17 \x01(\x05H\rR\x06height\x88\x01\x01\x12\x35\n\x14\x61verage_bitrate_kbps\x18\x18 \x01(\x05H\x0eR\x12\x61verageBitrateKbps\x88\x01\x01\x12L\n\x0fvariant_results\x18\x19 \x03(\x0b\x32#.transcodely.v1.OutputVariantResultR\x0evariantResults\x12\"\n\nsigned_url\x18\x1a \x01(\tH\x0fR\tsignedUrl\x88\x01\x01\x42\r\n\x0b_output_urlB\x14\n\x12_output_size_bytesB\x13\n\x11_duration_secondsB\x1d\n\x1b_estimated_duration_secondsB\x11\n\x0f_estimated_costB\x0e\n\x0c_actual_costB\r\n\x0b_error_codeB\x10\n\x0e_error_messageB\r\n\x0b_started_atB\x0f\n\r_completed_atB\x0c\n\n_preset_idB\x0e\n\x0c_preset_slugB\x08\n\x06_widthB\t\n\x07_heightB\x17\n\x15_average_bitrate_kbpsB\r\n\x0b_signed_url\"\xdc\x01\n\x13OutputVariantResult\x12\x14\n\x05index\x18\x01 \x01(\x05R\x05index\x12\x14\n\x05width\x18\x02 \x01(\x05R\x05width\x12\x16\n\x06height\x18\x03 \x01(\x05R\x06height\x12\x35\n\x14\x61verage_bitrate_kbps\x18\x04 \x01(\x05H\x00R\x12\x61verageBitrateKbps\x88\x01\x01\x12\"\n\nsize_bytes\x18\x05 \x01(\x03H\x01R\tsizeBytes\x88\x01\x01\x42\x17\n\x15_average_bitrate_kbpsB\r\n\x0b_size_bytes\"\x9c\x0c\n\x0f\x45xecutionTiming\x12$\n\x0binstance_id\x18\x01 \x01(\tH\x00R\ninstanceId\x88\x01\x01\x12(\n\rinstance_type\x18\x02 \x01(\tH\x01R\x0cinstanceType\x88\x01\x01\x12\x30\n\x11instance_location\x18\x03 \x01(\tH\x02R\x10instanceLocation\x88\x01\x01\x12\"\n\nvcpu_count\x18\x04 \x01(\x05H\x03R\tvcpuCount\x88\x01\x01\x12 \n\tmemory_mb\x18\x05 \x01(\x05H\x04R\x08memoryMb\x88\x01\x01\x12-\n\x10\x62oot_duration_ms\x18\n \x01(\x03H\x05R\x0e\x62ootDurationMs\x88\x01\x01\x12\x35\n\x14\x64ownload_duration_ms\x18\x0b \x01(\x03H\x06R\x12\x64ownloadDurationMs\x88\x01\x01\x12/\n\x11probe_duration_ms\x18\x0c \x01(\x03H\x07R\x0fprobeDurationMs\x88\x01\x01\x12\x31\n\x12\x65ncode_duration_ms\x18\r \x01(\x03H\x08R\x10\x65ncodeDurationMs\x88\x01\x01\x12\x31\n\x12upload_duration_ms\x18\x0e \x01(\x03H\tR\x10uploadDurationMs\x88\x01\x01\x12\x37\n\x15packaging_duration_ms\x18\x0f \x01(\x03H\nR\x13packagingDurationMs\x88\x01\x01\x12/\n\x11total_duration_ms\x18\x10 \x01(\x03H\x0bR\x0ftotalDurationMs\x88\x01\x01\x12*\n\x0e\x64ownload_bytes\x18\x14 \x01(\x03H\x0cR\rdownloadBytes\x88\x01\x01\x12\x33\n\x13\x64ownload_speed_mbps\x18\x15 \x01(\x01H\rR\x11\x64ownloadSpeedMbps\x88\x01\x01\x12&\n\x0cupload_bytes\x18\x16 \x01(\x03H\x0eR\x0buploadBytes\x88\x01\x01\x12/\n\x11upload_speed_mbps\x18\x17 \x01(\x01H\x0fR\x0fuploadSpeedMbps\x88\x01\x01\x12+\n\x0f\x61vg_cpu_percent\x18\x1e \x01(\x01H\x10R\ravgCpuPercent\x88\x01\x01\x12-\n\x10peak_cpu_percent\x18\x1f \x01(\x01H\x11R\x0epeakCpuPercent\x88\x01\x01\x12\'\n\ravg_memory_mb\x18 \x01(\x05H\x12R\x0b\x61vgMemoryMb\x88\x01\x01\x12)\n\x0epeak_memory_mb\x18! \x01(\x05H\x13R\x0cpeakMemoryMb\x88\x01\x01\x12$\n\x0b\x63hunk_count\x18( \x01(\x05H\x14R\nchunkCount\x88\x01\x01\x12*\n\x0e\x63hunk_strategy\x18) \x01(\tH\x15R\rchunkStrategy\x88\x01\x01\x12 \n\texit_code\x18\x32 \x01(\x05H\x16R\x08\x65xitCode\x88\x01\x01\x12$\n\x0b\x65xit_reason\x18\x33 \x01(\tH\x17R\nexitReason\x88\x01\x01\x42\x0e\n\x0c_instance_idB\x10\n\x0e_instance_typeB\x14\n\x12_instance_locationB\r\n\x0b_vcpu_countB\x0c\n\n_memory_mbB\x13\n\x11_boot_duration_msB\x17\n\x15_download_duration_msB\x14\n\x12_probe_duration_msB\x15\n\x13_encode_duration_msB\x15\n\x13_upload_duration_msB\x18\n\x16_packaging_duration_msB\x14\n\x12_total_duration_msB\x11\n\x0f_download_bytesB\x16\n\x14_download_speed_mbpsB\x0f\n\r_upload_bytesB\x14\n\x12_upload_speed_mbpsB\x12\n\x10_avg_cpu_percentB\x13\n\x11_peak_cpu_percentB\x10\n\x0e_avg_memory_mbB\x11\n\x0f_peak_memory_mbB\x0e\n\x0c_chunk_countB\x11\n\x0f_chunk_strategyB\x0c\n\n_exit_codeB\x0e\n\x0c_exit_reason\"\x98\x12\n\x03Job\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x15\n\x06\x61pp_id\x18\x1d \x01(\tR\x05\x61ppId\x12\x1b\n\tinput_url\x18\x02 \x01(\tR\x08inputUrl\x12\x41\n\x0cinput_origin\x18\x16 \x01(\x0b\x32\x19.transcodely.v1.OriginRefH\x00R\x0binputOrigin\x88\x01\x01\x12\x43\n\routput_origin\x18\x17 \x01(\x0b\x32\x19.transcodely.v1.OriginRefH\x01R\x0coutputOrigin\x88\x01\x01\x12\x31\n\x06status\x18\x03 \x01(\x0e\x32\x19.transcodely.v1.JobStatusR\x06status\x12\x1a\n\x08progress\x18\x04 \x01(\x05R\x08progress\x12\x37\n\x08priority\x18\x05 \x01(\x0e\x32\x1b.transcodely.v1.JobPriorityR\x08priority\x12I\n\x0einput_metadata\x18\x06 \x01(\x0b\x32\x1d.transcodely.v1.InputMetadataH\x02R\rinputMetadata\x88\x01\x01\x12\x33\n\x07outputs\x18\x07 \x03(\x0b\x32\x19.transcodely.v1.JobOutputR\x07outputs\x12\x35\n\x14total_estimated_cost\x18\x08 \x01(\x01H\x03R\x12totalEstimatedCost\x88\x01\x01\x12/\n\x11total_actual_cost\x18\t \x01(\x01H\x04R\x0ftotalActualCost\x88\x01\x01\x12\"\n\nerror_code\x18\n \x01(\tH\x05R\terrorCode\x88\x01\x01\x12(\n\rerror_message\x18\x0b \x01(\tH\x06R\x0c\x65rrorMessage\x88\x01\x01\x12$\n\x0bwebhook_url\x18\x0c \x01(\tH\x07R\nwebhookUrl\x88\x01\x01\x12=\n\x08metadata\x18\r \x03(\x0b\x32!.transcodely.v1.Job.MetadataEntryR\x08metadata\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12<\n\tprobed_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x08R\x08probedAt\x88\x01\x01\x12>\n\nstarted_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\tR\tstartedAt\x88\x01\x01\x12\x42\n\x0c\x63ompleted_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\nR\x0b\x63ompletedAt\x88\x01\x01\x12#\n\rdelayed_start\x18\x13 \x01(\x08R\x0c\x64\x65layedStart\x12\x42\n\x0c\x63onfirmed_at\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x0bR\x0b\x63onfirmedAt\x88\x01\x01\x12\x1a\n\x08\x63urrency\x18\x15 \x01(\tR\x08\x63urrency\x12=\n\texecution\x18\x18 \x01(\x0b\x32\x1f.transcodely.v1.ExecutionTimingR\texecution\x12=\n\nthumbnails\x18\x19 \x03(\x0b\x32\x1d.transcodely.v1.ThumbnailSpecR\nthumbnails\x12L\n\x11thumbnail_results\x18\x1c \x03(\x0b\x32\x1f.transcodely.v1.ThumbnailResultR\x10thumbnailResults\x12I\n\x10subtitle_results\x18 \x03(\x0b\x32\x1e.transcodely.v1.SubtitleResultR\x0fsubtitleResults\x12\x35\n\x14output_path_template\x18\x1a \x01(\tH\x0cR\x12outputPathTemplate\x88\x01\x01\x12\x16\n\x06object\x18\x1b \x01(\tR\x06object\x12\x35\n\x12minimum_charge_eur\x18\x1e \x01(\x01\x42\x02\x18\x01H\rR\x10minimumChargeEur\x88\x01\x01\x12\x38\n\x16minimum_charge_applied\x18\x1f \x01(\x08\x42\x02\x18\x01R\x14minimumChargeApplied\x12*\n\x04\x66\x65\x65s\x18! \x03(\x0b\x32\x16.transcodely.v1.JobFeeR\x04\x66\x65\x65s\x12$\n\x0einput_video_id\x18\" \x01(\tR\x0cinputVideoId\x12\x46\n\x0f\x63hapter_results\x18# \x03(\x0b\x32\x1d.transcodely.v1.ChapterResultR\x0e\x63hapterResults\x12\x33\n\x04\x63lip\x18$ \x01(\x0b\x32\x1a.transcodely.v1.ClipConfigH\x0eR\x04\x63lip\x88\x01\x01\x12\x1e\n\x08video_id\x18% \x01(\tH\x0fR\x07videoId\x88\x01\x01\x12G\n\x0e\x63ost_breakdown\x18& \x01(\x0b\x32 .transcodely.v1.JobCostBreakdownR\rcostBreakdown\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\x0f\n\r_input_originB\x10\n\x0e_output_originB\x11\n\x0f_input_metadataB\x17\n\x15_total_estimated_costB\x14\n\x12_total_actual_costB\r\n\x0b_error_codeB\x10\n\x0e_error_messageB\x0e\n\x0c_webhook_urlB\x0c\n\n_probed_atB\r\n\x0b_started_atB\x0f\n\r_completed_atB\x0f\n\r_confirmed_atB\x17\n\x15_output_path_templateB\x15\n\x13_minimum_charge_eurB\x07\n\x05_clipB\x0b\n\t_video_id\"\xcd\x01\n\x06JobFee\x12\x19\n\x08\x66\x65\x65_type\x18\x01 \x01(\tR\x07\x66\x65\x65Type\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription\x12\x12\n\x04unit\x18\x03 \x01(\tR\x04unit\x12\x1a\n\x08quantity\x18\x04 \x01(\x01R\x08quantity\x12\x12\n\x04rate\x18\x05 \x01(\x01R\x04rate\x12\x16\n\x06\x61mount\x18\x06 \x01(\x01R\x06\x61mount\x12\x1a\n\x08\x63urrency\x18\x07 \x01(\tR\x08\x63urrency\x12\x0e\n\x02id\x18\x08 \x01(\tR\x02id\"\x9e\x02\n\x0bJobCostLine\x12\x33\n\x04type\x18\x01 \x01(\x0e\x32\x1f.transcodely.v1.JobCostLineTypeR\x04type\x12!\n\x0creference_id\x18\x02 \x01(\tR\x0breferenceId\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x35\n\x14\x65stimated_amount_eur\x18\x04 \x01(\x01H\x00R\x12\x65stimatedAmountEur\x88\x01\x01\x12/\n\x11\x61\x63tual_amount_eur\x18\x05 \x01(\x01H\x01R\x0f\x61\x63tualAmountEur\x88\x01\x01\x42\x17\n\x15_estimated_amount_eurB\x14\n\x12_actual_amount_eur\"\xdc\x01\n\x10JobCostBreakdown\x12\x31\n\x05lines\x18\x01 \x03(\x0b\x32\x1b.transcodely.v1.JobCostLineR\x05lines\x12\x35\n\x14total_estimated_cost\x18\x02 \x01(\x01H\x00R\x12totalEstimatedCost\x88\x01\x01\x12/\n\x11total_actual_cost\x18\x03 \x01(\x01H\x01R\x0ftotalActualCost\x88\x01\x01\x42\x17\n\x15_total_estimated_costB\x14\n\x12_total_actual_cost\"\xdf\x03\n\nClipConfig\x12\x89\x01\n\rstart_seconds\x18\x01 \x01(\x01\x42\x64\xbaHa\x12\x0b)\x00\x00\x00\x00\x00\x00\x00\x00@\x01\xba\x01Q\n\x13\x63lip.start_storable\x12&start_seconds must be at most 10000000\x1a\x12this <= 10000000.0R\x0cstartSeconds\x12\x81\x01\n\x0b\x65nd_seconds\x18\x02 \x01(\x01\x42`\xbaH]\x12\x0b)\x00\x00\x00\x00\x00\x00\x00\x00@\x01\xba\x01M\n\x11\x63lip.end_storable\x12$end_seconds must be at most 10000000\x1a\x12this <= 10000000.0R\nendSeconds:\xc0\x01\xbaH\xbc\x01\x1a\xb9\x01\n\x14\x63lip.end_after_start\x12Vend_seconds must be at least 0.001s greater than start_seconds (or 0 for end of input)\x1aIthis.end_seconds == 0.0 || this.end_seconds - this.start_seconds >= 0.001\"\xd2\x10\n\x10\x43reateJobRequest\x12?\n\tinput_url\x18\x01 \x01(\tB\"\xbaH\x1fr\x1a\x18\x80\x10\x32\x15^(gs|s3|https?)://.*$\xd8\x01\x01R\x08inputUrl\x12H\n\x0finput_origin_id\x18\t \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^ori_[a-zA-Z0-9_-]+$H\x00R\rinputOriginId\x88\x01\x01\x12,\n\ninput_path\x18\n \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x10H\x01R\tinputPath\x88\x01\x01\x12H\n\x0einput_video_id\x18\r \x01(\tB\x1d\xbaH\x1ar\x18\x18 2\x14^vid_[a-zA-Z0-9_-]+$H\x02R\x0cinputVideoId\x88\x01\x01\x12J\n\x10output_origin_id\x18\x0b \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^ori_[a-zA-Z0-9_-]+$H\x03R\x0eoutputOriginId\x88\x01\x01\x12@\n\x07outputs\x18\x02 \x03(\x0b\x32\x1a.transcodely.v1.OutputSpecB\n\xbaH\x07\x92\x01\x04\x08\x01\x10\nR\x07outputs\x12\x41\n\x08priority\x18\x03 \x01(\x0e\x32\x1b.transcodely.v1.JobPriorityB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08priority\x12\x31\n\x0bwebhook_url\x18\x04 \x01(\tB\x0b\xbaH\x08r\x06\x18\x80\x10\x88\x01\x01H\x04R\nwebhookUrl\x88\x01\x01\x12\x36\n\x0fidempotency_key\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x05R\x0eidempotencyKey\x88\x01\x01\x12\x63\n\x08metadata\x18\x06 \x03(\x0b\x32..transcodely.v1.CreateJobRequest.MetadataEntryB\x17\xbaH\x14\x9a\x01\x11\x10\x14\"\x06r\x04\x10\x01\x18@*\x05r\x03\x18\x80\x08R\x08metadata\x12#\n\rdelayed_start\x18\x07 \x01(\x08R\x0c\x64\x65layedStart\x12G\n\nthumbnails\x18\x08 \x03(\x0b\x32\x1d.transcodely.v1.ThumbnailSpecB\x08\xbaH\x05\x92\x01\x02\x10\x05R\nthumbnails\x12\xe8\x01\n\x14output_path_template\x18\x0c \x01(\tB\xb0\x01\xbaH\xac\x01r\x03\x18\x80\x04\xba\x01\xa3\x01\n$create_job.output_path_template_safe\x12<output_path_template must not start with `/` or contain `..`\x1a=this == \'\' || (!this.startsWith(\'/\') && !this.contains(\'..\'))H\x06R\x12outputPathTemplate\x88\x01\x01\x12\x1d\n\x07managed\x18\x14 \x01(\x08H\x07R\x07managed\x88\x01\x01\x12\x37\n\x06\x61pp_id\x18\x15 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$H\x08R\x05\x61ppId\x88\x01\x01\x12\x33\n\x04\x63lip\x18\x16 \x01(\x0b\x32\x1a.transcodely.v1.ClipConfigH\tR\x04\x63lip\x88\x01\x01\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01:\xce\x05\xbaH\xca\x05\x1a\xf0\x02\n\x17\x63reate_job.input_source\x12Yexactly one input source must be specified: input_url, input_origin_id, or input_video_id\x1a\xf9\x01(this.input_url != \'\' && !has(this.input_origin_id) && !has(this.input_video_id)) || (this.input_url == \'\' && has(this.input_origin_id) && !has(this.input_video_id)) || (this.input_url == \'\' && !has(this.input_origin_id) && has(this.input_video_id))\x1a\x98\x01\n%create_job.input_path_requires_origin\x12;input_path can only be specified when using input_origin_id\x1a\x32!has(this.input_path) || has(this.input_origin_id)\x1a\xb9\x01\n!create_job.output_origin_required\x12\x35output_origin_id is required when managed is not true\x1a]has(this.output_origin_id) || (has(this.managed) && this.managed) || has(this.input_video_id)B\x12\n\x10_input_origin_idB\r\n\x0b_input_pathB\x11\n\x0f_input_video_idB\x13\n\x11_output_origin_idB\x0e\n\x0c_webhook_urlB\x12\n\x10_idempotency_keyB\x17\n\x15_output_path_templateB\n\n\x08_managedB\t\n\x07_app_idB\x07\n\x05_clip\"g\n\x11\x43reateJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\x12\x1e\n\x08video_id\x18\x05 \x01(\tH\x00R\x07videoId\x88\x01\x01\x42\x0b\n\t_video_id\"?\n\rGetJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"7\n\x0eGetJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\"\xfb\x04\n\x0fListJobsRequest\x12\x36\n\x06status\x18\x01 \x01(\x0e\x32\x19.transcodely.v1.JobStatusH\x00R\x06status\x88\x01\x01\x12\x41\n\npagination\x18\x02 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12\x37\n\x06\x61pp_id\x18\x03 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$H\x01R\x05\x61ppId\x88\x01\x01\x12\x44\n\rcreated_after\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02R\x0c\x63reatedAfter\x88\x01\x01\x12\x46\n\x0e\x63reated_before\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03R\rcreatedBefore\x88\x01\x01\x12J\n\x08statuses\x18\x06 \x03(\x0e\x32\x19.transcodely.v1.JobStatusB\x13\xbaH\x10\x92\x01\r\x10\x08\x18\x01\"\x07\x82\x01\x04\x10\x01 \x00R\x08statuses\x12\x62\n\x08metadata\x18\x07 \x03(\x0b\x32-.transcodely.v1.ListJobsRequest.MetadataEntryB\x17\xbaH\x14\x9a\x01\x11\x10\n\"\x06r\x04\x10\x01\x18@*\x05r\x03\x18\x80\x08R\x08metadata\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\x42\t\n\x07_statusB\t\n\x07_app_idB\x10\n\x0e_created_afterB\x11\n\x0f_created_before\"\x7f\n\x10ListJobsResponse\x12\'\n\x04jobs\x18\x01 \x03(\x0b\x32\x13.transcodely.v1.JobR\x04jobs\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"B\n\x10\x43\x61ncelJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\":\n\x11\x43\x61ncelJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\"C\n\x11\x43onfirmJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\";\n\x12\x43onfirmJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\"A\n\x0fWatchJobRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^job_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"\xac\x01\n\x10WatchJobResponse\x12%\n\x03job\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.JobR\x03job\x12\x34\n\x05\x65vent\x18\x02 \x01(\x0e\x32\x1e.transcodely.v1.WatchEventTypeR\x05\x65vent\x12;\n\x0bserver_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nserverTime*\x90\x02\n\tJobStatus\x12\x1a\n\x16JOB_STATUS_UNSPECIFIED\x10\x00\x12\x16\n\x12JOB_STATUS_PENDING\x10\x01\x12\x16\n\x12JOB_STATUS_PROBING\x10\x02\x12\x19\n\x15JOB_STATUS_PROCESSING\x10\x03\x12\x18\n\x14JOB_STATUS_COMPLETED\x10\x04\x12\x15\n\x11JOB_STATUS_FAILED\x10\x05\x12\x17\n\x13JOB_STATUS_CANCELED\x10\x06\x12\x16\n\x12JOB_STATUS_PARTIAL\x10\x07\x12$\n JOB_STATUS_AWAITING_CONFIRMATION\x10\x08*\x14JOB_STATUS_CANCELLED*\xd2\x01\n\x0cOutputStatus\x12\x1d\n\x19OUTPUT_STATUS_UNSPECIFIED\x10\x00\x12\x19\n\x15OUTPUT_STATUS_PENDING\x10\x01\x12\x1c\n\x18OUTPUT_STATUS_PROCESSING\x10\x02\x12\x1b\n\x17OUTPUT_STATUS_COMPLETED\x10\x03\x12\x18\n\x14OUTPUT_STATUS_FAILED\x10\x04\x12\x1a\n\x16OUTPUT_STATUS_CANCELED\x10\x05*\x17OUTPUT_STATUS_CANCELLED*z\n\x0bJobPriority\x12\x1c\n\x18JOB_PRIORITY_UNSPECIFIED\x10\x00\x12\x18\n\x14JOB_PRIORITY_ECONOMY\x10\x01\x12\x19\n\x15JOB_PRIORITY_STANDARD\x10\x02\x12\x18\n\x14JOB_PRIORITY_PREMIUM\x10\x03*\xd4\x01\n\x0eWatchEventType\x12 \n\x1cWATCH_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x1d\n\x19WATCH_EVENT_TYPE_SNAPSHOT\x10\x01\x12\x1d\n\x19WATCH_EVENT_TYPE_PROGRESS\x10\x02\x12\"\n\x1eWATCH_EVENT_TYPE_STATUS_CHANGE\x10\x03\x12\x1e\n\x1aWATCH_EVENT_TYPE_COMPLETED\x10\x04\x12\x1e\n\x1aWATCH_EVENT_TYPE_HEARTBEAT\x10\x05*\xba\x01\n\x0fJobCostLineType\x12\"\n\x1eJOB_COST_LINE_TYPE_UNSPECIFIED\x10\x00\x12\x1d\n\x19JOB_COST_LINE_TYPE_OUTPUT\x10\x01\x12%\n!JOB_COST_LINE_TYPE_MINIMUM_CHARGE\x10\x02\x12\x1a\n\x16JOB_COST_LINE_TYPE_FEE\x10\x03\x12!\n\x1dJOB_COST_LINE_TYPE_ADJUSTMENT\x10\x04\x32\xdb\x03\n\nJobService\x12M\n\x06\x43reate\x12 .transcodely.v1.CreateJobRequest\x1a!.transcodely.v1.CreateJobResponse\x12\x44\n\x03Get\x12\x1d.transcodely.v1.GetJobRequest\x1a\x1e.transcodely.v1.GetJobResponse\x12I\n\x04List\x12\x1f.transcodely.v1.ListJobsRequest\x1a .transcodely.v1.ListJobsResponse\x12M\n\x06\x43\x61ncel\x12 .transcodely.v1.CancelJobRequest\x1a!.transcodely.v1.CancelJobResponse\x12P\n\x07\x43onfirm\x12!.transcodely.v1.ConfirmJobRequest\x1a\".transcodely.v1.ConfirmJobResponse\x12L\n\x05Watch\x12\x1f.transcodely.v1.WatchJobRequest\x1a .transcodely.v1.WatchJobResponse0\x01\x62\x06proto3')
44
44
 
45
45
  _globals = globals()
46
46
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -103,6 +103,10 @@ if not _descriptor._USE_C_DESCRIPTORS:
103
103
  _globals['_OUTPUTSPEC']._serialized_options = b'\272H\346\n\032\327\002\n\034output_spec.preset_or_inline\022\216\001either preset must be specified, or type with video[] array must be provided (or a captions-only output with extract/generate subtitle tracks)\032\245\001has(this.preset) || (this.type != 0 && size(this.video) > 0) || (size(this.subtitle_tracks) > 0 && this.subtitle_tracks.all(t, t.operation == 4 || t.operation == 5))\032\337\001\n\032output_spec.video_required\022,video[] array must have at least one variant\032\222\001has(this.preset) || size(this.video) >= 1 || (size(this.subtitle_tracks) > 0 && this.subtitle_tracks.all(t, t.operation == 4 || t.operation == 5))\032\262\001\n#output_spec.audio_require_streaming\022>audio is only valid for HLS, DASH, or ADAPTIVE streaming types\032Ksize(this.audio) == 0 || this.type == 5 || this.type == 6 || this.type == 7\032\205\001\n\033output_spec.hls_config_type\0222hls config is only valid for HLS or ADAPTIVE types\0322!has(this.hls) || this.type == 5 || this.type == 7\032\211\001\n\034output_spec.dash_config_type\0224dash config is only valid for DASH or ADAPTIVE types\0323!has(this.dash) || this.type == 6 || this.type == 7\032\255\001\n output_spec.segments_config_type\022>segments config is only valid for HLS, DASH, or ADAPTIVE types\032I!has(this.segments) || this.type == 5 || this.type == 6 || this.type == 7\032\256\001\n#output_spec.disable_audio_no_tracks\022=disable_audio cannot be combined with explicit audio[] tracks\032H!has(this.disable_audio) || !this.disable_audio || size(this.audio) == 0'
104
104
  _globals['_JOB_METADATAENTRY']._loaded_options = None
105
105
  _globals['_JOB_METADATAENTRY']._serialized_options = b'8\001'
106
+ _globals['_JOB'].fields_by_name['minimum_charge_eur']._loaded_options = None
107
+ _globals['_JOB'].fields_by_name['minimum_charge_eur']._serialized_options = b'\030\001'
108
+ _globals['_JOB'].fields_by_name['minimum_charge_applied']._loaded_options = None
109
+ _globals['_JOB'].fields_by_name['minimum_charge_applied']._serialized_options = b'\030\001'
106
110
  _globals['_CLIPCONFIG'].fields_by_name['start_seconds']._loaded_options = None
107
111
  _globals['_CLIPCONFIG'].fields_by_name['start_seconds']._serialized_options = b'\272Ha\022\013)\000\000\000\000\000\000\000\000@\001\272\001Q\n\023clip.start_storable\022&start_seconds must be at most 10000000\032\022this <= 10000000.0'
108
112
  _globals['_CLIPCONFIG'].fields_by_name['end_seconds']._loaded_options = None
@@ -155,14 +159,16 @@ if not _descriptor._USE_C_DESCRIPTORS:
155
159
  _globals['_CONFIRMJOBREQUEST'].fields_by_name['id']._serialized_options = b'\272H\033r\0262\024^job_[a-zA-Z0-9_-]+$\310\001\001'
156
160
  _globals['_WATCHJOBREQUEST'].fields_by_name['id']._loaded_options = None
157
161
  _globals['_WATCHJOBREQUEST'].fields_by_name['id']._serialized_options = b'\272H\033r\0262\024^job_[a-zA-Z0-9_-]+$\310\001\001'
158
- _globals['_JOBSTATUS']._serialized_start=15915
159
- _globals['_JOBSTATUS']._serialized_end=16187
160
- _globals['_OUTPUTSTATUS']._serialized_start=16190
161
- _globals['_OUTPUTSTATUS']._serialized_end=16400
162
- _globals['_JOBPRIORITY']._serialized_start=16402
163
- _globals['_JOBPRIORITY']._serialized_end=16524
164
- _globals['_WATCHEVENTTYPE']._serialized_start=16527
165
- _globals['_WATCHEVENTTYPE']._serialized_end=16739
162
+ _globals['_JOBSTATUS']._serialized_start=16569
163
+ _globals['_JOBSTATUS']._serialized_end=16841
164
+ _globals['_OUTPUTSTATUS']._serialized_start=16844
165
+ _globals['_OUTPUTSTATUS']._serialized_end=17054
166
+ _globals['_JOBPRIORITY']._serialized_start=17056
167
+ _globals['_JOBPRIORITY']._serialized_end=17178
168
+ _globals['_WATCHEVENTTYPE']._serialized_start=17181
169
+ _globals['_WATCHEVENTTYPE']._serialized_end=17393
170
+ _globals['_JOBCOSTLINETYPE']._serialized_start=17396
171
+ _globals['_JOBCOSTLINETYPE']._serialized_end=17582
166
172
  _globals['_AUDIOTRACKCONFIG']._serialized_start=540
167
173
  _globals['_AUDIOTRACKCONFIG']._serialized_end=773
168
174
  _globals['_VIDEOVARIANT']._serialized_start=776
@@ -186,41 +192,45 @@ if not _descriptor._USE_C_DESCRIPTORS:
186
192
  _globals['_EXECUTIONTIMING']._serialized_start=7842
187
193
  _globals['_EXECUTIONTIMING']._serialized_end=9406
188
194
  _globals['_JOB']._serialized_start=9409
189
- _globals['_JOB']._serialized_end=11611
190
- _globals['_JOB_METADATAENTRY']._serialized_start=11282
191
- _globals['_JOB_METADATAENTRY']._serialized_end=11341
192
- _globals['_JOBFEE']._serialized_start=11614
193
- _globals['_JOBFEE']._serialized_end=11803
194
- _globals['_CLIPCONFIG']._serialized_start=11806
195
- _globals['_CLIPCONFIG']._serialized_end=12285
196
- _globals['_CREATEJOBREQUEST']._serialized_start=12288
197
- _globals['_CREATEJOBREQUEST']._serialized_end=14418
198
- _globals['_CREATEJOBREQUEST_METADATAENTRY']._serialized_start=11282
199
- _globals['_CREATEJOBREQUEST_METADATAENTRY']._serialized_end=11341
200
- _globals['_CREATEJOBRESPONSE']._serialized_start=14420
201
- _globals['_CREATEJOBRESPONSE']._serialized_end=14523
202
- _globals['_GETJOBREQUEST']._serialized_start=14525
203
- _globals['_GETJOBREQUEST']._serialized_end=14588
204
- _globals['_GETJOBRESPONSE']._serialized_start=14590
205
- _globals['_GETJOBRESPONSE']._serialized_end=14645
206
- _globals['_LISTJOBSREQUEST']._serialized_start=14648
207
- _globals['_LISTJOBSREQUEST']._serialized_end=15283
208
- _globals['_LISTJOBSREQUEST_METADATAENTRY']._serialized_start=11282
209
- _globals['_LISTJOBSREQUEST_METADATAENTRY']._serialized_end=11341
210
- _globals['_LISTJOBSRESPONSE']._serialized_start=15285
211
- _globals['_LISTJOBSRESPONSE']._serialized_end=15412
212
- _globals['_CANCELJOBREQUEST']._serialized_start=15414
213
- _globals['_CANCELJOBREQUEST']._serialized_end=15480
214
- _globals['_CANCELJOBRESPONSE']._serialized_start=15482
215
- _globals['_CANCELJOBRESPONSE']._serialized_end=15540
216
- _globals['_CONFIRMJOBREQUEST']._serialized_start=15542
217
- _globals['_CONFIRMJOBREQUEST']._serialized_end=15609
218
- _globals['_CONFIRMJOBRESPONSE']._serialized_start=15611
219
- _globals['_CONFIRMJOBRESPONSE']._serialized_end=15670
220
- _globals['_WATCHJOBREQUEST']._serialized_start=15672
221
- _globals['_WATCHJOBREQUEST']._serialized_end=15737
222
- _globals['_WATCHJOBRESPONSE']._serialized_start=15740
223
- _globals['_WATCHJOBRESPONSE']._serialized_end=15912
224
- _globals['_JOBSERVICE']._serialized_start=16742
225
- _globals['_JOBSERVICE']._serialized_end=17217
195
+ _globals['_JOB']._serialized_end=11737
196
+ _globals['_JOB_METADATAENTRY']._serialized_start=11395
197
+ _globals['_JOB_METADATAENTRY']._serialized_end=11454
198
+ _globals['_JOBFEE']._serialized_start=11740
199
+ _globals['_JOBFEE']._serialized_end=11945
200
+ _globals['_JOBCOSTLINE']._serialized_start=11948
201
+ _globals['_JOBCOSTLINE']._serialized_end=12234
202
+ _globals['_JOBCOSTBREAKDOWN']._serialized_start=12237
203
+ _globals['_JOBCOSTBREAKDOWN']._serialized_end=12457
204
+ _globals['_CLIPCONFIG']._serialized_start=12460
205
+ _globals['_CLIPCONFIG']._serialized_end=12939
206
+ _globals['_CREATEJOBREQUEST']._serialized_start=12942
207
+ _globals['_CREATEJOBREQUEST']._serialized_end=15072
208
+ _globals['_CREATEJOBREQUEST_METADATAENTRY']._serialized_start=11395
209
+ _globals['_CREATEJOBREQUEST_METADATAENTRY']._serialized_end=11454
210
+ _globals['_CREATEJOBRESPONSE']._serialized_start=15074
211
+ _globals['_CREATEJOBRESPONSE']._serialized_end=15177
212
+ _globals['_GETJOBREQUEST']._serialized_start=15179
213
+ _globals['_GETJOBREQUEST']._serialized_end=15242
214
+ _globals['_GETJOBRESPONSE']._serialized_start=15244
215
+ _globals['_GETJOBRESPONSE']._serialized_end=15299
216
+ _globals['_LISTJOBSREQUEST']._serialized_start=15302
217
+ _globals['_LISTJOBSREQUEST']._serialized_end=15937
218
+ _globals['_LISTJOBSREQUEST_METADATAENTRY']._serialized_start=11395
219
+ _globals['_LISTJOBSREQUEST_METADATAENTRY']._serialized_end=11454
220
+ _globals['_LISTJOBSRESPONSE']._serialized_start=15939
221
+ _globals['_LISTJOBSRESPONSE']._serialized_end=16066
222
+ _globals['_CANCELJOBREQUEST']._serialized_start=16068
223
+ _globals['_CANCELJOBREQUEST']._serialized_end=16134
224
+ _globals['_CANCELJOBRESPONSE']._serialized_start=16136
225
+ _globals['_CANCELJOBRESPONSE']._serialized_end=16194
226
+ _globals['_CONFIRMJOBREQUEST']._serialized_start=16196
227
+ _globals['_CONFIRMJOBREQUEST']._serialized_end=16263
228
+ _globals['_CONFIRMJOBRESPONSE']._serialized_start=16265
229
+ _globals['_CONFIRMJOBRESPONSE']._serialized_end=16324
230
+ _globals['_WATCHJOBREQUEST']._serialized_start=16326
231
+ _globals['_WATCHJOBREQUEST']._serialized_end=16391
232
+ _globals['_WATCHJOBRESPONSE']._serialized_start=16394
233
+ _globals['_WATCHJOBRESPONSE']._serialized_end=16566
234
+ _globals['_JOBSERVICE']._serialized_start=17585
235
+ _globals['_JOBSERVICE']._serialized_end=18060
226
236
  # @@protoc_insertion_point(module_scope)
@@ -58,6 +58,14 @@ class WatchEventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
58
58
  WATCH_EVENT_TYPE_STATUS_CHANGE: _ClassVar[WatchEventType]
59
59
  WATCH_EVENT_TYPE_COMPLETED: _ClassVar[WatchEventType]
60
60
  WATCH_EVENT_TYPE_HEARTBEAT: _ClassVar[WatchEventType]
61
+
62
+ class JobCostLineType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
63
+ __slots__ = ()
64
+ JOB_COST_LINE_TYPE_UNSPECIFIED: _ClassVar[JobCostLineType]
65
+ JOB_COST_LINE_TYPE_OUTPUT: _ClassVar[JobCostLineType]
66
+ JOB_COST_LINE_TYPE_MINIMUM_CHARGE: _ClassVar[JobCostLineType]
67
+ JOB_COST_LINE_TYPE_FEE: _ClassVar[JobCostLineType]
68
+ JOB_COST_LINE_TYPE_ADJUSTMENT: _ClassVar[JobCostLineType]
61
69
  JOB_STATUS_UNSPECIFIED: JobStatus
62
70
  JOB_STATUS_PENDING: JobStatus
63
71
  JOB_STATUS_PROBING: JobStatus
@@ -83,6 +91,11 @@ WATCH_EVENT_TYPE_PROGRESS: WatchEventType
83
91
  WATCH_EVENT_TYPE_STATUS_CHANGE: WatchEventType
84
92
  WATCH_EVENT_TYPE_COMPLETED: WatchEventType
85
93
  WATCH_EVENT_TYPE_HEARTBEAT: WatchEventType
94
+ JOB_COST_LINE_TYPE_UNSPECIFIED: JobCostLineType
95
+ JOB_COST_LINE_TYPE_OUTPUT: JobCostLineType
96
+ JOB_COST_LINE_TYPE_MINIMUM_CHARGE: JobCostLineType
97
+ JOB_COST_LINE_TYPE_FEE: JobCostLineType
98
+ JOB_COST_LINE_TYPE_ADJUSTMENT: JobCostLineType
86
99
 
87
100
  class AudioTrackConfig(_message.Message):
88
101
  __slots__ = ("language", "label", "source_track", "is_default")
@@ -371,7 +384,7 @@ class ExecutionTiming(_message.Message):
371
384
  def __init__(self, instance_id: _Optional[str] = ..., instance_type: _Optional[str] = ..., instance_location: _Optional[str] = ..., vcpu_count: _Optional[int] = ..., memory_mb: _Optional[int] = ..., boot_duration_ms: _Optional[int] = ..., download_duration_ms: _Optional[int] = ..., probe_duration_ms: _Optional[int] = ..., encode_duration_ms: _Optional[int] = ..., upload_duration_ms: _Optional[int] = ..., packaging_duration_ms: _Optional[int] = ..., total_duration_ms: _Optional[int] = ..., download_bytes: _Optional[int] = ..., download_speed_mbps: _Optional[float] = ..., upload_bytes: _Optional[int] = ..., upload_speed_mbps: _Optional[float] = ..., avg_cpu_percent: _Optional[float] = ..., peak_cpu_percent: _Optional[float] = ..., avg_memory_mb: _Optional[int] = ..., peak_memory_mb: _Optional[int] = ..., chunk_count: _Optional[int] = ..., chunk_strategy: _Optional[str] = ..., exit_code: _Optional[int] = ..., exit_reason: _Optional[str] = ...) -> None: ...
372
385
 
373
386
  class Job(_message.Message):
374
- __slots__ = ("id", "app_id", "input_url", "input_origin", "output_origin", "status", "progress", "priority", "input_metadata", "outputs", "total_estimated_cost", "total_actual_cost", "error_code", "error_message", "webhook_url", "metadata", "created_at", "updated_at", "probed_at", "started_at", "completed_at", "delayed_start", "confirmed_at", "currency", "execution", "thumbnails", "thumbnail_results", "subtitle_results", "output_path_template", "object", "minimum_charge_eur", "minimum_charge_applied", "fees", "input_video_id", "chapter_results", "clip")
387
+ __slots__ = ("id", "app_id", "input_url", "input_origin", "output_origin", "status", "progress", "priority", "input_metadata", "outputs", "total_estimated_cost", "total_actual_cost", "error_code", "error_message", "webhook_url", "metadata", "created_at", "updated_at", "probed_at", "started_at", "completed_at", "delayed_start", "confirmed_at", "currency", "execution", "thumbnails", "thumbnail_results", "subtitle_results", "output_path_template", "object", "minimum_charge_eur", "minimum_charge_applied", "fees", "input_video_id", "chapter_results", "clip", "video_id", "cost_breakdown")
375
388
  class MetadataEntry(_message.Message):
376
389
  __slots__ = ("key", "value")
377
390
  KEY_FIELD_NUMBER: _ClassVar[int]
@@ -415,6 +428,8 @@ class Job(_message.Message):
415
428
  INPUT_VIDEO_ID_FIELD_NUMBER: _ClassVar[int]
416
429
  CHAPTER_RESULTS_FIELD_NUMBER: _ClassVar[int]
417
430
  CLIP_FIELD_NUMBER: _ClassVar[int]
431
+ VIDEO_ID_FIELD_NUMBER: _ClassVar[int]
432
+ COST_BREAKDOWN_FIELD_NUMBER: _ClassVar[int]
418
433
  id: str
419
434
  app_id: str
420
435
  input_url: str
@@ -451,10 +466,12 @@ class Job(_message.Message):
451
466
  input_video_id: str
452
467
  chapter_results: _containers.RepeatedCompositeFieldContainer[_subtitles_pb2.ChapterResult]
453
468
  clip: ClipConfig
454
- def __init__(self, id: _Optional[str] = ..., app_id: _Optional[str] = ..., input_url: _Optional[str] = ..., input_origin: _Optional[_Union[_origin_pb2.OriginRef, _Mapping]] = ..., output_origin: _Optional[_Union[_origin_pb2.OriginRef, _Mapping]] = ..., status: _Optional[_Union[JobStatus, str]] = ..., progress: _Optional[int] = ..., priority: _Optional[_Union[JobPriority, str]] = ..., input_metadata: _Optional[_Union[_media_pb2.InputMetadata, _Mapping]] = ..., outputs: _Optional[_Iterable[_Union[JobOutput, _Mapping]]] = ..., total_estimated_cost: _Optional[float] = ..., total_actual_cost: _Optional[float] = ..., error_code: _Optional[str] = ..., error_message: _Optional[str] = ..., webhook_url: _Optional[str] = ..., metadata: _Optional[_Mapping[str, str]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., probed_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., started_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., completed_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., delayed_start: bool = ..., confirmed_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., currency: _Optional[str] = ..., execution: _Optional[_Union[ExecutionTiming, _Mapping]] = ..., thumbnails: _Optional[_Iterable[_Union[_thumbnails_pb2.ThumbnailSpec, _Mapping]]] = ..., thumbnail_results: _Optional[_Iterable[_Union[_thumbnails_pb2.ThumbnailResult, _Mapping]]] = ..., subtitle_results: _Optional[_Iterable[_Union[_subtitles_pb2.SubtitleResult, _Mapping]]] = ..., output_path_template: _Optional[str] = ..., object: _Optional[str] = ..., minimum_charge_eur: _Optional[float] = ..., minimum_charge_applied: bool = ..., fees: _Optional[_Iterable[_Union[JobFee, _Mapping]]] = ..., input_video_id: _Optional[str] = ..., chapter_results: _Optional[_Iterable[_Union[_subtitles_pb2.ChapterResult, _Mapping]]] = ..., clip: _Optional[_Union[ClipConfig, _Mapping]] = ...) -> None: ...
469
+ video_id: str
470
+ cost_breakdown: JobCostBreakdown
471
+ def __init__(self, id: _Optional[str] = ..., app_id: _Optional[str] = ..., input_url: _Optional[str] = ..., input_origin: _Optional[_Union[_origin_pb2.OriginRef, _Mapping]] = ..., output_origin: _Optional[_Union[_origin_pb2.OriginRef, _Mapping]] = ..., status: _Optional[_Union[JobStatus, str]] = ..., progress: _Optional[int] = ..., priority: _Optional[_Union[JobPriority, str]] = ..., input_metadata: _Optional[_Union[_media_pb2.InputMetadata, _Mapping]] = ..., outputs: _Optional[_Iterable[_Union[JobOutput, _Mapping]]] = ..., total_estimated_cost: _Optional[float] = ..., total_actual_cost: _Optional[float] = ..., error_code: _Optional[str] = ..., error_message: _Optional[str] = ..., webhook_url: _Optional[str] = ..., metadata: _Optional[_Mapping[str, str]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., probed_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., started_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., completed_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., delayed_start: bool = ..., confirmed_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., currency: _Optional[str] = ..., execution: _Optional[_Union[ExecutionTiming, _Mapping]] = ..., thumbnails: _Optional[_Iterable[_Union[_thumbnails_pb2.ThumbnailSpec, _Mapping]]] = ..., thumbnail_results: _Optional[_Iterable[_Union[_thumbnails_pb2.ThumbnailResult, _Mapping]]] = ..., subtitle_results: _Optional[_Iterable[_Union[_subtitles_pb2.SubtitleResult, _Mapping]]] = ..., output_path_template: _Optional[str] = ..., object: _Optional[str] = ..., minimum_charge_eur: _Optional[float] = ..., minimum_charge_applied: bool = ..., fees: _Optional[_Iterable[_Union[JobFee, _Mapping]]] = ..., input_video_id: _Optional[str] = ..., chapter_results: _Optional[_Iterable[_Union[_subtitles_pb2.ChapterResult, _Mapping]]] = ..., clip: _Optional[_Union[ClipConfig, _Mapping]] = ..., video_id: _Optional[str] = ..., cost_breakdown: _Optional[_Union[JobCostBreakdown, _Mapping]] = ...) -> None: ...
455
472
 
456
473
  class JobFee(_message.Message):
457
- __slots__ = ("fee_type", "description", "unit", "quantity", "rate", "amount", "currency")
474
+ __slots__ = ("fee_type", "description", "unit", "quantity", "rate", "amount", "currency", "id")
458
475
  FEE_TYPE_FIELD_NUMBER: _ClassVar[int]
459
476
  DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
460
477
  UNIT_FIELD_NUMBER: _ClassVar[int]
@@ -462,6 +479,7 @@ class JobFee(_message.Message):
462
479
  RATE_FIELD_NUMBER: _ClassVar[int]
463
480
  AMOUNT_FIELD_NUMBER: _ClassVar[int]
464
481
  CURRENCY_FIELD_NUMBER: _ClassVar[int]
482
+ ID_FIELD_NUMBER: _ClassVar[int]
465
483
  fee_type: str
466
484
  description: str
467
485
  unit: str
@@ -469,7 +487,32 @@ class JobFee(_message.Message):
469
487
  rate: float
470
488
  amount: float
471
489
  currency: str
472
- def __init__(self, fee_type: _Optional[str] = ..., description: _Optional[str] = ..., unit: _Optional[str] = ..., quantity: _Optional[float] = ..., rate: _Optional[float] = ..., amount: _Optional[float] = ..., currency: _Optional[str] = ...) -> None: ...
490
+ id: str
491
+ def __init__(self, fee_type: _Optional[str] = ..., description: _Optional[str] = ..., unit: _Optional[str] = ..., quantity: _Optional[float] = ..., rate: _Optional[float] = ..., amount: _Optional[float] = ..., currency: _Optional[str] = ..., id: _Optional[str] = ...) -> None: ...
492
+
493
+ class JobCostLine(_message.Message):
494
+ __slots__ = ("type", "reference_id", "description", "estimated_amount_eur", "actual_amount_eur")
495
+ TYPE_FIELD_NUMBER: _ClassVar[int]
496
+ REFERENCE_ID_FIELD_NUMBER: _ClassVar[int]
497
+ DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
498
+ ESTIMATED_AMOUNT_EUR_FIELD_NUMBER: _ClassVar[int]
499
+ ACTUAL_AMOUNT_EUR_FIELD_NUMBER: _ClassVar[int]
500
+ type: JobCostLineType
501
+ reference_id: str
502
+ description: str
503
+ estimated_amount_eur: float
504
+ actual_amount_eur: float
505
+ def __init__(self, type: _Optional[_Union[JobCostLineType, str]] = ..., reference_id: _Optional[str] = ..., description: _Optional[str] = ..., estimated_amount_eur: _Optional[float] = ..., actual_amount_eur: _Optional[float] = ...) -> None: ...
506
+
507
+ class JobCostBreakdown(_message.Message):
508
+ __slots__ = ("lines", "total_estimated_cost", "total_actual_cost")
509
+ LINES_FIELD_NUMBER: _ClassVar[int]
510
+ TOTAL_ESTIMATED_COST_FIELD_NUMBER: _ClassVar[int]
511
+ TOTAL_ACTUAL_COST_FIELD_NUMBER: _ClassVar[int]
512
+ lines: _containers.RepeatedCompositeFieldContainer[JobCostLine]
513
+ total_estimated_cost: float
514
+ total_actual_cost: float
515
+ def __init__(self, lines: _Optional[_Iterable[_Union[JobCostLine, _Mapping]]] = ..., total_estimated_cost: _Optional[float] = ..., total_actual_cost: _Optional[float] = ...) -> None: ...
473
516
 
474
517
  class ClipConfig(_message.Message):
475
518
  __slots__ = ("start_seconds", "end_seconds")
@@ -27,7 +27,7 @@ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__
27
27
  from transcodely.v1 import common_pb2 as transcodely_dot_v1_dot_common__pb2
28
28
 
29
29
 
30
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!transcodely/v1/organization.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xdf\x02\n\x0cOrganization\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12!\n\x0c\x64isplay_name\x18\x03 \x01(\tR\x0b\x64isplayName\x12(\n\rbilling_email\x18\x04 \x01(\tH\x00R\x0c\x62illingEmail\x88\x01\x01\x12\x1a\n\x08\x63urrency\x18\x05 \x01(\tR\x08\x63urrency\x12:\n\x06status\x18\x06 \x01(\x0e\x32\".transcodely.v1.OrganizationStatusR\x06status\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAtB\x10\n\x0e_billing_email\"4\n\x10\x43heckSlugRequest\x12 \n\x04slug\x18\x01 \x01(\tB\x0c\xbaH\tr\x04\x10\x03\x18\x32\xc8\x01\x01R\x04slug\"\x9c\x01\n\x11\x43heckSlugResponse\x12\x1c\n\tavailable\x18\x01 \x01(\x08R\tavailable\x12\'\n\x0fnormalized_slug\x18\x02 \x01(\tR\x0enormalizedSlug\x12\x1b\n\x06reason\x18\x03 \x01(\tH\x00R\x06reason\x88\x01\x01\x12\x18\n\x07message\x18\x04 \x01(\tR\x07messageB\t\n\x07_reason\"\x8a\x02\n\x19\x43reateOrganizationRequest\x12?\n\x04slug\x18\x01 \x01(\tB+\xbaH(r#\x10\x03\x18\x32\x32\x1d^[a-z][a-z0-9]*(-[a-z0-9]+)*$\xc8\x01\x01R\x04slug\x12/\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x0c\xbaH\tr\x04\x10\x01\x18\x64\xc8\x01\x01R\x0b\x64isplayName\x12\x31\n\rbilling_email\x18\x03 \x01(\tB\x07\xbaH\x04r\x02`\x01H\x00R\x0c\x62illingEmail\x88\x01\x01\x12)\n\x08\x63urrency\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x98\x01\x03H\x01R\x08\x63urrency\x88\x01\x01\x42\x10\n\x0e_billing_emailB\x0b\n\t_currency\"^\n\x1a\x43reateOrganizationResponse\x12@\n\x0corganization\x18\x01 \x01(\x0b\x32\x1c.transcodely.v1.OrganizationR\x0corganization\"D\n\x16GetOrganizationRequest\x12*\n\nid_or_slug\x18\x01 \x01(\tB\x0c\xbaH\tr\x04\x10\x03\x18\x32\xc8\x01\x01R\x08idOrSlug\"[\n\x17GetOrganizationResponse\x12@\n\x0corganization\x18\x01 \x01(\x0b\x32\x1c.transcodely.v1.OrganizationR\x0corganization\"\xd4\x01\n\x19UpdateOrganizationRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^org_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12\x31\n\x0c\x64isplay_name\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18\x64H\x00R\x0b\x64isplayName\x88\x01\x01\x12\x31\n\rbilling_email\x18\x03 \x01(\tB\x07\xbaH\x04r\x02`\x01H\x01R\x0c\x62illingEmail\x88\x01\x01\x42\x0f\n\r_display_nameB\x10\n\x0e_billing_email\"^\n\x1aUpdateOrganizationResponse\x12@\n\x0corganization\x18\x01 \x01(\x0b\x32\x1c.transcodely.v1.OrganizationR\x0corganization\"\x88\x01\n\x18ListOrganizationsRequest\x12\x41\n\npagination\x18\x01 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12)\n\x10include_inactive\x18\x02 \x01(\x08R\x0fincludeInactive\"\xa3\x01\n\x19ListOrganizationsResponse\x12\x42\n\rorganizations\x18\x01 \x03(\x0b\x32\x1c.transcodely.v1.OrganizationR\rorganizations\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination*\x9d\x01\n\x12OrganizationStatus\x12#\n\x1fORGANIZATION_STATUS_UNSPECIFIED\x10\x00\x12\x1e\n\x1aORGANIZATION_STATUS_ACTIVE\x10\x01\x12!\n\x1dORGANIZATION_STATUS_SUSPENDED\x10\x02\x12\x1f\n\x1bORGANIZATION_STATUS_DELETED\x10\x03\x32\xde\x03\n\x13OrganizationService\x12P\n\tCheckSlug\x12 .transcodely.v1.CheckSlugRequest\x1a!.transcodely.v1.CheckSlugResponse\x12_\n\x06\x43reate\x12).transcodely.v1.CreateOrganizationRequest\x1a*.transcodely.v1.CreateOrganizationResponse\x12V\n\x03Get\x12&.transcodely.v1.GetOrganizationRequest\x1a\'.transcodely.v1.GetOrganizationResponse\x12_\n\x06Update\x12).transcodely.v1.UpdateOrganizationRequest\x1a*.transcodely.v1.UpdateOrganizationResponse\x12[\n\x04List\x12(.transcodely.v1.ListOrganizationsRequest\x1a).transcodely.v1.ListOrganizationsResponseb\x06proto3')
30
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!transcodely/v1/organization.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xf4\x06\n\x0cOrganization\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12!\n\x0c\x64isplay_name\x18\x03 \x01(\tR\x0b\x64isplayName\x12(\n\rbilling_email\x18\x04 \x01(\tH\x00R\x0c\x62illingEmail\x88\x01\x01\x12\x1a\n\x08\x63urrency\x18\x05 \x01(\tR\x08\x63urrency\x12:\n\x06status\x18\x06 \x01(\x0e\x32\".transcodely.v1.OrganizationStatusR\x06status\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x1c\n\x07plan_id\x18\t \x01(\tH\x01R\x06planId\x88\x01\x01\x12 \n\tplan_name\x18\n \x01(\tH\x02R\x08planName\x88\x01\x01\x12\x36\n\x17payment_method_required\x18\x0b \x01(\x08R\x15paymentMethodRequired\x12J\n\x10grandfathered_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03R\x0fgrandfatheredAt\x88\x01\x01\x12J\n\x10\x62illing_standing\x18\r \x01(\x0e\x32\x1f.transcodely.v1.BillingStandingR\x0f\x62illingStanding\x12@\n\x0bgrace_until\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x04R\ngraceUntil\x88\x01\x01\x12\'\n\x0fstanding_reason\x18\x0f \x01(\tR\x0estandingReason\x12\x1d\n\nin_dunning\x18\x10 \x01(\x08R\tinDunning\x12:\n\x19\x63onsecutive_dunned_cycles\x18\x11 \x01(\x05R\x17\x63onsecutiveDunnedCyclesB\x10\n\x0e_billing_emailB\n\n\x08_plan_idB\x0c\n\n_plan_nameB\x13\n\x11_grandfathered_atB\x0e\n\x0c_grace_until\"4\n\x10\x43heckSlugRequest\x12 \n\x04slug\x18\x01 \x01(\tB\x0c\xbaH\tr\x04\x10\x03\x18\x32\xc8\x01\x01R\x04slug\"\x9c\x01\n\x11\x43heckSlugResponse\x12\x1c\n\tavailable\x18\x01 \x01(\x08R\tavailable\x12\'\n\x0fnormalized_slug\x18\x02 \x01(\tR\x0enormalizedSlug\x12\x1b\n\x06reason\x18\x03 \x01(\tH\x00R\x06reason\x88\x01\x01\x12\x18\n\x07message\x18\x04 \x01(\tR\x07messageB\t\n\x07_reason\"\x8a\x02\n\x19\x43reateOrganizationRequest\x12?\n\x04slug\x18\x01 \x01(\tB+\xbaH(r#\x10\x03\x18\x32\x32\x1d^[a-z][a-z0-9]*(-[a-z0-9]+)*$\xc8\x01\x01R\x04slug\x12/\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x0c\xbaH\tr\x04\x10\x01\x18\x64\xc8\x01\x01R\x0b\x64isplayName\x12\x31\n\rbilling_email\x18\x03 \x01(\tB\x07\xbaH\x04r\x02`\x01H\x00R\x0c\x62illingEmail\x88\x01\x01\x12)\n\x08\x63urrency\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x98\x01\x03H\x01R\x08\x63urrency\x88\x01\x01\x42\x10\n\x0e_billing_emailB\x0b\n\t_currency\"^\n\x1a\x43reateOrganizationResponse\x12@\n\x0corganization\x18\x01 \x01(\x0b\x32\x1c.transcodely.v1.OrganizationR\x0corganization\"D\n\x16GetOrganizationRequest\x12*\n\nid_or_slug\x18\x01 \x01(\tB\x0c\xbaH\tr\x04\x10\x03\x18\x32\xc8\x01\x01R\x08idOrSlug\"[\n\x17GetOrganizationResponse\x12@\n\x0corganization\x18\x01 \x01(\x0b\x32\x1c.transcodely.v1.OrganizationR\x0corganization\"\xd4\x01\n\x19UpdateOrganizationRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^org_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12\x31\n\x0c\x64isplay_name\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18\x64H\x00R\x0b\x64isplayName\x88\x01\x01\x12\x31\n\rbilling_email\x18\x03 \x01(\tB\x07\xbaH\x04r\x02`\x01H\x01R\x0c\x62illingEmail\x88\x01\x01\x42\x0f\n\r_display_nameB\x10\n\x0e_billing_email\"^\n\x1aUpdateOrganizationResponse\x12@\n\x0corganization\x18\x01 \x01(\x0b\x32\x1c.transcodely.v1.OrganizationR\x0corganization\"\x88\x01\n\x18ListOrganizationsRequest\x12\x41\n\npagination\x18\x01 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12)\n\x10include_inactive\x18\x02 \x01(\x08R\x0fincludeInactive\"\xa3\x01\n\x19ListOrganizationsResponse\x12\x42\n\rorganizations\x18\x01 \x03(\x0b\x32\x1c.transcodely.v1.OrganizationR\rorganizations\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination*\x9d\x01\n\x12OrganizationStatus\x12#\n\x1fORGANIZATION_STATUS_UNSPECIFIED\x10\x00\x12\x1e\n\x1aORGANIZATION_STATUS_ACTIVE\x10\x01\x12!\n\x1dORGANIZATION_STATUS_SUSPENDED\x10\x02\x12\x1f\n\x1bORGANIZATION_STATUS_DELETED\x10\x03\x32\xde\x03\n\x13OrganizationService\x12P\n\tCheckSlug\x12 .transcodely.v1.CheckSlugRequest\x1a!.transcodely.v1.CheckSlugResponse\x12_\n\x06\x43reate\x12).transcodely.v1.CreateOrganizationRequest\x1a*.transcodely.v1.CreateOrganizationResponse\x12V\n\x03Get\x12&.transcodely.v1.GetOrganizationRequest\x1a\'.transcodely.v1.GetOrganizationResponse\x12_\n\x06Update\x12).transcodely.v1.UpdateOrganizationRequest\x1a*.transcodely.v1.UpdateOrganizationResponse\x12[\n\x04List\x12(.transcodely.v1.ListOrganizationsRequest\x1a).transcodely.v1.ListOrganizationsResponseb\x06proto3')
31
31
 
32
32
  _globals = globals()
33
33
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -52,30 +52,30 @@ if not _descriptor._USE_C_DESCRIPTORS:
52
52
  _globals['_UPDATEORGANIZATIONREQUEST'].fields_by_name['display_name']._serialized_options = b'\272H\006r\004\020\001\030d'
53
53
  _globals['_UPDATEORGANIZATIONREQUEST'].fields_by_name['billing_email']._loaded_options = None
54
54
  _globals['_UPDATEORGANIZATIONREQUEST'].fields_by_name['billing_email']._serialized_options = b'\272H\004r\002`\001'
55
- _globals['_ORGANIZATIONSTATUS']._serialized_start=1856
56
- _globals['_ORGANIZATIONSTATUS']._serialized_end=2013
55
+ _globals['_ORGANIZATIONSTATUS']._serialized_start=2389
56
+ _globals['_ORGANIZATIONSTATUS']._serialized_end=2546
57
57
  _globals['_ORGANIZATION']._serialized_start=145
58
- _globals['_ORGANIZATION']._serialized_end=496
59
- _globals['_CHECKSLUGREQUEST']._serialized_start=498
60
- _globals['_CHECKSLUGREQUEST']._serialized_end=550
61
- _globals['_CHECKSLUGRESPONSE']._serialized_start=553
62
- _globals['_CHECKSLUGRESPONSE']._serialized_end=709
63
- _globals['_CREATEORGANIZATIONREQUEST']._serialized_start=712
64
- _globals['_CREATEORGANIZATIONREQUEST']._serialized_end=978
65
- _globals['_CREATEORGANIZATIONRESPONSE']._serialized_start=980
66
- _globals['_CREATEORGANIZATIONRESPONSE']._serialized_end=1074
67
- _globals['_GETORGANIZATIONREQUEST']._serialized_start=1076
68
- _globals['_GETORGANIZATIONREQUEST']._serialized_end=1144
69
- _globals['_GETORGANIZATIONRESPONSE']._serialized_start=1146
70
- _globals['_GETORGANIZATIONRESPONSE']._serialized_end=1237
71
- _globals['_UPDATEORGANIZATIONREQUEST']._serialized_start=1240
72
- _globals['_UPDATEORGANIZATIONREQUEST']._serialized_end=1452
73
- _globals['_UPDATEORGANIZATIONRESPONSE']._serialized_start=1454
74
- _globals['_UPDATEORGANIZATIONRESPONSE']._serialized_end=1548
75
- _globals['_LISTORGANIZATIONSREQUEST']._serialized_start=1551
76
- _globals['_LISTORGANIZATIONSREQUEST']._serialized_end=1687
77
- _globals['_LISTORGANIZATIONSRESPONSE']._serialized_start=1690
78
- _globals['_LISTORGANIZATIONSRESPONSE']._serialized_end=1853
79
- _globals['_ORGANIZATIONSERVICE']._serialized_start=2016
80
- _globals['_ORGANIZATIONSERVICE']._serialized_end=2494
58
+ _globals['_ORGANIZATION']._serialized_end=1029
59
+ _globals['_CHECKSLUGREQUEST']._serialized_start=1031
60
+ _globals['_CHECKSLUGREQUEST']._serialized_end=1083
61
+ _globals['_CHECKSLUGRESPONSE']._serialized_start=1086
62
+ _globals['_CHECKSLUGRESPONSE']._serialized_end=1242
63
+ _globals['_CREATEORGANIZATIONREQUEST']._serialized_start=1245
64
+ _globals['_CREATEORGANIZATIONREQUEST']._serialized_end=1511
65
+ _globals['_CREATEORGANIZATIONRESPONSE']._serialized_start=1513
66
+ _globals['_CREATEORGANIZATIONRESPONSE']._serialized_end=1607
67
+ _globals['_GETORGANIZATIONREQUEST']._serialized_start=1609
68
+ _globals['_GETORGANIZATIONREQUEST']._serialized_end=1677
69
+ _globals['_GETORGANIZATIONRESPONSE']._serialized_start=1679
70
+ _globals['_GETORGANIZATIONRESPONSE']._serialized_end=1770
71
+ _globals['_UPDATEORGANIZATIONREQUEST']._serialized_start=1773
72
+ _globals['_UPDATEORGANIZATIONREQUEST']._serialized_end=1985
73
+ _globals['_UPDATEORGANIZATIONRESPONSE']._serialized_start=1987
74
+ _globals['_UPDATEORGANIZATIONRESPONSE']._serialized_end=2081
75
+ _globals['_LISTORGANIZATIONSREQUEST']._serialized_start=2084
76
+ _globals['_LISTORGANIZATIONSREQUEST']._serialized_end=2220
77
+ _globals['_LISTORGANIZATIONSRESPONSE']._serialized_start=2223
78
+ _globals['_LISTORGANIZATIONSRESPONSE']._serialized_end=2386
79
+ _globals['_ORGANIZATIONSERVICE']._serialized_start=2549
80
+ _globals['_ORGANIZATIONSERVICE']._serialized_end=3027
81
81
  # @@protoc_insertion_point(module_scope)
@@ -21,7 +21,7 @@ ORGANIZATION_STATUS_SUSPENDED: OrganizationStatus
21
21
  ORGANIZATION_STATUS_DELETED: OrganizationStatus
22
22
 
23
23
  class Organization(_message.Message):
24
- __slots__ = ("id", "slug", "display_name", "billing_email", "currency", "status", "created_at", "updated_at")
24
+ __slots__ = ("id", "slug", "display_name", "billing_email", "currency", "status", "created_at", "updated_at", "plan_id", "plan_name", "payment_method_required", "grandfathered_at", "billing_standing", "grace_until", "standing_reason", "in_dunning", "consecutive_dunned_cycles")
25
25
  ID_FIELD_NUMBER: _ClassVar[int]
26
26
  SLUG_FIELD_NUMBER: _ClassVar[int]
27
27
  DISPLAY_NAME_FIELD_NUMBER: _ClassVar[int]
@@ -30,6 +30,15 @@ class Organization(_message.Message):
30
30
  STATUS_FIELD_NUMBER: _ClassVar[int]
31
31
  CREATED_AT_FIELD_NUMBER: _ClassVar[int]
32
32
  UPDATED_AT_FIELD_NUMBER: _ClassVar[int]
33
+ PLAN_ID_FIELD_NUMBER: _ClassVar[int]
34
+ PLAN_NAME_FIELD_NUMBER: _ClassVar[int]
35
+ PAYMENT_METHOD_REQUIRED_FIELD_NUMBER: _ClassVar[int]
36
+ GRANDFATHERED_AT_FIELD_NUMBER: _ClassVar[int]
37
+ BILLING_STANDING_FIELD_NUMBER: _ClassVar[int]
38
+ GRACE_UNTIL_FIELD_NUMBER: _ClassVar[int]
39
+ STANDING_REASON_FIELD_NUMBER: _ClassVar[int]
40
+ IN_DUNNING_FIELD_NUMBER: _ClassVar[int]
41
+ CONSECUTIVE_DUNNED_CYCLES_FIELD_NUMBER: _ClassVar[int]
33
42
  id: str
34
43
  slug: str
35
44
  display_name: str
@@ -38,7 +47,16 @@ class Organization(_message.Message):
38
47
  status: OrganizationStatus
39
48
  created_at: _timestamp_pb2.Timestamp
40
49
  updated_at: _timestamp_pb2.Timestamp
41
- def __init__(self, id: _Optional[str] = ..., slug: _Optional[str] = ..., display_name: _Optional[str] = ..., billing_email: _Optional[str] = ..., currency: _Optional[str] = ..., status: _Optional[_Union[OrganizationStatus, str]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
50
+ plan_id: str
51
+ plan_name: str
52
+ payment_method_required: bool
53
+ grandfathered_at: _timestamp_pb2.Timestamp
54
+ billing_standing: _common_pb2.BillingStanding
55
+ grace_until: _timestamp_pb2.Timestamp
56
+ standing_reason: str
57
+ in_dunning: bool
58
+ consecutive_dunned_cycles: int
59
+ def __init__(self, id: _Optional[str] = ..., slug: _Optional[str] = ..., display_name: _Optional[str] = ..., billing_email: _Optional[str] = ..., currency: _Optional[str] = ..., status: _Optional[_Union[OrganizationStatus, str]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., plan_id: _Optional[str] = ..., plan_name: _Optional[str] = ..., payment_method_required: bool = ..., grandfathered_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., billing_standing: _Optional[_Union[_common_pb2.BillingStanding, str]] = ..., grace_until: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., standing_reason: _Optional[str] = ..., in_dunning: bool = ..., consecutive_dunned_cycles: _Optional[int] = ...) -> None: ...
42
60
 
43
61
  class CheckSlugRequest(_message.Message):
44
62
  __slots__ = ("slug",)
transcodely/version.py CHANGED
@@ -1,7 +1,7 @@
1
1
  """Version constants exposed at the top of the package."""
2
2
 
3
3
  #: SDK package version. Bumped by release-please from pyproject.toml.
4
- SDK_VERSION = "0.3.5" # x-release-please-version
4
+ SDK_VERSION = "0.3.7" # x-release-please-version
5
5
 
6
6
  #: Calendar-versioned API this release pins. Sent on every request as
7
7
  #: `Transcodely-Version`. Override per-client via ``api_version=``.
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: transcodely
3
- Version: 0.3.5
3
+ Version: 0.3.7
4
4
  Summary: Official Python SDK for the Transcodely video transcoding API
5
5
  Project-URL: Homepage, https://transcodely.com
6
6
  Project-URL: Documentation, https://transcodely.com/docs
@@ -2,14 +2,14 @@ buf/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  buf/validate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
3
  buf/validate/validate_pb2.py,sha256=PI9aqcxkUgd2Ia9_WAgtEG-gomoRedtW_zPWDfrI8Bs,156732
4
4
  buf/validate/validate_pb2.pyi,sha256=sY7qSDg4SGqvktPLxXjQTVmlXKb5IwIcLYZ-QpfUuL0,32155
5
- transcodely/__init__.py,sha256=tRLi7cV4eadCDs6Q9uxU9ADDE1vOOqw31nC3IdiVn_Y,4231
5
+ transcodely/__init__.py,sha256=SrBr0KNFadIyqcO8qfOx6sUwl5ebpM4Id0vsW8AIsAs,4475
6
6
  transcodely/client.py,sha256=4venaPA_vuuIKKNl5vQ8-HC0OJXHGYp4Tef3boObNCo,5488
7
7
  transcodely/errors.py,sha256=je9TVS6Ewm5hVJLU3VbYSeEyxCe721C6imNIlCgAoVs,3347
8
8
  transcodely/pagination.py,sha256=sL7j-RG7sj-lg3yQSZWo6f8k2-AeweC-7Ia2kC1bmRQ,1497
9
9
  transcodely/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  transcodely/streaming.py,sha256=WyDnyyYoa8bEB0Po1lUQ76P6p7FjC1jjLij0ig_OCl0,1410
11
- transcodely/types.py,sha256=Hpcmb4mdmX3kpiVRLsPyFel3r9C0kH-WYJQJ6xJIZz8,16000
12
- transcodely/version.py,sha256=Iy8V2z1lOBar_vhnvBP5Ylni9M5xhI_4uVwe6PIGnpw,452
11
+ transcodely/types.py,sha256=sFdcx99zcRYGew3L_dWcBLZBDRE3fBvlPq2D6c2KjIA,17366
12
+ transcodely/version.py,sha256=UlUK8hgfKW9A7M07jngupnHo6RJqOAGK5kNeYuiJUsM,452
13
13
  transcodely/_codec/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
14
  transcodely/_codec/json_codec.py,sha256=Bs2eWoCwRxCIJCrU2HFz4a5tKR0BgfYGoMpPpjL4Qdc,6383
15
15
  transcodely/_transport/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -20,7 +20,7 @@ transcodely/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
20
20
  transcodely/resources/_helpers.py,sha256=IUcH-CzQLoF_UARXI7eMvmj3OqA3OcPyy3qNG1b9lKI,2617
21
21
  transcodely/resources/api_keys.py,sha256=nECByu7V15uEes6Kdfp7gNTFa4izoYt2K-a6QbriYzo,1860
22
22
  transcodely/resources/apps.py,sha256=XPJDnq0NY__haXeEmlC_x9pGTcqUtyVxuKWWWw0GoXQ,5069
23
- transcodely/resources/billing.py,sha256=apm7iINuYJnySUktNAz6_fHjtqc95bD984Gc0uS1Ljo,3435
23
+ transcodely/resources/billing.py,sha256=P5kFAKxnyU6gfa_Rqup3Ru1SIixNABF7GAXBpHFN6rY,5456
24
24
  transcodely/resources/events.py,sha256=UUufziUoRhLzBDcLFPKa2rqHCbr4FIcKLiGv1B77sug,4526
25
25
  transcodely/resources/health.py,sha256=hNbPrjpqGgkkKNjQ_pSUJRTcyubxsUNIhwu4b12ZW6A,546
26
26
  transcodely/resources/jobs.py,sha256=Z8W4yxaz0XwlsQF8RcByjGQSdLi-koUucGq7PulEDbs,8127
@@ -35,8 +35,8 @@ transcodely/v1/api_key_pb2.py,sha256=IIeolbeyxRvf03-KiXK3ZIuHSmTm_561TSEKthHsr2M
35
35
  transcodely/v1/api_key_pb2.pyi,sha256=HgQBID2uBCGMB-Q-w5zdCxe45KLK9pu3LRqYkbcnvi0,4884
36
36
  transcodely/v1/app_pb2.py,sha256=_pesN3-Mie8nboOEcKm47EXm7MKkqibjfeU7Oa6FhdM,14524
37
37
  transcodely/v1/app_pb2.pyi,sha256=ZOCjWXC3lYeTE7Pk_-b90wRQgLoaGBgoBCepjH2eoqI,10289
38
- transcodely/v1/billing_pb2.py,sha256=5H8BVJyXLHcWec6CB2nVXVJ7Qrba7ugBT2RCS0GmfDU,6573
39
- transcodely/v1/billing_pb2.pyi,sha256=LYdW0rvU8DZ_k9opeDatzvjUSL74JLpF1DR_ArSYGeQ,6592
38
+ transcodely/v1/billing_pb2.py,sha256=KhQV41CbcqttZgg2LfYRAFk3KzH5PYlYXv6HCXHmZW0,9857
39
+ transcodely/v1/billing_pb2.pyi,sha256=cMVqCG7F4eMPmIQH7FOMvWcZ3dZr3M0uPksE_srIoGQ,10456
40
40
  transcodely/v1/codec_av1_pb2.py,sha256=eeMjKVQlpO4XRtX6bnvpTz7O_Yr4HLTAUMm_bsjp76c,4491
41
41
  transcodely/v1/codec_av1_pb2.pyi,sha256=WSGvn-QM8TQ5qRNA38ES5GB25f-sqcu3x4o4ph4SSpg,1616
42
42
  transcodely/v1/codec_h264_pb2.py,sha256=Ppa6P8l2mtNZ62HHZGKSmCaEQbodrPpfNwE9OwxGYc4,6735
@@ -45,8 +45,8 @@ transcodely/v1/codec_h265_pb2.py,sha256=ywNgVnMFvGu4bzfWzywYRz1l7o0AnIxOS-2GDpk1
45
45
  transcodely/v1/codec_h265_pb2.pyi,sha256=fRmqJlNIRf2FLWTjnmtQSTq49IoxMOPqmUkrums2NEc,1940
46
46
  transcodely/v1/codec_vp9_pb2.py,sha256=VVWUL1AkNQZzYdsuOw3TomelkcrkxIVPBF-zq854CHw,4495
47
47
  transcodely/v1/codec_vp9_pb2.pyi,sha256=mVMKK7x2R3EssWS1fQSRUCwAKKVme2rteoBDgDe2vmk,1383
48
- transcodely/v1/common_pb2.py,sha256=lKzDxRB7Dd1DoMmdg0dUEsTEaFYnNAvz1eTvMq1MZs8,6295
49
- transcodely/v1/common_pb2.pyi,sha256=j3VFqeqRdTGgkXFwSBDy5HEW1P7YZceqfMU2mOjaYdk,6774
48
+ transcodely/v1/common_pb2.py,sha256=PCsIlvqeWGJNvLotTY9ICm0rTsEUtBlRafKQ-jezk-I,6677
49
+ transcodely/v1/common_pb2.pyi,sha256=gebn5ghIoyoIiPf6EnsqlN56vmPIJIwlSh_iU0ibVSI,7365
50
50
  transcodely/v1/content_aware_pb2.py,sha256=fmlEhjmeZGzZx9hV0TQvVpKEVjPQc2v5qKxh40H8gqM,4592
51
51
  transcodely/v1/content_aware_pb2.pyi,sha256=-vRSp3ybSBzyml6F3K7WUwgIa9ZIlCk3Far--ZtSfWI,2638
52
52
  transcodely/v1/drm_pb2.py,sha256=t2XpX90RqxQDZc7H9d4EOxvJiAbuiPWv8KrkZ2FkC6s,5996
@@ -55,14 +55,14 @@ transcodely/v1/hdr_pb2.py,sha256=CoP0JZwEUcUiGvrYyZgtiD3UlSKERlVgb7wPmtV5T7g,457
55
55
  transcodely/v1/hdr_pb2.pyi,sha256=A6yGIuYX2TXphNrMu7J5znCso5Hc_YpiKo5VCrT-fv8,2776
56
56
  transcodely/v1/health_pb2.py,sha256=Twtkv3T0QNMrSS5_tDvroTRMef1RC109wlpwBQsGM7Q,2650
57
57
  transcodely/v1/health_pb2.pyi,sha256=Mi2EhATmBzHhiDVG3G5YApWtdo05x-rWxe9VAUVblJs,2005
58
- transcodely/v1/job_pb2.py,sha256=-1byPER9zEOvxvJOD6LJEQSkojggH7t2VK2LWSTwhdo,46752
59
- transcodely/v1/job_pb2.pyi,sha256=zXuUmHMkudwJnMGrDixXp7s0YQImoJowt1_-z9R4cUg,34859
58
+ transcodely/v1/job_pb2.py,sha256=f_uChmlIBm1Do935jl5TtzhKzjY3qyI336CIKMaQ_UI,48775
59
+ transcodely/v1/job_pb2.pyi,sha256=XLkH6UayMAX0aatoWQxjaHHT-_C-2pR0Y9b_E85nNIM,37172
60
60
  transcodely/v1/media_pb2.py,sha256=nH_qDeJvDMPlYVT87nExJ43Lgvll9UW8rDbbyTrR6HY,4850
61
61
  transcodely/v1/media_pb2.pyi,sha256=0LXXpVv2mQhsGTuoEF_e1fFfeIDBKi7HxXqtmu8n_Pk,5128
62
62
  transcodely/v1/membership_pb2.py,sha256=pvm38RI0ItQKMgy6bV_zmRLBrWGyyy0zCsr0fzEPir4,7256
63
63
  transcodely/v1/membership_pb2.pyi,sha256=WVYiT9nhRkbEPfWZQDaQd_-LpJNSDqtgfbS_tZ49vOU,5903
64
- transcodely/v1/organization_pb2.py,sha256=Ody5KjSS6efaHTbRIQo3KINmBgVDt6B5qar5lFHq9Vo,8674
65
- transcodely/v1/organization_pb2.pyi,sha256=-JR6pDhDb9BeFSUK7_ZpayrVYL1Hpj0ba2fSTLBLgLA,5815
64
+ transcodely/v1/organization_pb2.py,sha256=7dxKEhalOVVMRkW_34eSem-06s0BgRmFt01GOfiep8w,9505
65
+ transcodely/v1/organization_pb2.pyi,sha256=tQnt28ZsZz3TbYs_iBb9G-Bks0SQEt_mVMMeVCDPe30,7154
66
66
  transcodely/v1/origin_pb2.py,sha256=9eRpKh7C1sxK0VPWimH2gBrfC038539PSEufef0wKyU,23911
67
67
  transcodely/v1/origin_pb2.pyi,sha256=AdTPj0IapPaZR1CQxvQQ3CPblcVUcRdeIFC7kVKelGo,15869
68
68
  transcodely/v1/preset_pb2.py,sha256=g63NWJIIQxB6GYZmBSWoV03TLU2TSXIQnStCqDWFML0,28980
@@ -85,7 +85,7 @@ transcodely/webhooks/__init__.py,sha256=qS9-i7jLALXlcWHVw_fkL-wk1l78Xbge7046IGYt
85
85
  transcodely/webhooks/construct_event.py,sha256=HGex0xn9zLI0pX0ddXCeUTBk0SwL8aiaW4qzPltLf9Q,4335
86
86
  transcodely/webhooks/signature.py,sha256=SJyQMRvNA3pbh7UWKfm8N9ZPLuae1lyelUB8zlHR6wk,4104
87
87
  transcodely/webhooks/types.py,sha256=nemKjP-QbHTNkbk2Jzt2w3s16wuw3ht6nSxFdsWV-hM,5198
88
- transcodely-0.3.5.dist-info/METADATA,sha256=XYfE1Ndv-_tXzBacCUyTqpFbi49kmMiu2Gh1FgJQGco,15205
89
- transcodely-0.3.5.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
90
- transcodely-0.3.5.dist-info/licenses/LICENSE,sha256=1u4Y5yEd1PIgGGkVdnWk3srxbqkQ7aOJB_ZlbnPCITo,1068
91
- transcodely-0.3.5.dist-info/RECORD,,
88
+ transcodely-0.3.7.dist-info/METADATA,sha256=DeyE3ou2wkcChRUT6HKh6D60RlcxwBEN42ce5n9YQTo,15205
89
+ transcodely-0.3.7.dist-info/WHEEL,sha256=zOwg4jB6zX2kU910N-cMawjivD6tO8NEWvE12je1bVk,87
90
+ transcodely-0.3.7.dist-info/licenses/LICENSE,sha256=1u4Y5yEd1PIgGGkVdnWk3srxbqkQ7aOJB_ZlbnPCITo,1068
91
+ transcodely-0.3.7.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: hatchling 1.31.0
2
+ Generator: hatchling 1.32.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any