Real-time updates on reddit. In addition to the standard reddit API, WebSockets play a huge role in reddit live. Receiving push notification of changes to the thread via websockets is much better than polling the thread repeatedly. To connect to the websocket server, fetch /live/thread/about.json and get the websocket_url field. The websocket URL expires after a period of time; if it does, fetch a new one from that endpoint. Once connected to the socket, a variety of messages can come in. All messages will be in text frames containing a JSON object with two keys: type and payload. Live threads can send messages with many types: update - a new update has been posted in the thread. the payload contains the JSON representation of the update. activity - periodic update of the viewer counts for the thread. settings - the thread's settings have changed. the payload is an object with each key being a property of the thread (as in about.json) and its new value. delete - an update has been deleted (removed from the thread). the payload is the ID of the deleted update. strike - an update has been stricken (marked incorrect and crossed out). the payload is the ID of the stricken update.embeds_ready - a previously posted update has been parsed and embedded media is available for it now. the payload contains a liveupdate_id and list of embeds to add to it. complete - the thread has been marked complete. no further updates will be sent. See /r/live for more information.
More...
|
| LiveThreads (string appId, string appSecret, string refreshToken, string accessToken, ref RestClient restClient, string deviceId=null, string userAgent=null) |
|
object | GetById (string names) |
| Get a listing of live events by id. More...
|
|
LiveThreadCreateResultContainer | Create (LiveThreadsConfigInput liveThreadsConfigInput) |
| Create a new live thread. Once created, the initial settings can be modified with /api/live/thread/edit and new updates can be posted with /api/live/thread/update. More...
|
|
async Task< LiveThreadCreateResultContainer > | CreateAsync (LiveThreadsConfigInput liveThreadsConfigInput) |
| Create a new live thread asynchronously. Once created, the initial settings can be modified with /api/live/thread/edit and new updates can be posted with /api/live/thread/update. More...
|
|
object | HappeningNow () |
| Get some basic information about the currently featured live thread. Returns an empty 204 response for api requests if no thread is currently featured. See also: /api/live/thread/about. More...
|
|
GenericContainer | AcceptContributorInvite (string thread) |
| Accept a pending invitation to contribute to the thread. See also: /api/live/thread/leave_contributor. More...
|
|
async Task< GenericContainer > | AcceptContributorInviteAsync (string thread) |
| Accept a pending invitation to contribute to the thread asynchronously. See also: /api/live/thread/leave_contributor. More...
|
|
GenericContainer | CloseThread (string thread) |
| Permanently close the thread, disallowing future updates. Requires the close permission for this thread. Returns forbidden response if the thread has already been closed. More...
|
|
async Task< GenericContainer > | CloseThreadAsync (string thread) |
| Permanently close the thread asynchronously, disallowing future updates. Requires the close permission for this thread. Returns forbidden response if the thread has already been closed. More...
|
|
GenericContainer | DeleteUpdate (string thread, string id) |
| Delete an update from the thread. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
async Task< GenericContainer > | DeleteUpdateAsync (string thread, string id) |
| Delete an update from the thread asynchronously. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
GenericContainer | DeleteUpdate (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Delete an update from the thread. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
async Task< GenericContainer > | DeleteUpdateAsync (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Delete an update from the thread asynchronously. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
GenericContainer | Edit (string thread, LiveThreadsConfigInput liveThreadsConfigInput) |
| Configure the thread. Requires the settings permission for this thread. See also: /live/thread/about.json. More...
|
|
async Task< GenericContainer > | EditAsync (string thread, LiveThreadsConfigInput liveThreadsConfigInput) |
| Configure the thread asynchronously. Requires the settings permission for this thread. See also: /live/thread/about.json. More...
|
|
object | HideDiscussion (string thread, string link) |
| Hide a linked comment thread from the discussions sidebar and listing. Requires the discussions permission for this thread. See also: /api/live/thread/unhide_discussion. More...
|
|
GenericContainer | InviteContributor (string thread, LiveThreadsContributorInput liveThreadsContributorInput) |
| Invite another user to contribute to the thread. Requires the manage permission for this thread. If the recipient accepts the invite, they will be granted the permissions specified. See also: /api/live/thread/accept_contributor_invite, and /api/live/thread/rm_contributor_invite. More...
|
|
async Task< GenericContainer > | InviteContributorAsync (string thread, LiveThreadsContributorInput liveThreadsContributorInput) |
| Asynchronously invite another user to contribute to the thread. Requires the manage permission for this thread. If the recipient accepts the invite, they will be granted the permissions specified. See also: /api/live/thread/accept_contributor_invite, and /api/live/thread/rm_contributor_invite. More...
|
|
GenericContainer | LeaveContributor (string thread) |
| Abdicate contributorship of the thread. See also: /api/live/thread/accept_contributor_invite, and /api/live/thread/invite_contributor. More...
|
|
async Task< GenericContainer > | LeaveContributorAsync (string thread) |
| Abdicate contributorship of the thread asynchronously. See also: /api/live/thread/accept_contributor_invite, and /api/live/thread/invite_contributor. More...
|
|
GenericContainer | Report (string thread, string type) |
| Report the thread for violating the rules of reddit. More...
|
|
async Task< GenericContainer > | ReportAsync (string thread, string type) |
| Asynchronously report the thread for violating the rules of reddit. More...
|
|
GenericContainer | Report (string thread, LiveThreadsReportTypeInput liveThreadsReportTypeInput) |
| Report the thread for violating the rules of reddit. More...
|
|
async Task< GenericContainer > | ReportAsync (string thread, LiveThreadsReportTypeInput liveThreadsReportTypeInput) |
| Asynchronously report the thread for violating the rules of reddit. More...
|
|
GenericContainer | RemoveContributor (string thread, string id) |
| Revoke another user's contributorship. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
async Task< GenericContainer > | RemoveContributorAsync (string thread, string id) |
| Revoke another user's contributorship asynchronously. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
GenericContainer | RemoveContributor (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Revoke another user's contributorship. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
async Task< GenericContainer > | RemoveContributorAsync (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Revoke another user's contributorship asynchronously. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
GenericContainer | RemoveContributorInvite (string thread, string id) |
| Revoke an outstanding contributor invite. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
async Task< GenericContainer > | RemoveContributorInviteAsync (string thread, string id) |
| Revoke an outstanding contributor invite asynchronously. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
GenericContainer | RemoveContributorInvite (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Revoke an outstanding contributor invite. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
async Task< GenericContainer > | RemoveContributorInviteAsync (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Revoke an outstanding contributor invite asynchronously. Requires the manage permission for this thread. See also: /api/live/thread/invite_contributor. More...
|
|
GenericContainer | SetContributorPermissions (string thread, LiveThreadsContributorInput liveThreadsContributorInput) |
| Change a contributor or contributor invite's permissions. Requires the manage permission for this thread. Note that permissions overrides the previous value completely. See also: /api/live/thread/invite_contributor and /api/live/thread/rm_contributor. More...
|
|
async Task< GenericContainer > | SetContributorPermissionsAsync (string thread, LiveThreadsContributorInput liveThreadsContributorInput) |
| Change a contributor or contributor invite's permissions asynchronously. Requires the manage permission for this thread. Note that permissions overrides the previous value completely. See also: /api/live/thread/invite_contributor and /api/live/thread/rm_contributor. More...
|
|
GenericContainer | StrikeUpdate (string thread, string id) |
| Strike (mark incorrect and cross out) the content of an update. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
async Task< GenericContainer > | StrikeUpdateAsync (string thread, string id) |
| Strike (mark incorrect and cross out) the content of an update asynchronously. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
GenericContainer | StrikeUpdate (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Strike (mark incorrect and cross out) the content of an update. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
async Task< GenericContainer > | StrikeUpdateAsync (string thread, LiveThreadsIdInput liveThreadsIdInput) |
| Strike (mark incorrect and cross out) the content of an update asynchronously. Requires that specified update must have been authored by the user or that you have the edit permission for this thread. See also: /api/live/thread/update. More...
|
|
object | UnhideDiscussion (string thread, string link) |
| Unhide a linked comment thread from the discussions sidebar and listing. Requires the discussions permission for this thread. See also: /api/live/thread/hide_discussion. More...
|
|
GenericContainer | Update (string thread, string body) |
| Post an update to the thread. Requires the update permission for this thread. See also: /api/live/thread/strike_update, and /api/live/thread/delete_update. More...
|
|
async Task< GenericContainer > | UpdateAsync (string thread, string body) |
| Post an update to the thread asynchronously. Requires the update permission for this thread. See also: /api/live/thread/strike_update, and /api/live/thread/delete_update. More...
|
|
GenericContainer | Update (string thread, LiveThreadsBodyInput liveThreadsBodyInput) |
| Post an update to the thread. Requires the update permission for this thread. See also: /api/live/thread/strike_update, and /api/live/thread/delete_update. More...
|
|
async Task< GenericContainer > | UpdateAsync (string thread, LiveThreadsBodyInput liveThreadsBodyInput) |
| Post an update to the thread asynchronously. Requires the update permission for this thread. See also: /api/live/thread/strike_update, and /api/live/thread/delete_update. More...
|
|
LiveUpdateContainer | GetUpdates (string thread, LiveThreadsGetUpdatesInput liveThreadsGetUpdatesInput) |
| Get a list of updates posted in this thread. See also: /api/live/thread/update. This endpoint is a listing. More...
|
|
LiveUpdateEventContainer | About (string thread) |
| Get some basic information about the live thread. See also: /api/live/thread/edit. More...
|
|
List< UserListContainer > | Contributors (string thread) |
| Get a list of users that contribute to this thread. Note that this includes users who were invited but have not yet accepted. See also: /api/live/thread/invite_contributor, and /api/live/thread/rm_contributor. More...
|
|
object | Discussions (string thread, SrListingInput srListingInput) |
| Get a list of reddit submissions linking to this thread. This endpoint is a listing. More...
|
|
LiveUpdateContainer | GetUpdate (string thread, string updateId) |
| Get details about a specific update in a live thread. More...
|
|
| BaseModel (string appId, string appSecret, string refreshToken, string accessToken, ref RestClient restClient, string deviceId=null, string userAgent=null) |
|
string | Sr (string subreddit) |
|
| Request (string appId, string appSecret, string refreshToken, string accessToken, ref RestClient restClient, string deviceId=null, string userAgent=null) |
|
T | SendRequest< T > (string url, dynamic parameters, Method method=Method.GET, string contentType="application/x-www-form-urlencoded") |
|
async Task< T > | SendRequestAsync< T > (string url, dynamic parameters, Method method=Method.GET, string contentType="application/x-www-form-urlencoded") |
|
RestRequest | PrepareIDRequest (string path, string id, Method method=Method.POST) |
|
RestRequest | PrepareJSONRequest (string path, Method method=Method.POST) |
|
RestRequest | PrepareRequest (string url, Method method=Method.GET, string contentType="application/x-www-form-urlencoded") |
|
RestRequest | PrepareRequest (string url, Method method, List< Parameter > parameters, List< FileParameter > files, string contentType="application/x-www-form-urlencoded") |
|
RestRequest | PrepareRequest (RestRequest restRequest, string contentType="application/x-www-form-urlencoded") |
|
string | GetVersion () |
|
string | ExecuteRequest (string url, Method method=Method.GET) |
|
async Task< string > | ExecuteRequestAsync (string url, Method method=Method.GET) |
|
string | ExecuteRequest (RestRequest restRequest) |
|
async Task< string > | ExecuteRequestAsync (RestRequest restRequest) |
|
void | UpdateAccessToken (string accessToken) |
|
void | UpdateRequests (List< DateTime > requests) |
|
void | AddParamIfNotNull (string name, dynamic value, ref RestRequest restRequest) |
|
Real-time updates on reddit. In addition to the standard reddit API, WebSockets play a huge role in reddit live. Receiving push notification of changes to the thread via websockets is much better than polling the thread repeatedly. To connect to the websocket server, fetch /live/thread/about.json and get the websocket_url field. The websocket URL expires after a period of time; if it does, fetch a new one from that endpoint. Once connected to the socket, a variety of messages can come in. All messages will be in text frames containing a JSON object with two keys: type and payload. Live threads can send messages with many types: update - a new update has been posted in the thread. the payload contains the JSON representation of the update. activity - periodic update of the viewer counts for the thread. settings - the thread's settings have changed. the payload is an object with each key being a property of the thread (as in about.json) and its new value. delete - an update has been deleted (removed from the thread). the payload is the ID of the deleted update. strike - an update has been stricken (marked incorrect and crossed out). the payload is the ID of the stricken update.embeds_ready - a previously posted update has been parsed and embedded media is available for it now. the payload contains a liveupdate_id and list of embeds to add to it. complete - the thread has been marked complete. no further updates will be sent. See /r/live for more information.