overwolf.social.reddit API
Provides access to the Reddit social provider.
You can use overwolf.social.getDisabledServices()
method to check if the service is available.
Methods Reference
- overwolf.social.reddit.performUserLogin()
- overwolf.social.reddit.performLogout()
- overwolf.social.reddit.getUserInfo()
- overwolf.social.reddit.searchSubreddits()
- overwolf.social.reddit.share()
- overwolf.social.reddit.shareEx()
- overwolf.social.reddit.post()
- overwolf.social.reddit.cancelShare()
- overwolf.social.reddit.getSubredditFlairs()
Events Reference
Types Reference
- overwolf.social.reddit.RedditShareParameters Object
- overwolf.social.reddit.RedditPostParameters Object
- overwolf.social.reddit.SocialShareResult Object
- overwolf.social.reddit.SocialShareProgress Object
- overwolf.social.reddit.enums.ShareState Enum
- overwolf.social.reddit.Subreddit Object
- overwolf.social.reddit.RedditAllowedPostTypes Object
- overwolf.social.reddit.SearchSubredditsResult Object
- overwolf.social.reddit.ShareFailedEvent Object
- overwolf.social.reddit.LoginStateChangedEvent Object
performUserLogin()
Version added: 0.128
Opens the login dialog.
There is no callback for this method and the only way to know if the user signed in is via onLoginStateChanged event.
performLogout(callback)
Version added: 0.128
Performs a "strong" sign out of Reddit, so that even if the user performs a login via the Overwolf Settings / Accounts page, he will be considered signed out.
Parameter | Type | Description |
---|---|---|
callback | (Result) => void | A callback function which will be called with the status of the request |
getUserInfo(callback)
Version added: 0.128
If the user is currently logged into Reddit, this will return user information, Otherwise, an error is returned.
Parameter | Type | Description |
---|---|---|
callback | (Result: GetUserInfoResult) => void | A callback function which will be called with the status of the request |
searchSubreddits(query, callback)
Version added: 0.128
Search for subreddits whose names begin with a substring.
Parameter | Type | Description |
---|---|---|
query | string | The search string |
callback | (Result: SearchSubredditsResult) => void | Will contain an array of subreddits that match the search string |
share(RedditShareParameters, callback)
Version added: 0.128
If the user is currently logged into reddit, this will perform the video share.
Parameter | Type | Description |
---|---|---|
redditShareParameters | RedditShareParameters Object | The share parameters |
callback | (Result) => void | A callback function which will be called with the status of the request |
Types of errors that can occur:
- Disconnected (user isn't signed in)
- MissingFile (trying to share a missing file)
- UnsupportedFile (trying to share an unsupported format)
shareEx(RedditShareParameters, callback, callback)
Version added: 0.198
If the user is currently logged into Reddit, this will perform the video share.
Parameter | Type | Description |
---|---|---|
redditShareParams | RedditShareParameters Object | The share parameters |
resultCallback | (SocialShareResult) => void | A callback function which will be called with the resulting status of the request |
progressCallback | (socialShareProgress) => void | A callback function which will be called whenever share progress is made. See note |
Types of errors that can occur:
- Disconnected (user isn't signed in)
- MissingFile (trying to share a missing file)
- UnsupportedFile (trying to share an unsupported format)
Progress Note
This callback will only be called when uploading a video.
Videos will be uploaded in uniforamlly sized chunks (except for the last chunk). The callback will be called every time another chunk was successfully uploaded.
cancelShare(string, callback)
Version added: 0.198
cancels an ongoing share request with the given id, if valid. Callback will be invoked with success if such a request was found and a cancellation order was executed (may take a while)
Parameter | Type | Description |
---|---|---|
id | string | The request ID |
callback | (Result) => void | Called with the result of the cancellation |
overwolf.social.reddit.cancelShare("2", console.log)
post(RedditPostParameters, callback)
Version added: 0.203
If the user is currently logged into Reddit, this will perform the video share.
Parameter | Type | Description |
---|---|---|
redditShareParams | RedditPostParameters Object | The post parameters |
callback | (Result) => void | A callback function which will be called with the status of the request |
Types of errors that can occur:
- Disconnected (user isn't signed in)
getSubredditFlairs(subredditName, callback)
Version added: 0.160
Returns a list of flairs supported by the given subreddit.
Parameter | Type | Description |
---|---|---|
subredditName | string | The given subreddit |
callback | (Result) => void | A callback function which will be called with the status of the request |
onLoginStateChanged
Version added: 0.128
Fired when the user’s login state changes, with the following structure: LoginStateChangedEvent Object.
onShareFailed
Version added: 0.128
Fired when an error is returned from Reddit, with the following structure:
ShareFailedEvent
Object.
RedditPostParameters Object
Version added: 0.203
This object defines all parameters that should be passed to the Reddit
post()
.
Putting a URL in the content
property will create a Reddit post that is of a link type. Otherwise, it will be a normal "self" reddit post.
Parameter | Type | Description |
---|---|---|
subreddit | string | The subreddit to which the post will be shared |
title | string | The shared post's title |
content | string | The shared post's content |
flair_id (Optional) | Flair object |
RedditShareParameters Object
Version added: 0.128
This object defines all parameters that can/should be passed to the Reddit
share()
andshareEx()
methods.
Parameter | Type | Description |
---|---|---|
file | string | The file to share |
id (Optional) | string | The ID for the current share request. See note |
useOverwolfNotifications | boolean | Whether or not Overwolf notifications should be used. See note |
subreddit | string | The subreddit to which the file will be shared |
title | string | The shared video's title |
description | string | The shared video's description |
trimming (Optional) | VideoCompositionSegment | An object containing start time and end time for the desired VideoCompositionSegment |
tags (Optional) | string | An array of chronological events that occurred during the capture |
gameClassId (Optional) | int | The associated game's class ID |
gameTitle (Optional) | string | The associated game's title |
metadata (Optional) | object | Extra information about the game session |
flair_id (Optional) | Flair object |
id note
When calling overwolf.social.reddit.shareEx()
, it is required to supply it with a request ID. This ID will also be used in case you wish to cancel this share using overwolf.social.reddit.cancelShare()
.
useOverwolfNotifications note
When calling overwolf.social.reddit.share()
, this will default to true.
When calling overwolf.social.reddit.shareEx()
, this will default to false.
Data example
{
"file": "file://D:\\Videos\\Overwolf\\Outplayed\\League of Legends/League of Legends_8-16-2020_2-6-20-576\\League of Legends 08-16-2020_2-06-22-522.mp4",
"id": "5",
"useOverwolfNotifications": false,
"tags": [
"PvP Round"
],
"gameClassId": 5426,
"gameTitle": "League of Legends",
"title": "Check out my video! #TeamfightTactics | Captured by #Outplayed",
"subreddit": "clips",
"trimming": {
"startTime": 1136507,
"endTime": 1177391
},
"metadata": {
"mode": "tft"
}
}
SocialShareResult Object
Version added: 0.198
Container for the url shared in a successful share.
Parameter | Type | Description |
---|---|---|
url | string | The url of the generated result |
Example data
{
"url": "https://v.redd.it/z08avb339n801/DASH_1_2_M"
}
SocialShareProgress Object
Version added: 0.198
The current progress of the share request
Parameter | Type | Description |
---|---|---|
progress | int | The current precentage of upload progress |
id | string | The id of the share request |
state | ShareState | The current state of the share request |
Example data
{
"progress": 56,
"id": "1",
"state": "Uploading"
}
ShareState Enum
Version added: 0.198
The current state of the
overwolf.social.reddit.shareEx()
operation.
Options | Description |
---|---|
Started | The upload has started |
Uploading | The upload is in progress |
Finished | The upload has finished |
SearchSubredditsResult Object
Version added: 0.128
Container for search subreddits result.
Parameter | Type | Description |
---|---|---|
subreddits | Subreddit[] |
Subreddit Object
Version added: 0.128
Container object.
Parameter | Type | Description |
---|---|---|
subreddit | number | |
name | string | |
displayName | string | |
allowedPostTypes | RedditAllowedPostTypes object | |
communityIcon | number |
RedditAllowedPostTypes Object
Version added: 0.128
Container object.
Parameter | Type | Description |
---|---|---|
images | boolean | |
text | boolean | |
videos | boolean | |
links | boolean | |
spoilers | boolean |
ShareFailedEvent Object
Version added: 0.128
Container object.
Parameter | Type | Description |
---|---|---|
error | string | |
details | string |
Event Data Example: Success
Currently, supported errors are:
{ "error": "NotFound", "details": "that subreddit doesn't exist" }
{ "error": "RateLimit", "details": "you are doing that too much. try again in 7 minutes." }
Flair Object
Version added: 0.160
Container object.
Parameter | Type | Description |
---|---|---|
id | string | |
text | string | |
mod_only | boolean | |
allowable_content | string |
Data Example
{
"id": "248a072-1e48-11e6-0e1648f491d1",
"text": "Highlight",
"mod_only": false,
"allowable_content": "all"
}