open All Channels
seplocked Assembly Hall
blankseplocked Make the API a first-class citizen - Redesign it and make it stable
This thread is older than 90 days and has been locked due to inactivity.

Pages: [1] 2 3 4

Author Topic

LaVista Vista
Conservative Shenanigans Party
Posted - 2009.12.17 18:54:00 - [1]

So this is a long-standing issue. It needs to be dealt with.

At fanfest, CCP kept harping on about how the API was important to them and they hate taking it offline. I even remember vague promises of them not taking the API offline all that much anymore.

Since dominion, we have seen the API taken offline over and over again. Sure, it might be due to an underlying issue and them having to preserve resources.

But in that case the problem comes down to the API being poorly implemented. And rightfully so. The API only offers XML. If it was done right, we'd be able to get a JSON version too without many extra lines of code.

Lets make it simple. CCP needs to get the message that the API needs to be looked at. We need a new API that we can rely on. We can't with the current one. The current bouncy ball of an API is an insult to the third-party developers together with the limitations that are put onto, for instance, the mail API.

We want to know what their plans are to keep the API up to the exact same up-time as TQ. TQ is just as important as the API. The API is just as important at TQ. There's no difference, it's the same thing.

Here's to hoping that the CSM will take this to Iceland and explain to CCP the importance of a stable API.

Sol Enterprises
Posted - 2009.12.17 18:55:00 - [2]

Edited by: Baeryn on 17/12/2009 18:56:50

Alaki Kant
Selective Pressure
Posted - 2009.12.17 18:56:00 - [3]


First CityWide Change Bank

Posted - 2009.12.17 18:57:00 - [4]

Signed. My corp depends on the API to function.

Gentlemen's Agreement
Posted - 2009.12.17 18:57:00 - [5]

Agreed^10000 Razz

Zaryn Zoran
Posted - 2009.12.17 19:00:00 - [6]

I am involved with a corp which requires the API in order to function within the realms of sanity. I think it is important to focus on basics such as ensuring the API is up whenever Tranquility is up.

Once we have that, it would make sense to look into things such as alternative formats staging sites. Another example is having an API available from the preview grid (singularity) would be great in the lead up to new expansions.

Just to re-iterate - many corps require the API to really function well and enjoy the game. Thus the API should be considered a crucial portion of the Tranquility.


Ahro Thariori
Posted - 2009.12.17 19:07:00 - [7]

RJ Nobel
Nobel Research and Development
Posted - 2009.12.17 19:08:00 - [8]

Signed. 100% support for devoting whatever resources are necessary to keep the API at TQ-level uptime and stability.

Vanguard Frontiers
Intrepid Crossing
Posted - 2009.12.17 19:11:00 - [9]



Drake Draconis
Shadow Cadre
Shadow Confederation
Posted - 2009.12.17 19:37:00 - [10]


Amy Garzan
Posted - 2009.12.17 20:05:00 - [11]


Squizz Caphinator
Posted - 2009.12.17 20:20:00 - [12]

ESAM is useless when the API is down


Posted - 2009.12.17 20:21:00 - [13]


Herschel Yamamoto
Nabaal Syndicate
Posted - 2009.12.17 21:01:00 - [14]

Fully agreed.

Solo Drakban
Goonswarm Federation
Posted - 2009.12.18 00:10:00 - [15]

Edited by: Solo Drakban on 18/12/2009 00:11:11
A format change is unnecessary. Any number of proxies or message brokers should be able to handle the transparent change of data format for you or you could roll your own with a little effort. Part of a current goon project is to do exactly that, abstract the API data into a different format (and abstracing multiple API calls to return a single unified set of data), but I digress.

What is needed are some base-level technical changes to make the API more reliable and generally better standards compliant. I've brought some of these up in the past:

-- Error responses should not produce a 200 HTTP code. Error responses should produce an appropriate HTTP response code with the XML provided giving more information. For example the current situation shouldn't be producing HTTP 200 responses to clients but rather HTTP 503 - Service Unavailable with the same XML.

-- Use appropriate HTTP Cache headers. Then just about any standard HTTP proxy could be used to cache the data without having to write a ton of code. This goes hand in hand with my first point. HTTP is a well defined standard. It has many things to handle a lot of the crap that CCP decides to stick into it's XML for some reason like current server time and expiration dates. Why should I need to parse XML to determine when I should cache this data until? Use Expires: and Cache-Control: headers! (Well, technically you do set cache-control headers declaring the content private so you got part of it right)

-- The XML is god awful but we won't get into that as it's probably too late to un**** that screw-up not to mention breaking all existing apps out there. Maybe for version 3?

-- More API's returning larger sets of data. I'm not sure what's more load on your system, being able to get a list of state for all towers for a corporation at once or having to call /corp/StarbaseList.xml.aspx, parse that, loop over the results and then call /corp/StarbaseDetail.xml.aspx 400 times. HTTP keepalive helps here, but is it necessary? Why can't I just call /corp/StarbaseDetail.xml and get all of the details?

-- I can't recall off the top of my head but I seem to remember the API not doing on-the-fly compression of result sets. Might want to consider doing this as well, not only to reduce bandwidth (since the XML is amazingly compress-able) but also speed up transactions overall.

Oh, yes, and the last point:

-- If TQ is up, the API should be up. There should also be an API for Sisi for testing of upcoming API changes.

Goonswarm Federation
Posted - 2009.12.18 00:16:00 - [16]


Nabaal Syndicate
Posted - 2009.12.18 01:00:00 - [17]

Yay for api.

Posted - 2009.12.18 01:12:00 - [18]

Edited by: Ellisonja on 18/12/2009 01:12:15
Yes, information pulled from the API means I don't need to log in to check things.

Keldar Anassi
Big Bad Wolves
Posted - 2009.12.18 02:48:00 - [19]

I totally agree with this! Not only is the mail API totally lame, I mean common why only us to view the title, but also ISK management.. What we need that would make things really cool is a way to transfer ISK between characters/corporations via the API.. some kind of a "ACH" System where a person can send a "Bill/invoice" via the API and then the receiving party can decline or pay the bill ingame or via an api website..

This would greatly help the ISK for Service sites out there, and especially the EVE Banks. Just a thought.

Dr BattleSmith
PAX Interstellar Services

Posted - 2009.12.18 03:32:00 - [20]

The API needs to join the 20th century.

oAuth authentication for a start rather then this garbage keys stuff.

Omega Flames
Bene Gesserit ChapterHouse
Sanctuary Pact
Posted - 2009.12.18 11:18:00 - [21]

ZigZag Joe
Di-Tron Heavy Industries
Posted - 2009.12.18 11:33:00 - [22]

Originally by: Solo Drakban

Agreeing with a goon.

Posted - 2009.12.18 12:23:00 - [23]


Desmont McCallock
Posted - 2009.12.18 17:25:00 - [24]

As an EVEMon contributor. Signed.

darius mclever
Posted - 2009.12.18 19:03:00 - [25]

Agony Unleashed
Agony Empire
Posted - 2009.12.18 20:38:00 - [26]

I support your idea and wish to subscribe to your newsletter

Posted - 2009.12.18 22:02:00 - [27]

Rocking this, especially now, that they have taken the API down all weekend.

Black Nova Corp
IT Alliance
Posted - 2009.12.18 22:12:00 - [28]


Armageddon Day
Posted - 2009.12.18 22:48:00 - [29]


The Citadel Manufacturing and Trade Corporation
Posted - 2009.12.18 23:07:00 - [30]

When TQ is up and the API is down, we're losing out on temporal data -- jumps, kills, and sov -- that we can't get later.

Pages: [1] 2 3 4

This thread is older than 90 days and has been locked due to inactivity.


The new forums are live

Please adjust your bookmarks to

These forums are archived and read-only