These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE Technology Lab

 
  • Topic is locked indefinitely.
 

EVE API and Public CREST discussion

First post First post First post
Author
CCP FoxFour
C C P
C C P Alliance
#581 - 2014-08-27 08:46:55 UTC
There is some documentation here: https://neweden-dev.com/Category:CREST

It's not very complete due to... well me being a lazy ... something. You can get that same documentation though from us. Say you want the documentation for the new system costs. And maybe you don't know how to find where the system cost resource is located. The following is how you would go about it:

  • Go to https://public-crest.eveonline.com/ As CREST is a RESTful API everything should be linked from the root in some way. So you can always explore the links in the root to see what exists. Note however that many of the links in the root will return 404 (I think it's 404) as we have not exposed them on public CREST yet. Public CREST is a bit of a hack.
  • After browsing through the links from the public CREST root and finding a resource you want more information about simply take that same resource and do an OPTIONS call on it from CREST instead of public CREST.
  • Example: You want details on https://public-crest.eveonline.com/wars/ resource. Instead of doing a GET request do an OPTIONS request and do it on https://crest-tq.eveonline.com/wars/ and from that you will get complete documentation of the resource. This OPTIONS call is applicable to all resources. Even if you don't have access to them.
  • The above is how the documentation on NewEden-Dev was being grabbed.
  • Enjoy!

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

CCP FoxFour
C C P
C C P Alliance
#582 - 2014-08-28 11:43:13 UTC
Just deployed a quick update to the EVE XML API to fix a permissions issue on the corp blueprints endpoint. It was set to use the industry access mask instead of asset list. Sorry.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

Chips Merkaba
Holy Ankh
#583 - 2014-08-28 13:26:22 UTC
With new feature "pay to another character playing time" by Plex - I want know who I bought it and see it in transactions.

Is it possible to determine through the API in transactions or journal who was paid for playing time with Plex?
CCP FoxFour
C C P
C C P Alliance
#584 - 2014-08-28 19:41:46 UTC
Chips Merkaba wrote:
With new feature "pay to another character playing time" by Plex - I want know who I bought it and see it in transactions.

Is it possible to determine through the API in transactions or journal who was paid for playing time with Plex?


Not that I am aware of. Will talk with the team that did this.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

Capt Out
Blue Republic
RvB - BLUE Republic
#585 - 2014-09-04 22:43:31 UTC
Here's a handy way to explore the CREST API http://jimpurbrick.com/crestexplorerjs/#https://public-crest.eveonline.com/ which also makes a useful example JavaScript client. The code is here https://github.com/jimpurbrick/crestexplorerjs .
Capt Out
Blue Republic
RvB - BLUE Republic
#586 - 2014-09-04 22:56:04 UTC
The new documentation is a bit strange in the way that it mixes descriptions of resources and representations in with HTTP details like supported verbs and cache times.

In an ideal world the documentation should just list the available resources and the representations of them. Verbs should work consistently across the whole API (POST to a collection to create a new entity, PUT to update a resource) and caching information shouldn't need to be documented.

A bit like this http://web.archive.org/web/20131222060521/https://wiki.eveonline.com/en/wiki/CREST_Documentation Blink
Capt Out
Blue Republic
RvB - BLUE Republic
#587 - 2014-09-04 23:15:56 UTC  |  Edited by: Capt Out
Oh, you're generating the documentation from OPTIONS (sorry I finally read your post properly, finally).

So, people can generate their own documentation from the API to some extent: neat!
John Euler
#588 - 2014-09-05 19:50:06 UTC  |  Edited by: John Euler
CCP FoxFour wrote:
As described in these patch notes: http://community.eveonline.com/news/patch-notes/patch-notes-for-crius

CORS headers and PI long/lat fix is out on TQ now. Let me know if there are any issues.



SOLVED: see bottom


Hi, I try to use the XML API with ExtJS but all my requests have failed so far.
The browser is sending the following headers in the preflight OPTIONS request:

Quote:

Access-Control-Request-Method:"GET"
Access-Control-Request-Headers:"x-requested-with"


The server, however, only sets the following header in the response:

Quote:
access-control-allow-origin:"*"


Chrome is a bit more verbose on that account, saying the following: "XMLHttpRequest cannot load http://api.eveonline.com... Request header field X-Requested-With is not allowed by Access-Control-Allow-Headers."

Does that mean that the server will need to allow the x-requested-with header or should I keep looking on the framework side for a solution?
Could somebody with more experience doing CORS take a look at it, please?

SOLUTION:

After some digging into the ExtJS framework sources, I discovered that it is indeed the framework that adds that extra header. I am posting my solution so that others may benefit from it. Put the following before your Ext.Application() call.
Quote:

Ext.onReady(function() {
Ext.data.Connection.prototype.useDefaultXhrHeader = false;
});
CCP FoxFour
C C P
C C P Alliance
#589 - 2014-09-09 10:35:14 UTC
We are deploying a few minor changes to the XML API today during downtime, nothing drastic just a few minor changes that were brought to our attention as something that should be fixed.

Fixing the columns!
The XML API has this concept of rowsets and rows. Each rowset has an attribute for columns which each row has. Depending how you implement your parsing of the data returned by the API you may or may not care about the columns. If you do care about the columns attribute you usually care about the order the columns are listed in along with spacing of the information. While we attempt to test the API as much as possible before deploying it to TQ, none of us (that I am aware of anyways) use the columns data and we often forget how important it is to you guys. So this morning I sat down and fixed a few instances where this was broken.

  • The corp/MemerSecurity endpoint had a space between characterID and name in the members rowset. This has been fixed.
  • The eve/CharacterAffiliations endpoint had the columns in completely the wrong order and this has been changed to match how the data is actually returned.


These fixes are very quick and easy for us, so if you are aware of any other problems with column data please let us know. Also feel free to politely remind us when we release changes that break this of how important it is to you.

ContactList and the WatchList
The char/ContactList endpoint now returns an attribute called “inWatchlist“ for each contact in the contactList rowset (and yes, we added the attribute to the column information in the correct order). This is a simple Boolean value that should let you figure out which of your contacts are on your watch list or not. Someone asked for this and it was easy, not really sure how you will use this but since it was so easy why not! :D

Example output: http://pastebin.com/NYQjXZ1i

As I said at the beginning of the post, nothing crazy just a few minor changes to help improve the life of third party developers.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

Cor'len
Doomheim
#590 - 2014-09-10 00:23:18 UTC
CCP FoxFour wrote:

ContactList and the WatchList
[...]

Example output: http://pastebin.com/NYQjXZ1i

(snip)
contactName="CCP Hellmar" standing="-10"
(snip)


Not the greatest relationship with your boss, I take it? P
Drailen
Doomheim
#591 - 2014-09-11 21:08:20 UTC
Is it possible to get a fix for the IndustryJobs API returning "0" and "" for the productTypeID and productTypeName attributes?

Ta very much.
CCP FoxFour
C C P
C C P Alliance
#592 - 2014-09-12 06:18:26 UTC
Cor'len wrote:
CCP FoxFour wrote:

ContactList and the WatchList
[...]

Example output: http://pastebin.com/NYQjXZ1i

(snip)
contactName="CCP Hellmar" standing="-10"
(snip)


Not the greatest relationship with your boss, I take it? P


Hehehehe Getting the corp CEO was easiest, to lazy to search, and I needed to test. It was him or Fozzie for -10. :)

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

CCP FoxFour
C C P
C C P Alliance
#593 - 2014-09-12 06:19:31 UTC
Drailen wrote:
Is it possible to get a fix for the IndustryJobs API returning "0" and "" for the productTypeID and productTypeName attributes?

Ta very much.


This is probably not the answer you want to hear, but I will be looking into that hopefully the week after next. I know it's a pretty high priority thing to fix, but we have some other stuff in the works that I need to get done first. :)

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

Drailen
Doomheim
#594 - 2014-09-12 06:55:07 UTC
CCP FoxFour wrote:
Drailen wrote:
Is it possible to get a fix for the IndustryJobs API returning "0" and "" for the productTypeID and productTypeName attributes?

Ta very much.


This is probably not the answer you want to hear, but I will be looking into that hopefully the week after next. I know it's a pretty high priority thing to fix, but we have some other stuff in the works that I need to get done first. :)
I would have been sad if you had said Soon™ but a couple of weeks sounds good!

Roshni Ellecon
Kirlian Enterprises
#595 - 2014-09-14 23:21:43 UTC
I've searched for this a number of times but can't find the answer so please excuse me if it's a duplicate and point me to the thread or resource.

I'm having problems with the PlanetaryPins API. What do I need to do trigger a refresh in the data? I've tried keeping the planet open in Planet Mode and clicking on each facility to open them up. Still the data is stale. I don't mind jumping through hoops to get refresh the data but at this point I'd be better off manually inputting the data... and I hate data entry.
Heat-seeking Moisture Missile
Deep Thought Labs
#596 - 2014-09-15 02:56:24 UTC
Shouldn't something like this be working?


https://public-crest.eveonline.com/corporations/109299958/



-confused
CCP FoxFour
C C P
C C P Alliance
#597 - 2014-09-15 08:19:41 UTC
Heat-seeking Moisture Missile wrote:
Shouldn't something like this be working?


https://public-crest.eveonline.com/corporations/109299958/



-confused


The Corporations resource has not been exposed publicly yet.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

CCP FoxFour
C C P
C C P Alliance
#598 - 2014-09-15 08:20:30 UTC
Roshni Ellecon wrote:
I've searched for this a number of times but can't find the answer so please excuse me if it's a duplicate and point me to the thread or resource.

I'm having problems with the PlanetaryPins API. What do I need to do trigger a refresh in the data? I've tried keeping the planet open in Planet Mode and clicking on each facility to open them up. Still the data is stale. I don't mind jumping through hoops to get refresh the data but at this point I'd be better off manually inputting the data... and I hate data entry.


Are you paying attention to the cachedUntil values? Also remember that PI only "updates" when you make a change. Other then that the data is all simulated.

@CCP_FoxFour // Technical Designer // Team Tech Co

Third-party developer? Check out the official developers site for dev blogs, resources, and more.

Steve Ronuken
Fuzzwork Enterprises
Vote Steve Ronuken for CSM
#599 - 2014-09-15 08:20:52 UTC
Heat-seeking Moisture Missile wrote:
Shouldn't something like this be working?


https://public-crest.eveonline.com/corporations/109299958/



-confused



Unfortunately, not all the endpoints are exposed (or even created.)

It's just easier to have them pointing like that on the existing ones, so you don't have to go back and change everything which points at them when they go live.

Woo! CSM XI!

Fuzzwork Enterprises

Twitter: @fuzzysteve on Twitter

Heat-seeking Moisture Missile
Deep Thought Labs
#600 - 2014-09-15 14:29:21 UTC
Ok. I appreciate the replies.

I'll wait patiently Blink