{
  "openapi": "3.0.1",
  "info": {
    "title": "Telegram Buyer Search — Fresh Requests to Buy, Hire & Rent",
    "description": "Find people already asking to buy, hire or rent in public Telegram groups. Get a concise English need, original text, country, freshness, source link and why it matched. TGDen — Telegram Intelligence.",
    "version": "1.0",
    "x-build-id": "xeaVznMeeubeuCbEW"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/telegrambest~telegram-lead-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-telegrambest-telegram-lead-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/telegrambest~telegram-lead-finder/runs": {
      "post": {
        "operationId": "runs-sync-telegrambest-telegram-lead-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/telegrambest~telegram-lead-finder/run-sync": {
      "post": {
        "operationId": "run-sync-telegrambest-telegram-lead-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": {
          "categories": {
            "title": "Categories",
            "type": "array",
            "description": "Choose at least one category or a country below. Requests are classified before search; use the dated originals to check that each result fits your need.",
            "items": {
              "type": "string",
              "enum": [
                "web",
                "bots",
                "automation",
                "design",
                "marketing",
                "content",
                "education",
                "visa",
                "legal",
                "beauty_health",
                "home",
                "auto",
                "transport",
                "freight",
                "realty",
                "goods",
                "travel",
                "events",
                "other"
              ],
              "enumTitles": [
                "Websites & apps",
                "Telegram & chat bots",
                "Automation, CRM, parsing, AI",
                "Design",
                "Marketing, SMM, ads, SEO",
                "Content, video, translation",
                "Tutors & courses",
                "Visas & relocation",
                "Legal & accounting",
                "Beauty & health",
                "Home services & repairs",
                "Cars & bikes",
                "Moving, delivery, taxi",
                "Freight & trucks",
                "Real estate & rentals",
                "Buying goods",
                "Travel & tours",
                "Events & venues",
                "Other"
              ]
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Optional with a category, enough on its own. Two-letter codes of the country where the need is, e.g. 'AE', 'TH', 'TR'. A request gets a country when the message or its group names the place.",
            "items": {
              "type": "string"
            }
          },
          "intentTypes": {
            "title": "Request strength",
            "type": "array",
            "description": "Direct — asks to buy, hire or rent now. Soft — asks how to solve their own problem or what it costs. Latent — describes a need without asking. Hiring — job vacancies. Default: direct only.",
            "items": {
              "type": "string",
              "enum": [
                "direct",
                "soft",
                "latent",
                "hiring"
              ],
              "enumTitles": [
                "Direct request",
                "Soft ask",
                "Latent need",
                "Job vacancy"
              ]
            },
            "default": [
              "direct"
            ]
          },
          "days": {
            "title": "Look back",
            "minimum": 1,
            "maximum": 30,
            "type": "integer",
            "description": "How many days back to search. Fresh requests are the valuable ones — for a daily feed use 1-2 days with 'Only requests I have not received yet'.",
            "default": 7
          },
          "maxResultsPerQuery": {
            "title": "Max requests",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Upper limit of requests per run, up to 1000 (per phrase when you add phrases below). You pay only for requests actually delivered. On the Apify free plan a run returns at most 50 requests.",
            "default": 20
          },
          "onlyNew": {
            "title": "Only requests I have not received yet",
            "type": "boolean",
            "description": "For scheduled monitoring: skip requests this Actor already delivered to your account in earlier runs, so a daily run returns and charges only new ones. Leave off for one-off searches (and when an AI agent serves many people from one account).",
            "default": false
          },
          "queries": {
            "title": "Phrases (beta)",
            "type": "array",
            "description": "One phrase per line, in any language, written the way the asker would — e.g. 'need a landing page', 'looking for a villa in Phuket'. Each phrase is a separate search inside your categories. Leave empty to get every labeled request of the chosen categories.",
            "items": {
              "type": "string"
            }
          },
          "matchStrictness": {
            "title": "Match strictness",
            "enum": [
              "strict",
              "balanced",
              "broad"
            ],
            "type": "string",
            "description": "Only with phrases: how close a request must be. 'Strict' returns fewer, very close requests; 'Broad' returns more, including related needs.",
            "default": "balanced"
          },
          "mustInclude": {
            "title": "Must mention (place, brand, niche)",
            "type": "array",
            "description": "Optional. Keep only requests where the message or the group name mentions at least one of these words. Matching is by word start, so 'Phuket' also matches 'Phuket's'. Add spellings in other languages too, e.g. 'Dubai', 'Дубай'. The way to pin a city inside a country, or a niche inside a category.",
            "items": {
              "type": "string"
            }
          },
          "excludePhrases": {
            "title": "Exclude phrases",
            "type": "array",
            "description": "Optional. Drop requests that contain any of these words or phrases, e.g. 'free', 'internship'.",
            "items": {
              "type": "string"
            }
          },
          "languages": {
            "title": "Only these languages",
            "type": "array",
            "description": "Optional. Keep only requests written in these languages. Leave empty for all languages.",
            "items": {
              "type": "string",
              "enum": [
                "en",
                "ru",
                "uk",
                "kk",
                "tr",
                "vi",
                "de",
                "es",
                "pl",
                "uz",
                "ar",
                "zh",
                "th",
                "ko"
              ],
              "enumTitles": [
                "English",
                "Russian",
                "Ukrainian",
                "Kazakh",
                "Turkish",
                "Vietnamese",
                "German",
                "Spanish",
                "Polish",
                "Uzbek",
                "Arabic",
                "Chinese",
                "Thai",
                "Korean"
              ]
            }
          },
          "minChatMembers": {
            "title": "Minimum group size",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Skip requests from groups smaller than this number of members.",
            "default": 0
          },
          "demandNiche": {
            "title": "Market from Demand Map",
            "enum": [
              "services",
              "goods",
              "real-estate",
              "jobs",
              "freight"
            ],
            "type": "string",
            "description": "Optional country × niche handoff from Demand Map. Uses the same classified need family."
          },
          "entryPoint": {
            "title": "Entry source",
            "maxLength": 32,
            "type": "string",
            "description": "Source of this saved search, used only for aggregate funnel measurement.",
            "default": "direct"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}