Skip to content

Request: Add an endpoint to get Majeggstics coops #2

@spectreOxion

Description

@spectreOxion
  • 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
]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions