---
title: "Upsert one goal for a user into a given state"
method: POST
path: "/api/rewards/admin/qa/goals/{userId}"
tags: ["Rewards (QA)"]
---

# Upsert one goal for a user into a given state

`POST /api/rewards/admin/qa/goals/{userId}`

## Request

- Base URL: `https://api.rewritelifestyle.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.rewritelifestyle.ai/api/rewards/admin/qa/goals/{userId}`
- Auth: HTTP bearer

## Path parameters

- `userId` number, required

## Request body

- QaSetGoalDto
  - `catalogue_key` string, required
  - `status` 'active' | 'completed', required
  - `progress_days` number: Defaults to one day short of the catalogue's total_days for "active", or the full total_days for "completed".

## Response `201`

## Changes

- **2026-09-12** `0d5ef02a4fbe`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api/changes/api/rewards/admin/qa/goals/:userId/post.md)

---

[API](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api.md) - [All operations](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rewritelifestyle/apis/rewrite-lifestyle-api/revisions/28695827f27a?raw)
