transcodely 0.2.0__py3-none-any.whl → 0.3.1__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.
@@ -2,12 +2,13 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Any, Mapping, Optional
5
+ from typing import Any, Mapping, Optional, Union
6
6
 
7
7
  from google.protobuf import json_format
8
+ from google.protobuf.descriptor import EnumDescriptor
8
9
  from google.protobuf.message import Message
9
10
 
10
- from .._codec.json_codec import transform_enums_in_dict
11
+ from .._codec.json_codec import expand_enum_value, simplify_enum_value, transform_enums_in_dict
11
12
 
12
13
 
13
14
  def fill_from_dict(msg: Message, data: Mapping[str, Any]) -> Message:
@@ -22,8 +23,44 @@ def fill_from_dict(msg: Message, data: Mapping[str, Any]) -> Message:
22
23
  return msg
23
24
 
24
25
 
25
- def assign_pagination(req_pagination: Any, *, limit: Optional[int], cursor: Optional[str]) -> None:
26
+ def resolve_enum(value: Union[int, str], enum_desc: EnumDescriptor) -> int:
27
+ """Resolve an enum value from either the raw proto int or a string.
28
+
29
+ Strings may be the simplified lowercase wire form (``"standard"``,
30
+ ``"processing"``) or the canonical proto name (``"JOB_PRIORITY_STANDARD"``) —
31
+ both resolve to the same int via the codec's inbound ``expand`` rule. Ints
32
+ pass through unchanged (proto3 enums are open, so an unknown int is the
33
+ caller's responsibility). Used for scalar enum kwargs that are set on a
34
+ request directly rather than through :func:`fill_from_dict`.
35
+ """
36
+ if isinstance(value, bool): # bool is an int subclass — reject it explicitly.
37
+ raise TypeError(f"{enum_desc.name} value must be an int or str, got bool: {value!r}")
38
+ if isinstance(value, int):
39
+ return value
40
+ if isinstance(value, str):
41
+ name = expand_enum_value(value, enum_desc)
42
+ entry = enum_desc.values_by_name.get(name)
43
+ if entry is None:
44
+ allowed = ", ".join(
45
+ simplify_enum_value(v.name, enum_desc) for v in enum_desc.values if v.number != 0
46
+ )
47
+ raise ValueError(
48
+ f"unknown {enum_desc.name} value {value!r}; expected one of: {allowed}"
49
+ )
50
+ return int(entry.number)
51
+ raise TypeError(f"{enum_desc.name} value must be an int or str, got {type(value).__name__}")
52
+
53
+
54
+ def assign_pagination(
55
+ req_pagination: Any,
56
+ *,
57
+ limit: Optional[int] = None,
58
+ cursor: Optional[str] = None,
59
+ offset: Optional[int] = None,
60
+ ) -> None:
26
61
  if limit is not None:
27
62
  req_pagination.limit = limit
28
63
  if cursor is not None:
29
64
  req_pagination.cursor = cursor
65
+ if offset is not None:
66
+ req_pagination.offset = offset
@@ -31,11 +31,23 @@ class Apps:
31
31
  def list(
32
32
  self,
33
33
  *,
34
+ org_id: Optional[str] = None,
34
35
  limit: Optional[int] = None,
36
+ include_archived: Optional[bool] = None,
35
37
  opts: Optional[CallOptions] = None,
36
38
  ) -> Page[app_pb2.App]:
39
+ """List apps in an organization.
40
+
41
+ ``org_id`` (the parent organization, e.g. ``"org_a1b2c3d4e5"``) is required
42
+ by the API. Pass ``include_archived=True`` to include archived apps.
43
+ """
44
+
37
45
  def fetch(cursor: Optional[str]) -> PageContents[app_pb2.App]:
38
46
  req = app_pb2.ListAppsRequest()
47
+ if org_id is not None:
48
+ req.org_id = org_id
49
+ if include_archived is not None:
50
+ req.include_archived = include_archived
39
51
  assign_pagination(req.pagination, limit=limit, cursor=cursor)
40
52
  res = self._t.unary(_SERVICE, "List", req, app_pb2.ListAppsResponse(), opts)
41
53
  return PageContents(
@@ -2,12 +2,13 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Any, Generator, Mapping, Optional
5
+ from typing import Any, Generator, Mapping, Optional, Union
6
6
 
7
7
  from .._transport.transport import CallOptions, Transport
8
8
  from ..pagination import Page, PageContents
9
9
  from ..streaming import watch
10
10
  from ..v1 import job_pb2
11
+ from ._helpers import assign_pagination, fill_from_dict, resolve_enum
11
12
 
12
13
  _SERVICE = "transcodely.v1.JobService"
13
14
 
@@ -21,35 +22,54 @@ class Jobs:
21
22
  input_url: Optional[str] = None,
22
23
  outputs: Optional[list[Mapping[str, Any]]] = None,
23
24
  *,
24
- idempotency_key: Optional[str] = None,
25
+ output_origin_id: Optional[str] = None,
26
+ output_path_template: Optional[str] = None,
27
+ input_origin_id: Optional[str] = None,
28
+ input_path: Optional[str] = None,
29
+ priority: Optional[Union[int, str]] = None,
30
+ delayed_start: Optional[bool] = None,
25
31
  webhook_url: Optional[str] = None,
26
- priority: Optional[int] = None,
27
32
  metadata: Optional[Mapping[str, str]] = None,
33
+ idempotency_key: Optional[str] = None,
28
34
  request: Optional[job_pb2.CreateJobRequest] = None,
29
35
  opts: Optional[CallOptions] = None,
30
36
  ) -> job_pb2.Job:
31
- """Create a new transcoding job. Auto-fills ``idempotency_key`` if omitted."""
37
+ """Create a new transcoding job.
38
+
39
+ Keyword arguments mirror the API's snake_case fields. Enum-valued fields —
40
+ ``priority`` here, plus any enum inside ``outputs`` dicts — accept either the
41
+ simplified lowercase string (``"standard"``, ``"h264"``) or the raw proto int.
42
+ Provide inputs via ``input_url`` (direct URL) OR ``input_origin_id`` +
43
+ ``input_path`` (origin mode); the server rejects both. Pass a fully-built
44
+ ``request=`` to bypass the convenience kwargs entirely. ``idempotency_key`` is
45
+ auto-filled with a uuid4 when omitted. ``output_path_template`` overrides where
46
+ rendered outputs are written within the output origin (e.g.
47
+ ``"videos/{job_id}/{output}"``).
48
+ """
32
49
  if request is None:
33
- req = job_pb2.CreateJobRequest()
50
+ payload: dict[str, Any] = {}
34
51
  if input_url is not None:
35
- req.input_url = input_url
52
+ payload["input_url"] = input_url
53
+ if input_origin_id is not None:
54
+ payload["input_origin_id"] = input_origin_id
55
+ if input_path is not None:
56
+ payload["input_path"] = input_path
57
+ if output_origin_id is not None:
58
+ payload["output_origin_id"] = output_origin_id
59
+ if output_path_template is not None:
60
+ payload["output_path_template"] = output_path_template
36
61
  if outputs:
37
- from google.protobuf import json_format
38
-
39
- from .._codec.json_codec import transform_enums_in_dict
40
-
41
- # Outputs are nested messages — round-trip through JSON so callers can
42
- # pass plain dicts with simplified-enum strings.
43
- payload = {"outputs": list(outputs)}
44
- transform_enums_in_dict(payload, req.DESCRIPTOR, mode="expand")
45
- json_format.ParseDict(payload, req, ignore_unknown_fields=True)
46
- if webhook_url is not None:
47
- req.webhook_url = webhook_url
62
+ payload["outputs"] = list(outputs)
48
63
  if priority is not None:
49
- req.priority = priority
64
+ payload["priority"] = priority
65
+ if delayed_start is not None:
66
+ payload["delayed_start"] = delayed_start
67
+ if webhook_url is not None:
68
+ payload["webhook_url"] = webhook_url
50
69
  if metadata:
51
- for k, v in metadata.items():
52
- req.metadata[k] = v
70
+ payload["metadata"] = dict(metadata)
71
+ req = job_pb2.CreateJobRequest()
72
+ fill_from_dict(req, payload)
53
73
  else:
54
74
  req = request
55
75
  if not req.idempotency_key:
@@ -66,22 +86,37 @@ class Jobs:
66
86
  def list(
67
87
  self,
68
88
  *,
69
- status: Optional[int] = None,
89
+ status: Optional[Union[int, str]] = None,
70
90
  limit: Optional[int] = None,
91
+ offset: Optional[int] = None,
92
+ pagination: Optional[Mapping[str, Any]] = None,
71
93
  opts: Optional[CallOptions] = None,
72
94
  ) -> Page[job_pb2.Job]:
73
- from ..v1 import common_pb2
95
+ """List jobs, optionally filtered by ``status``.
96
+
97
+ ``status`` accepts the simplified lowercase string (``"processing"``) or the
98
+ raw ``JobStatus`` int. Pagination may be given as ``limit`` / ``offset``
99
+ keyword args or as a ``pagination={"limit": ..., "offset": ..., "cursor": ...}``
100
+ mapping; explicit keyword args take precedence over the mapping.
101
+ """
102
+ status_value = (
103
+ resolve_enum(status, job_pb2.JobStatus.DESCRIPTOR) if status is not None else None
104
+ )
105
+ pag = dict(pagination) if pagination else {}
106
+ eff_limit = limit if limit is not None else pag.get("limit")
107
+ eff_offset = offset if offset is not None else pag.get("offset")
108
+ start_cursor = pag.get("cursor")
74
109
 
75
110
  def fetch(cursor: Optional[str]) -> PageContents[job_pb2.Job]:
76
111
  req = job_pb2.ListJobsRequest()
77
- if status is not None:
78
- req.status = status
79
- pagination = common_pb2.PaginationRequest()
80
- if limit is not None:
81
- pagination.limit = limit
82
- if cursor is not None:
83
- pagination.cursor = cursor
84
- req.pagination.CopyFrom(pagination)
112
+ if status_value is not None:
113
+ req.status = status_value
114
+ assign_pagination(
115
+ req.pagination,
116
+ limit=eff_limit,
117
+ cursor=cursor if cursor is not None else start_cursor,
118
+ offset=eff_offset,
119
+ )
85
120
  res = self._t.unary(_SERVICE, "List", req, job_pb2.ListJobsResponse(), opts)
86
121
  return PageContents(
87
122
  items=list(res.jobs),
@@ -2,12 +2,12 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Any, Optional
5
+ from typing import Any, Optional, Union
6
6
 
7
7
  from .._transport.transport import CallOptions, Transport
8
8
  from ..pagination import Page, PageContents
9
9
  from ..v1 import membership_pb2
10
- from ._helpers import assign_pagination, fill_from_dict
10
+ from ._helpers import assign_pagination, fill_from_dict, resolve_enum
11
11
 
12
12
  _SERVICE = "transcodely.v1.MembershipService"
13
13
 
@@ -19,11 +19,25 @@ class Memberships:
19
19
  def list(
20
20
  self,
21
21
  *,
22
+ status: Optional[Union[int, str]] = None,
22
23
  limit: Optional[int] = None,
23
24
  opts: Optional[CallOptions] = None,
24
25
  ) -> Page[membership_pb2.MembershipWithUser]:
26
+ """List memberships, optionally filtered by ``status``.
27
+
28
+ ``status`` accepts the simplified lowercase string (``"active"``,
29
+ ``"invited"``, ``"suspended"``) or the raw ``MembershipStatus`` int.
30
+ """
31
+ status_value = (
32
+ resolve_enum(status, membership_pb2.MembershipStatus.DESCRIPTOR)
33
+ if status is not None
34
+ else None
35
+ )
36
+
25
37
  def fetch(cursor: Optional[str]) -> PageContents[membership_pb2.MembershipWithUser]:
26
38
  req = membership_pb2.ListMembershipsRequest()
39
+ if status_value is not None:
40
+ req.status = status_value
27
41
  assign_pagination(req.pagination, limit=limit, cursor=cursor)
28
42
  res = self._t.unary(
29
43
  _SERVICE, "List", req, membership_pb2.ListMembershipsResponse(), opts
@@ -2,12 +2,12 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Any, Optional
5
+ from typing import Any, Optional, Union
6
6
 
7
7
  from .._transport.transport import CallOptions, Transport
8
8
  from ..pagination import Page, PageContents
9
9
  from ..v1 import user_pb2
10
- from ._helpers import assign_pagination, fill_from_dict
10
+ from ._helpers import assign_pagination, fill_from_dict, resolve_enum
11
11
 
12
12
  _SERVICE = "transcodely.v1.UserService"
13
13
 
@@ -32,11 +32,23 @@ class Users:
32
32
  def list(
33
33
  self,
34
34
  *,
35
+ status: Optional[Union[int, str]] = None,
35
36
  limit: Optional[int] = None,
36
37
  opts: Optional[CallOptions] = None,
37
38
  ) -> Page[user_pb2.User]:
39
+ """List users, optionally filtered by ``status``.
40
+
41
+ ``status`` accepts the simplified lowercase string (``"active"``,
42
+ ``"suspended"``, ``"deleted"``) or the raw ``UserStatus`` int.
43
+ """
44
+ status_value = (
45
+ resolve_enum(status, user_pb2.UserStatus.DESCRIPTOR) if status is not None else None
46
+ )
47
+
38
48
  def fetch(cursor: Optional[str]) -> PageContents[user_pb2.User]:
39
49
  req = user_pb2.ListUsersRequest()
50
+ if status_value is not None:
51
+ req.status = status_value
40
52
  assign_pagination(req.pagination, limit=limit, cursor=cursor)
41
53
  res = self._t.unary(_SERVICE, "List", req, user_pb2.ListUsersResponse(), opts)
42
54
  return PageContents(
transcodely/types.py CHANGED
@@ -157,7 +157,6 @@ from transcodely.v1.app_pb2 import (
157
157
  AutoProfileDefaults,
158
158
  CreateAppRequest,
159
159
  CreateAppResponse,
160
- CreateWebhookConfig,
161
160
  EnableHostingRequest,
162
161
  EnableHostingResponse,
163
162
  GetAppRequest,
@@ -169,8 +168,6 @@ from transcodely.v1.app_pb2 import (
169
168
  UpdateAppResponse,
170
169
  UpdateHostingConfigRequest,
171
170
  UpdateHostingConfigResponse,
172
- UpdateWebhookConfig,
173
- WebhookConfig,
174
171
  )
175
172
 
176
173
  # API keys.
@@ -379,7 +376,6 @@ __all__ = [
379
376
  "CreatePresetResponse",
380
377
  "CreateUploadRequest",
381
378
  "CreateUploadResponse",
382
- "CreateWebhookConfig",
383
379
  "CreateWebhookEndpointRequest",
384
380
  "CreateWebhookEndpointResponse",
385
381
  "DASHConfig",
@@ -537,7 +533,6 @@ __all__ = [
537
533
  "UpdatePresetResponse",
538
534
  "UpdateVideoRequest",
539
535
  "UpdateVideoResponse",
540
- "UpdateWebhookConfig",
541
536
  "UpdateWebhookEndpointRequest",
542
537
  "UpdateWebhookEndpointResponse",
543
538
  "UploadPart",
@@ -563,7 +558,6 @@ __all__ = [
563
558
  "WatchJobResponse",
564
559
  "WatchVideoRequest",
565
560
  "WatchVideoResponse",
566
- "WebhookConfig",
567
561
  "WebhookDelivery",
568
562
  "WebhookEndpoint",
569
563
  "WebhookEvent",
@@ -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/api_key.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xff\x03\n\x06\x41PIKey\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1d\n\nkey_prefix\x18\x04 \x01(\tR\tkeyPrefix\x12\x19\n\x08key_hint\x18\x05 \x01(\tR\x07keyHint\x12\x16\n\x06scopes\x18\x07 \x03(\tR\x06scopes\x12\x41\n\x0clast_used_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\nlastUsedAt\x88\x01\x01\x12>\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\texpiresAt\x88\x01\x01\x12\x39\n\ncreated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x1d\n\nis_revoked\x18\x0b \x01(\x08R\tisRevoked\x12>\n\nrevoked_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02R\trevokedAt\x88\x01\x01\x42\x0f\n\r_last_used_atB\r\n\x0b_expires_atB\r\n\x0b_revoked_atJ\x04\x08\x06\x10\x07R\x0b\x65nvironment\"\xfa\x01\n\x13\x43reateAPIKeyRequest\x12!\n\x04name\x18\x01 \x01(\tB\r\xbaH\nr\x05\x10\x01\x18\xff\x01\xc8\x01\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xe8\x07R\x0b\x64\x65scription\x12>\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\texpiresAt\x88\x01\x01\x12\x32\n\x06\x61pp_id\x18\x05 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$R\x05\x61ppIdB\r\n\x0b_expires_atJ\x04\x08\x03\x10\x04R\x0b\x65nvironment\"_\n\x14\x43reateAPIKeyResponse\x12/\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x16.transcodely.v1.APIKeyR\x06\x61piKey\x12\x16\n\x06secret\x18\x02 \x01(\tR\x06secret\"A\n\x10GetAPIKeyRequest\x12-\n\x02id\x18\x01 \x01(\tB\x1d\xbaH\x1ar\x15\x32\x13^ak_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"D\n\x11GetAPIKeyResponse\x12/\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x16.transcodely.v1.APIKeyR\x06\x61piKey\"\x93\x01\n\x12ListAPIKeysRequest\x12\'\n\x0finclude_revoked\x18\x02 \x01(\x08R\x0eincludeRevoked\x12\x41\n\npagination\x18\x03 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npaginationJ\x04\x08\x01\x10\x02R\x0b\x65nvironment\"\x8c\x01\n\x13ListAPIKeysResponse\x12\x31\n\x08\x61pi_keys\x18\x01 \x03(\x0b\x32\x16.transcodely.v1.APIKeyR\x07\x61piKeys\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"f\n\x13RevokeAPIKeyRequest\x12-\n\x02id\x18\x01 \x01(\tB\x1d\xbaH\x1ar\x15\x32\x13^ak_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12 \n\x06reason\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03R\x06reason\"G\n\x14RevokeAPIKeyResponse\x12/\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x16.transcodely.v1.APIKeyR\x06\x61piKey2\xd6\x02\n\rAPIKeyService\x12S\n\x06\x43reate\x12#.transcodely.v1.CreateAPIKeyRequest\x1a$.transcodely.v1.CreateAPIKeyResponse\x12J\n\x03Get\x12 .transcodely.v1.GetAPIKeyRequest\x1a!.transcodely.v1.GetAPIKeyResponse\x12O\n\x04List\x12\".transcodely.v1.ListAPIKeysRequest\x1a#.transcodely.v1.ListAPIKeysResponse\x12S\n\x06Revoke\x12#.transcodely.v1.RevokeAPIKeyRequest\x1a$.transcodely.v1.RevokeAPIKeyResponseb\x06proto3')
30
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1ctranscodely/v1/api_key.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\x96\x04\n\x06\x41PIKey\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x15\n\x06\x61pp_id\x18\r \x01(\tR\x05\x61ppId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1d\n\nkey_prefix\x18\x04 \x01(\tR\tkeyPrefix\x12\x19\n\x08key_hint\x18\x05 \x01(\tR\x07keyHint\x12\x16\n\x06scopes\x18\x07 \x03(\tR\x06scopes\x12\x41\n\x0clast_used_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\nlastUsedAt\x88\x01\x01\x12>\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\texpiresAt\x88\x01\x01\x12\x39\n\ncreated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x1d\n\nis_revoked\x18\x0b \x01(\x08R\tisRevoked\x12>\n\nrevoked_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02R\trevokedAt\x88\x01\x01\x42\x0f\n\r_last_used_atB\r\n\x0b_expires_atB\r\n\x0b_revoked_atJ\x04\x08\x06\x10\x07R\x0b\x65nvironment\"\xfa\x01\n\x13\x43reateAPIKeyRequest\x12!\n\x04name\x18\x01 \x01(\tB\r\xbaH\nr\x05\x10\x01\x18\xff\x01\xc8\x01\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xe8\x07R\x0b\x64\x65scription\x12>\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\texpiresAt\x88\x01\x01\x12\x32\n\x06\x61pp_id\x18\x05 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$R\x05\x61ppIdB\r\n\x0b_expires_atJ\x04\x08\x03\x10\x04R\x0b\x65nvironment\"_\n\x14\x43reateAPIKeyResponse\x12/\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x16.transcodely.v1.APIKeyR\x06\x61piKey\x12\x16\n\x06secret\x18\x02 \x01(\tR\x06secret\"A\n\x10GetAPIKeyRequest\x12-\n\x02id\x18\x01 \x01(\tB\x1d\xbaH\x1ar\x15\x32\x13^ak_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"D\n\x11GetAPIKeyResponse\x12/\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x16.transcodely.v1.APIKeyR\x06\x61piKey\"\xd7\x01\n\x12ListAPIKeysRequest\x12\'\n\x0finclude_revoked\x18\x02 \x01(\x08R\x0eincludeRevoked\x12\x41\n\npagination\x18\x03 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12\x37\n\x06\x61pp_id\x18\x04 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^app_[a-zA-Z0-9_-]+$H\x00R\x05\x61ppId\x88\x01\x01\x42\t\n\x07_app_idJ\x04\x08\x01\x10\x02R\x0b\x65nvironment\"\x8c\x01\n\x13ListAPIKeysResponse\x12\x31\n\x08\x61pi_keys\x18\x01 \x03(\x0b\x32\x16.transcodely.v1.APIKeyR\x07\x61piKeys\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"f\n\x13RevokeAPIKeyRequest\x12-\n\x02id\x18\x01 \x01(\tB\x1d\xbaH\x1ar\x15\x32\x13^ak_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12 \n\x06reason\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03R\x06reason\"G\n\x14RevokeAPIKeyResponse\x12/\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x16.transcodely.v1.APIKeyR\x06\x61piKey2\xd6\x02\n\rAPIKeyService\x12S\n\x06\x43reate\x12#.transcodely.v1.CreateAPIKeyRequest\x1a$.transcodely.v1.CreateAPIKeyResponse\x12J\n\x03Get\x12 .transcodely.v1.GetAPIKeyRequest\x1a!.transcodely.v1.GetAPIKeyResponse\x12O\n\x04List\x12\".transcodely.v1.ListAPIKeysRequest\x1a#.transcodely.v1.ListAPIKeysResponse\x12S\n\x06Revoke\x12#.transcodely.v1.RevokeAPIKeyRequest\x1a$.transcodely.v1.RevokeAPIKeyResponseb\x06proto3')
31
31
 
32
32
  _globals = globals()
33
33
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -42,28 +42,30 @@ if not _descriptor._USE_C_DESCRIPTORS:
42
42
  _globals['_CREATEAPIKEYREQUEST'].fields_by_name['app_id']._serialized_options = b'\272H\030r\0262\024^app_[a-zA-Z0-9_-]+$'
43
43
  _globals['_GETAPIKEYREQUEST'].fields_by_name['id']._loaded_options = None
44
44
  _globals['_GETAPIKEYREQUEST'].fields_by_name['id']._serialized_options = b'\272H\032r\0252\023^ak_[a-zA-Z0-9_-]+$\310\001\001'
45
+ _globals['_LISTAPIKEYSREQUEST'].fields_by_name['app_id']._loaded_options = None
46
+ _globals['_LISTAPIKEYSREQUEST'].fields_by_name['app_id']._serialized_options = b'\272H\030r\0262\024^app_[a-zA-Z0-9_-]+$'
45
47
  _globals['_REVOKEAPIKEYREQUEST'].fields_by_name['id']._loaded_options = None
46
48
  _globals['_REVOKEAPIKEYREQUEST'].fields_by_name['id']._serialized_options = b'\272H\032r\0252\023^ak_[a-zA-Z0-9_-]+$\310\001\001'
47
49
  _globals['_REVOKEAPIKEYREQUEST'].fields_by_name['reason']._loaded_options = None
48
50
  _globals['_REVOKEAPIKEYREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\005r\003\030\364\003'
49
51
  _globals['_APIKEY']._serialized_start=140
50
- _globals['_APIKEY']._serialized_end=651
51
- _globals['_CREATEAPIKEYREQUEST']._serialized_start=654
52
- _globals['_CREATEAPIKEYREQUEST']._serialized_end=904
53
- _globals['_CREATEAPIKEYRESPONSE']._serialized_start=906
54
- _globals['_CREATEAPIKEYRESPONSE']._serialized_end=1001
55
- _globals['_GETAPIKEYREQUEST']._serialized_start=1003
56
- _globals['_GETAPIKEYREQUEST']._serialized_end=1068
57
- _globals['_GETAPIKEYRESPONSE']._serialized_start=1070
58
- _globals['_GETAPIKEYRESPONSE']._serialized_end=1138
59
- _globals['_LISTAPIKEYSREQUEST']._serialized_start=1141
60
- _globals['_LISTAPIKEYSREQUEST']._serialized_end=1288
61
- _globals['_LISTAPIKEYSRESPONSE']._serialized_start=1291
62
- _globals['_LISTAPIKEYSRESPONSE']._serialized_end=1431
63
- _globals['_REVOKEAPIKEYREQUEST']._serialized_start=1433
64
- _globals['_REVOKEAPIKEYREQUEST']._serialized_end=1535
65
- _globals['_REVOKEAPIKEYRESPONSE']._serialized_start=1537
66
- _globals['_REVOKEAPIKEYRESPONSE']._serialized_end=1608
67
- _globals['_APIKEYSERVICE']._serialized_start=1611
68
- _globals['_APIKEYSERVICE']._serialized_end=1953
52
+ _globals['_APIKEY']._serialized_end=674
53
+ _globals['_CREATEAPIKEYREQUEST']._serialized_start=677
54
+ _globals['_CREATEAPIKEYREQUEST']._serialized_end=927
55
+ _globals['_CREATEAPIKEYRESPONSE']._serialized_start=929
56
+ _globals['_CREATEAPIKEYRESPONSE']._serialized_end=1024
57
+ _globals['_GETAPIKEYREQUEST']._serialized_start=1026
58
+ _globals['_GETAPIKEYREQUEST']._serialized_end=1091
59
+ _globals['_GETAPIKEYRESPONSE']._serialized_start=1093
60
+ _globals['_GETAPIKEYRESPONSE']._serialized_end=1161
61
+ _globals['_LISTAPIKEYSREQUEST']._serialized_start=1164
62
+ _globals['_LISTAPIKEYSREQUEST']._serialized_end=1379
63
+ _globals['_LISTAPIKEYSRESPONSE']._serialized_start=1382
64
+ _globals['_LISTAPIKEYSRESPONSE']._serialized_end=1522
65
+ _globals['_REVOKEAPIKEYREQUEST']._serialized_start=1524
66
+ _globals['_REVOKEAPIKEYREQUEST']._serialized_end=1626
67
+ _globals['_REVOKEAPIKEYRESPONSE']._serialized_start=1628
68
+ _globals['_REVOKEAPIKEYRESPONSE']._serialized_end=1699
69
+ _globals['_APIKEYSERVICE']._serialized_start=1702
70
+ _globals['_APIKEYSERVICE']._serialized_end=2044
69
71
  # @@protoc_insertion_point(module_scope)
@@ -9,8 +9,9 @@ from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Map
9
9
  DESCRIPTOR: _descriptor.FileDescriptor
10
10
 
11
11
  class APIKey(_message.Message):
12
- __slots__ = ("id", "name", "description", "key_prefix", "key_hint", "scopes", "last_used_at", "expires_at", "created_at", "is_revoked", "revoked_at")
12
+ __slots__ = ("id", "app_id", "name", "description", "key_prefix", "key_hint", "scopes", "last_used_at", "expires_at", "created_at", "is_revoked", "revoked_at")
13
13
  ID_FIELD_NUMBER: _ClassVar[int]
14
+ APP_ID_FIELD_NUMBER: _ClassVar[int]
14
15
  NAME_FIELD_NUMBER: _ClassVar[int]
15
16
  DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
16
17
  KEY_PREFIX_FIELD_NUMBER: _ClassVar[int]
@@ -22,6 +23,7 @@ class APIKey(_message.Message):
22
23
  IS_REVOKED_FIELD_NUMBER: _ClassVar[int]
23
24
  REVOKED_AT_FIELD_NUMBER: _ClassVar[int]
24
25
  id: str
26
+ app_id: str
25
27
  name: str
26
28
  description: str
27
29
  key_prefix: str
@@ -32,7 +34,7 @@ class APIKey(_message.Message):
32
34
  created_at: _timestamp_pb2.Timestamp
33
35
  is_revoked: bool
34
36
  revoked_at: _timestamp_pb2.Timestamp
35
- def __init__(self, id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., key_prefix: _Optional[str] = ..., key_hint: _Optional[str] = ..., scopes: _Optional[_Iterable[str]] = ..., last_used_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., is_revoked: bool = ..., revoked_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
37
+ def __init__(self, id: _Optional[str] = ..., app_id: _Optional[str] = ..., name: _Optional[str] = ..., description: _Optional[str] = ..., key_prefix: _Optional[str] = ..., key_hint: _Optional[str] = ..., scopes: _Optional[_Iterable[str]] = ..., last_used_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., is_revoked: bool = ..., revoked_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ...
36
38
 
37
39
  class CreateAPIKeyRequest(_message.Message):
38
40
  __slots__ = ("name", "description", "expires_at", "app_id")
@@ -67,12 +69,14 @@ class GetAPIKeyResponse(_message.Message):
67
69
  def __init__(self, api_key: _Optional[_Union[APIKey, _Mapping]] = ...) -> None: ...
68
70
 
69
71
  class ListAPIKeysRequest(_message.Message):
70
- __slots__ = ("include_revoked", "pagination")
72
+ __slots__ = ("include_revoked", "pagination", "app_id")
71
73
  INCLUDE_REVOKED_FIELD_NUMBER: _ClassVar[int]
72
74
  PAGINATION_FIELD_NUMBER: _ClassVar[int]
75
+ APP_ID_FIELD_NUMBER: _ClassVar[int]
73
76
  include_revoked: bool
74
77
  pagination: _common_pb2.PaginationRequest
75
- def __init__(self, include_revoked: bool = ..., pagination: _Optional[_Union[_common_pb2.PaginationRequest, _Mapping]] = ...) -> None: ...
78
+ app_id: str
79
+ def __init__(self, include_revoked: bool = ..., pagination: _Optional[_Union[_common_pb2.PaginationRequest, _Mapping]] = ..., app_id: _Optional[str] = ...) -> None: ...
76
80
 
77
81
  class ListAPIKeysResponse(_message.Message):
78
82
  __slots__ = ("api_keys", "pagination")
transcodely/v1/app_pb2.py CHANGED
@@ -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\x18transcodely/v1/app.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xec\x05\n\x03\x41pp\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x15\n\x06org_id\x18\x02 \x01(\tR\x05orgId\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12<\n\x07webhook\x18\x05 \x01(\x0b\x32\x1d.transcodely.v1.WebhookConfigH\x01R\x07webhook\x88\x01\x01\x12\x31\n\x06status\x18\x06 \x01(\x0e\x32\x19.transcodely.v1.AppStatusR\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@\n\x0b\x61rchived_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02R\narchivedAt\x88\x01\x01\x12,\n\x0fhosting_enabled\x18\n \x01(\x08H\x03R\x0ehostingEnabled\x88\x01\x01\x12*\n\x0ehosting_status\x18\x0b \x01(\tH\x04R\rhostingStatus\x88\x01\x01\x12&\n\x0c\x63\x64n_hostname\x18\x0c \x01(\tH\x05R\x0b\x63\x64nHostname\x88\x01\x01\x12I\n\x0ehosting_config\x18\r \x01(\x0b\x32\x1d.transcodely.v1.HostingConfigH\x06R\rhostingConfig\x88\x01\x01\x12\x16\n\x06object\x18\x0e \x01(\tR\x06objectB\x0e\n\x0c_descriptionB\n\n\x08_webhookB\x0e\n\x0c_archived_atB\x12\n\x10_hosting_enabledB\x11\n\x0f_hosting_statusB\x0f\n\r_cdn_hostnameB\x11\n\x0f_hosting_config\"\x8e\x01\n\rWebhookConfig\x12\x10\n\x03url\x18\x01 \x01(\tR\x03url\x12$\n\x0bsecret_hint\x18\x02 \x01(\tH\x00R\nsecretHint\x88\x01\x01\x12\x1d\n\nhas_secret\x18\x03 \x01(\x08R\thasSecret\x12\x16\n\x06\x65vents\x18\x04 \x03(\tR\x06\x65ventsB\x0e\n\x0c_secret_hint\"\xbb\x02\n\x10\x43reateAppRequest\x12\x35\n\x06org_id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^org_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x05orgId\x12 \n\x04name\x18\x02 \x01(\tB\x0c\xbaH\tr\x04\x10\x01\x18<\xc8\x01\x01R\x04name\x12/\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03H\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x42\n\x07webhook\x18\x04 \x01(\x0b\x32#.transcodely.v1.CreateWebhookConfigH\x01R\x07webhook\x88\x01\x01\x12*\n\x0e\x65nable_hosting\x18\x05 \x01(\x08H\x02R\renableHosting\x88\x01\x01\x42\x0e\n\x0c_descriptionB\n\n\x08_webhookB\x11\n\x0f_enable_hosting\"\x7f\n\x13\x43reateWebhookConfig\x12\'\n\x03url\x18\x01 \x01(\tB\x15\xbaH\x12r\r:\x08https://\x88\x01\x01\xc8\x01\x01R\x03url\x12\'\n\x0fgenerate_secret\x18\x02 \x01(\x08R\x0egenerateSecret\x12\x16\n\x06\x65vents\x18\x03 \x03(\tR\x06\x65vents\"y\n\x11\x43reateAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\x12*\n\x0ewebhook_secret\x18\x02 \x01(\tH\x00R\rwebhookSecret\x88\x01\x01\x42\x11\n\x0f_webhook_secret\"?\n\rGetAppRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"7\n\x0eGetAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\"\x80\x02\n\x10UpdateAppRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12\"\n\x04name\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18<H\x00R\x04name\x88\x01\x01\x12/\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03H\x01R\x0b\x64\x65scription\x88\x01\x01\x12\x42\n\x07webhook\x18\x04 \x01(\x0b\x32#.transcodely.v1.UpdateWebhookConfigH\x02R\x07webhook\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionB\n\n\x08_webhook\"\x9a\x02\n\x13UpdateWebhookConfig\x12\xb5\x01\n\x03url\x18\x01 \x01(\tB\x9d\x01\xbaH\x99\x01\xba\x01\x95\x01\n(update_webhook_config.url_https_or_empty\x12,webhook url must be empty or an https:// URL\x1a;this == \'\' || (this.isUri() && this.startsWith(\'https://\'))H\x00R\x03url\x88\x01\x01\x12+\n\x11regenerate_secret\x18\x02 \x01(\x08R\x10regenerateSecret\x12\x16\n\x06\x65vents\x18\x03 \x03(\tR\x06\x65ventsB\x06\n\x04_url\"y\n\x11UpdateAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\x12*\n\x0ewebhook_secret\x18\x02 \x01(\tH\x00R\rwebhookSecret\x88\x01\x01\x42\x11\n\x0f_webhook_secret\"\xb6\x01\n\x0fListAppsRequest\x12\x35\n\x06org_id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^org_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x05orgId\x12\x41\n\npagination\x18\x02 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12)\n\x10include_archived\x18\x03 \x01(\x08R\x0fincludeArchived\"\x7f\n\x10ListAppsResponse\x12\'\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x13.transcodely.v1.AppR\x04\x61pps\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"C\n\x11\x41rchiveAppRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\";\n\x12\x41rchiveAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\"F\n\x14\x45nableHostingRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\">\n\x15\x45nableHostingResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\"\xd6\x02\n\rHostingConfig\x12\x32\n\x12\x64\x65\x66\x61ult_visibility\x18\x01 \x01(\tH\x00R\x11\x64\x65\x66\x61ultVisibility\x88\x01\x01\x12\x36\n\x15max_upload_size_bytes\x18\x02 \x01(\x03H\x01R\x12maxUploadSizeBytes\x88\x01\x01\x12\x30\n\x14\x63ors_allowed_origins\x18\x03 \x03(\tR\x12\x63orsAllowedOrigins\x12\\\n\x15\x61uto_profile_defaults\x18\x04 \x01(\x0b\x32#.transcodely.v1.AutoProfileDefaultsH\x02R\x13\x61utoProfileDefaults\x88\x01\x01\x42\x15\n\x13_default_visibilityB\x18\n\x16_max_upload_size_bytesB\x18\n\x16_auto_profile_defaults\"\x96\x02\n\x13\x41utoProfileDefaults\x12\x1b\n\x06\x66ormat\x18\x01 \x01(\tH\x00R\x06\x66ormat\x88\x01\x01\x12\x19\n\x05\x63odec\x18\x02 \x01(\tH\x01R\x05\x63odec\x88\x01\x01\x12*\n\x0emax_resolution\x18\x03 \x01(\tH\x02R\rmaxResolution\x88\x01\x01\x12&\n\x0cquality_tier\x18\x04 \x01(\tH\x03R\x0bqualityTier\x88\x01\x01\x12(\n\rencoding_mode\x18\x05 \x01(\tH\x04R\x0c\x65ncodingMode\x88\x01\x01\x42\t\n\x07_formatB\x08\n\x06_codecB\x11\n\x0f_max_resolutionB\x0f\n\r_quality_tierB\x10\n\x0e_encoding_mode\"\x92\x01\n\x1aUpdateHostingConfigRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12\x44\n\x0ehosting_config\x18\x02 \x01(\x0b\x32\x1d.transcodely.v1.HostingConfigR\rhostingConfig\"D\n\x1bUpdateHostingConfigResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp*W\n\tAppStatus\x12\x1a\n\x16\x41PP_STATUS_UNSPECIFIED\x10\x00\x12\x15\n\x11\x41PP_STATUS_ACTIVE\x10\x01\x12\x17\n\x13\x41PP_STATUS_ARCHIVED\x10\x02\x32\xdb\x04\n\nAppService\x12M\n\x06\x43reate\x12 .transcodely.v1.CreateAppRequest\x1a!.transcodely.v1.CreateAppResponse\x12\x44\n\x03Get\x12\x1d.transcodely.v1.GetAppRequest\x1a\x1e.transcodely.v1.GetAppResponse\x12M\n\x06Update\x12 .transcodely.v1.UpdateAppRequest\x1a!.transcodely.v1.UpdateAppResponse\x12I\n\x04List\x12\x1f.transcodely.v1.ListAppsRequest\x1a .transcodely.v1.ListAppsResponse\x12P\n\x07\x41rchive\x12!.transcodely.v1.ArchiveAppRequest\x1a\".transcodely.v1.ArchiveAppResponse\x12\\\n\rEnableHosting\x12$.transcodely.v1.EnableHostingRequest\x1a%.transcodely.v1.EnableHostingResponse\x12n\n\x13UpdateHostingConfig\x12*.transcodely.v1.UpdateHostingConfigRequest\x1a+.transcodely.v1.UpdateHostingConfigResponseb\x06proto3')
30
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18transcodely/v1/app.proto\x12\x0etranscodely.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1btranscodely/v1/common.proto\"\xb1\x05\n\x03\x41pp\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x15\n\x06org_id\x18\x02 \x01(\tR\x05orgId\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00R\x0b\x64\x65scription\x88\x01\x01\x12\x31\n\x06status\x18\x06 \x01(\x0e\x32\x19.transcodely.v1.AppStatusR\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@\n\x0b\x61rchived_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01R\narchivedAt\x88\x01\x01\x12,\n\x0fhosting_enabled\x18\n \x01(\x08H\x02R\x0ehostingEnabled\x88\x01\x01\x12*\n\x0ehosting_status\x18\x0b \x01(\tH\x03R\rhostingStatus\x88\x01\x01\x12&\n\x0c\x63\x64n_hostname\x18\x0c \x01(\tH\x04R\x0b\x63\x64nHostname\x88\x01\x01\x12I\n\x0ehosting_config\x18\r \x01(\x0b\x32\x1d.transcodely.v1.HostingConfigH\x05R\rhostingConfig\x88\x01\x01\x12\x16\n\x06object\x18\x0e \x01(\tR\x06objectB\x0e\n\x0c_descriptionB\x0e\n\x0c_archived_atB\x12\n\x10_hosting_enabledB\x11\n\x0f_hosting_statusB\x0f\n\r_cdn_hostnameB\x11\n\x0f_hosting_configJ\x04\x08\x05\x10\x06R\x07webhook\"\xfa\x01\n\x10\x43reateAppRequest\x12\x35\n\x06org_id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^org_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x05orgId\x12 \n\x04name\x18\x02 \x01(\tB\x0c\xbaH\tr\x04\x10\x01\x18<\xc8\x01\x01R\x04name\x12/\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03H\x00R\x0b\x64\x65scription\x88\x01\x01\x12*\n\x0e\x65nable_hosting\x18\x05 \x01(\x08H\x01R\renableHosting\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x11\n\x0f_enable_hostingJ\x04\x08\x04\x10\x05R\x07webhook\"P\n\x11\x43reateAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61ppJ\x04\x08\x02\x10\x03R\x0ewebhook_secret\"?\n\rGetAppRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\"7\n\x0eGetAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\"\xbf\x01\n\x10UpdateAppRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12\"\n\x04name\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18<H\x00R\x04name\x88\x01\x01\x12/\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03H\x01R\x0b\x64\x65scription\x88\x01\x01\x42\x07\n\x05_nameB\x0e\n\x0c_descriptionJ\x04\x08\x04\x10\x05R\x07webhook\"P\n\x11UpdateAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61ppJ\x04\x08\x02\x10\x03R\x0ewebhook_secret\"\xb6\x01\n\x0fListAppsRequest\x12\x35\n\x06org_id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^org_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x05orgId\x12\x41\n\npagination\x18\x02 \x01(\x0b\x32!.transcodely.v1.PaginationRequestR\npagination\x12)\n\x10include_archived\x18\x03 \x01(\x08R\x0fincludeArchived\"\x7f\n\x10ListAppsResponse\x12\'\n\x04\x61pps\x18\x01 \x03(\x0b\x32\x13.transcodely.v1.AppR\x04\x61pps\x12\x42\n\npagination\x18\x02 \x01(\x0b\x32\".transcodely.v1.PaginationResponseR\npagination\"C\n\x11\x41rchiveAppRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\";\n\x12\x41rchiveAppResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\"F\n\x14\x45nableHostingRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\">\n\x15\x45nableHostingResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp\"\xd6\x02\n\rHostingConfig\x12\x32\n\x12\x64\x65\x66\x61ult_visibility\x18\x01 \x01(\tH\x00R\x11\x64\x65\x66\x61ultVisibility\x88\x01\x01\x12\x36\n\x15max_upload_size_bytes\x18\x02 \x01(\x03H\x01R\x12maxUploadSizeBytes\x88\x01\x01\x12\x30\n\x14\x63ors_allowed_origins\x18\x03 \x03(\tR\x12\x63orsAllowedOrigins\x12\\\n\x15\x61uto_profile_defaults\x18\x04 \x01(\x0b\x32#.transcodely.v1.AutoProfileDefaultsH\x02R\x13\x61utoProfileDefaults\x88\x01\x01\x42\x15\n\x13_default_visibilityB\x18\n\x16_max_upload_size_bytesB\x18\n\x16_auto_profile_defaults\"\x96\x02\n\x13\x41utoProfileDefaults\x12\x1b\n\x06\x66ormat\x18\x01 \x01(\tH\x00R\x06\x66ormat\x88\x01\x01\x12\x19\n\x05\x63odec\x18\x02 \x01(\tH\x01R\x05\x63odec\x88\x01\x01\x12*\n\x0emax_resolution\x18\x03 \x01(\tH\x02R\rmaxResolution\x88\x01\x01\x12&\n\x0cquality_tier\x18\x04 \x01(\tH\x03R\x0bqualityTier\x88\x01\x01\x12(\n\rencoding_mode\x18\x05 \x01(\tH\x04R\x0c\x65ncodingMode\x88\x01\x01\x42\t\n\x07_formatB\x08\n\x06_codecB\x11\n\x0f_max_resolutionB\x0f\n\r_quality_tierB\x10\n\x0e_encoding_mode\"\x92\x01\n\x1aUpdateHostingConfigRequest\x12.\n\x02id\x18\x01 \x01(\tB\x1e\xbaH\x1br\x16\x32\x14^app_[a-zA-Z0-9_-]+$\xc8\x01\x01R\x02id\x12\x44\n\x0ehosting_config\x18\x02 \x01(\x0b\x32\x1d.transcodely.v1.HostingConfigR\rhostingConfig\"D\n\x1bUpdateHostingConfigResponse\x12%\n\x03\x61pp\x18\x01 \x01(\x0b\x32\x13.transcodely.v1.AppR\x03\x61pp*W\n\tAppStatus\x12\x1a\n\x16\x41PP_STATUS_UNSPECIFIED\x10\x00\x12\x15\n\x11\x41PP_STATUS_ACTIVE\x10\x01\x12\x17\n\x13\x41PP_STATUS_ARCHIVED\x10\x02\x32\xdb\x04\n\nAppService\x12M\n\x06\x43reate\x12 .transcodely.v1.CreateAppRequest\x1a!.transcodely.v1.CreateAppResponse\x12\x44\n\x03Get\x12\x1d.transcodely.v1.GetAppRequest\x1a\x1e.transcodely.v1.GetAppResponse\x12M\n\x06Update\x12 .transcodely.v1.UpdateAppRequest\x1a!.transcodely.v1.UpdateAppResponse\x12I\n\x04List\x12\x1f.transcodely.v1.ListAppsRequest\x1a .transcodely.v1.ListAppsResponse\x12P\n\x07\x41rchive\x12!.transcodely.v1.ArchiveAppRequest\x1a\".transcodely.v1.ArchiveAppResponse\x12\\\n\rEnableHosting\x12$.transcodely.v1.EnableHostingRequest\x1a%.transcodely.v1.EnableHostingResponse\x12n\n\x13UpdateHostingConfig\x12*.transcodely.v1.UpdateHostingConfigRequest\x1a+.transcodely.v1.UpdateHostingConfigResponseb\x06proto3')
31
31
 
32
32
  _globals = globals()
33
33
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -40,8 +40,6 @@ if not _descriptor._USE_C_DESCRIPTORS:
40
40
  _globals['_CREATEAPPREQUEST'].fields_by_name['name']._serialized_options = b'\272H\tr\004\020\001\030<\310\001\001'
41
41
  _globals['_CREATEAPPREQUEST'].fields_by_name['description']._loaded_options = None
42
42
  _globals['_CREATEAPPREQUEST'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\364\003'
43
- _globals['_CREATEWEBHOOKCONFIG'].fields_by_name['url']._loaded_options = None
44
- _globals['_CREATEWEBHOOKCONFIG'].fields_by_name['url']._serialized_options = b'\272H\022r\r:\010https://\210\001\001\310\001\001'
45
43
  _globals['_GETAPPREQUEST'].fields_by_name['id']._loaded_options = None
46
44
  _globals['_GETAPPREQUEST'].fields_by_name['id']._serialized_options = b'\272H\033r\0262\024^app_[a-zA-Z0-9_-]+$\310\001\001'
47
45
  _globals['_UPDATEAPPREQUEST'].fields_by_name['id']._loaded_options = None
@@ -50,8 +48,6 @@ if not _descriptor._USE_C_DESCRIPTORS:
50
48
  _globals['_UPDATEAPPREQUEST'].fields_by_name['name']._serialized_options = b'\272H\006r\004\020\001\030<'
51
49
  _globals['_UPDATEAPPREQUEST'].fields_by_name['description']._loaded_options = None
52
50
  _globals['_UPDATEAPPREQUEST'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\364\003'
53
- _globals['_UPDATEWEBHOOKCONFIG'].fields_by_name['url']._loaded_options = None
54
- _globals['_UPDATEWEBHOOKCONFIG'].fields_by_name['url']._serialized_options = b'\272H\231\001\272\001\225\001\n(update_webhook_config.url_https_or_empty\022,webhook url must be empty or an https:// URL\032;this == \'\' || (this.isUri() && this.startsWith(\'https://\'))'
55
51
  _globals['_LISTAPPSREQUEST'].fields_by_name['org_id']._loaded_options = None
56
52
  _globals['_LISTAPPSREQUEST'].fields_by_name['org_id']._serialized_options = b'\272H\033r\0262\024^org_[a-zA-Z0-9_-]+$\310\001\001'
57
53
  _globals['_ARCHIVEAPPREQUEST'].fields_by_name['id']._loaded_options = None
@@ -60,48 +56,42 @@ if not _descriptor._USE_C_DESCRIPTORS:
60
56
  _globals['_ENABLEHOSTINGREQUEST'].fields_by_name['id']._serialized_options = b'\272H\033r\0262\024^app_[a-zA-Z0-9_-]+$\310\001\001'
61
57
  _globals['_UPDATEHOSTINGCONFIGREQUEST'].fields_by_name['id']._loaded_options = None
62
58
  _globals['_UPDATEHOSTINGCONFIGREQUEST'].fields_by_name['id']._serialized_options = b'\272H\033r\0262\024^app_[a-zA-Z0-9_-]+$\310\001\001'
63
- _globals['_APPSTATUS']._serialized_start=3815
64
- _globals['_APPSTATUS']._serialized_end=3902
59
+ _globals['_APPSTATUS']._serialized_start=2985
60
+ _globals['_APPSTATUS']._serialized_end=3072
65
61
  _globals['_APP']._serialized_start=136
66
- _globals['_APP']._serialized_end=884
67
- _globals['_WEBHOOKCONFIG']._serialized_start=887
68
- _globals['_WEBHOOKCONFIG']._serialized_end=1029
69
- _globals['_CREATEAPPREQUEST']._serialized_start=1032
70
- _globals['_CREATEAPPREQUEST']._serialized_end=1347
71
- _globals['_CREATEWEBHOOKCONFIG']._serialized_start=1349
72
- _globals['_CREATEWEBHOOKCONFIG']._serialized_end=1476
73
- _globals['_CREATEAPPRESPONSE']._serialized_start=1478
74
- _globals['_CREATEAPPRESPONSE']._serialized_end=1599
75
- _globals['_GETAPPREQUEST']._serialized_start=1601
76
- _globals['_GETAPPREQUEST']._serialized_end=1664
77
- _globals['_GETAPPRESPONSE']._serialized_start=1666
78
- _globals['_GETAPPRESPONSE']._serialized_end=1721
79
- _globals['_UPDATEAPPREQUEST']._serialized_start=1724
80
- _globals['_UPDATEAPPREQUEST']._serialized_end=1980
81
- _globals['_UPDATEWEBHOOKCONFIG']._serialized_start=1983
82
- _globals['_UPDATEWEBHOOKCONFIG']._serialized_end=2265
83
- _globals['_UPDATEAPPRESPONSE']._serialized_start=2267
84
- _globals['_UPDATEAPPRESPONSE']._serialized_end=2388
85
- _globals['_LISTAPPSREQUEST']._serialized_start=2391
86
- _globals['_LISTAPPSREQUEST']._serialized_end=2573
87
- _globals['_LISTAPPSRESPONSE']._serialized_start=2575
88
- _globals['_LISTAPPSRESPONSE']._serialized_end=2702
89
- _globals['_ARCHIVEAPPREQUEST']._serialized_start=2704
90
- _globals['_ARCHIVEAPPREQUEST']._serialized_end=2771
91
- _globals['_ARCHIVEAPPRESPONSE']._serialized_start=2773
92
- _globals['_ARCHIVEAPPRESPONSE']._serialized_end=2832
93
- _globals['_ENABLEHOSTINGREQUEST']._serialized_start=2834
94
- _globals['_ENABLEHOSTINGREQUEST']._serialized_end=2904
95
- _globals['_ENABLEHOSTINGRESPONSE']._serialized_start=2906
96
- _globals['_ENABLEHOSTINGRESPONSE']._serialized_end=2968
97
- _globals['_HOSTINGCONFIG']._serialized_start=2971
98
- _globals['_HOSTINGCONFIG']._serialized_end=3313
99
- _globals['_AUTOPROFILEDEFAULTS']._serialized_start=3316
100
- _globals['_AUTOPROFILEDEFAULTS']._serialized_end=3594
101
- _globals['_UPDATEHOSTINGCONFIGREQUEST']._serialized_start=3597
102
- _globals['_UPDATEHOSTINGCONFIGREQUEST']._serialized_end=3743
103
- _globals['_UPDATEHOSTINGCONFIGRESPONSE']._serialized_start=3745
104
- _globals['_UPDATEHOSTINGCONFIGRESPONSE']._serialized_end=3813
105
- _globals['_APPSERVICE']._serialized_start=3905
106
- _globals['_APPSERVICE']._serialized_end=4508
62
+ _globals['_APP']._serialized_end=825
63
+ _globals['_CREATEAPPREQUEST']._serialized_start=828
64
+ _globals['_CREATEAPPREQUEST']._serialized_end=1078
65
+ _globals['_CREATEAPPRESPONSE']._serialized_start=1080
66
+ _globals['_CREATEAPPRESPONSE']._serialized_end=1160
67
+ _globals['_GETAPPREQUEST']._serialized_start=1162
68
+ _globals['_GETAPPREQUEST']._serialized_end=1225
69
+ _globals['_GETAPPRESPONSE']._serialized_start=1227
70
+ _globals['_GETAPPRESPONSE']._serialized_end=1282
71
+ _globals['_UPDATEAPPREQUEST']._serialized_start=1285
72
+ _globals['_UPDATEAPPREQUEST']._serialized_end=1476
73
+ _globals['_UPDATEAPPRESPONSE']._serialized_start=1478
74
+ _globals['_UPDATEAPPRESPONSE']._serialized_end=1558
75
+ _globals['_LISTAPPSREQUEST']._serialized_start=1561
76
+ _globals['_LISTAPPSREQUEST']._serialized_end=1743
77
+ _globals['_LISTAPPSRESPONSE']._serialized_start=1745
78
+ _globals['_LISTAPPSRESPONSE']._serialized_end=1872
79
+ _globals['_ARCHIVEAPPREQUEST']._serialized_start=1874
80
+ _globals['_ARCHIVEAPPREQUEST']._serialized_end=1941
81
+ _globals['_ARCHIVEAPPRESPONSE']._serialized_start=1943
82
+ _globals['_ARCHIVEAPPRESPONSE']._serialized_end=2002
83
+ _globals['_ENABLEHOSTINGREQUEST']._serialized_start=2004
84
+ _globals['_ENABLEHOSTINGREQUEST']._serialized_end=2074
85
+ _globals['_ENABLEHOSTINGRESPONSE']._serialized_start=2076
86
+ _globals['_ENABLEHOSTINGRESPONSE']._serialized_end=2138
87
+ _globals['_HOSTINGCONFIG']._serialized_start=2141
88
+ _globals['_HOSTINGCONFIG']._serialized_end=2483
89
+ _globals['_AUTOPROFILEDEFAULTS']._serialized_start=2486
90
+ _globals['_AUTOPROFILEDEFAULTS']._serialized_end=2764
91
+ _globals['_UPDATEHOSTINGCONFIGREQUEST']._serialized_start=2767
92
+ _globals['_UPDATEHOSTINGCONFIGREQUEST']._serialized_end=2913
93
+ _globals['_UPDATEHOSTINGCONFIGRESPONSE']._serialized_start=2915
94
+ _globals['_UPDATEHOSTINGCONFIGRESPONSE']._serialized_end=2983
95
+ _globals['_APPSERVICE']._serialized_start=3075
96
+ _globals['_APPSERVICE']._serialized_end=3678
107
97
  # @@protoc_insertion_point(module_scope)