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

# Get recommendations

> Retrieve generated recommendations, or their current generation status.

Retrieve generated recommendations, or the current generation status. When `status` is `completed`, the `data` field holds the recommendations as a Markdown string. Tasks older than one hour return `410 Gone`.

<Note>
  The `analysis-id` path parameter is the analysis id returned as `_internal_exposed_id` from [Get an analysis](/api-reference/get-analysis).
</Note>

<ParamField path="analysis-id" type="string" required>
  The analysis id (`_internal_exposed_id` from Get an analysis).
</ParamField>

<ResponseField name="success" type="boolean">
  Whether the request succeeded.
</ResponseField>

<ResponseField name="status" type="string">
  One of `started`, `processing`, `completed`, `failed`, or `expired`.
</ResponseField>

<ResponseField name="data" type="string">
  The recommendations content as a Markdown string. Present only when `status` is `completed`.
</ResponseField>

<ResponseField name="msg" type="string">
  Human-readable status message. Present when `status` is not `completed`.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl \
    -H "Authorization: Bearer $apikey" \
    -X GET \
    https://api.eyequant.com/v2/analyses/recommendations/$analysisId
  ```

  ```javascript JavaScript theme={null}
  const baseUrl = 'https://api.eyequant.com/v2';

  const response = await fetch(`${baseUrl}/analyses/recommendations/${analysisId}`, {
    headers: { Authorization: `Bearer ${apiKey}` },
  });

  const recommendations = await response.json();

  if (recommendations.status === 'completed') {
    renderMarkdown(recommendations.data);
  }
  ```
</RequestExample>

<ResponseExample>
  ```json completed theme={null}
  {
    "success": true,
    "status": "completed",
    "data": "## Recommendations\n\n1. Increase contrast on the primary call to action..."
  }
  ```

  ```json processing theme={null}
  {
    "success": true,
    "status": "processing",
    "msg": "Recommendation generation in progress"
  }
  ```
</ResponseExample>
