diff --git a/netbox_access_lists/graphql.py b/netbox_access_lists/graphql.py new file mode 100644 index 0000000..77d3d4f --- /dev/null +++ b/netbox_access_lists/graphql.py @@ -0,0 +1,39 @@ +from graphene import ObjectType +from netbox.graphql.types import NetBoxObjectType +from netbox.graphql.fields import ObjectField, ObjectListField +from . import filtersets, models + + +# +# Types +# + +class AccessListType(NetBoxObjectType): + + class Meta: + model = models.AccessList + fields = '__all__' + + +class AccessListRuleType(NetBoxObjectType): + + class Meta: + model = models.AccessListRule + fields = '__all__' + filterset_class = filtersets.AccessListRuleFilterSet + + +# +# Queries +# + +class Query(ObjectType): + access_list = ObjectField(AccessListType) + access_list_list = ObjectListField(AccessListType) + + access_list_rule = ObjectField(AccessListRuleType) + access_list_rule_list = ObjectListField(AccessListRuleType) + + +schema = Query +