{ "openapi": "3.0.0", "servers": [ { "url": "https://geocoder.api.gov.bc.ca/", "description": "Production (gated)" }, { "url": "https://geocodertst.api.gov.bc.ca/", "description": "Test (gated)" }, { "url": "https://geocoderdlv.api.gov.bc.ca/", "description": "Delivery (gated)" } ], "info": { "title": "Geocoder REST API", "description": "This API represents address cleaning, correction, completion, geocoding, reverse geocoding, and proximity resources for intersection addresses, physical addresses and their occupants in British Columbia. Please read our [data collection notice](https://github.com/bcgov/api-specs/blob/master/COLLECTION_NOTICE.md#collection-notice). \n\nPlease note that you may experience issues when submitting requests to the delivery or test environment if using this [OpenAPI specification](https://github.com/bcgov/api-specs) in other API console viewers. \n\n[API keys](https://api.gov.bc.ca/devportal/api-directory/273) are unique and can be acquired with a GitHub or IDIR account. \n\n **Notification:** If you have applications or web pages that link to the BC Address Geocoder you must use the following URL. \n\n *https://geocoder.api.gov.bc.ca* \n\n Please note that the following URLs were deprecated in September 2018 [More Details](https://www2.gov.bc.ca/gov/content?id=103ADC5A956842828554238DEF28D6E5). \n\n - http://apps.gov.bc.ca/pub/geocoder \n - https://apps.gov.bc.ca/pub/geocoder\n \n \n ", "version": "2.0.0", "license": { "name": "Open Government License - British Columbia", "url": "https://www2.gov.bc.ca/gov/content?id=A519A56BC2BF44E4A008B33FCF527F61" }, "termsOfService": "https://www2.gov.bc.ca/gov/content?id=D1EE0A405E584363B205CD4353E02C88", "contact": { "name": "Contact DataBC", "url": "https://dpdd.atlassian.net/servicedesk/customer/portal/1/group/7/" } }, "externalDocs": { "description": "BC Address Geocoder", "url": "https://www2.gov.bc.ca/gov/content?id=118DD57CD9674D57BDBD511C2E78DC0D" }, "tags": [ { "name": "sites" }, { "name": "intersections" }, { "name": "occupants" }, { "name": "parcels" } ], "security": [ { "apikey": [] } ], "paths": { "/addresses.{outputFormat}": { "get": { "summary": "Geocode an address", "description": "Represents the set of geocoded and standardized sites and intersections whose address best matches a given query address.", "tags": [ "sites", "intersections" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "addressString", "in": "query", "description": "Civic or intersection address as a single string. See addressString", "required": false, "schema": { "type": "string" }, "example": "525 Superior Street, Victoria, BC" }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "interpolation", "in": "query", "description": "accessPoint interpolation method. See interpolation", "required": false, "schema": { "type": "string", "enum": [ "adaptive", "linear", "none" ], "default": "adaptive" } }, { "name": "echo", "in": "query", "description": "If true, include unmatched address details such as site name in results.", "required": false, "schema": { "type": "boolean", "default": true } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "autoComplete", "in": "query", "description": "If true, addressString is expected to contain a partial address that requires completion. Not supported for shp, csv, gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "minScore", "in": "query", "description": "The minimum score required for a match to be returned. See minScore", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "matchPrecision", "in": "query", "description": "Example: street,locality. A comma separated list of individual match precision levels to include in results. See matchPrecision", "required": false, "schema": { "type": "string" } }, { "name": "matchPrecisionNot", "in": "query", "description": "Example: street,locality. A comma separated list of individual match precision levels to exclude from results. See matchPrecisionNot", "required": false, "schema": { "type": "string" } }, { "name": "siteName", "in": "query", "description": "A string containing the name of the building, facility, or institution (e.g., Duck Building, Casa Del Mar, Crystal Garden, Bluebird House).See siteName", "required": false, "schema": { "type": "string" } }, { "name": "unitDesignator", "in": "query", "description": "The type of unit within a house or building. See unitDesignator", "required": false, "schema": { "type": "string", "enum": [ "APT", "BLDG", "BSMT", "FLR", "LOBBY", "LWR", "PAD", "PH", "REAR", "RM", "SIDE", "SITE", "SUITE", "TH", "UNIT", "UPPR" ] } }, { "name": "unitNumber", "in": "query", "description": "The number of the unit, suite, or apartment within a house or building.", "required": false, "schema": { "type": "string" } }, { "name": "unitNumberSuffix", "in": "query", "description": "A letter that follows the unit number as in Unit 1A or Suite 302B.", "required": false, "schema": { "type": "string" } }, { "name": "civicNumber", "in": "query", "description": "The official number assigned to a site by an address authority. See civicNumber", "required": false, "schema": { "type": "string" } }, { "name": "civicNumberSuffix", "in": "query", "description": "A letter or fraction that follows the civic number (e.g., the A in 1039A Bledsoe St). See civicNumberSuffix", "required": false, "schema": { "type": "string" } }, { "name": "streetName", "in": "query", "description": "The official name of the street as assigned by an address authority (e.g., the Douglas in 1175 Douglas Street). See streetName", "required": false, "schema": { "type": "string" } }, { "name": "streetType", "in": "query", "description": "The type of street as assigned by a municipality (e.g., the ST in 1175 DOUGLAS St). See streetType", "required": false, "schema": { "type": "string" } }, { "name": "streetDirection", "in": "query", "description": "The abbreviated compass direction as defined by Canada Post and B.C. civic addressing authorities. See streetDirection", "required": false, "schema": { "type": "string", "enum": [ "N", "S", "E", "W", "O", "NE", "NO", "NW", "SE", "SO", "SW" ] } }, { "name": "streetQualifier", "in": "query", "description": "Example: the Bridge in Johnson St Bridge. The qualifier of a street name. See streetQualifier", "required": false, "schema": { "type": "string" } }, { "name": "localityName", "in": "query", "description": "The name of the locality assigned to a given site by an address authority. See localityName", "required": false, "schema": { "type": "string" } }, { "name": "provinceCode", "in": "query", "description": "The ISO 3166-2 Sub-Country Code. The code for British Columbia is BC.", "required": false, "schema": { "type": "string", "default": "BC" } }, { "name": "localities", "in": "query", "description": "A comma separated list of locality names that matched addresses must belong to. For example, setting localities to Nanaimo only returns addresses in Nanaimo", "required": false, "schema": { "type": "string" } }, { "name": "notLocalities", "in": "query", "description": "A comma-separated list of localities to exclude from the search.", "required": false, "schema": { "type": "string" } }, { "name": "bbox", "in": "query", "description": "Example: -126.07929,49.7628,-126.0163,49.7907. A bounding box (xmin,ymin,xmax,ymax) that limits the search area. See bbox", "required": false, "schema": { "type": "string" } }, { "name": "centre", "in": "query", "description": "Example: -124.0165926,49.2296251 . The coordinates of a centre point (x,y) used to define a bounding circle that will limit the search area. This parameter must be specified together with 'maxDistance'. See centre", "required": false, "schema": { "type": "string" } }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "number" } }, { "name": "extrapolate", "in": "query", "description": "If true, uses supplied parcelPoint to derive an appropriate accessPoint. See extrapolate", "required": false, "schema": { "type": "boolean" } }, { "name": "parcelPoint", "in": "query", "description": "The coordinates of a point (x,y) known to be inside the parcel containing a given address. See parcelPoint", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "A list of matching sites or intersections and their physical locations. See addresses response" } } } }, "/occupants/addresses.{outputFormat}": { "get": { "summary": "Geocode an address and identify site occupants", "description": "Represents the set of occupants whose addresses best match a given query address. Every occupant has an associated site which has a standardized address and a coordinate location on the Earth.", "tags": [ "occupants" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "addressString", "in": "query", "description": "Occupant name OR Occupant name ** address", "required": false, "schema": { "type": "string" }, "example": "Sir James Douglas Elementary" }, { "name": "tags", "in": "query", "description": "Example: schools;courts;employment
A list of tags separated by semicolons.", "required": false, "schema": { "type": "string" } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "interpolation", "in": "query", "description": "accessPoint interpolation method. See interpolation", "required": false, "schema": { "type": "string", "enum": [ "adaptive", "linear", "none" ], "default": "adaptive" } }, { "name": "echo", "in": "query", "description": "If true, include unmatched address details such as site name in results.", "schema": { "type": "boolean", "default": false } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "autoComplete", "in": "query", "description": "If true, addressString is expected to contain a partial address that requires completion. Not supported for shp, csv, gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "minScore", "in": "query", "description": "The minimum score required for a match to be returned. See minScore", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "matchPrecision", "in": "query", "description": "Example: street,locality. A comma separated list of individual match precision levels to include in results. See matchPrecision", "required": false, "schema": { "type": "string", "default": "OCCUPANT" } }, { "name": "matchPrecisionNot", "in": "query", "description": "Example: street,locality. A comma separated list of individual match precision levels to exclude from results. See matchPrecisionNot", "required": false, "schema": { "type": "string" } }, { "name": "siteName", "in": "query", "description": "A string containing the name of the building, facility, or institution (e.g., Duck Building, Casa Del Mar, Crystal Garden, Bluebird House).See siteName", "required": false, "schema": { "type": "string" } }, { "name": "unitDesignator", "in": "query", "description": "The type of unit within a house or building. See unitDesignator", "required": false, "schema": { "type": "string", "enum": [ "APT", "BLDG", "BSMT", "FLR", "LOBBY", "LWR", "PAD", "PH", "REAR", "RM", "SIDE", "SITE", "SUITE", "TH", "UNIT", "UPPR" ] } }, { "name": "unitNumber", "in": "query", "description": "The number of the unit, suite, or apartment within a house or building.", "required": false, "schema": { "type": "string" } }, { "name": "unitNumberSuffix", "in": "query", "description": "A letter that follows the unit number as in Unit 1A or Suite 302B.", "required": false, "schema": { "type": "string" } }, { "name": "civicNumber", "in": "query", "description": "The official number assigned to a site by an address authority. See civicNumber", "required": false, "schema": { "type": "string" } }, { "name": "civicNumberSuffix", "in": "query", "description": "A letter or fraction that follows the civic number (e.g., the A in 1039A Bledsoe St). See civicNumberSuffix", "required": false, "schema": { "type": "string" } }, { "name": "streetName", "in": "query", "description": "The official name of the street as assigned by an address authority (e.g., the Douglas in 1175 Douglas Street). See streetName", "required": false, "schema": { "type": "string" } }, { "name": "streetType", "in": "query", "description": "The type of street as assigned by a municipality (e.g., the ST in 1175 DOUGLAS St). See streetType", "required": false, "schema": { "type": "string" } }, { "name": "streetDirection", "in": "query", "description": "The abbreviated compass direction as defined by Canada Post and B.C. civic addressing authorities. See streetDirection", "required": false, "schema": { "type": "string", "enum": [ "N", "S", "E", "W", "O", "NE", "NO", "NW", "SE", "SO", "SW" ] } }, { "name": "streetQualifier", "in": "query", "description": "The qualifier of a street name (e.g., the Bridge in Johnson St Bridge)", "required": false, "schema": { "type": "string" } }, { "name": "localityName", "in": "query", "description": "The name of the locality assigned to a given site by an address authority. See streetDirection", "required": false, "schema": { "type": "string" } }, { "name": "provinceCode", "in": "query", "description": "The ISO 3166-2 Sub-Country Code. The code for British Columbia is BC.", "required": false, "schema": { "type": "string", "default": "BC" } }, { "name": "localities", "in": "query", "description": "A comma separated list of locality names that matched addresses must belong to. For example, setting localities to Nanaimo only returns addresses in Nanaimo", "required": false, "schema": { "type": "string" } }, { "name": "notLocalities", "in": "query", "description": "A comma-separated list of localities to exclude from the search.", "required": false, "schema": { "type": "string" } }, { "name": "bbox", "in": "query", "description": "Example: -126.07929,49.7628,-126.0163,49.7907. A bounding box (xmin,ymin,xmax,ymax) that limits the search area. See bbox", "required": false, "schema": { "type": "string" } }, { "name": "centre", "in": "query", "description": "Example: -124.0165926,49.2296251 . The coordinates of a centre point (x,y) used to define a bounding circle that will limit the search area. This parameter must be specified together with 'maxDistance'. See centre", "required": false, "schema": { "type": "string" } }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "number" } }, { "name": "extrapolate", "in": "query", "description": "If true, uses supplied parcelPoint to derive an appropriate accessPoint. See extrapolate", "required": false, "schema": { "type": "boolean" } }, { "name": "parcelPoint", "in": "query", "description": "The coordinates of a point (x,y) known to be inside the parcel containing a given address. See parcelPoint", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "A list of matching occupants, sites, and their physical locations. Response document will contain one About Query Representation and one Site Address Representation plus Occupant Representation for each matching occupant." } } } }, "/sites/nearest.{outputFormat}": { "get": { "summary": "Find the site nearest to a geographic point", "description": "Represents the site nearest a given point", "tags": [ "sites" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "point", "in": "query", "description": "Centre point of search. See point", "required": true, "schema": { "type": "string" }, "example": "-122.377,50.121" }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "integer" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "excludeUnits", "in": "query", "description": "If true, excludes sites that are units of a parent site", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "onlyCivic", "in": "query", "description": "If true, excludes sites without a civic address", "required": false, "schema": { "type": "boolean", "default": false } } ], "responses": { "200": { "description": "The nearest site in Site Address Representation" } } } }, "/occupants/nearest.{outputFormat}": { "get": { "summary": "Find occupants of the site nearest to a geographic point", "description": "Represents the closest occupant to a given point", "tags": [ "occupants" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "point", "in": "query", "description": "The point (x,y) from which the nearest site will be identified. The coordinates must be specified in the same SRS as given by the 'outputSRS' parameter.", "required": true, "schema": { "type": "string" }, "example": "-122.377,50.121" }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "integer" } }, { "name": "tags", "in": "query", "description": "Example: schools;courts;employment
A list of tags separated by semicolons.", "required": false, "schema": { "type": "string" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } } ], "responses": { "200": { "description": "The nearest occupant in Site Address Representation plus Occupant Representation" } } } }, "/intersections/nearest.{outputFormat}": { "get": { "summary": "Find nearest intersection to a geographic point", "description": "Represents the closest intersection to a given point", "tags": [ "intersections" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "point", "in": "query", "description": "Example: -122.377,50.121 The point (x,y) from which the nearest site will be identified. The coordinates must be specified in the same SRS as given by the 'outputSRS' parameter.", "required": true, "schema": { "type": "string" }, "example": "-122.377,50.121" }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "integer" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "minDegree", "in": "query", "description": "The minimum degree an intersection can have to be included in results. A dead-end has a degree of 1.", "required": false, "schema": { "type": "integer", "default": 2 } }, { "name": "maxDegree", "in": "query", "description": "The maximum degree an interesection can have to be included in results. A four-way stop has a degree of 4.", "required": false, "schema": { "type": "integer", "default": 100 } } ], "responses": { "200": { "description": "The nearest intersection in Intersection Address Representation" } } } }, "/sites/near.{outputFormat}": { "get": { "summary": "Find sites near to a geographic point", "description": "Represents sites near a given point in the order of closest to farthest", "tags": [ "sites" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "point", "in": "query", "description": "The point (x,y) from which the nearby sites will be identified. The coordinates must be specified in the same SRS as given by the 'outputSRS' parameter.", "required": true, "schema": { "type": "string" }, "example": "-122.377,50.121" }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "integer" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "excludeUnits", "in": "query", "description": "If true, excludes sites that are units of a parent site", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "onlyCivic", "in": "query", "description": "If true, excludes sites without a civic address", "required": false, "schema": { "type": "boolean", "default": false } } ], "responses": { "200": { "description": "A list of selected sites that are near a given point in order of closest to farther. Each site in the response document is structured as a Site Address Representation" } } } }, "/occupants/near.{outputFormat}": { "get": { "summary": "Find occupants of sites near to a geographic point", "description": "Represents occupants near a given point in order of closest to farthest", "tags": [ "occupants" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "point", "in": "query", "description": "The point (x,y) from which the nearest site will be identified. The coordinates must be specified in the same SRS as given by the 'outputSRS' parameter.", "required": true, "schema": { "type": "string" }, "example": "-122.377,50.121" }, { "name": "tags", "in": "query", "description": "Example: schools;courts;employment
A list of tags separated by semicolons.", "required": false, "schema": { "type": "string" } }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "integer" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } } ], "responses": { "200": { "description": "A list of selected occupants that are near a given point in order of closest to farther. Each occupant is returned as a Site Address Representation plus a Occupant Representation" } } } }, "/intersections/near.{outputFormat}": { "get": { "summary": "Find intersections near to a geographic point", "description": "Represents intersections near a given point", "tags": [ "intersections" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "point", "in": "query", "description": "The point (x,y) from which the nearest site will be identified. The coordinates must be specified in the same SRS as given by the 'outputSRS' parameter.", "required": true, "schema": { "type": "string" }, "example": "-122.377,50.121" }, { "name": "maxDistance", "in": "query", "description": "The maximum distance (in metres) to search from the given point. If not specified, the search distance is unlimited.", "required": false, "schema": { "type": "integer" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": true, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "minDegree", "in": "query", "description": "The minimum degree an intersection can have to be included in results. A dead-end has a degree of 1.", "required": false, "schema": { "type": "integer", "default": 2 } }, { "name": "maxDegree", "in": "query", "description": "The maximum degree an interesection can have to be included in results. A four-way stop has a degree of 4.", "required": false, "schema": { "type": "integer", "default": 100 } } ], "responses": { "200": { "description": "A list of selected intersections near a given point. Each intersection is in Intersection Address Representation" } } } }, "/sites/within.{outputFormat}": { "get": { "summary": "Find sites in a geographic area", "description": "Represents sites within a given area", "tags": [ "sites" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "bbox", "in": "query", "description": "A bounding box (xmin,ymin,xmax,ymax) used to limit the search area. See bbox", "required": true, "schema": { "type": "string" }, "example": "-119.51,49.48,-119.53,49.50" }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 1 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "excludeUnits", "in": "query", "description": "If true, excludes sites that are units of a parent site", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "onlyCivic", "in": "query", "description": "If true, excludes sites without a civic address", "required": false, "schema": { "type": "boolean", "default": false } } ], "responses": { "200": { "description": "A list of selected sites within a given area. Each site in the response document is structured as a Site Address Representation" } } } }, "/occupants/within.{outputFormat}": { "get": { "summary": "Find occupants of sites in a geographic area", "description": "Represents all occupants within a given area", "tags": [ "occupants" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "bbox", "in": "query", "description": "A bounding box (xmin,ymin,xmax,ymax) used to limit the search area. See bbox", "required": true, "schema": { "type": "string" }, "example": "-123.14,49.28,-123.13,49.29" }, { "name": "tags", "in": "query", "description": "Example: schools;courts;employment
A list of tags separated by semicolons.", "required": false, "schema": { "type": "string" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results to return.", "required": false, "schema": { "type": "integer", "default": 200 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } } ], "responses": { "200": { "description": "A list of selected occupants within the given area. Each occupant is returned in a Site Address Representation plus Occupant Representation" } } } }, "/intersections/within.{outputFormat}": { "get": { "summary": "Find intersections in a geographic area", "description": "Represents all intersections within a given area", "tags": [ "intersections" ], "parameters": [ { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "bbox", "in": "query", "description": "A bounding box (xmin,ymin,xmax,ymax) used to limit the search area. See bbox", "required": true, "schema": { "type": "string" }, "example": "-119.51,49.48,-119.53,49.50" }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "maxResults", "in": "query", "description": "The maximum number of search results", "required": false, "schema": { "type": "integer", "default": 200 } }, { "name": "minDegree", "in": "query", "description": "The minimum degree an intersection can have to be included in results. A dead-end has a degree of 1.", "required": false, "schema": { "type": "integer", "default": 2 } }, { "name": "maxDegree", "in": "query", "description": "The maximum degree an interesection can have to be included in results. A four-way stop has a degree of 4.", "required": false, "schema": { "type": "integer", "default": 100 } } ], "responses": { "200": { "description": "A list of selected intersections within the given area. Each intersection is in Each intersection is in Intersection Address Representation" } } } }, "/sites/{siteID}/subsites.{outputFormat}": { "get": { "summary": "Represents all subsites of a given site", "description": "Represents all subsites of a given site", "tags": [ "sites" ], "parameters": [ { "name": "siteID", "in": "path", "description": "A unique, but not immutable, site identifier.", "required": true, "schema": { "type": "string" } }, { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" } }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } } ], "responses": { "200": { "description": "Returns all subsites of a given site in Site Address Representation" } } } }, "/sites/{siteID}.{outputFormat}": { "get": { "summary": "Get a site by its unique ID", "description": "Represents an individual site", "tags": [ "sites" ], "parameters": [ { "name": "siteID", "in": "path", "description": "A unique, but not immutable, site identifier.", "required": true, "schema": { "type": "string" } }, { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } } ], "responses": { "200": { "description": "The site with the requested siteID in Site Address Representation" } } } }, "/occupants/{occupantID}.{outputFormat}": { "get": { "summary": "Get an occupant (of a site) by its unique ID", "description": "Represents an individual occupant", "tags": [ "occupants" ], "parameters": [ { "name": "occupantID", "in": "path", "description": "Occupant identifier", "required": true, "schema": { "type": "string" } }, { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } }, { "name": "locationDescriptor", "in": "query", "description": "Describes the nature of the address location. See locationDescriptor", "required": false, "schema": { "type": "string", "enum": [ "any", "accessPoint", "frontDoorPoint", "parcelPoint", "rooftopPoint", "routingPoint" ], "default": "any" } }, { "name": "brief", "in": "query", "description": "If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.", "required": false, "schema": { "type": "boolean", "default": false } }, { "name": "setBack", "in": "query", "description": "The distance to move the accessPoint away from the curb and towards the inside of the parcel (in metres). Ignored if locationDescriptor not set to accessPoint.", "required": false, "schema": { "type": "integer", "default": 0 } } ], "responses": { "200": { "description": "The occupant with the requested occupantID in Site Address Representation plus Occupant Representation" } } } }, "/parcels/pids/{siteID}.{outputFormat}": { "get": { "summary": "Get a comma-separated string of all pids for a given site", "description": "Represents all parcel identifiers associated with an individual site", "tags": [ "parcels" ], "parameters": [ { "name": "siteID", "in": "path", "description": "A unique, but not immutable, site identifier.", "required": true, "schema": { "type": "string" } }, { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" } ], "responses": { "200": { "description": "A comma-separated string containing all the parcel identifiers associated with the requested siteID" } } } }, "/intersections/{intersectionID}.{outputFormat}": { "get": { "summary": "Get an intersection by its unique ID", "description": "Represents a individual intersection", "tags": [ "intersections" ], "parameters": [ { "name": "intersectionID", "in": "path", "description": "A unique intersection identifier", "required": true, "schema": { "type": "string" } }, { "name": "outputFormat", "in": "path", "description": "Results format. See outputFormat. \n\nNote: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)", "required": true, "schema": { "type": "string", "enum": [ "json", "geojson", "xhtml", "kml", "gml", "csv", "shpz" ], "default": "json" }, "example": "json" }, { "name": "outputSRS", "in": "query", "description": "The EPSG code of the spatial reference system (SRS) to use for output geometries. See outputSRS", "required": false, "schema": { "type": "integer", "enum": [ 4326, 4269, 3005, 26907, 26908, 26909, 26910, 26911 ], "default": 4326 } } ], "responses": { "200": { "description": "The Intersection with the requested intersectionID in Intersection Address Representation" } } } } }, "components": { "schemas": {}, "securitySchemes": { "apikey": { "type": "apiKey", "in": "header", "name": "apikey" } } } }