open All Channels
seplocked EVE Information Portal
blankseplocked New Dev Blog: The API Dev Blog Trilogy - Volume One
 
This thread is older than 90 days and has been locked due to inactivity.


 
Pages: 1 [2]

Author Topic

Chribba
Otherworld Enterprises
Otherworld Empire
Posted - 2010.09.21 07:50:00 - [31]
 

Edited by: Chribba on 21/09/2010 08:03:11
API SNIPER!

Originally by: CCP Stillman
Originally by: Selene D'Celeste
Edited by: Selene D''Celeste on 20/09/2010 18:01:19
Whoo API love.

Edit: How will site owners be contacted if they are causing issues via the API?

In most cases, we've been able to find the owner of a server by simply opening the site that is located on the server, or simply by the IP itself.

So please make sure that a domain is associated with your IP, so that we can figure out who owns the site. Having contact details on the site is even better.
Do you log any extra header or the likes? As most of my requests carry both the requesting api site in its User-Agent as well as an extra "X-Problems-Contact" header with the email... (probably just me overdoing it tho).

And can we PRETTY PLEASE have the similar log page for our account logins as well?!?!?!!?!111.

/c

Peter Tjordenskiold
The Executives
Executive Outcomes
Posted - 2010.09.21 08:03:00 - [32]
 

Edited by: Peter Tjordenskiold on 21/09/2010 08:05:58
Originally by: Jason Edwards
Database optimizations

We also found Microsoft SQL Server to be at fault. So we will be going to Postgresql 9.0: It has a lot of new stuff, including hot standby support, streaming replication, better permissions management, and a lot more.

Open Source is the future of CCP.


Play EVE and don't mess up with databases. :-)

1. Postgres is good but has some disadvantages
2. You don't shift a database like your underwear.

Abdiel Kavash
Caldari
Paladin Order
Fidelas Constans
Posted - 2010.09.21 09:41:00 - [33]
 

Quote:
Reserved servers

Over recent months we have seen some large spikes in response time from the API. This issue was resolved two weeks ago. We isolated the cause as another application that was running on one of our six API servers. We removed the offending application and immediately saw average response times drop dramatically.


CCP dev playing World of Tanks at work? Laughing

Golden Gnu
Gallente
The Golden Gnu Corp
Posted - 2010.09.21 10:31:00 - [34]
 

@CCP Fallout

Thank you for this blog and your work on the API.

I think it's awesome that the API is finally getting some love. Because the API is a fantastic feature!

I would really like to know how applications (AKA not websites) should identify them self to the API server. So, we can get informed of possible bad requests.

Hel O'Ween
Men On A Mission
EVE Trade Consortium
Posted - 2010.09.21 12:47:00 - [35]
 

Edited by: Hel O''Ween on 21/09/2010 12:51:47
Originally by: Golden Gnu

I would really like to know how applications (AKA not websites) should identify them self to the API server. So, we can get informed of possible bad requests.


A "proper" HTTP request always includes a "User-Agent" header. That's where I put name and version of my app. Most (if not all) webservers will allow you to log the user agent with their standard logging. This field is part of W3C's webserver log format.

That way, CCP GMs have at least the application name, whcih they can feed their preferred search engine with.

If they need more (dev contact info), I guess they should propose an HTTP header to be used by 3rd party devs similar to what Chribba mentioned above. Although that would also mean all apps have to use the recommended way of querying the API with a HHTP POST request, not the lazy HTTP GET. Wink

Altaree
The Graduates
Morsus Mihi
Posted - 2010.09.21 13:57:00 - [36]
 

Originally by: CCP Stillman
Originally by: Selene D'Celeste
Edited by: Selene D''Celeste on 20/09/2010 18:01:19
Whoo API love.

Edit: How will site owners be contacted if they are causing issues via the API?

In most cases, we've been able to find the owner of a server by simply opening the site that is located on the server, or simply by the IP itself.

So please make sure that a domain is associated with your IP, so that we can figure out who owns the site. Having contact details on the site is even better.

How about adding a contact-email optional element to ALL request schemas?

Dav Varan
Posted - 2010.09.21 14:27:00 - [37]
 

Have you ever looked into the benifits/pitfalls of providing bulk KillMail data to external sites.

Lets say BC and any other KBs with over a 1000 api keys can request all KM's to be sent to them via an RSS feed or similar mechanism.

Would this hep reduce load ?

signoredems
Posted - 2010.09.22 02:21:00 - [38]
 

Originally by: Jason Edwards
Database optimizations

We also found Microsoft SQL Server to be at fault. So we will be going to Postgresql 9.0: It has a lot of new stuff, including hot standby support, streaming replication, better permissions management, and a lot more.

Open Source is the future of CCP.


deadlocks and index fragmentation in MSSQL Server have been the bane of my existence ever since my company's flagship application started seeing moderate amounts of traffic. don't let MS or anyone else tell you it is because you don't know what you are doing; i have my MCDBA and MCTS in MSSQL 2000 and 2005 respectively and i fight with database performance and optimization constantly despite following best practices

TornSoul
BIG
Gentlemen's Agreement
Posted - 2010.09.22 03:10:00 - [39]
 

Originally by: CCP Stillman (devblog)

Over the last month or so, CCP PrismX, the operations team and I have been working on improving the overall performance of the API


It's great to know that someone is working on (and monitoring) the performance of the API.

I'm however curious to know if anyone is actually working *on* the API itself?
I.e. it's general functionality (and lack of same)

Or is the API still the evil step-child, that only gets looked at, by whatever idle hands are at hand, when it screams high enough (i.e. misbehaves...)

In short - Is there now an "API team" in existence?



CCP Prism X


Gallente
C C P
C C P Alliance
Posted - 2010.09.22 08:35:00 - [40]
 

Originally by: TornSoul

...
I'm however curious to know if anyone is actually working *on* the API itself?
...
In short - Is there now an "API team" in existence?



Me and Stillman are actually working on the API itself. Being a DB Developer puts me in a position where I'm also quite useful at troubleshooting performance bottlenecks in the database and that's why I've been working with Ops on improving overall performance. I'm still a developer! Wink

I wouldn't go as far as to say there was a dedicated team for the API at the moment as that might imply an entire SCRUM team working on it. I am however completely dedicated to the API for the time being. During this time a lot of other people have been dragged into the project. I still wouldn't go as far as to call it a *team* but there are resources available to us that I didn't know where to find earlier. Stuff is generally looking a whole lot better, you'll see.

There will be a couple of other Dev Blogs concerning the API before the next point release.

yani dumyat
Minmatar
Pixie Cats
Posted - 2010.09.22 10:15:00 - [41]
 

Edited by: yani dumyat on 22/09/2010 10:25:16
Hi, I have a request for those of us who do not have much computer knowledge. In one of the upcoming dev blogs could you please write a small explanation of what the API is in laymans terms. Of particular use would be a list of all information that is made available when giving over your API.

If you're feeling in a good mood you might also want to take a look at the API management page on the eve-o website:

Originally by: CCP API Page

Limited Access API Key
Allows access to character sheet and skill training information only. Use this for applications such as skill change notifiers.



I suspect that quite a lot of new players take that at face value, only to discover later that it also gives access to who your alts are and possibly other information such as wallet balance? It would be nice to see that page updated with exactly what information you make available when giving out your limited or full APIs.

Anyways, many thanks to all who work with the API on both the CCP and 3rd party sides. Very useful feature :)

Edit: Also searched for API on evelopedia and discovered something called ale, ale is always a good thing to discover though I prefer the sort that comes in a pint glass. Perhaps some community spirited person might want to write a page on the API, I'd do it myself but as you can tell from this post I'm probably the last person you'd want writing that wiki. Wink

CCP Prism X


Gallente
C C P
C C P Alliance
Posted - 2010.09.22 10:19:00 - [42]
 

I actually have a meeting at the start of next week regarding the state of the API documentation.
Will make a note of bringing this up.

yani dumyat
Minmatar
Pixie Cats
Posted - 2010.09.22 10:26:00 - [43]
 

Originally by: CCP Prism X
I actually have a meeting at the start of next week regarding the state of the API documentation.
Will make a note of bringing this up.


Thank you. Smile

FT Cold
Mission Runner Exclusive
Posted - 2010.09.22 14:28:00 - [44]
 

Read about the API table, first thing that screamed at me was to have it as a partitioned table with aligned indexes in a sliding window style. Having said that I have no clue what your system looks like so... meh.

CCP Stillman

Posted - 2010.09.22 17:28:00 - [45]
 

Originally by: CCP Prism X
Originally by: TornSoul

...
I'm however curious to know if anyone is actually working *on* the API itself?
...
In short - Is there now an "API team" in existence?



Me and Stillman are actually working on the API itself. Being a DB Developer puts me in a position where I'm also quite useful at troubleshooting performance bottlenecks in the database and that's why I've been working with Ops on improving overall performance. I'm still a developer! Wink

I wouldn't go as far as to say there was a dedicated team for the API at the moment as that might imply an entire SCRUM team working on it. I am however completely dedicated to the API for the time being. During this time a lot of other people have been dragged into the project. I still wouldn't go as far as to call it a *team* but there are resources available to us that I didn't know where to find earlier. Stuff is generally looking a whole lot better, you'll see.

There will be a couple of other Dev Blogs concerning the API before the next point release.

For reference, I'm the QA person on the API. So I deal with all bug-reports that get submitted through the bug-hunters, test all new stuff and regression testing on refactoring that goes on.

And I can only second PrismX's sentiment :)

CCP Prism X


Gallente
C C P
C C P Alliance
Posted - 2010.09.22 17:43:00 - [46]
 

Originally by: CCP Stillman
For reference, I'm the QA person on the API. So I deal with all bug-reports that get submitted through the bug-hunters, test all new stuff and regression testing on refactoring that goes on.

And I can only second PrismX's sentiment :)


Just so no one misunderstand the situation here.
Without dedicated QA that fully understands the customer side usage of the API: Nothing much would be happening for the API. If something would be happening it would be breakage of currently functional code. Wink

QA is the best worst enemy a developer can have. Cool

TornSoul
BIG
Gentlemen's Agreement
Posted - 2010.09.23 05:56:00 - [47]
 

@PrismX & Stillman

Thank you very much for your reply.

I have to say it's the most encouraging news I've seen regarding API development in years.

I understand it's not a full fledged SCRUM setup, and frankly I'm not sure that much of "muscle" is even needed to maintain and evolve the API.

So heres to hoping you'll be given enough time, both now and later, to actually take care of the API as it deserves.


Hel O'Ween
Men On A Mission
EVE Trade Consortium
Posted - 2010.09.24 15:12:00 - [48]
 

Edited by: Hel O''Ween on 24/09/2010 15:13:27
Originally by: yani dumyat

Of particular use would be a list of all information that is made available when giving over your API.



Not exactly what you were asking for, but this is the most accurate documentation availbale so far.

It's aimed towards developers, so not everything in there will make sense for you. But you should be able to understand what information can be accessed via the API.

[Added]
And Yay! for looking after the official APi documentation. Smile

Vaerah Vahrokha
Minmatar
Vahrokh Consulting
Posted - 2010.09.24 15:39:00 - [49]
 

@CCP Devs

I work with APIs "for a living" as auditor.

I get a lot of flak because they give out too little but too much at the same time.

I.e. there is no viable granularity in what they provide.

Could you add some preference where a player can enable or disable the ability to fetch all the alt names, to only enable wallet monitoring (and nothing else) and similar?

CCP Stillman

Posted - 2010.09.24 18:56:00 - [50]
 

Originally by: Vaerah Vahrokha
@CCP Devs

I work with APIs "for a living" as auditor.

I get a lot of flak because they give out too little but too much at the same time.

I.e. there is no viable granularity in what they provide.

Could you add some preference where a player can enable or disable the ability to fetch all the alt names, to only enable wallet monitoring (and nothing else) and similar?


This is something that PrismX and I regularly discuss. Sadly, it's a very major task, which wouldn't make much sense to hack in, when there's so many different ways we can do this differently than we do now, which would vastly improve the overall quality of the API.

At this point, we're focused on delivering the next version of the API, which will be discussed more in depth at some point in the future. So I obviously can't speak about what we might do after that, as nobody knows to be frankly honest. We do have a backlog, and what you describe is in there, and it's something I'd love to see personally. But I don't get to decide such things, and there's technical limitations as well :(

Epitrope
The Citadel Manufacturing and Trade Corporation
Posted - 2010.09.24 19:24:00 - [51]
 

Originally by: CCP Stillman
Originally by: Vaerah Vahrokha
...

I.e. there is no viable granularity in what they provide.

...


This is something that PrismX and I regularly discuss. Sadly, it's a very major task, which wouldn't make much sense to hack in, when there's so many different ways we can do this differently than we do now, which would vastly improve the overall quality of the API.

At this point, we're focused on delivering the next version of the API, which will be discussed more in depth at some point in the future. So I obviously can't speak about what we might do after that, as nobody knows to be frankly honest. We do have a backlog, and what you describe is in there, and it's something I'd love to see personally. But I don't get to decide such things, and there's technical limitations as well :(



This was discussed a little bit on IRC when the API was first being developed, and I was under the impression that the code allows for up to 256 API keys with variable permissions (of which we're using two, named "limited" and "full"), but sorting out the UI was difficult enough that it got bumped down in priority and never finished. Is that in fact the case? What technical limitations are in the way?

CCP Stillman

Posted - 2010.09.24 19:33:00 - [52]
 

Originally by: Epitrope

This was discussed a little bit on IRC when the API was first being developed, and I was under the impression that the code allows for up to 256 API keys with variable permissions (of which we're using two, named "limited" and "full"), but sorting out the UI was difficult enough that it got bumped down in priority and never finished. Is that in fact the case?

If that was the case, we'd have done it a long time ago. So no, it's definitely not the case, sadly.

Xpaulusx
Perkone
Posted - 2010.09.29 15:14:00 - [53]
 

CCP is on a roll, new ship, API work, plus other good stuff........Outstanding Very Happy


Pages: 1 [2]

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


 


The new forums are live

Please adjust your bookmarks to https://forums.eveonline.com

These forums are archived and read-only