Favorite Facets API Reference

Favorite facets are managed through the GraphQL endpoint at /query. All operations use POST with a JSON body containing a query key (for reads) or mutation key (for writes).

Replace <your-instance> with your Kloudfuse hostname and <sa-token> with a valid Service Account token.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{"query": "..."}'
bash

For Service Account token setup, see Authentication.

List Favorite Facets

Returns facets matching an optional search string, with optional group filter and pagination.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{
       "query": "query { getFavoriteFacets(contains: \"\", limit: 100) { name dataType group displayName source folderUid } }"
     }'
bash

Parameters (all optional):

Parameter Type Description

contains

string

Filter by display name substring. Default: "" (all).

group

string

Filter to a specific facet group.

cursor

string

Pagination cursor from a previous response.

limit

int

Maximum results to return.

Response
{
  "data": {
    "getFavoriteFacets": [
      {
        "name": "resource_name",
        "dataType": "STRING",
        "group": "Infrastructure",
        "displayName": "resource_name",
        "source": "",
        "folderUid": "ffec62bbr7v28d"
      }
    ]
  }
}
json

List Favorite Facet Groups

Returns all group names that contain at least one favorite facet.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{"query": "query { getFavoriteFacetGroups(limit: 1000) }"}'
bash
Response
{
  "data": {
    "getFavoriteFacetGroups": [
      "Infrastructure",
      "Application",
      "Recents"
    ]
  }
}
json

Add a Favorite Facet

Creates a new favorite facet, optionally assigning it to a folder.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{
       "query": "mutation($datatype: String!, $displayName: String!, $facet: String!, $facetGroup: String!, $source: String, $folderUid: String) { addFavoriteFacet(source: $source, facet: $facet, facetGroup: $facetGroup, displayName: $displayName, datatype: $datatype, folderUid: $folderUid) }",
       "variables": {
         "datatype": "STRING",
         "displayName": "service_name",
         "facet": "service_name",
         "facetGroup": "Infrastructure",
         "source": "",
         "folderUid": "ffec62bbr7v28d"
       }
     }'
bash

Variables:

Variable Type Required Description

facet

string

Yes

The raw field name in the telemetry data.

displayName

string

Yes

Human-readable label shown in the UI.

datatype

string

Yes

Data type: STRING, NUMBER, or BOOLEAN.

facetGroup

string

Yes

Group the facet appears under in the UI.

source

string

No

Source identifier (leave empty for log facets).

folderUid

string

No

Folder to assign the facet to. Omit for root.

Response
{
  "data": {
    "addFavoriteFacet": true
  }
}
json

Edit a Favorite Facet

Renames a facet, moves it to a different group, or reassigns it to a different folder. Identify the facet by its current displayName and facetGroup.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{
       "query": "mutation($displayName: String!, $facetGroup: String!, $newFacetGroup: String!, $newDisplayName: String!, $folderUid: String) { editFavoriteFacet(display_name: $displayName, facetGroup: $facetGroup, editInfo: {newGroup: $newFacetGroup, newDisplayName: $newDisplayName, newFolderUid: $folderUid}) }",
       "variables": {
         "displayName": "service_name",
         "facetGroup": "Infrastructure",
         "newFacetGroup": "Application",
         "newDisplayName": "app_service_name",
         "folderUid": "bfec62n4wfpq8e"
       }
     }'
bash
Response
{
  "data": {
    "editFavoriteFacet": true
  }
}
json

Remove a Favorite Facet

Deletes a specific facet identified by its display name and group.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{
       "query": "mutation { removeFavoriteFacet(display_name: \"app_service_name\", facetGroup: \"Application\") }"
     }'
bash
Response
{
  "data": {
    "removeFavoriteFacet": true
  }
}
json

Remove a Favorite Facet Group

Deletes an entire facet group and all facets within it.

curl -H "Authorization: Bearer <sa-token>" \
     -H "Content-Type: application/json" \
     -X POST "https://<your-instance>/query" \
     -d '{
       "query": "mutation { removeFacetGroup(facetGroup: \"Application\") }"
     }'
bash
Response
{
  "data": {
    "removeFacetGroup": true
  }
}
json

Error Handling

GraphQL errors are returned with HTTP 200 in an errors array:

{
  "errors": [
    {
      "message": "facet group not found",
      "path": ["removeFacetGroup"]
    }
  ]
}
json

See Also