@@ -349,48 +349,46 @@ Create a new authorization model.
349
349
# Initialize the fga_client
350
350
# fga_client = OpenFgaClient(configuration)
351
351
352
- body = WriteAuthorizationModelRequest(
353
- schema_version = " 1.1" ,
354
- type_definitions = [
355
- TypeDefinition(
356
- type = " user"
352
+ user_type = TypeDefinition(type = " user" )
353
+
354
+ document_relations = dict (
355
+ writer = Userset(this = dict ()),
356
+ viewer = Userset(
357
+ union = Usersets(
358
+ child = [
359
+ Userset(this = dict ()),
360
+ Userset(computed_userset = ObjectRelation(
361
+ object = " " ,
362
+ relation = " writer" ,
363
+ )),
364
+ ],
357
365
),
358
- TypeDefinition(
359
- type = " document" ,
360
- relations = dict (
361
- writer = Userset(
362
- this = dict (),
363
- ),
364
- viewer = Userset(
365
- union = Usersets(
366
- child = [
367
- Userset(this = dict ()),
368
- Userset(computed_userset = ObjectRelation(
369
- object = " " ,
370
- relation = " writer" ,
371
- )),
372
- ],
373
- ),
374
- ),
366
+ ),
367
+ )
368
+
369
+ document_metadata = Metadata(
370
+ relations = dict (
371
+ writer = RelationMetadata(
372
+ directly_related_user_types = [
373
+ RelationReference(type = " user" ),
374
+ RelationReference(type = " user" , condition = " ViewCountLessThan200" ),
375
+ ]
375
376
),
376
- metadata = Metadata(
377
- relations = dict (
378
- writer = RelationMetadata(
379
- directly_related_user_types = [
380
- RelationReference(type = " user" ),
381
- RelationReference(type = " user" , condition = " ViewCountLessThan200" ),
382
- ]
383
- ),
384
- viewer = RelationMetadata(
385
- directly_related_user_types = [
386
- RelationReference(type = " user" ),
387
- ]
388
- )
389
- )
377
+ viewer = RelationMetadata(
378
+ directly_related_user_types = [
379
+ RelationReference(type = " user" ),
380
+ ]
390
381
)
391
382
)
392
- ],
393
- conditions = dict (
383
+ )
384
+
385
+ document_type = TypeDefinition(
386
+ type = " document" ,
387
+ relations = document_relations,
388
+ metadata = document_metadata
389
+ )
390
+
391
+ conditions = dict (
394
392
ViewCountLessThan200 = Condition(
395
393
name = " ViewCountLessThan200" ,
396
394
expression = " ViewCount < 200" ,
@@ -407,6 +405,14 @@ body = WriteAuthorizationModelRequest(
407
405
)
408
406
)
409
407
)
408
+
409
+ body = WriteAuthorizationModelRequest(
410
+ schema_version = " 1.1" ,
411
+ type_definitions = [
412
+ user_type,
413
+ document_type
414
+ ],
415
+ conditions = conditions
410
416
)
411
417
412
418
response = await fga_client.write_authorization_model(body)
0 commit comments