API Libraries for Programming Languages

85 Tauren Druid
4135
My goal for this thread is to keep an up-to-date list of tools for different programming languages that facilitate accessing the World of Warcraft Community Platform API. If you'd like your project listed, just reply to the thread! Alternatively, follow the instructions at https://github.com/BinaryMuse/wow-api-projects#readme (which I use to maintain this list and generate the markup).

The D3 version of this thread can be found at http://us.battle.net/d3/en/forum/topic/6307731317

.NET
  • BATTLE.NET - SDK by Asesjix
    http://battlenetsdk.codeplex.com/


ActionScript 3


C#



  • WCPAL (Warcraft Community Platform API Library) by Daegren
    https://github.com/daegren/WCPAL




ColdFusion


Java



JavaScript




PHP
  • Battle.net Api by Khepri
    https://github.com/jelte/blizzard-api

  • bnetlib by coss
    https://github.com/coss/bnetlib


  • Php-WowApi by Dancannon
    https://github.com/dancannon/Php-WowApi



Python



  • WoWthon (Python 3) by JonGoodger
    https://github.com/JonGoodger/WoWThon


Ruby

________________________________________________
MVP, Web and API
Libraries for the Community Platform API: http://us.battle.net/wow/en/forum/topic/2369882588
Libraries for the Community Platform API: http://us.battle.net/d3/en/forum/topic/6307731317
Edited by Cyaga on 7/10/2013 5:01 PM PDT
Reply Quote
MVP
58 Blood Elf Death Knight
500
Great idea, Cyaga! And in case anyone is wondering, there are currently have no plans to support anything other than realm status, character profiles, guild profiles, arena team profiles and auction house data dumps, according to Straton. Also going to stick this mini Q&A he conducted in here as well because... There's nowhere else to put it, ;).

Q: Will item data be exposed through APIs?

A: It is something that we would like to do, but there are other higher priority items that need to be hammered out first.

Q: Will there be a transition period between a new release and retiring the old?

A: Yes. Once the character and guild API features are complete and launched, we will announce a deprecation time-frame.

Q: Would it be possible to setup the API to allow us to manage the guild from our web page?

A: No. We have no plans or intent to create APIs that allow any data to be modified.

Q: Are you planning on introducing XML or are you sticking with JSON?

A: We will continue with using and suggesting JSON and JSONP. We are also looking at support Protocol Buffers as a line-wire protocol. XML isn't completely out of the picture, but is lower in the list of priorities.
________________________________________________
The Chat Gem Lives!
Edited by Sixen on 4/19/2011 9:05 PM PDT
Reply Quote
90 Blood Elf Death Knight
16855
You may now add ColdFusion to the list of technologies which implements a wrapper to the WoW CP API. I've produced one, WoWColdFusionAPI, which can be found here:

https://github.com/Hanzo55/WoWColdFusionAPI

Enjoy.
Reply Quote
85 Goblin Warrior
710
Two extras for you:

python: https://github.com/dhask/PyWoW


from pywow import Realms, Realm

for realm in Realms(region = 'kr'):
print realm

for realm in Realms("Chants éternels", "Aggramar", region = 'eu'):
print realm.name, realm.status and "is UP" or "is DOWN"

print Realm("Uther")


javascript: https://github.com/dhask/JSWoW


<!doctype html>
<head>
<script src="/js/jswow.js"></script>
</head>
<body>
<script>
var jw = new JSWoW();
jw.region = 'eu';
jw.realms('Chants éternels', function(realms) {
alert(realms[0].name);
});
jw.realms('Борейская тундра', 'Aggramar', function(realms) {
alert(realms[0].status && realms[1].status ? 'Both up' : 'One or both down');
});
</script>
</body>


Both versions attempt to convert names to slugs. I don't think there's a decent definition of the slug translation; the Python version normalizes to NFKD then strips combining characters (effectively, removes accents). Javascript doesn't offer that many tools, so there's a strict transliteration from a set of accented characters to a set of unaccented characters. The following character map sufficient for all European realms:

"àáäâèéëêìíïîòóöôùúüûñçй" to "aaaaeeeeiiiioooouuuuncи"
Reply Quote
85 Human Paladin
0
Added my library through the fork method, also for reference it is here too : https://github.com/daegren/WCPAL
Reply Quote
85 Human Warlock
2865
I've started an ActionScript 3 library as well. You can find it here:
https://github.com/Spamcaster/WowActions
Reply Quote
90 Undead Mage
9525
New library in .net

https://code.google.com/p/n-battle-net-api/

Supports authentication when they add it
Reply Quote
Web & Mobile Team
07/07/2011 06:36 PMPosted by Femor
Supports authentication when they add it


Authentication is implemented right now. If you, or any other library developers, want a key for testing then please email api-support@blizzard.com.
Reply Quote
85 Worgen Warrior
0
Another .NET API: http://wowapi.codeplex.com/
Reply Quote
85 Tauren Druid
4135
Thanks, Taunkah. Are you the author of that project?

I think everything else should be up to date from forum posts and pull requests. Thanks, everyone, for adding your projects!
Reply Quote
85 Blood Elf Mage
2715
Didn't see this linked anywhere, maybe I'm blind, but here's the official PHP SDK: https://github.com/Blizzard/BlizzardSDK-PHP/
Reply Quote
Web & Mobile Team
Nissel,

That repo was a proof-of-concept that was not for public consumption - it must have been flagged public inadvertently and that has been rectified.
Reply Quote
85 Blood Elf Mage
2715
Oh whoops. So messaging the author with a bug was a bad idea? What I saw and cloned seemed to be licensed fairly freely, is it okay if I either A) use it for personal use, or B) make my own project of it on github?
Reply Quote
MVP
58 Blood Elf Death Knight
500
I doubt it's a bad idea, I'm sure he'll want to know there's a bug, :P.
________________________________________________
The Chat Gem Lives!
Fansite Administrator: DiabloFans, SC2Mapster, SC2Replayed
Reply Quote
2 Tauren Druid
0
Kindly add my library (.NET and Silverlight written in C#)

http://wowsharp.codeplex.com/
http://us.battle.net/wow/en/forum/topic/2973023467
Reply Quote
1 Dwarf Warrior
0
It appears this list is no longer maintained. I've added as requested a week ago, but still no update.

But here is my contribution:
I've been working on this for quite some time, but due to my main account is in EU region I haven't been able to post here yet.

http://sourceforge.net/projects/wowarmoryapi/

### Features ###
* Extract all information from Battle.net armory
* Handles guilds, characters and items.
* WoWHead integration for extracting remaining information like achievement names
* WoWHead integration for easy tool tip links
* Full cache to limit connections and ensure speedy information
* Generates emblems based on guild tabard design
* Add your guild level to the emblem
* Built in sorting and filtering
and much much more..

Please let me know what you think of this and give me ideas on how to improve.

Br,
Gro
Edited by Growar on 8/16/2011 6:50 AM PDT
Reply Quote
90 Night Elf Priest
15370
I have created a Java library:

https://github.com/chalverson/wowjavaapi

There is only one small external dependency and it's in the documentation. The API is fairly well documented.
Reply Quote
90 Worgen Death Knight
8025
I forked the Battle.net Api by Khepri repo and adapted it for PHP 5.2 for those who are using hosts that have not / cannot yet convert to 5.3:

https://github.com/jfaucher/blizzard-api-5-2

It requires some adaptation, but its a start

~Timetick
Reply Quote
85 Tauren Death Knight
7495
08/16/2011 06:49 AMPosted by Growar
It appears this list is no longer maintained. I've added as requested a week ago, but still no update.


My apologies for this! The past couple months have been crazy for me--moving to a new place and starting a new job. But, I am back to having a development machine again and I hope to keep up with this list a bit better.

I'll try to make it a point to catch the projects listed in this thread that I've missed, but the best way to get your project on the list is to fork the repository listed and send me a pull request on GitHub.

Happy coding!
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Reason
Explain (256 characters max)
Submit Cancel

Reported!

[Close]