{
  "openapi": "3.0.1",
  "info": {
    "title": "Federal Infrastructure Milestone Monitor",
    "description": "Track official federal infrastructure review milestones, published target dates and saved changes. Filter mining, power and industrial projects; no API key required.",
    "version": "1.0",
    "x-build-id": "ls3g60cnixLgo2zCY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/maydit~federal-infrastructure-milestone-monitor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-maydit-federal-infrastructure-milestone-monitor",
        "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/maydit~federal-infrastructure-milestone-monitor/runs": {
      "post": {
        "operationId": "runs-sync-maydit-federal-infrastructure-milestone-monitor",
        "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/maydit~federal-infrastructure-milestone-monitor/run-sync": {
      "post": {
        "operationId": "run-sync-maydit-federal-infrastructure-milestone-monitor",
        "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": {
          "sectors": {
            "title": "Project sectors",
            "type": "array",
            "description": "Exact official sector names. Default Mining; examples include Electricity Transmission, Manufacturing, Energy Storage and Renewable Energy Production. Empty includes every sector.",
            "items": {
              "type": "string"
            },
            "default": [
              "Mining"
            ]
          },
          "categories": {
            "title": "Dashboard categories",
            "type": "array",
            "description": "Exact source categories: FAST-41 Covered Projects, FAST-41 Transparency Projects, DOT Projects or Other Projects. Empty includes all four.",
            "items": {
              "type": "string"
            },
            "default": [
              "FAST-41 Covered Projects",
              "FAST-41 Transparency Projects"
            ]
          },
          "projectStatuses": {
            "title": "Project status",
            "type": "array",
            "description": "Exact published status values: In Progress, Planned, Paused, Complete, Cancelled or Class of Action Changed. Empty includes all statuses.",
            "items": {
              "type": "string"
            },
            "default": [
              "In Progress"
            ]
          },
          "projectIds": {
            "title": "Official project IDs",
            "type": "array",
            "description": "Optional numeric dashboard project IDs. Existing sector, category and status filters still apply.",
            "items": {
              "type": "string"
            }
          },
          "states": {
            "title": "States",
            "type": "array",
            "description": "Optional exact two-letter state values in the source. Multi-state or missing state entries do not match a single-state filter.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keyword evidence",
            "type": "array",
            "description": "Optional literal terms matched without case sensitivity in project names and selected published text. Any term may match. For the milestone Actor, filtering applies only inside the selected source window.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Maximum saved observations",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum confirmed dataset rows. Unchanged rows skipped by changes-only mode do not consume this limit.",
            "default": 5
          },
          "comparePrevious": {
            "title": "Compare with saved observations",
            "type": "boolean",
            "description": "Use a named history store. The first observation is new and is saved as a baseline only after a confirmed dataset write. Use one writer per snapshot name.",
            "default": false
          },
          "onlyChanges": {
            "title": "Save only new or changed observations",
            "type": "boolean",
            "description": "Requires comparison. A repeated unchanged window can validly save zero rows. Do not enable for a nonempty health sample.",
            "default": false
          },
          "snapshotName": {
            "title": "Snapshot name",
            "pattern": "^[-a-zA-Z0-9_]{1,40}$",
            "type": "string",
            "description": "History namespace (1–40 letters, numbers, underscores or hyphens). Reuse it to compare; choose a fresh name to start separately. Never schedule overlapping writers.",
            "default": "default"
          },
          "maxSourceEntries": {
            "title": "Source window size",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum source milestones fetched before optional keyword filtering, ordered by project/action/milestone ID. A bounded window is not complete project history.",
            "default": 100
          },
          "maxRunSeconds": {
            "title": "Run time budget (seconds)",
            "minimum": 30,
            "maximum": 3600,
            "type": "integer",
            "description": "Own wall-clock budget; also stops 25 seconds before the platform deadline. Partial work and unsaved history are reported honestly.",
            "default": 240
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}