{
  "openapi": "3.0.1",
  "info": {
    "title": "Press Releases API — GlobeNewswire, PR Newswire & Newsrooms",
    "description": "Press releases as data from GlobeNewswire, PR Newswire and any company newsroom RSS or Atom feed: headline, summary, issuer, tickers, ISINs, subjects, dateline, time and URL. Keyword search, company watch, monitor mode. No API key, no browser.",
    "version": "0.1",
    "x-build-id": "b57NREJo1kcRRi63F"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/insight.solutions~press-releases-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-insight.solutions-press-releases-api",
        "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/insight.solutions~press-releases-api/runs": {
      "post": {
        "operationId": "runs-sync-insight.solutions-press-releases-api",
        "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/insight.solutions~press-releases-api/run-sync": {
      "post": {
        "operationId": "run-sync-insight.solutions-press-releases-api",
        "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": {
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Search terms. With GlobeNewswire or PR Newswire selected, each keyword is one search on each wire's own keyword search, which matches the whole release text. The same keywords also filter the wire feeds and your own feeds: a feed item is kept when any keyword appears in its headline or summary (case-insensitive). Leave empty to read the latest releases instead.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "Keep only releases issued by these organisations: a case-insensitive part of the name, matched on the issuer the wire names (GlobeNewswire's \"Source:\" and feed contributor, PR Newswire's \"More news about\" and feed contributor, a newsroom feed's author). When a listing names no issuer, the headline and summary are matched instead. With no keywords, each company is also searched for on the wires.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "title": "Sources",
            "type": "array",
            "description": "Where to read. `globenewswire` and `prnewswire` are the two wires: their keyword search pages and, with \"Read the wires' latest feeds\" on, their latest-release feeds. `feeds` reads the RSS or Atom addresses in \"Your own feeds\", and is switched on automatically when you paste one.",
            "items": {
              "type": "string",
              "enum": [
                "globenewswire",
                "prnewswire",
                "feeds"
              ],
              "enumTitles": [
                "GlobeNewswire — search pages and latest-release feeds",
                "PR Newswire — search pages, latest-release feeds and the latest list",
                "Your own RSS/Atom feeds (from \"Your own feeds\")"
              ]
            },
            "default": [
              "globenewswire",
              "prnewswire"
            ]
          },
          "useFeeds": {
            "title": "Read the wires' latest feeds",
            "type": "boolean",
            "description": "Also read each selected wire's latest-release feeds — GlobeNewswire's public-company and earnings feeds, PR Newswire's all-releases and technology feeds (twenty items each), and with no keywords PR Newswire's latest list behind them. The filters below apply to them. With no keywords and no companies this is what the run reads: the newest releases on both wires.",
            "default": true
          },
          "feedUrls": {
            "title": "Your own feeds",
            "type": "array",
            "description": "Any RSS 2.0 or Atom feed address — a company newsroom's own feed, usually. One request each, one release row per item. An address that answers with an HTML page instead of a feed gets a free `not-a-feed` row. A GlobeNewswire or PR Newswire RSS address pasted here is read with that wire's own fields (tickers, ISINs, subjects).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "tickers": {
            "title": "Tickers",
            "type": "array",
            "description": "Keep only releases that name one of these ticker symbols, on any exchange: GlobeNewswire's typed stock tags (`Amsterdam:BNJ`), or a `(NYSE: CTVA)`, `NASDAQ: INV` or `$KOD` in the headline or summary. `MSFT`, `$MSFT` and `NASDAQ:MSFT` all mean MSFT.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "subjects": {
            "title": "Subjects",
            "type": "array",
            "description": "Keep only releases tagged with a subject containing one of these, case-insensitive: GlobeNewswire's subjects (\"Earnings Releases and Operating Results\", \"Mergers and Acquisitions\"), PR Newswire's (\"New Products & Services\", \"Awards\"), a newsroom feed's categories. Search-page hits carry no subject tags, so this filter keeps feed rows only.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sinceHours": {
            "title": "Only the last N hours",
            "minimum": 1,
            "maximum": 8760,
            "type": "integer",
            "description": "Monitor mode: keep only releases published within the last N hours. Search walks stop at the first page whose newest release is older than the window, so a daily run with `24` reads one or two pages per keyword. Leave empty for no window."
          },
          "languages": {
            "title": "Languages",
            "type": "array",
            "description": "Keep only releases in these languages, as two-letter codes (`en`, `fr`, `de`, `es`). Taken from the wire (GlobeNewswire's release language, PR Newswire's page language) or the feed's `<language>`. A release whose language is not stated is dropped when this is set. Empty keeps every language.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Max releases per search or feed",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "How many release rows each walk may return: each (keyword × wire) search, each wire feed, each of your feeds. Duplicates and filtered-out releases do not count against it. `0` means no cap, bounded by the time budget.",
            "default": 100
          },
          "dedupe": {
            "title": "Deduplicate across the run",
            "type": "boolean",
            "description": "A release found by a search and again by a feed is one row and one charge. Matched on the release address (query and fragment ignored), then on headline plus issuer.",
            "default": true
          },
          "maxConcurrency": {
            "title": "Walks in parallel",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many searches and feeds are read at once. Each parallel walk keeps its own proxy session, and successive pages of one walk are 400 ms apart.",
            "default": 3
          },
          "maxRunSecs": {
            "title": "Maximum run time (seconds)",
            "minimum": 30,
            "maximum": 3600,
            "type": "integer",
            "description": "Wall-clock budget for the whole run. When it is reached the Actor stops fetching, keeps and bills for every row already written, and files a free `deadline` row for each walk it cut short or never reached.",
            "default": 240
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Both wires and the captured newsroom feeds answered Apify's datacenter proxy, so that is the default — the proxy cost is already inside the per-release price. Switch to residential only if you start seeing `blocked` rows. Sessions rotate automatically when an exit IP is refused.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}