Thread Status:
Not open for further replies.
  1. i have one question for the network dev @Plancke why did you guys make an API? do you use your own API to code hypixel's plugins. for bukkit you can download bukkit and when coding plugins you use the bukkit api. does this mean you need to download a hypixel thing to use the hypixel api? why would we use the hypixel ap over other apis. I just learned java im only 14 i hope i did not ask anything dumb.


    #PANCAKESQUAD
     
    #61
  2. Hysea

    Hysea Well-Known Member

    Miyakashi
    MVP+
    Messages:
    1,091
    They probably use bukkit or spigot to code their plugins. However their API allows players to access data such as players' stats, guilds' stats, etc.

    Take a look at this website, that's what the API was created for.
     
    #62
  3. Sk1er

    Sk1er Well-Known Member

    Sk1er
    YouTuber
    The Foundation F
    Member
    Messages:
    4,260
    In this case the Hypixel API is their way of externally accessing data. Instead of having framework for coding a plugin (Ie the Bukkit, Player and World class), it has framework for accessing a player's data externally
     
    #63
    • Like Like x 1
    • Disagree Disagree x 1
  4. Hypickles

    Hypickles Active Member

    Hypickles
    VIP+
    Messages:
    266
    The API of Hypixel returns a JSON object that includes data from their database. This is a way to let third party programmers gather info from the database without actual access to the database itself.

    The API returns a certain amount of data. In this case guild-, server- and playerinfo. If you had access to the actual database, you would be able to see other (maybe important) data, but of course, this wouldn't be safe.

    To mess around with the data, you can typ /api when you're logged in on Hypixel. You get an API key. This code is required to request data from the hypixel API.

    The data can be gathered using a webrequest. Example:
    If you go into your browser and go to https://api.hypixel.net/player?key=XXXXXXXXXXXXXXXX&name=hypickles, where XXX is your personal API key, you get my stats on Hypixel.

    In your program, you need to perform a GET webrequest to this URL and you get the JSON object to put in a variable. Properties can be gathered like this: data.property.subproperty. (where property is the actual name of the property you need, like wins, kills, ...)

    JSON is the same file format that Minecraft data often uses. (resourcepacks)
    JSON data is known to be processed very easily. The way it works is KEY : VALUE. You have a property with a value, it's as simple as that ;)

    If you have any other questions, don't hesitate to ask :D

    (I have experience with the API using C# and webbased languages)

    ~Your friendly pickle.


    PS: Working on the webversion of the Hypickles Reporter, check the old windows version here!


     
    #64
  5. #65
  6. Hypickles

    Hypickles Active Member

    Hypickles
    VIP+
    Messages:
    266
    #66
    • Useful Useful x 1
  7. So the one "problem" with guild member lists is the API request limit and I have some questions about it:

    -How many requests can you send without being blocked?
    -How long does it take until you are able to send requests again?
    -As what is the cause specified when you are blocked? Or is it displayed as something else?

    -Do you know if it is allowed to use multiple API keys to bypass the limit?

    Thanks in advance
     
    #67
  8. 120/minute, you get unblocked once the minute on the server passes, the cause could be your key specifically being blocked or a global throttle that is applied... globally... to protect our systems.

    And no don't use multiple keys.
     
    #68
    • Agree Agree x 1
    • Useful Useful x 1
  9. Write your own cache system. timestamp, hash, whatever...
     
    #69
  10. NameMCcom

    NameMCcom Member

    namemccom
    MVP++
    Messages:
    115
    so your api key doesn't get perm blocked? only temp blocked for a min?
     
    #70
  11. It only gets temporarily blocked.
     
    #71
Thread Status:
Not open for further replies.

Share This Page