Infinity The GPT

Infinity The GPT · GPT-Aktionen

Infinity Academy API

This API provides detailed seasonal data for infinity the game, focusing on countries' participation, individual missions, and faction win rates. Each endpoint is designed to offer insights into different aspects of game statistics, filtered by specific seasons.

  • GET /season/{season}/countries/Get Countries Data for a Season
  • GET /season/{season}/mission_popularity/Get Missions Popularity Data for a Season
  • GET /season/{season}/missions/Get Missions Data for a Season
  • GET /factions/Get All Factions
  • GET /season/{season}/winrate/Calculate the winrates of all the factions for a Season
Ursprüngliches API-Schema
{
  "openapi": "3.0.0",
  "info": {
    "title": "Infinity Academy API",
    "description": "This API provides detailed seasonal data for infinity the game, focusing on countries' participation, individual missions, and faction win rates. Each endpoint is designed to offer insights into different aspects of game statistics, filtered by specific seasons.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://5jh4pj7ks7.execute-api.us-east-1.amazonaws.com"
    }
  ],
  "paths": {
    "/season/{season}/countries/": {
      "get": {
        "operationId": "getCountriesBySeason",
        "summary": "Get Countries Data for a Season",
        "tags": [
          "Countries"
        ],
        "parameters": [
          {
            "name": "season",
            "in": "path",
            "required": true,
            "description": "The season number",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A list of countries with their match data for the specified season.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Country"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/season/{season}/mission_popularity/": {
      "get": {
        "operationId": "getMissionsPopularityBySeason",
        "summary": "Get Missions Popularity Data for a Season",
        "tags": [
          "Missions"
        ],
        "parameters": [
          {
            "name": "season",
            "in": "path",
            "required": true,
            "description": "The season number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "tier",
            "in": "query",
            "description": "Filter mission popularity by points tier the games were played at",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/Tier"
            }
          },
          {
            "name": "country",
            "in": "query",
            "description": "Filter mission popularity by real world country id. The id can be retrieved from getCountriesBySeason.",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Mission popularity data for the specified season.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MissionPopularity"
                }
              }
            }
          }
        }
      }
    },
    "/season/{season}/missions/": {
      "get": {
        "operationId": "getMissionsBySeason",
        "summary": "Get Missions Data for a Season",
        "tags": [
          "Missions"
        ],
        "parameters": [
          {
            "name": "season",
            "in": "path",
            "required": true,
            "description": "The season number",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "List of missions for the specified season.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Mission"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/factions/": {
      "get": {
        "summary": "Get All Factions",
        "operationId": "getAllFactions",
        "tags": [
          "Factions"
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/season/{season}/winrate/": {
      "get": {
        "operationId": "getWinrateBySeason",
        "summary": "Calculate the winrates of all the factions for a Season",
        "tags": [
          "Winrate"
        ],
        "parameters": [
          {
            "name": "season",
            "in": "path",
            "required": true,
            "description": "The season number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "name": "tier",
            "in": "query",
            "description": "The tier of games to calculate winrates for",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/Tier"
            }
          },
          {
            "name": "country",
            "in": "query",
            "description": "Adjust the winrates calculation such that the only games included in the calculation are games played by players of this real world countries id. The id can be retrieved from getCountriesBySeason.",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/CountryId"
            }
          },
          {
            "name": "mission",
            "in": "query",
            "description": "Adjust the winrates calculation such that the only games included in the calculation are games played with this missions id. The id can be retrieved from getMissionsBySeason.",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/MissionId"
            }
          },
          {
            "name": "faction",
            "in": "query",
            "description": "Adjust the winrates calculation such that the only games included in the calculation are games that were played against the faction of this id. The id can be retrieved from getAllFactions.",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/FactionId"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A list of Winrate data for factions for the specified season.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Winrate"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Country": {
        "type": "object",
        "properties": {
          "season": {
            "type": "integer",
            "description": "The season number."
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the country."
          },
          "matches": {
            "type": "integer",
            "description": "The number of matches for the country in the season."
          },
          "label": {
            "type": "string",
            "description": "The label or name of the country."
          }
        },
        "required": [
          "season",
          "id",
          "matches",
          "label"
        ]
      },
      "MissionPopularity": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "integer",
                  "description": "Unique identifier for the mission."
                },
                "mission": {
                  "type": "string",
                  "description": "Name of the mission."
                },
                "total": {
                  "type": "integer",
                  "description": "Total number of games for this mission."
                },
                "op": {
                  "type": "number",
                  "description": "Operational points for this mission."
                },
                "vp": {
                  "type": "number",
                  "description": "Victory points for this mission."
                },
                "percent": {
                  "type": "number",
                  "description": "Percentage representation of the mission."
                }
              },
              "required": [
                "id",
                "mission",
                "total",
                "op",
                "vp",
                "percent"
              ]
            }
          },
          "total_games": {
            "type": "integer",
            "description": "Total number of games analyzed."
          },
          "last_updated": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp of the last update."
          }
        },
        "required": [
          "rows",
          "total_games",
          "last_updated"
        ]
      },
      "Mission": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique identifier for the mission."
          },
          "label": {
            "type": "string",
            "description": "The label or name of the mission."
          }
        },
        "required": [
          "id",
          "label"
        ]
      },
      "Winrate": {
        "type": "object",
        "properties": {
          "total_games": {
            "type": "integer",
            "description": "Total number of games analyzed."
          },
          "unknown_pcnt": {
            "type": "number",
            "description": "Percentage of unknown data."
          },
          "last_updated": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp of the last update."
          },
          "average": {
            "type": "number",
            "description": "Average winrate."
          },
          "standard_deviation": {
            "type": "number",
            "description": "Standard deviation of the winrate."
          },
          "variance": {
            "type": "number",
            "description": "Variance of the winrate."
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "integer",
                  "description": "Unique identifier for the faction."
                },
                "faction": {
                  "type": "string",
                  "description": "Name of the faction."
                },
                "is_win": {
                  "type": "integer",
                  "description": "Number of wins."
                },
                "op": {
                  "type": "number",
                  "description": "Operational points."
                },
                "vp": {
                  "type": "number",
                  "description": "Victory points."
                },
                "total": {
                  "type": "integer",
                  "description": "Total games played."
                },
                "winrate": {
                  "type": "number",
                  "description": "Winrate of the faction."
                },
                "en": {
                  "type": "string",
                  "description": "English name of the faction."
                },
                "reinforcement": {
                  "type": "boolean",
                  "description": "Indicates if reinforcement is available."
                },
                "logo": {
                  "type": "string",
                  "description": "URL to the faction's logo."
                },
                "parent_slug": {
                  "type": "string",
                  "description": "Parent slug of the faction."
                },
                "rank_tier": {
                  "type": "string",
                  "description": "Rank tier of the faction."
                }
              },
              "required": [
                "id",
                "faction",
                "is_win",
                "op",
                "vp",
                "total",
                "winrate",
                "en",
                "reinforcement",
                "logo",
                "parent_slug",
                "rank_tier"
              ]
            }
          }
        }
      },
      "CountryId": {
        "type": "string",
        "enum": [
          "AT",
          "AU",
          "BE",
          "BR",
          "CA",
          "CH",
          "CL",
          "CO",
          "DE",
          "DK",
          "ES",
          "FI",
          "FR",
          "GB",
          "GR",
          "IT",
          "KR",
          "MX",
          "NL",
          false,
          "NZ",
          "PL",
          "PT",
          "RS",
          "RU",
          "SE",
          "SG",
          "TR",
          "UA",
          "US",
          "VE",
          "ZA"
        ]
      },
      "MissionId": {
        "type": "string",
        "enum": [
          "ACQUISITION",
          "ANNIHILATION",
          "BATTLEGROUND",
          "BIOTECHVORE",
          "B_PONG",
          "CAPTURE_AND_PROTECT",
          "COUNTERMEASURES",
          "CRYOGENICS",
          "CUSTOM",
          "CUTTHROAT",
          "DECAPITATION",
          "EVACUATION",
          "FIREFIGHT",
          "FRONTLINE",
          "FROSTBYTE",
          "HIGHLY_CLASSIFIED",
          "LAST_LAUNCH",
          "LOOTING_SABOTAGING",
          "MINDWIPE",
          "PANIC_ROOM",
          "POWER_PACK",
          "QUADRANT_CONTROL",
          "RESCUE",
          "RESILIENCE_OPERATIONS",
          "SUPERIORITY",
          "SUPPLIES",
          "SUPREMACY",
          "THE_ARMORY",
          "UNMASKING",
          "UPLINK_CENTER"
        ]
      },
      "Tier": {
        "type": "integer",
        "enum": [
          0,
          150,
          200,
          250,
          300,
          350,
          400
        ]
      },
      "FactionId": {
        "type": "string",
        "enum": [
          "unknown",
          "panoceania",
          "shock-army-of-acontecimento",
          "military-orders",
          "neoterran-capitaline-army",
          "varuna",
          "svalarheima-s-winter-force",
          "yu-jing",
          "imperial-service",
          "invincible-army",
          "white-banner",
          "ariadna",
          "caledonian-highlander-army",
          "force-de-reponse-rapide-merovingienne",
          "usariadna",
          "tartary",
          "kosmoflot",
          "haqqislam",
          "hassassin-bahram",
          "qapu-khalqi",
          "ramah-taskforce",
          "nomads",
          "corregidor",
          "bakunin",
          "tunguska",
          "combined-army",
          "morat",
          "shasvastii",
          "onyx",
          "aleph",
          "steel-phalanx",
          "operations",
          "tohaa",
          "non-aligned-armies",
          "druze",
          "japanese-secessionist-army",
          "ikari",
          "starco",
          "spiral-corps",
          "foreign-company",
          "dahshat",
          "white-company",
          "o-12",
          "starmada"
        ]
      }
    }
  }
}