Twitch Drops API Inquiry

Hi! It’s my company’s first time working on a Twitch Drops campaign and we are struggling with setting everything up for the APIs. It would be very appreciated if you guys were to provide some help. :slight_smile:

  1. Our game which runs on steam will be having a steam beta test next month and we plan to do a drops campaing during the steam beta test period. We will be giving out several rewards as drops, one of them being the beta key. Is it possible for the user who gets a beta key via drops to automatically get granted access to the game on Steam, or does the user have to manually input a certain key on Steam?

    I saw that games like Valorant that run on a Riot client made it so that the user can automatically access the beta once they receive the key via drops. However, for other games that run on Steam (Lost Ark), they made it so that the user manually inputs the key code received via drops.

    If it’s possible to have the beta key received via drops to automatically grant access to a game on steam, is there a tool that allows us to register steam keys in the drops console?

  2. Is there a function on the drops console or a certain API that can make it so that a steam game is automatically added to the user’s steam library (if the steam ID is successfully connected to Twitch)?

  3. Are we able to input an API developed specifically for our game so that once a user claims a drop via the Twitch Drops Inventory, he/she can get the item directly through the in-game mailbox? In order for this to happen, I believe there might be some sort of part on the dev console that lets us input a call back URL for the API created for our game; is there a method for us to do this?

1, 2, 3 - You would have to check Steams API documentation. Twitch don’t handle how the reward is distributed, that’s up to you and however you wish to distribute it and request any connections such as to Steam from the user should that be needed.

Twitch doesn’t know what a Drops reward represents, it could be a beta key, could be an ingame item, could be anything, they just handle who has earned and claimed a redemption and pass that data to you and you need to handle fulfilment of that reward.

Thank you for your response!

We did indeed check the API document and weren’t sure if the only way a user can get beta access for a Steam game after getting a beta key via Twitch drops was to insert the key manually on Steam. If I’m understanding your response correctly, are you saying that there is a way for us to make the dropped beta key give access automatically on steam sepending on how we develop the distribution methods? :slight_smile:

If that is the case, will we have to develop an API of our own that allows the dropped beta key to give automatic access on steam, or maybe is there a setting of function on the drops console that I’m missing?

Thank you so much for your time and help!

I don’t integrate with Steam, so I don’t know what their API allows for. Companies that handle access control within their own game/launcher will have an easier time as all of that will be handled by themselves, and those that rely on a third party such as Steam will of course be limited to however Steam allows key distribution.

For example, if you was to release the beta for your game on steam for everyone to access, but then inside that game you could do whatever checks you like to see if the user has redeemed the Twitch Drop Reward granting access to actually play the beta. That could be one option. If on the other hand you wish for people to not be able to even install the game without having redeemed the reward then yes you will need to find a way to get beta keys to the end user, or see if Steam has an API endpoint to add a game into a users library.

Whatever way you choose is entirely up to you to decide what is best for your product as it is beyond the scope of Twitch Drops to handle the distribution of rewards.

  • users visit twitch.tv/drops
  • users are invited to link their Twitch account to your clientID
  • they do this by being directed to your website
  • you login WIth Twitch, which sets up the Twitch → You Connection
  • you can then ask the user to login with Steam, you can ask for the right to add keys to a users steam account
  • then when you get a drop notification for user X you look up user X’s steam account and assign the steam key.

This is how Rust works (granted it’s just steam workshop items so seperate system), and how humble bundle works. So check the Steam API

Twitch doesn’t provide this, only a “user has earned x drop” That drop and what the drop does can be anything using anyone elses API or your own

What you do with the drops notification (and/or drops entitlement API) is up to you. Twitch only tells you that user x has been awarded a drop

What you do with that is all custom and outside Twitch’s realm