STYNGR API
STYNGR API can be used to play licensed music inside of your application by creating many different playlists that end users can choose from, offering radio-like experience by allowing users to choose playlist which suits their taste. Songs are randomly chosen from selected playlist and if end user does not like a certain song, they have an option to skip a song, up to 6 times within one hour period.
Our API endpoints are secured with two kind of JWT tokens with different scopes, which are issued to each end user separately.
What made this section unhelpful for you?
Base URL
Production:
https://api.styngr.com
Staging:
https://stg.api.styngr.com
What made this section unhelpful for you?
Authentication
What made this section unhelpful for you?
Styngs
Styngs are in-game emotes followed by up to 30 seconds long song clips. Users can buy styng which they can bind to an application event. Once the application user triggers an application event, styng can be reproduced, so that nearby players can hear their styng. Styngs can also be preloaded during loading of game session, by pulling binded styngs of each user in that game session.
Application Errors
Allow game developers to send errors messages they have encountered
User Event Tracking
Application Tests
Application Events
Application events are in-game events to which users can bind their Styngs. Example of application events would be a headshot, scored goal or player spawning at the base.
Notifications
Notification APIs for application end user.
Payment Transactions
Payment transactions are created for every product purchase, e.g. Styng, Stynglist or Radio Subscription, with external payment system handling the actual payment processing. Applications that implement Styngr API must use the payment confirmation API in order for user to obtain access to their bought product.
Promo messages
Radio Subscriptions
Radio subscriptions allow user to listen to your application's playlist, without Ads. At the moment, user can choose between following subscription types: Monthly, Stream-count based, or Playback-time based. Monthly subscriptions, as their name suggests, allow users to have an unlimited radio listening experience for thirty days after their subscription purchase. Monthly subscriptions can be renewed at any point in time, while they are in active or pending payment state. Stream-count subscriptions offer a limited number of tracks which users can listen to. Every single request that returns a random track is counted towards this quota. Once the quota is spent, users will have to purchase a new subscription, or they will be back on Ad-funded listening experience if it's available in your application. Playback-time based subscriptions offer a limited number of minutes to which users can listen to. Once the quota is spent, users will have to purchase a new subscription, or they will be back on Ad-funded listening experience.
What made this section unhelpful for you?
Purchase a radio bundle
Purchase a radio bundle for an user in the application. Each bundle comes with a predefined number of available streams/minutes. By purchasing a radio bundle, a transaction in Styngr system is created, which will, once approved, create an radio subscription that will allow user to listen up to preconfigured number of tracks/minutes. Subscription can be bought only when a user doesn't have an active subscription.
Header Parameters
Path Parameters
App ID of the game in which the user is purchasing a radio bundle.
Body Parameters
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response
Response Attributes
Response Attributes
Response Attributes
Response Attributes
Response Attributes
What made this section unhelpful for you?
Response
Information about created transaction.
What made this section unhelpful for you?
Pay radio subscription
Place a transaction for user that pays a radio subscription. Subscription can be bought only when a user doesn't have an active subscription of the same product type.
Header Parameters
Query Parameters
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Path Parameters
App ID of the game for which the user pays a subscription.
Response
Response Attributes
Response Attributes
Response Attributes
Response Attributes
Response Attributes
What made this section unhelpful for you?
Response
Information about created transaction.
What made this section unhelpful for you?
Get available application radio bundles for user
Get a list of radio bundles that are configured for the selected application and are still available for purchase by the authenticated user. Radio bundle may no longer be available for purchase in case when its purchase limit has been reached across all users.
Header Parameters
Path Parameters
App ID of the game for which available radio bundles should be listed.
Response
Response Attributes
Show child attributes
Show child attributes
Response Attributes
Response Attributes
What made this section unhelpful for you?
Response
A list of available radio bundles for the authenticated user. These radio bundles may be selected by user and they should be used with Radio Bundle Purchase API.
What made this section unhelpful for you?
Get authorized user active subscription.
Get active subscription of the authorized user who initiated the call
Header Parameters
Response
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
Response Attributes
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
What made this section unhelpful for you?
Response
Information about user's active subscription.
What made this section unhelpful for you?
Get subscription of the user with provided external user ID.
Get user's active subscription
Header Parameters
Application API Key.
Query Parameters
Path Parameters
Response
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
What made this section unhelpful for you?
Response
Information about user's active subscription based.
What made this section unhelpful for you?
Cancel monthly subscription
Cancel the user's active monthly subscription by subscription ID. Cancelled subscriptions will be active until the subscription's end date, and they cannot be renewed. Once the cancelled subscription expires,user must create a new subscription through Pay radio subscription API. If you support refunds, you can alsocancel the subscription with REFUND reason, which will terminate the subscription immediately.
Header Parameters
Application API Key.
Path Parameters
Body Parameters
CANCEL
REFUND
SUBSCRIPTION_PRODUCT_TYPE_CHANGED
Response
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
What made this section unhelpful for you?
Response
Information about user's subscription.
What made this section unhelpful for you?
Renew monthly subscription
Renew the user's active monthly subscription, by extending the validity period for 30 days.
Header Parameters
Application API Key.
Path Parameters
Body Parameters
AF
AX
AL
DZ
AS
AD
AO
AI
AQ
AG
... 239 other enums
STORE
BUNDLE
PROMO
MOBILE
Indicates the payment method used to charge the user for the subscription. NP: No Payment method captured; CC: Credit Card; HA: Hard Bundle Account; CB: Carrier billing auto-debit; PP: Paypal or other online payment provider; AB: Apple iOS in-app auto billing; GB: Google Android in-app billing;PM: Premium Message billing; PR: Prepaid Account, Gift Card, or incentive account;VC: Virtual Currency; OP: Other payment method
NP
CC
BA
CB
PP
AB
GB
PM
PR
VC
... 1 other enums
User IP address if available, otherwise can be null
Response
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
Response Attributes
STYNG
STYNGLIST
AD_SUPPORTED
SUBSCRIPTION
SUBSCRIPTION_EMOTE
SUBSCRIPTION_BUNDLE_EMOTE_FREE
SUBSCRIPTION_BUNDLE_EMOTE_PAID
SUBSCRIPTION_TIER_1
SUBSCRIPTION_TIER_2
SUBSCRIPTION_TIER_3
... 16 other enums
What made this section unhelpful for you?
Response
Information about user's active subscription.
What made this section unhelpful for you?
SDK Users
APIs related to application end users, which allows operations such as in-game currency balance update and addition of Styngs/Stynglists as rewards to users.
Soundboards
Soundboards are collection of chosen styngs for your application that application users can subscribe to and use during their game session. Application can have multiple soundboards but only one published soundboard per source.
Stynglists
Stynglists are collection of Styngs which allows user to buy multiple Styngs more easily.
LSR styngs
LSR styngs are in-game emotes followed by up to 30 seconds long song clips. Users can buy LSR styngs which they can bind to an application event. Once the application user triggers an application event, LSR styngs can be reproduced, so that nearby players can hear their LSR styng. LSR styngs can also be preloaded during loading of game session, by pulling binded LSR styngs of each user in that game session.
styng-statistics-controller
Spotify
Styngr integration with Spotify music platform.
Playlists V3
Royalty free playlists are set of songs that are linked to a single application, which allows users of that application to choose which music they will listen to during their game session. These songs are randomly selected from the playlist, and there is no skip limit for them.
Playlists V2
Playlists are set of songs that are linked to a single application, which allows users of that application to choose which music will they listen to during their game session. Users can skip through songs for up to 6 times during one hour period.
Playlists V2 - API Integration
Playlists are set of songs that are linked to a single application, which allows users of that application to choose which music will they listen to during their game session. Users can skip through songs for up to 6 times during one hour period.
Group sessions - API Integration
Styngr allows users to create a Group Sessions that will allow multiple users to listen to the same tracks at the same time. Group Session API is intended to be used with Playlist API, which means requesting tracks and submitting statistics needs to be performed as for Playlist Sessions for single users. Group Sessions can have two different user types: Owner and Members. Every user can belong only to single Group Session at the time. Every Group Session can have only one Group Session Owner, and multiple Group Session Members. Group Session Owner is responsible for media playback controls, that is, requesting a new track, skipping or pausing the current track. Group Session Members cannot impact listening flow, as they only have to synchronize with Group session Owner's actions. Synchronization between Owner and Members is currently left to implement to applications that are integrating with Styngr API.
Group sessions
Styngr allows users to create a Group Sessions that will allow multiple users to listen to the same tracks at the same time. Group Session API is intended to be used with Playlist API, which means requesting tracks and submitting statistics needs to be performed as for Playlist Sessions for single users. Group Sessions can have two different user types: Owner and Members. Every user can belong only to single Group Session at the time. Every Group Session can have only one Group Session Owner, and multiple Group Session Members. Group Session Owner is responsible for media playback controls, that is, requesting a new track, skipping or pausing the current track. Group Session Members cannot impact listening flow, as they only have to synchronize with Group session Owner's actions. Synchronization between Owner and Members is currently left to implement to applications that are integrating with Styngr API.
Statistics
Used for storing song and ad playback statistics.
Playlists
Playlists are set of songs that are linked to a single application, which allows users of that application to choose which music will they listen to during their game session. Users can skip through songs for up to 6 times during one hour period.
Playlists - API Integration
Playlists are set of songs that are linked to a single application, which allows users of that application to choose which music will they listen to during their game session. Users can skip through songs for up to 6 times during one hour period.
Applications
Styngr allows users to get basic information about applications they are using.
radio-info-controller
Roblox
Web3
Styngr SDK API
Styngr API can be used to play licensed music inside of your application by creating many different playlists that end users can choose from, offering radio-like experience by allowing users to choose playlist which suits their taste. Songs are randomly chosen from selected playlist and if end user does not like a certain song, they have an option to skip a song, up to 6 times within one hour period.
Our API endpoints are secured with two kind of JWT tokens with different scopes, which are issued to each end user separately.
What made this section unhelpful for you?
Base URL
Production:
https://api.styngr.com
Staging:
https://stg.api.styngr.com
What made this section unhelpful for you?
roblox-campaign-controller
NFTs
Styngr offers an option to purchase an NFT inside of your application. NFTs are usually minted as a short audio snippet from our available pool of tracks. By purchasing an NFT, user will be able to use the NFT inside of your application, by playing an linked audio snippet. They also have an option to claim the NFT, which would transfer the ownership to their Ripple Ledger account. Styngr can at any time burn the NFT, if such need arises from legal perspective, upon request from record labels.
Xumm
Xumm platfrom is a non-custodial wallet that offers users to create/manage their Ripple Ledger accounts. Users can authenticate their wallets in our system through Xumm, which allows them to claim the already purchased NFTs to their Ripple Ledger account.
Radio Subscriptions - v2
Radio subscriptions allow user to listen to your application's playlist, without Ads. At the moment, user can choose between following subscription types: Monthly, Stream-count based, or Playback-time based. Monthly subscriptions, as their name suggests, allow users to have an unlimited radio listening experience for thirty days after their subscription purchase. Monthly subscriptions can be renewed at any point in time, while they are in active or pending payment state. Monthly subscriptions support multi-tier logic where playlists are divided into several tiers where each tier contains a specific combination of playlists which user is allowed to listen if he has a relevant subscription. Stream-count subscriptions offer a limited number of tracks which users can listen to. Every single request that returns a random track is counted towards this quota. Once the quota is spent, users will have to purchase a new subscription, or they will be back on Ad-funded listening experience if it's available in your application. Playback-time based subscriptions offer a limited number of minutes to which users can listen to. Once the quota is spent, users will have to purchase a new subscription, or they will be back on Ad-funded listening experience.