Monni API
The Monni API is provided to make it possible for you to communicate and integrate with Monni systems from external applications. In order to communicate with most API’s you need an API key. The API key has to be provided in the header with the key named api_key
We are currently migrating our API system. Old monni.fyi/api/public will be deprecated at 30.11.2024. The new API can be found at https://api.monni.fyi/ and the documentation can be found at https://api.monni.fyi/docs/.
If you are using api.monni.fyi endpoints the header should be X-guild-API-key
API keys
The API key consists of two sections. Metadata and randomly generated key. A comma delimiter separates them. Please note, metadata is base64 encoded.
Example key
Z3VpbGR8OTYxNjYzOTkzNTkwNzQzMTgw.qtEcSLOdZXbjl0iqdC08U38D4wff51-s5sLIpI-Eej5roosvjhmh091ha5FRmCNH__YaxnEbhVZuRA03ZW-aKQ
Metadata Z3VpbGR8OTYxNjYzOTkzNTkwNzQzMTgw
(guild|961663993590743180)
Delimiter .
Securely generated key qtEcSLOdZXbjl0iqdC08U38D4wff51-s5sLIpI-Eej5roosvjhmh091ha5FRmCNH__YaxnEbhVZuRA03ZW-aKQ
Keys are stored hashed and cannot be edited. If metadata or any part is changed, the key will become invalid.
Keys made before 30.9.2024 will not contain the metadata section
Structure
/api/public/<version>/<API name>
API end points may change without notice. This includes the path and rate limits.
Current API End Points
We currently have 4 API end points, these end points are:
Points
The Points API has a global rate limit of 30 requests per minute.
Version 1
- Get Endpoint
/api/public/v1/points/get/
Parameters:
{
"guild_id": int|str
}
Returns a list of all the current points systems in a guild and their settings.
- Edit Endpoint
/api/public/v1/points/edit/
Parameters:
{
"guild_id": Id of the guild (int|str),
"system_id": Id of the system (str),
"member_id": Id of the member (int|str),
"amount": Amount (int min -1000000 max 1000000)
}
Endpoint for changing points of a member by provided amount.
- Edit Balance
/api/public/v1/points/balance/
Parameters:
{
"guild_id": Id of the guild (int|str),
"system_id": Id of the system (str),
"member_id": Id of the member (int|str),
}
End point for getting balance of a person.
Rewards
The Rewards API has a global rate limit of 30 requests per minute.
Version 1
- Get Badges Endpoint
/api/public/v1/rewards/get/badges/
Parameters:
{
"guild_id": int|str
}
Returns a list of all guild badges.
- Get Items Endpoint
/api/public/v1/rewards/get/items/
Parameters:
{
"guild_id": int|str
}
Returns a list of all guild items.
Triggers
The Triggers API has a global rate limit of 60 requests per minute.
Version 1
- Get Custom Endpoint
/api/public/v1/triggers/custom/get/
Parameters:
{
"guild_id": int|str
}
Returns a list of all custom triggers and their details.
- Custom Execute Endpoint
/api/public/v1/triggers/custom/execute/
Parameters:
{
"guild_id": Id of the guild (int|str),
"trigger_id": Id of the trigger (str),
"data": JSON object of your choosing. Will be passed to simpukka and can be accessed.,
}
API endpoint for executing custom Simpukka triggers. (Simpukka limits still apply) will return following information:
{
"result": "rendering result",
"runtime": "Time simpukka took to execute",
"api_calls": "Api calls made during simpukka",
"error": "Potential error which happened during simpukka rendering"
}
Verification
The Verification API has a global rate limit of 20 requests per minute.
Version 1
- Edit Endpoint
/api/public/v1/verification/get/account/
Parameters:
{
"guild_id": Id of the guild (int|str),
"member_id": Id of the member (int|str),
}
Endpoint for getting verified account of user.