{
"id": "dev.tsunagite.submitScore",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"ref": "dev.tsunagite.score",
"type": "ref"
},
"encoding": "application/json"
},
"errors": [
{
"name": "gameNotFound",
"description": "No game matching the given URI was found."
},
{
"name": "songNotFound",
"description": "No song matching the given URI was found."
},
{
"name": "chartNotFound",
"description": "No chart matching the given URI was found."
},
{
"name": "scoreInvalid",
"description": "The submitted score is missing components, or its components hold invalid data."
},
{
"name": "scoreDuplicate",
"description": "The submitted score has already been submitted before."
}
],
"output": {
"type": "object",
"encoding": "application/json",
"required": [
"uri"
],
"properties": {
"uri": {
"type": "string",
"description": "The URI of the newly-created score."
},
"position": {
"type": "integer",
"minimum": 1,
"description": "The position in the default leaderboard sort order this score places."
}
}
},
"description": "Submit a score on a given chart."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1,
"description": "Definitions related to submitting scores to games hosting leaderboards via Tsunagite."
}