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

# Encode a symbol or add a concept to VSA

> **Required scope:** write

**Required scope:** `write`

### Request body

`VSAEncodeRequest`

<ParamField body="concept_name" type="string">
  Or concept name to add
</ParamField>

<ParamField body="symbol_id" type="integer (int64)">
  Symbol ID to encode
</ParamField>

### Response

`VSAResponse`

<ResponseField name="dimension" type="integer" required>
  Vector dimension
</ResponseField>

<ResponseField name="enabled" type="boolean" required>
  Whether VSA is enabled
</ResponseField>

<ResponseField name="results" type="object[][]">
  Query results (if applicable)
</ResponseField>

<ResponseField name="vector" type="number (float)[]">
  Result vector (if applicable)
</ResponseField>

### Status codes

| Code  | Meaning                                            |
| ----- | -------------------------------------------------- |
| `200` | Encoded successfully                               |
| `400` | Invalid request                                    |
| `401` | Unauthorized — missing or invalid credentials      |
| `403` | Forbidden — the key/token lacks the required scope |
| `429` | Rate limited — see Retry-After / X-RateLimit-Reset |
| `503` | VSA not enabled                                    |

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url 'https://api.nsr.stateset.com/api/v1/nsr/vsa/encode' \
    --header 'X-API-Key: YOUR_API_KEY' \
    --header 'Content-Type: application/json' \
    --data '{
    "concept_name": "WALK",
    "symbol_id": null
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "dimension": 1,
    "enabled": true,
    "results": [
      [
        {
          "0": "s",
          "1": "t",
          "2": "r",
          "3": "i",
          "4": "n",
          "5": "g"
        }
      ]
    ],
    "vector": [
      1.5
    ]
  }
  ```
</ResponseExample>
