Create a new collection
POST /collections
Creates a manual-membership collection owned by the caller.
Query-membership and hybrid modes ship in 1.11.B; for now
only membership=manual is accepted.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”object
Only manual is accepted in 1.11.A; passing query or
hybrid returns 400 until 1.11.B ships.
Initial values for collection-scoped custom
fields. The handler validates that every required=true
collection field is present; missing required fields
return 422 with required_collection_field_missing.
object
Responses
Section titled “ Responses ”Collection created
A user-owned collection of assets, per ADR 0009. UUID-keyed,
federation-prepared (origin_server_id), with three
orthogonal axes: visibility, membership, and lifecycle.
object
manual only for 1.11.A. query and hybrid ship in
1.11.B once the search DSL (ADR 0010) lands.
TTL. Null = permanent.
Free-form admin-set hint (“for_review”, “for_proofing”, …).
Replaces RS’s single-purpose archived flag.
Federation home server. Null = local. Populated when collections sync in from a peer in a later phase.
Soft-delete timestamp. Non-null only on rows surfaced by
the admin include_deleted=true listing (the trash view);
null on live rows.
Optional reason captured at soft-delete time.
Malformed request
object
Human-readable error summary
Example
the request could not be completedAuthentication required, missing, or invalid
object
Human-readable error summary
Example
the request could not be completedExample
{ "error": "authentication required: sign in and retry with a valid session or API token"}A required collection-scoped field (see
field_definition.subject_kind = 'collection' +
required = true) is missing from the request body.
This gate is enforced on CREATE only; subsequent
UPDATEs don’t re-validate.
object
Unexpected server error
object
Human-readable error summary
Example
the request could not be completed