API description

  • 23.06.2015

minecraft-statistic.net — это продолжение проекта minecraft-servers.com.ua
minecraft-statistic.net предоставляет больше статистики по серверам и более детальную по игрокам. Исправлены критические ошибки, улучшено юзабилити. В скором времени наш мониторинг будет поддерживать несколько языков интерфейса. На самые задаваемые вопросы, я буду отвечать здесь!

Для чего это надо? Неужели просто нельзя добавить руками? Это же пару секунд!

Да! Вы правы, добавление сервера в наш мониторинг занимает считанные секунды, но этот сервис предназначен больше все для хостеров, которые предоставляют услуги хостинга майнкрафт серверов. Одним движением вы можете автоматизировать процесс добавления серверов в наш мониторинг и предоставить бесплатный мониторинг и статистику сразу же после заказа сервера.

Как это сделать?

Отправьте POST или GET запрос на адрес:

https://minecraft-statistic.net/en/home/add_server/?ip=127.0.0.1&port=12365

ip - ip адрес вашего сервера

port - port вашего сервера

В ответе вы получите массив, где первый элемент укажет на выплнение операции true или false , второй укажет причину

[false,"IP address is entered not correctly or is local network"]

В зависимости с какого субдомена вы будете запрашивать API, на том же языке будут ошибки. Простого вам использования.

Если АПИ вернул в первом элементе true , то можете смело переходить на адрес:

https://minecraft-statistic.net/en/server/ip_port.html
На основе наших данных , которые отдаються в формате json, вы можете сделать интересные штуки, например вывести на своем сайте количество игроков онлайн и бар загрузки сервера, вот небольшой пример как можно использовать наши данные, а внизу вы найдете описание каждой переменной.

Для получения данных по определенному серверу выполните запрос указав IP и PORT

https://minecraft-statistic.net/en/server/ip_port/json/
{
    /*(int) id server monitoring*/
    "_id": 51,
    /*(string) unique address of the server in our monitoring (if there is not empty, server administrator can change the ip address of the server and port)*/
    "uri": "supersky",
    /*(object) charts players online for 24 hours, with an interval of 10 minutes*/
    "chart": {
        /*(string) time in the format HH: ii and the number of players online (int)*/
        "00:00": 13,
        /* . . . */
        "23:50": 13
    },
    /*(object) server counters*/
    "counter": {
        /*(int) number of comments (reviews)*/
        "cmts": 4,
        /*(int) likes - number of people who add servers to favorites*/
        "favorite": 4,
        /*(int) Counter offline, the number of times the server has been offline since the addition of*/
        "offline": 16077,
        /*(int) counter online, how many times the server has been online since the addition of*/
        "online": 74564,
        /*(object) total number of players who have played on the server after adding*/
        "players": {
            /*(string) date in the format YYYY-mm-dd, when things count players (counter counts once a day and always displays the data on the last day)*/
            "date": "2015-06-23",
            /*(int) number of players who have played on the server*/
            "total": 27482
        },
        /*(int) amount of added screenshots*/
        "screenshot": 6
    },
    /*(int) Date of adding a server to monitor, in a format Unix Timestamp*/
    "date_add": 1379283352,
    /*(string) server domain, adding the IP address is converted into*/
    "domain": "mc.supersky.org.ua",
    /*(string) link to download the launcher is displayed on the page of the server*/
    "download_url": "",
    /*(object) geodata server*/
    "geo": {
        /*(string) server city*/
        "city": "Sevastopol",
        /*(string) Country server in the format of ISO 3166 A2*/
        "country": "UA",
        /*(string) server country*/
        "country_name": "\u0423\u043a\u0440\u0430\u0438\u043d\u0430"
    },
    /*(object) general information about the server*/
    "info": {
        /*(string) name server is updated in the survey (in the server settings is a variable motd)*/
        "name": "SuperSky Survival 1.7.x-1.8.x",
        /*(string) game type*/
        "type": "SMP",
        /*(string) server platform, the possible values "MINECRAFT" or "MINECRAFTPE"*/
        "platform": "MINECRAFT",
        /*(string) server version*/
        "version": "1.8",
        /*(array) List plugins that are installed on the server*/
        "plugins": ["WorldEdit 6.0.2-SNAPSHOT,3347-fe6717a0", " HealthBar 1.8.2", " PvPTime 0.1.22", " Essentials TeamCity", " LogBlock 1.81", " ClearLag 2.7.7", " AutoMessage 2.5.2", " FullBright 1.1", " MonsterFix 0.4.3", " ProtocolLib 3.6.3-SNAPSHOT", " WorldGuard 6.0.0-SNAPSHOT.1550-", " NoCheatPlus 3.12.1-SNAPSHOT-sMD5NET-b823", " SkinsRestorer 9.3", " HeadDrops 2.0", " PermissionsEx 1.23.3", " RandomPort 2.0", " ColoredTablist 1.1.0", " Vault 1.5.0-b28", " HideStream 3.7", " ProtocolSupport 4.13", " EssentialsSpawn TeamCity", " SalvageSmelter 0.1.8", " CustomEnchantments 2.2a", " Autorank 3.5.1-Dev-382", " AuthMe 3.4", " ScoreboardStats 0.9.1", " GlobalMarket 1.2.2", " ChatEx 1.2", " ChatGuard 6.3"],
        /*(int) number of players online*/
        "players": 16,
        /*(int) maximum number of players (slots)*/
        "max_players": 30,
        /*(array) list of players online*/
        "players_list": ["Shamandra", "vlad_3881", "ATmega8", "Koshmarik", "Gohjay", "vipit", "msx9086", "Creeper1903", "__Pig131__", "baklajan", "marines", "uaruk", "dasides", "thelinx", "KORVELION", "saf_alex_100"],
        /*(string) server map*/
        "map": "world",
        /*(string) server software*/
        "software": "CraftBukkit on Bukkit 1.8-R0.1-SNAPSHOT",
        /*(float) average number of players during the 24 hours*/
        "avg_player_day": 14.83,
        /*(float) average load on the server for 24 hours*/
        "avg_load_day": 49.42
    },
    /*(string) ip address of the server (v4)*/
    "ip": "91.200.47.122",
    /*(object) date of the last online / offline*/
    "last": {
        /*(int) last date in an offline format Unix Timestamp*/
        "offline": 1434915770,
        /*(int) date of the latest online format Unix Timestamp*/
        "online": 1435056332
    },
    /*(int) updating date data in a format Unix Timestamp*/
    "last_update": 1435056332,
    /*(string) link to the map server (url to a page with otrenderinoy card) is displayed in the server shortcut*/
    "map_url": "",
    /*(object) server records*/
    "max_stat": {
        /*(object) maximum online*/
        "max_online": {
            /*(int) date maximum online format Unix Timestamp, if the record is repeated (the same value), or a new record, the date updated*/
            "date": 1434882170,
            /*(int) number of players online*/
            "players": 30
        }
    },
    /*(object) a list of modifications and options on the server chosen by the administrator in admin panel*/
    "mods": {
        /*(string) mod : (int) 0 - off, 1 - on*/
        "license": 0,
        "whitelist": 0,
        "pvp": 1,
        "creative": 0,
        "industrial": 0,
        "buildcraft": 0,
        "forestry": 0,
        "thaumcraft": 0,
        "railcraft": 0,
        "millenaire": 0,
        "terrafirmacraft": 0,
        "gregtech": 0
    },
    /*(int) server port*/
    "port": 25565,
    /*(object) rating data*/
    "rating": {
        /*(float) Factor content as percent of the counted rating receive an additional server, for that added description, screenshots, etc.*/
        "K": 12.23,
        /*(float) Bonus content (see the formula calculating rating)*/
        "content_up": 0.77,
        /*(float) the difference with the previous rating value (how much change in 10 minutes)*/
        "difference": 0.73,
        /*(float) current rating of the server*/
        "main": 7.73
    },
    /*(int) status survey 1 - monitoring is enabled, 0 - monitoring off (disconnected from the server monitor automatically when it is below 5% uptime)*/
    "scan": 1,
    /*(int) server status 1 - online, 0 - offline*/
    "status": 1,
    /*(string) Server uptime percentage (the ratio of the number of interviews to an offline)*/
    "uptime": "82.26",
    /*(string) or (array) reference list server administrator accrue from the control panel and displayed on the page server*/
    "url": [],
    /*(string) Reply API "ok" - the server exists and all is well*/
    "status_query": "ok"
}
Вы можете получить небольшую статистику любого игрока в формате json, для этого необходимо сделать запрос:
https://minecraft-statistic.net/player/json/PLAYER_NAME/SERVER_ID

PLAYER_NAME - ник игрока (обязательный параметр)

SERVER_ID - id сервера (указываете, если хотите получить статистику на конкретном сервере, не обязательный параметр)

Пример

https://minecraft-statistic.net/player/json/djoice/

    {
        //(string) статус ответа ok или error (если error, то вместо поля data будет поле msg с описанием ошибки)
        "status": "ok",
        //(object) данные
        "data": {
            //(int) время последнего онлана в формате Unixtime 
            "last_play": 1435936128,
            //(int) аккаунт лицензионный или нет (пока работает не совсем точно, не рекомендуется использовать для проверке чего либо)
            "license": 1,
            //(int) статус игрока 1 - в онлайне, 0 - оффлайн
            "online": 0,
            //(int) всего времени online, в минутах
            "total_time_play": 15625,
            //(string) никнейм игрока
            "name": "djoice",
            //(string) UUID игрока в системе Mojang
            "uuid": "146db9a0bb494f24abed5749be50be29"
        }
    }            

Пример, с указанием ID сервера

https://minecraft-statistic.net/player/json/djoice/51

    {
        "status": "ok",
        "data": {
            "last_play": 1435936128,
            "license": 1,
            "online": 0,
            //(int) общее время online на сервере с ID=51, в минутах
            "total_time_play": 3920,
            "name": "djoice",
            "uuid": "146db9a0bb494f24abed5749be50be29"
        }
    }