{
  "openapi": "3.0.1",
  "info": {
    "title": "Skool Communities Scraper",
    "description": "Collect public Skool community listings and return names, descriptions, member counts, ratings, review counts, images and creation dates. Search by keyword or category, or provide discovery URLs; optionally fetch owner details from each community’s About page.",
    "version": "0.1",
    "x-build-id": "fWmJBIwXjmvAp8jMb"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/axiomworks~skool-communities-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-axiomworks-skool-communities-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/axiomworks~skool-communities-scraper/runs": {
      "post": {
        "operationId": "runs-sync-axiomworks-skool-communities-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/axiomworks~skool-communities-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-axiomworks-skool-communities-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": {
          "searchQueries": {
            "title": "Community search keywords",
            "type": "array",
            "description": "Keywords to search in public Skool discovery, e.g. [\"ai\", \"meta ads\"]. Accepts an array of strings. Empty or omitted browses all communities, optionally filtered by category. Ignored when startUrls is nonempty; results are deduplicated across keywords. No matches returns zero items successfully; try broader keywords or lower minMembers.",
            "items": {
              "type": "string"
            }
          },
          "category": {
            "title": "Discovery category",
            "enum": [
              "hobbies",
              "music",
              "money",
              "spirituality",
              "tech",
              "health",
              "sports",
              "self-improvement",
              "relationships"
            ],
            "type": "string",
            "description": "Discovery category to combine with every keyword, e.g. \"tech\". Choose one listed slug; omit for all categories. Ignored when startUrls is nonempty: use the URL c parameter for a category ID."
          },
          "startUrls": {
            "title": "Discovery or community URLs",
            "type": "array",
            "description": "Skool URLs as strings or objects with a url key, e.g. [{\"url\":\"https://www.skool.com/discovery?q=ai&p=2\"}] or [\"https://www.skool.com/evelyn/about\"]. Discovery accepts q (keyword), c (category ID), p (starting page). Nonempty URLs override searchQueries and category.",
            "default": []
          },
          "includeAdmin": {
            "title": "Fetch public owner and stats",
            "type": "boolean",
            "description": "Read each public About page for admin, stats and landingPageDescription, e.g. true. Default false omits these fields and avoids up to one extra request per community. Unavailable details are null when enabled.",
            "default": false
          },
          "minMembers": {
            "title": "Minimum community member count",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Minimum totalMembers required to save a community, e.g. 1000. Integer 0-1000000, default 0 (no filter). Communities below this threshold are skipped; lower it if a run returns no results.",
            "default": 0
          },
          "maxMembers": {
            "title": "Maximum community member count",
            "minimum": 0,
            "maximum": 10000000,
            "type": "integer",
            "description": "Skip communities with more than this many totalMembers, e.g. 5000 to find small niche communities. Integer 0-10000000, default 0 (no limit).",
            "default": 0
          },
          "minRating": {
            "title": "Minimum review rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Skip communities whose rating is below this value or missing, e.g. 4.5. Number 0-5, default 0 (no filter). Many communities have no reviews, so a high value can return nothing.",
            "default": 0
          },
          "pricing": {
            "title": "Pricing filter",
            "enum": [
              "all",
              "free",
              "paid"
            ],
            "type": "string",
            "description": "Keep only free communities (free), only paid ones (paid) or both (all, default). Applied to every keyword and URL; matches the isFree field.",
            "default": "all"
          },
          "maxItems": {
            "title": "Maximum communities to save",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Shared limit of unique communities across all keywords or URLs, e.g. 20. Integer 1-10000, default 50. Stops earlier if results are exhausted; filters and duplicate communities do not count. Use 1 for a quick check.",
            "default": 50
          },
          "proxyConfiguration": {
            "title": "Apify proxy settings",
            "type": "object",
            "description": "Proxy settings object, e.g. {\"useApifyProxy\":true} for Apify datacenter proxy (default). Use {\"useApifyProxy\":false} for direct requests. Blocked or rate-limited requests retry with backoff and a fresh configured proxy session.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}