3434
3535
3636class ParentResourceById (TypedDict ):
37- """Identify a parent resource by its WorkOS resource ID."""
38-
39- resource_id : str
37+ parent_resource_id : str
4038
4139
4240class ParentResourceByExternalId (TypedDict ):
43- """Identify a parent resource by organization, type, and external ID."""
44-
45- organization_id : str
46- resource_type : str
47- external_id : str
41+ parent_resource_external_id : str
42+ parent_resource_type_slug : str
4843
4944
5045ParentResource = Union [ParentResourceById , ParentResourceByExternalId ]
@@ -188,18 +183,20 @@ def get_resource(self, resource_id: str) -> SyncOrAsync[Resource]: ...
188183 def create_resource (
189184 self ,
190185 * ,
191- resource_type : str ,
186+ resource_type_slug : str ,
192187 organization_id : str ,
193- external_id : Optional [str ] = None ,
194- meta : Optional [Dict [str , Any ]] = None ,
195- parent : Optional [ParentResource ] = None ,
188+ external_id : str ,
189+ name : str ,
190+ parent : ParentResource ,
191+ description : Optional [str ] = None ,
196192 ) -> SyncOrAsync [Resource ]: ...
197193
198194 def update_resource (
199195 self ,
200196 resource_id : str ,
201197 * ,
202- meta : Optional [Dict [str , Any ]] = None ,
198+ name : Optional [str ] = None ,
199+ description : Optional [str ] = None ,
203200 ) -> SyncOrAsync [Resource ]: ...
204201
205202 def delete_resource (
@@ -498,22 +495,22 @@ def get_resource(self, resource_id: str) -> Resource:
498495 def create_resource (
499496 self ,
500497 * ,
501- resource_type : str ,
498+ resource_type_slug : str ,
502499 organization_id : str ,
503- external_id : Optional [str ] = None ,
504- meta : Optional [Dict [str , Any ]] = None ,
505- parent : Optional [ParentResource ] = None ,
500+ external_id : str ,
501+ name : str ,
502+ parent : ParentResource ,
503+ description : Optional [str ] = None ,
506504 ) -> Resource :
507505 json : Dict [str , Any ] = {
508- "resource_type " : resource_type ,
506+ "resource_type_slug " : resource_type_slug ,
509507 "organization_id" : organization_id ,
508+ "external_id" : external_id ,
509+ "name" : name ,
510+ ** parent ,
510511 }
511- if external_id is not None :
512- json ["external_id" ] = external_id
513- if meta is not None :
514- json ["meta" ] = meta
515- if parent is not None :
516- json ["parent" ] = parent
512+ if description is not None :
513+ json ["description" ] = description
517514
518515 response = self ._http_client .request (
519516 AUTHORIZATION_RESOURCES_PATH ,
@@ -525,13 +522,16 @@ def create_resource(
525522
526523 def update_resource (
527524 self ,
528- resource_id : str ,
529525 * ,
530- meta : Optional [Dict [str , Any ]] = None ,
526+ resource_id : str ,
527+ name : Optional [str ] = None ,
528+ description : Optional [str ] = None ,
531529 ) -> Resource :
532530 json : Dict [str , Any ] = {}
533- if meta is not None :
534- json ["meta" ] = meta
531+ if name is not None :
532+ json ["name" ] = name
533+ if description is not None :
534+ json ["description" ] = description
535535
536536 response = self ._http_client .request (
537537 f"{ AUTHORIZATION_RESOURCES_PATH } /{ resource_id } " ,
@@ -543,8 +543,8 @@ def update_resource(
543543
544544 def delete_resource (
545545 self ,
546- resource_id : str ,
547546 * ,
547+ resource_id : str ,
548548 cascade_delete : Optional [bool ] = None ,
549549 ) -> None :
550550 if cascade_delete is not None :
@@ -847,22 +847,22 @@ async def get_resource(self, resource_id: str) -> Resource:
847847 async def create_resource (
848848 self ,
849849 * ,
850- resource_type : str ,
850+ resource_type_slug : str ,
851851 organization_id : str ,
852- external_id : Optional [str ] = None ,
853- meta : Optional [Dict [str , Any ]] = None ,
854- parent : Optional [ParentResource ] = None ,
852+ external_id : str ,
853+ name : str ,
854+ parent : ParentResource ,
855+ description : Optional [str ] = None ,
855856 ) -> Resource :
856857 json : Dict [str , Any ] = {
857- "resource_type " : resource_type ,
858+ "resource_type_slug " : resource_type_slug ,
858859 "organization_id" : organization_id ,
860+ "external_id" : external_id ,
861+ "name" : name ,
862+ ** parent ,
859863 }
860- if external_id is not None :
861- json ["external_id" ] = external_id
862- if meta is not None :
863- json ["meta" ] = meta
864- if parent is not None :
865- json ["parent" ] = parent
864+ if description is not None :
865+ json ["description" ] = description
866866
867867 response = await self ._http_client .request (
868868 AUTHORIZATION_RESOURCES_PATH ,
@@ -876,11 +876,14 @@ async def update_resource(
876876 self ,
877877 resource_id : str ,
878878 * ,
879- meta : Optional [Dict [str , Any ]] = None ,
879+ name : Optional [str ] = None ,
880+ description : Optional [str ] = None ,
880881 ) -> Resource :
881882 json : Dict [str , Any ] = {}
882- if meta is not None :
883- json ["meta" ] = meta
883+ if name is not None :
884+ json ["name" ] = name
885+ if description is not None :
886+ json ["description" ] = description
884887
885888 response = await self ._http_client .request (
886889 f"{ AUTHORIZATION_RESOURCES_PATH } /{ resource_id } " ,
0 commit comments