The Optimizely Community (formerly Social) API is a collection of extensible services for defining and collecting community-generated content.
- Comments – Manage and deliver hierarchical, user-generated content.
- Ratings – Lets users quantify the value of your content and products.
- Groups – Aggregate users and content to build digital communities.
- Moderation – Review and control user contributions.
- Activity Streams – Broadcast your audience's engagement with your application.
This section explains the philosophy, architecture, and fundamental concepts applicable to all features of the Optimizely Community API. See also: Get started with Optimizely Community API.
Every site has unique needs with regard to the management of user-generated content. Sites differ in how they want to invite feedback, shape that content, and moderate its publication. These needs demand flexibility from a content platform. Unfortunately, the implementation of such features is often forced to conform to the limitations of a platform that is not suited to accommodate them.
The Optimizely Community API is attuned to these needs:
- The platform's services are concise and composable. You have the freedom to define relationships between the platform's lightweight components to assemble unique community features relevant to your site.
- Each capability within the platform represents a consumable building block. Use only what you need, when you need it, in a manner that's relevant to your site.
- You can shape social content by composing platform entities with custom data models. Store, relate, and present social content in a form that is appropriate for your site.
- The services do not restrict your integration opportunities. Your content and users reside in many places. You shouldn't be restricted with regard to who and what may comprise your digital communities.
The Optimizely Community API is composed of several micro-services, and each supports a discrete social capability. You may apply services individually to enhance a website with simple community features. You may also apply services in conjunction with one another to create sophisticated, community-generated content tools.
The Community API's services include:
- Activity Streams
With explicit boundaries around the platform's features, you can establish flexible relationships between components without corruption of the individual responsibilities of those use cases.
For example, consider the relationship that comments might share with moderation. The moderation of user-generated content is a common use case for a digital community but is not always a requirement. The Optimizely Community API lets you compose capabilities as necessary to achieve your goals yet avoid inheriting nonessential overhead.
This is important for a couple of reasons. For one, the platform remains light and flexible without jeopardizing the breadth of possibility in its application. More importantly, this design allows the platform to co-evolve with the needs of implementation partners. In this architecture, the responsibility of each component remains intact; new platform capabilities are additive and incur no alteration of intent.
A product review is a good use case in which the platform may be extended by composing capabilities. Consider the typical components of a review:
- Simple content, often in threaded format, describing the review's target
- Ratings quantifying the quality of various facets of the review's target
A comment, with its inherent hierarchical nature, represents a natural root entity in the definition of a review. By leveraging the data extensibility of the Optimizely Community API, a comment may be composed with additional data to complete the use case. For example, it may refer to a series of ratings, purchase dates, and other supporting details.
See also Community API class library for the REST API service layer.
Updated 3 months ago