{
  "openapi": "3.0.1",
  "info": {
    "title": "Likee Scraper - Videos, Creators & Trending by Country",
    "description": "Scrape Likee (likee.video) without login: all videos of a profile with views, likes, comments, shares and engagement, video by link, featured creators and trending hashtags by country, and a Creators mode with one summary row per profile. US$ 4 per 1,000.",
    "version": "0.1",
    "x-build-id": "aF7ffWKTwbTp2hYdt"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapewise~likee-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapewise-likee-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapewise~likee-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapewise-likee-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapewise~likee-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapewise-likee-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "profiles": {
            "title": "Profiles",
            "type": "array",
            "description": "Likee creators, one per line: profile link (https://likee.video/@troomhands), handle with or without @ (troomhands, @troomhands) or numeric uid. Each profile returns its videos, newest first (or most viewed first with 'Sort by: popular').",
            "items": {
              "type": "string"
            }
          },
          "videoUrls": {
            "title": "Video links",
            "type": "array",
            "description": "Likee video links, one per line, in the form https://likee.video/@handle/video/<id>. The Actor finds each video in its creator's profile and returns it with its stats.",
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Featured creators by country",
            "type": "array",
            "description": "Two-letter country codes, one per line (US, ID, RU, IN, BR...). For each country the Actor takes the creators Likee features there and returns their videos, or one row per creator in 'Creators' mode. Countries without their own list return Likee's default list (flagged as featuredListIsDefault).",
            "items": {
              "type": "string"
            }
          },
          "maxCreatorsPerCountry": {
            "title": "Max creators per country",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "How many featured creators to take from each country, in Likee's order. Empty = 20. Likee lists up to 100 per country. 0 = no creators (only the trending hashtags, if turned on)."
          },
          "includeTrendingHashtags": {
            "title": "Trending hashtags by country",
            "type": "boolean",
            "description": "Adds one row per trending hashtag in each country above (or in the US when no country is set): hashtag name, total views and number of posts. Likee shows 1 to 50 per country (in our tests: US 8, Indonesia 1, Russia 50). Each hashtag row is charged like a video."
          },
          "resultType": {
            "title": "What to return",
            "enum": [
              "videos",
              "creators"
            ],
            "type": "string",
            "description": "'Videos' returns every video with its stats. 'Creators' returns one row per profile: followers, total likes, verified badge, plus averages and medians over its latest videos (views, likes, engagement rate, posts per week, best video). Same price per row.",
            "default": "videos"
          },
          "maxVideosPerProfile": {
            "title": "Max videos per profile",
            "minimum": 0,
            "type": "integer",
            "description": "Videos returned per profile (in 'Creators' mode: latest videos used for the averages). Empty = 50 (30 in 'Creators' mode, no cap per profile when 'Max items' is set). 0 = all videos of the profile."
          },
          "maxItems": {
            "title": "Max items (whole run)",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after this many rows in the whole run, across all profiles, links and countries. Empty or 0 = no total limit. You pay per row delivered."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "latest",
              "popular"
            ],
            "type": "string",
            "description": "'Latest' follows the profile from the newest video back. 'Popular' reads up to 3,000 videos of each profile and returns the most viewed first.",
            "default": "latest"
          },
          "publishedAfter": {
            "title": "Only videos published after",
            "type": "string",
            "description": "Only videos newer than this date (YYYY-MM-DD) or relative period ('7 days', '2 weeks'). Use it to collect only new videos on a schedule. With 'Latest', the Actor stops reading a profile once it passes this date."
          },
          "publishedBefore": {
            "title": "Only videos published before",
            "type": "string",
            "description": "Only videos older than this date (YYYY-MM-DD) or relative period."
          },
          "minViews": {
            "title": "Min views",
            "minimum": 0,
            "type": "integer",
            "description": "Skip videos with fewer views. Skipped videos are not charged."
          },
          "minLikes": {
            "title": "Min likes",
            "minimum": 0,
            "type": "integer",
            "description": "Skip videos with fewer likes."
          },
          "minComments": {
            "title": "Min comments",
            "minimum": 0,
            "type": "integer",
            "description": "Skip videos with fewer comments."
          },
          "minShares": {
            "title": "Min shares",
            "minimum": 0,
            "type": "integer",
            "description": "Skip videos with fewer shares."
          },
          "minEngagementRate": {
            "title": "Min engagement rate (%)",
            "minimum": 0,
            "type": "number",
            "description": "Skip videos below this engagement rate, in percent: (likes + comments + shares) / views x 100."
          },
          "minFollowers": {
            "title": "Min followers",
            "minimum": 0,
            "type": "integer",
            "description": "Skip creators with fewer followers (useful with featured creators by country). Skipped creators are not charged."
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Apify datacenter proxy is the default and works for Likee. Failed requests are retried on a new IP.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}