{ "openapi": "3.1.0", "info": { "title": "api.postcode-api.nl", "description": "The api.postcode-api.nl API allows dutch address lookups via autocomplete and directmatch endpoints.\nUsers can search by partial input or exact postcode and house number, receiving either suggestions or complete address data with geographic\ncoordinates. All endpoints require a bearer token for authentication", "license": { "name": "" }, "version": "0.1.0" }, "servers": [ { "url": "https://api.postcode-api.nl", "description": "The API server of postcode-api.nl" } ], "paths": { "/v1/autocomplete/be": { "get": { "tags": [ "autocomplete" ], "summary": "Autocomplete Belgium endpoint with query parameters", "operationId": "autocomplete_be", "parameters": [ { "name": "search", "in": "query", "description": "Search term (optional when context is provided)", "required": false, "schema": { "type": [ "string", "null" ] } }, { "name": "context", "in": "query", "description": "Context ID from a previous search result (optional)", "required": false, "schema": { "type": [ "string", "null" ] } }, { "name": "per_page", "in": "query", "description": "Results per page (defaults to 50)", "required": false, "schema": { "type": "integer", "format": "int32", "minimum": 0 } }, { "name": "page", "in": "query", "description": "Page number (defaults to 1)", "required": false, "schema": { "type": [ "integer", "null" ], "format": "int32", "minimum": 0 } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "oneOf": [ { "type": "object", "required": [ "results", "pagination" ], "properties": { "pagination": { "$ref": "#/components/schemas/PaginationMetadata" }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } } } }, { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, { "type": "object", "required": [ "city", "housenumber", "municipality", "postcode", "province", "street", "location" ], "properties": { "city": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "housenumberaddition": { "type": [ "string", "null" ] }, "location": { "$ref": "#/components/schemas/Location" }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "province": { "type": "string" }, "street": { "type": "string" } } } ] }, "examples": { "Address": { "summary": "Final address when selecting a house number", "value": { "housenumber": "1", "location": { "wgs84": [ 3.7174, 51.0543 ] }, "municipality": { "name": { "de": null, "fr": null, "nl": "Gent" }, "nis_code": "44021" }, "postcode": "9000", "street": { "name": { "de": null, "fr": null, "nl": "Aakstraat" } } } }, "Suggestions": { "summary": "List returned while the user is still typing", "value": { "pagination": { "page": 1, "per_page": 50, "total_count": 1, "total_pages": 1 }, "results": [ { "context": "abc123def456", "description": "Gent", "label": "Aakstraat", "precision": "Street", "value": "Gent, Aakstraat" } ] } } } } } }, "400": { "description": "Missing search or context parameter" }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/autocomplete/lu": { "get": { "tags": [ "autocomplete" ], "summary": "Autocomplete Luxembourg endpoint with query parameters", "operationId": "autocomplete_lu", "parameters": [ { "name": "search", "in": "query", "description": "Search term (optional when context is provided)", "required": false, "schema": { "type": [ "string", "null" ] } }, { "name": "context", "in": "query", "description": "Context ID from a previous search result (optional)", "required": false, "schema": { "type": [ "string", "null" ] } }, { "name": "per_page", "in": "query", "description": "Results per page (defaults to 50)", "required": false, "schema": { "type": "integer", "format": "int32", "minimum": 0 } }, { "name": "page", "in": "query", "description": "Page number (defaults to 1)", "required": false, "schema": { "type": [ "integer", "null" ], "format": "int32", "minimum": 0 } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "oneOf": [ { "type": "object", "required": [ "results", "pagination" ], "properties": { "pagination": { "$ref": "#/components/schemas/PaginationMetadata" }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } } } }, { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, { "type": "object", "required": [ "city", "housenumber", "municipality", "postcode", "province", "street", "location" ], "properties": { "city": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "housenumberaddition": { "type": [ "string", "null" ] }, "location": { "$ref": "#/components/schemas/Location" }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "province": { "type": "string" }, "street": { "type": "string" } } } ] }, "examples": { "Address": { "summary": "Final address when selecting a house number", "value": { "canton": "Luxembourg", "city": "Luxembourg", "district": "Gare", "housenumber": "12", "location": { "wgs84": [ 6.1296, 49.6116 ] }, "municipality": "Luxembourg", "postcode": "1930", "street": "Avenue de la Liberté" } }, "Suggestions": { "summary": "List returned while the user is still typing", "value": { "pagination": { "page": 1, "per_page": 50, "total_count": 1, "total_pages": 1 }, "results": [ { "context": "abc123def456", "description": "1930 Luxembourg", "label": "Avenue de la Liberté 12", "precision": "House", "value": "Luxembourg, Avenue de la Liberté, 12" } ] } } } } } }, "400": { "description": "Missing search or context parameter" }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/autocomplete/nl": { "get": { "tags": [ "autocomplete" ], "summary": "Autocomplete endpoint for Netherlands with query params", "operationId": "autocomplete_nl", "parameters": [ { "name": "search", "in": "query", "description": "Search term (optional when context is provided)", "required": false, "schema": { "type": [ "string", "null" ] } }, { "name": "context", "in": "query", "description": "Context ID from a previous search result (optional)", "required": false, "schema": { "type": [ "string", "null" ] } }, { "name": "per_page", "in": "query", "description": "Results per page (defaults to 50)", "required": false, "schema": { "type": "integer", "format": "int32", "minimum": 0 } }, { "name": "page", "in": "query", "description": "Page number (defaults to 1)", "required": false, "schema": { "type": [ "integer", "null" ], "format": "int32", "minimum": 0 } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "oneOf": [ { "type": "object", "required": [ "results", "pagination" ], "properties": { "pagination": { "$ref": "#/components/schemas/PaginationMetadata" }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } } } }, { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, { "type": "object", "required": [ "city", "housenumber", "municipality", "postcode", "province", "street", "location" ], "properties": { "city": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "housenumberaddition": { "type": [ "string", "null" ] }, "location": { "$ref": "#/components/schemas/Location" }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "province": { "type": "string" }, "street": { "type": "string" } } } ] }, "examples": { "Address": { "summary": "Final address when the input matches", "value": { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 120000.0, 450000.0 ], "wgs84": [ 4.892, 52.373 ] }, "municipality": "Amsterdam", "postcode": "1012 AB", "province": "Noord-Holland", "street": "Dam" } }, "Suggestions": { "summary": "List returned while the user is still typing", "value": { "pagination": { "page": 1, "per_page": 50, "total_count": 1, "total_pages": 1 }, "results": [ { "context": "bdec103509130f14", "description": "Dam", "label": "Dam 1", "precision": "House", "value": "Amsterdam, Dam, 1" } ] } } } } } }, "400": { "description": "Missing search or context parameter" }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/directmatch/be/{postcode}/{housenumber}": { "get": { "tags": [ "directmatch" ], "summary": "Find address with postal code and house number (be)", "description": "Performs a direct address lookup using a belgium postcode, housenumber.\nIf a matching address is found, the corresponding address object is returned.\nReturns a 404 response if no match is found.", "operationId": "directmatch_be", "parameters": [ { "name": "postcode", "in": "path", "description": "Zipcode/postal code", "required": true, "schema": { "type": "string" } }, { "name": "housenumber", "in": "path", "description": "Housenumber", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AddressBE" } }, "examples": { "Address": { "summary": "Final address when the input matches", "value": { "housenumber": "4", "location": { "bd72": [ 242150.586999998, 145714.624000002 ], "wgs84": [ 50.61481442525031, 5.670870222037145 ] }, "municipality": { "de": "Beyne-Heusay", "fr": "Beyne-Heusay", "nl": "Beyne-Heusay" }, "postcode": "4610", "province": { "de": "Lüttich", "fr": "Liège", "nl": "Luik" }, "street": { "fr": "Rue de la Belle Fleur" } } } } } } }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/directmatch/be/{postcode}/{housenumber}/{street}": { "get": { "tags": [ "directmatch" ], "summary": "Find address with postal code and house number by street (be)", "description": "Performs a direct address lookup using a belgium postcode, housenumber, street.\nIf a matching address is found, the corresponding address object is returned.\nReturns a 404 response if no match is found.", "operationId": "directmatch_be_street", "parameters": [ { "name": "postcode", "in": "path", "description": "Zipcode/postal code", "required": true, "schema": { "type": "string" } }, { "name": "housenumber", "in": "path", "description": "Housenumber", "required": true, "schema": { "type": "string" } }, { "name": "street", "in": "path", "description": "Street", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AddressNL" } }, "examples": { "AddressBE": { "summary": "Final address when the input matches", "value": { "housenumber": "4", "location": { "bd72": [ 242150.586999998, 145714.624000002 ], "wgs84": [ 50.61481442525031, 5.670870222037145 ] }, "municipality": { "de": "Beyne-Heusay", "fr": "Beyne-Heusay", "nl": "Beyne-Heusay" }, "postcode": "4610", "province": { "de": "Lüttich", "fr": "Liège", "nl": "Luik" }, "street": { "fr": "Rue de la Belle Fleur" } } } } } } }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/directmatch/lu/{postcode}/{housenumber}": { "get": { "tags": [ "directmatch" ], "summary": "Find address with postal code and house number (lu)", "description": "Performs a direct address lookup using a luxembourg postcode, housenumber.\nIf a matching address is found, the corresponding address object is returned.\nReturns a 404 response if no match is found.", "operationId": "directmatch_lu", "parameters": [ { "name": "postcode", "in": "path", "description": "Zipcode/postal code", "required": true, "schema": { "type": "string" } }, { "name": "housenumber", "in": "path", "description": "Housenumber", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AddressLU" } }, "examples": { "Address": { "summary": "Final address when the input matches", "value": { "canton": "Luxembourg", "city": "Luxembourg", "district": "Gare", "housenumber": "12", "municipality": "Luxembourg", "postcode": "1371", "street": "Avenue de la Liberté" } } } } } }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/directmatch/lu/{postcode}/{housenumber}/{street}": { "get": { "tags": [ "directmatch" ], "summary": "Find address with postal code, house number and street (lu)", "description": "Performs a direct address lookup using a luxembourg postcode, housenumber and street.\nIf a matching address is found, the corresponding address object is returned.\nReturns a 404 response if no match is found.", "operationId": "directmatch_lu_street", "parameters": [ { "name": "postcode", "in": "path", "description": "Zipcode/postal code", "required": true, "schema": { "type": "string" } }, { "name": "housenumber", "in": "path", "description": "Housenumber", "required": true, "schema": { "type": "string" } }, { "name": "street", "in": "path", "description": "Street name", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AddressLU" } }, "examples": { "AddressLU": { "summary": "Final address when the input matches", "value": { "canton": "Luxembourg", "city": "Luxembourg", "district": "Gare", "housenumber": "12", "municipality": "Luxembourg", "postcode": "1371", "street": "Avenue de la Liberté" } } } } } }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/directmatch/nl/{postcode}/{housenumber}": { "get": { "tags": [ "directmatch" ], "summary": "Find address with postal code", "description": "Performs a direct address lookup using a dutch postcode, housenumber.\nIf a matching address is found, the corresponding address object is returned.\nReturns a 404 response if no match is found.", "operationId": "directmatch_nl", "parameters": [ { "name": "postcode", "in": "path", "description": "Zipcode/postal code", "required": true, "schema": { "type": "string" } }, { "name": "housenumber", "in": "path", "description": "A housenumber", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AddressNL" } }, "examples": { "Address": { "summary": "Final address when the input matches", "value": { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 120000.0, 450000.0 ], "wgs84": [ 4.892, 52.373 ] }, "municipality": "Amsterdam", "postcode": "1012 AB", "province": "Noord-Holland", "street": "Dam" } } } } } }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/directmatch/nl/{postcode}/{housenumber}/{housenumberaddition}": { "get": { "tags": [ "directmatch" ], "summary": "Find address with housenumber addition", "description": "Performs a direct address lookup using a dutch postcode, housenumber, and a housenumber addition.\nIf a matching address is found, the corresponding address object is returned.\nReturns a 404 response if no match is found.", "operationId": "directmatch_housenumberaddition", "parameters": [ { "name": "postcode", "in": "path", "description": "Zipcode/postal code", "required": true, "schema": { "type": "string" } }, { "name": "housenumber", "in": "path", "description": "A housenumber", "required": true, "schema": { "type": "string" } }, { "name": "housenumberaddition", "in": "path", "description": "Housenumber addition: letter or BIS or a number etc", "required": true, "schema": { "type": "string" } }, { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful search", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AddressNL" } }, "examples": { "Address": { "summary": "Final address when the input matches", "value": { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 120000.0, 450000.0 ], "wgs84": [ 4.892, 52.373 ] }, "municipality": "Amsterdam", "postcode": "1012 AB", "province": "Noord-Holland", "street": "Dam" } } } } } }, "404": { "description": "No match found" } }, "security": [ { "Bearer": [] } ] } }, "/v1/radius/{country}/{latitude}/{longitude}": { "get": { "tags": [ "radius" ], "summary": "Radius search endpoint (without radius parameter, defaults to 5m)", "operationId": "latlon", "parameters": [ { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } }, { "name": "country", "in": "path", "description": "Country code: nl,be or lu", "required": true, "schema": { "type": "string" } }, { "name": "latitude", "in": "path", "description": "Latitude in WGS84 (e.g., 52.3676)", "required": true, "schema": { "type": "string" } }, { "name": "longitude", "in": "path", "description": "Longitude in WGS84 (e.g., 4.9041)", "required": true, "schema": { "type": "string" } }, { "name": "page", "in": "query", "description": "Page number (defaults to 1)", "required": false, "schema": { "type": [ "integer", "null" ], "minimum": 0 } }, { "name": "per_page", "in": "query", "description": "Results per page (defaults to 20)", "required": false, "schema": { "type": [ "integer", "null" ], "minimum": 0 } } ], "responses": { "200": { "description": "Addresses found within radius", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LatLonResponse" }, "examples": { "Multiple results": { "summary": "When multiple addresses are found, returns paginated response", "value": { "pagination": { "page": 1, "per_page": 20, "total_count": 15, "total_pages": 1 }, "results": [ { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 121387.0, 487383.0 ], "wgs84": [ 52.3731, 4.8932 ] }, "municipality": "Amsterdam", "postcode": "1012 JS", "province": "Noord-Holland", "street": "Dam" } ] } }, "Single result": { "summary": "When exactly one address is found, returns the document directly", "value": { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 121387.0, 487383.0 ], "wgs84": [ 52.3731, 4.8932 ] }, "municipality": "Amsterdam", "postcode": "1012 JS", "province": "Noord-Holland", "street": "Dam" } } } } } }, "400": { "description": "Invalid country code" }, "404": { "description": "No addresses found within radius" } }, "security": [ { "Bearer": [] } ] } }, "/v1/radius/{country}/{latitude}/{longitude}/{radius}": { "get": { "tags": [ "radius" ], "summary": "Radius search endpoint (with explicit radius parameter)", "operationId": "latlon_with_radius", "parameters": [ { "name": "Authorization", "in": "header", "description": "Bearer YOUR_KEY", "required": true, "schema": { "type": "string" } }, { "name": "country", "in": "path", "description": "Country code: nl,be or lu", "required": true, "schema": { "type": "string" } }, { "name": "latitude", "in": "path", "description": "Latitude in WGS84 (e.g., 52.3676)", "required": true, "schema": { "type": "string" } }, { "name": "longitude", "in": "path", "description": "Longitude in WGS84 (e.g., 4.9041)", "required": true, "schema": { "type": "string" } }, { "name": "radius", "in": "path", "description": "Search radius in meters (max 500m, default 5m)", "required": true, "schema": { "type": "number", "format": "double" } }, { "name": "page", "in": "query", "description": "Page number (defaults to 1)", "required": false, "schema": { "type": [ "integer", "null" ], "minimum": 0 } }, { "name": "per_page", "in": "query", "description": "Results per page (defaults to 20)", "required": false, "schema": { "type": [ "integer", "null" ], "minimum": 0 } } ], "responses": { "200": { "description": "Addresses found within radius", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LatLonResponse" }, "examples": { "Multiple results": { "summary": "When multiple addresses are found, returns paginated response", "value": { "pagination": { "page": 1, "per_page": 20, "total_count": 15, "total_pages": 1 }, "results": [ { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 121387.0, 487383.0 ], "wgs84": [ 52.3731, 4.8932 ] }, "municipality": "Amsterdam", "postcode": "1012 JS", "province": "Noord-Holland", "street": "Dam" } ] } }, "Single result": { "summary": "When exactly one address is found, returns the document directly", "value": { "city": "Amsterdam", "housenumber": "1", "location": { "rd": [ 121387.0, 487383.0 ], "wgs84": [ 52.3731, 4.8932 ] }, "municipality": "Amsterdam", "postcode": "1012 JS", "province": "Noord-Holland", "street": "Dam" } } } } } }, "400": { "description": "Invalid country code" }, "404": { "description": "No addresses found within radius" } }, "security": [ { "Bearer": [] } ] } } }, "components": { "schemas": { "AddressBE": { "type": "object", "required": [ "housenumber", "postcode", "street", "municipality", "province" ], "properties": { "box_number": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "location": { "oneOf": [ { "type": "null" }, { "$ref": "#/components/schemas/Location" } ] }, "municipality": { "type": "object", "properties": { "de": { "type": [ "string", "null" ] }, "fr": { "type": [ "string", "null" ] }, "nl": { "type": [ "string", "null" ] } } }, "postcode": { "type": "string" }, "province": { "type": "object", "properties": { "de": { "type": [ "string", "null" ] }, "fr": { "type": [ "string", "null" ] }, "nl": { "type": [ "string", "null" ] } } }, "street": { "type": "object", "properties": { "de": { "type": [ "string", "null" ] }, "fr": { "type": [ "string", "null" ] }, "nl": { "type": [ "string", "null" ] } } } } }, "AddressLU": { "type": "object", "required": [ "city", "housenumber", "municipality", "postcode", "canton", "street", "district" ], "properties": { "canton": { "type": "string" }, "city": { "type": "string" }, "district": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "location": { "oneOf": [ { "type": "null" }, { "$ref": "#/components/schemas/Location" } ] }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "street": { "type": "string" } } }, "AddressNL": { "type": "object", "required": [ "city", "housenumber", "municipality", "postcode", "province", "street", "location" ], "properties": { "city": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "housenumberaddition": { "type": [ "string", "null" ] }, "location": { "$ref": "#/components/schemas/Location" }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "province": { "type": "string" }, "street": { "type": "string" } } }, "AutocompleteParams": { "type": "object", "description": "Query parameters for autocomplete (used by both NL and BE)", "properties": { "context": { "type": [ "string", "null" ], "description": "Context ID from a previous search result (optional)" }, "page": { "type": [ "integer", "null" ], "format": "int32", "description": "Page number (defaults to 1)", "minimum": 0 }, "per_page": { "type": "integer", "format": "int32", "description": "Results per page (defaults to 50)", "minimum": 0 }, "search": { "type": [ "string", "null" ], "description": "Search term (optional when context is provided)" } } }, "AutocompleteV1": { "oneOf": [ { "type": "object", "required": [ "results", "pagination" ], "properties": { "pagination": { "$ref": "#/components/schemas/PaginationMetadata" }, "results": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } } } }, { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, { "type": "object", "required": [ "city", "housenumber", "municipality", "postcode", "province", "street", "location" ], "properties": { "city": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "housenumberaddition": { "type": [ "string", "null" ] }, "location": { "$ref": "#/components/schemas/Location" }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "province": { "type": "string" }, "street": { "type": "string" } } } ] }, "LatLonResponse": { "type": "object", "required": [ "results", "pagination" ], "properties": { "pagination": { "$ref": "#/components/schemas/PaginationMetadata", "description": "Pagination metadata" }, "results": { "type": "array", "items": { "oneOf": [ { "type": "object", "required": [ "housenumber", "postcode", "city", "street", "municipality", "province" ], "properties": { "city": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "housenumberaddition": { "type": [ "string", "null" ] }, "location": { "oneOf": [ { "type": "null" }, { "$ref": "#/components/schemas/Location" } ] }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "province": { "type": "string" }, "street": { "type": "string" } } }, { "type": "object", "required": [ "housenumber", "postcode", "street", "municipality", "province" ], "properties": { "box_number": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "location": { "oneOf": [ { "type": "null" }, { "$ref": "#/components/schemas/Location" } ] }, "municipality": { "type": "object", "properties": { "de": { "type": [ "string", "null" ] }, "fr": { "type": [ "string", "null" ] }, "nl": { "type": [ "string", "null" ] } } }, "postcode": { "type": "string" }, "province": { "type": "object", "properties": { "de": { "type": [ "string", "null" ] }, "fr": { "type": [ "string", "null" ] }, "nl": { "type": [ "string", "null" ] } } }, "street": { "type": "object", "properties": { "de": { "type": [ "string", "null" ] }, "fr": { "type": [ "string", "null" ] }, "nl": { "type": [ "string", "null" ] } } } } }, { "type": "object", "required": [ "housenumber", "postcode", "street", "city", "municipality", "district", "canton" ], "properties": { "canton": { "type": "string" }, "city": { "type": "string" }, "district": { "type": "string" }, "houseletter": { "type": [ "string", "null" ] }, "housenumber": { "type": "string" }, "location": { "oneOf": [ { "type": "null" }, { "$ref": "#/components/schemas/Location" } ] }, "municipality": { "type": "string" }, "postcode": { "type": "string" }, "street": { "type": "string" } } } ] }, "description": "Array of address documents" } } }, "Location": { "type": "object", "required": [ "wgs84" ], "properties": { "bd72": { "type": [ "array", "null" ], "items": { "type": "number", "format": "double" } }, "rd": { "type": [ "array", "null" ], "items": { "type": "number", "format": "double" } }, "wgs84": { "type": "array", "items": { "type": "number", "format": "double" } } } }, "PaginationMetadata": { "type": "object", "required": [ "page", "per_page", "total_count", "total_pages" ], "properties": { "page": { "type": "integer", "description": "Current page number", "minimum": 0 }, "per_page": { "type": "integer", "description": "Results per page", "minimum": 0 }, "total_count": { "type": "integer", "format": "int64", "description": "Total number of results found" }, "total_pages": { "type": "integer", "description": "Total number of pages", "minimum": 0 } } }, "Precision": { "type": "string", "enum": [ "City", "Street", "House", "Unknown", "Province", "GroupedStreets", "GroupedCities" ] }, "SearchResult": { "type": "object", "required": [ "value", "label", "description", "precision", "context" ], "properties": { "context": { "type": "string" }, "description": { "type": "string" }, "label": { "type": "string" }, "precision": { "$ref": "#/components/schemas/Precision" }, "value": { "type": "string" } } } }, "securitySchemes": { "Bearer": { "type": "http", "scheme": "bearer", "description": "Enter your bearer token as: Bearer " } } }, "security": [ { "Bearer": [] } ], "tags": [ { "name": "autocomplete", "description": "Autocomplete API endpoints" }, { "name": "directmatch", "description": "DirectMatch API endpoint" }, { "name": "radius", "description": "Radius search API endpoints" } ] }