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

# Regenerate a recommendation

> Ask DAC to rewrite a coaching recommendation, optionally with new user context.

Ask DAC to rewrite a coaching recommendation. Optional `feedback` text steers the regeneration: pass what was wrong with the original, or what additional context DAC should weigh.

```bash theme={null}
curl -X POST https://app.dacard.ai/api/recommendations/regenerate \
  -H "Authorization: Bearer $DACARD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "recommendationId": "rec_xyz",
    "feedback": "Too generic. Our team is two ICs, not a 50-person org."
  }'
```

| Property | Value |
| - | - |
| **Auth** | Required |
| **Cost** | 1 credit (LLM call) |
| **Idempotent** | No (each call regenerates) |

## Body

| Field | Type | Required | Notes |
| - | - | - | - |
| `recommendationId` | string | yes | The original recommendation. |
| `feedback` | string | no | Free-text steering. Stored against the original for the trace. |

## Response

```json theme={null}
{
  "recommendation": {
    "id": "rec_xyz",
    "rewrittenAt": "2026-05-06T12:00:00Z",
    "title": "...",
    "body": "...",
    "evidence": [...]
  }
}
```

The original is replaced in place; clients re-render against the same `id`.

## Errors

| Status | Code | When |
| - | - | - |
| 401 | `AUTH_REQUIRED` | No session. |
| 402 | `CREDIT_EXHAUSTED` | No credits. |
| 404 | `Recommendation not found` | Bad `recommendationId` or not owned by caller. |
| 500 | `INTERNAL_ERROR` | LLM or write failed. |

A `captureTrace()` row is written for every regeneration with `callType: dac_structured`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.