AstroAPI Documentation
Created by mochaaaa, revision 1
When AstroUp 2.0 Released, the Main Goal was for users and developers to have access to a Public API that anyone can use, due to certain reasons, mostly limitations in Python and the AstroUp Codebase, this was never released, however, thanks to AstroBot and a few findings from myself, this api can now be publicly avalible for anyone to use, including both Legacy and Soup API Access!
Table of Contents
V1 API
- Level Lookups (
/api/v1/getLevel
)
- Level Lookups (
- User Lookups (
/api/v1/getUser
)
- User Lookups (
- Level Queries (
coming soon
)
- Level Queries (
- User Queries (
coming soon
)
- User Queries (
V2 API
- Leaderboard Lookups (
/api/v2/getLeaderBoards
)
- Leaderboard Lookups (
V3 (Websockets API)
- Chatbot Service (
/api/v3/Chatbot
) | NOT AVALIBLE
- Chatbot Service (
V4 API
- Clear Rate List (
/api/v4/getClearRateList
)
- Clear Rate List (
- Farming List (
/api/v4/getFarmList
)
- Farming List (
V1 API
Level Lookups
URL: /api/v1/getLevel/<level>
Parameter | Description |
---|---|
level | A URLEncoded String Containing The Level Name. |
Sample Output:
{
creator: "abcd",
title: "efg",
likes: 1,
practiceAttempts: 100,
attempts: 300,
clears: 50,
comments: 20,
worldRecordTime: "6.10",
worldRecordHolder: "xyz",
levelID: "abcd-efgh-ijkl",
description: "a filler description"
}
URL: /api/v1/getLevelID/<levelid>
Parameter | Description |
---|---|
levelid | A 14 Character String Containing A Level ID (xxxx-xxxx-xxxx) |
Sample Output:
{
creator: "abcd",
title: "efg",
likes: 1,
practiceAttempts: 100,
attempts: 300,
clears: 50,
comments: 20,
worldRecordTime: "6.10",
worldRecordHolder: "xyz",
levelID: "abcd-efgh-ijkl",
description: "a filler description"
}
User Lookups
URL: /api/v1/getUser/<user>
Parameter | Description |
---|---|
user | A URLEncoded String Containing A Username. |
Sample Output:
{
playerName: "username",
profilePicture: "pfp_url",
countryCode: "cc",
stats: {
game: {
creativePoints: 1234,
creativeRanking: 123,
rankedPoints: 12,
rankedRanking: 1,
rankedWins: 12,
rankedLost: 123,
rankedLeague: "atomic",
quickGameWins: 1234,
quickGameLost: 12345,
totalAttempts: 1234,
worldRecords: 123
},
creator: {
hasBeenCreatorOfTheWeek: false,
hasBeenLevelOfTheDay: false,
hasBeenTop10Levels: false
},
social: {
totalLevelLikes: 12,
totalReplayLikes: 1,
totalCommentsReceived: 12,
totalCommentsSent: 123,
totalUploadedLevels: 1234
},
misc: {
hasNeo: false,
isCheatBanned: false,
isSteamUser: false
}
}
}
V2 API
Leaderboard Lookups
URL: /api/v2/getLeaderBoards/<leaderboard>
Parameter | Description |
---|---|
leaderboard | A String Containing the Leaderboard Type. The Avalible types are: creative , solo , versus atomic , molecular , planetary , galactic andsupernova . |
Sample Output (Non-Dimension Requests):
{
"status": "ok",
"data":[
{
"player": "4rC.4nU.m",
"countryCode": "de",
"points": 2377151,
"worldRecords": 2380,
"pfpURL": "someurl"
},
{
"player": "second player or smth",
"countryCode": "mx",
"points": 123123,
"worldRecords": 1795,
"pfpURL": "another url"
},
{
"player": "oh hes 3rd?",
"countryCode": "us",
"points": 111111,
"worldRecords": 511,
"pfpURL": null
}
]
}
Sample Output (Dimension Requests):
{
"status": "ok",
"data": [
{
"player": "lillie~",
"countryCode": "de",
"timeSeconds": 75.6,
"hasDied": true
},
{
"player": "bruh",
"countryCode": "uk",
"timeSeconds": 99.99,
"hasDied": true
},
{
"player": "omg api",
"countryCode": "fr",
"timeSeconds": 727.27,
"hasDied": true
}
]
}
V3 API
ChatBot WS Wrapper
URL: /api/v3/chatbot?token=<TOKEN>
Parameter | Description |
---|---|
TOKEN | A String Containing a Unique Bot Token. |
As for now, this API is not publicly avalible, and as such, no documentation will be provided for obvious reasons.