{
  "openapi": "3.0.1",
  "info": {
    "title": "Fed Calendar: FOMC Meetings, Minutes & Statistical Releases",
    "description": "Scheduled Federal Reserve events from the Fed's own calendar: FOMC meeting days, statement, press conference and minutes, Beige Book, governor speeches and statistical releases (G.17, H.8, G.19, Z.1, H.15). One row per event with Eastern and UTC time and links to statement and minutes.",
    "version": "0.1",
    "x-build-id": "T9nhaKBieqGMLBeP0"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/yadroo~fed-fomc-calendar/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-yadroo-fed-fomc-calendar",
        "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/yadroo~fed-fomc-calendar/runs": {
      "post": {
        "operationId": "runs-sync-yadroo-fed-fomc-calendar",
        "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/yadroo~fed-fomc-calendar/run-sync": {
      "post": {
        "operationId": "run-sync-yadroo-fed-fomc-calendar",
        "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": {
          "mode": {
            "title": "What to fetch",
            "enum": [
              "calendar",
              "nextEvent",
              "fomcMeetings"
            ],
            "type": "string",
            "description": "`calendar` reads the Board's monthly event calendar and returns one row per scheduled event (statistical release, FOMC day, Beige Book, speech, holiday). `nextEvent` returns only the next occurrence of each selected event type or release code — the answer to \"when is the next FOMC meeting / next G.17\". `fomcMeetings` reads the FOMC meeting calendar instead and returns one row per meeting with the document links; it ignores the date window and uses the year filter.",
            "default": "calendar"
          },
          "eventTypes": {
            "title": "Event types",
            "type": "array",
            "description": "Keep only these kinds of events. Empty = every entry on the calendar. Used by `calendar` and `nextEvent`; ignored by `fomcMeetings`.",
            "items": {
              "type": "string",
              "enum": [
                "statisticalRelease",
                "fomcMeeting",
                "fomcMinutes",
                "fomcPressConference",
                "beigeBook",
                "speech",
                "holiday",
                "other"
              ],
              "enumTitles": [
                "Statistical release (G.17, H.8, Z.1, …)",
                "FOMC meeting day",
                "FOMC minutes release",
                "FOMC press conference",
                "Beige Book",
                "Speech or discussion by a Board member",
                "Holiday affecting the release schedule",
                "Other calendar entry"
              ]
            }
          },
          "releaseCodes": {
            "title": "Statistical releases",
            "type": "array",
            "description": "Keep only these statistical releases, by the code the Board prints on the calendar. Empty = every release. Entries whose code is not in this list still come back in an unfiltered run with the printed code in `releaseCode`; use `titleContains` to pick those. See README → Reference dictionaries.",
            "items": {
              "type": "string",
              "enum": [
                "CP",
                "E.2",
                "G.5",
                "G.17",
                "G.19",
                "G.20",
                "H.4.1",
                "H.6",
                "H.8",
                "H.10",
                "H.15",
                "Z.1",
                "SLOOS",
                "SCOOS",
                "CHGDEL",
                "DSR"
              ],
              "enumTitles": [
                "CP — Commercial Paper (daily)",
                "E.2 — Survey of Terms of Business Lending (quarterly)",
                "G.5 — Foreign Exchange Rates, monthly",
                "G.17 — Industrial Production and Capacity Utilization (monthly)",
                "G.19 — Consumer Credit (monthly)",
                "G.20 — Finance Companies (monthly, date approximate)",
                "H.4.1 — Factors Affecting Reserve Balances (weekly)",
                "H.6 — Money Stock Measures (monthly)",
                "H.8 — Assets and Liabilities of Commercial Banks (weekly)",
                "H.10 — Foreign Exchange Rates, weekly",
                "H.15 — Selected Interest Rates (every business day)",
                "Z.1 — Financial Accounts of the United States (quarterly)",
                "SLOOS — Senior Loan Officer Opinion Survey (quarterly)",
                "SCOOS — Senior Credit Officer Opinion Survey (quarterly)",
                "CHGDEL — Charge-Off and Delinquency Rates (quarterly)",
                "DSR — Household Debt Service and Financial Obligations Ratios (quarterly)"
              ]
            }
          },
          "titleContains": {
            "title": "Title contains",
            "type": "string",
            "description": "Keep only events whose printed title contains this text, case-insensitive, e.g. \"industrial production\", \"minutes\", \"Beige Book\", or a Board member's surname. Combined with the other filters it narrows, never widens: a row must match all of them."
          },
          "dateFrom": {
            "title": "From date (Eastern, inclusive)",
            "type": "string",
            "description": "Earliest event date, YYYY-MM-DD. Set `dateFrom` and `dateTo` to read a fixed window (also in the past); leave both empty to use `withinDays` from today. The Board's month pages currently start at January 2025."
          },
          "dateTo": {
            "title": "To date (Eastern, inclusive)",
            "type": "string",
            "description": "Latest event date, YYYY-MM-DD. The Board publishes month pages to the end of the current calendar year and adds the next year during it; a window that reaches beyond the last published month is trimmed to what exists and the run says so. A window entirely outside the published range ends with a clear message naming the covered range."
          },
          "withinDays": {
            "title": "Next N days",
            "minimum": 1,
            "maximum": 730,
            "type": "integer",
            "description": "Window length when `dateTo` is empty: events scheduled from today up to N days ahead, or N days from `dateFrom` when only that is set. 7 for a weekly briefing, 90 for a quarter. Each month of window the Board publishes costs one page request; months it has not published cost none.",
            "default": 60
          },
          "fomcYears": {
            "title": "FOMC years",
            "type": "array",
            "description": "Years to read in `fomcMeetings` mode, four digits each, e.g. \"2026\". Empty = every year the FOMC calendar page lists (2021–2027 today; the Board adds the next year during the summer and moves older years to its historical pages, which this actor does not read). Years the page does not list are named in the run status; when none of the years is listed, the run ends with a message naming the years that are.",
            "items": {
              "type": "string",
              "pattern": "^[0-9]{4}$"
            }
          },
          "onlyProjectionMeetings": {
            "title": "Only meetings with economic projections",
            "type": "boolean",
            "description": "`fomcMeetings` mode: keep only meetings marked as associated with a Summary of Economic Projections — the quarterly meetings that publish the projection materials and the rate-path chart.",
            "default": false
          },
          "onlyUpcoming": {
            "title": "Only events still ahead",
            "type": "boolean",
            "description": "Drop events whose scheduled moment has already passed, also inside an explicit date range. `nextEvent` always applies this.",
            "default": false
          },
          "onlyNew": {
            "title": "Only entries not seen before",
            "type": "boolean",
            "description": "Remember event type, title and scheduled UTC moment in a named key-value store of your account (`fed-fomc-calendar-state`) and output only entries that no earlier run of the same filter set delivered. The filter set includes the mode, event types, releases, title text, FOMC years, the date window (a rolling `withinDays` window by its length, fixed dates by the dates) and the `onlyUpcoming` / `onlyProjectionMeetings` switches, so two tasks with different filters never consume each other's changes. A rescheduled or newly announced event counts as new. Entries delivered before are dropped before `maxItems` cuts the list, and an entry is remembered only once it is written. The first run outputs everything it finds; a run that finds no change returns no rows, which is the expected result for a monitoring task.",
            "default": false
          },
          "sortOrder": {
            "title": "Sort",
            "enum": [
              "soonest",
              "latest"
            ],
            "type": "string",
            "description": "Order rows by the scheduled moment.",
            "default": "soonest"
          },
          "maxItems": {
            "title": "Max rows",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Stop after this many rows. A calendar month is roughly 60 rows, because the daily releases (H.15, CP) appear on every business day. With `onlyNew`, rows delivered before do not count. The run also stops at your maximum cost per run and says so in its status.",
            "default": 50
          },
          "fields": {
            "title": "Output fields",
            "type": "array",
            "description": "Keep only these output fields, in this order, e.g. [\"title\", \"eventDate\", \"eventDateTimeUtc\"]. No column is added that you did not list. Letter case and one-letter slips are corrected and named in the run status; a field the mode does not have is skipped with a note; a list with no usable field stops the run before any request. Empty = all fields of the mode.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}