{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amsterdam-nl/json-schema/amsterdam-nl-afvalwijzeracc-afvalwijzer-schema.json",
  "title": "Afvalwijzeracc_afvalwijzer",
  "description": "Overzicht van informatie voor het aanbieden van afval per fractie per adres.",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amsterdam-nl-afvalwijzer-openapi.yml#/components/schemas/Afvalwijzeracc_afvalwijzer",
  "type": "object",
  "properties": {
    "_links": {
      "allOf": [
        {
          "$ref": "#/$defs/AfvalwijzerdefaultAccAfvalwijzerLinks"
        }
      ],
      "title": " links"
    },
    "id": {
      "type": "string",
      "description": "Unieke aanduiding van het record."
    },
    "straatnaam": {
      "type": [
        "string",
        "null"
      ],
      "description": "Een naam om openbare ruimten als straten, lanen, wegen en stegen mee aan te duiden."
    },
    "huisnummer": {
      "type": [
        "integer",
        "null"
      ],
      "maximum": 9223372036854775807,
      "minimum": -9223372036854775808,
      "format": "int64",
      "description": "Een door het bevoegde gemeentelijke orgaan ten aanzien van een adresseerbaar object toegekende nummering."
    },
    "huisletter": {
      "type": [
        "string",
        "null"
      ],
      "description": "Een door het bevoegde gemeentelijke orgaan ten aanzien van een adresseerbaar object toegekende toevoeging aan een huisnummer in de vorm van een alfanumeriek teken"
    },
    "huisnummertoevoeging": {
      "type": [
        "string",
        "null"
      ],
      "description": "Een door het bevoegde gemeentelijke orgaan ten aanzien van een adresseerbaar object toegekende nadere toevoeging aan een huisnummer of een combinatie van huisnummer en huisletter"
    },
    "postcode": {
      "type": [
        "string",
        "null"
      ],
      "description": "De door PostNL vastgestelde code bestaande uit 4 cijfers en 2 letters"
    },
    "woonplaatsnaam": {
      "type": [
        "string",
        "null"
      ],
      "title": "Woonplaats naam",
      "description": "Een woonplaatsnaam is de naam van een door het bevoegde gemeentelijke orgaan als zodanig aangewezen gedeelte van het gemeentelijk grondgebied"
    },
    "statusAdres": {
      "type": [
        "string",
        "null"
      ],
      "description": "De fase van de levenscyclus van een verblijfsobject, ligplaats of staanplaats waarin het betreffende object zich bevindt"
    },
    "gebruiksdoelWoonfunctie": {
      "type": [
        "boolean",
        "null"
      ],
      "title": "Gebruiksdoel woonfunctie code",
      "description": "De aanduiding of het gebruiksdoel een woonfunctie betreft, wijkt bij de Afvalwijzer af van het BAG-gebruiksdoel. Voor de Afvalwijzer wordt het gebruiksdoel woonfunctie bepaald op basis van de indicatoren in de BAG Verblijfsobjecten en de WOZ-objecten tabel."
    },
    "afvalwijzerInstructie": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval aanbod instructie omschrijving",
      "description": "Instructie die aangeeft hoe het afval aangeboden mag worden"
    },
    "afvalwijzerBasisroutetypeId": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval basisroute type ID",
      "description": "De unieke identificatie van de basisroutetype afval ophalen"
    },
    "afvalwijzerRoutenaam": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval ophaalroute naam",
      "description": "De naam van de basisroute"
    },
    "afvalwijzerPerXWeken": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval basisroute interval",
      "description": "Het interval in weken waarmee deze basisroute ingepland moet worden."
    },
    "afvalwijzerBuitenzettenVanafTot": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval buitenzetten vanaf tot",
      "description": "Opmerking die aangeeft wannner de afval buiten mag gezet worden"
    },
    "afvalwijzerBuitenzettenVanaf": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval buitenzetten vanaf omschrijving",
      "description": "Opmerking die aangeeft vanaf wanneer de afval buiten mag gezet worden"
    },
    "afvalwijzerBuitenzettenTot": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval buitenzetten tot omschrijving",
      "description": "Opmerking die aangeeft tot wanneer de afval buiten mag gezet worden"
    },
    "afvalwijzerAfvalkalenderOpmerking": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval wijze aanbieden omschrijving",
      "description": "Aanvullende opmerking over de manier van het aanbieden van het afval"
    },
    "afvalwijzerAfvalkalenderFrequentie": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval ophalen frequentie",
      "description": "De frequentie waarmee het afval opgehaald wordt."
    },
    "afvalwijzerFractieNaam": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval fractiesoort naam",
      "description": "Omschrijving van het soort afval"
    },
    "afvalwijzerFractieCode": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval fractiesoort code",
      "description": "Nadere typering van het soort afval"
    },
    "afvalwijzerRoutetypeNaam": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval basisroute naam",
      "description": "De naam van de basisroute"
    },
    "afvalwijzerOphaaldagen": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "string",
        "title": "Afvalwijzer ophaaldagen"
      },
      "title": "Afval ophaaldagen omschrijving",
      "description": "Omschrijving van de dagen waarop het afval wordt opgehaald"
    },
    "afvalwijzerAfvalkalenderMelding": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval ophalen afwijkende dagen omschrijving",
      "description": "Aanvullende informatie over afwijkende ophaaldagen"
    },
    "afvalwijzerAfvalkalenderVan": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "title": "Afval ophalen afwijkende dagen startdatum geldigheid",
      "description": "Begindatum van de geldigheid van de aanvullende informatie over de afwijkende ophaaldagen"
    },
    "afvalwijzerAfvalkalenderTot": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "title": "Afval ophalen afwijkende dagen einddatum geldigheid",
      "description": "Einddatum van de geldigheid van de aanvullende informatie over de afwijkende ophaaldagen"
    },
    "afvalwijzerBasisroutetype": {
      "type": [
        "string",
        "null"
      ],
      "title": "Basisroute type",
      "description": "Type basisroute geeft aan wat voor inzamelmethode voor een route van tepassing is. "
    },
    "afvalwijzerBasisroutetypeOmschrijving": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval basisroute type omschrijving",
      "description": "De omschrijving van het type van de basisroute"
    },
    "afvalwijzerBasisroutetypeCode": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval basisroute type code",
      "description": "Nadere aanduiding van het type van de afval basisroute"
    },
    "afvalwijzerGeometrie": {
      "$ref": "#/$defs/Point"
    },
    "afvalwijzerInstructie2": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval aanvullende ophaalinstructie informatie",
      "description": "Aanvullende afval ophaalinstructie"
    },
    "afvalwijzerOphaaldagen2": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "string",
        "title": "Afvalwijzer ophaaldagen 2"
      },
      "title": "Afval aanvullende ophaaldagen informatie",
      "description": "Aanvullende informatie over de ophaaldagen"
    },
    "afvalwijzerWaar": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval plaatslocatie omschrijving",
      "description": "Informatie over de plek waar het afval gezet mag worden."
    },
    "afvalwijzerBuitenzetten": {
      "type": [
        "string",
        "null"
      ],
      "title": "De tijdstip buitenzetten",
      "description": "De tijdslot wanneer de afval buiten gezet mag worden"
    },
    "afvalwijzerButtontekst": {
      "type": [
        "string",
        "null"
      ],
      "title": "Buttontekst",
      "description": "De instructietekst die op een knop verschijnt om het afspraakformulier te starten."
    },
    "afvalwijzerUrl": {
      "type": [
        "string",
        "null"
      ],
      "title": "Link naar aanvullende informatie",
      "description": "URL die verwijst naar externe of interne websites voor relevante informatie."
    },
    "bagNummeraanduidingId": {
      "type": [
        "string",
        "null"
      ],
      "title": "BAG Nummeraanduiding ID",
      "description": "Identificatie nummeraanduiding"
    },
    "gbdBuurtId": {
      "type": [
        "string",
        "null"
      ],
      "title": "Gebied buurt ID",
      "description": "Unieke identificatie van het object"
    },
    "gbdBuurtCode": {
      "type": [
        "string",
        "null"
      ],
      "title": "Gebied buurt code",
      "description": "Unieke code (hierin zie je de Stadsdeel- en Wijkcode terug)"
    },
    "afvalwijzerInzamelgebiedNaam": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval inzamelgebied naam",
      "description": "De naam van het inzamelgebied"
    },
    "afvalwijzerInzamelgebiedCode": {
      "type": [
        "string",
        "null"
      ],
      "title": "Afval inzamelgebied code",
      "description": "Nadere aanduiding van het inzamelgebied"
    },
    "afvalwijzerFractiecodeActief": {
      "type": [
        "boolean",
        "null"
      ],
      "title": "Afval fractiecode status",
      "description": "Geeft aan of de fractiecode actief of niet is"
    },
    "afvalwijzerFractieVolgorde": {
      "type": [
        "string",
        "null"
      ],
      "title": "Volgorde van de fractie",
      "description": "Volgorde van de fractie"
    }
  },
  "required": [
    "_links",
    "id"
  ],
  "$defs": {
    "Afvalwijzeracc_afvalwijzerLink": {
      "type": "object",
      "description": "The identifier of the relationship to accAfvalwijzer.",
      "properties": {
        "href": {
          "type": "string",
          "format": "uri",
          "readOnly": true
        },
        "title": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "description": "Unieke aanduiding van het record."
        }
      },
      "required": [
        "href",
        "id",
        "title"
      ]
    },
    "AfvalwijzerdefaultAccAfvalwijzerLinks": {
      "type": "object",
      "description": "The contents of the `accAfvalwijzer._links` field. It contains all relationships with objects.",
      "properties": {
        "schema": {
          "type": "string",
          "format": "uri",
          "description": "The schema field is exposed with every record",
          "readOnly": true
        },
        "self": {
          "$ref": "#/$defs/Afvalwijzeracc_afvalwijzerLink"
        }
      },
      "required": [
        "schema",
        "self"
      ]
    },
    "Geometry": {
      "type": "object",
      "description": "GeoJSON geometry",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "Point",
            "LineString",
            "Polygon",
            "MultiPoint",
            "MultiLineString",
            "MultiPolygon"
          ],
          "description": "the geometry type"
        },
        "coordinates": {
          "type": "array",
          "minItems": 2,
          "description": "Based on the geometry type, a point or collection of points.",
          "items": {
            "type": "number"
          }
        }
      }
    },
    "Point": {
      "type": "object",
      "description": "GeoJSON geometry",
      "allOf": [
        {
          "$ref": "#/$defs/Geometry"
        },
        {
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "Point"
              ]
            },
            "coordinates": {
              "$ref": "#/$defs/Point3D"
            }
          }
        }
      ]
    },
    "Point3D": {
      "type": "array",
      "description": "Point in 3D space",
      "minItems": 2,
      "maxItems": 3,
      "items": {
        "type": "number"
      }
    }
  }
}