{
  "data": {
    "id": "Bm8XvmGrNRDiPNUMS",
    "actId": "ejJfAkvcxctisOheG",
    "userId": "IYgBDiXtHOijAaUel",
    "startedAt": "2026-11-02T08:55:09.951Z",
    "finishedAt": "2026-11-02T08:55:18.933Z",
    "status": "SUCCEEDED",
    "meta": {
      "origin": "CLI"
    },
    "stats": {
      "durationMillis": 8909,
      "runTimeSecs": 8.909,
      "computeUnits": 0.00989888888888889,
      "imageSizeBytes": 332241920
    },
    "options": {
      "useCache": true,
      "betaPackages": false,
      "memoryMbytes": 4096,
      "diskMbytes": 8192
    },
    "createdByOrganizationMemberUserId": "QYo53EZkJk0prePWY",
    "exitCode": 0,
    "inputSchema": "{\n  \"title\": \"Bing Search Scraper Input\",\n  \"description\": \"Search Bing's web, news, image, video and autocomplete surfaces for one or more queries.\",\n  \"type\": \"object\",\n  \"schemaVersion\": 1,\n  \"properties\": {\n    \"mode\": {\n      \"title\": \"Result type\",\n      \"type\": \"string\",\n      \"description\": \"Which Bing surface to collect. Web returns organic web results; News, Images and Videos return that vertical; Autocomplete returns query suggestions.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"webSearch\",\n        \"newsSearch\",\n        \"imageSearch\",\n        \"videoSearch\",\n        \"autocomplete\"\n      ],\n      \"enumTitles\": [\n        \"Web results\",\n        \"News articles\",\n        \"Images\",\n        \"Videos\",\n        \"Autocomplete suggestions\"\n      ],\n      \"default\": \"webSearch\",\n      \"prefill\": \"webSearch\"\n    },\n    \"queries\": {\n      \"title\": \"Search queries\",\n      \"type\": \"array\",\n      \"description\": \"One or more searches, exactly as you would type them into Bing. Quotes and search operators work. Repeat queries are searched once.\",\n      \"editor\": \"stringList\",\n      \"items\": {\n        \"type\": \"string\"\n      },\n      \"minItems\": 1,\n      \"maxItems\": 100,\n      \"prefill\": [\n        \"best coffee shops seattle\"\n      ]\n    },\n    \"maxResultsPerQuery\": {\n      \"title\": \"Results per query\",\n      \"type\": \"integer\",\n      \"description\": \"Maximum records to collect for each query, across result pages. Bing may return fewer when its own list ends.\",\n      \"default\": 10,\n      \"minimum\": 1,\n      \"maximum\": 250,\n      \"prefill\": 3\n    },\n    \"market\": {\n      \"title\": \"Market\",\n      \"type\": \"string\",\n      \"description\": \"The Bing market and language to search in. Results, interface language and ranking can differ by market.\",\n      \"editor\": \"select\",\n      \"enumTitles\": [\n        \"English (United States)\",\n        \"English (United Kingdom)\",\n        \"English (Australia)\",\n        \"English (Canada)\",\n        \"English (India)\",\n        \"English (Indonesia)\",\n        \"English (Malaysia)\",\n        \"English (New Zealand)\",\n        \"English (Philippines)\",\n        \"English (South Africa)\",\n        \"Spanish (Argentina)\",\n        \"Spanish (Chile)\",\n        \"Spanish (Spain)\",\n        \"Spanish (Mexico)\",\n        \"Spanish (United States)\",\n        \"Portuguese (Brazil)\",\n        \"French (France)\",\n        \"French (Belgium)\",\n        \"French (Canada)\",\n        \"French (Switzerland)\",\n        \"German (Germany)\",\n        \"German (Austria)\",\n        \"German (Switzerland)\",\n        \"Italian (Italy)\",\n        \"Dutch (Netherlands)\",\n        \"Dutch (Belgium)\",\n        \"Danish (Denmark)\",\n        \"Finnish (Finland)\",\n        \"Norwegian (Norway)\",\n        \"Swedish (Sweden)\",\n        \"Polish (Poland)\",\n        \"Turkish (Türkiye)\",\n        \"Russian (Russia)\",\n        \"Japanese (Japan)\",\n        \"Korean (South Korea)\",\n        \"Chinese (China)\",\n        \"Chinese (Hong Kong)\",\n        \"Chinese (Taiwan)\"\n      ],\n      \"default\": \"en-US\",\n      \"prefill\": \"en-US\",\n      \"enum\": [\n        \"en-US\",\n        \"en-GB\",\n        \"en-AU\",\n        \"en-CA\",\n        \"en-IN\",\n        \"en-ID\",\n        \"en-MY\",\n        \"en-NZ\",\n        \"en-PH\",\n        \"en-ZA\",\n        \"es-AR\",\n        \"es-CL\",\n        \"es-ES\",\n        \"es-MX\",\n        \"es-US\",\n        \"pt-BR\",\n        \"fr-FR\",\n        \"fr-BE\",\n        \"fr-CA\",\n        \"fr-CH\",\n        \"de-DE\",\n        \"de-AT\",\n        \"de-CH\",\n        \"it-IT\",\n        \"nl-NL\",\n        \"nl-BE\",\n        \"da-DK\",\n        \"fi-FI\",\n        \"no-NO\",\n        \"sv-SE\",\n        \"pl-PL\",\n        \"tr-TR\",\n        \"ru-RU\",\n        \"ja-JP\",\n        \"ko-KR\",\n        \"zh-CN\",\n        \"zh-HK\",\n        \"zh-TW\"\n      ]\n    },\n    \"safeSearch\": {\n      \"title\": \"SafeSearch\",\n      \"type\": \"string\",\n      \"description\": \"Bing's adult-content filter. Moderate is Bing's own default; Strict removes adult pages and images; Off keeps everything Bing returns.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"moderate\",\n        \"strict\",\n        \"off\"\n      ],\n      \"enumTitles\": [\n        \"Moderate (Bing default)\",\n        \"Strict\",\n        \"Off\"\n      ],\n      \"default\": \"moderate\",\n      \"prefill\": \"moderate\"\n    },\n    \"dateRange\": {\n      \"title\": \"Published within\",\n      \"type\": \"string\",\n      \"description\": \"Keep results published inside this window when Bing prints a date for them. Results without a printed date are kept.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"anyTime\",\n        \"past24Hours\",\n        \"pastWeek\",\n        \"pastMonth\",\n        \"pastYear\"\n      ],\n      \"enumTitles\": [\n        \"Any time\",\n        \"Past 24 hours\",\n        \"Past week\",\n        \"Past month\",\n        \"Past year\"\n      ],\n      \"default\": \"anyTime\",\n      \"prefill\": \"anyTime\"\n    },\n    \"imageSize\": {\n      \"title\": \"Image size (mode=imageSearch)\",\n      \"type\": \"string\",\n      \"description\": \"Prefer small, medium or large images. The choice is applied through Bing's image-size filter.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"any\",\n        \"small\",\n        \"medium\",\n        \"large\"\n      ],\n      \"enumTitles\": [\n        \"Any size\",\n        \"Small\",\n        \"Medium\",\n        \"Large\"\n      ],\n      \"default\": \"any\",\n      \"prefill\": \"any\"\n    },\n    \"videoDuration\": {\n      \"title\": \"Video length (mode=videoSearch)\",\n      \"type\": \"string\",\n      \"description\": \"Keep short (under 5 minutes), medium (5–20 minutes) or long (over 20 minutes) videos.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"any\",\n        \"short\",\n        \"medium\",\n        \"long\"\n      ],\n      \"enumTitles\": [\n        \"Any length\",\n        \"Short (under 5 minutes)\",\n        \"Medium (5–20 minutes)\",\n        \"Long (over 20 minutes)\"\n      ],\n      \"default\": \"any\",\n      \"prefill\": \"any\"\n    },\n    \"newsSort\": {\n      \"title\": \"News order (mode=newsSearch)\",\n      \"type\": \"string\",\n      \"description\": \"Order news articles by Bing's relevance or newest first.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"relevance\",\n        \"mostRecent\"\n      ],\n      \"enumTitles\": [\n        \"Relevance\",\n        \"Newest first\"\n      ],\n      \"default\": \"relevance\",\n      \"prefill\": \"relevance\"\n    }\n  },\n  \"required\": [\n    \"mode\"\n  ]\n}",
    "readme": "# Bing Search Results, News & Media Scraper\r\n\r\nBing's results are not a copy of Google's: the ranking, the sites that win, and the snippets and dates shown all differ. This actor turns a list of searches into clean, ranked rows from five Bing surfaces — web results, news, images, videos and autocomplete — in the market and language your audience uses. Destination links are decoded from Bing's tracking wrapper, so every URL is ready to use.\r\n\r\n## What this actor does\r\n\r\n- **Five result types in one run:** organic web results, news articles, images, videos and autocomplete suggestions.\r\n- **Many searches at once:** send a list of queries and every row is tagged with the query that produced it.\r\n- **Rank and page on every row:** follow Bing's own \"next page\" links and keep a stable position, so rank tracking and page-level analysis work out of the box.\r\n- **Localized results:** 38 Bing markets, from `en-US` and `en-GB` to `ja-JP`, `pt-BR` and `zh-TW`.\r\n- **Useful filters:** SafeSearch, publication window, image size, video length and newest-first news ordering.\r\n- **Clean links and clean data:** Bing redirect links are decoded, duplicate URLs and off-topic web rows are removed, and empty fields are omitted rather than written as `null`.\r\n\r\n## Output per result\r\n\r\nEvery row contains the query, its `position` (also available as `rank`), the `page` it came from, the `market`, the `resultType` (`web`, `news`, `image`, `video` or `autocomplete`), the matching `recordType` (`webResult`, `newsArticle`, `imageResult`, `videoResult` or `autocompleteSuggestion`) and the exact Bing `searchUrl` used, plus `scrapedAt` in UTC ISO format.\r\n\r\n### Web results (`mode = webSearch`)\r\n\r\n- `title`, `url`, `displayUrl`, `description` (also available as `snippet`)\r\n- `siteName` — the site name Bing displays\r\n- `breadcrumb` — the path crumbs Bing shows under the title, when present\r\n- `dateText` — the date exactly as Bing printed it, when present\r\n- `sitelinks` — additional links Bing shows under a result, when present\r\n- `richSnippet` — extra fact text Bing shows with a result, when present\r\n\r\n### News articles (`mode = newsSearch`)\r\n\r\n- `title`, `url`, `displayUrl`, `description` / `snippet`\r\n- `source` — the publisher or author Bing credits\r\n- `dateText` — how long ago the story was published, as Bing shows it\r\n- `imageUrl` and `thumbnailUrl` — article image, when Bing supplies one\r\n\r\n### Images (`mode = imageSearch`)\r\n\r\n- `title`, `description` / `snippet`\r\n- `imageUrl` — the original image\r\n- `thumbnailUrl` — Bing's hosted thumbnail\r\n- `url` and `displayUrl` — the page the image appears on\r\n- `width`, `height`, `imageId`\r\n\r\n### Videos (`mode = videoSearch`)\r\n\r\n- `title`, `url`, `displayUrl`\r\n- `thumbnailUrl`, `duration`, `views`\r\n- `dateText`, `platform`, `channel`, `videoId`\r\n\r\n### Autocomplete (`mode = autocomplete`)\r\n\r\n- `suggestion`, `title` (same text), `position` / `rank`\r\n\r\n## Input\r\n\r\n| Field | Type | Default | Description |\r\n|---|---|---|---|\r\n| `mode` | string | `webSearch` | `webSearch`, `newsSearch`, `imageSearch`, `videoSearch` or `autocomplete` |\r\n| `queries` | array | – | One or more searches, exactly as you would type them into Bing. Required; up to 100 per run. |\r\n| `maxResultsPerQuery` | integer | `10` | Maximum rows per query, across pages (1–250). |\r\n| `market` | string | `en-US` | Bing market and language. 38 markets are listed in the dropdown. |\r\n| `safeSearch` | string | `moderate` | `moderate`, `strict` or `off`. |\r\n| `dateRange` | string | `anyTime` | `anyTime`, `past24Hours`, `pastWeek`, `pastMonth` or `pastYear`. Rows without a printed date are kept. |\r\n| `imageSize` | string | `any` | Image mode only: `any`, `small`, `medium` or `large`, applied through Bing's image-size filter. |\r\n| `videoDuration` | string | `any` | Video mode only: `any`, `short` (under 5 min), `medium` (5–20 min) or `long` (over 20 min). |\r\n| `newsSort` | string | `relevance` | News mode only: `relevance` or `mostRecent`. |\r\n\r\n### Example: organic web results for several keywords\r\n\r\n```json\r\n{\r\n  \"mode\": \"webSearch\",\r\n  \"queries\": [\r\n    \"best coffee shops seattle\",\r\n    \"python web frameworks\",\r\n    \"cheap flights to rome\"\r\n  ],\r\n  \"maxResultsPerQuery\": 30,\r\n  \"market\": \"en-US\",\r\n  \"safeSearch\": \"moderate\",\r\n  \"dateRange\": \"anyTime\"\r\n}\r\n```\r\n\r\n### Example: recent news in a local market\r\n\r\n```json\r\n{\r\n  \"mode\": \"newsSearch\",\r\n  \"queries\": [\"electric vehicles\", \"renewable energy\"],\r\n  \"maxResultsPerQuery\": 40,\r\n  \"market\": \"de-DE\",\r\n  \"safeSearch\": \"moderate\",\r\n  \"dateRange\": \"pastWeek\",\r\n  \"newsSort\": \"mostRecent\"\r\n}\r\n```\r\n\r\n### Example: large product images\r\n\r\n```json\r\n{\r\n  \"mode\": \"imageSearch\",\r\n  \"queries\": [\"mechanical keyboard\", \"standing desk\"],\r\n  \"maxResultsPerQuery\": 100,\r\n  \"market\": \"en-GB\",\r\n  \"safeSearch\": \"strict\",\r\n  \"imageSize\": \"large\"\r\n}\r\n```\r\n\r\n### Example: short videos and autocomplete\r\n\r\n```json\r\n{\r\n  \"mode\": \"videoSearch\",\r\n  \"queries\": [\"sourdough tutorial\"],\r\n  \"maxResultsPerQuery\": 50,\r\n  \"market\": \"en-US\",\r\n  \"videoDuration\": \"short\"\r\n}\r\n```\r\n\r\n```json\r\n{\r\n  \"mode\": \"autocomplete\",\r\n  \"queries\": [\"mechanical keyboard\"],\r\n  \"maxResultsPerQuery\": 10,\r\n  \"market\": \"en-US\"\r\n}\r\n```\r\n\r\n## Use cases\r\n\r\n- **Bing rank tracking** — record where your pages and competitors appear for a keyword set, with the page number and displayed URL.\r\n- **Cross-market SEO research** — compare the same query in the US, UK, Germany, Japan and Brazil without changing your browser settings.\r\n- **News monitoring** — collect recent headlines, publishers, dates and images for a topic or brand.\r\n- **Image and video research** — build a media list with original image URLs, dimensions, durations and channels.\r\n- **Content gap analysis** — see which titles, snippets, breadcrumbs and dates Bing rewards for a topic.\r\n- **Keyword expansion** — use Bing autocomplete to discover the phrases searchers actually type.\r\n\r\n## FAQ\r\n\r\n### Do I need a proxy, cookie or API key?\r\n\r\nNo. The actor works without any account, login, cookie or proxy setup, and chooses a working connection to Bing automatically.\r\n\r\n### How many results can one query return?\r\n\r\nYou can request up to 250 rows per query. Bing decides how deep its own list goes: news, images and videos usually paginate further than web results, and some web queries stop after the first page. The actor reports fewer rows honestly instead of inventing positions.\r\n\r\n### Why did I get fewer rows than I requested?\r\n\r\nBing's own result list can end, repeat a page, or return fewer organic results for a narrow query or a strict filter. The actor stops when Bing stops producing new URLs. Every run ends with a single `Run summary:` log line that names each query that came back short, with the number of rows it did return, and the same text is set as the run's final status message.\r\n\r\n### What happens when Bing answers a query with results for a different query?\r\n\r\nBing occasionally serves a cached page for an unrelated search. The actor checks every web result against the words of your query and drops rows that answer something else. If no row passes, the query is reported as having no usable results.\r\n\r\n### How does the actor connect to Bing?\r\n\r\nIt tries a direct browser-like request first, then a simple client profile, then Apify's free datacenter proxy automatically. You do not configure a proxy or supply credentials. If every route is blocked for a query, the actor reports that query as having no usable results instead of saving a decoy page.\r\n\r\n### Which markets are supported?\r\n\r\nThe dropdown lists 38 Bing markets. Bing can serve some markets differently depending on where the run executes; if a market returns no usable page, try `en-US` or a nearby market.\r\n\r\n### How do the date filters work?\r\n\r\nThe actor asks Bing for the selected window and also checks the date printed on each result. A result with no printed date is kept, because there is nothing to compare. News dates are shown as relative times (for example, \"4 hours ago\"), exactly as Bing prints them.\r\n\r\n### Does this include ads, People Also Ask or the AI answer?\r\n\r\nNo. The actor returns organic results and the media and autocomplete surfaces listed above. Sponsored placements and interactive SERP widgets are not included, so ranking positions are organic positions.\r\n\r\n### Are image and video URLs ready to use?\r\n\r\nImage results include both the original image URL and a Bing-hosted thumbnail; video rows include the video page URL and a thumbnail. Original media can be hotlink-protected by its host, so use the thumbnail when you need a reliable preview.\r\n\r\n### Are duplicate URLs removed?\r\n\r\nYes, duplicates are removed within each query. If Bing repeats a page, the repeat is skipped and the actor moves on or stops when no new URLs remain.\r\n\r\n### Is this affiliated with Microsoft or Bing?\r\n\r\nNo. This is an independent tool that reads publicly available Bing result pages. It is not affiliated with or endorsed by Microsoft.\r\n\r\n## Limitations\r\n\r\n- **Web pagination can stop early.** Bing sometimes serves the same web page again instead of the next page. The actor detects the repeat, tries the other free connection routes, and reports the shortfall. News, images and videos generally paginate further.\r\n- **One query can be blank while another works.** On a shared datacenter connection Bing sometimes answers a valid query with a decoy page or no results. The actor retries every free route and reports that query instead of saving unrelated rows; rerun later or try another query/market.\r\n- **Web relevance is word-based, not semantic.** With a multi-word query, Bing can return a nearby topic and a row that matches one word (for example a Tokyo tourism page for \"Tokyo weather\") can still appear. The actor drops rows that match no query word and reports zero-result queries; it does not re-rank by meaning.\r\n- **Bing changes its layout.** Sitelinks, rich facts and printed dates appear only when Bing shows them. Fields the source does not provide are omitted, never guessed.\r\n- **Rankings move.** Bing reorders results between visits and between markets. Treat a run as a snapshot, not a permanent ranking.\r\n- **News recency tops out at 30 days on Bing's side.** For news, `pastYear` behaves like the last 30 days; rows with no printed date are kept.\r\n- **Autocomplete suggestions are capped by Bing.** One query usually returns about 12-25 suggestions even when `maxResultsPerQuery` is higher.\r\n- **`maxResultsPerQuery` is a cap, not a promise.** The source decides how many unique rows exist for a query. The run log ends with a `Run summary:` line naming every query that returned fewer rows, and the same summary is set as the run's final status message.\r\n",
    "actorDefinition": {
      "actorSpecification": 1,
      "name": "bing-organic-search-results-scraper",
      "title": "Bing Search Results, News & Media Scraper",
      "description": "Collect Bing web results, news articles, images, videos and autocomplete suggestions for many queries at once. Get rank, page, decoded destination URLs, titles, snippets, dates and media details, with market, SafeSearch and recency filters.",
      "version": "2.0",
      "buildTag": "latest",
      "input": {
        "title": "Bing Search Scraper Input",
        "description": "Search Bing's web, news, image, video and autocomplete surfaces for one or more queries.",
        "type": "object",
        "schemaVersion": 1,
        "properties": {
          "mode": {
            "title": "Result type",
            "type": "string",
            "description": "Which Bing surface to collect. Web returns organic web results; News, Images and Videos return that vertical; Autocomplete returns query suggestions.",
            "editor": "select",
            "enum": [
              "webSearch",
              "newsSearch",
              "imageSearch",
              "videoSearch",
              "autocomplete"
            ],
            "enumTitles": [
              "Web results",
              "News articles",
              "Images",
              "Videos",
              "Autocomplete suggestions"
            ],
            "default": "webSearch",
            "prefill": "webSearch"
          },
          "queries": {
            "title": "Search queries",
            "type": "array",
            "description": "One or more searches, exactly as you would type them into Bing. Quotes and search operators work. Repeat queries are searched once.",
            "editor": "stringList",
            "items": {
              "type": "string"
            },
            "minItems": 1,
            "maxItems": 100,
            "prefill": [
              "best coffee shops seattle"
            ]
          },
          "maxResultsPerQuery": {
            "title": "Results per query",
            "type": "integer",
            "description": "Maximum records to collect for each query, across result pages. Bing may return fewer when its own list ends.",
            "default": 10,
            "minimum": 1,
            "maximum": 250,
            "prefill": 3
          },
          "market": {
            "title": "Market",
            "type": "string",
            "description": "The Bing market and language to search in. Results, interface language and ranking can differ by market.",
            "editor": "select",
            "enumTitles": [
              "English (United States)",
              "English (United Kingdom)",
              "English (Australia)",
              "English (Canada)",
              "English (India)",
              "English (Indonesia)",
              "English (Malaysia)",
              "English (New Zealand)",
              "English (Philippines)",
              "English (South Africa)",
              "Spanish (Argentina)",
              "Spanish (Chile)",
              "Spanish (Spain)",
              "Spanish (Mexico)",
              "Spanish (United States)",
              "Portuguese (Brazil)",
              "French (France)",
              "French (Belgium)",
              "French (Canada)",
              "French (Switzerland)",
              "German (Germany)",
              "German (Austria)",
              "German (Switzerland)",
              "Italian (Italy)",
              "Dutch (Netherlands)",
              "Dutch (Belgium)",
              "Danish (Denmark)",
              "Finnish (Finland)",
              "Norwegian (Norway)",
              "Swedish (Sweden)",
              "Polish (Poland)",
              "Turkish (Türkiye)",
              "Russian (Russia)",
              "Japanese (Japan)",
              "Korean (South Korea)",
              "Chinese (China)",
              "Chinese (Hong Kong)",
              "Chinese (Taiwan)"
            ],
            "default": "en-US",
            "prefill": "en-US",
            "enum": [
              "en-US",
              "en-GB",
              "en-AU",
              "en-CA",
              "en-IN",
              "en-ID",
              "en-MY",
              "en-NZ",
              "en-PH",
              "en-ZA",
              "es-AR",
              "es-CL",
              "es-ES",
              "es-MX",
              "es-US",
              "pt-BR",
              "fr-FR",
              "fr-BE",
              "fr-CA",
              "fr-CH",
              "de-DE",
              "de-AT",
              "de-CH",
              "it-IT",
              "nl-NL",
              "nl-BE",
              "da-DK",
              "fi-FI",
              "no-NO",
              "sv-SE",
              "pl-PL",
              "tr-TR",
              "ru-RU",
              "ja-JP",
              "ko-KR",
              "zh-CN",
              "zh-HK",
              "zh-TW"
            ]
          },
          "safeSearch": {
            "title": "SafeSearch",
            "type": "string",
            "description": "Bing's adult-content filter. Moderate is Bing's own default; Strict removes adult pages and images; Off keeps everything Bing returns.",
            "editor": "select",
            "enum": [
              "moderate",
              "strict",
              "off"
            ],
            "enumTitles": [
              "Moderate (Bing default)",
              "Strict",
              "Off"
            ],
            "default": "moderate",
            "prefill": "moderate"
          },
          "dateRange": {
            "title": "Published within",
            "type": "string",
            "description": "Keep results published inside this window when Bing prints a date for them. Results without a printed date are kept.",
            "editor": "select",
            "enum": [
              "anyTime",
              "past24Hours",
              "pastWeek",
              "pastMonth",
              "pastYear"
            ],
            "enumTitles": [
              "Any time",
              "Past 24 hours",
              "Past week",
              "Past month",
              "Past year"
            ],
            "default": "anyTime",
            "prefill": "anyTime"
          },
          "imageSize": {
            "title": "Image size (mode=imageSearch)",
            "type": "string",
            "description": "Prefer small, medium or large images. The choice is applied through Bing's image-size filter.",
            "editor": "select",
            "enum": [
              "any",
              "small",
              "medium",
              "large"
            ],
            "enumTitles": [
              "Any size",
              "Small",
              "Medium",
              "Large"
            ],
            "default": "any",
            "prefill": "any"
          },
          "videoDuration": {
            "title": "Video length (mode=videoSearch)",
            "type": "string",
            "description": "Keep short (under 5 minutes), medium (5–20 minutes) or long (over 20 minutes) videos.",
            "editor": "select",
            "enum": [
              "any",
              "short",
              "medium",
              "long"
            ],
            "enumTitles": [
              "Any length",
              "Short (under 5 minutes)",
              "Medium (5–20 minutes)",
              "Long (over 20 minutes)"
            ],
            "default": "any",
            "prefill": "any"
          },
          "newsSort": {
            "title": "News order (mode=newsSearch)",
            "type": "string",
            "description": "Order news articles by Bing's relevance or newest first.",
            "editor": "select",
            "enum": [
              "relevance",
              "mostRecent"
            ],
            "enumTitles": [
              "Relevance",
              "Newest first"
            ],
            "default": "relevance",
            "prefill": "relevance"
          }
        },
        "required": [
          "mode"
        ]
      },
      "output": {
        "actorOutputSchemaVersion": 1,
        "title": "Bing Search Results, News & Media Scraper Output",
        "description": "One record per Bing web result, news article, image, video or autocomplete suggestion, with its query, rank, page, destination URL and the details Bing shows for it.",
        "type": "object",
        "properties": {
          "results": {
            "type": "string",
            "title": "Bing results",
            "description": "Dataset containing every web, news, image, video or autocomplete record collected by the run.",
            "template": "{{links.apiDefaultDatasetUrl}}/items"
          }
        }
      },
      "readme": "# Bing Search Results, News & Media Scraper\r\n\r\nBing's results are not a copy of Google's: the ranking, the sites that win, and the snippets and dates shown all differ. This actor turns a list of searches into clean, ranked rows from five Bing surfaces — web results, news, images, videos and autocomplete — in the market and language your audience uses. Destination links are decoded from Bing's tracking wrapper, so every URL is ready to use.\r\n\r\n## What this actor does\r\n\r\n- **Five result types in one run:** organic web results, news articles, images, videos and autocomplete suggestions.\r\n- **Many searches at once:** send a list of queries and every row is tagged with the query that produced it.\r\n- **Rank and page on every row:** follow Bing's own \"next page\" links and keep a stable position, so rank tracking and page-level analysis work out of the box.\r\n- **Localized results:** 38 Bing markets, from `en-US` and `en-GB` to `ja-JP`, `pt-BR` and `zh-TW`.\r\n- **Useful filters:** SafeSearch, publication window, image size, video length and newest-first news ordering.\r\n- **Clean links and clean data:** Bing redirect links are decoded, duplicate URLs and off-topic web rows are removed, and empty fields are omitted rather than written as `null`.\r\n\r\n## Output per result\r\n\r\nEvery row contains the query, its `position` (also available as `rank`), the `page` it came from, the `market`, the `resultType` (`web`, `news`, `image`, `video` or `autocomplete`), the matching `recordType` (`webResult`, `newsArticle`, `imageResult`, `videoResult` or `autocompleteSuggestion`) and the exact Bing `searchUrl` used, plus `scrapedAt` in UTC ISO format.\r\n\r\n### Web results (`mode = webSearch`)\r\n\r\n- `title`, `url`, `displayUrl`, `description` (also available as `snippet`)\r\n- `siteName` — the site name Bing displays\r\n- `breadcrumb` — the path crumbs Bing shows under the title, when present\r\n- `dateText` — the date exactly as Bing printed it, when present\r\n- `sitelinks` — additional links Bing shows under a result, when present\r\n- `richSnippet` — extra fact text Bing shows with a result, when present\r\n\r\n### News articles (`mode = newsSearch`)\r\n\r\n- `title`, `url`, `displayUrl`, `description` / `snippet`\r\n- `source` — the publisher or author Bing credits\r\n- `dateText` — how long ago the story was published, as Bing shows it\r\n- `imageUrl` and `thumbnailUrl` — article image, when Bing supplies one\r\n\r\n### Images (`mode = imageSearch`)\r\n\r\n- `title`, `description` / `snippet`\r\n- `imageUrl` — the original image\r\n- `thumbnailUrl` — Bing's hosted thumbnail\r\n- `url` and `displayUrl` — the page the image appears on\r\n- `width`, `height`, `imageId`\r\n\r\n### Videos (`mode = videoSearch`)\r\n\r\n- `title`, `url`, `displayUrl`\r\n- `thumbnailUrl`, `duration`, `views`\r\n- `dateText`, `platform`, `channel`, `videoId`\r\n\r\n### Autocomplete (`mode = autocomplete`)\r\n\r\n- `suggestion`, `title` (same text), `position` / `rank`\r\n\r\n## Input\r\n\r\n| Field | Type | Default | Description |\r\n|---|---|---|---|\r\n| `mode` | string | `webSearch` | `webSearch`, `newsSearch`, `imageSearch`, `videoSearch` or `autocomplete` |\r\n| `queries` | array | – | One or more searches, exactly as you would type them into Bing. Required; up to 100 per run. |\r\n| `maxResultsPerQuery` | integer | `10` | Maximum rows per query, across pages (1–250). |\r\n| `market` | string | `en-US` | Bing market and language. 38 markets are listed in the dropdown. |\r\n| `safeSearch` | string | `moderate` | `moderate`, `strict` or `off`. |\r\n| `dateRange` | string | `anyTime` | `anyTime`, `past24Hours`, `pastWeek`, `pastMonth` or `pastYear`. Rows without a printed date are kept. |\r\n| `imageSize` | string | `any` | Image mode only: `any`, `small`, `medium` or `large`, applied through Bing's image-size filter. |\r\n| `videoDuration` | string | `any` | Video mode only: `any`, `short` (under 5 min), `medium` (5–20 min) or `long` (over 20 min). |\r\n| `newsSort` | string | `relevance` | News mode only: `relevance` or `mostRecent`. |\r\n\r\n### Example: organic web results for several keywords\r\n\r\n```json\r\n{\r\n  \"mode\": \"webSearch\",\r\n  \"queries\": [\r\n    \"best coffee shops seattle\",\r\n    \"python web frameworks\",\r\n    \"cheap flights to rome\"\r\n  ],\r\n  \"maxResultsPerQuery\": 30,\r\n  \"market\": \"en-US\",\r\n  \"safeSearch\": \"moderate\",\r\n  \"dateRange\": \"anyTime\"\r\n}\r\n```\r\n\r\n### Example: recent news in a local market\r\n\r\n```json\r\n{\r\n  \"mode\": \"newsSearch\",\r\n  \"queries\": [\"electric vehicles\", \"renewable energy\"],\r\n  \"maxResultsPerQuery\": 40,\r\n  \"market\": \"de-DE\",\r\n  \"safeSearch\": \"moderate\",\r\n  \"dateRange\": \"pastWeek\",\r\n  \"newsSort\": \"mostRecent\"\r\n}\r\n```\r\n\r\n### Example: large product images\r\n\r\n```json\r\n{\r\n  \"mode\": \"imageSearch\",\r\n  \"queries\": [\"mechanical keyboard\", \"standing desk\"],\r\n  \"maxResultsPerQuery\": 100,\r\n  \"market\": \"en-GB\",\r\n  \"safeSearch\": \"strict\",\r\n  \"imageSize\": \"large\"\r\n}\r\n```\r\n\r\n### Example: short videos and autocomplete\r\n\r\n```json\r\n{\r\n  \"mode\": \"videoSearch\",\r\n  \"queries\": [\"sourdough tutorial\"],\r\n  \"maxResultsPerQuery\": 50,\r\n  \"market\": \"en-US\",\r\n  \"videoDuration\": \"short\"\r\n}\r\n```\r\n\r\n```json\r\n{\r\n  \"mode\": \"autocomplete\",\r\n  \"queries\": [\"mechanical keyboard\"],\r\n  \"maxResultsPerQuery\": 10,\r\n  \"market\": \"en-US\"\r\n}\r\n```\r\n\r\n## Use cases\r\n\r\n- **Bing rank tracking** — record where your pages and competitors appear for a keyword set, with the page number and displayed URL.\r\n- **Cross-market SEO research** — compare the same query in the US, UK, Germany, Japan and Brazil without changing your browser settings.\r\n- **News monitoring** — collect recent headlines, publishers, dates and images for a topic or brand.\r\n- **Image and video research** — build a media list with original image URLs, dimensions, durations and channels.\r\n- **Content gap analysis** — see which titles, snippets, breadcrumbs and dates Bing rewards for a topic.\r\n- **Keyword expansion** — use Bing autocomplete to discover the phrases searchers actually type.\r\n\r\n## FAQ\r\n\r\n### Do I need a proxy, cookie or API key?\r\n\r\nNo. The actor works without any account, login, cookie or proxy setup, and chooses a working connection to Bing automatically.\r\n\r\n### How many results can one query return?\r\n\r\nYou can request up to 250 rows per query. Bing decides how deep its own list goes: news, images and videos usually paginate further than web results, and some web queries stop after the first page. The actor reports fewer rows honestly instead of inventing positions.\r\n\r\n### Why did I get fewer rows than I requested?\r\n\r\nBing's own result list can end, repeat a page, or return fewer organic results for a narrow query or a strict filter. The actor stops when Bing stops producing new URLs. Every run ends with a single `Run summary:` log line that names each query that came back short, with the number of rows it did return, and the same text is set as the run's final status message.\r\n\r\n### What happens when Bing answers a query with results for a different query?\r\n\r\nBing occasionally serves a cached page for an unrelated search. The actor checks every web result against the words of your query and drops rows that answer something else. If no row passes, the query is reported as having no usable results.\r\n\r\n### How does the actor connect to Bing?\r\n\r\nIt tries a direct browser-like request first, then a simple client profile, then Apify's free datacenter proxy automatically. You do not configure a proxy or supply credentials. If every route is blocked for a query, the actor reports that query as having no usable results instead of saving a decoy page.\r\n\r\n### Which markets are supported?\r\n\r\nThe dropdown lists 38 Bing markets. Bing can serve some markets differently depending on where the run executes; if a market returns no usable page, try `en-US` or a nearby market.\r\n\r\n### How do the date filters work?\r\n\r\nThe actor asks Bing for the selected window and also checks the date printed on each result. A result with no printed date is kept, because there is nothing to compare. News dates are shown as relative times (for example, \"4 hours ago\"), exactly as Bing prints them.\r\n\r\n### Does this include ads, People Also Ask or the AI answer?\r\n\r\nNo. The actor returns organic results and the media and autocomplete surfaces listed above. Sponsored placements and interactive SERP widgets are not included, so ranking positions are organic positions.\r\n\r\n### Are image and video URLs ready to use?\r\n\r\nImage results include both the original image URL and a Bing-hosted thumbnail; video rows include the video page URL and a thumbnail. Original media can be hotlink-protected by its host, so use the thumbnail when you need a reliable preview.\r\n\r\n### Are duplicate URLs removed?\r\n\r\nYes, duplicates are removed within each query. If Bing repeats a page, the repeat is skipped and the actor moves on or stops when no new URLs remain.\r\n\r\n### Is this affiliated with Microsoft or Bing?\r\n\r\nNo. This is an independent tool that reads publicly available Bing result pages. It is not affiliated with or endorsed by Microsoft.\r\n\r\n## Limitations\r\n\r\n- **Web pagination can stop early.** Bing sometimes serves the same web page again instead of the next page. The actor detects the repeat, tries the other free connection routes, and reports the shortfall. News, images and videos generally paginate further.\r\n- **One query can be blank while another works.** On a shared datacenter connection Bing sometimes answers a valid query with a decoy page or no results. The actor retries every free route and reports that query instead of saving unrelated rows; rerun later or try another query/market.\r\n- **Web relevance is word-based, not semantic.** With a multi-word query, Bing can return a nearby topic and a row that matches one word (for example a Tokyo tourism page for \"Tokyo weather\") can still appear. The actor drops rows that match no query word and reports zero-result queries; it does not re-rank by meaning.\r\n- **Bing changes its layout.** Sitelinks, rich facts and printed dates appear only when Bing shows them. Fields the source does not provide are omitted, never guessed.\r\n- **Rankings move.** Bing reorders results between visits and between markets. Treat a run as a snapshot, not a permanent ranking.\r\n- **News recency tops out at 30 days on Bing's side.** For news, `pastYear` behaves like the last 30 days; rows with no printed date are kept.\r\n- **Autocomplete suggestions are capped by Bing.** One query usually returns about 12-25 suggestions even when `maxResultsPerQuery` is higher.\r\n- **`maxResultsPerQuery` is a cap, not a promise.** The source decides how many unique rows exist for a query. The run log ends with a `Run summary:` line naming every query that returned fewer rows, and the same summary is set as the run's final status message.\r\n",
      "dockerfile": "./Dockerfile",
      "categories": [
        "SEO_TOOLS"
      ],
      "storages": {
        "dataset": {
          "actorSpecification": 1,
          "title": "Bing Results",
          "fields": {
            "type": "object",
            "properties": {
              "query": {
                "type": "string",
                "description": "Search query that produced this record"
              },
              "resultType": {
                "type": "string",
                "description": "web, news, image, video or autocomplete"
              },
              "recordType": {
                "type": "string",
                "description": "webResult, newsArticle, imageResult, videoResult or autocompleteSuggestion"
              },
              "position": {
                "type": "integer",
                "description": "1-based rank within the query"
              },
              "rank": {
                "type": "integer",
                "description": "Alias of position"
              },
              "page": {
                "type": "integer",
                "description": "Result page number"
              },
              "title": {
                "type": "string",
                "description": "Result title"
              },
              "url": {
                "type": "string",
                "description": "Destination URL (Bing redirects decoded)"
              },
              "displayUrl": {
                "type": "string",
                "description": "URL or domain Bing displays"
              },
              "description": {
                "type": "string",
                "description": "Snippet or description"
              },
              "snippet": {
                "type": "string",
                "description": "Alias of description"
              },
              "siteName": {
                "type": "string",
                "description": "Site name shown by Bing"
              },
              "breadcrumb": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Path crumbs Bing shows under the title"
              },
              "dateText": {
                "type": "string",
                "description": "Date exactly as Bing printed it"
              },
              "source": {
                "type": "string",
                "description": "News publisher or author shown by Bing"
              },
              "imageUrl": {
                "type": "string",
                "description": "Original image URL"
              },
              "thumbnailUrl": {
                "type": "string",
                "description": "Bing-hosted thumbnail URL"
              },
              "width": {
                "type": "integer",
                "description": "Original image width"
              },
              "height": {
                "type": "integer",
                "description": "Original image height"
              },
              "imageId": {
                "type": "string",
                "description": "Bing image identifier"
              },
              "duration": {
                "type": "string",
                "description": "Video duration as printed by Bing"
              },
              "views": {
                "type": "string",
                "description": "View count as printed by Bing"
              },
              "platform": {
                "type": "string",
                "description": "Video platform, e.g. YouTube or TikTok"
              },
              "channel": {
                "type": "string",
                "description": "Video channel or uploader"
              },
              "videoId": {
                "type": "string",
                "description": "Bing video identifier"
              },
              "sitelinks": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "title": {
                      "type": "string"
                    },
                    "url": {
                      "type": "string"
                    }
                  }
                },
                "description": "Sitelinks shown under a web result"
              },
              "richSnippet": {
                "type": "string",
                "description": "Rich snippet text shown with a web result"
              },
              "suggestion": {
                "type": "string",
                "description": "Autocomplete suggestion"
              },
              "market": {
                "type": "string",
                "description": "Bing market used for the query"
              },
              "searchUrl": {
                "type": "string",
                "description": "Bing page or endpoint that produced this record"
              },
              "scrapedAt": {
                "type": "string",
                "description": "ISO 8601 UTC scrape timestamp"
              }
            }
          },
          "views": {
            "overview": {
              "title": "Bing results",
              "transformation": {
                "fields": [
                  "query",
                  "resultType",
                  "position",
                  "title",
                  "url",
                  "description"
                ]
              },
              "display": {
                "component": "table",
                "properties": {
                  "query": {
                    "label": "Query",
                    "format": "text"
                  },
                  "resultType": {
                    "label": "Type",
                    "format": "text"
                  },
                  "position": {
                    "label": "#",
                    "format": "number"
                  },
                  "title": {
                    "label": "Title",
                    "format": "text"
                  },
                  "url": {
                    "label": "URL",
                    "format": "link"
                  },
                  "description": {
                    "label": "Description",
                    "format": "text"
                  }
                }
              }
            }
          }
        }
      },
      "environmentVariables": {}
    },
    "buildNumber": "2.0.1",
    "imageDigest": "03ef1a1d507665d9f955d5fe8be5fa7e3437f9408393d5ca090e21c7f7efb927",
    "actVersion": {
      "sourceType": "SOURCE_FILES",
      "buildTag": "latest",
      "versionNumber": "2.0"
    },
    "usage": {
      "ACTOR_COMPUTE_UNITS": 0.00989888888888889
    }
  }
}