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.
 

Newbie CREST question

Author
Guerrin Stone
The Scope
Gallente Federation
#1 - 2016-08-15 12:10:55 UTC
Hello All,

I have been gone from the game quite awhile and recently returned. As part of getting back into the swing of things I have been playing around with CREST data, specifically the market data.

I have recently noticed that when making calls to /marketOrders not all the embedded endpoints work for me. Using the Jita/Trit example given in the developer docs I get all the orders and the URL for the following location works fine:
...
location: {
id_str: "60000448",
href: "https://crest-tq.eveonline.com/universe/locations/60000448/",
id: 60000448,
name: "Urlen VII - Moon 6 - Hyasyoda Corporation Refinery"
}
...

However, in that same /marketOrders call another order has the following location reference who's URL does not work for me:
...
location: {
id_str: "1021159407897",
href: "https://crest-tq.eveonline.com/universe/locations/1021159407897/",
id: 1021159407897,
name: "Perimeter - ♔ Perimeter V - Defenders Needed"
}
...

I'm assuming based on the names being returned that the difference has to do with traditional stations vs Citadels. Is this correct? I made the mistake of joining the orders to the station static data which is what I had done in the past with my Corp Orders and all of these fail of course. Is there some other source of location data you use for these locations? Does additional data even exist?

Similarly, if I click on the URL for one of the specific market order records being returned it also fails. Example:
https://crest-tq.eveonline.com/market/10000002/orders/4587398503/

Any idea why I get the order returned in the full set of /marketOrders but I cannot call the order individually?

Lastly - Is the set of market orders for my corp available via CREST? Right now I am using the xml api to get my corp orders then the CREST data to compare it against region/item data. Is this the best way?

Sorry for the newbie questions, a lot of this is new to me and I'm trying to tie it all together. I've read the crowd sourced docs over and over but it seems pretty thin. Any help or pointers is appreciated.
Messenger Of Truth
Butlerian Crusade
#2 - 2016-08-15 13:29:39 UTC  |  Edited by: Messenger Of Truth
You are correct to guess that the wierd types of locations are to do with citadels.

Currently there are 3 types of locations you can get via CREST order data:

1) standard npc station ids which you can look up in the SDE that CCP provide
2) player-owned conquerable station (outpost) ids. you can look these up at https://api.eveonline.com/eve/ConquerableStationList.xml.aspx
3) player-owned citadel ids. There is not yet any endpoint that CCP provide to look these up. In the absence of the ability to look these up, I've made a website which scrapes the citadel names from the market order data, and made this available via a JSON API.

In your example, you can query https://stop.hammerti.me.uk/api/citadel/1021159407897 to get info about that citadel. I've also made https://stop.hammerti.me.uk/api/citadel/all in case you just want to download a list of all citadels that have "leaked" via crest market orders. More info at https://stop.hammerti.me.uk/api/

Trade Hub Price Checker: stop.hammerti.me.uk/pricecheck

Visit "Haulers Channel" in game for all matters courier-related.

Structure name/system API: stop.hammerti.me.uk/api

Blacksmoke16
Imperial Academy
#3 - 2016-08-15 13:38:21 UTC
Yes the first one is a normal npc station that is also in the SDE. The second however is a citadel which the location endpoint does not work atm

Not atm, when™ CCP gets the location endpoint working for citadels then you could just look up the station ID in that to get region/sys/station etc info. The best you can do atm is getting station name and parsing out the sys name in the citadel's name for region/sys info.

As to the "https://crest-tq.eveonline.com/market/10000002/orders/4587398503/ " not working. I am pretty sure because that endpoint does not use GET. It uses POST and requires authentication with the characterMarketOrdersRead or corporation scope.

As to the best way to get corp market orders, i never personally dealt with the market order endpoint so if someone else has a better idea then please correct any errors. But as i as remember i think you would be best getting authed crest so that you can use the orders endpoint. Then use the xml api to get the order IDs and look them up thru crest.
Guerrin Stone
The Scope
Gallente Federation
#4 - 2016-08-15 15:46:47 UTC
Thanks for the info, it helps put things in perspective. Sounds like my next step is to get auth up and running so I can use the secure endpoints and incorporate them into my work.
Messenger Of Truth
Butlerian Crusade
#5 - 2016-08-15 16:27:25 UTC
Quote:

Lastly - Is the set of market orders for my corp available via CREST? Right now I am using the xml api to get my corp orders then the CREST data to compare it against region/item data. Is this the best way?


I think you can't get much corp info out of crest yet - only char info.

Trade Hub Price Checker: stop.hammerti.me.uk/pricecheck

Visit "Haulers Channel" in game for all matters courier-related.

Structure name/system API: stop.hammerti.me.uk/api