Add and manage content items (links, articles, repos) within sessions.
Items
Items are the core content units in Curyloop. Each item represents a link, article, tool, or resource shared by a team member during a session.
List Items
Retrieve all items in a session.
GET /api/v1/groups/:groupId/sessions/:sessionId/items
Query Parameters
| Parameter | Type | Description |
|---|---|---|
tag | string | Filter by tag slug |
limit | number | Results per page (default 20, max 100) |
offset | number | Pagination offset |
Response
json
{
"data": [
{
"id": "uuid",
"url": "https://github.com/vercel/next.js",
"title": "Next.js - The React Framework",
"description": "Production-ready React framework with hybrid rendering",
"og_image": "https://nextjs.org/og.png",
"favicon_url": "https://nextjs.org/favicon.ico",
"tags": ["framework", "react", "frontend"],
"contributed_by": {
"id": "uuid",
"name": "Jane Doe"
},
"created_at": "2026-03-04T09:30:00Z"
}
]
}
Add Item
Add a new item to a session. URL metadata (title, OG image, favicon) is extracted automatically.
POST /api/v1/groups/:groupId/sessions/:sessionId/items
Body
json
{
"url": "https://github.com/vercel/next.js",
"description": "Production-ready React framework with hybrid rendering",
"tags": ["framework", "react"]
}
| Field | Type | Required | Description |
|---|---|---|---|
url | string | Yes | Valid URL |
title | string | No | Custom title (auto-extracted if omitted) |
description | string | No | Your notes about this item |
tags | string[] | No | Tag slugs to attach |
Delete Item
Remove an item from a session. Only the contributor or group admin can delete.
DELETE /api/v1/groups/:groupId/sessions/:sessionId/items/:id
Response
json
{
"data": { "deleted": true }
}