REST API & MCP

API Documentation

Everything you need to integrate Curyloop into your workflows. Authenticate with API keys, manage groups and sessions, and connect via MCP for AI-powered access.

Scheduled automation workflows with Curyloop's REST API.

n8n Workflow Automation

For scheduled, recurring curation, use Curyloop's REST API with n8n workflows.

REST API Quick Reference

Add an item via the extension endpoint:

bash
curl -X POST https://curyloop.com/api/extension/items \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sessionId": "your-session-id",
    "groupId": "your-group-id",
    "url": "https://example.com/article",
    "title": "Optional custom title",
    "description": "Why this is relevant",
    "priority": "high"
  }'
FieldTypeRequiredDescription
sessionIdstringYesTarget session ID
groupIdstringYesGroup ID
urlstringYesURL to add
titlestringNoCustom title (auto-extracted if omitted)
descriptionstringNoYour notes
prioritystringNolow, medium, or high

RSS Feed Auto-Curation

Automatically curate articles from your favorite blogs and publications.

Workflow: Schedule Trigger → RSS Read → HTTP Request

  1. Schedule Trigger - Run daily or weekly
  2. RSS Read - Fetch items from your target feeds (e.g., https://blog.vercel.com/feed)
  3. HTTP Request - For each new item, POST to Curyloop:
Method: POST
URL: https://curyloop.com/api/extension/items
Headers:
  Authorization: Bearer YOUR_API_KEY
  Content-Type: application/json
Body:
{
  "sessionId": "{{ $json.sessionId }}",
  "groupId": "{{ $json.groupId }}",
  "url": "{{ $json.link }}",
  "title": "{{ $json.title }}",
  "description": "{{ $json.contentSnippet }}",
  "priority": "medium"
}

GitHub Stars Sync

Automatically sync your GitHub stars to a Curyloop session.

Workflow: Schedule Trigger → GitHub API → HTTP Request

  1. Schedule Trigger - Run daily
  2. HTTP Request - Fetch recent stars from https://api.github.com/users/YOUR_USERNAME/starred?sort=created&per_page=10
  3. HTTP Request - For each repo, POST to Curyloop:
Body:
{
  "sessionId": "{{ $json.sessionId }}",
  "groupId": "{{ $json.groupId }}",
  "url": "{{ $json.html_url }}",
  "title": "{{ $json.full_name }}",
  "description": "{{ $json.stargazers_count }} stars - {{ $json.description }}",
  "priority": "medium"
}

Twitter/X Bookmarks

Save your Twitter/X bookmarks to Curyloop for team sharing.

Workflow: Schedule Trigger → Twitter API v2 → HTTP Request

  1. Schedule Trigger - Run daily
  2. HTTP Request - Fetch bookmarks via Twitter API v2
  3. HTTP Request - For each bookmark, POST to Curyloop:
Body:
{
  "sessionId": "{{ $json.sessionId }}",
  "groupId": "{{ $json.groupId }}",
  "url": "https://twitter.com/i/status/{{ $json.id }}",
  "title": "{{ $json.text.substring(0, 100) }}",
  "description": "Bookmarked from @{{ $json.author }}",
  "priority": "low"
}