{
  "openapi": "3.0.1",
  "info": {
    "title": "Swiss SHAB Monitor: Bankruptcy, Company Register, Tenders",
    "description": "Monitor the Swiss official gazette (SHAB / Amtsblattportal): bankruptcies and debt collection, commercial register changes, tenders and calls. Filter by rubric, canton, date and keyword, get full structured publication text, and receive only new records with webhook alerts.",
    "version": "0.1",
    "x-build-id": "ugajrej41nOf2dIT7"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/antndev~swiss-shab-amtsblatt-monitor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-antndev-swiss-shab-amtsblatt-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/antndev~swiss-shab-amtsblatt-monitor/runs": {
      "post": {
        "operationId": "runs-sync-antndev-swiss-shab-amtsblatt-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/antndev~swiss-shab-amtsblatt-monitor/run-sync": {
      "post": {
        "operationId": "run-sync-antndev-swiss-shab-amtsblatt-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": {
          "rubrics": {
            "title": "Rubrics",
            "type": "array",
            "description": "Which sections of the official gazette to read. SB = debt collection and bankruptcy, HR = commercial register, KK = cancellations and calls, LS = agriculture and land, AB = procurement and other notices.",
            "items": {
              "type": "string",
              "enum": [
                "SB",
                "HR",
                "KK",
                "LS",
                "AB",
                "NA",
                "BB"
              ],
              "enumTitles": [
                "SB - Debt collection and bankruptcy",
                "HR - Commercial register",
                "KK - Cancellations and calls",
                "LS - Agriculture and land",
                "AB - Procurement and other notices",
                "NA - Naturalisation",
                "BB - Federal and cantonal notices"
              ]
            },
            "default": [
              "SB"
            ]
          },
          "subRubrics": {
            "title": "Sub-rubrics (optional)",
            "type": "array",
            "description": "Narrow further, for example SB07 for bankruptcy warnings or HR01 for new registrations. Leave empty for all sub-rubrics of the selected rubrics.",
            "items": {
              "type": "string"
            }
          },
          "cantons": {
            "title": "Cantons (optional)",
            "type": "array",
            "description": "Two-letter canton codes, for example ZH, BE, VD. Leave empty for all of Switzerland.",
            "items": {
              "type": "string"
            }
          },
          "lastDays": {
            "title": "Last N days",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Convenience date filter. Set to 1 for a daily monitor, 7 for a weekly sweep. Overrides the explicit dates below.",
            "default": 7
          },
          "dateFrom": {
            "title": "Date from (YYYY-MM-DD)",
            "type": "string",
            "description": "Explicit start date. Ignored when 'Last N days' is set."
          },
          "dateTo": {
            "title": "Date to (YYYY-MM-DD)",
            "type": "string",
            "description": "Explicit end date. Ignored when 'Last N days' is set."
          },
          "keywords": {
            "title": "Keywords (optional)",
            "type": "array",
            "description": "Company names or terms to look for. Matched across the four language titles, the office name and the full publication text. Note: keyword filtering reads the detail record of each candidate, which costs one full-text event per record.",
            "items": {
              "type": "string"
            }
          },
          "requireAllKeywords": {
            "title": "Require all keywords",
            "type": "boolean",
            "description": "On: a publication must contain every keyword. Off: any keyword is enough.",
            "default": false
          },
          "includeFullText": {
            "title": "Include full structured text",
            "type": "boolean",
            "description": "Fetch each publication's official XML record and include it as structured JSON plus a flattened full_text field (debtor names, addresses, amounts, deadlines).",
            "default": false
          },
          "monitorMode": {
            "title": "Monitor mode (only new publications)",
            "type": "boolean",
            "description": "For scheduled runs: remembers publication IDs across runs and emits only records that were not seen before.",
            "default": false
          },
          "webhookUrl": {
            "title": "Webhook URL (optional)",
            "type": "string",
            "description": "POSTs the emitted publications as JSON to this URL, so you can alert into your own system."
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of publications to return per run.",
            "default": 100
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}