diff --git a/DO_OPENAPI_COMMIT_SHA.txt b/DO_OPENAPI_COMMIT_SHA.txt index 7e399b9c..6519886c 100644 --- a/DO_OPENAPI_COMMIT_SHA.txt +++ b/DO_OPENAPI_COMMIT_SHA.txt @@ -1 +1 @@ -9485b4a +edb9677 diff --git a/docs/source/pydo.types.list.rst b/docs/source/pydo.types.list.rst new file mode 100644 index 00000000..fc1b8c82 --- /dev/null +++ b/docs/source/pydo.types.list.rst @@ -0,0 +1,10 @@ +pydo.types.list package +======================= + +Module contents +--------------- + +.. automodule:: pydo.types.list + :members: + :undoc-members: + :show-inheritance: diff --git a/src/pydo/aio/operations/_operations.py b/src/pydo/aio/operations/_operations.py index 36883aea..b229f68b 100644 --- a/src/pydo/aio/operations/_operations.py +++ b/src/pydo/aio/operations/_operations.py @@ -295,6 +295,7 @@ build_genai_get_agent_request, build_genai_get_agent_usage_request, build_genai_get_anthropic_api_key_request, + build_genai_get_custom_model_request, build_genai_get_evaluation_dataset_download_url_request, build_genai_get_evaluation_run_prompt_results_request, build_genai_get_evaluation_run_request, @@ -4081,7 +4082,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -4275,7 +4278,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -4301,7 +4307,10 @@ async def list( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -4592,7 +4601,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -4905,7 +4916,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -5614,7 +5627,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -5819,6 +5835,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -5847,7 +5866,10 @@ async def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -6150,7 +6172,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -6477,7 +6502,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -7303,7 +7331,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -7508,6 +7539,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -7536,7 +7570,10 @@ async def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -7839,7 +7876,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -8166,7 +8206,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -8930,7 +8973,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -9135,6 +9181,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -9163,7 +9212,10 @@ async def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -9466,7 +9518,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -9793,7 +9848,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -10548,7 +10606,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -10753,6 +10814,9 @@ async def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -10781,7 +10845,10 @@ async def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -11084,7 +11151,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -11411,7 +11481,10 @@ async def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -12154,7 +12227,9 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -12331,7 +12406,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -12355,7 +12433,10 @@ async def create( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -12616,7 +12697,9 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -12892,7 +12975,9 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -13430,7 +13515,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -13616,7 +13704,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -13643,7 +13733,9 @@ async def create( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -13916,7 +14008,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -14208,7 +14303,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -14877,7 +14975,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -15071,7 +15171,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -15097,7 +15200,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -15388,7 +15494,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -15701,7 +15809,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -16486,7 +16596,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -16680,7 +16792,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -16706,7 +16821,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -16997,7 +17115,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -17310,7 +17430,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -18034,7 +18156,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -18228,7 +18352,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -18254,7 +18381,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -18545,7 +18675,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -18858,7 +18990,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -19574,7 +19708,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -19768,7 +19904,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -19794,7 +19933,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -20085,7 +20227,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -20398,7 +20542,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -21055,7 +21201,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -21241,7 +21390,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -21268,7 +21419,9 @@ async def create( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -21541,7 +21694,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -21833,7 +21989,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -22502,7 +22661,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -22696,7 +22857,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -22722,7 +22886,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -23013,7 +23180,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -23326,7 +23495,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -24111,7 +24282,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -24305,7 +24478,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -24331,7 +24507,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -24622,7 +24801,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -24935,7 +25116,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -25659,7 +25842,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -25853,7 +26038,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -25879,7 +26067,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -26170,7 +26361,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -26483,7 +26676,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -27199,7 +27394,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -27393,7 +27590,10 @@ async def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -27419,7 +27619,10 @@ async def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -27710,7 +27913,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -28023,7 +28228,9 @@ async def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -28669,7 +28876,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -28846,7 +29055,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -28870,7 +29082,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -29131,7 +29346,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -29407,7 +29624,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -29945,7 +30164,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -30131,7 +30353,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -30158,7 +30382,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -30431,7 +30657,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -30723,7 +30952,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -31392,7 +31624,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -31586,7 +31820,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -31612,7 +31849,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -31903,7 +32143,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -32216,7 +32458,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -33001,7 +33245,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -33195,7 +33441,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -33221,7 +33470,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -33512,7 +33764,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -33825,7 +34079,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -34549,7 +34805,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -34743,7 +35001,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -34769,7 +35030,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -35060,7 +35324,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -35373,7 +35639,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -36089,7 +36357,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -36283,7 +36553,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -36309,7 +36582,10 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -36600,7 +36876,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -36913,7 +37191,9 @@ async def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -37752,7 +38032,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -37938,7 +38221,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -37965,7 +38250,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -38238,7 +38525,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -38530,7 +38820,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -39199,7 +39492,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -39393,7 +39688,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -39419,7 +39717,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -39710,7 +40011,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -40023,7 +40326,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -40808,7 +41113,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -41002,7 +41309,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -41028,7 +41338,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -41319,7 +41632,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -41632,7 +41947,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -42356,7 +42673,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -42550,7 +42869,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -42576,7 +42898,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -42867,7 +43192,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -43180,7 +43507,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -43896,7 +44225,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -44090,7 +44421,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -44116,7 +44450,10 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -44407,7 +44744,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -44720,7 +45059,9 @@ async def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JS "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -45467,7 +45808,9 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -45644,7 +45987,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -45668,7 +46014,10 @@ async def update( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -45929,7 +46278,9 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -46205,7 +46556,9 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -46745,7 +47098,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -46931,7 +47287,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -46958,7 +47316,9 @@ async def update( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -47231,7 +47591,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -47523,7 +47886,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -48192,7 +48558,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -48386,7 +48754,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -48412,7 +48783,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -48703,7 +49077,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -49016,7 +49392,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -49801,7 +50179,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -49995,7 +50375,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -50021,7 +50404,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -50312,7 +50698,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -50625,7 +51013,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -51349,7 +51739,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -51543,7 +51935,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -51569,7 +51964,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -51860,7 +52258,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -52173,7 +52573,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -52889,7 +53291,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -53083,7 +53487,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -53109,7 +53516,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -53400,7 +53810,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -53713,7 +54125,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -54388,7 +54802,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -54574,7 +54991,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -54601,7 +55020,9 @@ async def update( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -54874,7 +55295,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -55166,7 +55590,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -55835,7 +56262,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -56029,7 +56458,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -56055,7 +56487,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -56346,7 +56781,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -56659,7 +57096,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -57444,7 +57883,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -57638,7 +58079,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -57664,7 +58108,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -57955,7 +58402,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -58268,7 +58717,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -58992,7 +59443,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -59186,7 +59639,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -59212,7 +59668,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -59503,7 +59962,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -59816,7 +60277,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -60532,7 +60995,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -60726,7 +61191,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -60752,7 +61220,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -61043,7 +61514,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -61356,7 +61829,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -62017,7 +62492,9 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -62194,7 +62671,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -62218,7 +62698,10 @@ async def update( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -62479,7 +62962,9 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -62755,7 +63240,9 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -63295,7 +63782,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -63481,7 +63971,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -63508,7 +64000,9 @@ async def update( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -63781,7 +64275,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -64073,7 +64570,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -64742,7 +65242,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -64936,7 +65438,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -64962,7 +65467,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -65253,7 +65761,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -65566,7 +66076,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -66351,7 +66863,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -66545,7 +67059,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -66571,7 +67088,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -66862,7 +67382,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -67175,7 +67697,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -67899,7 +68423,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -68093,7 +68619,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -68119,7 +68648,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -68410,7 +68942,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -68723,7 +69257,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -69439,7 +69975,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -69633,7 +70171,10 @@ async def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -69659,7 +70200,10 @@ async def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -69950,7 +70494,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -70263,7 +70809,9 @@ async def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -71138,7 +71686,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -71324,7 +71875,9 @@ async def restart( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -71351,7 +71904,9 @@ async def restart( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -71624,7 +72179,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -71916,7 +72474,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -72632,7 +73193,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -72818,7 +73382,9 @@ async def restart( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -72845,7 +73411,9 @@ async def restart( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -73118,7 +73686,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -73410,7 +73981,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -74126,7 +74700,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -74312,7 +74889,9 @@ async def restart( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -74339,7 +74918,9 @@ async def restart( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -74612,7 +75193,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -74904,7 +75488,10 @@ async def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -76149,7 +76736,9 @@ async def list_deployments( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -76343,7 +76932,10 @@ async def list_deployments( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -76369,7 +76961,10 @@ async def list_deployments( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -76660,7 +77255,9 @@ async def list_deployments( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -76973,7 +77570,9 @@ async def list_deployments( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -77807,7 +78406,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -77993,7 +78595,9 @@ async def create_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -78020,7 +78624,9 @@ async def create_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -78293,7 +78899,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -78585,7 +79194,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -79302,7 +79914,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -79488,7 +80103,9 @@ async def create_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -79515,7 +80132,9 @@ async def create_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -79788,7 +80407,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -80080,7 +80702,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -80795,7 +81420,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -80981,7 +81609,9 @@ async def create_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -81008,7 +81638,9 @@ async def create_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -81281,7 +81913,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -81573,7 +82208,10 @@ async def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -82372,7 +83010,10 @@ async def get_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -82558,7 +83199,9 @@ async def get_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -82585,7 +83228,9 @@ async def get_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -82858,7 +83503,10 @@ async def get_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -83150,7 +83798,10 @@ async def get_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -83936,7 +84587,10 @@ async def cancel_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -84122,7 +84776,9 @@ async def cancel_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -84149,7 +84805,9 @@ async def cancel_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -84422,7 +85080,10 @@ async def cancel_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -84714,7 +85375,10 @@ async def cancel_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -86790,7 +87454,10 @@ async def list_events( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -86995,6 +87662,9 @@ async def list_events( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -87023,7 +87693,10 @@ async def list_events( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -87326,7 +87999,10 @@ async def list_events( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -87653,7 +88329,10 @@ async def list_events( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -88538,7 +89217,9 @@ async def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -88732,7 +89413,10 @@ async def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -88758,7 +89442,10 @@ async def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -89049,7 +89736,9 @@ async def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -89362,7 +90051,9 @@ async def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -90217,7 +90908,9 @@ async def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -90411,7 +91104,10 @@ async def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -90437,7 +91133,10 @@ async def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -90728,7 +91427,9 @@ async def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -91041,7 +91742,9 @@ async def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -92248,7 +92951,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -92425,7 +93130,10 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -92449,7 +93157,10 @@ async def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -92710,283 +93421,287 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. + "prefix": "str", # Optional. + Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. - "prefix": "str", # Optional. - Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. - "regex": "str" # Optional. - RE2 style regex-based match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. For more - information about RE2 syntax, see: - https://github.com/google/re2/wiki/Syntax. - } - ], - "expose_headers": [ - "str" # Optional. The set of HTTP - response headers that browsers are allowed to access. This - configures the ``Access-Control-Expose-Headers`` header. - ], - "max_age": "str" # Optional. An optional - duration specifying how long browsers can cache the results of a - preflight request. This configures the ``Access-Control-Max-Age`` - header. - }, - "dockerfile_path": "str", # Optional. The path to - the Dockerfile relative to the root of the repo. If set, it will be - used to build this component. Otherwise, App Platform will attempt to - build it using buildpacks. - "environment_slug": "str", # Optional. An - environment slug describing the type of this app. For a full list, - please refer to `the product documentation - `_. - "envs": [ - { - "key": "str", # The variable name. - Required. - "scope": "RUN_AND_BUILD_TIME", # - Optional. Default value is "RUN_AND_BUILD_TIME". * RUN_TIME: - Made available only at run-time * BUILD_TIME: Made available - only at build-time * RUN_AND_BUILD_TIME: Made available at - both build and run-time. Known values are: "UNSET", - "RUN_TIME", "BUILD_TIME", and "RUN_AND_BUILD_TIME". - "type": "GENERAL", # Optional. - Default value is "GENERAL". * GENERAL: A plain-text - environment variable * SECRET: A secret encrypted environment - variable. Known values are: "GENERAL" and "SECRET". - "value": "str" # Optional. The - value. If the type is ``SECRET``"" , the value will be - encrypted on first submission. On following submissions, the - encrypted value should be used. - } - ], - "git": { - "branch": "str", # Optional. The name of the - branch to use. - "repo_clone_url": "str" # Optional. The - clone URL of the repo. Example: - ``https://github.com/digitalocean/sample-golang.git``. - }, - "github": { - "branch": "str", # Optional. The name of the - branch to use. - "deploy_on_push": bool, # Optional. Whether - to automatically deploy new commits made to the repo. - "repo": "str" # Optional. The name of the - repo in the format owner/repo. Example: - ``digitalocean/sample-golang``. - }, - "gitlab": { - "branch": "str", # Optional. The name of the - branch to use. - "deploy_on_push": bool, # Optional. Whether - to automatically deploy new commits made to the repo. - "repo": "str" # Optional. The name of the - repo in the format owner/repo. Example: - ``digitalocean/sample-golang``. - }, - "health_check": { - "failure_threshold": 0, # Optional. The - number of failed health checks before considered unhealthy. - "http_path": "str", # Optional. The route - path used for the HTTP health check ping. If not set, the HTTP - health check will be disabled and a TCP health check used - instead. - "initial_delay_seconds": 0, # Optional. The - number of seconds to wait before beginning health checks. - "period_seconds": 0, # Optional. The number - of seconds to wait between health checks. - "port": 0, # Optional. The port on which the - health check will be performed. If not set, the health check will - be performed on the component's http_port. - "success_threshold": 0, # Optional. The - number of successful health checks before considered healthy. - "timeout_seconds": 0 # Optional. The number - of seconds after which the check times out. - }, - "http_port": 0, # Optional. The internal port on - which this service's run command will listen. Default: 8080 If there - is not an environment variable with the name ``PORT``"" , one will be - automatically added with its value set to the value of this field. - "image": { - "deploy_on_push": { - "enabled": bool # Optional. Whether - to automatically deploy new images. Can only be used for - images hosted in DOCR and can only be used with an image tag, - not a specific digest. - }, - "digest": "str", # Optional. The image - digest. Cannot be specified if tag is provided. - "registry": "str", # Optional. The registry - name. Must be left empty for the ``DOCR`` registry type. - "registry_credentials": "str", # Optional. - The credentials to be able to pull the image. The value will be - encrypted on first submission. On following submissions, the - encrypted value should be used. * "$username:$access_token" for - registries of type ``DOCKER_HUB``. * "$username:$access_token" - for registries of type ``GHCR``. - "registry_type": "str", # Optional. * - DOCKER_HUB: The DockerHub container registry type. * DOCR: The - DigitalOcean container registry type. * GHCR: The Github - container registry type. Known values are: "DOCKER_HUB", "DOCR", - and "GHCR". - "repository": "str", # Optional. The - repository name. - "tag": "latest" # Optional. Default value is - "latest". The repository tag. Defaults to ``latest`` if not - provided and no digest is provided. Cannot be specified if digest - is provided. - }, - "instance_count": 1, # Optional. Default value is 1. - The amount of instances that this component should be scaled to. - Default: 1. Must not be set if autoscaling is used. - "instance_size_slug": {}, - "internal_ports": [ - 0 # Optional. The ports on which this - service will listen for internal traffic. - ], - "liveness_health_check": { - "failure_threshold": 0, # Optional. The - number of failed health checks before considered unhealthy. - "http_path": "str", # Optional. The route - path used for the HTTP health check ping. If not set, the HTTP - health check will be disabled and a TCP health check used - instead. - "initial_delay_seconds": 0, # Optional. The - number of seconds to wait before beginning health checks. - "period_seconds": 0, # Optional. The number - of seconds to wait between health checks. - "port": 0, # Optional. The port on which the - health check will be performed. - "success_threshold": 0, # Optional. The - number of successful health checks before considered healthy. - "timeout_seconds": 0 # Optional. The number - of seconds after which the check times out. - }, - "log_destinations": [ - { - "name": "str", # Required. - "datadog": { - "api_key": "str", # Datadog - API key. Required. - "endpoint": "str" # - Optional. Datadog HTTP log intake endpoint. - }, - "logtail": { - "token": "str" # Optional. - Logtail token. - }, - "open_search": { - "basic_auth": { - "password": "str", # - Optional. Password for user defined in User. Is - required when ``endpoint`` is set. Cannot be set if - using a DigitalOcean DBaaS OpenSearch cluster. - "user": "str" # - Optional. Username to authenticate with. Only - required when ``endpoint`` is set. Defaults to - ``doadmin`` when ``cluster_name`` is set. - }, - "cluster_name": "str", # - Optional. The name of a DigitalOcean DBaaS OpenSearch - cluster to use as a log forwarding destination. Cannot be - specified if ``endpoint`` is also specified. - "endpoint": "str", # - Optional. OpenSearch API Endpoint. Only HTTPS is - supported. Format: https://:code:``::code:``. - Cannot be specified if ``cluster_name`` is also - specified. - "index_name": "logs" # - Optional. Default value is "logs". The index name to use - for the logs. If not set, the default index name is - "logs". - }, - "papertrail": { - "endpoint": "str" # - Papertrail syslog endpoint. Required. - } - } - ], - "name": "str", # Optional. The name. Must be unique - across all components within the same app. - "protocol": "str", # Optional. The protocol which - the service uses to serve traffic on the http_port. * ``HTTP``"" : - The app is serving the HTTP protocol. Default. * ``HTTP2``"" : The - app is serving the HTTP/2 protocol. Currently, this needs to be - implemented in the service by serving HTTP/2 cleartext (h2c). Known - values are: "HTTP" and "HTTP2". - "routes": [ - { - "path": "str", # Optional. - (Deprecated - Use Ingress Rules instead). An HTTP path - prefix. Paths must start with / and must be unique across all - components within an app. - "preserve_path_prefix": bool # - Optional. An optional flag to preserve the path that is - forwarded to the backend service. By default, the HTTP - request path will be trimmed from the left when forwarded to - the component. For example, a component with ``path=/api`` - will have requests to ``/api/list`` trimmed to ``/list``. If - this value is ``true``"" , the path will remain - ``/api/list``. - } - ], - "run_command": "str", # Optional. An optional run - command to override the component's default. - "source_dir": "str", # Optional. An optional path to - the working directory to use for the build. For Dockerfile builds, - this will be used as the build context. Must be relative to the root - of the repo. - "termination": { - "drain_seconds": 0, # Optional. The number - of seconds to wait between selecting a container instance for - termination and issuing the TERM signal. Selecting a container - instance for termination begins an asynchronous drain of new - requests on upstream load-balancers. (Default 15). - "grace_period_seconds": 0 # Optional. The - number of seconds to wait between sending a TERM signal to a - container and issuing a KILL which causes immediate shutdown. - (Default 120). - } - } - ], - "static_sites": [ - { - "bitbucket": { - "branch": "str", # Optional. The name of the - branch to use. - "deploy_on_push": bool, # Optional. Whether - to automatically deploy new commits made to the repo. - "repo": "str" # Optional. The name of the - repo in the format owner/repo. Example: - ``digitalocean/sample-golang``. - }, - "build_command": "str", # Optional. An optional - build command to run while building this component from source. - "catchall_document": "str", # Optional. The name of - the document to use as the fallback for any requests to documents - that are not found when serving this static site. Only 1 of - ``catchall_document`` or ``error_document`` can be set. - "cors": { - "allow_credentials": bool, # Optional. - Whether browsers should expose the response to the client-side - JavaScript code when the request"u2019s credentials mode is - include. This configures the ``Access-Control-Allow-Credentials`` - header. - "allow_headers": [ - "str" # Optional. The set of allowed - HTTP request headers. This configures the - ``Access-Control-Allow-Headers`` header. - ], - "allow_methods": [ - "str" # Optional. The set of allowed - HTTP methods. This configures the - ``Access-Control-Allow-Methods`` header. - ], - "allow_origins": [ - { - "exact": "str", # Optional. - Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + "regex": "str" # Optional. + RE2 style regex-based match. Only 1 of ``exact``"" , + ``prefix``"" , or ``regex`` must be set. For more + information about RE2 syntax, see: + https://github.com/google/re2/wiki/Syntax. + } + ], + "expose_headers": [ + "str" # Optional. The set of HTTP + response headers that browsers are allowed to access. This + configures the ``Access-Control-Expose-Headers`` header. + ], + "max_age": "str" # Optional. An optional + duration specifying how long browsers can cache the results of a + preflight request. This configures the ``Access-Control-Max-Age`` + header. + }, + "dockerfile_path": "str", # Optional. The path to + the Dockerfile relative to the root of the repo. If set, it will be + used to build this component. Otherwise, App Platform will attempt to + build it using buildpacks. + "environment_slug": "str", # Optional. An + environment slug describing the type of this app. For a full list, + please refer to `the product documentation + `_. + "envs": [ + { + "key": "str", # The variable name. + Required. + "scope": "RUN_AND_BUILD_TIME", # + Optional. Default value is "RUN_AND_BUILD_TIME". * RUN_TIME: + Made available only at run-time * BUILD_TIME: Made available + only at build-time * RUN_AND_BUILD_TIME: Made available at + both build and run-time. Known values are: "UNSET", + "RUN_TIME", "BUILD_TIME", and "RUN_AND_BUILD_TIME". + "type": "GENERAL", # Optional. + Default value is "GENERAL". * GENERAL: A plain-text + environment variable * SECRET: A secret encrypted environment + variable. Known values are: "GENERAL" and "SECRET". + "value": "str" # Optional. The + value. If the type is ``SECRET``"" , the value will be + encrypted on first submission. On following submissions, the + encrypted value should be used. + } + ], + "git": { + "branch": "str", # Optional. The name of the + branch to use. + "repo_clone_url": "str" # Optional. The + clone URL of the repo. Example: + ``https://github.com/digitalocean/sample-golang.git``. + }, + "github": { + "branch": "str", # Optional. The name of the + branch to use. + "deploy_on_push": bool, # Optional. Whether + to automatically deploy new commits made to the repo. + "repo": "str" # Optional. The name of the + repo in the format owner/repo. Example: + ``digitalocean/sample-golang``. + }, + "gitlab": { + "branch": "str", # Optional. The name of the + branch to use. + "deploy_on_push": bool, # Optional. Whether + to automatically deploy new commits made to the repo. + "repo": "str" # Optional. The name of the + repo in the format owner/repo. Example: + ``digitalocean/sample-golang``. + }, + "health_check": { + "failure_threshold": 0, # Optional. The + number of failed health checks before considered unhealthy. + "http_path": "str", # Optional. The route + path used for the HTTP health check ping. If not set, the HTTP + health check will be disabled and a TCP health check used + instead. + "initial_delay_seconds": 0, # Optional. The + number of seconds to wait before beginning health checks. + "period_seconds": 0, # Optional. The number + of seconds to wait between health checks. + "port": 0, # Optional. The port on which the + health check will be performed. If not set, the health check will + be performed on the component's http_port. + "success_threshold": 0, # Optional. The + number of successful health checks before considered healthy. + "timeout_seconds": 0 # Optional. The number + of seconds after which the check times out. + }, + "http_port": 0, # Optional. The internal port on + which this service's run command will listen. Default: 8080 If there + is not an environment variable with the name ``PORT``"" , one will be + automatically added with its value set to the value of this field. + "image": { + "deploy_on_push": { + "enabled": bool # Optional. Whether + to automatically deploy new images. Can only be used for + images hosted in DOCR and can only be used with an image tag, + not a specific digest. + }, + "digest": "str", # Optional. The image + digest. Cannot be specified if tag is provided. + "registry": "str", # Optional. The registry + name. Must be left empty for the ``DOCR`` registry type. + "registry_credentials": "str", # Optional. + The credentials to be able to pull the image. The value will be + encrypted on first submission. On following submissions, the + encrypted value should be used. * "$username:$access_token" for + registries of type ``DOCKER_HUB``. * "$username:$access_token" + for registries of type ``GHCR``. + "registry_type": "str", # Optional. * + DOCKER_HUB: The DockerHub container registry type. * DOCR: The + DigitalOcean container registry type. * GHCR: The Github + container registry type. Known values are: "DOCKER_HUB", "DOCR", + and "GHCR". + "repository": "str", # Optional. The + repository name. + "tag": "latest" # Optional. Default value is + "latest". The repository tag. Defaults to ``latest`` if not + provided and no digest is provided. Cannot be specified if digest + is provided. + }, + "instance_count": 1, # Optional. Default value is 1. + The amount of instances that this component should be scaled to. + Default: 1. Must not be set if autoscaling is used. + "instance_size_slug": {}, + "internal_ports": [ + 0 # Optional. The ports on which this + service will listen for internal traffic. + ], + "liveness_health_check": { + "failure_threshold": 0, # Optional. The + number of failed health checks before considered unhealthy. + "http_path": "str", # Optional. The route + path used for the HTTP health check ping. If not set, the HTTP + health check will be disabled and a TCP health check used + instead. + "initial_delay_seconds": 0, # Optional. The + number of seconds to wait before beginning health checks. + "period_seconds": 0, # Optional. The number + of seconds to wait between health checks. + "port": 0, # Optional. The port on which the + health check will be performed. + "success_threshold": 0, # Optional. The + number of successful health checks before considered healthy. + "timeout_seconds": 0 # Optional. The number + of seconds after which the check times out. + }, + "log_destinations": [ + { + "name": "str", # Required. + "datadog": { + "api_key": "str", # Datadog + API key. Required. + "endpoint": "str" # + Optional. Datadog HTTP log intake endpoint. + }, + "logtail": { + "token": "str" # Optional. + Logtail token. + }, + "open_search": { + "basic_auth": { + "password": "str", # + Optional. Password for user defined in User. Is + required when ``endpoint`` is set. Cannot be set if + using a DigitalOcean DBaaS OpenSearch cluster. + "user": "str" # + Optional. Username to authenticate with. Only + required when ``endpoint`` is set. Defaults to + ``doadmin`` when ``cluster_name`` is set. + }, + "cluster_name": "str", # + Optional. The name of a DigitalOcean DBaaS OpenSearch + cluster to use as a log forwarding destination. Cannot be + specified if ``endpoint`` is also specified. + "endpoint": "str", # + Optional. OpenSearch API Endpoint. Only HTTPS is + supported. Format: https://:code:``::code:``. + Cannot be specified if ``cluster_name`` is also + specified. + "index_name": "logs" # + Optional. Default value is "logs". The index name to use + for the logs. If not set, the default index name is + "logs". + }, + "papertrail": { + "endpoint": "str" # + Papertrail syslog endpoint. Required. + } + } + ], + "name": "str", # Optional. The name. Must be unique + across all components within the same app. + "protocol": "str", # Optional. The protocol which + the service uses to serve traffic on the http_port. * ``HTTP``"" : + The app is serving the HTTP protocol. Default. * ``HTTP2``"" : The + app is serving the HTTP/2 protocol. Currently, this needs to be + implemented in the service by serving HTTP/2 cleartext (h2c). Known + values are: "HTTP" and "HTTP2". + "routes": [ + { + "path": "str", # Optional. + (Deprecated - Use Ingress Rules instead). An HTTP path + prefix. Paths must start with / and must be unique across all + components within an app. + "preserve_path_prefix": bool # + Optional. An optional flag to preserve the path that is + forwarded to the backend service. By default, the HTTP + request path will be trimmed from the left when forwarded to + the component. For example, a component with ``path=/api`` + will have requests to ``/api/list`` trimmed to ``/list``. If + this value is ``true``"" , the path will remain + ``/api/list``. + } + ], + "run_command": "str", # Optional. An optional run + command to override the component's default. + "source_dir": "str", # Optional. An optional path to + the working directory to use for the build. For Dockerfile builds, + this will be used as the build context. Must be relative to the root + of the repo. + "termination": { + "drain_seconds": 0, # Optional. The number + of seconds to wait between selecting a container instance for + termination and issuing the TERM signal. Selecting a container + instance for termination begins an asynchronous drain of new + requests on upstream load-balancers. (Default 15). + "grace_period_seconds": 0 # Optional. The + number of seconds to wait between sending a TERM signal to a + container and issuing a KILL which causes immediate shutdown. + (Default 120). + } + } + ], + "static_sites": [ + { + "bitbucket": { + "branch": "str", # Optional. The name of the + branch to use. + "deploy_on_push": bool, # Optional. Whether + to automatically deploy new commits made to the repo. + "repo": "str" # Optional. The name of the + repo in the format owner/repo. Example: + ``digitalocean/sample-golang``. + }, + "build_command": "str", # Optional. An optional + build command to run while building this component from source. + "catchall_document": "str", # Optional. The name of + the document to use as the fallback for any requests to documents + that are not found when serving this static site. Only 1 of + ``catchall_document`` or ``error_document`` can be set. + "cors": { + "allow_credentials": bool, # Optional. + Whether browsers should expose the response to the client-side + JavaScript code when the request"u2019s credentials mode is + include. This configures the ``Access-Control-Allow-Credentials`` + header. + "allow_headers": [ + "str" # Optional. The set of allowed + HTTP request headers. This configures the + ``Access-Control-Allow-Headers`` header. + ], + "allow_methods": [ + "str" # Optional. The set of allowed + HTTP methods. This configures the + ``Access-Control-Allow-Methods`` header. + ], + "allow_origins": [ + { + "exact": "str", # Optional. + Exact string match. Only 1 of ``exact``"" , ``prefix``"" + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -93532,7 +94247,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -93709,7 +94426,10 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -93733,7 +94453,10 @@ async def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -93994,7 +94717,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -94270,7 +94995,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -94838,7 +95565,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -95015,7 +95744,10 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -95039,7 +95771,10 @@ async def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -95300,7 +96035,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -95576,7 +96313,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -96127,7 +96866,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -96304,7 +97045,10 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -96328,7 +97072,10 @@ async def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -96589,7 +97336,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -96865,7 +97614,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -97411,7 +98162,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -97588,7 +98341,10 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -97612,7 +98368,10 @@ async def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -97873,7 +98632,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -98149,7 +98910,9 @@ async def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -99512,7 +100275,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -99698,7 +100464,9 @@ async def create_rollback( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -99725,7 +100493,9 @@ async def create_rollback( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -99998,7 +100768,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -100290,7 +101063,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -101015,7 +101791,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -101201,7 +101980,9 @@ async def create_rollback( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -101228,7 +102009,9 @@ async def create_rollback( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -101501,7 +102284,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -101793,7 +102579,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -102521,7 +103310,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -102707,7 +103499,9 @@ async def create_rollback( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -102734,7 +103528,9 @@ async def create_rollback( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -103007,7 +103803,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -103299,7 +104098,10 @@ async def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -104622,7 +105424,10 @@ async def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -104808,7 +105613,9 @@ async def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -104835,7 +105642,9 @@ async def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -105108,7 +105917,10 @@ async def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -105400,7 +106212,10 @@ async def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -109403,6 +110218,54 @@ async def list_options(self, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { "options": { + "advanced_mysql": { + "layouts": [ + { + "num_nodes": 0, # Optional. An array of + objects, each indicating the node sizes (otherwise referred to as + slugs) that are available with various numbers of nodes in the + database cluster. Each slugs denotes the node's identifier, CPU, + and RAM (in that order). + "sizes": [ + "str" # Optional. An array of + objects containing the slugs available with various node + counts. + ] + } + ], + "regions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ], + "versions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ] + }, + "advanced_pg": { + "layouts": [ + { + "num_nodes": 0, # Optional. An array of + objects, each indicating the node sizes (otherwise referred to as + slugs) that are available with various numbers of nodes in the + database cluster. Each slugs denotes the node's identifier, CPU, + and RAM (in that order). + "sizes": [ + "str" # Optional. An array of + objects containing the slugs available with various node + counts. + ] + } + ], + "regions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ], + "versions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ] + }, "kafka": { "layouts": [ { @@ -109573,6 +110436,32 @@ async def list_options(self, **kwargs: Any) -> JSON: } }, "version_availability": { + "advanced_mysql": [ + { + "end_of_availability": "str", # Optional. A + timestamp referring to the date when the particular version will no + longer be available for creating new clusters. If null, the version + does not have an end of availability timeline. + "end_of_life": "str", # Optional. A timestamp + referring to the date when the particular version will no longer be + supported. If null, the version does not have an end of life + timeline. + "version": "str" # Optional. The engine version. + } + ], + "advanced_pg": [ + { + "end_of_availability": "str", # Optional. A + timestamp referring to the date when the particular version will no + longer be available for creating new clusters. If null, the version + does not have an end of availability timeline. + "end_of_life": "str", # Optional. A timestamp + referring to the date when the particular version will no longer be + supported. If null, the version does not have an end of life + timeline. + "version": "str" # Optional. The engine version. + } + ], "kafka": [ { "end_of_availability": "str", # Optional. A @@ -109795,9 +110684,11 @@ async def list_clusters( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" - for Kafka, "opensearch" for OpenSearch, and "valkey" for Valkey. - Required. Known values are: "pg", "mysql", "redis", "valkey", "mongodb", - "kafka", and "opensearch". + for Kafka, "opensearch" for OpenSearch, "valkey" for Valkey, + "advanced_pg" for PostgreSQL Advanced Edition, and "advanced_mysql" for + MySQL Advanced Edition. Advanced Edition engines are currently in public + preview. Required. Known values are: "pg", "mysql", "redis", "valkey", + "mongodb", "kafka", "opensearch", "advanced_pg", and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database @@ -110229,6 +111120,17 @@ async def create_cluster( include a key named ``backup_restore`` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel. + + PostgreSQL and MySQL Advanced Edition clusters can be provisioned by setting ``engine`` to + ``advanced_pg`` or ``advanced_mysql``. Advanced Edition clusters are currently in public + preview and target highly available workloads. ``advanced_pg`` supports 1-, 2-, and 3-node + deployments; ``advanced_mysql`` only supports 1- and 3-node deployments. See the `PostgreSQL + Advanced Edition + `_ + and `MySQL Advanced Edition + `_ + documentation for the feature differences vs. Standard Edition and current preview limitations. + Note: Caching cluster creates are no longer supported as of 2025-04-30T00:00:00Z. Backups are also not supported for Caching or Valkey clusters. @@ -110249,8 +111151,10 @@ async def create_cluster( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" for - OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", "mysql", - "redis", "valkey", "mongodb", "kafka", and "opensearch". + OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced Edition, + and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition engines are + currently in public preview. Required. Known values are: "pg", "mysql", "redis", + "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. Required. @@ -110555,8 +111459,11 @@ async def create_cluster( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -110893,6 +111800,17 @@ async def create_cluster( include a key named ``backup_restore`` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel. + + PostgreSQL and MySQL Advanced Edition clusters can be provisioned by setting ``engine`` to + ``advanced_pg`` or ``advanced_mysql``. Advanced Edition clusters are currently in public + preview and target highly available workloads. ``advanced_pg`` supports 1-, 2-, and 3-node + deployments; ``advanced_mysql`` only supports 1- and 3-node deployments. See the `PostgreSQL + Advanced Edition + `_ + and `MySQL Advanced Edition + `_ + documentation for the feature differences vs. Standard Edition and current preview limitations. + Note: Caching cluster creates are no longer supported as of 2025-04-30T00:00:00Z. Backups are also not supported for Caching or Valkey clusters. @@ -110914,8 +111832,11 @@ async def create_cluster( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -111250,6 +112171,17 @@ async def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> J include a key named ``backup_restore`` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel. + + PostgreSQL and MySQL Advanced Edition clusters can be provisioned by setting ``engine`` to + ``advanced_pg`` or ``advanced_mysql``. Advanced Edition clusters are currently in public + preview and target highly available workloads. ``advanced_pg`` supports 1-, 2-, and 3-node + deployments; ``advanced_mysql`` only supports 1- and 3-node deployments. See the `PostgreSQL + Advanced Edition + `_ + and `MySQL Advanced Edition + `_ + documentation for the feature differences vs. Standard Edition and current preview limitations. + Note: Caching cluster creates are no longer supported as of 2025-04-30T00:00:00Z. Backups are also not supported for Caching or Valkey clusters. @@ -111267,8 +112199,10 @@ async def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> J "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" for - OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", "mysql", - "redis", "valkey", "mongodb", "kafka", and "opensearch". + OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced Edition, + and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition engines are + currently in public preview. Required. Known values are: "pg", "mysql", "redis", + "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. Required. @@ -111573,8 +112507,11 @@ async def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> J "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -112006,8 +112943,11 @@ async def get_cluster(self, database_cluster_uuid: str, **kwargs: Any) -> JSON: "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -148349,7 +149289,9 @@ async def list_clusters( "ha": False, # Optional. Default value is False. A boolean value indicating whether the control plane is run in a highly available configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + downtime. The property cannot be disabled. When omitted on create, the + default is version-dependent; for DOKS 1.36.0 and later, the default is + true; for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the @@ -148638,10 +149580,11 @@ async def create_cluster( was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes master @@ -148836,10 +149779,12 @@ async def create_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -149065,10 +150010,12 @@ async def create_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -149281,10 +150228,11 @@ async def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> J was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes master @@ -149479,10 +150427,12 @@ async def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> J cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -149772,7 +150722,9 @@ async def get_cluster(self, cluster_id: str, **kwargs: Any) -> JSON: "ha": False, # Optional. Default value is False. A boolean value indicating whether the control plane is run in a highly available configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + downtime. The property cannot be disabled. When omitted on create, the + default is version-dependent; for DOKS 1.36.0 and later, the default is true; + for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -149996,10 +150948,11 @@ async def update_cluster( "enabled": bool # Optional. Indicates whether the control plane firewall is enabled. }, - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "maintenance_policy": { "day": "str", # Optional. The day of the maintenance window policy. May be one of ``monday`` through ``sunday``"" , or ``any`` to indicate an @@ -150170,10 +151123,12 @@ async def update_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -150411,10 +151366,12 @@ async def update_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -150551,10 +151508,11 @@ async def update_cluster( "enabled": bool # Optional. Indicates whether the control plane firewall is enabled. }, - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "maintenance_policy": { "day": "str", # Optional. The day of the maintenance window policy. May be one of ``monday`` through ``sunday``"" , or ``any`` to indicate an @@ -150725,10 +151683,12 @@ async def update_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -239350,141 +240310,15 @@ async def import_custom_model( return cast(JSON, deserialized) # type: ignore @distributed_trace_async - async def delete_custom_model(self, uuid: str, **kwargs: Any) -> JSON: - # pylint: disable=line-too-long - """Delete Custom Model. - - To delete a custom model, send a DELETE request to ``/v2/genai/custom_models/{uuid}``. - - :param uuid: UUID of the custom model to delete. Required. - :type uuid: str - :return: JSON object - :rtype: JSON - :raises ~azure.core.exceptions.HttpResponseError: - - Example: - .. code-block:: python - - # response body for status code(s): 200 - response == { - "error": "str", # Optional. Error message if deletion failed. - "status": "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED" # Optional. Default value - is "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED". Status of delete operation. Known - values are: "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED", - "DELETE_CUSTOM_MODEL_STATUS_SUCCESS", and "DELETE_CUSTOM_MODEL_STATUS_FAIL". - } - # response body for status code(s): 404 - response == { - "id": "str", # A short identifier corresponding to the HTTP status code - returned. For example, the ID for a response returning a 404 status code would - be "not_found.". Required. - "message": "str", # A message providing additional information about the - error, including details to help resolve it when possible. Required. - "request_id": "str" # Optional. Optionally, some endpoints may include a - request ID that should be provided when reporting bugs or opening support - tickets to help identify the issue. - } - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - 401: cast( - Type[HttpResponseError], - lambda response: ClientAuthenticationError(response=response), - ), - 429: HttpResponseError, - 500: HttpResponseError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[JSON] = kwargs.pop("cls", None) - - _request = build_genai_delete_custom_model_request( - uuid=uuid, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = ( - await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 404]: - if _stream: - await response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore - raise HttpResponseError(response=response) - - response_headers = {} - if response.status_code == 200: - response_headers["ratelimit-limit"] = self._deserialize( - "int", response.headers.get("ratelimit-limit") - ) - response_headers["ratelimit-remaining"] = self._deserialize( - "int", response.headers.get("ratelimit-remaining") - ) - response_headers["ratelimit-reset"] = self._deserialize( - "int", response.headers.get("ratelimit-reset") - ) - - if response.content: - deserialized = response.json() - else: - deserialized = None - - if response.status_code == 404: - response_headers["ratelimit-limit"] = self._deserialize( - "int", response.headers.get("ratelimit-limit") - ) - response_headers["ratelimit-remaining"] = self._deserialize( - "int", response.headers.get("ratelimit-remaining") - ) - response_headers["ratelimit-reset"] = self._deserialize( - "int", response.headers.get("ratelimit-reset") - ) - - if response.content: - deserialized = response.json() - else: - deserialized = None - - if cls: - return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore - - return cast(JSON, deserialized) # type: ignore - - @overload - async def update_custom_model_metadata( - self, - uuid: str, - body: Optional[JSON] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> JSON: + async def get_custom_model(self, uuid: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long - """Update Custom Model Metadata. + """Get Custom Model. - To update custom model metadata, send a PATCH request to - ``/v2/gen-ai/custom_models/{uuid}/metadata``. + To retrieve details of a custom model, send a GET request to + ``/v2/gen-ai/custom_models/{uuid}``. - :param uuid: UUID of the custom model to update. Required. + :param uuid: UUID of the custom model to retrieve. Required. :type uuid: str - :param body: Default value is None. - :type body: JSON - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str :return: JSON object :rtype: JSON :raises ~azure.core.exceptions.HttpResponseError: @@ -239492,18 +240326,341 @@ async def update_custom_model_metadata( Example: .. code-block:: python - # JSON input template you can fill out and use as your body input. - body = { - "description": "str", # Optional. - "name": "str", # Optional. - "tags": { - "tags": [ - "str" # Optional. List of tag strings. - ] - }, - "uuid": "str" # Optional. UUID of the custom model to update. - } - + # response body for status code(s): 200 + response == { + "model": { + "active_deployments": [ + { + "created_at": "str", # Optional. RFC 3339 timestamp + indicating when the dedicated inference deployment was created. + "endpoints": { + "private_endpoint_fqdn": "str", # Optional. + Private FQDN for the deployment. + "public_endpoint_fqdn": "str" # Optional. + Public FQDN for the deployment. + }, + "id": "str", # Optional. Unique identifier (UUID) of + the dedicated inference deployment. + "name": "str", # Optional. Human-readable name of + the dedicated inference deployment. + "region_slug": "str", # Optional. Slug of the region + where the dedicated inference deployment is running (e.g. "atl1"). + "state": "str", # Optional. Current lifecycle state + of the dedicated inference deployment (e.g. "ACTIVE", + "PROVISIONING"). + "updated_at": "str" # Optional. RFC 3339 timestamp + indicating when the dedicated inference deployment was last updated. + } + ], + "architecture": "str", # Optional. Model architecture type + (free-form string from config.json). + "config_json": {}, # Optional. Raw config.json contents from the + model repository. + "context_length": 0, # Optional. Maximum context length supported by + the model. + "cost_estimate_per_month": 0, # Optional. Estimated monthly cost in + dollars for hosting. + "created_at": "2020-02-20 00:00:00", # Optional. Timestamp when the + model was created. + "description": "str", # Optional. Description of the custom model. + "file_count": 0, # Optional. Number of files in the model. + "input_modalities": [ + "str" # Optional. Input modalities supported (e.g., text, + image). + ], + "license": "str", # Optional. License under which the model is + distributed. + "name": "str", # Optional. Name of the custom model. + "output_modalities": [ + "str" # Optional. Output modalities supported (e.g., text, + image). + ], + "parameters": "str", # Optional. Number of parameters in the model. + "source_ref": { + "access_type": "ACCESS_TYPE_UNSPECIFIED", # Optional. + Default value is "ACCESS_TYPE_UNSPECIFIED". Access level required for the + model repository. Known values are: "ACCESS_TYPE_UNSPECIFIED", + "ACCESS_TYPE_PUBLIC", "ACCESS_TYPE_PRIVATE", and "ACCESS_TYPE_GATED". + "bucket": "str", # Optional. Spaces bucket name. + "commit_sha": "str", # Optional. Git commit SHA of the model + version. + "hf_token": "str", # Optional. User-provided HuggingFace + token for gated/private models (not persisted in source_ref). + "prefix": "str", # Optional. Object prefix path in the + bucket. + "region": "str", # Optional. Spaces bucket region. + "repo_id": "str" # Optional. Huggingface repository + identifier. + }, + "source_type": "SOURCE_TYPE_UNSPECIFIED", # Optional. Default value + is "SOURCE_TYPE_UNSPECIFIED". Source from which the model was imported. Known + values are: "SOURCE_TYPE_UNSPECIFIED", "SOURCE_TYPE_HUGGINGFACE", + "SOURCE_TYPE_SPACES_BUCKET", "SOURCE_TYPE_SDK_UPLOAD", and + "SOURCE_TYPE_FINE_TUNING". + "status": "STATUS_UNSPECIFIED", # Optional. Default value is + "STATUS_UNSPECIFIED". Import and deployment status of the custom model. Known + values are: "STATUS_UNSPECIFIED", "STATUS_IMPORTING", "STATUS_READY", + "STATUS_FAILED", and "STATUS_DELETED". + "storage_region": "str", # Optional. Region of the Spaces bucket + where model files are stored. + "tags": { + "tags": [ + "str" # Optional. List of tag strings. + ] + }, + "team_id": "str", # Optional. Team that owns the model. + "total_size_bytes": "str", # Optional. Total size of model files in + bytes. + "updated_at": "2020-02-20 00:00:00", # Optional. Timestamp when the + model was last updated. + "uuid": "str" # Optional. Unique identifier for the custom model. + } + } + # response body for status code(s): 404 + response == { + "id": "str", # A short identifier corresponding to the HTTP status code + returned. For example, the ID for a response returning a 404 status code would + be "not_found.". Required. + "message": "str", # A message providing additional information about the + error, including details to help resolve it when possible. Required. + "request_id": "str" # Optional. Optionally, some endpoints may include a + request ID that should be provided when reporting bugs or opening support + tickets to help identify the issue. + } + """ + error_map: MutableMapping[int, Type[HttpResponseError]] = { + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 401: cast( + Type[HttpResponseError], + lambda response: ClientAuthenticationError(response=response), + ), + 429: HttpResponseError, + 500: HttpResponseError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[JSON] = kwargs.pop("cls", None) + + _request = build_genai_get_custom_model_request( + uuid=uuid, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = ( + await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 404]: + if _stream: + await response.read() # Load the body in memory and close the socket + map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore + raise HttpResponseError(response=response) + + response_headers = {} + if response.status_code == 200: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if response.status_code == 404: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if cls: + return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore + + return cast(JSON, deserialized) # type: ignore + + @distributed_trace_async + async def delete_custom_model(self, uuid: str, **kwargs: Any) -> JSON: + # pylint: disable=line-too-long + """Delete Custom Model. + + To delete a custom model, send a DELETE request to ``/v2/genai/custom_models/{uuid}``. + + :param uuid: UUID of the custom model to delete. Required. + :type uuid: str + :return: JSON object + :rtype: JSON + :raises ~azure.core.exceptions.HttpResponseError: + + Example: + .. code-block:: python + + # response body for status code(s): 200 + response == { + "error": "str", # Optional. Error message if deletion failed. + "status": "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED" # Optional. Default value + is "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED". Status of delete operation. Known + values are: "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED", + "DELETE_CUSTOM_MODEL_STATUS_SUCCESS", and "DELETE_CUSTOM_MODEL_STATUS_FAIL". + } + # response body for status code(s): 404 + response == { + "id": "str", # A short identifier corresponding to the HTTP status code + returned. For example, the ID for a response returning a 404 status code would + be "not_found.". Required. + "message": "str", # A message providing additional information about the + error, including details to help resolve it when possible. Required. + "request_id": "str" # Optional. Optionally, some endpoints may include a + request ID that should be provided when reporting bugs or opening support + tickets to help identify the issue. + } + """ + error_map: MutableMapping[int, Type[HttpResponseError]] = { + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 401: cast( + Type[HttpResponseError], + lambda response: ClientAuthenticationError(response=response), + ), + 429: HttpResponseError, + 500: HttpResponseError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[JSON] = kwargs.pop("cls", None) + + _request = build_genai_delete_custom_model_request( + uuid=uuid, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = ( + await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 404]: + if _stream: + await response.read() # Load the body in memory and close the socket + map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore + raise HttpResponseError(response=response) + + response_headers = {} + if response.status_code == 200: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if response.status_code == 404: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if cls: + return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore + + return cast(JSON, deserialized) # type: ignore + + @overload + async def update_custom_model_metadata( + self, + uuid: str, + body: Optional[JSON] = None, + *, + content_type: str = "application/json", + **kwargs: Any + ) -> JSON: + # pylint: disable=line-too-long + """Update Custom Model Metadata. + + To update custom model metadata, send a PATCH request to + ``/v2/gen-ai/custom_models/{uuid}/metadata``. + + :param uuid: UUID of the custom model to update. Required. + :type uuid: str + :param body: Default value is None. + :type body: JSON + :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. + Default value is "application/json". + :paramtype content_type: str + :return: JSON object + :rtype: JSON + :raises ~azure.core.exceptions.HttpResponseError: + + Example: + .. code-block:: python + + # JSON input template you can fill out and use as your body input. + body = { + "description": "str", # Optional. + "name": "str", # Optional. + "tags": { + "tags": [ + "str" # Optional. List of tag strings. + ] + }, + "uuid": "str" # Optional. UUID of the custom model to update. + } + # response body for status code(s): 200 response == { "model": { @@ -276825,6 +277982,11 @@ async def upload_batch_file( # pylint: disable=inconsistent-return-statements ``POST /v1/batches`` performs a ``HEAD`` check on the uploaded object and will reject the batch if this upload has not completed. + Send the raw JSONL bytes verbatim. Presigned PUT URLs are signature-sensitive to request + headers — prefer ``application/octet-stream`` or omit ``Content-Type`` entirely. A custom value + (for example ``application/jsonl``\\ ) can cause signature mismatches unless the URL was signed + for that exact header. + :param data: Raw JSONL bytes — one request per line. Required. :type data: IO[bytes] :return: None @@ -276903,185 +278065,6 @@ async def upload_batch_file( # pylint: disable=inconsistent-return-statements if cls: return cls(pipeline_response, None, response_headers) # type: ignore - @distributed_trace_async - async def list_batches( - self, *, after: Optional[str] = None, limit: int = 20, **kwargs: Any - ) -> JSON: - # pylint: disable=line-too-long - """List Batch Inference Jobs. - - Returns a cursor-paginated list of batch jobs, ordered newest first. Use ``limit`` to control - page size and ``after`` to page forward using the ``last_id`` from the previous response. - - :keyword after: Cursor for pagination. Pass the ``last_id`` value from the previous response to - fetch the next page. Omit for the first page. Default value is None. - :paramtype after: str - :keyword limit: Maximum number of batches to return per page. Default value is 20. - :paramtype limit: int - :return: JSON object - :rtype: JSON - :raises ~azure.core.exceptions.HttpResponseError: - - Example: - .. code-block:: python - - # response body for status code(s): 200 - response == { - "data": [ - { - "batch_id": "str", # Unique identifier for the batch job. - Required. - "completion_window": "str", # Required. "24h" - "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is - dispatched to. Required. - "input_file_id": "str", # The uploaded JSONL input file. - Required. - "provider": "str", # Required. Known values are: "openai" - and "anthropic". - "status": "str", # Lifecycle status. Terminal states: - ``completed``"" , ``failed``"" , ``expired``"" , ``cancelled``. Required. - Known values are: "validating", "in_progress", "finalizing", "completed", - "failed", "expired", "cancelling", and "cancelled". - "cancelled_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "completed_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "error_file_id": "str", # Optional. Error sidecar file. Null - when no errors were produced. - "errors": [ - { - "code": "str", # Optional. Top-level errors - that prevented the batch from completing. - "line": 0, # Optional. 1-based JSONL line - number, if applicable. - "message": "str" # Optional. Top-level - errors that prevented the batch from completing. - } - ], - "expires_at": "2020-02-20 00:00:00", # Optional. Derived - from ``created_at`` plus ``completion_window``. - "failed_at": "2020-02-20 00:00:00", # Optional. Batch jobs - on this page, ordered newest first. Required. - "finalizing_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "in_progress_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "metadata": { - "str": "str" # Optional. Metadata attached at - creation. - }, - "output_file_id": "str", # Optional. Output JSONL file. - Populated once the job completes. - "request_counts": { - "completed": 0, # Optional. Aggregate request - counts. - "failed": 0, # Optional. Aggregate request counts. - "total": 0 # Optional. Aggregate request counts. - }, - "request_id": "str" # Optional. The idempotency key supplied - at creation. - } - ], - "has_more": bool, # Whether additional batches exist beyond this page. - Required. - "object": "str", # The object type, always ``list``. Required. "list" - "first_id": "str", # Optional. ID of the first batch on this page. Null when - the page is empty. - "last_id": "str" # Optional. ID of the last batch on this page. Pass as - ``after`` to fetch the next page. - } - # response body for status code(s): 403 - response == { - "id": "str", # A short identifier corresponding to the HTTP status code - returned. For example, the ID for a response returning a 404 status code would - be "not_found.". Required. - "message": "str", # A message providing additional information about the - error, including details to help resolve it when possible. Required. - "request_id": "str" # Optional. Optionally, some endpoints may include a - request ID that should be provided when reporting bugs or opening support - tickets to help identify the issue. - } - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - 401: cast( - Type[HttpResponseError], - lambda response: ClientAuthenticationError(response=response), - ), - 429: HttpResponseError, - 500: HttpResponseError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[JSON] = kwargs.pop("cls", None) - - _request = build_inference_list_batches_request( - after=after, - limit=limit, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = ( - await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 403]: - if _stream: - await response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore - raise HttpResponseError(response=response) - - response_headers = {} - if response.status_code == 200: - response_headers["ratelimit-limit"] = self._deserialize( - "int", response.headers.get("ratelimit-limit") - ) - response_headers["ratelimit-remaining"] = self._deserialize( - "int", response.headers.get("ratelimit-remaining") - ) - response_headers["ratelimit-reset"] = self._deserialize( - "int", response.headers.get("ratelimit-reset") - ) - - if response.content: - deserialized = response.json() - else: - deserialized = None - - if response.status_code == 403: - response_headers["ratelimit-limit"] = self._deserialize( - "int", response.headers.get("ratelimit-limit") - ) - response_headers["ratelimit-remaining"] = self._deserialize( - "int", response.headers.get("ratelimit-remaining") - ) - response_headers["ratelimit-reset"] = self._deserialize( - "int", response.headers.get("ratelimit-reset") - ) - - if response.content: - deserialized = response.json() - else: - deserialized = None - - if cls: - return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore - - return cast(JSON, deserialized) # type: ignore - @overload async def create_batch( self, body: JSON, *, content_type: str = "application/json", **kwargs: Any @@ -277110,10 +278093,9 @@ async def create_batch( # JSON input template you can fill out and use as your body input. body = { - "endpoint": "str", # Inference endpoint each request is dispatched to. When - ``provider`` is ``openai``"" , must match the ``url`` on every JSONL line. - Required. Known values are: "/v1/chat/completions", "/v1/embeddings", and - "/v1/messages". + "completion_window": "24h", # Default value is "24h". Time window in which + the job must complete. Jobs that do not finish in time transition to ``expired``. + "24h" "file_id": "str", # The ``file_id`` returned by ``POST /v1/batches/files``. Required. "provider": "str", # The inference provider whose JSONL schema the input @@ -277122,10 +278104,11 @@ async def create_batch( the Anthropic Message Batches JSONL conventions. Required. Known values are: "openai" and "anthropic". "request_id": "str", # Client-supplied idempotency key. Retries with the - same value return the existing job. Required. - "completion_window": "24h", # Optional. Default value is "24h". Time window - in which the job must complete. Jobs that do not finish in time transition to - ``expired``. "24h" + same value return the existing job instead of creating a duplicate. Required. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. **Required when ``provider`` is ``openai`` and must match the ``url`` on + every JSONL line. Must be omitted when ``provider`` is ``anthropic``.**. Known + values are: "/v1/responses" and "/v1/chat/completions". "metadata": { "str": "str" # Optional. Optional string-valued metadata to attach to the job. @@ -277137,8 +278120,6 @@ async def create_batch( "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -277147,6 +278128,8 @@ async def create_batch( "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -277220,8 +278203,6 @@ async def create_batch( "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -277230,6 +278211,8 @@ async def create_batch( "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -277295,10 +278278,9 @@ async def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSO # JSON input template you can fill out and use as your body input. body = { - "endpoint": "str", # Inference endpoint each request is dispatched to. When - ``provider`` is ``openai``"" , must match the ``url`` on every JSONL line. - Required. Known values are: "/v1/chat/completions", "/v1/embeddings", and - "/v1/messages". + "completion_window": "24h", # Default value is "24h". Time window in which + the job must complete. Jobs that do not finish in time transition to ``expired``. + "24h" "file_id": "str", # The ``file_id`` returned by ``POST /v1/batches/files``. Required. "provider": "str", # The inference provider whose JSONL schema the input @@ -277307,10 +278289,11 @@ async def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSO the Anthropic Message Batches JSONL conventions. Required. Known values are: "openai" and "anthropic". "request_id": "str", # Client-supplied idempotency key. Retries with the - same value return the existing job. Required. - "completion_window": "24h", # Optional. Default value is "24h". Time window - in which the job must complete. Jobs that do not finish in time transition to - ``expired``. "24h" + same value return the existing job instead of creating a duplicate. Required. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. **Required when ``provider`` is ``openai`` and must match the ``url`` on + every JSONL line. Must be omitted when ``provider`` is ``anthropic``.**. Known + values are: "/v1/responses" and "/v1/chat/completions". "metadata": { "str": "str" # Optional. Optional string-valued metadata to attach to the job. @@ -277322,8 +278305,6 @@ async def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSO "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -277332,6 +278313,8 @@ async def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSO "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -277528,6 +278511,195 @@ async def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSO return cast(JSON, deserialized) # type: ignore + @distributed_trace_async + async def list_batches( + self, + *, + after: Optional[str] = None, + limit: int = 20, + status: Optional[str] = None, + **kwargs: Any + ) -> JSON: + # pylint: disable=line-too-long + """List Batch Inference Jobs. + + Returns a cursor-paginated list of batch jobs, ordered newest first. Use ``limit`` to control + page size and ``after`` to page forward using the ``last_id`` from the previous response. + + :keyword after: Cursor for pagination. Pass the ``last_id`` value from the previous response to + fetch the next page. Omit for the first page. Default value is None. + :paramtype after: str + :keyword limit: Maximum number of batches to return per page. Default value is 20. + :paramtype limit: int + :keyword status: Optional filter restricting results to batches in the given lifecycle state. + Known values are: "validating", "in_progress", "finalizing", "completed", "failed", "expired", + "cancelling", and "cancelled". Default value is None. + :paramtype status: str + :return: JSON object + :rtype: JSON + :raises ~azure.core.exceptions.HttpResponseError: + + Example: + .. code-block:: python + + # response body for status code(s): 200 + response == { + "data": [ + { + "batch_id": "str", # Unique identifier for the batch job. + Required. + "completion_window": "str", # Required. "24h" + "created_at": "2020-02-20 00:00:00", # Required. + "input_file_id": "str", # The uploaded JSONL input file. + Required. + "provider": "str", # Required. Known values are: "openai" + and "anthropic". + "status": "str", # Lifecycle status. Terminal states: + ``completed``"" , ``failed``"" , ``expired``"" , ``cancelled``. Required. + Known values are: "validating", "in_progress", "finalizing", "completed", + "failed", "expired", "cancelling", and "cancelled". + "cancelled_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "completed_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "endpoint": "str", # Optional. Inference endpoint each + request is dispatched to. + "error_file_id": "str", # Optional. Error sidecar file. Null + when no errors were produced. + "errors": [ + { + "code": "str", # Optional. Top-level errors + that prevented the batch from completing. + "line": 0, # Optional. 1-based JSONL line + number, if applicable. + "message": "str" # Optional. Top-level + errors that prevented the batch from completing. + } + ], + "expires_at": "2020-02-20 00:00:00", # Optional. Derived + from ``created_at`` plus ``completion_window``. + "failed_at": "2020-02-20 00:00:00", # Optional. Batch jobs + on this page, ordered newest first. Required. + "finalizing_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "in_progress_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "metadata": { + "str": "str" # Optional. Metadata attached at + creation. + }, + "output_file_id": "str", # Optional. Output JSONL file. + Populated once the job completes. + "request_counts": { + "completed": 0, # Optional. Aggregate request + counts. + "failed": 0, # Optional. Aggregate request counts. + "total": 0 # Optional. Aggregate request counts. + }, + "request_id": "str" # Optional. The idempotency key supplied + at creation. + } + ], + "has_more": bool, # Whether additional batches exist beyond this page. + Required. + "object": "str", # The object type, always ``list``. Required. "list" + "first_id": "str", # Optional. ID of the first batch on this page. Null when + the page is empty. + "last_id": "str" # Optional. ID of the last batch on this page. Pass as + ``after`` to fetch the next page. + } + # response body for status code(s): 403 + response == { + "id": "str", # A short identifier corresponding to the HTTP status code + returned. For example, the ID for a response returning a 404 status code would + be "not_found.". Required. + "message": "str", # A message providing additional information about the + error, including details to help resolve it when possible. Required. + "request_id": "str" # Optional. Optionally, some endpoints may include a + request ID that should be provided when reporting bugs or opening support + tickets to help identify the issue. + } + """ + error_map: MutableMapping[int, Type[HttpResponseError]] = { + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 401: cast( + Type[HttpResponseError], + lambda response: ClientAuthenticationError(response=response), + ), + 429: HttpResponseError, + 500: HttpResponseError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[JSON] = kwargs.pop("cls", None) + + _request = build_inference_list_batches_request( + after=after, + limit=limit, + status=status, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = ( + await self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 403]: + if _stream: + await response.read() # Load the body in memory and close the socket + map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore + raise HttpResponseError(response=response) + + response_headers = {} + if response.status_code == 200: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if response.status_code == 403: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if cls: + return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore + + return cast(JSON, deserialized) # type: ignore + @distributed_trace_async async def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long @@ -277550,8 +278722,6 @@ async def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -277560,6 +278730,8 @@ async def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -277696,17 +278868,17 @@ async def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: return cast(JSON, deserialized) # type: ignore @distributed_trace_async - async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: + async def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long - """Cancel a Batch Inference Job. + """Get Batch Inference Results Download Links. - Requests cancellation of a batch job. The job transitions to ``cancelling`` and, once in-flight - requests drain, to ``cancelled``. Jobs already in a terminal state (\\ ``completed``\\ , - ``failed``\\ , ``expired``\\ , ``cancelled``\\ ) cannot be cancelled and return ``409 - Conflict``. + Returns short-lived presigned download URLs for the output (and optional error sidecar) of a + completed batch job. If results are not yet ready, the response sets ``result_available: + false`` or returns ``412 Precondition Failed``\\ ; in both cases, keep polling batch status and + retry. - Partial results produced before cancellation remain available via ``GET - /v1/batches/{batch_id}/results``. + Download the artifacts soon after fetching — the URLs are short-lived. Result files themselves + are retained for up to 30 days after the job completes, after which they are deleted. :param batch_id: The batch job identifier. Required. :type batch_id: str @@ -277719,49 +278891,17 @@ async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { - "batch_id": "str", # Unique identifier for the batch job. Required. - "completion_window": "str", # Required. "24h" - "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. - "input_file_id": "str", # The uploaded JSONL input file. Required. - "provider": "str", # Required. Known values are: "openai" and "anthropic". - "status": "str", # Lifecycle status. Terminal states: ``completed``"" , - ``failed``"" , ``expired``"" , ``cancelled``. Required. Known values are: - "validating", "in_progress", "finalizing", "completed", "failed", "expired", - "cancelling", and "cancelled". - "cancelled_at": "2020-02-20 00:00:00", # Optional. - "completed_at": "2020-02-20 00:00:00", # Optional. - "error_file_id": "str", # Optional. Error sidecar file. Null when no errors - were produced. - "errors": [ - { - "code": "str", # Optional. Top-level errors that prevented - the batch from completing. - "line": 0, # Optional. 1-based JSONL line number, if - applicable. - "message": "str" # Optional. Top-level errors that prevented - the batch from completing. - } - ], - "expires_at": "2020-02-20 00:00:00", # Optional. Derived from ``created_at`` - plus ``completion_window``. - "failed_at": "2020-02-20 00:00:00", # Optional. - "finalizing_at": "2020-02-20 00:00:00", # Optional. - "in_progress_at": "2020-02-20 00:00:00", # Optional. - "metadata": { - "str": "str" # Optional. Metadata attached at creation. - }, - "output_file_id": "str", # Optional. Output JSONL file. Populated once the - job completes. - "request_counts": { - "completed": 0, # Optional. Aggregate request counts. - "failed": 0, # Optional. Aggregate request counts. - "total": 0 # Optional. Aggregate request counts. - }, - "request_id": "str" # Optional. The idempotency key supplied at creation. + "batch_id": "str", # Required. + "result_available": bool, # When ``false``"" , keep polling batch status and + retry later. Required. + "error_file_url": "str", # Optional. Presigned URL for the error sidecar + JSONL, if any. + "expires_at": "2020-02-20 00:00:00", # Optional. When the presigned URLs + expire. + "output_file_url": "str" # Optional. Presigned URL for the main results + JSONL. } - # response body for status code(s): 403, 404, 409 + # response body for status code(s): 403, 404, 412 response == { "id": "str", # A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would @@ -277791,7 +278931,7 @@ async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: cls: ClsType[JSON] = kwargs.pop("cls", None) - _request = build_inference_cancel_batch_request( + _request = build_inference_get_batch_results_request( batch_id=batch_id, headers=_headers, params=_params, @@ -277807,7 +278947,7 @@ async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: response = pipeline_response.http_response - if response.status_code not in [200, 403, 404, 409]: + if response.status_code not in [200, 403, 404, 412]: if _stream: await response.read() # Load the body in memory and close the socket map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore @@ -277862,7 +279002,7 @@ async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: else: deserialized = None - if response.status_code == 409: + if response.status_code == 412: response_headers["ratelimit-limit"] = self._deserialize( "int", response.headers.get("ratelimit-limit") ) @@ -277884,14 +279024,19 @@ async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: return cast(JSON, deserialized) # type: ignore @distributed_trace_async - async def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: + async def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long - """Get Batch Inference Results Download Links. + """Cancel a Batch Inference Job. - Returns short-lived presigned download URLs for the output (and optional error sidecar) of a - completed batch job. If results are not yet ready, the response sets ``result_available: - false`` or returns ``412 Precondition Failed``\\ ; in both cases, keep polling batch status and - retry. + Requests cancellation of a batch job. The job transitions to ``cancelling`` and, once in-flight + requests drain, to ``cancelled``. Jobs already in a terminal state (\\ ``completed``\\ , + ``failed``\\ , ``expired``\\ , ``cancelled``\\ ) cannot be cancelled and return ``409 + Conflict``. Cancellation is also rejected with ``409 Conflict`` while the job has not yet been + submitted to the upstream provider — there is nothing to cancel until the provider batch id is + assigned. + + Partial results produced before cancellation remain available via ``GET + /v1/batches/{batch_id}/results``. :param batch_id: The batch job identifier. Required. :type batch_id: str @@ -277904,17 +279049,49 @@ async def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { - "batch_id": "str", # Required. - "result_available": bool, # When ``false``"" , keep polling batch status and - retry later. Required. - "error_file_url": "str", # Optional. Presigned URL for the error sidecar - JSONL, if any. - "expires_at": "2020-02-20 00:00:00", # Optional. When the presigned URLs - expire. - "output_file_url": "str" # Optional. Presigned URL for the main results - JSONL. + "batch_id": "str", # Unique identifier for the batch job. Required. + "completion_window": "str", # Required. "24h" + "created_at": "2020-02-20 00:00:00", # Required. + "input_file_id": "str", # The uploaded JSONL input file. Required. + "provider": "str", # Required. Known values are: "openai" and "anthropic". + "status": "str", # Lifecycle status. Terminal states: ``completed``"" , + ``failed``"" , ``expired``"" , ``cancelled``. Required. Known values are: + "validating", "in_progress", "finalizing", "completed", "failed", "expired", + "cancelling", and "cancelled". + "cancelled_at": "2020-02-20 00:00:00", # Optional. + "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. + "error_file_id": "str", # Optional. Error sidecar file. Null when no errors + were produced. + "errors": [ + { + "code": "str", # Optional. Top-level errors that prevented + the batch from completing. + "line": 0, # Optional. 1-based JSONL line number, if + applicable. + "message": "str" # Optional. Top-level errors that prevented + the batch from completing. + } + ], + "expires_at": "2020-02-20 00:00:00", # Optional. Derived from ``created_at`` + plus ``completion_window``. + "failed_at": "2020-02-20 00:00:00", # Optional. + "finalizing_at": "2020-02-20 00:00:00", # Optional. + "in_progress_at": "2020-02-20 00:00:00", # Optional. + "metadata": { + "str": "str" # Optional. Metadata attached at creation. + }, + "output_file_id": "str", # Optional. Output JSONL file. Populated once the + job completes. + "request_counts": { + "completed": 0, # Optional. Aggregate request counts. + "failed": 0, # Optional. Aggregate request counts. + "total": 0 # Optional. Aggregate request counts. + }, + "request_id": "str" # Optional. The idempotency key supplied at creation. } - # response body for status code(s): 403, 404, 412 + # response body for status code(s): 403, 404, 409 response == { "id": "str", # A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would @@ -277944,7 +279121,7 @@ async def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: cls: ClsType[JSON] = kwargs.pop("cls", None) - _request = build_inference_get_batch_results_request( + _request = build_inference_cancel_batch_request( batch_id=batch_id, headers=_headers, params=_params, @@ -277960,7 +279137,7 @@ async def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: response = pipeline_response.http_response - if response.status_code not in [200, 403, 404, 412]: + if response.status_code not in [200, 403, 404, 409]: if _stream: await response.read() # Load the body in memory and close the socket map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore @@ -278015,7 +279192,7 @@ async def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: else: deserialized = None - if response.status_code == 412: + if response.status_code == 409: response_headers["ratelimit-limit"] = self._deserialize( "int", response.headers.get("ratelimit-limit") ) diff --git a/src/pydo/operations/_operations.py b/src/pydo/operations/_operations.py index 0cf7f791..08f334dd 100644 --- a/src/pydo/operations/_operations.py +++ b/src/pydo/operations/_operations.py @@ -13437,6 +13437,25 @@ def build_genai_import_custom_model_request(**kwargs: Any) -> HttpRequest: return HttpRequest(method="POST", url=_url, headers=_headers, **kwargs) +def build_genai_get_custom_model_request(uuid: str, **kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/v2/gen-ai/custom_models/{uuid}" + path_format_arguments = { + "uuid": _SERIALIZER.url("uuid", uuid, "str"), + } + + _url: str = _url.format(**path_format_arguments) # type: ignore + + # Construct headers + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="GET", url=_url, headers=_headers, **kwargs) + + def build_genai_delete_custom_model_request(uuid: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -15434,8 +15453,33 @@ def build_inference_upload_batch_file_request( # pylint: disable=name-too-long ) +def build_inference_create_batch_request(**kwargs: Any) -> HttpRequest: + _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) + + content_type: Optional[str] = kwargs.pop( + "content_type", _headers.pop("Content-Type", None) + ) + accept = _headers.pop("Accept", "application/json") + + # Construct URL + _url = "/v1/batches" + + # Construct headers + if content_type is not None: + _headers["Content-Type"] = _SERIALIZER.header( + "content_type", content_type, "str" + ) + _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") + + return HttpRequest(method="POST", url=_url, headers=_headers, **kwargs) + + def build_inference_list_batches_request( - *, after: Optional[str] = None, limit: int = 20, **kwargs: Any + *, + after: Optional[str] = None, + limit: int = 20, + status: Optional[str] = None, + **kwargs: Any, ) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) @@ -15452,6 +15496,8 @@ def build_inference_list_batches_request( _params["limit"] = _SERIALIZER.query( "limit", limit, "int", maximum=100, minimum=1 ) + if status is not None: + _params["status"] = _SERIALIZER.query("status", status, "str") # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") @@ -15461,27 +15507,6 @@ def build_inference_list_batches_request( ) -def build_inference_create_batch_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - - content_type: Optional[str] = kwargs.pop( - "content_type", _headers.pop("Content-Type", None) - ) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = "/v1/batches" - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header( - "content_type", content_type, "str" - ) - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, headers=_headers, **kwargs) - - def build_inference_get_batch_request(batch_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) @@ -15501,13 +15526,15 @@ def build_inference_get_batch_request(batch_id: str, **kwargs: Any) -> HttpReque return HttpRequest(method="GET", url=_url, headers=_headers, **kwargs) -def build_inference_cancel_batch_request(batch_id: str, **kwargs: Any) -> HttpRequest: +def build_inference_get_batch_results_request( # pylint: disable=name-too-long + batch_id: str, **kwargs: Any +) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) accept = _headers.pop("Accept", "application/json") # Construct URL - _url = "/v1/batches/{batch_id}/cancel" + _url = "/v1/batches/{batch_id}/results" path_format_arguments = { "batch_id": _SERIALIZER.url("batch_id", batch_id, "str"), } @@ -15517,18 +15544,16 @@ def build_inference_cancel_batch_request(batch_id: str, **kwargs: Any) -> HttpRe # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="POST", url=_url, headers=_headers, **kwargs) + return HttpRequest(method="GET", url=_url, headers=_headers, **kwargs) -def build_inference_get_batch_results_request( # pylint: disable=name-too-long - batch_id: str, **kwargs: Any -) -> HttpRequest: +def build_inference_cancel_batch_request(batch_id: str, **kwargs: Any) -> HttpRequest: _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) accept = _headers.pop("Accept", "application/json") # Construct URL - _url = "/v1/batches/{batch_id}/results" + _url = "/v1/batches/{batch_id}/cancel" path_format_arguments = { "batch_id": _SERIALIZER.url("batch_id", batch_id, "str"), } @@ -15538,7 +15563,7 @@ def build_inference_get_batch_results_request( # pylint: disable=name-too-long # Construct headers _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - return HttpRequest(method="GET", url=_url, headers=_headers, **kwargs) + return HttpRequest(method="POST", url=_url, headers=_headers, **kwargs) def build_agent_inference_create_chat_completion_request( # pylint: disable=name-too-long @@ -18979,7 +19004,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -19173,7 +19200,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -19199,7 +19229,10 @@ def list( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -19490,7 +19523,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -19803,7 +19838,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -20512,7 +20549,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -20717,6 +20757,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -20745,7 +20788,10 @@ def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -21048,7 +21094,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -21375,7 +21424,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -22201,7 +22253,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -22406,6 +22461,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -22434,7 +22492,10 @@ def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -22737,7 +22798,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -23064,7 +23128,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -23828,7 +23895,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -24033,6 +24103,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -24061,7 +24134,10 @@ def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -24364,7 +24440,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -24691,7 +24770,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -25446,7 +25528,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -25651,6 +25736,9 @@ def list( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -25679,7 +25767,10 @@ def list( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -25982,7 +26073,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -26309,7 +26403,10 @@ def list( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -27052,7 +27149,9 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -27229,7 +27328,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -27253,7 +27355,10 @@ def create( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -27514,7 +27619,9 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -27790,7 +27897,9 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -28328,7 +28437,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -28514,7 +28626,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -28541,7 +28655,9 @@ def create( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -28814,7 +28930,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -29106,7 +29225,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -29775,7 +29897,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -29969,7 +30093,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -29995,7 +30122,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -30286,7 +30416,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -30599,7 +30731,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -31384,7 +31518,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -31578,7 +31714,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -31604,7 +31743,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -31895,7 +32037,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -32208,7 +32352,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -32932,7 +33078,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -33126,7 +33274,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -33152,7 +33303,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -33443,7 +33597,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -33756,7 +33912,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -34472,7 +34630,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -34666,7 +34826,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -34692,7 +34855,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -34983,7 +35149,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -35296,7 +35464,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -35953,7 +36123,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -36139,7 +36312,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -36166,7 +36341,9 @@ def create( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -36439,7 +36616,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -36731,7 +36911,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -37400,7 +37583,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -37594,7 +37779,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -37620,7 +37808,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -37911,7 +38102,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -38224,7 +38417,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -39009,7 +39204,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -39203,7 +39400,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -39229,7 +39429,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -39520,7 +39723,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -39833,7 +40038,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -40557,7 +40764,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -40751,7 +40960,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -40777,7 +40989,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -41068,7 +41283,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -41381,7 +41598,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -42097,7 +42316,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -42291,7 +42512,10 @@ def create( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -42317,7 +42541,10 @@ def create( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -42608,7 +42835,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -42921,7 +43150,9 @@ def create( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -43567,7 +43798,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -43744,7 +43977,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -43768,7 +44004,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -44029,7 +44268,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -44305,7 +44546,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -44843,7 +45086,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -45029,7 +45275,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -45056,7 +45304,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -45329,7 +45579,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -45621,7 +45874,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -46290,7 +46546,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -46484,7 +46742,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -46510,7 +46771,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -46801,7 +47065,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -47114,7 +47380,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -47899,7 +48167,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -48093,7 +48363,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -48119,7 +48392,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -48410,7 +48686,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -48723,7 +49001,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -49447,7 +49727,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -49641,7 +49923,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -49667,7 +49952,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -49958,7 +50246,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -50271,7 +50561,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -50987,7 +51279,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -51181,7 +51475,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -51207,7 +51504,10 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -51498,7 +51798,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -51811,7 +52113,9 @@ def create(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -52650,7 +52954,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -52836,7 +53143,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -52863,7 +53172,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -53136,7 +53447,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -53428,7 +53742,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -54097,7 +54414,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -54291,7 +54610,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -54317,7 +54639,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -54608,7 +54933,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -54921,7 +55248,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -55706,7 +56035,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -55900,7 +56231,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -55926,7 +56260,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -56217,7 +56554,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -56530,7 +56869,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -57254,7 +57595,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -57448,7 +57791,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -57474,7 +57820,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -57765,7 +58114,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -58078,7 +58429,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -58794,7 +59147,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -58988,7 +59343,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -59014,7 +59372,10 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -59305,7 +59666,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -59618,7 +59981,9 @@ def get(self, id: str, *, name: Optional[str] = None, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -60365,7 +60730,9 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -60542,7 +60909,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -60566,7 +60936,10 @@ def update( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -60827,7 +61200,9 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -61103,7 +61478,9 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -61643,7 +62020,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -61829,7 +62209,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -61856,7 +62238,9 @@ def update( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -62129,7 +62513,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -62421,7 +62808,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -63090,7 +63480,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -63284,7 +63676,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -63310,7 +63705,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -63601,7 +63999,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -63914,7 +64314,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -64699,7 +65101,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -64893,7 +65297,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -64919,7 +65326,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -65210,7 +65620,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -65523,7 +65935,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -66247,7 +66661,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -66441,7 +66857,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -66467,7 +66886,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -66758,7 +67180,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -67071,7 +67495,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -67787,7 +68213,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -67981,7 +68409,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -68007,7 +68438,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -68298,7 +68732,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -68611,7 +69047,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -69286,7 +69724,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -69472,7 +69913,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -69499,7 +69942,9 @@ def update( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -69772,7 +70217,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -70064,7 +70512,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -70733,7 +71184,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -70927,7 +71380,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -70953,7 +71409,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -71244,7 +71703,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -71557,7 +72018,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -72342,7 +72805,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -72536,7 +73001,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -72562,7 +73030,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -72853,7 +73324,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -73166,7 +73639,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -73890,7 +74365,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -74084,7 +74561,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -74110,7 +74590,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -74401,7 +74884,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -74714,7 +75199,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -75430,7 +75917,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -75624,7 +76113,10 @@ def update( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -75650,7 +76142,10 @@ def update( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -75941,7 +76436,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -76254,7 +76751,9 @@ def update( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -76913,7 +77412,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -77090,7 +77591,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -77114,7 +77618,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -77375,283 +77882,287 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. + "prefix": "str", # Optional. + Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. - "prefix": "str", # Optional. - Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. - "regex": "str" # Optional. - RE2 style regex-based match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. For more - information about RE2 syntax, see: - https://github.com/google/re2/wiki/Syntax. - } - ], - "expose_headers": [ - "str" # Optional. The set of HTTP - response headers that browsers are allowed to access. This - configures the ``Access-Control-Expose-Headers`` header. - ], - "max_age": "str" # Optional. An optional - duration specifying how long browsers can cache the results of a - preflight request. This configures the ``Access-Control-Max-Age`` - header. - }, - "dockerfile_path": "str", # Optional. The path to - the Dockerfile relative to the root of the repo. If set, it will be - used to build this component. Otherwise, App Platform will attempt to - build it using buildpacks. - "environment_slug": "str", # Optional. An - environment slug describing the type of this app. For a full list, - please refer to `the product documentation - `_. - "envs": [ - { - "key": "str", # The variable name. - Required. - "scope": "RUN_AND_BUILD_TIME", # - Optional. Default value is "RUN_AND_BUILD_TIME". * RUN_TIME: - Made available only at run-time * BUILD_TIME: Made available - only at build-time * RUN_AND_BUILD_TIME: Made available at - both build and run-time. Known values are: "UNSET", - "RUN_TIME", "BUILD_TIME", and "RUN_AND_BUILD_TIME". - "type": "GENERAL", # Optional. - Default value is "GENERAL". * GENERAL: A plain-text - environment variable * SECRET: A secret encrypted environment - variable. Known values are: "GENERAL" and "SECRET". - "value": "str" # Optional. The - value. If the type is ``SECRET``"" , the value will be - encrypted on first submission. On following submissions, the - encrypted value should be used. - } - ], - "git": { - "branch": "str", # Optional. The name of the - branch to use. - "repo_clone_url": "str" # Optional. The - clone URL of the repo. Example: - ``https://github.com/digitalocean/sample-golang.git``. - }, - "github": { - "branch": "str", # Optional. The name of the - branch to use. - "deploy_on_push": bool, # Optional. Whether - to automatically deploy new commits made to the repo. - "repo": "str" # Optional. The name of the - repo in the format owner/repo. Example: - ``digitalocean/sample-golang``. - }, - "gitlab": { - "branch": "str", # Optional. The name of the - branch to use. - "deploy_on_push": bool, # Optional. Whether - to automatically deploy new commits made to the repo. - "repo": "str" # Optional. The name of the - repo in the format owner/repo. Example: - ``digitalocean/sample-golang``. - }, - "health_check": { - "failure_threshold": 0, # Optional. The - number of failed health checks before considered unhealthy. - "http_path": "str", # Optional. The route - path used for the HTTP health check ping. If not set, the HTTP - health check will be disabled and a TCP health check used - instead. - "initial_delay_seconds": 0, # Optional. The - number of seconds to wait before beginning health checks. - "period_seconds": 0, # Optional. The number - of seconds to wait between health checks. - "port": 0, # Optional. The port on which the - health check will be performed. If not set, the health check will - be performed on the component's http_port. - "success_threshold": 0, # Optional. The - number of successful health checks before considered healthy. - "timeout_seconds": 0 # Optional. The number - of seconds after which the check times out. - }, - "http_port": 0, # Optional. The internal port on - which this service's run command will listen. Default: 8080 If there - is not an environment variable with the name ``PORT``"" , one will be - automatically added with its value set to the value of this field. - "image": { - "deploy_on_push": { - "enabled": bool # Optional. Whether - to automatically deploy new images. Can only be used for - images hosted in DOCR and can only be used with an image tag, - not a specific digest. - }, - "digest": "str", # Optional. The image - digest. Cannot be specified if tag is provided. - "registry": "str", # Optional. The registry - name. Must be left empty for the ``DOCR`` registry type. - "registry_credentials": "str", # Optional. - The credentials to be able to pull the image. The value will be - encrypted on first submission. On following submissions, the - encrypted value should be used. * "$username:$access_token" for - registries of type ``DOCKER_HUB``. * "$username:$access_token" - for registries of type ``GHCR``. - "registry_type": "str", # Optional. * - DOCKER_HUB: The DockerHub container registry type. * DOCR: The - DigitalOcean container registry type. * GHCR: The Github - container registry type. Known values are: "DOCKER_HUB", "DOCR", - and "GHCR". - "repository": "str", # Optional. The - repository name. - "tag": "latest" # Optional. Default value is - "latest". The repository tag. Defaults to ``latest`` if not - provided and no digest is provided. Cannot be specified if digest - is provided. - }, - "instance_count": 1, # Optional. Default value is 1. - The amount of instances that this component should be scaled to. - Default: 1. Must not be set if autoscaling is used. - "instance_size_slug": {}, - "internal_ports": [ - 0 # Optional. The ports on which this - service will listen for internal traffic. - ], - "liveness_health_check": { - "failure_threshold": 0, # Optional. The - number of failed health checks before considered unhealthy. - "http_path": "str", # Optional. The route - path used for the HTTP health check ping. If not set, the HTTP - health check will be disabled and a TCP health check used - instead. - "initial_delay_seconds": 0, # Optional. The - number of seconds to wait before beginning health checks. - "period_seconds": 0, # Optional. The number - of seconds to wait between health checks. - "port": 0, # Optional. The port on which the - health check will be performed. - "success_threshold": 0, # Optional. The - number of successful health checks before considered healthy. - "timeout_seconds": 0 # Optional. The number - of seconds after which the check times out. - }, - "log_destinations": [ - { - "name": "str", # Required. - "datadog": { - "api_key": "str", # Datadog - API key. Required. - "endpoint": "str" # - Optional. Datadog HTTP log intake endpoint. - }, - "logtail": { - "token": "str" # Optional. - Logtail token. - }, - "open_search": { - "basic_auth": { - "password": "str", # - Optional. Password for user defined in User. Is - required when ``endpoint`` is set. Cannot be set if - using a DigitalOcean DBaaS OpenSearch cluster. - "user": "str" # - Optional. Username to authenticate with. Only - required when ``endpoint`` is set. Defaults to - ``doadmin`` when ``cluster_name`` is set. - }, - "cluster_name": "str", # - Optional. The name of a DigitalOcean DBaaS OpenSearch - cluster to use as a log forwarding destination. Cannot be - specified if ``endpoint`` is also specified. - "endpoint": "str", # - Optional. OpenSearch API Endpoint. Only HTTPS is - supported. Format: https://:code:``::code:``. - Cannot be specified if ``cluster_name`` is also - specified. - "index_name": "logs" # - Optional. Default value is "logs". The index name to use - for the logs. If not set, the default index name is - "logs". - }, - "papertrail": { - "endpoint": "str" # - Papertrail syslog endpoint. Required. - } - } - ], - "name": "str", # Optional. The name. Must be unique - across all components within the same app. - "protocol": "str", # Optional. The protocol which - the service uses to serve traffic on the http_port. * ``HTTP``"" : - The app is serving the HTTP protocol. Default. * ``HTTP2``"" : The - app is serving the HTTP/2 protocol. Currently, this needs to be - implemented in the service by serving HTTP/2 cleartext (h2c). Known - values are: "HTTP" and "HTTP2". - "routes": [ - { - "path": "str", # Optional. - (Deprecated - Use Ingress Rules instead). An HTTP path - prefix. Paths must start with / and must be unique across all - components within an app. - "preserve_path_prefix": bool # - Optional. An optional flag to preserve the path that is - forwarded to the backend service. By default, the HTTP - request path will be trimmed from the left when forwarded to - the component. For example, a component with ``path=/api`` - will have requests to ``/api/list`` trimmed to ``/list``. If - this value is ``true``"" , the path will remain - ``/api/list``. - } - ], - "run_command": "str", # Optional. An optional run - command to override the component's default. - "source_dir": "str", # Optional. An optional path to - the working directory to use for the build. For Dockerfile builds, - this will be used as the build context. Must be relative to the root - of the repo. - "termination": { - "drain_seconds": 0, # Optional. The number - of seconds to wait between selecting a container instance for - termination and issuing the TERM signal. Selecting a container - instance for termination begins an asynchronous drain of new - requests on upstream load-balancers. (Default 15). - "grace_period_seconds": 0 # Optional. The - number of seconds to wait between sending a TERM signal to a - container and issuing a KILL which causes immediate shutdown. - (Default 120). - } - } - ], - "static_sites": [ - { - "bitbucket": { - "branch": "str", # Optional. The name of the - branch to use. - "deploy_on_push": bool, # Optional. Whether - to automatically deploy new commits made to the repo. - "repo": "str" # Optional. The name of the - repo in the format owner/repo. Example: - ``digitalocean/sample-golang``. - }, - "build_command": "str", # Optional. An optional - build command to run while building this component from source. - "catchall_document": "str", # Optional. The name of - the document to use as the fallback for any requests to documents - that are not found when serving this static site. Only 1 of - ``catchall_document`` or ``error_document`` can be set. - "cors": { - "allow_credentials": bool, # Optional. - Whether browsers should expose the response to the client-side - JavaScript code when the request"u2019s credentials mode is - include. This configures the ``Access-Control-Allow-Credentials`` - header. - "allow_headers": [ - "str" # Optional. The set of allowed - HTTP request headers. This configures the - ``Access-Control-Allow-Headers`` header. - ], - "allow_methods": [ - "str" # Optional. The set of allowed - HTTP methods. This configures the - ``Access-Control-Allow-Methods`` header. - ], - "allow_origins": [ - { - "exact": "str", # Optional. - Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + "regex": "str" # Optional. + RE2 style regex-based match. Only 1 of ``exact``"" , + ``prefix``"" , or ``regex`` must be set. For more + information about RE2 syntax, see: + https://github.com/google/re2/wiki/Syntax. + } + ], + "expose_headers": [ + "str" # Optional. The set of HTTP + response headers that browsers are allowed to access. This + configures the ``Access-Control-Expose-Headers`` header. + ], + "max_age": "str" # Optional. An optional + duration specifying how long browsers can cache the results of a + preflight request. This configures the ``Access-Control-Max-Age`` + header. + }, + "dockerfile_path": "str", # Optional. The path to + the Dockerfile relative to the root of the repo. If set, it will be + used to build this component. Otherwise, App Platform will attempt to + build it using buildpacks. + "environment_slug": "str", # Optional. An + environment slug describing the type of this app. For a full list, + please refer to `the product documentation + `_. + "envs": [ + { + "key": "str", # The variable name. + Required. + "scope": "RUN_AND_BUILD_TIME", # + Optional. Default value is "RUN_AND_BUILD_TIME". * RUN_TIME: + Made available only at run-time * BUILD_TIME: Made available + only at build-time * RUN_AND_BUILD_TIME: Made available at + both build and run-time. Known values are: "UNSET", + "RUN_TIME", "BUILD_TIME", and "RUN_AND_BUILD_TIME". + "type": "GENERAL", # Optional. + Default value is "GENERAL". * GENERAL: A plain-text + environment variable * SECRET: A secret encrypted environment + variable. Known values are: "GENERAL" and "SECRET". + "value": "str" # Optional. The + value. If the type is ``SECRET``"" , the value will be + encrypted on first submission. On following submissions, the + encrypted value should be used. + } + ], + "git": { + "branch": "str", # Optional. The name of the + branch to use. + "repo_clone_url": "str" # Optional. The + clone URL of the repo. Example: + ``https://github.com/digitalocean/sample-golang.git``. + }, + "github": { + "branch": "str", # Optional. The name of the + branch to use. + "deploy_on_push": bool, # Optional. Whether + to automatically deploy new commits made to the repo. + "repo": "str" # Optional. The name of the + repo in the format owner/repo. Example: + ``digitalocean/sample-golang``. + }, + "gitlab": { + "branch": "str", # Optional. The name of the + branch to use. + "deploy_on_push": bool, # Optional. Whether + to automatically deploy new commits made to the repo. + "repo": "str" # Optional. The name of the + repo in the format owner/repo. Example: + ``digitalocean/sample-golang``. + }, + "health_check": { + "failure_threshold": 0, # Optional. The + number of failed health checks before considered unhealthy. + "http_path": "str", # Optional. The route + path used for the HTTP health check ping. If not set, the HTTP + health check will be disabled and a TCP health check used + instead. + "initial_delay_seconds": 0, # Optional. The + number of seconds to wait before beginning health checks. + "period_seconds": 0, # Optional. The number + of seconds to wait between health checks. + "port": 0, # Optional. The port on which the + health check will be performed. If not set, the health check will + be performed on the component's http_port. + "success_threshold": 0, # Optional. The + number of successful health checks before considered healthy. + "timeout_seconds": 0 # Optional. The number + of seconds after which the check times out. + }, + "http_port": 0, # Optional. The internal port on + which this service's run command will listen. Default: 8080 If there + is not an environment variable with the name ``PORT``"" , one will be + automatically added with its value set to the value of this field. + "image": { + "deploy_on_push": { + "enabled": bool # Optional. Whether + to automatically deploy new images. Can only be used for + images hosted in DOCR and can only be used with an image tag, + not a specific digest. + }, + "digest": "str", # Optional. The image + digest. Cannot be specified if tag is provided. + "registry": "str", # Optional. The registry + name. Must be left empty for the ``DOCR`` registry type. + "registry_credentials": "str", # Optional. + The credentials to be able to pull the image. The value will be + encrypted on first submission. On following submissions, the + encrypted value should be used. * "$username:$access_token" for + registries of type ``DOCKER_HUB``. * "$username:$access_token" + for registries of type ``GHCR``. + "registry_type": "str", # Optional. * + DOCKER_HUB: The DockerHub container registry type. * DOCR: The + DigitalOcean container registry type. * GHCR: The Github + container registry type. Known values are: "DOCKER_HUB", "DOCR", + and "GHCR". + "repository": "str", # Optional. The + repository name. + "tag": "latest" # Optional. Default value is + "latest". The repository tag. Defaults to ``latest`` if not + provided and no digest is provided. Cannot be specified if digest + is provided. + }, + "instance_count": 1, # Optional. Default value is 1. + The amount of instances that this component should be scaled to. + Default: 1. Must not be set if autoscaling is used. + "instance_size_slug": {}, + "internal_ports": [ + 0 # Optional. The ports on which this + service will listen for internal traffic. + ], + "liveness_health_check": { + "failure_threshold": 0, # Optional. The + number of failed health checks before considered unhealthy. + "http_path": "str", # Optional. The route + path used for the HTTP health check ping. If not set, the HTTP + health check will be disabled and a TCP health check used + instead. + "initial_delay_seconds": 0, # Optional. The + number of seconds to wait before beginning health checks. + "period_seconds": 0, # Optional. The number + of seconds to wait between health checks. + "port": 0, # Optional. The port on which the + health check will be performed. + "success_threshold": 0, # Optional. The + number of successful health checks before considered healthy. + "timeout_seconds": 0 # Optional. The number + of seconds after which the check times out. + }, + "log_destinations": [ + { + "name": "str", # Required. + "datadog": { + "api_key": "str", # Datadog + API key. Required. + "endpoint": "str" # + Optional. Datadog HTTP log intake endpoint. + }, + "logtail": { + "token": "str" # Optional. + Logtail token. + }, + "open_search": { + "basic_auth": { + "password": "str", # + Optional. Password for user defined in User. Is + required when ``endpoint`` is set. Cannot be set if + using a DigitalOcean DBaaS OpenSearch cluster. + "user": "str" # + Optional. Username to authenticate with. Only + required when ``endpoint`` is set. Defaults to + ``doadmin`` when ``cluster_name`` is set. + }, + "cluster_name": "str", # + Optional. The name of a DigitalOcean DBaaS OpenSearch + cluster to use as a log forwarding destination. Cannot be + specified if ``endpoint`` is also specified. + "endpoint": "str", # + Optional. OpenSearch API Endpoint. Only HTTPS is + supported. Format: https://:code:``::code:``. + Cannot be specified if ``cluster_name`` is also + specified. + "index_name": "logs" # + Optional. Default value is "logs". The index name to use + for the logs. If not set, the default index name is + "logs". + }, + "papertrail": { + "endpoint": "str" # + Papertrail syslog endpoint. Required. + } + } + ], + "name": "str", # Optional. The name. Must be unique + across all components within the same app. + "protocol": "str", # Optional. The protocol which + the service uses to serve traffic on the http_port. * ``HTTP``"" : + The app is serving the HTTP protocol. Default. * ``HTTP2``"" : The + app is serving the HTTP/2 protocol. Currently, this needs to be + implemented in the service by serving HTTP/2 cleartext (h2c). Known + values are: "HTTP" and "HTTP2". + "routes": [ + { + "path": "str", # Optional. + (Deprecated - Use Ingress Rules instead). An HTTP path + prefix. Paths must start with / and must be unique across all + components within an app. + "preserve_path_prefix": bool # + Optional. An optional flag to preserve the path that is + forwarded to the backend service. By default, the HTTP + request path will be trimmed from the left when forwarded to + the component. For example, a component with ``path=/api`` + will have requests to ``/api/list`` trimmed to ``/list``. If + this value is ``true``"" , the path will remain + ``/api/list``. + } + ], + "run_command": "str", # Optional. An optional run + command to override the component's default. + "source_dir": "str", # Optional. An optional path to + the working directory to use for the build. For Dockerfile builds, + this will be used as the build context. Must be relative to the root + of the repo. + "termination": { + "drain_seconds": 0, # Optional. The number + of seconds to wait between selecting a container instance for + termination and issuing the TERM signal. Selecting a container + instance for termination begins an asynchronous drain of new + requests on upstream load-balancers. (Default 15). + "grace_period_seconds": 0 # Optional. The + number of seconds to wait between sending a TERM signal to a + container and issuing a KILL which causes immediate shutdown. + (Default 120). + } + } + ], + "static_sites": [ + { + "bitbucket": { + "branch": "str", # Optional. The name of the + branch to use. + "deploy_on_push": bool, # Optional. Whether + to automatically deploy new commits made to the repo. + "repo": "str" # Optional. The name of the + repo in the format owner/repo. Example: + ``digitalocean/sample-golang``. + }, + "build_command": "str", # Optional. An optional + build command to run while building this component from source. + "catchall_document": "str", # Optional. The name of + the document to use as the fallback for any requests to documents + that are not found when serving this static site. Only 1 of + ``catchall_document`` or ``error_document`` can be set. + "cors": { + "allow_credentials": bool, # Optional. + Whether browsers should expose the response to the client-side + JavaScript code when the request"u2019s credentials mode is + include. This configures the ``Access-Control-Allow-Credentials`` + header. + "allow_headers": [ + "str" # Optional. The set of allowed + HTTP request headers. This configures the + ``Access-Control-Allow-Headers`` header. + ], + "allow_methods": [ + "str" # Optional. The set of allowed + HTTP methods. This configures the + ``Access-Control-Allow-Methods`` header. + ], + "allow_origins": [ + { + "exact": "str", # Optional. + Exact string match. Only 1 of ``exact``"" , ``prefix``"" + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -78191,7 +78702,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -78377,7 +78891,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -78404,7 +78920,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -78677,7 +79195,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -78969,7 +79490,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -79638,7 +80162,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -79832,7 +80358,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -79858,7 +80387,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -80149,7 +80681,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -80462,7 +80996,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -81247,7 +81783,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -81441,7 +81979,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -81467,7 +82008,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -81758,7 +82302,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -82071,7 +82617,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -82795,7 +83343,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -82989,7 +83539,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -83015,7 +83568,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -83306,7 +83862,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -83619,7 +84177,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -84335,7 +84895,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -84529,7 +85091,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -84555,7 +85120,10 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -84846,7 +85414,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -85159,7 +85729,9 @@ def update(self, id: str, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -86034,7 +86606,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -86220,7 +86795,9 @@ def restart( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -86247,7 +86824,9 @@ def restart( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -86520,7 +87099,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -86812,7 +87394,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -87528,7 +88113,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -87714,7 +88302,9 @@ def restart( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -87741,7 +88331,9 @@ def restart( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -88014,7 +88606,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -88306,7 +88901,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -89022,7 +89620,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -89208,7 +89809,9 @@ def restart( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -89235,7 +89838,9 @@ def restart( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -89508,7 +90113,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -89800,7 +90408,10 @@ def restart( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -91045,7 +91656,9 @@ def list_deployments( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -91239,7 +91852,10 @@ def list_deployments( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -91265,7 +91881,10 @@ def list_deployments( "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -91556,7 +92175,9 @@ def list_deployments( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -91869,7 +92490,9 @@ def list_deployments( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -92703,7 +93326,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -92889,7 +93515,9 @@ def create_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -92916,7 +93544,9 @@ def create_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -93189,7 +93819,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -93481,7 +94114,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -94198,7 +94834,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -94384,7 +95023,9 @@ def create_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -94411,7 +95052,9 @@ def create_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -94684,7 +95327,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -94976,7 +95622,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -95691,7 +96340,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -95877,7 +96529,9 @@ def create_deployment( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -95904,7 +96558,9 @@ def create_deployment( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -96177,7 +96833,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -96469,7 +97128,10 @@ def create_deployment( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -97266,7 +97928,10 @@ def get_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -97452,7 +98117,9 @@ def get_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> JSON "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -97479,7 +98146,9 @@ def get_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> JSON "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -97752,7 +98421,10 @@ def get_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -98044,7 +98716,10 @@ def get_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -98828,7 +99503,10 @@ def cancel_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> J { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -99014,7 +99692,9 @@ def cancel_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> J "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -99041,7 +99721,9 @@ def cancel_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> J "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -99314,7 +99996,10 @@ def cancel_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> J { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -99606,7 +100291,10 @@ def cancel_deployment(self, app_id: str, deployment_id: str, **kwargs: Any) -> J { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -101682,7 +102370,10 @@ def list_events( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -101887,6 +102578,9 @@ def list_events( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. + An empty string is a valid value and will + be serialized explicitly rather than + being omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -101915,7 +102609,10 @@ def list_events( "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact string match. An + empty string is a valid value and will be + serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # Prefix-based match. For @@ -102218,7 +102915,10 @@ def list_events( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -102545,7 +103245,10 @@ def list_events( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -103430,7 +104133,9 @@ def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -103624,7 +104329,10 @@ def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -103650,7 +104358,10 @@ def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -103941,7 +104652,9 @@ def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -104254,7 +104967,9 @@ def get_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -105109,7 +105824,9 @@ def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -105303,7 +106020,10 @@ def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , - or ``regex`` must be set. + or ``regex`` must be set. An empty string is + a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -105329,7 +106049,10 @@ def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "match": { "authority": { "exact": - "str" # Required. + "str" # Exact string match. An empty string is a + valid value and will be serialized explicitly + rather than being omitted from the payload. + Required. }, "path": { "prefix": @@ -105620,7 +106343,9 @@ def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -105933,7 +106658,9 @@ def cancel_event(self, app_id: str, event_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -107140,7 +107867,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -107317,7 +108046,10 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -107341,7 +108073,10 @@ def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -107602,7 +108337,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -107878,7 +108615,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -108424,7 +109163,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -108601,7 +109342,10 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -108625,7 +109369,10 @@ def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -108886,7 +109633,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -109162,7 +109911,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -109730,7 +110481,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -109907,7 +110660,10 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -109931,7 +110687,10 @@ def validate_app_spec( }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -110192,7 +110951,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -110468,7 +111229,9 @@ def validate_app_spec( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -111017,7 +111780,9 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -111194,7 +111959,10 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -111218,7 +111986,10 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -111479,7 +112250,9 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -111755,7 +112528,9 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -112301,7 +113076,9 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -112478,7 +113255,10 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -112502,7 +113282,10 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON }, "match": { "authority": { - "exact": "str" # Required. + "exact": "str" # Exact + string match. An empty string is a valid value and will + be serialized explicitly rather than being omitted from + the payload. Required. }, "path": { "prefix": "str" # @@ -112763,7 +113546,9 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -113039,7 +113824,9 @@ def validate_app_spec(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" - , or ``regex`` must be set. + , or ``regex`` must be set. An empty string is a valid + value and will be serialized explicitly rather than being + omitted from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -114402,7 +115189,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -114588,7 +115378,9 @@ def create_rollback( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -114615,7 +115407,9 @@ def create_rollback( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -114888,7 +115682,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -115180,7 +115977,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -115905,7 +116705,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -116091,7 +116894,9 @@ def create_rollback( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -116118,7 +116923,9 @@ def create_rollback( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -116391,7 +117198,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -116683,7 +117493,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -117411,7 +118224,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -117597,7 +118413,9 @@ def create_rollback( "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -117624,7 +118442,9 @@ def create_rollback( "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -117897,7 +118717,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -118189,7 +119012,10 @@ def create_rollback( { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -119512,7 +120338,10 @@ def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -119698,7 +120527,9 @@ def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be - set. + set. An empty string is a valid value and will be + serialized explicitly rather than being omitted + from the payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be @@ -119725,7 +120556,9 @@ def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: "match": { "authority": { "exact": "str" # - Required. + Exact string match. An empty string is a valid value + and will be serialized explicitly rather than being + omitted from the payload. Required. }, "path": { "prefix": "str" # @@ -119998,7 +120831,10 @@ def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -120290,7 +121126,10 @@ def revert_rollback(self, app_id: str, **kwargs: Any) -> JSON: { "exact": "str", # Optional. Exact string match. Only 1 of ``exact``"" , - ``prefix``"" , or ``regex`` must be set. + ``prefix``"" , or ``regex`` must be set. An empty + string is a valid value and will be serialized + explicitly rather than being omitted from the + payload. "prefix": "str", # Optional. Prefix-based match. Only 1 of ``exact``"" , ``prefix``"" , or ``regex`` must be set. @@ -124289,6 +125128,54 @@ def list_options(self, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { "options": { + "advanced_mysql": { + "layouts": [ + { + "num_nodes": 0, # Optional. An array of + objects, each indicating the node sizes (otherwise referred to as + slugs) that are available with various numbers of nodes in the + database cluster. Each slugs denotes the node's identifier, CPU, + and RAM (in that order). + "sizes": [ + "str" # Optional. An array of + objects containing the slugs available with various node + counts. + ] + } + ], + "regions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ], + "versions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ] + }, + "advanced_pg": { + "layouts": [ + { + "num_nodes": 0, # Optional. An array of + objects, each indicating the node sizes (otherwise referred to as + slugs) that are available with various numbers of nodes in the + database cluster. Each slugs denotes the node's identifier, CPU, + and RAM (in that order). + "sizes": [ + "str" # Optional. An array of + objects containing the slugs available with various node + counts. + ] + } + ], + "regions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ], + "versions": [ + "str" # Optional. An array of strings containing the + names of available regions. + ] + }, "kafka": { "layouts": [ { @@ -124459,6 +125346,32 @@ def list_options(self, **kwargs: Any) -> JSON: } }, "version_availability": { + "advanced_mysql": [ + { + "end_of_availability": "str", # Optional. A + timestamp referring to the date when the particular version will no + longer be available for creating new clusters. If null, the version + does not have an end of availability timeline. + "end_of_life": "str", # Optional. A timestamp + referring to the date when the particular version will no longer be + supported. If null, the version does not have an end of life + timeline. + "version": "str" # Optional. The engine version. + } + ], + "advanced_pg": [ + { + "end_of_availability": "str", # Optional. A + timestamp referring to the date when the particular version will no + longer be available for creating new clusters. If null, the version + does not have an end of availability timeline. + "end_of_life": "str", # Optional. A timestamp + referring to the date when the particular version will no longer be + supported. If null, the version does not have an end of life + timeline. + "version": "str" # Optional. The engine version. + } + ], "kafka": [ { "end_of_availability": "str", # Optional. A @@ -124679,9 +125592,11 @@ def list_clusters(self, *, tag_name: Optional[str] = None, **kwargs: Any) -> JSO "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" - for Kafka, "opensearch" for OpenSearch, and "valkey" for Valkey. - Required. Known values are: "pg", "mysql", "redis", "valkey", "mongodb", - "kafka", and "opensearch". + for Kafka, "opensearch" for OpenSearch, "valkey" for Valkey, + "advanced_pg" for PostgreSQL Advanced Edition, and "advanced_mysql" for + MySQL Advanced Edition. Advanced Edition engines are currently in public + preview. Required. Known values are: "pg", "mysql", "redis", "valkey", + "mongodb", "kafka", "opensearch", "advanced_pg", and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database @@ -125113,6 +126028,17 @@ def create_cluster( include a key named ``backup_restore`` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel. + + PostgreSQL and MySQL Advanced Edition clusters can be provisioned by setting ``engine`` to + ``advanced_pg`` or ``advanced_mysql``. Advanced Edition clusters are currently in public + preview and target highly available workloads. ``advanced_pg`` supports 1-, 2-, and 3-node + deployments; ``advanced_mysql`` only supports 1- and 3-node deployments. See the `PostgreSQL + Advanced Edition + `_ + and `MySQL Advanced Edition + `_ + documentation for the feature differences vs. Standard Edition and current preview limitations. + Note: Caching cluster creates are no longer supported as of 2025-04-30T00:00:00Z. Backups are also not supported for Caching or Valkey clusters. @@ -125133,8 +126059,10 @@ def create_cluster( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" for - OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", "mysql", - "redis", "valkey", "mongodb", "kafka", and "opensearch". + OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced Edition, + and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition engines are + currently in public preview. Required. Known values are: "pg", "mysql", "redis", + "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. Required. @@ -125439,8 +126367,11 @@ def create_cluster( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -125777,6 +126708,17 @@ def create_cluster( include a key named ``backup_restore`` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel. + + PostgreSQL and MySQL Advanced Edition clusters can be provisioned by setting ``engine`` to + ``advanced_pg`` or ``advanced_mysql``. Advanced Edition clusters are currently in public + preview and target highly available workloads. ``advanced_pg`` supports 1-, 2-, and 3-node + deployments; ``advanced_mysql`` only supports 1- and 3-node deployments. See the `PostgreSQL + Advanced Edition + `_ + and `MySQL Advanced Edition + `_ + documentation for the feature differences vs. Standard Edition and current preview limitations. + Note: Caching cluster creates are no longer supported as of 2025-04-30T00:00:00Z. Backups are also not supported for Caching or Valkey clusters. @@ -125798,8 +126740,11 @@ def create_cluster( "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -126134,6 +127079,17 @@ def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: include a key named ``backup_restore`` with the name of the original database cluster and the timestamp of the backup to be restored. Creating a database from a backup is the same as forking a database in the control panel. + + PostgreSQL and MySQL Advanced Edition clusters can be provisioned by setting ``engine`` to + ``advanced_pg`` or ``advanced_mysql``. Advanced Edition clusters are currently in public + preview and target highly available workloads. ``advanced_pg`` supports 1-, 2-, and 3-node + deployments; ``advanced_mysql`` only supports 1- and 3-node deployments. See the `PostgreSQL + Advanced Edition + `_ + and `MySQL Advanced Edition + `_ + documentation for the feature differences vs. Standard Edition and current preview limitations. + Note: Caching cluster creates are no longer supported as of 2025-04-30T00:00:00Z. Backups are also not supported for Caching or Valkey clusters. @@ -126151,8 +127107,10 @@ def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" for - OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", "mysql", - "redis", "valkey", "mongodb", "kafka", and "opensearch". + OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced Edition, + and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition engines are + currently in public preview. Required. Known values are: "pg", "mysql", "redis", + "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. Required. @@ -126457,8 +127415,11 @@ def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -126890,8 +127851,11 @@ def get_cluster(self, database_cluster_uuid: str, **kwargs: Any) -> JSON: "engine": "str", # A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Caching, "mongodb" for MongoDB, "kafka" for Kafka, "opensearch" - for OpenSearch, and "valkey" for Valkey. Required. Known values are: "pg", - "mysql", "redis", "valkey", "mongodb", "kafka", and "opensearch". + for OpenSearch, "valkey" for Valkey, "advanced_pg" for PostgreSQL Advanced + Edition, and "advanced_mysql" for MySQL Advanced Edition. Advanced Edition + engines are currently in public preview. Required. Known values are: "pg", + "mysql", "redis", "valkey", "mongodb", "kafka", "opensearch", "advanced_pg", + and "advanced_mysql". "name": "str", # A unique, human-readable name referring to a database cluster. Required. "num_nodes": 0, # The number of nodes in the database cluster. @@ -163213,7 +164177,9 @@ def list_clusters( "ha": False, # Optional. Default value is False. A boolean value indicating whether the control plane is run in a highly available configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + downtime. The property cannot be disabled. When omitted on create, the + default is version-dependent; for DOKS 1.36.0 and later, the default is + true; for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the @@ -163502,10 +164468,11 @@ def create_cluster( was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes master @@ -163700,10 +164667,12 @@ def create_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -163929,10 +164898,12 @@ def create_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -164145,10 +165116,11 @@ def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes master @@ -164343,10 +165315,12 @@ def create_cluster(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -164636,7 +165610,9 @@ def get_cluster(self, cluster_id: str, **kwargs: Any) -> JSON: "ha": False, # Optional. Default value is False. A boolean value indicating whether the control plane is run in a highly available configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + downtime. The property cannot be disabled. When omitted on create, the + default is version-dependent; for DOKS 1.36.0 and later, the default is true; + for earlier versions, the default is false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -164860,10 +165836,11 @@ def update_cluster( "enabled": bool # Optional. Indicates whether the control plane firewall is enabled. }, - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "maintenance_policy": { "day": "str", # Optional. The day of the maintenance window policy. May be one of ``monday`` through ``sunday``"" , or ``any`` to indicate an @@ -165034,10 +166011,12 @@ def update_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -165275,10 +166254,12 @@ def update_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -165415,10 +166396,11 @@ def update_cluster( "enabled": bool # Optional. Indicates whether the control plane firewall is enabled. }, - "ha": False, # Optional. Default value is False. A boolean value indicating - whether the control plane is run in a highly available configuration in the - cluster. Highly available control planes incur less downtime. The property cannot - be disabled. + "ha": bool, # Optional. A boolean value indicating whether the control plane + is run in a highly available configuration in the cluster. Highly available + control planes incur less downtime. The property cannot be disabled. When omitted + on create, the default is version-dependent; for DOKS 1.36.0 and later, the + default is true; for earlier versions, the default is false. "maintenance_policy": { "day": "str", # Optional. The day of the maintenance window policy. May be one of ``monday`` through ``sunday``"" , or ``any`` to indicate an @@ -165589,10 +166571,12 @@ def update_cluster( cluster was created. "endpoint": "str", # Optional. The base URL of the API server on the Kubernetes master node. - "ha": False, # Optional. Default value is False. A boolean value - indicating whether the control plane is run in a highly available - configuration in the cluster. Highly available control planes incur less - downtime. The property cannot be disabled. + "ha": bool, # Optional. A boolean value indicating whether the + control plane is run in a highly available configuration in the cluster. + Highly available control planes incur less downtime. The property cannot be + disabled. When omitted on create, the default is version-dependent; for DOKS + 1.36.0 and later, the default is true; for earlier versions, the default is + false. "id": "str", # Optional. A unique ID that can be used to identify and reference a Kubernetes cluster. "ipv4": "str", # Optional. The public IPv4 address of the Kubernetes @@ -254188,13 +255172,14 @@ def import_custom_model( return cast(JSON, deserialized) # type: ignore @distributed_trace - def delete_custom_model(self, uuid: str, **kwargs: Any) -> JSON: + def get_custom_model(self, uuid: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long - """Delete Custom Model. + """Get Custom Model. - To delete a custom model, send a DELETE request to ``/v2/genai/custom_models/{uuid}``. + To retrieve details of a custom model, send a GET request to + ``/v2/gen-ai/custom_models/{uuid}``. - :param uuid: UUID of the custom model to delete. Required. + :param uuid: UUID of the custom model to retrieve. Required. :type uuid: str :return: JSON object :rtype: JSON @@ -254205,11 +255190,207 @@ def delete_custom_model(self, uuid: str, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { - "error": "str", # Optional. Error message if deletion failed. - "status": "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED" # Optional. Default value - is "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED". Status of delete operation. Known - values are: "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED", - "DELETE_CUSTOM_MODEL_STATUS_SUCCESS", and "DELETE_CUSTOM_MODEL_STATUS_FAIL". + "model": { + "active_deployments": [ + { + "created_at": "str", # Optional. RFC 3339 timestamp + indicating when the dedicated inference deployment was created. + "endpoints": { + "private_endpoint_fqdn": "str", # Optional. + Private FQDN for the deployment. + "public_endpoint_fqdn": "str" # Optional. + Public FQDN for the deployment. + }, + "id": "str", # Optional. Unique identifier (UUID) of + the dedicated inference deployment. + "name": "str", # Optional. Human-readable name of + the dedicated inference deployment. + "region_slug": "str", # Optional. Slug of the region + where the dedicated inference deployment is running (e.g. "atl1"). + "state": "str", # Optional. Current lifecycle state + of the dedicated inference deployment (e.g. "ACTIVE", + "PROVISIONING"). + "updated_at": "str" # Optional. RFC 3339 timestamp + indicating when the dedicated inference deployment was last updated. + } + ], + "architecture": "str", # Optional. Model architecture type + (free-form string from config.json). + "config_json": {}, # Optional. Raw config.json contents from the + model repository. + "context_length": 0, # Optional. Maximum context length supported by + the model. + "cost_estimate_per_month": 0, # Optional. Estimated monthly cost in + dollars for hosting. + "created_at": "2020-02-20 00:00:00", # Optional. Timestamp when the + model was created. + "description": "str", # Optional. Description of the custom model. + "file_count": 0, # Optional. Number of files in the model. + "input_modalities": [ + "str" # Optional. Input modalities supported (e.g., text, + image). + ], + "license": "str", # Optional. License under which the model is + distributed. + "name": "str", # Optional. Name of the custom model. + "output_modalities": [ + "str" # Optional. Output modalities supported (e.g., text, + image). + ], + "parameters": "str", # Optional. Number of parameters in the model. + "source_ref": { + "access_type": "ACCESS_TYPE_UNSPECIFIED", # Optional. + Default value is "ACCESS_TYPE_UNSPECIFIED". Access level required for the + model repository. Known values are: "ACCESS_TYPE_UNSPECIFIED", + "ACCESS_TYPE_PUBLIC", "ACCESS_TYPE_PRIVATE", and "ACCESS_TYPE_GATED". + "bucket": "str", # Optional. Spaces bucket name. + "commit_sha": "str", # Optional. Git commit SHA of the model + version. + "hf_token": "str", # Optional. User-provided HuggingFace + token for gated/private models (not persisted in source_ref). + "prefix": "str", # Optional. Object prefix path in the + bucket. + "region": "str", # Optional. Spaces bucket region. + "repo_id": "str" # Optional. Huggingface repository + identifier. + }, + "source_type": "SOURCE_TYPE_UNSPECIFIED", # Optional. Default value + is "SOURCE_TYPE_UNSPECIFIED". Source from which the model was imported. Known + values are: "SOURCE_TYPE_UNSPECIFIED", "SOURCE_TYPE_HUGGINGFACE", + "SOURCE_TYPE_SPACES_BUCKET", "SOURCE_TYPE_SDK_UPLOAD", and + "SOURCE_TYPE_FINE_TUNING". + "status": "STATUS_UNSPECIFIED", # Optional. Default value is + "STATUS_UNSPECIFIED". Import and deployment status of the custom model. Known + values are: "STATUS_UNSPECIFIED", "STATUS_IMPORTING", "STATUS_READY", + "STATUS_FAILED", and "STATUS_DELETED". + "storage_region": "str", # Optional. Region of the Spaces bucket + where model files are stored. + "tags": { + "tags": [ + "str" # Optional. List of tag strings. + ] + }, + "team_id": "str", # Optional. Team that owns the model. + "total_size_bytes": "str", # Optional. Total size of model files in + bytes. + "updated_at": "2020-02-20 00:00:00", # Optional. Timestamp when the + model was last updated. + "uuid": "str" # Optional. Unique identifier for the custom model. + } + } + # response body for status code(s): 404 + response == { + "id": "str", # A short identifier corresponding to the HTTP status code + returned. For example, the ID for a response returning a 404 status code would + be "not_found.". Required. + "message": "str", # A message providing additional information about the + error, including details to help resolve it when possible. Required. + "request_id": "str" # Optional. Optionally, some endpoints may include a + request ID that should be provided when reporting bugs or opening support + tickets to help identify the issue. + } + """ + error_map: MutableMapping[int, Type[HttpResponseError]] = { + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 401: cast( + Type[HttpResponseError], + lambda response: ClientAuthenticationError(response=response), + ), + 429: HttpResponseError, + 500: HttpResponseError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[JSON] = kwargs.pop("cls", None) + + _request = build_genai_get_custom_model_request( + uuid=uuid, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = ( + self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 404]: + if _stream: + response.read() # Load the body in memory and close the socket + map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore + raise HttpResponseError(response=response) + + response_headers = {} + if response.status_code == 200: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if response.status_code == 404: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if cls: + return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore + + return cast(JSON, deserialized) # type: ignore + + @distributed_trace + def delete_custom_model(self, uuid: str, **kwargs: Any) -> JSON: + # pylint: disable=line-too-long + """Delete Custom Model. + + To delete a custom model, send a DELETE request to ``/v2/genai/custom_models/{uuid}``. + + :param uuid: UUID of the custom model to delete. Required. + :type uuid: str + :return: JSON object + :rtype: JSON + :raises ~azure.core.exceptions.HttpResponseError: + + Example: + .. code-block:: python + + # response body for status code(s): 200 + response == { + "error": "str", # Optional. Error message if deletion failed. + "status": "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED" # Optional. Default value + is "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED". Status of delete operation. Known + values are: "DELETE_CUSTOM_MODEL_STATUS_UNSPECIFIED", + "DELETE_CUSTOM_MODEL_STATUS_SUCCESS", and "DELETE_CUSTOM_MODEL_STATUS_FAIL". } # response body for status code(s): 404 response == { @@ -291651,6 +292832,11 @@ def upload_batch_file( # pylint: disable=inconsistent-return-statements ``POST /v1/batches`` performs a ``HEAD`` check on the uploaded object and will reject the batch if this upload has not completed. + Send the raw JSONL bytes verbatim. Presigned PUT URLs are signature-sensitive to request + headers — prefer ``application/octet-stream`` or omit ``Content-Type`` entirely. A custom value + (for example ``application/jsonl``\\ ) can cause signature mismatches unless the URL was signed + for that exact header. + :param data: Raw JSONL bytes — one request per line. Required. :type data: IO[bytes] :return: None @@ -291729,185 +292915,6 @@ def upload_batch_file( # pylint: disable=inconsistent-return-statements if cls: return cls(pipeline_response, None, response_headers) # type: ignore - @distributed_trace - def list_batches( - self, *, after: Optional[str] = None, limit: int = 20, **kwargs: Any - ) -> JSON: - # pylint: disable=line-too-long - """List Batch Inference Jobs. - - Returns a cursor-paginated list of batch jobs, ordered newest first. Use ``limit`` to control - page size and ``after`` to page forward using the ``last_id`` from the previous response. - - :keyword after: Cursor for pagination. Pass the ``last_id`` value from the previous response to - fetch the next page. Omit for the first page. Default value is None. - :paramtype after: str - :keyword limit: Maximum number of batches to return per page. Default value is 20. - :paramtype limit: int - :return: JSON object - :rtype: JSON - :raises ~azure.core.exceptions.HttpResponseError: - - Example: - .. code-block:: python - - # response body for status code(s): 200 - response == { - "data": [ - { - "batch_id": "str", # Unique identifier for the batch job. - Required. - "completion_window": "str", # Required. "24h" - "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is - dispatched to. Required. - "input_file_id": "str", # The uploaded JSONL input file. - Required. - "provider": "str", # Required. Known values are: "openai" - and "anthropic". - "status": "str", # Lifecycle status. Terminal states: - ``completed``"" , ``failed``"" , ``expired``"" , ``cancelled``. Required. - Known values are: "validating", "in_progress", "finalizing", "completed", - "failed", "expired", "cancelling", and "cancelled". - "cancelled_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "completed_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "error_file_id": "str", # Optional. Error sidecar file. Null - when no errors were produced. - "errors": [ - { - "code": "str", # Optional. Top-level errors - that prevented the batch from completing. - "line": 0, # Optional. 1-based JSONL line - number, if applicable. - "message": "str" # Optional. Top-level - errors that prevented the batch from completing. - } - ], - "expires_at": "2020-02-20 00:00:00", # Optional. Derived - from ``created_at`` plus ``completion_window``. - "failed_at": "2020-02-20 00:00:00", # Optional. Batch jobs - on this page, ordered newest first. Required. - "finalizing_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "in_progress_at": "2020-02-20 00:00:00", # Optional. Batch - jobs on this page, ordered newest first. Required. - "metadata": { - "str": "str" # Optional. Metadata attached at - creation. - }, - "output_file_id": "str", # Optional. Output JSONL file. - Populated once the job completes. - "request_counts": { - "completed": 0, # Optional. Aggregate request - counts. - "failed": 0, # Optional. Aggregate request counts. - "total": 0 # Optional. Aggregate request counts. - }, - "request_id": "str" # Optional. The idempotency key supplied - at creation. - } - ], - "has_more": bool, # Whether additional batches exist beyond this page. - Required. - "object": "str", # The object type, always ``list``. Required. "list" - "first_id": "str", # Optional. ID of the first batch on this page. Null when - the page is empty. - "last_id": "str" # Optional. ID of the last batch on this page. Pass as - ``after`` to fetch the next page. - } - # response body for status code(s): 403 - response == { - "id": "str", # A short identifier corresponding to the HTTP status code - returned. For example, the ID for a response returning a 404 status code would - be "not_found.". Required. - "message": "str", # A message providing additional information about the - error, including details to help resolve it when possible. Required. - "request_id": "str" # Optional. Optionally, some endpoints may include a - request ID that should be provided when reporting bugs or opening support - tickets to help identify the issue. - } - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - 401: cast( - Type[HttpResponseError], - lambda response: ClientAuthenticationError(response=response), - ), - 429: HttpResponseError, - 500: HttpResponseError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = kwargs.pop("params", {}) or {} - - cls: ClsType[JSON] = kwargs.pop("cls", None) - - _request = build_inference_list_batches_request( - after=after, - limit=limit, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = ( - self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 403]: - if _stream: - response.read() # Load the body in memory and close the socket - map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore - raise HttpResponseError(response=response) - - response_headers = {} - if response.status_code == 200: - response_headers["ratelimit-limit"] = self._deserialize( - "int", response.headers.get("ratelimit-limit") - ) - response_headers["ratelimit-remaining"] = self._deserialize( - "int", response.headers.get("ratelimit-remaining") - ) - response_headers["ratelimit-reset"] = self._deserialize( - "int", response.headers.get("ratelimit-reset") - ) - - if response.content: - deserialized = response.json() - else: - deserialized = None - - if response.status_code == 403: - response_headers["ratelimit-limit"] = self._deserialize( - "int", response.headers.get("ratelimit-limit") - ) - response_headers["ratelimit-remaining"] = self._deserialize( - "int", response.headers.get("ratelimit-remaining") - ) - response_headers["ratelimit-reset"] = self._deserialize( - "int", response.headers.get("ratelimit-reset") - ) - - if response.content: - deserialized = response.json() - else: - deserialized = None - - if cls: - return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore - - return cast(JSON, deserialized) # type: ignore - @overload def create_batch( self, body: JSON, *, content_type: str = "application/json", **kwargs: Any @@ -291936,10 +292943,9 @@ def create_batch( # JSON input template you can fill out and use as your body input. body = { - "endpoint": "str", # Inference endpoint each request is dispatched to. When - ``provider`` is ``openai``"" , must match the ``url`` on every JSONL line. - Required. Known values are: "/v1/chat/completions", "/v1/embeddings", and - "/v1/messages". + "completion_window": "24h", # Default value is "24h". Time window in which + the job must complete. Jobs that do not finish in time transition to ``expired``. + "24h" "file_id": "str", # The ``file_id`` returned by ``POST /v1/batches/files``. Required. "provider": "str", # The inference provider whose JSONL schema the input @@ -291948,10 +292954,11 @@ def create_batch( the Anthropic Message Batches JSONL conventions. Required. Known values are: "openai" and "anthropic". "request_id": "str", # Client-supplied idempotency key. Retries with the - same value return the existing job. Required. - "completion_window": "24h", # Optional. Default value is "24h". Time window - in which the job must complete. Jobs that do not finish in time transition to - ``expired``. "24h" + same value return the existing job instead of creating a duplicate. Required. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. **Required when ``provider`` is ``openai`` and must match the ``url`` on + every JSONL line. Must be omitted when ``provider`` is ``anthropic``.**. Known + values are: "/v1/responses" and "/v1/chat/completions". "metadata": { "str": "str" # Optional. Optional string-valued metadata to attach to the job. @@ -291963,8 +292970,6 @@ def create_batch( "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -291973,6 +292978,8 @@ def create_batch( "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -292046,8 +293053,6 @@ def create_batch( "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -292056,6 +293061,8 @@ def create_batch( "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -292121,10 +293128,9 @@ def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: # JSON input template you can fill out and use as your body input. body = { - "endpoint": "str", # Inference endpoint each request is dispatched to. When - ``provider`` is ``openai``"" , must match the ``url`` on every JSONL line. - Required. Known values are: "/v1/chat/completions", "/v1/embeddings", and - "/v1/messages". + "completion_window": "24h", # Default value is "24h". Time window in which + the job must complete. Jobs that do not finish in time transition to ``expired``. + "24h" "file_id": "str", # The ``file_id`` returned by ``POST /v1/batches/files``. Required. "provider": "str", # The inference provider whose JSONL schema the input @@ -292133,10 +293139,11 @@ def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: the Anthropic Message Batches JSONL conventions. Required. Known values are: "openai" and "anthropic". "request_id": "str", # Client-supplied idempotency key. Retries with the - same value return the existing job. Required. - "completion_window": "24h", # Optional. Default value is "24h". Time window - in which the job must complete. Jobs that do not finish in time transition to - ``expired``. "24h" + same value return the existing job instead of creating a duplicate. Required. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. **Required when ``provider`` is ``openai`` and must match the ``url`` on + every JSONL line. Must be omitted when ``provider`` is ``anthropic``.**. Known + values are: "/v1/responses" and "/v1/chat/completions". "metadata": { "str": "str" # Optional. Optional string-valued metadata to attach to the job. @@ -292148,8 +293155,6 @@ def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -292158,6 +293163,8 @@ def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -292354,6 +293361,195 @@ def create_batch(self, body: Union[JSON, IO[bytes]], **kwargs: Any) -> JSON: return cast(JSON, deserialized) # type: ignore + @distributed_trace + def list_batches( + self, + *, + after: Optional[str] = None, + limit: int = 20, + status: Optional[str] = None, + **kwargs: Any, + ) -> JSON: + # pylint: disable=line-too-long + """List Batch Inference Jobs. + + Returns a cursor-paginated list of batch jobs, ordered newest first. Use ``limit`` to control + page size and ``after`` to page forward using the ``last_id`` from the previous response. + + :keyword after: Cursor for pagination. Pass the ``last_id`` value from the previous response to + fetch the next page. Omit for the first page. Default value is None. + :paramtype after: str + :keyword limit: Maximum number of batches to return per page. Default value is 20. + :paramtype limit: int + :keyword status: Optional filter restricting results to batches in the given lifecycle state. + Known values are: "validating", "in_progress", "finalizing", "completed", "failed", "expired", + "cancelling", and "cancelled". Default value is None. + :paramtype status: str + :return: JSON object + :rtype: JSON + :raises ~azure.core.exceptions.HttpResponseError: + + Example: + .. code-block:: python + + # response body for status code(s): 200 + response == { + "data": [ + { + "batch_id": "str", # Unique identifier for the batch job. + Required. + "completion_window": "str", # Required. "24h" + "created_at": "2020-02-20 00:00:00", # Required. + "input_file_id": "str", # The uploaded JSONL input file. + Required. + "provider": "str", # Required. Known values are: "openai" + and "anthropic". + "status": "str", # Lifecycle status. Terminal states: + ``completed``"" , ``failed``"" , ``expired``"" , ``cancelled``. Required. + Known values are: "validating", "in_progress", "finalizing", "completed", + "failed", "expired", "cancelling", and "cancelled". + "cancelled_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "completed_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "endpoint": "str", # Optional. Inference endpoint each + request is dispatched to. + "error_file_id": "str", # Optional. Error sidecar file. Null + when no errors were produced. + "errors": [ + { + "code": "str", # Optional. Top-level errors + that prevented the batch from completing. + "line": 0, # Optional. 1-based JSONL line + number, if applicable. + "message": "str" # Optional. Top-level + errors that prevented the batch from completing. + } + ], + "expires_at": "2020-02-20 00:00:00", # Optional. Derived + from ``created_at`` plus ``completion_window``. + "failed_at": "2020-02-20 00:00:00", # Optional. Batch jobs + on this page, ordered newest first. Required. + "finalizing_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "in_progress_at": "2020-02-20 00:00:00", # Optional. Batch + jobs on this page, ordered newest first. Required. + "metadata": { + "str": "str" # Optional. Metadata attached at + creation. + }, + "output_file_id": "str", # Optional. Output JSONL file. + Populated once the job completes. + "request_counts": { + "completed": 0, # Optional. Aggregate request + counts. + "failed": 0, # Optional. Aggregate request counts. + "total": 0 # Optional. Aggregate request counts. + }, + "request_id": "str" # Optional. The idempotency key supplied + at creation. + } + ], + "has_more": bool, # Whether additional batches exist beyond this page. + Required. + "object": "str", # The object type, always ``list``. Required. "list" + "first_id": "str", # Optional. ID of the first batch on this page. Null when + the page is empty. + "last_id": "str" # Optional. ID of the last batch on this page. Pass as + ``after`` to fetch the next page. + } + # response body for status code(s): 403 + response == { + "id": "str", # A short identifier corresponding to the HTTP status code + returned. For example, the ID for a response returning a 404 status code would + be "not_found.". Required. + "message": "str", # A message providing additional information about the + error, including details to help resolve it when possible. Required. + "request_id": "str" # Optional. Optionally, some endpoints may include a + request ID that should be provided when reporting bugs or opening support + tickets to help identify the issue. + } + """ + error_map: MutableMapping[int, Type[HttpResponseError]] = { + 404: ResourceNotFoundError, + 409: ResourceExistsError, + 304: ResourceNotModifiedError, + 401: cast( + Type[HttpResponseError], + lambda response: ClientAuthenticationError(response=response), + ), + 429: HttpResponseError, + 500: HttpResponseError, + } + error_map.update(kwargs.pop("error_map", {}) or {}) + + _headers = kwargs.pop("headers", {}) or {} + _params = kwargs.pop("params", {}) or {} + + cls: ClsType[JSON] = kwargs.pop("cls", None) + + _request = build_inference_list_batches_request( + after=after, + limit=limit, + status=status, + headers=_headers, + params=_params, + ) + _request.url = self._client.format_url(_request.url) + + _stream = False + pipeline_response: PipelineResponse = ( + self._client._pipeline.run( # pylint: disable=protected-access + _request, stream=_stream, **kwargs + ) + ) + + response = pipeline_response.http_response + + if response.status_code not in [200, 403]: + if _stream: + response.read() # Load the body in memory and close the socket + map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore + raise HttpResponseError(response=response) + + response_headers = {} + if response.status_code == 200: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if response.status_code == 403: + response_headers["ratelimit-limit"] = self._deserialize( + "int", response.headers.get("ratelimit-limit") + ) + response_headers["ratelimit-remaining"] = self._deserialize( + "int", response.headers.get("ratelimit-remaining") + ) + response_headers["ratelimit-reset"] = self._deserialize( + "int", response.headers.get("ratelimit-reset") + ) + + if response.content: + deserialized = response.json() + else: + deserialized = None + + if cls: + return cls(pipeline_response, cast(JSON, deserialized), response_headers) # type: ignore + + return cast(JSON, deserialized) # type: ignore + @distributed_trace def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long @@ -292376,8 +293572,6 @@ def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: "batch_id": "str", # Unique identifier for the batch job. Required. "completion_window": "str", # Required. "24h" "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. "input_file_id": "str", # The uploaded JSONL input file. Required. "provider": "str", # Required. Known values are: "openai" and "anthropic". "status": "str", # Lifecycle status. Terminal states: ``completed``"" , @@ -292386,6 +293580,8 @@ def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: "cancelling", and "cancelled". "cancelled_at": "2020-02-20 00:00:00", # Optional. "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. "error_file_id": "str", # Optional. Error sidecar file. Null when no errors were produced. "errors": [ @@ -292522,17 +293718,17 @@ def get_batch(self, batch_id: str, **kwargs: Any) -> JSON: return cast(JSON, deserialized) # type: ignore @distributed_trace - def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: + def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long - """Cancel a Batch Inference Job. + """Get Batch Inference Results Download Links. - Requests cancellation of a batch job. The job transitions to ``cancelling`` and, once in-flight - requests drain, to ``cancelled``. Jobs already in a terminal state (\\ ``completed``\\ , - ``failed``\\ , ``expired``\\ , ``cancelled``\\ ) cannot be cancelled and return ``409 - Conflict``. + Returns short-lived presigned download URLs for the output (and optional error sidecar) of a + completed batch job. If results are not yet ready, the response sets ``result_available: + false`` or returns ``412 Precondition Failed``\\ ; in both cases, keep polling batch status and + retry. - Partial results produced before cancellation remain available via ``GET - /v1/batches/{batch_id}/results``. + Download the artifacts soon after fetching — the URLs are short-lived. Result files themselves + are retained for up to 30 days after the job completes, after which they are deleted. :param batch_id: The batch job identifier. Required. :type batch_id: str @@ -292545,49 +293741,17 @@ def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { - "batch_id": "str", # Unique identifier for the batch job. Required. - "completion_window": "str", # Required. "24h" - "created_at": "2020-02-20 00:00:00", # Required. - "endpoint": "str", # Inference endpoint each request is dispatched to. - Required. - "input_file_id": "str", # The uploaded JSONL input file. Required. - "provider": "str", # Required. Known values are: "openai" and "anthropic". - "status": "str", # Lifecycle status. Terminal states: ``completed``"" , - ``failed``"" , ``expired``"" , ``cancelled``. Required. Known values are: - "validating", "in_progress", "finalizing", "completed", "failed", "expired", - "cancelling", and "cancelled". - "cancelled_at": "2020-02-20 00:00:00", # Optional. - "completed_at": "2020-02-20 00:00:00", # Optional. - "error_file_id": "str", # Optional. Error sidecar file. Null when no errors - were produced. - "errors": [ - { - "code": "str", # Optional. Top-level errors that prevented - the batch from completing. - "line": 0, # Optional. 1-based JSONL line number, if - applicable. - "message": "str" # Optional. Top-level errors that prevented - the batch from completing. - } - ], - "expires_at": "2020-02-20 00:00:00", # Optional. Derived from ``created_at`` - plus ``completion_window``. - "failed_at": "2020-02-20 00:00:00", # Optional. - "finalizing_at": "2020-02-20 00:00:00", # Optional. - "in_progress_at": "2020-02-20 00:00:00", # Optional. - "metadata": { - "str": "str" # Optional. Metadata attached at creation. - }, - "output_file_id": "str", # Optional. Output JSONL file. Populated once the - job completes. - "request_counts": { - "completed": 0, # Optional. Aggregate request counts. - "failed": 0, # Optional. Aggregate request counts. - "total": 0 # Optional. Aggregate request counts. - }, - "request_id": "str" # Optional. The idempotency key supplied at creation. + "batch_id": "str", # Required. + "result_available": bool, # When ``false``"" , keep polling batch status and + retry later. Required. + "error_file_url": "str", # Optional. Presigned URL for the error sidecar + JSONL, if any. + "expires_at": "2020-02-20 00:00:00", # Optional. When the presigned URLs + expire. + "output_file_url": "str" # Optional. Presigned URL for the main results + JSONL. } - # response body for status code(s): 403, 404, 409 + # response body for status code(s): 403, 404, 412 response == { "id": "str", # A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would @@ -292617,7 +293781,7 @@ def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: cls: ClsType[JSON] = kwargs.pop("cls", None) - _request = build_inference_cancel_batch_request( + _request = build_inference_get_batch_results_request( batch_id=batch_id, headers=_headers, params=_params, @@ -292633,7 +293797,7 @@ def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: response = pipeline_response.http_response - if response.status_code not in [200, 403, 404, 409]: + if response.status_code not in [200, 403, 404, 412]: if _stream: response.read() # Load the body in memory and close the socket map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore @@ -292688,7 +293852,7 @@ def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: else: deserialized = None - if response.status_code == 409: + if response.status_code == 412: response_headers["ratelimit-limit"] = self._deserialize( "int", response.headers.get("ratelimit-limit") ) @@ -292710,14 +293874,19 @@ def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: return cast(JSON, deserialized) # type: ignore @distributed_trace - def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: + def cancel_batch(self, batch_id: str, **kwargs: Any) -> JSON: # pylint: disable=line-too-long - """Get Batch Inference Results Download Links. + """Cancel a Batch Inference Job. - Returns short-lived presigned download URLs for the output (and optional error sidecar) of a - completed batch job. If results are not yet ready, the response sets ``result_available: - false`` or returns ``412 Precondition Failed``\\ ; in both cases, keep polling batch status and - retry. + Requests cancellation of a batch job. The job transitions to ``cancelling`` and, once in-flight + requests drain, to ``cancelled``. Jobs already in a terminal state (\\ ``completed``\\ , + ``failed``\\ , ``expired``\\ , ``cancelled``\\ ) cannot be cancelled and return ``409 + Conflict``. Cancellation is also rejected with ``409 Conflict`` while the job has not yet been + submitted to the upstream provider — there is nothing to cancel until the provider batch id is + assigned. + + Partial results produced before cancellation remain available via ``GET + /v1/batches/{batch_id}/results``. :param batch_id: The batch job identifier. Required. :type batch_id: str @@ -292730,17 +293899,49 @@ def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: # response body for status code(s): 200 response == { - "batch_id": "str", # Required. - "result_available": bool, # When ``false``"" , keep polling batch status and - retry later. Required. - "error_file_url": "str", # Optional. Presigned URL for the error sidecar - JSONL, if any. - "expires_at": "2020-02-20 00:00:00", # Optional. When the presigned URLs - expire. - "output_file_url": "str" # Optional. Presigned URL for the main results - JSONL. + "batch_id": "str", # Unique identifier for the batch job. Required. + "completion_window": "str", # Required. "24h" + "created_at": "2020-02-20 00:00:00", # Required. + "input_file_id": "str", # The uploaded JSONL input file. Required. + "provider": "str", # Required. Known values are: "openai" and "anthropic". + "status": "str", # Lifecycle status. Terminal states: ``completed``"" , + ``failed``"" , ``expired``"" , ``cancelled``. Required. Known values are: + "validating", "in_progress", "finalizing", "completed", "failed", "expired", + "cancelling", and "cancelled". + "cancelled_at": "2020-02-20 00:00:00", # Optional. + "completed_at": "2020-02-20 00:00:00", # Optional. + "endpoint": "str", # Optional. Inference endpoint each request is dispatched + to. + "error_file_id": "str", # Optional. Error sidecar file. Null when no errors + were produced. + "errors": [ + { + "code": "str", # Optional. Top-level errors that prevented + the batch from completing. + "line": 0, # Optional. 1-based JSONL line number, if + applicable. + "message": "str" # Optional. Top-level errors that prevented + the batch from completing. + } + ], + "expires_at": "2020-02-20 00:00:00", # Optional. Derived from ``created_at`` + plus ``completion_window``. + "failed_at": "2020-02-20 00:00:00", # Optional. + "finalizing_at": "2020-02-20 00:00:00", # Optional. + "in_progress_at": "2020-02-20 00:00:00", # Optional. + "metadata": { + "str": "str" # Optional. Metadata attached at creation. + }, + "output_file_id": "str", # Optional. Output JSONL file. Populated once the + job completes. + "request_counts": { + "completed": 0, # Optional. Aggregate request counts. + "failed": 0, # Optional. Aggregate request counts. + "total": 0 # Optional. Aggregate request counts. + }, + "request_id": "str" # Optional. The idempotency key supplied at creation. } - # response body for status code(s): 403, 404, 412 + # response body for status code(s): 403, 404, 409 response == { "id": "str", # A short identifier corresponding to the HTTP status code returned. For example, the ID for a response returning a 404 status code would @@ -292770,7 +293971,7 @@ def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: cls: ClsType[JSON] = kwargs.pop("cls", None) - _request = build_inference_get_batch_results_request( + _request = build_inference_cancel_batch_request( batch_id=batch_id, headers=_headers, params=_params, @@ -292786,7 +293987,7 @@ def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: response = pipeline_response.http_response - if response.status_code not in [200, 403, 404, 412]: + if response.status_code not in [200, 403, 404, 409]: if _stream: response.read() # Load the body in memory and close the socket map_error(status_code=response.status_code, response=response, error_map=error_map) # type: ignore @@ -292841,7 +294042,7 @@ def get_batch_results(self, batch_id: str, **kwargs: Any) -> JSON: else: deserialized = None - if response.status_code == 412: + if response.status_code == 409: response_headers["ratelimit-limit"] = self._deserialize( "int", response.headers.get("ratelimit-limit") ) diff --git a/src/pydo/resources/aio/inference/batches/__init__.py b/src/pydo/resources/aio/inference/batches/__init__.py index c3757709..9e7cb752 100644 --- a/src/pydo/resources/aio/inference/batches/__init__.py +++ b/src/pydo/resources/aio/inference/batches/__init__.py @@ -27,10 +27,6 @@ def __init__(self, client: Client) -> None: self.files = Files(client) self.results = Results(client) - async def list(self, **kwargs: Any) -> Any: - """Delegates to ``client.inference.list_batches``.""" - return _wrap(await self._client.inference.list_batches(**kwargs)) - async def create(self, **kwargs: Any) -> Any: """Delegates to ``client.inference.create_batch``.""" body = {k: v for k, v in kwargs.items() if k not in _SDK_KWARGS} @@ -41,6 +37,10 @@ async def create(self, **kwargs: Any) -> Any: primary_id_field="batch_id", ) + async def list(self, **kwargs: Any) -> Any: + """Delegates to ``client.inference.list_batches``.""" + return _wrap(await self._client.inference.list_batches(**kwargs)) + async def get(self, batch_id: str, **kwargs: Any) -> Any: """Delegates to ``client.inference.get_batch``.""" return _wrap_with_id_alias( diff --git a/src/pydo/resources/inference/batches/__init__.py b/src/pydo/resources/inference/batches/__init__.py index fa5369e9..fcc240d0 100644 --- a/src/pydo/resources/inference/batches/__init__.py +++ b/src/pydo/resources/inference/batches/__init__.py @@ -27,10 +27,6 @@ def __init__(self, client: Client) -> None: self.files = Files(client) self.results = Results(client) - def list(self, **kwargs: Any) -> Any: - """Delegates to ``client.inference.list_batches``.""" - return _wrap(self._client.inference.list_batches(**kwargs)) - def create(self, **kwargs: Any) -> Any: """Delegates to ``client.inference.create_batch``.""" body = {k: v for k, v in kwargs.items() if k not in _SDK_KWARGS} @@ -41,6 +37,10 @@ def create(self, **kwargs: Any) -> Any: primary_id_field="batch_id", ) + def list(self, **kwargs: Any) -> Any: + """Delegates to ``client.inference.list_batches``.""" + return _wrap(self._client.inference.list_batches(**kwargs)) + def get(self, batch_id: str, **kwargs: Any) -> Any: """Delegates to ``client.inference.get_batch``.""" return _wrap_with_id_alias( diff --git a/src/pydo/resources/inference_surface.json b/src/pydo/resources/inference_surface.json index 3c765863..e21b5cb5 100644 --- a/src/pydo/resources/inference_surface.json +++ b/src/pydo/resources/inference_surface.json @@ -85,23 +85,23 @@ ] }, { - "op_method": "list_batches", + "op_method": "create_batch", "path_segments": [ "batches" ], "path_params": [], "facade_methods": [ - "list" + "create" ] }, { - "op_method": "create_batch", + "op_method": "list_batches", "path_segments": [ "batches" ], "path_params": [], "facade_methods": [ - "create" + "list" ] }, { @@ -118,29 +118,29 @@ ] }, { - "op_method": "cancel_batch", + "op_method": "get_batch_results", "path_segments": [ - "batches" + "batches", + "results" ], "path_params": [ "batch_id" ], "facade_methods": [ - "cancel" + "get", + "retrieve" ] }, { - "op_method": "get_batch_results", + "op_method": "cancel_batch", "path_segments": [ - "batches", - "results" + "batches" ], "path_params": [ "batch_id" ], "facade_methods": [ - "get", - "retrieve" + "cancel" ] } ], diff --git a/src/pydo/types/__init__.py b/src/pydo/types/__init__.py index 6d7ccfb3..bc0f5058 100644 --- a/src/pydo/types/__init__.py +++ b/src/pydo/types/__init__.py @@ -15,8 +15,8 @@ """ from pydo.types.async_invoke import AsyncInvokeResponse +from pydo.types.batches import Batch from pydo.types.batches import BatchFileCreateResponse -from pydo.types.batches import BatchListResponse from pydo.types.batches import BatchResultsResponse from pydo.types.batches import Error from pydo.types.chat import ChatCompletionChunk @@ -24,7 +24,6 @@ from pydo.types.chat import ChatCompletionStreamResponseDelta from pydo.types.chat import ChatCompletionTokenLogprob from pydo.types.chat import CompletionUsage -from pydo.types.create import Batch from pydo.types.embeddings import EmbeddingDataItem from pydo.types.embeddings import EmbeddingsResponse from pydo.types.embeddings import EmbeddingsUsage @@ -32,6 +31,7 @@ from pydo.types.images import ImageGenPartialImageEvent from pydo.types.images import ImagesResponse from pydo.types.images import ImagesUsage +from pydo.types.list import BatchListResponse from pydo.types.messages import MessagesCreateErrorResponse from pydo.types.messages import MessagesCreateResponse from pydo.types.messages import MessagesResponseContentBlock @@ -45,8 +45,8 @@ __all__ = [ "AsyncInvokeResponse", + "Batch", "BatchFileCreateResponse", - "BatchListResponse", "BatchResultsResponse", "Error", "ChatCompletionChunk", @@ -54,7 +54,6 @@ "ChatCompletionStreamResponseDelta", "ChatCompletionTokenLogprob", "CompletionUsage", - "Batch", "EmbeddingDataItem", "EmbeddingsResponse", "EmbeddingsUsage", @@ -62,6 +61,7 @@ "ImageGenPartialImageEvent", "ImagesResponse", "ImagesUsage", + "BatchListResponse", "MessagesCreateErrorResponse", "MessagesCreateResponse", "MessagesResponseContentBlock", diff --git a/src/pydo/types/batches/__init__.py b/src/pydo/types/batches/__init__.py index a9297b48..edeae8a3 100644 --- a/src/pydo/types/batches/__init__.py +++ b/src/pydo/types/batches/__init__.py @@ -10,6 +10,34 @@ from pydo.custom_extensions import DotDict +class Batch(DotDict): + """Typed response for ``batch`` schema.""" + + batch_id: str # Unique identifier for the batch job + status: str + provider: str + endpoint: str # Inference endpoint each request is dispatched to + completion_window: str + input_file_id: str # The uploaded JSONL input file + output_file_id: Optional[str] # Output JSONL file. Populated once the job completes + error_file_id: Optional[ + str + ] # Error sidecar file. Null when no errors were produced + request_counts: Any # Aggregate request counts + request_id: str # The idempotency key supplied at creation + metadata: Optional[Any] # Metadata attached at creation + errors: Optional[ + List[Any] + ] # Top-level errors that prevented the batch from completing + created_at: str + in_progress_at: Optional[str] + finalizing_at: Optional[str] + completed_at: Optional[str] + expires_at: Optional[str] # Derived from `created_at` plus `completion_window` + cancelled_at: Optional[str] + failed_at: Optional[str] + + class BatchFileCreateResponse(DotDict): """Typed response for ``batch_file_create_response`` schema.""" @@ -18,18 +46,6 @@ class BatchFileCreateResponse(DotDict): expires_at: Optional[str] # When `upload_url` expires -class BatchListResponse(DotDict): - """Typed response for ``batch_list_response`` schema.""" - - object: str # The object type, always `list` - data: List[Any] # Batch jobs on this page, ordered newest first - first_id: Optional[ - str - ] # ID of the first batch on this page. Null when the page is empty - last_id: Optional[str] - has_more: bool # Whether additional batches exist beyond this page - - class BatchResultsResponse(DotDict): """Typed response for ``batch_results_response`` schema.""" @@ -48,9 +64,4 @@ class Error(DotDict): request_id: str -__all__ = [ - "BatchFileCreateResponse", - "BatchListResponse", - "BatchResultsResponse", - "Error", -] +__all__ = ["Batch", "BatchFileCreateResponse", "BatchResultsResponse", "Error"] diff --git a/src/pydo/types/create/__init__.py b/src/pydo/types/create/__init__.py deleted file mode 100644 index 3ce7fe16..00000000 --- a/src/pydo/types/create/__init__.py +++ /dev/null @@ -1,41 +0,0 @@ -# ------------------------------------ -# Copyright (c) DigitalOcean. -# Licensed under the Apache-2.0 License. -# ------------------------------------ -# Generated by scripts/generate_inference_types.py — do not edit. -from __future__ import annotations - -from typing import Any, List, Optional - -from pydo.custom_extensions import DotDict - - -class Batch(DotDict): - """Typed response for ``batch`` schema.""" - - batch_id: str # Unique identifier for the batch job - status: str - provider: str - endpoint: str # Inference endpoint each request is dispatched to - completion_window: str - input_file_id: str # The uploaded JSONL input file - output_file_id: Optional[str] # Output JSONL file. Populated once the job completes - error_file_id: Optional[ - str - ] # Error sidecar file. Null when no errors were produced - request_counts: Any # Aggregate request counts - request_id: str # The idempotency key supplied at creation - metadata: Optional[Any] # Metadata attached at creation - errors: Optional[ - List[Any] - ] # Top-level errors that prevented the batch from completing - created_at: str - in_progress_at: Optional[str] - finalizing_at: Optional[str] - completed_at: Optional[str] - expires_at: Optional[str] # Derived from `created_at` plus `completion_window` - cancelled_at: Optional[str] - failed_at: Optional[str] - - -__all__ = ["Batch"] diff --git a/src/pydo/types/list/__init__.py b/src/pydo/types/list/__init__.py new file mode 100644 index 00000000..d6e11b0c --- /dev/null +++ b/src/pydo/types/list/__init__.py @@ -0,0 +1,25 @@ +# ------------------------------------ +# Copyright (c) DigitalOcean. +# Licensed under the Apache-2.0 License. +# ------------------------------------ +# Generated by scripts/generate_inference_types.py — do not edit. +from __future__ import annotations + +from typing import Any, List, Optional + +from pydo.custom_extensions import DotDict + + +class BatchListResponse(DotDict): + """Typed response for ``batch_list_response`` schema.""" + + object: str # The object type, always `list` + data: List[Any] # Batch jobs on this page, ordered newest first + first_id: Optional[ + str + ] # ID of the first batch on this page. Null when the page is empty + last_id: Optional[str] + has_more: bool # Whether additional batches exist beyond this page + + +__all__ = ["BatchListResponse"]