{
  "openapi": "3.0.1",
  "info": {
    "title": "Bid Scout: SAM.gov Federal Bids Digest",
    "description": "New federal bids from SAM.gov, filtered for your trade by keyword, NAICS code, set-aside, state or agency. Run it daily to see only what's new, and send results to Excel, Sheets, Slack or email. No SAM.gov account or API key. Not affiliated with the U.S. government.",
    "version": "0.4",
    "x-build-id": "91s54mH4ac2R2C8SY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/datapenguin~sam-gov-opportunities-digest/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-datapenguin-sam-gov-opportunities-digest",
        "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/datapenguin~sam-gov-opportunities-digest/runs": {
      "post": {
        "operationId": "runs-sync-datapenguin-sam-gov-opportunities-digest",
        "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/datapenguin~sam-gov-opportunities-digest/run-sync": {
      "post": {
        "operationId": "run-sync-datapenguin-sam-gov-opportunities-digest",
        "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": "Words or phrases to look for in the title or description, such as janitorial or grounds maintenance. Leave empty to skip keyword filtering.",
            "items": {
              "type": "string"
            }
          },
          "keywordMatch": {
            "title": "Keyword matching",
            "enum": [
              "any",
              "all"
            ],
            "type": "string",
            "description": "Choose whether a notice must contain any one of your keywords or all of them.",
            "default": "any"
          },
          "excludeKeywords": {
            "title": "Words to exclude",
            "type": "array",
            "description": "Skip notices that mention any of these words in the title or description.",
            "items": {
              "type": "string"
            }
          },
          "naicsCodes": {
            "title": "NAICS codes",
            "type": "array",
            "description": "Industry codes. Enter a full six-digit code like 561720, or just the first digits to cover a group: 5617 matches every code that starts with 5617, and 23 matches all construction. Leave empty for any.",
            "items": {
              "type": "string"
            }
          },
          "pscCodes": {
            "title": "Product and service codes (PSC)",
            "type": "array",
            "description": "Federal product and service codes, such as S201. The first characters work too (S2). Leave empty for any.",
            "items": {
              "type": "string"
            }
          },
          "noticeTypes": {
            "title": "Notice types",
            "type": "array",
            "description": "Which kinds of notices to include. The default list covers notices you can still respond to. Add Award Notice to see who won.",
            "items": {
              "type": "string",
              "enum": [
                "Solicitation",
                "Combined Synopsis/Solicitation",
                "Presolicitation",
                "Sources Sought",
                "Special Notice",
                "Award Notice",
                "Justification",
                "Justification and Approval (J&A)",
                "Modification/Amendment/Cancel",
                "Sale of Surplus Property",
                "Consolidate/(Substantially) Bundle"
              ]
            },
            "default": [
              "Solicitation",
              "Combined Synopsis/Solicitation",
              "Presolicitation",
              "Sources Sought",
              "Special Notice"
            ]
          },
          "setAsides": {
            "title": "Set-aside programs",
            "type": "array",
            "description": "Only show notices reserved for these programs, for example small business or service-disabled veteran-owned. Leave empty for any.",
            "items": {
              "type": "string",
              "enum": [
                "SBA",
                "SBP",
                "8A",
                "8AN",
                "HZC",
                "HZS",
                "SDVOSBC",
                "SDVOSBS",
                "WOSB",
                "WOSBSS",
                "EDWOSB",
                "EDWOSBSS",
                "LAS",
                "VSA",
                "VSS"
              ],
              "enumTitles": [
                "Total small business set-aside (SBA)",
                "Partial small business set-aside (SBP)",
                "8(a) set-aside (8A)",
                "8(a) sole source (8AN)",
                "HUBZone set-aside (HZC)",
                "HUBZone sole source (HZS)",
                "Service-disabled veteran-owned set-aside (SDVOSBC)",
                "Service-disabled veteran-owned sole source (SDVOSBS)",
                "Women-owned small business set-aside (WOSB)",
                "Women-owned small business sole source (WOSBSS)",
                "Economically disadvantaged women-owned set-aside (EDWOSB)",
                "Economically disadvantaged women-owned sole source (EDWOSBSS)",
                "Local area set-aside (LAS)",
                "Veteran-owned small business set-aside (VA) (VSA)",
                "Veteran-owned small business sole source (VA) (VSS)"
              ]
            }
          },
          "agencies": {
            "title": "Agency or office name contains",
            "type": "array",
            "description": "Part of a department, agency or office name, such as veterans affairs or army corps. Not case sensitive.",
            "items": {
              "type": "string"
            }
          },
          "states": {
            "title": "States",
            "type": "array",
            "description": "Two-letter state codes, such as TX or CA. Matches the place of performance, or the issuing office's state when no place is listed.",
            "items": {
              "type": "string"
            }
          },
          "postedWithinDays": {
            "title": "Posted within the last (days)",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "How far back to look. The data file updates overnight, so use at least 2 or 3 days if you run this every day.",
            "default": 7
          },
          "hideExpired": {
            "title": "Hide notices past their deadline",
            "type": "boolean",
            "description": "Notices with no deadline, such as sources sought, are always kept.",
            "default": true
          },
          "minDaysToDeadline": {
            "title": "Minimum days left to respond",
            "minimum": 0,
            "maximum": 365,
            "type": "integer",
            "description": "Skip notices that close sooner than this. For example, 5 hides anything due within five days.",
            "default": 0
          },
          "collapseAmendments": {
            "title": "Show each solicitation once",
            "type": "boolean",
            "description": "Agencies post every amendment as its own notice. When this is on, you see only the latest version of each solicitation, with a count of the versions it replaced.",
            "default": true
          },
          "onlyNew": {
            "title": "Only new or updated since last run",
            "type": "boolean",
            "description": "Remembers what you already received under your State key, so a daily schedule shows each notice once. A notice that gets amended shows up again.",
            "default": false
          },
          "stateKey": {
            "title": "State key",
            "type": "string",
            "description": "A name for this saved search. Use a different key for each search you schedule, so each one keeps its own history.",
            "default": "default"
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "relevance",
              "postedDate",
              "deadline"
            ],
            "type": "string",
            "description": "The order used before results are cut off at Max results.",
            "default": "relevance"
          },
          "maxItems": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "The most results to return. You are charged per result, so this also caps what a run can cost.",
            "default": 100
          },
          "includeDescription": {
            "title": "Include description text",
            "type": "boolean",
            "description": "Add the notice's description to each result.",
            "default": true
          },
          "descriptionMaxChars": {
            "title": "Description length (characters)",
            "minimum": 100,
            "maximum": 20000,
            "type": "integer",
            "description": "Longer descriptions are cut off at this length.",
            "default": 1500
          },
          "includeContacts": {
            "title": "Include contracting officer contacts",
            "type": "boolean",
            "description": "Name, email and phone exactly as published in the notice.",
            "default": 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}