{
  "openapi": "3.0.1",
  "info": {
    "title": "ForexFactory Scraper | Economic Calendar and Forecasts",
    "description": "ForexFactory scraper for the Forex Factory economic calendar: actual, forecast, previous and revised figures as numbers, surprise, impact, currency and event type. 82 events in 17 seconds, 31 fields each. Filter by date, currency or keyword such as CPI or NFP. Built for traders, backtests and bots.",
    "version": "1.0",
    "x-build-id": "1Dl1cctLF8pKED1Yx"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/silentflow~forexfactory-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-silentflow-forexfactory-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/silentflow~forexfactory-scraper/runs": {
      "post": {
        "operationId": "runs-sync-silentflow-forexfactory-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/silentflow~forexfactory-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-silentflow-forexfactory-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": {
          "dateRange": {
            "title": "📅 Date range",
            "enum": [
              "today",
              "tomorrow",
              "yesterday",
              "this_week",
              "next_week",
              "last_week",
              "this_month",
              "next_month",
              "last_month",
              "custom"
            ],
            "type": "string",
            "description": "Which calendar days to read. Weeks run Sunday to Saturday, like the Forex Factory calendar. The week of 4 Oct 2026 held 82 events, a month holds 400 to 450. For any span since 2007, fill the <b>From date</b> below (it switches to a custom range on its own).",
            "default": "this_week"
          },
          "startDate": {
            "title": "📆 From date",
            "type": "string",
            "description": "First day of a custom range, such as <code>2026-01-01</code>. The calendar goes back to 2007. Filling it overrides the date range above."
          },
          "endDate": {
            "title": "📆 To date",
            "type": "string",
            "description": "Last day of a custom range, included. Leave empty to read the From date alone. Long ranges are read month by month, oldest first."
          },
          "eventKeywords": {
            "title": "🔎 Event keywords",
            "type": "array",
            "description": "Keep only the events whose name holds one of these words: <code>CPI</code>, <code>Non-Farm</code>, <code>Retail Sales</code>, <code>Powell</code>. Trader shorthand works too: <code>NFP</code> or <code>payrolls</code> for the jobs report, <code>rate decision</code> for central bank rate calls, and an event type such as <code>speeches</code>. Combine with a custom range to pull every CPI print of a year.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "🔗 Forex Factory links",
            "type": "array",
            "description": "Paste links from forexfactory.com instead of a date range: a calendar view (<code>/calendar?week=oct5.2026</code>, <code>?day=</code>, <code>?month=</code>, <code>?range=</code>, with the filters of a shared link), one event (<code>…#detail=148452</code>), or an indicator page such as <code>/calendar/66-us-non-farm-employment-change</code> for its whole release history since 2007, newest first. When links are given, the date range above is not read.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "currencies": {
            "title": "💱 Currencies",
            "type": "array",
            "description": "Pick one or more currencies, or type a code (<code>usd</code>), a name (<code>yen</code>, <code>sterling</code>) or a country (<code>Germany</code> reads EUR). Forex Factory covers these nine currencies. Leave empty for all of them.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "USD",
                "EUR",
                "GBP",
                "JPY",
                "AUD",
                "CAD",
                "CHF",
                "NZD",
                "CNY"
              ],
              "enumTitles": [
                "US Dollar",
                "Euro",
                "British Pound",
                "Japanese Yen",
                "Australian Dollar",
                "Canadian Dollar",
                "Swiss Franc",
                "New Zealand Dollar",
                "Chinese Yuan"
              ]
            }
          },
          "impacts": {
            "title": "🚦 Impact",
            "type": "array",
            "description": "Keep only events of these expected market impacts. High and medium impact events are the ones that move currencies: 11 of the 82 events of the week of 4 Oct 2026. Leave empty for all, holidays included.",
            "items": {
              "type": "string",
              "enum": [
                "high",
                "medium",
                "low",
                "holiday"
              ],
              "enumTitles": [
                "High impact (red)",
                "Medium impact (orange)",
                "Low impact (yellow)",
                "Holidays and non-economic (grey)"
              ]
            }
          },
          "categories": {
            "title": "🗂️ Event types",
            "type": "array",
            "description": "Keep only these kinds of events, as Forex Factory files them. Each row also says its type in the <code>category</code> field. Leave empty for all ten.",
            "items": {
              "type": "string",
              "enum": [
                "growth",
                "inflation",
                "employment",
                "central_bank",
                "bonds",
                "housing",
                "consumer_surveys",
                "business_surveys",
                "speeches",
                "misc"
              ],
              "enumTitles": [
                "Growth (GDP, retail sales, trade)",
                "Inflation (CPI, PPI, PCE)",
                "Employment (payrolls, jobless claims)",
                "Central bank (rate decisions, minutes)",
                "Bonds (auctions)",
                "Housing",
                "Consumer surveys",
                "Business surveys (PMI)",
                "Speeches",
                "Misc (holidays, inventories)"
              ]
            }
          },
          "timeZone": {
            "title": "🕐 Time zone",
            "type": "string",
            "description": "Time zone of the <code>date</code> and <code>time</code> fields and of the date range. Pick one or type any zone name (<code>Europe/Madrid</code>), abbreviation (<code>ET</code>) or offset (<code>UTC+2</code>). The <code>datetime</code> field is always in UTC.",
            "default": "UTC"
          },
          "maxItems": {
            "title": "🔢 Max events",
            "minimum": 1,
            "type": "integer",
            "description": "The most events to deliver over the whole run, in calendar order. The week of 4 Oct 2026 held 82 events and September 2026 held 452. Set it to what you need: the run stops there.",
            "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
                  },
                  "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}