{
  "openapi": "3.0.1",
  "info": {
    "title": "Gab Search Scraper",
    "description": "Scrape search results and accounts and groups' info as well as the posts and comments of accounts and groups from Gab's website. Download your data in any format (JSON, CSV, XML, RSS, HTML Table). Seamless integration with apps, reports, and databases.",
    "version": "1.0",
    "x-build-id": "dg6l5FwxsqkV6LGAm"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/web.harvester~gab-search-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-web.harvester-gab-search-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/web.harvester~gab-search-scraper/runs": {
      "post": {
        "operationId": "runs-sync-web.harvester-gab-search-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/web.harvester~gab-search-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-web.harvester-gab-search-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",
        "required": [
          "desiredPostsCount"
        ],
        "properties": {
          "startUrls": {
            "title": "Search Urls",
            "type": "array",
            "description": "",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "searchQueries": {
            "title": "Search queries",
            "type": "array",
            "description": "",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchType": {
            "title": "Search type",
            "enum": [
              "TOP",
              "STATUSES",
              "PEOPLE",
              "GROUPS"
            ],
            "type": "string",
            "description": "",
            "default": "TOP"
          },
          "desiredPostsCount": {
            "title": "Desired posts count (per search query, account, or group)",
            "minimum": 0,
            "type": "integer",
            "description": "Desired number of posts to scrape per search query (Top and Statuses), account (each found account), or group (each found group).",
            "default": 100
          },
          "desiredCommentsCount": {
            "title": "Desired comments count (per post)",
            "minimum": 0,
            "type": "integer",
            "description": "Desired number of comments to scrape per post."
          },
          "desiredAccountsCount": {
            "title": "Desired account count for 'People' search type (per search query)",
            "minimum": 0,
            "type": "integer",
            "description": "Desired number of accounts to scrape for 'People' search type per search query."
          },
          "desiredGroupsCount": {
            "title": "Desired group count for 'Groups' search type (per search query)",
            "minimum": 0,
            "type": "integer",
            "description": "Desired number of groups to scrape for 'Groups' search type per search query."
          },
          "accountPostsSortBy": {
            "title": "Account posts sort by for 'People' search type",
            "enum": [
              "NEWEST",
              "NO_REPOSTS",
              "TOP_TODAY",
              "TOP_WEEKLY",
              "TOP_MONTHLY",
              "TOP_YEARLY",
              "TOP_ALL_TIME"
            ],
            "type": "string",
            "description": "",
            "default": "NEWEST"
          },
          "groupPostsSortBy": {
            "title": "Group posts sort by for 'Groups' search type",
            "enum": [
              "HOT",
              "RISING",
              "NEWEST",
              "RECENT",
              "TOP_TODAY",
              "TOP_WEEKLY",
              "TOP_MONTHLY",
              "TOP_YEARLY",
              "TOP_ALL_TIME"
            ],
            "type": "string",
            "description": "",
            "default": "NEWEST"
          },
          "commentsSortBy": {
            "title": "Comments sort by",
            "enum": [
              "MOST_LIKED",
              "NEWEST",
              "OLDEST"
            ],
            "type": "string",
            "description": "",
            "default": "MOST_LIKED"
          },
          "addUserInfo": {
            "title": "Include user info in posts",
            "type": "boolean",
            "description": "Expands the posts by integrating user information and appending it to the account field."
          },
          "addGroupInfo": {
            "title": "Include group info in posts",
            "type": "boolean",
            "description": "Expands the posts by integrating group information and appending it to the group field."
          },
          "searchOnlyVerified": {
            "title": "Scrape only from verified accounts and groups (for 'People' and 'Groups' search types)",
            "type": "boolean",
            "description": "Whether to scrape only from verified accounts and groups (for 'People' and 'Groups' search types)."
          },
          "groupsMediaOnly": {
            "title": "Scrape media only for 'Groups' search type (no posts, comments, etc.)",
            "type": "boolean",
            "description": "Weather to scrape media only for 'Groups' search type (no posts, comments, etc.)",
            "default": false
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}