{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/kvk-nl/json-schema/kvk-nl-signaal-response-type-schema.json",
  "title": "SignaalResponseType",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/kvk-nl-mutatieservice-openapi.yml#/components/schemas/SignaalResponseType",
  "required": [
    "signaal"
  ],
  "type": "object",
  "properties": {
    "signaal": {
      "$ref": "#/$defs/SignaalBaseResponseType"
    }
  },
  "$defs": {
    "ActiviteitType": {
      "required": [
        "sbiCode"
      ],
      "type": "object",
      "properties": {
        "isHoofdactiviteit": {
          "type": "boolean"
        },
        "sbiCode": {
          "type": "string"
        }
      }
    },
    "EigenaarType": {
      "type": "object",
      "properties": {
        "natuurlijkPersoon": {
          "$ref": "#/$defs/NatuurlijkPersoonType"
        },
        "rechtspersoon": {
          "$ref": "#/$defs/RechtspersoonType"
        }
      }
    },
    "LocatieType": {
      "required": [
        "afgeschermd"
      ],
      "type": "object",
      "properties": {
        "afgeschermd": {
          "type": "boolean"
        },
        "postcode": {
          "$ref": "#/$defs/PostcodeType"
        }
      }
    },
    "MaatschappelijkeActiviteitType": {
      "required": [
        "kvkNummer",
        "nonMailing"
      ],
      "type": "object",
      "properties": {
        "heeftAlsEigenaar": {
          "$ref": "#/$defs/EigenaarType"
        },
        "kvkNummer": {
          "type": "string"
        },
        "nonMailing": {
          "type": "boolean"
        },
        "totaalWerkzamePersonen": {
          "type": "integer"
        },
        "wordtUitgeoefendIn": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/VestigingType"
          }
        }
      }
    },
    "NatuurlijkPersoonType": {
      "type": "object",
      "properties": {
        "persoonRechtsvorm": {
          "type": "string"
        }
      }
    },
    "PostcodeType": {
      "required": [
        "cijfercombinatie"
      ],
      "type": "object",
      "properties": {
        "cijfercombinatie": {
          "type": "string"
        },
        "lettercombinatie": {
          "type": "string"
        }
      }
    },
    "RechtspersoonType": {
      "type": "object",
      "properties": {
        "activiteiten": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ActiviteitType"
          }
        },
        "bezoekadres": {
          "$ref": "#/$defs/LocatieType"
        },
        "persoonRechtsvorm": {
          "type": "string"
        },
        "rsin": {
          "type": "string"
        }
      }
    },
    "SignaalBaseResponseType": {
      "required": [
        "berichtId",
        "heeftBetrekkingOp",
        "indicatieCorrectie",
        "registratieId",
        "registratieTijdstip",
        "signaalType"
      ],
      "type": "object",
      "properties": {
        "berichtId": {
          "type": "string"
        },
        "registratieId": {
          "type": "string"
        },
        "registratieTijdstip": {
          "type": "string",
          "description": "Het datum en tijdformaat moet voldoen aan RFC3339 op basis van ISO8601.",
          "format": "date-time"
        },
        "heeftBetrekkingOp": {
          "$ref": "#/$defs/MaatschappelijkeActiviteitType"
        },
        "signaalType": {
          "$ref": "#/$defs/SignaalType"
        },
        "indicatieCorrectie": {
          "type": "boolean"
        }
      }
    },
    "SignaalType": {
      "type": "string",
      "enum": [
        "SignaalGewijzigdeInschrijving",
        "SignaalNieuweInschrijving",
        "SignaalGewijzigdeVestiging",
        "SignaalBeeindiging_2025_01",
        "SignaalRechtsvormwijziging_2025_01",
        "SignaalVoortzettingEnOverdracht_2025_01",
        "SignaalAdreswijziging_2025_01",
        "SignaalNaamgeving_2025_01",
        "SignaalFusieSplitsing_2025_01",
        "SignaalActiviteitenWijziging_2025_01",
        "SignaalInsolventie_2025_01",
        "SignaalFunctionarisWijziging_2025_01"
      ]
    },
    "VestigingType": {
      "required": [
        "vestigingsnummer"
      ],
      "type": "object",
      "properties": {
        "activiteiten": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ActiviteitType"
          }
        },
        "bezoekadres": {
          "$ref": "#/$defs/LocatieType"
        },
        "isHoofdvestiging": {
          "type": "boolean"
        },
        "totaalWerkzamePersonen": {
          "type": "integer"
        },
        "vestigingsnummer": {
          "type": "string"
        }
      }
    }
  }
}