Account Analytics

List all accounts with analytics

Retrieves paginated accounts with comprehensive analytics including profile data (followers, following, display name), computed metrics (total views, engagement rate, virality rate), and tracking metadata. Video totals are provided as totalVideosTracked, totalVideosRetained, totalVideosExcluded, and totalVideosPublished. Supports sorting, searching by username, and filtering by platforms, tags, legacy projects, and date ranges.

get/accounts

Request

  • Base URL: https://viral.app/api/v1
  • URL: https://viral.app/api/v1/accounts
  • Auth: API key in header x-api-key

Query parameters

pagenumber

Page number (1-based index)

Example:1
perPagenumber

Number of items per page (1-100)

Example:10
sortColstring

Sort column

Example:publishedAt
sortDir'asc' | 'desc'

Sort direction

Example:asc
searchstring

Account username on the platform

Example:acme
platformsstring[] nullable

Social media platforms (facebook, instagram, tiktok, youtube, snapchat)

[
  "facebook",
  "instagram"
]
accountsstring[] nullable

Organization account IDs

[
  "orgacc_1A2B3C4D5E6F"
]
projectsstring[] nullable

Organization project IDs

Deprecated. Use tag filters (tags / tagGroups) instead — a project's virtual project tag id (orgproj_…) works as a tag id. See the migration guide.

[
  "orgproj_1A2B3C4D5E6F"
]
tagsstring[] nullable

Tag IDs. Custom and project tags must all match (intersection); country tags and continent:<CODE> values combine into one geographic group satisfied by any of them. none:<category> values (custom/project/country/continent) match entities WITHOUT any tag of the category. Ignored when tagGroups is provided.

[
  "orgtag_1A2B3C4D5E6F"
]
mode'any' | 'all' required

How the group's tags combine: any = OR, all = intersection.

idsstring[] required

Tag IDs, including continent:<CODE> and none:<category> values.

[
  {
    "mode": "all",
    "ids": [
      "orgtag_1A2B3C4D5E6F"
    ]
  },
  {
    "mode": "any",
    "ids": [
      "systag_1A2B3C4D5E6F",
      "continent:EU"
    ]
  }
]
tagsMatch'rules' | 'videos'

How the tag filter targets rows: rules (default) matches entity-level tag rules only; videos matches rows with at least one video satisfying the whole filter.

Example:rules
dateRange[from]string
Example:2025-01-01

Start date in ISO format (YYYY-MM-DD)

dateRange[to]string
Example:2025-01-31

End date in ISO format (YYYY-MM-DD)

contentTypesstring[] nullable

Content types (video, slideshow)

[
  "video"
]
viewMode'internal' | 'competitors' | 'all'

Response

OK

pageCountnumber required

Total number of pages

totalRowsnumber required

Total number of rows

Example response

{
  "data": [
    {
      "id": "orgacc_W97M6KLWV4Yq",
      "platform": "tiktok",
      "platformAccountId": "6891234567890",
      "maxVideos": 100,
      "lastErrorAt": null,
      "lastErrorCode": null,
      "createdAt": "2025-01-15T10:00:00.000Z",
      "updatedAt": "2025-12-20T08:00:00.000Z",
      "userId": "user_PxyfnFj5JUx5",
      "orgId": "org_GbuDqv3RjdSW",
      "orgCreatorId": "orgcre_Ab12Cd34Ef56",
      "creatorUserId": "user_3o2HG67jKQ1d",
      "creatorName": "Alex Rivera",
      "creatorEmail": "alex@example.com",
      "creatorImage": "https://example.com/alex.jpg",
      "username": "viral_creator",
      "loadAt": "2025-12-20T08:00:00Z",
      "followerCount": 2500000,
      "followingCount": 150,
      "profilePictureUrl": "https://example.com/profile.jpg",
      "displayName": "Viral Creator",
      "countryCode": "US",
      "totalVideosTracked": 60,
      "totalVideosRetained": 1,
      "totalVideosExcluded": 2,
      "totalVideosPublished": 120,
      "totalViews": 45000000,
      "totalLikes": 3200000,
      "totalComments": 180000,
      "totalShares": 95000,
      "totalBookmarks": 250000,
      "averageViewsPerVideo": 375000,
      "p10Views": 45000,
      "p50Views": 210000,
      "p90Views": 750000,
      "viralityRate": 72,
      "latestVideoPublishedAt": "2025-12-18T15:30:00Z",
      "postActivity": {
        "dayCount": 10,
        "days": [
          {
            "date": "2025-12-11",
            "postedVideos": 0
          },
          {
            "date": "2025-12-12",
            "postedVideos": 1
          },
          {
            "date": "2025-12-13",
            "postedVideos": 0
          },
          {
            "date": "2025-12-14",
            "postedVideos": 0
          },
          {
            "date": "2025-12-15",
            "postedVideos": 1
          },
          {
            "date": "2025-12-16",
            "postedVideos": 0
          },
          {
            "date": "2025-12-17",
            "postedVideos": 2
          },
          {
            "date": "2025-12-18",
            "postedVideos": 1
          },
          {
            "date": "2025-12-19",
            "postedVideos": 0
          },
          {
            "date": "2025-12-20",
            "postedVideos": 0
          }
        ]
      },
      "weeklyViewStats": {
        "weeks": [
          {
            "weekStart": "2025-11-24",
            "avgViews": 310000,
            "p10Views": 42000,
            "p50Views": 195000,
            "p90Views": 640000
          },
          {
            "weekStart": "2025-12-01",
            "avgViews": null,
            "p10Views": null,
            "p50Views": null,
            "p90Views": null
          },
          {
            "weekStart": "2025-12-08",
            "avgViews": 405000,
            "p10Views": 51000,
            "p50Views": 230000,
            "p90Views": 810000
          },
          {
            "weekStart": "2025-12-15",
            "avgViews": 388000,
            "p10Views": 47000,
            "p50Views": 216000,
            "p90Views": 770000
          }
        ]
      },
      "daysSinceLastPost": 2,
      "engagementRate": 0.0811,
      "user": {
        "id": "orgacc_W97M6KLWV4Yq",
        "platform": "tiktok",
        "username": "viral_creator",
        "maxVideos": 100,
        "userId": "user_PxyfnFj5JUx5",
        "orgId": "org_GbuDqv3RjdSW",
        "createdAt": "2025-01-15T10:00:00.000Z",
        "updatedAt": "2025-12-20T08:00:00.000Z",
        "lastErrorAt": null,
        "lastErrorCode": null
      }
    }
  ],
  "pageCount": 1,
  "totalRows": 18
}

Changes

No recorded changes to this operation across all 1 revision of this API.