> ## Documentation Index
> Fetch the complete documentation index at: https://kremis.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Query: Properties

> Get the stored properties (attribute/value pairs) of a node.

<ParamField path="method" type="POST">
  `/query`
</ParamField>

**Authentication:** Required (if enabled)

Retrieve all stored attribute/value pairs for a specific node.

## Request

```json theme={null}
{
  "type": "properties",
  "node_id": 0
}
```

| Field     | Type          | Required | Description                 |
| --------- | ------------- | -------- | --------------------------- |
| `type`    | string        | Yes      | Must be `"properties"`.     |
| `node_id` | integer (u64) | Yes      | Node to get properties for. |

## Response

<CodeGroup>
  ```json 200 OK (found) theme={null}
  {
    "success": true,
    "found": true,
    "path": [],
    "edges": [],
    "properties": [
      {"attribute": "name", "value": "Alice"},
      {"attribute": "role", "value": "engineer"}
    ],
    "grounding": "fact",
    "error": null
  }
  ```

  ```json Not Found theme={null}
  {
    "success": true,
    "found": false,
    "path": [],
    "edges": [],
    "grounding": "unknown",
    "error": null,
    "diagnostic": "node_not_found"
  }
  ```
</CodeGroup>

<Note>
  The `properties` field is only included when non-empty. When `found` is `false`, `diagnostic` explains why (e.g. `node_not_found`).
</Note>

## Example

```bash theme={null}
curl -X POST http://localhost:8080/query \
     -H "Content-Type: application/json" \
     -d '{"type": "properties", "node_id": 0}'
```
