{
  "openapi": "3.0.1",
  "info": {
    "title": "BridgeBench Rankings Scraper",
    "description": "Turn the BridgeBench coding leaderboard into a dataset of ranked models with overall and nine axis scores, displayed and blended prices, and context. Matching uses model IDs, names or dated snapshots—not fuzzy guesses—and adds OpenRouter details, provider uptime and a routing config with fallbacks.",
    "version": "0.1",
    "x-build-id": "av5lW8aRGYZbqiyUs"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/axiomworks~bridgebench-leaderboard-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-axiomworks-bridgebench-leaderboard-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~bridgebench-leaderboard-scraper/runs": {
      "post": {
        "operationId": "runs-sync-axiomworks-bridgebench-leaderboard-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~bridgebench-leaderboard-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-axiomworks-bridgebench-leaderboard-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": {
          "startUrls": {
            "title": "Leaderboard URLs, slugs or model ids",
            "type": "array",
            "description": "Select targets as [{\"url\":\"https://www.bridgebench.ai/leaderboard\"}] or strings such as \"claude-opus-5-5\" or \"anthropic/claude-opus-5.5\". Empty or omitted selects all models; /leaderboard/<slug> selects one. Both bridgebench.ai hosts work. Foreign URLs and unknown models yield no rows; correct the target. A full leaderboard target selects all models even alongside detail targets.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "models": {
            "title": "Model name, id or slug terms",
            "type": "array",
            "description": "Keep models matching any term in their name, id or slug, case-insensitive; spaces, dots, dashes and underscores are ignored for an additional match. Example: [\"claude\",\"gpt\"]. Default [] keeps all models. This filter intersects with vendors and the other filters; empty results mean broaden the terms.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "vendors": {
            "title": "Exact vendor names",
            "type": "array",
            "description": "Keep models whose vendor equals any supplied name, case-insensitive, e.g. [\"Anthropic\",\"OpenAI\"]. Default [] keeps all vendors. This filter intersects with models and other filters; use a vendor from the leaderboard if no rows match.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sortBy": {
            "title": "Score axis or value sort",
            "enum": [
              "overall",
              "reasoning",
              "frontend",
              "backend",
              "oneShot",
              "security",
              "trustworthiness",
              "efficiency",
              "speed",
              "cost",
              "scorePerDollar"
            ],
            "type": "string",
            "description": "Order models highest first using overall (default), reasoning, frontend, backend, oneShot, security, trustworthiness, efficiency, speed, cost or scorePerDollar. Example: \"frontend\". rank always remains the overall leaderboard position; minScore applies to the selected score axis except scorePerDollar.",
            "default": "overall"
          },
          "minScore": {
            "title": "Minimum selected-axis score 0–1000",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Keep models scoring at least this on sortBy, 0-1000, default 0. Example: 500 with sortBy=\"frontend\". Ignored for scorePerDollar. Lower this threshold if no rows match.",
            "default": 0
          },
          "maxBlendedPricePer1M": {
            "title": "Maximum BridgeBench blended token price",
            "minimum": 0,
            "type": "number",
            "description": "Keep models with BridgeBench blendedPricePer1M at or below this number, e.g. 5. Omitted means no cap. With a cap, models missing a blended value are excluded. Increase or remove the cap if no rows match."
          },
          "includeProvisional": {
            "title": "Include provisional models true or false",
            "type": "boolean",
            "description": "Include models marked provisional when true (default); false excludes them. Example: false. Other filters still apply.",
            "default": true
          },
          "onlyOnOpenRouter": {
            "title": "Require an OpenRouter match true or false",
            "type": "boolean",
            "description": "Return only models matched on OpenRouter when true, e.g. true. Default false retains unmatched BridgeBench rows with null OpenRouter fields. If the OpenRouter model list is unavailable, true can yield no rows; use false to retain BridgeBench data.",
            "default": false
          },
          "maxItems": {
            "title": "Shared maximum model results 1–10000",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Return at most this many distinct models across all startUrls combined, after filters and sorting; 1-10000, default 50, prefill 10. Example: 1. Fewer rows return when fewer models match. Only returned results are charged.",
            "default": 50
          },
          "includeProviders": {
            "title": "Fetch provider endpoints true or false",
            "type": "boolean",
            "description": "Fetch endpoint details for matched OpenRouter models when true (default), e.g. false to skip these requests. False leaves providers null, providerCount 0 and routingConfig.provider.order empty; model pricing and fallback routing remain available.",
            "default": true
          },
          "maxProvidersPerModel": {
            "title": "Provider rows per model 1–50",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Keep up to this many provider entries per model, 1-50, default 10, e.g. 2. Used only when includeProviders=true. Healthy endpoints come first, then highest uptime. providerCount reports the full endpoint count; routing order uses up to three healthy endpoints from that full list.",
            "default": 10
          },
          "routingSort": {
            "title": "Routing preference price, throughput or latency",
            "enum": [
              "price",
              "throughput",
              "latency"
            ],
            "type": "string",
            "description": "Set routingConfig.provider.sort to price (default), throughput or latency, e.g. \"throughput\". This changes the routing request fragment, not dataset ordering; use sortBy for output order.",
            "default": "price"
          },
          "fallbackCount": {
            "title": "Fallback model count 0–3",
            "minimum": 0,
            "maximum": 3,
            "type": "integer",
            "description": "Put up to this many other matched models in routingConfig.models, 0-3, default 2, e.g. 0 for none. Uses the whole leaderboard even when output is filtered: next-lower overall ranks first, then higher ranks. Unmatched models have no routing config.",
            "default": 2
          },
          "proxyConfiguration": {
            "title": "BridgeBench browser proxy options",
            "type": "object",
            "description": "Set browser proxy options, e.g. {\"useApifyProxy\":false} (default). Failed loads retry with fresh sessions through Apify Proxy, datacenter then residential when available on Apify. OpenRouter requests go direct. If blocked after retries, the run returns no rows; retry later or select an available proxy.",
            "default": {
              "useApifyProxy": 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
                  },
                  "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}