Socialcast Learn About Socialcast

Socialcast API

Socialcast’s REST API provides programmatic access to the same functionality that is available via your community’s Socialcast website. You can write a Socialcast Client Application in any programming language. This documentation contains examples of how to invoke every endpoint using cURL.

The community used in the examples is our demo community: https://demo.socialcast.com

  • The demo community’s data gets refreshed every day
  • With demo you can use credentials: emily@socialcast.com/demo

Once you are ready to start coding, replace “demo.socialcast.com” with the location of your community. Ex: “openwebstandards.socialcast.com”

Socialcast supports the following authentication mechanisms:

HTTP Basic Authentication API

Resource Description
[POST] /api/authentication Retrieve list of Active Communities for the Credentials(email/password) provided

OAuth 2.0 API

Resource Endpoints

All of the endpoints require authentication as seen above. Details at: HTTP Basic Authentication

Attachment API

Resource Description
[POST] /api/attachment Create an Attachment

Users API

Resource Description
[GET] /api/users/USER_ID View User Profile
[GET] /api/users/search Search Users in Your Company
[GET] /api/users List Users in Your Company
[GET] /api/users/USER_ID/messages View Stream of Messages by User
[PUT] /api/users/USER_ID Update User Profile
[DELETE] /api/users/USER_ID Deactivate a User
[GET] /api/users/USER_ID/badges List of user’s badges

Follow API

Resource Description
[GET] /api/users/USER_ID/followers View Followers of User
[GET] /api/users/USER_ID/following View List of Users Being Followed
[POST] /api/users/USER_ID/followers Follow a User
[DELETE] /api/users/USER_ID/followers/CONTACT_USER_ID Unfollow a User

Groups API

Resource Description
[GET] /api/groups/GROUP_ID/members Listing Members of a Group
[GET] /api/group_memberships Listing Group Memberships
[GET] /api/groups Listing All Groups
[GET] /api/groups/GROUP_ID Show a Single Group
[POST] /api/groups Create a Group
[PUT] /api/groups/GROUP_ID Updating Existing Group
[DELETE] /api/groups/GROUP_ID/archive Archiving a Group
[DELETE] /api/groups/GROUP_ID Destroy an Archived Message

Messages API

Resource Description
[GET] /api/messages Reading Stream Messages
[GET] /api/messages/MESSAGE_ID Read a Single Stream Message
[GET] /api/messages/search Searching Messages
[POST] /api/messages Creating New Messages
[PUT] /api/messages/MESSAGE_ID Updating Existing Messages
[DELETE] /api/messages/MESSAGE_ID Destroy an existing message
Examples Using the Message API

Likes API

Resource Description
[POST] /api/messages/MESSAGE_ID/likes Liking a Message
[POST] /api/comments/COMMENT_ID/likes/LIKES_ID Liking a Comment
[DELETE] /api/messages/MESSAGE_ID/likes/LIKES_ID Un-liking a Message
[DELETE] /api/comments/COMMENT_ID/likes/LIKES_ID Un-liking a Comment

Comments API

Resource Description
[GET] /api/messages/MESSAGE_ID/comments/COMMENT_ID Get a Comment
[POST] /api/messages/MESSAGE_ID/comments Creating Comments
[PUT] /api/messages/MESSAGE_ID/comments/COMMENT_ID Updating Comments
[DELETE] /api/messages/MESSAGE_ID/comments/COMMENT_ID Deleting a Comment

Flagging API

Resource Description
[POST] /api/messages/MESSAGE_ID/flags Creating Flag
[DELETE] /api/messages/MESSAGE_ID/flags/ Deleting a Flag

Content Filters API

Resource Description
[GET] /api/content_filters Listing Tenant Content Filters

Conversations API

Resource Description
[GET] /api/conversations/CONVERSATION_ID Returns information of the referenced conversation
[GET] /api/conversations List all conversations that a user has access to
[POST] /api/conversations Create a new conversation
[POST] /api/conversations/CONVERSATION_ID/acknowledge Acknowledge that a user has read the latest remarks in a conversation. This will clear the unread flag on the conversation
[POST] /api/conversations/acknowledge_all Acknowledge that a user has read the latest remarks in all of their conversations. This will clear the unread flag on all of their conversations.
[GET] /api/conversations/CONVERSATION_ID/members List all conversation members.
[POST] /api/conversations/CONVERSATION_ID/members Add new members to the referenced conversation.
[DELETE] /api/conversations/CONVERSATION_ID/members/me Remove the authorized user from the referenced conversation.
[POST] /api/conversations/CONVERSATION_ID/remarks Create a new remark. A valid remark may be created with: * text and no attachments * attachments and no text * both text and attachments.
[POST] /api/conversations/CONVERSATION_ID/activities Get page of activitystream activities.
[POST] /api/conversations/CONVERSATION_ID/activities/ACTIVITY_ID Get specific activitystream item. Note: clients must only display activities/attachments with an objectType that they explicitly support. Future updates may add additional objectTypes and clients must ignore these until they add specific support. Each objectType is defined by the activitystrea.ms schema. objectTypes of attachments are defined according to the activitystrea.ms schema.

Categories API

Resource Description
[GET] /api/categories Listing Tenant Categories

Streams API

Resource Description
[GET] /api/streams Listing User’s Streams
[GET] /api/streams/STREAM_ID/messages Read Stream Messages

Polls API

Resource Description
[GET] /api/polls/POLL_ID View Poll Data
[POST] /api/polls/POLL_ID/respond Submit a response to a poll
[POST] /api/polls Create a poll

Thanks API

Resource Description
[POST] /api/thanks Create Thanks

Badges API

Resource Description
[GET] /api/badges Get list of Thanks Badges
[GET] /api/badges/BADGE_ID Get a specific badge
[GET] /api/badges/BADGE_ID/messages Gets the most recent messages for the specified badge

Responses

Resource
User Response
User Profile Response
Like Response
Group Response
Group Membership Response
Stream List Response
Category List Response
Message List Response
Message Response
Comment Response
Content Filter List Response
Flag Response
Conversation Response
Conversation Member Response
Conversation Activity Response
Attachment Response
Thanks Response
Badge Response