Public API

Retrieve a list of all your pages.

GET /api/public/pages

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Response

{
  "personalPages": {
    "count": 3,
    "pages": [
      {
        "id": "page_001",
        "title": "Personal Page A",
        "slug": "my-slug-a",
        "createdAt": "2025-01-01T10:00:00.000Z",
        "updatedAt": "2025-01-10T15:00:00.000Z"
      },
      {
        "id": "page_002",
        "title": "Personal Page B",
        "slug": "my-slug-b",
        "createdAt": "2025-02-01T12:30:00.000Z",
        "updatedAt": "2025-02-15T08:45:00.000Z"
      },
      {
        "id": "page_003",
        "title": "Personal Page C",
        "slug": "my-slug-c",
        "createdAt": "2025-03-01T09:20:00.000Z",
        "updatedAt": "2025-03-20T17:00:00.000Z"
      }
    ]
  },
  "organizationPages": {
    "count": 3,
    "organizations": [
      {
        "organization": {
          "id": "org_001",
          "name": "Example Organization"
        },
        "pages": [
          {
            "id": "org_page_001",
            "title": "Org Page A",
            "slug": "org-slug-a",
            "createdAt": "2025-04-01T11:00:00.000Z",
            "updatedAt": "2025-04-05T14:00:00.000Z"
          },
          {
            "id": "org_page_002",
            "title": "Org Page B",
            "slug": "org-slug-b",
            "createdAt": "2025-04-10T10:15:00.000Z",
            "updatedAt": "2025-04-15T16:30:00.000Z"
          },
          {
            "id": "org_page_003",
            "title": "Org Page C",
            "slug": "org-slug-c",
            "createdAt": "2025-04-20T09:45:00.000Z",
            "updatedAt": "2025-04-25T13:20:00.000Z"
          }
        ]
      }
    ]
  },
  "summary": {
    "totalPersonalPages": 3,
    "totalOrganizationPages": 3,
    "totalPages": 6,
    "organizationsCount": 1
  }
}

Retrieve analytics data for a specific page by its slug.

GET /api/public/stats/[slug]

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Query params

Name
Type
Description

startDate

YYYY-MM-DD (optional)

Start date for data filtering

endDate

YYYY-MM-DD (optional)

End date for data filtering

Response

{
  "slug": "my-page-slug",
  "totalViews": 1234,
  "totalClicks": 456,
  "totalDirect": 78,
  "totalChatbotClicks": 90,
  "totalSafed": 12,
  "totalBlocked": 34,
  "topCountries": [
    { "country": "US", "views": 320 },
    { "country": "FR", "views": 215 }
  ],
  "topLinks": [
    { "url": "https://example.com", "clicks": 140 }
  ],
  "topReferrers": [
    { "referrer": "https://google.com", "views": 300 },
    { "referrer": "https://facebook.com", "views": 200 }
  ],
  "topDeviceTypes": [
    { "deviceType": "mobile", "views": 500 },
    { "deviceType": "desktop", "views": 400 }
  ],
  "dailyStats": [
    {
      "date": "2025-06-20",
      "views": 120,
      "clicks": 45
    }
  ]
}

Last updated