- Overview: Returns information about Maj coops. Uses data from Wonky and optionally from EI.
- Endpoint:
/majCoops?contract=xxxxx
contract: Required; Contract identifier for the requested coops.
withstatus: Optional; Includes coop status as reported by EI if set to true
EID: Required with withstatus=true; Used to query EI for coop status
- Format: JSON array of objects
The structure of the included data mostly depends on what's most convenient based on how it's stored internally. This is my best guess as to what it might look like:
[
{
"contract_id": "cesar-chavez-2022",
"coop_id": "anyjer123",
"timeslot": "1 - One",
"roster": [ // list of players wonky has assigned to this coop; used to calculate mins
{
"ign": "Maj Oxion",
"timeslot": "1 - One", // can differ from coop timeslot for late adds
/* Grade and role are also useful here, but those probably aren't stored
in this relationship. There are also probably some other things I've
forgotten or am not aware of - for example, I *think* there's a
mechanism to mark non-Wonky additions or to otherwise exclude people
from minimums checks, but I'm not sure how that's handled internally.
*/
},
// other roster members
],
"thread_link": "https://discord.gg/1234/1234", // empty string if none
"flags": [
// ... (probably just strings)
],
"coopStatus": { // empty object if withstatus not set to true
// ... (same format as the /contract endpoint)
},
// I'm sure there are some other coop attribtutes I'm forgetting
},
// other coops for this contract
]
/majCoops?contract=xxxxxcontract: Required; Contract identifier for the requested coops.withstatus: Optional; Includes coop status as reported by EI if set totrueEID: Required withwithstatus=true; Used to query EI for coop statusThe structure of the included data mostly depends on what's most convenient based on how it's stored internally. This is my best guess as to what it might look like: