> ## 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.

# Get strategy recommendation for a task

> **Required scope:** write

**Required scope:** `write`

### Request body

`TaskCharacteristicsRequest`

<ParamField body="complexity" type="number (double)" required>
  Task complexity (0.0 to 1.0)
</ParamField>

<ParamField body="domain" type="string">
  Domain name (optional)
</ParamField>

<ParamField body="is_compositional" type="boolean">
  Whether the task is compositional
</ParamField>

<ParamField body="requires_logic" type="boolean">
  Whether the task requires logical reasoning
</ParamField>

<ParamField body="requires_patterns" type="boolean">
  Whether the task requires pattern matching
</ParamField>

<ParamField body="sequence_length" type="integer">
  Input sequence length
</ParamField>

<ParamField body="vocabulary_size" type="integer">
  Vocabulary size
</ParamField>

### Response

`StrategyRecommendationResponse`

<ResponseField name="alternatives" type="string[]" required>
  Alternative strategies
</ResponseField>

<ResponseField name="confidence" type="number (double)" required>
  Confidence in the recommendation
</ResponseField>

<ResponseField name="strategy" type="string" required>
  Recommended strategy
</ResponseField>

### Status codes

| Code  | Meaning                                            |
| ----- | -------------------------------------------------- |
| `200` | Strategy recommendation                            |
| `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` | Metacognition not enabled                          |

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url 'https://api.nsr.stateset.com/api/v1/nsr/recommend-strategy' \
    --header 'X-API-Key: YOUR_API_KEY' \
    --header 'Content-Type: application/json' \
    --data '{
    "complexity": 0.7,
    "domain": "SCAN",
    "is_compositional": true,
    "requires_logic": true,
    "requires_patterns": true,
    "sequence_length": 10,
    "vocabulary_size": 50
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "alternatives": [
      "symbolic_first",
      "neural_first"
    ],
    "confidence": 0.92,
    "strategy": "hybrid_weighted"
  }
  ```
</ResponseExample>
