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

# List team scores

> List all member-submitted scores for a team on a specific product.

List all member-submitted scores for a team on a specific product. Use this to render the per-member scoring grid. POST to the same path to submit a score on behalf of the caller.

```bash theme={null}
curl -X GET "https://app.dacard.ai/api/teams/tm_2x1B3y/scores?productId=prod_abc" \
  -H "Authorization: Bearer $DACARD_API_KEY"
```

| Property           | Value                                                         |
| ------------------ | ------------------------------------------------------------- |
| **Auth**           | Required                                                      |
| **Required scope** | Accepted membership                                           |
| **Idempotent**     | GET yes. POST replaces caller's prior score for this product. |

## GET response

```json theme={null}
{
  "scores": [
    {
      "userId": "user_a",
      "productId": "prod_abc",
      "dimensions": [
        { "dimensionId": "decision_quality", "score": 4, "evidence": "..." }
      ],
      "submittedAt": "2026-05-04T12:00:00Z"
    }
  ]
}
```

## POST body

```json theme={null}
{
  "productId": "prod_abc",
  "dimensions": [
    { "dimensionId": "decision_quality", "score": 4 }
  ]
}
```

POST recomputes the team composite and detects disagreements. The caller's prior score on this product is replaced.

## Errors

| Status | Code                                    | When                    |
| ------ | --------------------------------------- | ----------------------- |
| 400    | `productId query parameter is required` | GET without query.      |
| 401    | `AUTH_REQUIRED`                         | No session.             |
| 403    | `Not a team member`                     | No accepted membership. |
| 404    | `Team not found`                        | Bad `id`.               |
| 500    | `INTERNAL_ERROR`                        | Write failed.           |
