{
  "opencollection": "1.0.0",
  "info": {
    "name": "One-Shot access notifications API",
    "version": "1.0.0"
  },
  "items": [
    {
      "info": {
        "name": "notifications",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List Notifications",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/notifications",
            "params": [
              {
                "name": "unread_only",
                "value": "",
                "type": "query"
              },
              {
                "name": "page",
                "value": "",
                "type": "query"
              },
              {
                "name": "page_size",
                "value": "",
                "type": "query"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Paginated notification list for the current user, with actor display name."
        },
        {
          "info": {
            "name": "Get Unread Count",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/notifications/unread-count",
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Fast count of unread notifications for the current user."
        },
        {
          "info": {
            "name": "Mark Notification Read",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/notifications/:notification_id/read",
            "params": [
              {
                "name": "notification_id",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Mark a single notification as read.\n\nNote: Notifications are user-scoped, not workspace-scoped. No workspace authz required."
        },
        {
          "info": {
            "name": "Mark All Read",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/notifications/read-all",
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Mark all unread notifications as read for the current user.\n\nNote: Notifications are user-scoped, not workspace-scoped. No workspace authz required."
        },
        {
          "info": {
            "name": "Notification Stream",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/notifications/stream",
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "SSE stream: polls DB every 3s for new notifications. Heartbeat every 15s."
        }
      ]
    }
  ],
  "bundled": true
}