Skip to content

API referenceCollections

List a collection's changes

GET/v1/collections/{id}/changes

Every member's Change Reports in one feed, newest first, each naming its member's platform and target. A Tracker in several Collections appears in each one's feed. Quiet cycles are absent by design.

Price

Free.

Parameters

NameInTypeRequiredDefaultDescription
idpathstringRequired—Collection id.
sincequerystringformat date-timeOptional—Only reports written after this ISO 8601 instant.
limitqueryintegermin 1; max 100Optional25Items per page.
cursorquerystringOptional—Opaque next_cursor from the previous page.

Responses

200 OK

{ items, next_cursor }.

object

  • itemsarray of objectrequired
    • idstringrequired
    • tracker_idstringrequired
    • run_idstringrequirednullable
    • cycle_keystringrequiredOne report per Tracker per cycle.
    • triggersarray of stringrequiredCreator: new_videos, followers, outlier, velocity. Advertiser: new_ads, stopped_ads, variant_growth, new_countries_or_placements.
    • changesanyThe before/after numbers behind the triggers.
    • summarystringrequirednullable
    • created_atstringrequired
    • platformstringrequiredThe member's Platform.
    • targetstringrequiredThe member's handle, video id, tag or sound id.
  • next_cursorstringrequirednullablePass back as cursor. Null on the last page.

200 · `{ items, next_cursor }`.

{
  "items": [
    {
      "id": "chg_2ac910f4d8",
      "tracker_id": "trk_4b1e90c7aa",
      "run_id": "run_c07a41bb92",
      "cycle_key": "tiktok:creator:someone:2026-09-08",
      "triggers": [
        "new_videos",
        "outlier"
      ],
      "changes": {
        "new_videos": {
          "before": 61,
          "after": 62,
          "count": 1,
          "videos": [
            {
              "id": "7300000000000000000",
              "url": "https://www.tiktok.com/@someone/video/7300000000000000000",
              "posted_at": "2026-09-05T06:32:11.000Z",
              "views": 1284000
            }
          ]
        },
        "outliers": [
          {
            "id": "7300000000000000000",
            "url": "https://www.tiktok.com/@someone/video/7300000000000000000",
            "views": 1284000,
            "outlier": 4.21,
            "threshold": 3
          }
        ]
      },
      "summary": "1 new video, 1 outlier at 4.2x median",
      "created_at": "2026-09-08T04:00:11.402Z",
      "platform": "tiktok",
      "target": "someone"
    }
  ],
  "next_cursor": null
}

400 Bad Request

invalid_request for a cursor that is not a next_cursor this API issued. Nothing is charged. Or: invalid_request — a since that is not an ISO 8601 time, a bad limit, or a cursor that is not a previous next_cursor.

object

RFC 9457 problem document, served as application/problem+json. Branch on code, never on the prose.

  • typestringrequired
  • titlestringrequired
  • statusintegerrequired
  • codestringrequiredone of missing_authorization, invalid_key, key_revoked, invalid_token, organization_not_selected, organization_access_revoked, connection_revoked, forbidden, invalid_request, unsupported_platform, unsupported_kind, kind_deprecated, not_found, video_too_long, idempotency_conflict, run_not_ready, advertiser_ambiguous, insufficient_balance, rate_limit_exceeded, concurrency_limit_exceeded, tracker_limit_exceeded, webhook_limit_exceeded, webhook_rotation_in_progress, collection_limit_exceeded, collection_name_taken, collection_kind_mismatch, media_unavailable, vendor_error, source_unavailable, service_unavailable, internal_errorStable machine-readable code.
  • detailstring

400 · invalid_request

{
  "type": "https://www.shortsintel.com/docs/reference/errors/invalid_request",
  "title": "Invalid request",
  "status": 400,
  "code": "invalid_request",
  "detail": "`since` must be an ISO 8601 date-time."
}

401 Unauthorized

missing_authorization, invalid_key, key_revoked or invalid_token.

object

RFC 9457 problem document, served as application/problem+json. Branch on code, never on the prose.

  • typestringrequired
  • titlestringrequired
  • statusintegerrequired
  • codestringrequiredone of missing_authorization, invalid_key, key_revoked, invalid_token, organization_not_selected, organization_access_revoked, connection_revoked, forbidden, invalid_request, unsupported_platform, unsupported_kind, kind_deprecated, not_found, video_too_long, idempotency_conflict, run_not_ready, advertiser_ambiguous, insufficient_balance, rate_limit_exceeded, concurrency_limit_exceeded, tracker_limit_exceeded, webhook_limit_exceeded, webhook_rotation_in_progress, collection_limit_exceeded, collection_name_taken, collection_kind_mismatch, media_unavailable, vendor_error, source_unavailable, service_unavailable, internal_errorStable machine-readable code.
  • detailstring

401 · Example

{
  "type": "https://www.shortsintel.com/docs/reference/errors/invalid_key",
  "title": "Invalid key",
  "status": 401,
  "code": "invalid_key",
  "detail": "That API key does not exist. Keys look like `sk_live_...` and are created in the console."
}

404 Not Found

not_found — no Collection with that id for this Customer.

object

RFC 9457 problem document, served as application/problem+json. Branch on code, never on the prose.

  • typestringrequired
  • titlestringrequired
  • statusintegerrequired
  • codestringrequiredone of missing_authorization, invalid_key, key_revoked, invalid_token, organization_not_selected, organization_access_revoked, connection_revoked, forbidden, invalid_request, unsupported_platform, unsupported_kind, kind_deprecated, not_found, video_too_long, idempotency_conflict, run_not_ready, advertiser_ambiguous, insufficient_balance, rate_limit_exceeded, concurrency_limit_exceeded, tracker_limit_exceeded, webhook_limit_exceeded, webhook_rotation_in_progress, collection_limit_exceeded, collection_name_taken, collection_kind_mismatch, media_unavailable, vendor_error, source_unavailable, service_unavailable, internal_errorStable machine-readable code.
  • detailstring

404 · Example

{
  "type": "https://www.shortsintel.com/docs/reference/errors/not_found",
  "title": "Not found",
  "status": 404,
  "code": "not_found",
  "detail": "No such resource for this Customer."
}

Request samples

curl "https://www.shortsintel.com/v1/collections/col_7d20e1b5c4/changes?limit=25" \
  -H "Authorization: Bearer sk_live_YOUR_KEY"