{"openapi":"3.0.0","info":{"title":"NL Locations","description":"NL Locations API represents the Searching of the dutch locations\n","version":"1.0.0"},"servers":[{"url":"https://api.company.info","description":"Production Server"}],"security":[{"ApiKeyAuth":[]}],"tags":[{"name":"NL Locations","description":"Calls related to the NL Location API"}],"paths":{"/nl/locations":{"get":{"summary":"Search Locations","tags":["Search"],"description":"Get a list of locations based on the provided search terms\n","parameters":[{"name":"query","in":"query","description":"Searches an address based on given parameters. Will use all of the values given and return results based on the best match.\n<br>Minimum amount of characters is 2.\"\n","schema":{"type":"string","example":"street city 1111AB"}},{"name":"filter","in":"query","style":"deepObject","description":"Filter is used for an exact match. So if the given input doesn't 100% match, no results are given. \n<br><b>The example below contains all the possible filters</b>\"\n","schema":{"$ref":"#/components/schemas/LocationSearchFilter"}},{"name":"match","in":"query","style":"deepObject","description":"Match will search with the given parameters and returns a list based on the highest score. Doesn't have to be an exact match and can contain non complete values.\n<br><b>The example below contains all the possible matches</b>\"\n","schema":{"$ref":"#/components/schemas/LocationSearchMatch"}},{"name":"sort","in":"query","description":"Sort field can be used to sort the result of the search.\n<br> The order of the sort can be either `descending` or `ascending`.\n<br> By default, we sort the results based on `id` and `descending`.\n<br> It's been implemented based on the JSONAPI conventions, so to have multiple\nsorting orders you must separate it by commas. Also, by default the sort\norder is ascending, to change it to descending you must use a `-` before the field name\n<br> supported fields: `id,city,street`\n","schema":{"type":"string","example":"-city,street"}},{"name":"page","in":"query","style":"deepObject","description":"`size` defines the number of records to return in each page.\ndefault value: 10, maximum value: 20.\n<br>`number` specifies the page number.\"\n","schema":{"$ref":"#/components/schemas/Page"}}],"responses":{"200":{"description":"OK","headers":{"X-Correlation-Id":{"description":"Unique request identifier","schema":{"type":"string","format":"uuid"}}},"content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/LocationSearchResults"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/InternalServerError"}}}}},"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-KEY"}},"schemas":{"LocationSearchFilter":{"title":"Filter","type":"object","properties":{"city":{"type":"string","example":"amsterdam"},"postalCodeRange":{"type":"string","example":"1231RV,1431RV"},"postalCode":{"type":"string","example":"1111AA"},"street":{"type":"string","example":"streetname"},"municipality":{"type":"string","example":"Amsterdam"},"province":{"type":"string","example":"Noord-Holland"},"houseNumber":{"type":"integer","example":12},"houseNumberAddition":{"type":"string","example":2},"houseLetter":{"type":"string","example":"A"}}},"LocationSearchMatch":{"title":"Match","type":"object","properties":{"city":{"type":"string","example":"amster"},"street":{"type":"string","example":"straat"},"postalCode":{"type":"string","example":"1111AB"}}},"LocationSearchResults":{"title":"Location Search Results","description":"results of the search for Locations","type":"object","properties":{"meta":{"type":"object","properties":{"totalResults":{"type":"integer"},"totalPages":{"type":"integer"}}},"data":{"type":"array","items":{"$ref":"#/components/schemas/LocationSearchItem"}},"links":{"type":"object","properties":{"first":{"$ref":"#/components/schemas/JSONAPILink"},"last":{"$ref":"#/components/schemas/JSONAPILink"},"next":{"$ref":"#/components/schemas/JSONAPILink"},"prev":{"$ref":"#/components/schemas/JSONAPILink"},"self":{"$ref":"#/components/schemas/JSONAPILink"}}}}},"LocationSearchItem":{"title":"Location Search Item","description":"result of the search for a location","type":"object","properties":{"id":{"type":"string","example":"01002486-000013857983"},"type":{"type":"string","example":"locations"},"attributes":{"$ref":"#/components/schemas/Address"},"links":{"type":"object","properties":{"self":{"$ref":"#/components/schemas/JSONAPILink"}}}}},"Address":{"type":"object","properties":{"street":{"type":"string","example":"majanstraat"},"province":{"type":"string","example":"Noord-Holland"},"houseNumber":{"type":"integer","example":25},"postalCode":{"type":"string","example":"1081SD"},"buildingID":{"type":"integer","example":1705100000018686},"buildingStatus":{"type":"string","example":"PAND_IN_GEBRUIK"},"buildingYear":{"type":"string","example":"1980"},"city":{"type":"string","example":"Amsterdam"},"houseLetter":{"type":"string","example":"B"},"houseNumberAddition":{"type":"string","example":"-"},"lat":{"type":"string","example":"51.89079"},"lon":{"type":"string","example":"5.997303"},"municipality":{"type":"string","example":"Lingewaard"},"numberIndication":{"type":"integer","example":1705200000120734},"objectID":{"type":"integer","example":1705010000033915},"secondaryAddress":{"type":"boolean","example":false},"status":{"type":"string","example":"VERBLIJFSOBJECT_IN_GEBRUIK"},"surfaceArea":{"type":"integer","example":34},"usagePurpose":{"type":"string","example":"overige gebruiksfunctie"},"x":{"type":"string","example":"196998.513"},"y":{"type":"string","example":"196998.513"}}},"Result":{"type":"object","properties":{"value":{"type":"string","example":"amsterdam"},"count":{"type":"integer","example":6}}},"JSONAPIResourceObject":{"title":"JSON:API Resource Object","description":"JSON:API Resource Object","type":"object","required":["type"],"properties":{"type":{"title":"JSON:API type Member","description":"JSON:API type Member","type":"string"},"id":{"title":"JSON:API id Member","description":"JSON:API id Member","type":"string"},"links":{"$ref":"#/components/schemas/JSONAPILinksObject"}}},"JSONAPILinksObject":{"title":"JSON:API Links Object","description":"May contain `self`, `related`, or pagination links (first, last, prev, next).","properties":{"self":{"$ref":"#/components/schemas/JSONAPILink"},"related":{"$ref":"#/components/schemas/JSONAPILink"},"first":{"$ref":"#/components/schemas/JSONAPILink"},"last":{"$ref":"#/components/schemas/JSONAPILink"},"prev":{"$ref":"#/components/schemas/JSONAPILink"},"next":{"$ref":"#/components/schemas/JSONAPILink"}}},"JSONAPILink":{"title":"JSON:API Link","description":"A JSON:API link can be either a URL string or a structured link object.","oneOf":[{"type":"string","format":"url","example":"https://example.com/"},{"$ref":"#/components/schemas/JSONAPILinkObject"}]},"JSONAPILinkObject":{"title":"JSON:API Link Object","description":"a structured representation of a URL","type":"object","required":["href"],"properties":{"href":{"type":"string","example":"/organizations/<cin>"},"meta":{"type":"object","example":{"count":"10"}}}},"JSONAPIRelationshipLink":{"title":"JSON:API Relationship Link Object","description":"a structured representation of a Relationship","type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"}}},"links":{"type":"object","properties":{"self":{"$ref":"#/components/schemas/JSONAPILink"}}}}},"JSONAPIErrorResponse":{"title":"JSON:API Error Response","type":"object","required":["errors"],"properties":{"errors":{"title":"An array of Error objects","type":"array","minItems":1,"items":{"type":"object","required":["status","code","title","detail"],"properties":{"status":{"description":"the HTTP status code applicable to this problem","type":"string","minLength":3,"maxLength":3},"code":{"description":"an application-specific error code. It can be the same as 'status'","type":"string"},"title":{"description":"a short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization","type":"string"},"detail":{"description":"a human-readable explanation specific to this occurrence of the problem. Like title, this field's value can be localized","type":"string"}}}}}},"Page":{"type":"object","properties":{"size":{"type":"integer","default":10,"description":"The number of records to return in each page."},"number":{"type":"integer","default":1,"description":"This parameter specifies the page number."}}}},"responses":{"BadRequest":{"description":"Bad Request","content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/JSONAPIErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized","content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/JSONAPIErrorResponse"}}}},"Forbidden":{"description":"Forbidden","content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/JSONAPIErrorResponse"}}}},"NotFound":{"description":"Not Found","content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/JSONAPIErrorResponse"}}}},"InternalServerError":{"description":"Internal Server Error","content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/JSONAPIErrorResponse"}}}}}}}