extend type Query { """ Get labels gets labels by banner id. If nil will get all labels. If == empty string will return edge labels """ labels( """ banner edge id is the edge id for the banner """ bannerEdgeId: String @hasBannerAccess(field: "bannerEdgeId") ): [Label]! @hasRole( roles: [ EDGE_ORG_ADMIN EDGE_BANNER_ADMIN EDGE_BANNER_OPERATOR EDGE_BANNER_VIEWER ] ) """ Get label gets labels by label id """ label( """ labels edge id is the edge id for the label """ labelEdgeId: String @hasLabelAccess(field: "labelEdgeId") ): Label @hasRole( roles: [ EDGE_ORG_ADMIN EDGE_BANNER_ADMIN EDGE_BANNER_OPERATOR EDGE_BANNER_VIEWER ] ) """ getClusterLabels gets the mappings of labels to clusters """ clusterLabels( """ clusterLabelParameters is the optional paramaeters for get cluster label mappings """ clusterLabelParameters: SearchClusterLabelInput! ): [ClusterLabel]! @hasRole( roles: [ EDGE_ORG_ADMIN EDGE_BANNER_ADMIN EDGE_BANNER_OPERATOR EDGE_BANNER_VIEWER ] ) """ API to get already created label types """ labelTypes( """ Optional filter for label type for a banner. If empty will return types for edge. """ bannerEdgeId: String @hasBannerAccess(field: "bannerEdgeId") ): [String!] @hasRole( roles: [ EDGE_ORG_ADMIN EDGE_BANNER_ADMIN EDGE_BANNER_OPERATOR EDGE_BANNER_VIEWER ] ) } extend type Mutation { """ Add label creates a new label """ createLabel(newLabel: LabelInput): Boolean! @hasRole(roles: [EDGE_ORG_ADMIN, EDGE_BANNER_ADMIN, EDGE_BANNER_OPERATOR]) """ Update label updates an existing lable with the values passed in """ updateLabel(newLabel: LabelUpdateInput): Boolean! @hasRole(roles: [EDGE_ORG_ADMIN, EDGE_BANNER_ADMIN, EDGE_BANNER_OPERATOR]) """ delete label deletes the specified label """ deleteLabel( """ labelEdgeID is the id of the label to be deleted """ labelEdgeID: String! @hasLabelAccess(field: "labelEdgeID") ): Boolean! @hasRole(roles: [EDGE_ORG_ADMIN, EDGE_BANNER_ADMIN, EDGE_BANNER_OPERATOR]) """ addClusterLabel add a new mapping of label to cluster """ addClusterLabel(clusterLabelParameters: NewClusterLabelInput!): Boolean! @hasRole(roles: [EDGE_ORG_ADMIN, EDGE_BANNER_ADMIN, EDGE_BANNER_OPERATOR]) """ addClusterLabels add a list of labels to cluster """ addClusterLabels( clusterEdgeId: String! labelEdgeIds: [String!]! @hasLabelAccess(field: "labelEdgeIds") ): Boolean! @hasRole(roles: [EDGE_ORG_ADMIN, EDGE_BANNER_ADMIN, EDGE_BANNER_OPERATOR]) """ deleteClusterLabel deletes a cluster label mapping by either cluster id, label id or both """ deleteClusterLabel( clusterLabelParameters: SearchClusterLabelInput! ): Boolean! @hasRole(roles: [EDGE_ORG_ADMIN, EDGE_BANNER_ADMIN, EDGE_BANNER_OPERATOR]) }