Skip to content

Everything the MVP page needs in one viewer-aware payload.

GET
/mvp/page
curl --request GET \
--url https://api.gospl.example/v1/mvp/page \
--header 'Authorization: Bearer <token>'

Current holders, the viewer’s nomination eligibility per award type, both countdowns, and the viewer’s own nomination feed (own only — Q3).

OK

Media type application/json
object
currentHolders
required
object
period
string
/^\d{4}-\d{2}$/
individual
One of:
object
id
required
string format: uuid
name
required
string
photoUrl
string format: uri
team
One of:
object
teamName
string
members
Array<object>
object
id
required
string format: uuid
name
required
string
photoUrl
string format: uri
deadlines
required
object
individual
required
object
type
required
string
Allowed values: individual team
closesAt
required
string format: date-time
isOpen
required
boolean
team
required
object
type
required
string
Allowed values: individual team
closesAt
required
string format: date-time
isOpen
required
boolean
canNominate
required

Drives CTA visibility (US-06). Server-authoritative.

object
individual
required
boolean
team
required
boolean
myNominations
required

Viewer’s own, newest first (Q3 — own only).

Array<object>
object
id
required
string format: uuid
type
required
string
Allowed values: individual team
period
required
string
/^\d{4}-\d{2}$/
reason
required
string
createdAt
required
string format: date-time
nominee

Present for individual nominations.

object
id
required
string format: uuid
name
required
string
photoUrl
string format: uri
team

Present for team nominations.

object
teamName
string
members
Array<object>
object
id
required
string format: uuid
name
required
string
photoUrl
string format: uri
Example
{
"deadlines": {
"individual": {
"type": "individual"
},
"team": {
"type": "individual"
}
},
"myNominations": [
{
"type": "individual"
}
]
}

Missing/invalid credentials.

Media type application/json
object
code
required
string
message
required
string
Example generated
{
"code": "example",
"message": "example"
}