User:Pelf/Social API requirements

From W3C Wiki

These are some loosely-defined requirements for a social API.

Functionality

Text

  • Notes
  • Articles

Read

Write

Create
Update
Delete


Media

  • Image
  • Video
  • Audio
  • Enterprise documents
  • Other content types


Containers

  • Organize content [?]

Read

  • List items in a container

Write

Create
  • Create containers ("folders", "photo albums")
Update
  • Add items to a container
  • Remove items from a container
Delete
  • Delete a container


Connections

  • Social network connections ("friends")
  • Lists (twitter) / Circles (G+) / Aspects (Diaspora)
  • Groups (facebook) / Communities (G+)

Read

  • Read social network connections

Write

Create
  • Create social network connections
    • Follow-model (one way)
    • Friend-model (two way)
Update
Delete
  • Delete social network connections
    • Own
    • Others'


Responses

Read

Write

Create
  • "Like"/"Unlike" content
  • Comment on content
  • "Share" content
Update
  • Modify comments
Delete
  • Delete comments


Activities

Read

  • all activities by a single user
  • only activities of certain type by a single user (eg. CheckIn)
  • activities by a single user involving certain other user(s)

Write

Create
  • Create new "activities" of arbitrary type
    • Game results ("Jim reached level 2 in SuperGame 7")
    • Enterprise ("Evan released a package to shipping")
    • New applications
Modify
  • add more participants (users involved)
  • change audience targeting
Delete
  • Delete activities


Inbox

Read

  • Read content posted by people in social network
    • People you follow and friends
  • Read other activities (like, social network connection creation) by people in social network
  • Read content specifically "for" you
    • Directed towards you
    • Mentions you
    • Includes you as a subject (e.g., tagged image or video)

Write

Create
Update
Delete


Technical

  • Use the social data syntax we define
  • RESTful
  • Compatible with federation protocol

Out of scope

  • Specific authentication system