Skip to content

Set Summary Card

PUT
/users/{user_id}/summary-card
curl --request PUT \
--url https://example.com/users/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/summary-card \
--header 'Content-Type: application/json' \
--data '{ "slugs": [ "example" ] }'

Replace the ordered selection (the “pick your six”). Metrics dropped from the list keep their range settings but leave the card (position cleared). Creates rows for newly chosen metrics.

user_id
required
User Id
string format: uuid
Media typeapplication/json
SummaryCardUpdate

Set the ordered selection (the “pick your six”). Order is significant; max six.

object
slugs
required
Slugs
Array<string>
<= 6 items
Examplegenerated
{
"slugs": [
"example"
]
}

Successful Response

Media typeapplication/json
SummaryCardConfigRead

The card configuration: the ordered chosen metrics + the remaining candidates.

object
available
required
Available
Array<object>
SummaryMetricRead

One metric as the “Today so far” card needs it — everything but the live value, which the frontend already has from the /today fetch (read from value_field, or metrics[slug] when that’s null).

object
baseline_ready
required
Baseline Ready
boolean
high
required
Any of:
number
label
required
Label
string
learned_high
required
Any of:
number
learned_low
required
Any of:
number
low
required
Any of:
number
manual_high
required
Any of:
number
manual_low
required
Any of:
number
mode
required
Mode
string
position
required
Any of:
integer
promote
required
Promote
boolean
sample_days
required
Sample Days
integer
slug
required
Slug
string
source
required
Source
string
unit
required
Unit
string
value_field
required
Any of:
string
max_metrics
Max Metrics
integer
default: 6
metrics
required
Metrics
Array<object>
SummaryMetricRead

One metric as the “Today so far” card needs it — everything but the live value, which the frontend already has from the /today fetch (read from value_field, or metrics[slug] when that’s null).

object
baseline_ready
required
Baseline Ready
boolean
high
required
Any of:
number
label
required
Label
string
learned_high
required
Any of:
number
learned_low
required
Any of:
number
low
required
Any of:
number
manual_high
required
Any of:
number
manual_low
required
Any of:
number
mode
required
Mode
string
position
required
Any of:
integer
promote
required
Promote
boolean
sample_days
required
Sample Days
integer
slug
required
Slug
string
source
required
Source
string
unit
required
Unit
string
value_field
required
Any of:
string
Example
{
"max_metrics": 6
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}