7 years ago*

Comment has been collapsed.

I have no idea what this means but it sounds fascinating and extremely useful, so thanks for doing that. :P

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Heh, my comment was kind of tongue in cheek as I kinda know the basics of what an API is, but that was actually a pretty good read and explains/clarifies better what I thought I knew. Thanks. :P

7 years ago
Permalink

Comment has been collapsed.

you're awesome, it's easier to understand this way

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

AWESOME!

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Ah, pretty useful for those that has projects that requires pulling info from sg. Good job!

7 years ago
Permalink

Comment has been collapsed.

Nice work! Looks like we have been working on similar projects :-)
How do you check whether a game was free?
Do you have an example app where you used the API?

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

That really sounds like a tricky one. It may get easier soon though, as cg thinks about removing the ban on free games.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Crap, you're right. Well, since a game can not be un-given-away (is that a word?), at least you can cache the results permanently, so usually this should not be an issue, right?

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I see ^^

7 years ago
Permalink

Comment has been collapsed.

yes, well.. sort of.. rule-breakers cleaning up their act and fixing old mistakes is possible.. not very often, but however little that may happen it causes this not to be a perm caching or it would end up inaccurate.

example: random sg user dual won 2months ago, and just realized that it was against the rules so they purchase the game on steam store and send the gift back to the gifter for a re-roll.

or an agreement to delete a giveaway after time has passed as well.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

oh okay, i see.. i didn't read back far enough for the whole story.. my bad.. i think you're right. xD

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

add a donate to keep the host alive option for script users :P i know you don't and won't accept donations for your scripts, but for hosting i think several script users would love to assist.

i can't always assist, but certainly would love to help when i can to keep the host alive if you'd be willing to accept it ofc. xD

7 years ago
Permalink

Comment has been collapsed.

I would like to help Sighery too.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

oh i fully understood why you wouldn't accept donations towards your work, but as for hosting an api, that's not your problem all by your lonesome. really it should be hosted by SG itself, but since it's not that's where i think a pool of donations towards the hosting only (not your services) could come in handy so it could be a strong host that would be plenty of bandwidth to not really run into issues in the future, and be moderately to even heavily utilized.

but ofc thats your call, not gonna push you. ^^ i can understand how it might still feel too weird to accept. =)

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

ahh very nice xD
great domain too ^^

good luck with the updates.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

hehe, i meant more on the .com instead of the cheaper .net or .regional domains.
but yeah, nicknames always make a great domainname.. especially those with a low character count. xD

7 years ago
Permalink

Comment has been collapsed.

Nice
Looking forward to your API

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I'm sure it'll has more improvisation in the future. lol

I've also just added the documentation on how to host your own version of the API, in case you, or someone else, is interested in doing so

I've already make SG bundle API long time ago. I just don't make a documentation about it and handles error as detail as your API. You did a very neat job there.

EDIT: I noticed you put a wrong link in http://api.sighery.com/documentation/steamgifts/igiveaways.

game_type: Integer. Contains the type of game, or null if the game being given away is not on Steam. Check the translation dictionary of game_type for more information.

The link refers to wrong translation page. I'm not sure if I should report this as issue in Github or just let you know from here.

7 years ago*
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago*
Permalink

Comment has been collapsed.

Edit 2: Annoyed me so much that I got out of bed, turned on my laptop and fixed that stuff, now back to bed :X

LOL. I know that feeling.

Would you like your code to be included into the API? Of course, you would get all the credit, I would just change stuff like the connection to my own DB, routing for the HTTP request and such, not really stuff about the code you wrote for the parsing and other things.

Sure, I don't mind. It's just I still haven't make my bundle list to sync automatically. So I might a bit late to sync and some games would be late to be added in my bundle list. I also haven't asked knsys about his way to get bundle list.
Lately I've been very lazy to code and stuff. @_@

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I thought you were thinking of just connecting my http://ruphine.esy.es/steamgifts/GetBundleStatus.php to yours
You would just need this lines in your php file

echo file_get_contents(http://ruphine.esy.es/steamgifts/GetBundleStatus.php');

For the source code, if you need it, I'll share it to you tomorrow, it's almost midnight here.

I just use // @connect ruphine.esy.es in the script header, and also // @connect steampowered.com for Steam API.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago*
Permalink

Comment has been collapsed.

Without connect TM will ask permission to access external page, and user has to choose allow once / always allow / something like that.
It have already been like that even before I use my own server.

Here is my source code

EDIT: forgot to mention this
I did write there about Updated column, if a game is removed from SG bundle list, that game won't be updated anymore, so its Updated column will be remain the same. Just sort the table by Updated ASC and you'll see the game that is removed.

7 years ago*
Permalink

Comment has been collapsed.

Oh so this is the secret thing you were working on. :P Looking great, I look forward to seeing it finished. :) I remember someone tried to make one a while ago but ended up giving up. :/

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I've been toying around with this API :) Setting-up was a bit of a struggle, but I've managed to get it working. Some feedback, the first is why are you using your pre-generated session_id? You could just ask for a new random anonymous session_id (when none was given). The code below is what I'm now using for that (not the best piece of work, but it works ^^).

<?php
// Get a fresh session
$context = stream_context_create(
    array(
        'http' => array(
            'follow_location' => false
        )
    )
);
$html = file_get_contents('https://www.steamgifts.com/', false, $context);

// Parse the cookie data
$cookie = $http_response_header[9]; // element number might vary per server?
$cookieParts = explode(';', substr($cookie, strpos($cookie, 'PHPSESSID=')+10));
echo $cookieParts[0];

Of course, notifications etc. wouldn't work then, but I'm looking to use it for a group management tool :) I've added you on Steam for another point. Didn't get to use and review all the code yet, but for now it looks very useful, thanks for your work.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I like signing of all my requests so Cg can keep track of that stuff

I assume that your requests - if they are monitored at all - will be monitored by IP-adres anyway, as stated in the Privacy Policy, so not based on user-accounts or user-agents. Causing a too high load would just getting your IP throttled or maybe banned.

You'll probably want to put your PHPESSID cookie then, or else you won't be able to access the giveaways

The thing with using your user-token is that I'm not very confident about doing so would be allowed, the Terms of Service don't seem to forbid scraping with your user account, however it does state that "You are fully responsible for all activities that occur under your account and any other actions taken in connection with your account.". The last thing I'd want is to get my account being banned for suspicious behavior (and the text "SteamGifts may terminate your access to all or any part of the Website at any time, with or without cause, with or without notice, effective immediately." is not helping me feel like taking a risk with that). This is your choice, but certainly when offering a public API one I'd reconsider or to ask the site administrators for permission.

As for anonymous sessions, I see others tools as sgtools being allowed and also the website doesn't have a robots.txt (so the website allows robots and spiders), so I can presume that's alright. As for the group management tool, the group pages (with winner) are public domain (example), and by the username I can find the users with your tool. ^^

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I tried to contact

That's a point you can make then, the main difference is simply (and only) the role of being a Guest vs. a Member. I hope for the best and maybe one day the permission will come (..dreaming of a special API session token.. ^-^). You took allot of precautions with the catching already, but hate to see a account getting banned (were a server IP could be changed).

Wouldn't always work, that would only work up to 3 copies

Good point that I didn't consider yet! Guess some more thinking or manual labor will be needed then (..dreaming of XML/JSON pages..)

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Looks good. I saw this a couple weeks ago but never paid much attention to it. But its now bookmarked for when I start on something in a few weeks. This may come in handy. I've only given it a quick look over for now.

For now. IUsers looks useful to me right away. I'm manually getting some data currently as I only do it rarely. As such I've not bothered to write code to return the data. Your already returning it. It would be easy call your api to get what I'm doing manually.

Note. Your examples in the docs for "IsFree" return errors. This might just be the game ids in question and not your code. All I've done so far is click each example in your various sections to see what kind of data is being returned.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Bump ^^ Great tool for group management, reading out group members and giveaway information.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Click the renew button! :P

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Still going strong in the final hours...

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

oh, does that mean... in a couple days anyways.

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Nice! =)

& coincidentally i paid for mine today too. lol
price went up a lot from last year though :S

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Lol

7 years ago
Permalink

Comment has been collapsed.

^^
i'd call that suspend worthy indeed, though they probably changed name after suspend xD

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

you still have access to support & sync/settings, so i think so.

7 years ago
Permalink

Comment has been collapsed.

I must say, that is a very nice profile picture. xD

7 years ago
Permalink

Comment has been collapsed.

Please just accept the love people want to give you. :p We are grateful for you and want to show it.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

He means your API is raising his libido !

7 years ago
Permalink

Comment has been collapsed.

:'D

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

It was just an euphemism for the support I have seen in this thread. You seem to tend to trivialise your work. While it might be true from the point of view of an expert you are helping a lot of people who couldn't do such a thing themself with your various projects.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Yeey :) That saves allot of manual adding of winners to giveaways. On behalf of the Playing Appreciated group a big thanks!

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Sure ^^

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Thanks for the API, it works like a charm.. :3
(Never know this exist before)

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Thanks for the heads up, I'm still pretty new with this API things ^^

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Looks like I can't read region locked / whitelist / group giveaway using your API because I didn't logged in.
So, what should I do?

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Oh well that sucks..
For error code I already read it and implement it. but since it can't read region locked / whitelist / group giveaway, my bot can't read the details so I though asking you here (and possibly using steam openid since I can provide websession and cookies)

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I can suggest is if you have your server host your own version of the API

That's what I was thinking first, but I don't have server.. XD
Anyway, thanks for the explanation

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Do you know how much load this would put on the server if used? I remember asking years ago about an official API. If it doesnt put much load on the SG server(s), I will definitely use this.

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Ok cool. I was just wondering due to that you were grabbing HTML. But good to know you cache it

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Happy Cake Day!

Also I am digging into your API code. Got some ideas I want to test before I pitch them ^_^

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Hi Sighery :) The API is still working great, we (Playing Appreciated) are so happy with the GetGivWinners method! It saved us, without exaggerating, hours of time already that we would otherwise be spending on manually adding winners to giveaways! :)

We'd like to automate things a bit further, which is why I'd like to make a feature request:
Would it be possible to add a GetGivGroups method to the API? This would be useful for us so that our tool can check if the winner is (also) a member of other groups on giveaways where other groups were included. Ideally we'd get the included groups steamid's (gid) for that, in order to retrieve that groups memberlist and check if the winner is a member there (too). Getting the gid might be a bit more difficult as the group information for a giveaway only provides SteamGifts ID for the group by default, which would also be fine (since we can then manually add the corresponding gid if needed). Hope I've explained it good enough. ^^

I hope you could are willing to consider making such a method and can find time to do so, and that other people who are using your API and/or are member of any of the groups who are thankfully using your API are willing to second this request. :)

View attached image.
7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

If only.. ;) Wait, wouldn't we be out of a job then? :P

View attached image.
7 years ago*
Permalink

Comment has been collapsed.

Manually checking winners of shared GAs to see which additional groups they are members of is quite time consuming, but I can see how enhancing this API to support this would also be time consuming. In any case, I just want to say that I second this request :-)

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Sign in through Steam to add a comment.