Forums / Support / Halo API Support

Intro to the Halo Public API

OP Furiousn00b

  1. 1
  2. ...
  3. ...
  4. 2
Foreword: The API is currently in BETA, expect breaking changes.


FAQ:

Q: Who is this for?
A: Developers, Developers, Developers

Q: Where do I start?
A: Head over to developer.haloapi.com. Sign up, get an API Key, and read some documentation.

Q: Where do I get an API Key?
A: After signing up at developer.haloapi.com, you can enroll into the 'Developer Access' product, and get a key (check your profile).

Q: Where is the documentation?
A: You can read the official documentation for all endpoints at developer.haloapi.com/docs/services/.

Q: What games are supported?
A: Halo 5 (Xbox One), Halo 5: Forge (PC), Halo Wars 2 (Xbox One, PC)

Q: Can I query Halo 4 (etc.) data?
A: No. There is no sign to suggest this will change.

Q: How fast can I make queries.
A:
Blow these and expect a 429.


UNOFFICIAL LIBRARIES:

The following are developed by members of the Halo community, they are here to make the world a better place. If you want your project added (or removed) sound out here, or shoot me a message, and I'll get it sorted.

C#
Node.js
PHP
Python
R
Ruby
* At one point these projects were feature complete and implemented all API endpoints/features. They have not been updated with recent changes.
I've got one I'm working on for iOS/Objective-C. Should be wrapped up by this weekend.
I've got one I'm working on for iOS/Objective-C. Should be wrapped up by this weekend.
Sweet. Let us know when it's available and I'll have a look :)
Quote:
A: The 'Developer Access' product is limited to 100 queries in 10 seconds. Blow this and expect a 429.
Sadly, this is already out of date. Down to 10 per 10 seconds.
Quote:
A: The 'Developer Access' product is limited to 100 queries in 10 seconds. Blow this and expect a 429.
Sadly, this is already out of date. Down to 10 per 10 seconds.
Yup, looks like you're right. They don't seem to have updated their documentation to reflect this though.

I'm guessing it's because people were abusing the 'Developer Access' product. It's not really that clear, but it's not meant to be used for production i.e. any scripts people have running etc. it's to be used while building your app. 10/10 is pretty slow, but it's serviceable for it's intended use.

Once your app is built, you submit it, they'll give you a new product with different rates.
Quote:
I'm guessing it's because people were abusing the 'Developer Access' product. It's not really that clear, but it's not meant to be used for production i.e. any scripts people have running etc. it's to be used while building your app. 10/10 is pretty slow, but it's serviceable for it's intended use.

Once your app is built, you submit it, they'll give you a new product with different rates.
Is this documented or mentioned anywhere? As far as I could ever tell, "Developer Access" was the only option ever available, but I probably just missed it.
Edit: Never mind, I realized you meant the application in the sticky thread.
Quote:
I'm guessing it's because people were abusing the 'Developer Access' product. It's not really that clear, but it's not meant to be used for production i.e. any scripts people have running etc. it's to be used while building your app. 10/10 is pretty slow, but it's serviceable for it's intended use.

Once your app is built, you submit it, they'll give you a new product with different rates.
Is this documented or mentioned anywhere? As far as I could ever tell, "Developer Access" was the only option ever available, but I probably just missed it.
Edit: Never mind, I realized you meant the application in the sticky thread.
I actually missed that post.

You can submit applications through your profile on developer.haloapi.com. Seems like they want you to send an email instead (?).

After you register an application, you can submit it.
The JavaScript binding "haloapi" is complete. Works with all endpoints.

It also has been published to NPM, so you can grab it with "npm install haloapi" at your command line.

Still a bit to do, tests, some typings, but it's completely functional.

EDIT: Also could you flag it as "Node JS" rather than TypeScript because not many people know what TypeScript is, and at its core it's a JS package. :P
Thanks for listing our librairies !
I just released the beta version of my PHP-HaloAPI :)
Now available as a composer package as requested by users.
The JavaScript binding "haloapi" is complete. Works with all endpoints.

It also has been published to NPM, so you can grab it with "npm install haloapi" at your command line.

Still a bit to do, tests, some typings, but it's completely functional.

EDIT: Also could you flag it as "Node JS" rather than TypeScript because not many people know what TypeScript is, and at its core it's a JS package. :P
JavaScript is a bit of a blind spot for me, cheers for the correction :)

Thanks for listing our librairies !
I just released the beta version of my PHP-HaloAPI :)
Now available as a composer package as requested by users.
Awesome!
Thanks for putting this together Furiousn00b and company! The team is reading your requests and feedback, so keep 'em coming!
Thanks for making this thread! I've just finished my first full release of 16807 PIOUS ACADEMIC, so if you could update the original post with that, I'd be thankful!
Quote:
Thanks for putting this together Furiousn00b and company! The team is reading your requests and feedback, so keep 'em coming!
You're welcome Tashi :) Good to see so many excited to contribute.
Thanks for making this thread! I've just finished my first full release of 16807 PIOUS ACADEMIC, so if you could update the original post with that, I'd be thankful!
Sweet as! Updated as requested.
Added new C# library HaloEzAPI by Glitch100.
Heads up. Updated API today with a CacheManager, more tests. RateHandling, more tests. And more endpoints :)
Hey Furiousn00b, want to add this/this as unofficial docs under the "Where is the documentation?" bit in OP?

Also, could you add this link: https://derflatulator.github.io/haloapi.js/ to my JS client?
Some of the links are also old (but still working). Maybe replace with something like this:
Quote:
I really need to find something else to do, lol.
I gave up on the last one. Any ideas?
Is there any way to retrieve a list of xbl gamertags of everyone who has played halo 5?
For any R users out there I've put together a small package. It's available on github at cluoma/h5api

Nothing fancy, just some basic functions to easily access all current endpoints. Cheers!
Furiousn00b, I just updated my package - it is now complete and will undego refactoring/improvement, so please update main post :)

https://github.com/glitch100/Halo-API/
https://www.nuget.org/packages/HaloEzAPI
  1. 1
  2. ...
  3. ...
  4. 2