{
  "data": {
    "id": "njzn6GtGvxIYRp782",
    "userId": "HIMU0xktu1JeZb4Xl",
    "name": "tiktok-video-scraper",
    "username": "fetch_cat",
    "description": "Extract public TikTok video metadata, author details, engagement statistics, hashtags, and music from video URLs.",
    "isPublic": true,
    "createdAt": "2026-06-27T21:23:04.666Z",
    "modifiedAt": "2026-07-09T11:23:05.579Z",
    "taggedBuilds": {
      "latest": {
        "buildId": "sGofb7SVKbUrDlZ8j",
        "finishedAt": "2026-07-09T11:23:05.579Z",
        "buildNumberInt": 100013,
        "buildNumber": "0.1.13"
      }
    },
    "stats": {
      "totalBuilds": 13,
      "totalRuns": 35,
      "totalUsers": 2,
      "totalUsers7Days": 1,
      "totalUsers30Days": 1,
      "totalUsers90Days": 1,
      "lastRunStartedAt": "2026-07-10T09:50:24.871Z",
      "actorReviewCount": 0,
      "actorReviewRating": 0,
      "bookmarkCount": 0,
      "publicActorRunStats30Days": {
        "ABORTED": 0,
        "FAILED": 0,
        "SUCCEEDED": 12,
        "TIMED-OUT": 0,
        "TOTAL": 12
      }
    },
    "versions": [
      {
        "versionNumber": "0.1",
        "sourceType": "SOURCE_FILES",
        "buildTag": "latest"
      }
    ],
    "defaultRunOptions": {
      "build": "latest",
      "timeoutSecs": 300,
      "memoryMbytes": 512
    },
    "exampleRunInput": {
      "body": "{\"videoUrls\":[\"https://www.tiktok.com/@scout2015/video/6718335390845095173\"],\"maxItems\":1}",
      "contentType": "application/json"
    },
    "categories": [
      "SOCIAL_MEDIA",
      "VIDEOS",
      "MARKETING"
    ],
    "isDeprecated": false,
    "title": "TikTok Video Scraper",
    "pictureUrl": "https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/HIMU0xktu1JeZb4Xl-actor-njzn6GtGvxIYRp782-B5WK9yA9r3-tiktok-curated-actor-icon.png",
    "seoTitle": "TikTok Video Scraper - Metadata, Captions & Stats",
    "seoDescription": "Extract public TikTok video metadata, author details, captions, hashtags, music, engagement stats, and URLs to CSV, JSON, Excel, or API workflows.",
    "pricingInfos": [
      {
        "pricingModel": "PAY_PER_EVENT",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "start": {
              "eventTitle": "Start",
              "eventDescription": "One-time fee per run",
              "eventPriceUsd": 0.005,
              "isOneTimeEvent": true
            },
            "item": {
              "eventTitle": "Video result",
              "eventDescription": "Per TikTok video result saved to the dataset",
              "eventTieredPricingUsd": {
                "FREE": {
                  "tieredEventPriceUsd": 0.00115
                },
                "BRONZE": {
                  "tieredEventPriceUsd": 0.001
                },
                "SILVER": {
                  "tieredEventPriceUsd": 0.00078
                },
                "GOLD": {
                  "tieredEventPriceUsd": 0.0006
                },
                "PLATINUM": {
                  "tieredEventPriceUsd": 0.0004
                },
                "DIAMOND": {
                  "tieredEventPriceUsd": 0.00028
                }
              },
              "isPrimaryEvent": true
            }
          }
        },
        "apifyMarginPercentage": 0.2,
        "startedAt": "2026-06-27T21:24:45.136Z",
        "createdAt": "2026-06-27T21:24:45.211Z"
      },
      {
        "pricingModel": "PAY_PER_EVENT",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "start": {
              "eventTitle": "Run started",
              "eventDescription": "One-time fee charged when a run starts. Covers fixed startup cost (init, proxy warmup, first HTTP setup).",
              "eventPriceUsd": 0.005,
              "isOneTimeEvent": true
            },
            "item": {
              "eventTitle": "Item extracted",
              "eventDescription": "Charged per item extracted.",
              "eventTieredPricingUsd": {
                "FREE": {
                  "tieredEventPriceUsd": 0.000079776
                },
                "BRONZE": {
                  "tieredEventPriceUsd": 0.00006937
                },
                "SILVER": {
                  "tieredEventPriceUsd": 0.000054109
                },
                "GOLD": {
                  "tieredEventPriceUsd": 0.000041622
                },
                "PLATINUM": {
                  "tieredEventPriceUsd": 0.000027748
                },
                "DIAMOND": {
                  "tieredEventPriceUsd": 0.000019424
                }
              },
              "isPrimaryEvent": true
            }
          }
        },
        "apifyMarginPercentage": 0.2,
        "startedAt": "2026-06-27T21:32:21.963Z",
        "createdAt": "2026-06-27T21:32:22.041Z"
      },
      {
        "pricingModel": "PAY_PER_EVENT",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "start": {
              "eventTitle": "Run started",
              "eventDescription": "One-time fee charged when a run starts. Covers fixed startup cost (init, proxy warmup, first HTTP setup).",
              "eventPriceUsd": 0.005,
              "isOneTimeEvent": true
            },
            "item": {
              "eventTitle": "Item extracted",
              "eventDescription": "Charged per item extracted.",
              "eventTieredPricingUsd": {
                "FREE": {
                  "tieredEventPriceUsd": 0.00074027
                },
                "BRONZE": {
                  "tieredEventPriceUsd": 0.00064371
                },
                "SILVER": {
                  "tieredEventPriceUsd": 0.0005021
                },
                "GOLD": {
                  "tieredEventPriceUsd": 0.00038623
                },
                "PLATINUM": {
                  "tieredEventPriceUsd": 0.00025749
                },
                "DIAMOND": {
                  "tieredEventPriceUsd": 0.00018024
                }
              },
              "isPrimaryEvent": true
            }
          }
        },
        "apifyMarginPercentage": 0.2,
        "startedAt": "2026-06-27T21:37:28.000Z",
        "createdAt": "2026-06-27T21:37:28.618Z"
      },
      {
        "pricingModel": "PAY_PER_EVENT",
        "pricingPerEvent": {
          "actorChargeEvents": {
            "start": {
              "eventTitle": "Run started",
              "eventDescription": "One-time fee charged when a run starts. Covers fixed startup cost (init, proxy warmup, first HTTP setup).",
              "eventPriceUsd": 0.005,
              "isOneTimeEvent": true
            },
            "item": {
              "eventTitle": "Item extracted",
              "eventDescription": "Charged per item extracted.",
              "eventTieredPricingUsd": {
                "FREE": {
                  "tieredEventPriceUsd": 0.000098051
                },
                "BRONZE": {
                  "tieredEventPriceUsd": 0.000085261
                },
                "SILVER": {
                  "tieredEventPriceUsd": 0.000066504
                },
                "GOLD": {
                  "tieredEventPriceUsd": 0.000051157
                },
                "PLATINUM": {
                  "tieredEventPriceUsd": 0.000034105
                },
                "DIAMOND": {
                  "tieredEventPriceUsd": 0.000023873
                }
              },
              "isPrimaryEvent": true
            }
          }
        },
        "apifyMarginPercentage": 0.2,
        "startedAt": "2026-06-27T22:01:46.000Z",
        "createdAt": "2026-06-27T22:01:46.842Z"
      }
    ],
    "notice": "NONE",
    "isCritical": false,
    "isGeneric": false,
    "hasNoDataset": false,
    "isSourceCodeHidden": true,
    "standbyUrl": null,
    "actorPermissionLevel": "LIMITED_PERMISSIONS",
    "readmeSummary": "## TikTok Video Scraper\n\nScrapes public TikTok video pages and converts TikTok video URLs into structured, keyword-rich metadata rows: normalized/canonical video URLs and IDs, creator handles and display names, caption text, publish timestamps, video duration, music/sound title and author, hashtags, cover image URLs, and public engagement metrics (likes, comments, shares, plays/views, saves) alongside availability flags and fetch timestamps. Core mechanisms include URL normalization, HTML/API extraction from public video pages, and repeated run capability for monitoring and dataset generation; outputs are structured per-video records suitable for reporting, analysis, enrichment, and automated workflows.\n\n## Use cases\n\n- Campaign reporting for sponsored or branded TikTok videos (export engagement metrics and captions)  \n- Creator monitoring to track posts, captions, music, hashtags, and performance over time  \n- Competitor research by saving competitor video metadata for recurring analysis  \n- Content analysis of captions, hashtag choices, music usage, duration, and public performance signals  \n- Data enrichment by adding TikTok video context to existing URL lists or databases  \n- API workflows that require programmatic access to public TikTok video metadata for integrations and automation",
    "deploymentKey": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9lDsePN1yR9hlO4hNsTpqxXJw0HAkjER6SdEvSPV12HDHZuKcRI248Xr6FIy5T0rN50GezS/c+OtRawP6Cgp9XQoO4wrzoMzvulg905HH8zPB0K7rYfCbq9iHKTDzYuUD3UhNEz3t7G8556SQgBeqKmDkR5Cv7Wa3CrUeibUolPeQUxzkh7nfmUMb73M3PMJvZnZcGKNARsIlxI+vrzEKQu7ESIknMGvnUVyVZh+bzlCAVTtncdbbRg6nxi2/EXSZLysnVCqWU6peWzyPq7R+HPEY52LKhE5aymtMZitd5tm2mnzZkRO1j5+lnLCFow/ZiTKpt4rtSteLqflx6oiX \n"
  }
}