{
  "openapi": "3.0.1",
  "info": {
    "title": "UK Takeover Bid Tracker",
    "description": "Tracks every UK company currently under a takeover bid. Returns the target, the named bidders, each class of securities in play with its ISIN and share count, and the Rule 2.6 put up or shut up deadline. Live offer periods from the Takeover Panel, updated every business day.",
    "version": "0.1",
    "x-build-id": "eIBqM99eNzTc9AXvh"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/spookyweb~uk-takeover-disclosures/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-spookyweb-uk-takeover-disclosures",
        "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/spookyweb~uk-takeover-disclosures/runs": {
      "post": {
        "operationId": "runs-sync-spookyweb-uk-takeover-disclosures",
        "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/spookyweb~uk-takeover-disclosures/run-sync": {
      "post": {
        "operationId": "run-sync-spookyweb-uk-takeover-disclosures",
        "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": {
          "offeree": {
            "title": "Offeree company",
            "type": "string",
            "description": "Keep only offer periods whose target company name contains this text, matched case insensitively. Part of a name is enough, so \"gamma\" finds Gamma Communications plc. Leave it empty to get every live offer period on the table."
          },
          "offeror": {
            "title": "Offeror or bidder",
            "type": "string",
            "description": "Keep only rows whose bidder name contains this text, matched case insensitively. Consortium bids are published as one long offeror name listing every member, so a member name on its own will match the consortium row."
          },
          "isin": {
            "title": "ISIN",
            "type": "string",
            "description": "Keep only rows where this exact ISIN appears on any class of relevant securities, whether it belongs to the offeree or to a bidder offering its own shares. Spacing and case are normalised for you, for example GB00BQS10J50."
          },
          "changeTypes": {
            "title": "Change on today's table",
            "type": "array",
            "description": "Keep only entries the Panel flagged as changed on the day the table was published. Added is a new offer period, amended is a change to an existing one, deleted is an offer period that ended. Choose these three for a daily monitoring run that reports only what moved.",
            "items": {
              "type": "string",
              "enum": [
                "added",
                "amended",
                "deleted",
                "unchanged"
              ],
              "enumTitles": [
                "Added today",
                "Amended today",
                "Removed today",
                "Unchanged today"
              ]
            }
          },
          "offerPeriodStartedAfter": {
            "title": "Offer period started on or after",
            "type": "string",
            "description": "Earliest offer period commencement date to include, as YYYY-MM-DD. The bound is inclusive. A UK style date such as 10/08/2026 is rejected rather than guessed at, because it is ambiguous and a wrong guess is silent."
          },
          "offerPeriodStartedBefore": {
            "title": "Offer period started on or before",
            "type": "string",
            "description": "Latest offer period commencement date to include, as YYYY-MM-DD. The bound is inclusive. Pair it with the earliest date to pull the bids that opened in one month, or use it alone to find the situations that have been running the longest."
          },
          "withRule26DeadlineOnly": {
            "title": "Only bids with a live Rule 2.6 deadline",
            "type": "boolean",
            "description": "Keep only rows where a Rule 2.6 deadline is set, which is the put up or shut up date by which a named bidder must announce a firm offer or walk away. Most rows carry no deadline, so this is the switch that isolates the ones with a clock running.",
            "default": false
          },
          "namedOfferorOnly": {
            "title": "Only bids with a named bidder",
            "type": "boolean",
            "description": "Drop the offer periods where no bidder has been publicly identified yet. Those are the possible offer situations, so leave this off when you want to see which companies are in play before anyone has put a name to it.",
            "default": false
          },
          "sortBy": {
            "title": "Sort order",
            "enum": [
              "newest",
              "oldest",
              "deadline",
              "offeree"
            ],
            "type": "string",
            "description": "How to order the rows before the maximum is applied. Soonest deadline first puts the entries with a running Rule 2.6 clock at the top and sinks the ones with no deadline to the bottom, which is the order a deal calendar wants.",
            "default": "newest"
          },
          "maxResults": {
            "title": "Maximum entries to return",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Hard cap on the rows saved, which is also the cap on what the run can cost. The whole table is normally between thirty and eighty rows, so the default returns all of it with room to spare.",
            "default": 500
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}