A JSON-based hypermedia format for managing and querying simple collections with full CRUD support.
Collection+JSON is a hypermedia document format based on JSON, designed to manage and query simple collections like contacts, tasks, or blog entries. It provides a standardized structure for performing CRUD operations and executing queries over HTTP, enabling clients to interact with collections in a discoverable and consistent manner.
API designers and developers building or consuming RESTful services that manage collections of resources, particularly those who need a simple, hypermedia-driven approach for read/write operations.
It offers a lightweight, extensible alternative to custom API formats by providing a well-defined hypermedia specification that promotes interoperability and reduces the need for out-of-band documentation.
Collection+JSON Specification
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides clear mappings for Create, Read, Update, and Delete operations using HTTP methods, as detailed in sections 1.1.1 to 1.1.5 of the README, ensuring predictable API behavior.
Includes query templates that allow clients to construct and execute predefined queries by appending parameters to URIs, enhancing API discoverability without out-of-band documentation (section 1.2).
Supports foreign markup and custom link relations, enabling domain-specific extensions without breaking compatibility, as outlined in section 7 on extensibility.
Defines a dedicated error object with code, message, and title properties for consistent error reporting, improving client-side debugging (section 2.2).
Last updated in 2011 with no recent developments, meaning it lacks support for modern web standards like HTTP/2, partial updates (PATCH), or streaming data.
Specifically designed for simple collections and does not support OBJECT or ARRAY types in data values, restricting complex data structures (section 6.6 notes VALUE cannot be objects or arrays).
As a niche hypermedia format, it has fewer client libraries, tools, and community resources compared to alternatives like JSON:API or HAL, increasing implementation effort.