{
  "openapi": "3.0.1",
  "info": {
    "title": "Apify Store Trends API - Niche Finder, Rising Actors",
    "description": "Apify Store trends API backed by a daily archive of every public actor (users 7/30/90 days, total users, runs, success rate, rating, price), archived daily since 2026-11-03. Three modes: rising actors sorted by momentum or user growth, niche finder with a verdict per keyword (open, crowded, thin, co",
    "version": "0.1",
    "x-build-id": "Zd6NJztQrTazLhLHC"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/martin10291~apify-store-trends-niche-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-martin10291-apify-store-trends-niche-finder",
        "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/martin10291~apify-store-trends-niche-finder/runs": {
      "post": {
        "operationId": "runs-sync-martin10291-apify-store-trends-niche-finder",
        "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/martin10291~apify-store-trends-niche-finder/run-sync": {
      "post": {
        "operationId": "run-sync-martin10291-apify-store-trends-niche-finder",
        "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": {
          "mode": {
            "title": "Mode",
            "enum": [
              "rising",
              "niche",
              "history"
            ],
            "type": "string",
            "description": "rising = actors whose usage is growing (default). niche = for each search term, how crowded the Store is and whether there is room for a new actor. history = daily usage history of specific actors.",
            "default": "rising"
          },
          "search": {
            "title": "Keyword filter (rising mode)",
            "type": "array",
            "description": "Rising mode only. Optional keywords; only actors whose name, title or category match are returned (all words of one keyword must match; any keyword can match). Leave empty for the whole Store.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "category": {
            "title": "Category (rising mode)",
            "type": "string",
            "description": "Rising mode only. Optional Apify Store category in capitals, for example AI, ECOMMERCE, SOCIAL_MEDIA, LEAD_GENERATION, DEVELOPER_TOOLS. Empty means all categories.",
            "default": ""
          },
          "minUsers30": {
            "title": "Minimum users in last 30 days (rising mode)",
            "minimum": 0,
            "type": "integer",
            "description": "Rising mode only. Ignore actors with fewer monthly users than this. Higher values remove noise from brand-new or tiny actors.",
            "default": 10
          },
          "sortBy": {
            "title": "Sort by (rising mode)",
            "enum": [
              "momentum",
              "users30Delta",
              "users30DeltaPct",
              "users30"
            ],
            "type": "string",
            "description": "Rising mode only. momentum = how much faster the last 7 days grow than the 30-day average (above 1 means accelerating). users30Delta and users30DeltaPct = change in monthly users since the comparison day. users30 = biggest actors first.",
            "default": "momentum"
          },
          "lookbackDays": {
            "title": "Lookback days (rising mode)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Rising mode only. Compare today with the archive snapshot about this many days ago. If the archive is younger, the oldest snapshot is used. Actors added to the archive later are compared with their own first snapshot (see comparedWith and firstSeenDay in each row).",
            "default": 30
          },
          "searchTerms": {
            "title": "Search terms (niche mode)",
            "type": "array",
            "description": "Niche mode only, required there. Keywords describing a possible actor idea, for example tiktok, company register, pdf. You get one verdict row per term.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "actors": {
            "title": "Actors (history mode)",
            "type": "array",
            "description": "History mode only, required there. Actor IDs in the form username/name, for example apify/website-content-crawler or clockworks/tiktok-scraper.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "limit": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum number of rows returned (1 to 1000). In niche mode it also limits how many top actors are listed per term.",
            "default": 50
          },
          "onlyNew": {
            "title": "Only new actors since last run (rising mode)",
            "type": "boolean",
            "description": "For monitoring in rising mode: output only actors not output before for this Monitor ID. The first run outputs everything. Ignored in niche and history modes.",
            "default": false
          },
          "monitorId": {
            "title": "Monitor ID",
            "type": "string",
            "description": "Separate memory for each watch (used with only-new mode). Use a different ID per keyword, category or filter combination.",
            "default": "default"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}