@@ -19,13 +19,13 @@ class Create(AAZCommand):
1919 """Create a collaboration.
2020
2121 :example: Create Collaboration
22- az managedcleanroom collaboration create --resource-group testrg --collaboration-name ContosoCollaboration --location northeurope --consortium-type ConfidentialACI --user-identity "{tenant-id:fd3c3665-1729-4b7b-9a38-238e83b0f98b,object-id:fd3c3665-1729-4b7b-9a38-238e83b0f98b,account-type:microsoft}"
22+ az managedcleanroom collaboration create --resource-group testrg --collaboration-name ContosoCollaboration --location northeurope
2323 """
2424
2525 _aaz_info = {
26- "version" : "2025-10 -31-preview" ,
26+ "version" : "2026-03 -31-preview" ,
2727 "resources" : [
28- ["mgmt-plane" , "/subscriptions/{}/resourcegroups/{}/providers/microsoft.cleanroom/collaborations/{}" , "2025-10 -31-preview" ],
28+ ["mgmt-plane" , "/subscriptions/{}/resourcegroups/{}/providers/microsoft.cleanroom/collaborations/{}" , "2026-03 -31-preview" ],
2929 ]
3030 }
3131
@@ -61,36 +61,27 @@ def _build_arguments_schema(cls, *args, **kwargs):
6161 # define Arg Group "Properties"
6262
6363 _args_schema = cls ._args_schema
64- _args_schema .consortium_type = AAZStrArg (
65- options = ["--consortium-type " ],
64+ _args_schema .collaborators = AAZListArg (
65+ options = ["--collaborators " ],
6666 arg_group = "Properties" ,
67- help = "Gets or sets the consortium type." ,
68- required = True ,
69- enum = {"ConfidentialACI" : "ConfidentialACI" },
70- )
71- _args_schema .user_identity = AAZObjectArg (
72- options = ["--user-identity" ],
73- arg_group = "Properties" ,
74- help = "Gets or sets the user identity." ,
75- required = True ,
67+ help = "Gets or sets the collaborators." ,
7668 )
7769
78- user_identity = cls ._args_schema .user_identity
79- user_identity .account_type = AAZStrArg (
80- options = ["account-type" ],
81- help = "Account type of the user identity." ,
82- required = True ,
83- enum = {"microsoft" : "microsoft" },
84- )
85- user_identity .object_id = AAZStrArg (
70+ collaborators = cls ._args_schema .collaborators
71+ collaborators .Element = AAZObjectArg ()
72+
73+ _element = cls ._args_schema .collaborators .Element
74+ _element .object_id = AAZStrArg (
8675 options = ["object-id" ],
87- help = "Object ID of the user identity." ,
88- required = True ,
76+ help = "Object ID of the collaborator." ,
8977 )
90- user_identity .tenant_id = AAZStrArg (
78+ _element .tenant_id = AAZStrArg (
9179 options = ["tenant-id" ],
92- help = "Tenant ID of the user identity." ,
93- required = True ,
80+ help = "Tenant ID of the collaborator." ,
81+ )
82+ _element .user_identifier = AAZStrArg (
83+ options = ["user-identifier" ],
84+ help = "User identifier of the collaborator. This can be specified as an email (no OID/TID should be specified) or an SPN (OID/TID required)." ,
9485 )
9586
9687 # define Arg Group "Resource"
@@ -203,7 +194,7 @@ def url_parameters(self):
203194 def query_parameters (self ):
204195 parameters = {
205196 ** self .serialize_query_param (
206- "api-version" , "2025-10 -31-preview" ,
197+ "api-version" , "2026-03 -31-preview" ,
207198 required = True ,
208199 ),
209200 }
@@ -235,14 +226,17 @@ def content(self):
235226
236227 properties = _builder .get (".properties" )
237228 if properties is not None :
238- properties .set_prop ("consortiumType" , AAZStrType , ".consortium_type" , typ_kwargs = {"flags" : {"required" : True }})
239- properties .set_prop ("userIdentity" , AAZObjectType , ".user_identity" , typ_kwargs = {"flags" : {"required" : True }})
229+ properties .set_prop ("collaborators" , AAZListType , ".collaborators" )
230+
231+ collaborators = _builder .get (".properties.collaborators" )
232+ if collaborators is not None :
233+ collaborators .set_elements (AAZObjectType , "." )
240234
241- user_identity = _builder .get (".properties.userIdentity " )
242- if user_identity is not None :
243- user_identity .set_prop ("accountType " , AAZStrType , ".account_type" , typ_kwargs = { "flags" : { "required" : True }} )
244- user_identity .set_prop ("objectId " , AAZStrType , ".object_id" , typ_kwargs = { "flags" : { "required" : True }} )
245- user_identity .set_prop ("tenantId " , AAZStrType , ".tenant_id" , typ_kwargs = { "flags" : { "required" : True }} )
235+ _elements = _builder .get (".properties.collaborators[] " )
236+ if _elements is not None :
237+ _elements .set_prop ("objectId " , AAZStrType , ".object_id" )
238+ _elements .set_prop ("tenantId " , AAZStrType , ".tenant_id" )
239+ _elements .set_prop ("userIdentifier " , AAZStrType , ".user_identifier" )
246240
247241 tags = _builder .get (".tags" )
248242 if tags is not None :
@@ -295,14 +289,15 @@ def _build_schema_on_200_201(cls):
295289 serialized_name = "clusterEndpoint" ,
296290 flags = {"read_only" : True },
297291 )
292+ properties .collaboration_state = AAZStrType (
293+ serialized_name = "collaborationState" ,
294+ flags = {"read_only" : True },
295+ )
296+ properties .collaborators = AAZListType ()
298297 properties .consortium_arm_id = AAZStrType (
299298 serialized_name = "consortiumArmId" ,
300299 flags = {"read_only" : True },
301300 )
302- properties .consortium_type = AAZStrType (
303- serialized_name = "consortiumType" ,
304- flags = {"required" : True },
305- )
306301 properties .health = AAZObjectType (
307302 flags = {"read_only" : True },
308303 )
@@ -314,14 +309,28 @@ def _build_schema_on_200_201(cls):
314309 serialized_name = "provisioningState" ,
315310 flags = {"read_only" : True },
316311 )
317- properties .user_identity = AAZObjectType (
318- serialized_name = "userIdentity" ,
319- flags = {"required" : True },
320- )
321312 properties .workloads = AAZListType (
322313 flags = {"read_only" : True },
323314 )
324315
316+ collaborators = cls ._schema_on_200_201 .properties .collaborators
317+ collaborators .Element = AAZObjectType ()
318+
319+ _element = cls ._schema_on_200_201 .properties .collaborators .Element
320+ _element .is_collaboration_owner = AAZBoolType (
321+ serialized_name = "isCollaborationOwner" ,
322+ flags = {"read_only" : True },
323+ )
324+ _element .object_id = AAZStrType (
325+ serialized_name = "objectId" ,
326+ )
327+ _element .tenant_id = AAZStrType (
328+ serialized_name = "tenantId" ,
329+ )
330+ _element .user_identifier = AAZStrType (
331+ serialized_name = "userIdentifier" ,
332+ )
333+
325334 health = cls ._schema_on_200_201 .properties .health
326335 health .health_issues = AAZListType (
327336 serialized_name = "healthIssues" ,
@@ -353,20 +362,6 @@ def _build_schema_on_200_201(cls):
353362 _element = cls ._schema_on_200_201 .properties .managed_on_behalf_of_configuration .mobo_broker_resources .Element
354363 _element .id = AAZStrType ()
355364
356- user_identity = cls ._schema_on_200_201 .properties .user_identity
357- user_identity .account_type = AAZStrType (
358- serialized_name = "accountType" ,
359- flags = {"required" : True },
360- )
361- user_identity .object_id = AAZStrType (
362- serialized_name = "objectId" ,
363- flags = {"required" : True },
364- )
365- user_identity .tenant_id = AAZStrType (
366- serialized_name = "tenantId" ,
367- flags = {"required" : True },
368- )
369-
370365 workloads = cls ._schema_on_200_201 .properties .workloads
371366 workloads .Element = AAZObjectType ()
372367
0 commit comments