openapi: 3.0.0
servers:
  - description: Production (gated)
    url: https://geocoder.api.gov.bc.ca/
  - description: Test (gated)
    url: https://geocodertst.api.gov.bc.ca/
  - description: Delivery (gated)
    url: https://geocoderdlv.api.gov.bc.ca/
info:
  contact:
    name: Contact DataBC
    url: https://dpdd.atlassian.net/servicedesk/customer/portal/1/group/7/
  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). \ 


    Please 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.\ 


    [API keys](https://api.gov.bc.ca/devportal/api-directory/273) are unique and can be acquired with a GitHub or IDIR account.\ 


    \ **Notification:** If you have applications or web pages that link to the BC Address Geocoder you must use the following URL.\ 


    \ *https://geocoder.api.gov.bc.ca*\ 


    \ Please note that the following URLs were deprecated in September 2018 [More Details](https://www2.gov.bc.ca/gov/content?id=103ADC5A956842828554238DEF28D6E5).\ 


    \ - http://apps.gov.bc.ca/pub/geocoder\ 

    \ - https://apps.gov.bc.ca/pub/geocoder

    \\

    \\

    \ "
  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
  title: Geocoder REST API
  version: 2.0.0
  x-apisguru-categories:
    - open_data
  x-logo:
    url: https://avatars1.githubusercontent.com/u/916280?v=3&s=200
  x-origin:
    - converter:
        url: https://github.com/mermade/oas-kit
        version: 7.0.4
      format: openapi
      url: https://raw.githubusercontent.com/bcgov/api-specs/master/geocoder/geocoder-combined.json
      version: "3.0"
  x-providerName: gov.bc.ca
  x-serviceName: geocoder
externalDocs:
  description: BC Address Geocoder
  url: https://www2.gov.bc.ca/gov/content?id=118DD57CD9674D57BDBD511C2E78DC0D
security:
  - apikey: []
tags:
  - name: sites
  - name: intersections
  - name: occupants
  - name: parcels
paths:
  "/addresses.{outputFormat}":
    get:
      description: Represents the set of geocoded and standardized sites and intersections whose address best matches a given query address.
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: Civic or intersection address as a single string. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#addressString target="_blank">addressString</a>
          example: 525 Superior Street, Victoria, BC
          in: query
          name: addressString
          required: false
          schema:
            type: string
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 1
            type: integer
        - description: accessPoint interpolation method. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#interpolation target="_blank">interpolation</a>
          in: query
          name: interpolation
          required: false
          schema:
            default: adaptive
            enum:
              - adaptive
              - linear
              - none
            type: string
        - description: If true, include unmatched address details such as site name in results.
          in: query
          name: echo
          required: false
          schema:
            default: true
            type: boolean
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, addressString is expected to contain a partial address that requires completion. Not supported for shp, csv, gml formats.
          in: query
          name: autoComplete
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The minimum score required for a match to be returned. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#minScore target="_blank">minScore</a>
          in: query
          name: minScore
          required: false
          schema:
            default: 1
            type: integer
        - description: 'Example: street,locality.  A comma separated list of individual match precision levels to include in results. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#matchPrecision target="_blank">matchPrecision</a>'
          in: query
          name: matchPrecision
          required: false
          schema:
            type: string
        - description: 'Example: street,locality.  A comma separated list of individual match precision levels to exclude from results. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#matchPrecisionNot target="_blank">matchPrecisionNot</a>'
          in: query
          name: matchPrecisionNot
          required: false
          schema:
            type: string
        - description: A string containing the name of the building, facility, or institution (e.g., Duck Building, Casa Del Mar, Crystal Garden, Bluebird House).See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#siteName target="_blank">siteName</a>
          in: query
          name: siteName
          required: false
          schema:
            type: string
        - description: The type of unit within a house or building. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#unitDesignator target="_blank">unitDesignator</a>
          in: query
          name: unitDesignator
          required: false
          schema:
            enum:
              - APT
              - BLDG
              - BSMT
              - FLR
              - LOBBY
              - LWR
              - PAD
              - PH
              - REAR
              - RM
              - SIDE
              - SITE
              - SUITE
              - TH
              - UNIT
              - UPPR
            type: string
        - description: The number of the unit, suite, or apartment within a house or building.
          in: query
          name: unitNumber
          required: false
          schema:
            type: string
        - description: A letter that follows the unit number as in Unit 1A or Suite 302B.
          in: query
          name: unitNumberSuffix
          required: false
          schema:
            type: string
        - description: The official number assigned to a site by an address authority. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#civicNumber target="_blank">civicNumber</a>
          in: query
          name: civicNumber
          required: false
          schema:
            type: string
        - description: A letter or fraction that follows the civic number (e.g., the A in 1039A Bledsoe St). See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#civicNumberSuffix target="_blank">civicNumberSuffix</a>
          in: query
          name: civicNumberSuffix
          required: false
          schema:
            type: string
        - description: The official name of the street as assigned by an address authority (e.g., the Douglas in 1175 Douglas Street). See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetName target="_blank">streetName</a>
          in: query
          name: streetName
          required: false
          schema:
            type: string
        - description: The type of street as assigned by a municipality (e.g., the ST in 1175 DOUGLAS St). See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetType target="_blank">streetType</a>
          in: query
          name: streetType
          required: false
          schema:
            type: string
        - description: The abbreviated compass direction as defined by Canada Post and B.C. civic addressing authorities. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetDirection target="_blank">streetDirection</a>
          in: query
          name: streetDirection
          required: false
          schema:
            enum:
              - N
              - S
              - E
              - W
              - O
              - NE
              - NO
              - NW
              - SE
              - SO
              - SW
            type: string
        - description: 'Example: the Bridge in Johnson St Bridge. The qualifier of a street name. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetQualifier target="_blank">streetQualifier</a>'
          in: query
          name: streetQualifier
          required: false
          schema:
            type: string
        - description: The name of the locality assigned to a given site by an address authority. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#localityName target="_blank">localityName</a>
          in: query
          name: localityName
          required: false
          schema:
            type: string
        - description: The ISO 3166-2 Sub-Country Code. The code for British Columbia is BC.
          in: query
          name: provinceCode
          required: false
          schema:
            default: BC
            type: string
        - 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
          in: query
          name: localities
          required: false
          schema:
            type: string
        - description: A comma-separated list of localities to exclude from the search.
          in: query
          name: notLocalities
          required: false
          schema:
            type: string
        - description: 'Example: -126.07929,49.7628,-126.0163,49.7907.  A bounding box (xmin,ymin,xmax,ymax) that limits the search area. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#bbox target="_blank">bbox</a>'
          in: query
          name: bbox
          required: false
          schema:
            type: string
        - 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 <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#centre target='_blank'>centre</a>"
          in: query
          name: centre
          required: false
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: number
        - description: If true, uses supplied parcelPoint to derive an appropriate accessPoint.           See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#extrapolate target="_blank">extrapolate</a>
          in: query
          name: extrapolate
          required: false
          schema:
            type: boolean
        - description: The coordinates of a point (x,y) known to be inside the parcel containing a given address. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#parcelPoint target="_blank">parcelPoint</a>
          in: query
          name: parcelPoint
          required: false
          schema:
            type: string
      responses:
        "200":
          description: A list of matching sites or intersections and their physical locations. See <a href='https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#resource-representations-in-http-responses' target="_blank">addresses response</a>
      summary: Geocode an address
      tags:
        - sites
        - intersections
  "/intersections/near.{outputFormat}":
    get:
      description: Represents intersections near a given point
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - 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.
          example: -122.377,50.121
          in: query
          name: point
          required: true
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: true
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 1
            type: integer
        - description: The minimum degree an intersection can have to be included in results. A dead-end has a degree of 1.
          in: query
          name: minDegree
          required: false
          schema:
            default: 2
            type: integer
        - description: The maximum degree an interesection can have to be included in results. A four-way stop has a degree of 4.
          in: query
          name: maxDegree
          required: false
          schema:
            default: 100
            type: integer
      responses:
        "200":
          description: A list of selected intersections near a given point. Each intersection is in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#intersection-address-representation" target="_blank">Intersection Address Representation</a>
      summary: Find intersections near to a geographic point
      tags:
        - intersections
  "/intersections/nearest.{outputFormat}":
    get:
      description: Represents the closest intersection to a given point
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - 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."
          example: -122.377,50.121
          in: query
          name: point
          required: true
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The minimum degree an intersection can have to be included in results. A dead-end has a degree of 1.
          in: query
          name: minDegree
          required: false
          schema:
            default: 2
            type: integer
        - description: The maximum degree an interesection can have to be included in results. A four-way stop has a degree of 4.
          in: query
          name: maxDegree
          required: false
          schema:
            default: 100
            type: integer
      responses:
        "200":
          description: The nearest intersection in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#intersection-address-representation" target="_blank">Intersection Address Representation</a>
      summary: Find nearest intersection to a geographic point
      tags:
        - intersections
  "/intersections/within.{outputFormat}":
    get:
      description: Represents all intersections within a given area
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: A bounding box (xmin,ymin,xmax,ymax) used to limit the search area. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#bbox target="_blank">bbox</a>
          example: -119.51,49.48,-119.53,49.50
          in: query
          name: bbox
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The maximum number of search results
          in: query
          name: maxResults
          required: false
          schema:
            default: 200
            type: integer
        - description: The minimum degree an intersection can have to be included in results. A dead-end has a degree of 1.
          in: query
          name: minDegree
          required: false
          schema:
            default: 2
            type: integer
        - description: The maximum degree an interesection can have to be included in results. A four-way stop has a degree of 4.
          in: query
          name: maxDegree
          required: false
          schema:
            default: 100
            type: integer
      responses:
        "200":
          description: A list of selected intersections within the given area. Each intersection is in Each intersection is in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#intersection-address-representation" target="_blank">Intersection Address Representation</a>
      summary: Find intersections in a geographic area
      tags:
        - intersections
  "/intersections/{intersectionID}.{outputFormat}":
    get:
      description: Represents a individual intersection
      parameters:
        - description: A unique intersection identifier
          in: path
          name: intersectionID
          required: true
          schema:
            type: string
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
      responses:
        "200":
          description: The Intersection with the requested intersectionID in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#intersection-address-representation" target="_blank">Intersection Address Representation</a>
      summary: Get an intersection by its unique ID
      tags:
        - intersections
  "/occupants/addresses.{outputFormat}":
    get:
      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.
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: Occupant name OR Occupant name ** address
          example: Sir James Douglas Elementary
          in: query
          name: addressString
          required: false
          schema:
            type: string
        - description: "Example: schools;courts;employment<br>A list of tags separated by semicolons."
          in: query
          name: tags
          required: false
          schema:
            type: string
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 1
            type: integer
        - description: accessPoint interpolation method. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#interpolation target="_blank">interpolation</a>
          in: query
          name: interpolation
          required: false
          schema:
            default: adaptive
            enum:
              - adaptive
              - linear
              - none
            type: string
        - description: If true, include unmatched address details such as site name in results.
          in: query
          name: echo
          schema:
            default: false
            type: boolean
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, addressString is expected to contain a partial address that requires completion. Not supported for shp, csv, gml formats.
          in: query
          name: autoComplete
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The minimum score required for a match to be returned. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#minScore target="_blank">minScore</a>
          in: query
          name: minScore
          required: false
          schema:
            default: 1
            type: integer
        - description: 'Example: street,locality.  A comma separated list of individual match precision levels to include in results. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#matchPrecision target="_blank">matchPrecision</a>'
          in: query
          name: matchPrecision
          required: false
          schema:
            default: OCCUPANT
            type: string
        - description: 'Example: street,locality.  A comma separated list of individual match precision levels to exclude from results. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#matchPrecisionNot target="_blank">matchPrecisionNot</a>'
          in: query
          name: matchPrecisionNot
          required: false
          schema:
            type: string
        - description: A string containing the name of the building, facility, or institution (e.g., Duck Building, Casa Del Mar, Crystal Garden, Bluebird House).See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#siteName target="_blank">siteName</a>
          in: query
          name: siteName
          required: false
          schema:
            type: string
        - description: The type of unit within a house or building. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#unitDesignator target="_blank">unitDesignator</a>
          in: query
          name: unitDesignator
          required: false
          schema:
            enum:
              - APT
              - BLDG
              - BSMT
              - FLR
              - LOBBY
              - LWR
              - PAD
              - PH
              - REAR
              - RM
              - SIDE
              - SITE
              - SUITE
              - TH
              - UNIT
              - UPPR
            type: string
        - description: The number of the unit, suite, or apartment within a house or building.
          in: query
          name: unitNumber
          required: false
          schema:
            type: string
        - description: A letter that follows the unit number as in Unit 1A or Suite 302B.
          in: query
          name: unitNumberSuffix
          required: false
          schema:
            type: string
        - description: The official number assigned to a site by an address authority. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#civicNumber target="_blank">civicNumber</a>
          in: query
          name: civicNumber
          required: false
          schema:
            type: string
        - description: A letter or fraction that follows the civic number (e.g., the A in 1039A Bledsoe St). See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#civicNumberSuffix target="_blank">civicNumberSuffix</a>
          in: query
          name: civicNumberSuffix
          required: false
          schema:
            type: string
        - description: The official name of the street as assigned by an address authority (e.g., the Douglas in 1175 Douglas Street). See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetName target="_blank">streetName</a>
          in: query
          name: streetName
          required: false
          schema:
            type: string
        - description: The type of street as assigned by a municipality (e.g., the ST in 1175 DOUGLAS St). See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetType target="_blank">streetType</a>
          in: query
          name: streetType
          required: false
          schema:
            type: string
        - description: The abbreviated compass direction as defined by Canada Post and B.C. civic addressing authorities. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetDirection target="_blank">streetDirection</a>
          in: query
          name: streetDirection
          required: false
          schema:
            enum:
              - N
              - S
              - E
              - W
              - O
              - NE
              - NO
              - NW
              - SE
              - SO
              - SW
            type: string
        - description: The qualifier of a street name (e.g., the Bridge in Johnson St Bridge)
          in: query
          name: streetQualifier
          required: false
          schema:
            type: string
        - description: The name of the locality assigned to a given site by an address authority. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#streetDirection target="_blank">streetDirection</a>
          in: query
          name: localityName
          required: false
          schema:
            type: string
        - description: The ISO 3166-2 Sub-Country Code. The code for British Columbia is BC.
          in: query
          name: provinceCode
          required: false
          schema:
            default: BC
            type: string
        - 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
          in: query
          name: localities
          required: false
          schema:
            type: string
        - description: A comma-separated list of localities to exclude from the search.
          in: query
          name: notLocalities
          required: false
          schema:
            type: string
        - description: 'Example: -126.07929,49.7628,-126.0163,49.7907.  A bounding box (xmin,ymin,xmax,ymax) that limits the search area. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#bbox target="_blank">bbox</a>'
          in: query
          name: bbox
          required: false
          schema:
            type: string
        - 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 <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#centre target='_blank'>centre</a>"
          in: query
          name: centre
          required: false
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: number
        - description: If true, uses supplied parcelPoint to derive an appropriate accessPoint.           See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#extrapolate target="_blank">extrapolate</a>
          in: query
          name: extrapolate
          required: false
          schema:
            type: boolean
        - description: The coordinates of a point (x,y) known to be inside the parcel containing a given address. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#parcelPoint target="_blank">parcelPoint</a>
          in: query
          name: parcelPoint
          required: false
          schema:
            type: string
      responses:
        "200":
          description: A list of matching occupants, sites, and their physical locations. Response document will contain one <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#about-query-representation" target="_blank">About Query Representation</a> and one <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a> plus <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#occupant-representation" target="_blank">Occupant Representation</a> for each matching occupant.
      summary: Geocode an address and identify site occupants
      tags:
        - occupants
  "/occupants/near.{outputFormat}":
    get:
      description: Represents occupants near a given point in order of closest to farthest
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - 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.
          example: -122.377,50.121
          in: query
          name: point
          required: true
          schema:
            type: string
        - description: "Example: schools;courts;employment<br>A list of tags separated by semicolons."
          in: query
          name: tags
          required: false
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 1
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
      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 <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a> plus a <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#occupant-representation" target="_blank">Occupant Representation</a>
      summary: Find occupants of sites near to a geographic point
      tags:
        - occupants
  "/occupants/nearest.{outputFormat}":
    get:
      description: Represents the closest occupant to a given point
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - 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.
          example: -122.377,50.121
          in: query
          name: point
          required: true
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: integer
        - description: "Example: schools;courts;employment<br>A list of tags separated by semicolons."
          in: query
          name: tags
          required: false
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
      responses:
        "200":
          description: The nearest occupant in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a> plus <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#occupant-representation" target="_blank">Occupant Representation</a>
      summary: Find occupants of the site nearest to a geographic point
      tags:
        - occupants
  "/occupants/within.{outputFormat}":
    get:
      description: Represents all occupants within a given area
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: A bounding box (xmin,ymin,xmax,ymax) used to limit the search area. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#bbox target="_blank">bbox</a>
          example: -123.14,49.28,-123.13,49.29
          in: query
          name: bbox
          required: true
          schema:
            type: string
        - description: "Example: schools;courts;employment<br>A list of tags separated by semicolons."
          in: query
          name: tags
          required: false
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 200
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
      responses:
        "200":
          description: A list of selected occupants within the given area. Each occupant is returned in a <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a> plus <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#occupant-representation" target="_blank">Occupant Representation</a>
      summary: Find occupants of sites in a geographic area
      tags:
        - occupants
  "/occupants/{occupantID}.{outputFormat}":
    get:
      description: Represents an individual occupant
      parameters:
        - description: Occupant identifier
          in: path
          name: occupantID
          required: true
          schema:
            type: string
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
      responses:
        "200":
          description: The occupant with the requested occupantID in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a> plus <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#occupant-representation" target="_blank">Occupant Representation</a>
      summary: Get an occupant (of a site) by its unique ID
      tags:
        - occupants
  "/parcels/pids/{siteID}.{outputFormat}":
    get:
      description: Represents all parcel identifiers associated with an individual site
      parameters:
        - description: A unique, but not immutable, site identifier.
          in: path
          name: siteID
          required: true
          schema:
            type: string
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
      responses:
        "200":
          description: A comma-separated string containing all the parcel identifiers associated with the requested siteID
      summary: Get a comma-separated string of all pids for a given site
      tags:
        - parcels
  "/sites/near.{outputFormat}":
    get:
      description: Represents sites near a given point in the order of closest to farthest
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - 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.
          example: -122.377,50.121
          in: query
          name: point
          required: true
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 1
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, excludes sites that are units of a parent site
          in: query
          name: excludeUnits
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, excludes sites without a civic address
          in: query
          name: onlyCivic
          required: false
          schema:
            default: false
            type: boolean
      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 <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a>
      summary: Find sites near to a geographic point
      tags:
        - sites
  "/sites/nearest.{outputFormat}":
    get:
      description: Represents the site nearest a given point
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: Centre point of search. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#point target="_blank">point</a>
          example: -122.377,50.121
          in: query
          name: point
          required: true
          schema:
            type: string
        - description: The maximum distance (in metres) to search from the given point.  If not specified, the search distance is unlimited.
          in: query
          name: maxDistance
          required: false
          schema:
            type: integer
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, excludes sites that are units of a parent site
          in: query
          name: excludeUnits
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, excludes sites without a civic address
          in: query
          name: onlyCivic
          required: false
          schema:
            default: false
            type: boolean
      responses:
        "200":
          description: The nearest site in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a>
      summary: Find the site nearest to a geographic point
      tags:
        - sites
  "/sites/within.{outputFormat}":
    get:
      description: Represents sites within a given area
      parameters:
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: A bounding box (xmin,ymin,xmax,ymax) used to limit the search area. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#bbox target="_blank">bbox</a>
          example: -119.51,49.48,-119.53,49.50
          in: query
          name: bbox
          required: true
          schema:
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: The maximum number of search results to return.
          in: query
          name: maxResults
          required: false
          schema:
            default: 1
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, excludes sites that are units of a parent site
          in: query
          name: excludeUnits
          required: false
          schema:
            default: false
            type: boolean
        - description: If true, excludes sites without a civic address
          in: query
          name: onlyCivic
          required: false
          schema:
            default: false
            type: boolean
      responses:
        "200":
          description: A list of selected sites within a given area. Each site in the response document is structured as a <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a>
      summary: Find sites in a geographic area
      tags:
        - sites
  "/sites/{siteID}.{outputFormat}":
    get:
      description: Represents an individual site
      parameters:
        - description: A unique, but not immutable, site identifier.
          in: path
          name: siteID
          required: true
          schema:
            type: string
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          example: json
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
      responses:
        "200":
          description: The site with the requested siteID in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a>
      summary: Get a site by its unique ID
      tags:
        - sites
  "/sites/{siteID}/subsites.{outputFormat}":
    get:
      description: Represents all subsites of a given site
      parameters:
        - description: A unique, but not immutable, site identifier.
          in: path
          name: siteID
          required: true
          schema:
            type: string
        - description: |-
            Results format. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputFormat target="_blank">outputFormat</a>. 

            Note: GeoJSON and KML formats only support EPSG:4326 (outputSRS=4326)
          in: path
          name: outputFormat
          required: true
          schema:
            default: json
            enum:
              - json
              - geojson
              - xhtml
              - kml
              - gml
              - csv
              - shpz
            type: string
        - description: The EPSG code of the spatial reference system (SRS) to use for output geometries. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#outputSRS target="_blank">outputSRS</a>
          in: query
          name: outputSRS
          required: false
          schema:
            default: 4326
            enum:
              - 4326
              - 4269
              - 3005
              - 26907
              - 26908
              - 26909
              - 26910
              - 26911
            type: integer
        - description: Describes the nature of the address location. See <a href=https://github.com/bcgov/ols-geocoder/blob/gh-pages/glossary.md#locationDescriptor target="_blank">locationDescriptor</a>
          in: query
          name: locationDescriptor
          required: false
          schema:
            default: any
            enum:
              - any
              - accessPoint
              - frontDoorPoint
              - parcelPoint
              - rooftopPoint
              - routingPoint
            type: string
        - description: If true, include only basic match and address details in results. Not supported for shp, csv, and gml formats.
          in: query
          name: brief
          required: false
          schema:
            default: false
            type: boolean
        - 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.
          in: query
          name: setBack
          required: false
          schema:
            default: 0
            type: integer
      responses:
        "200":
          description: Returns all subsites of a given site in <a href="https://github.com/bcgov/ols-geocoder/blob/gh-pages/geocoder-developer-guide.md#site-address-representation" target="_blank">Site Address Representation</a>
      summary: Represents all subsites of a given site
      tags:
        - sites
components:
  schemas: {}
  securitySchemes:
    apikey:
      in: header
      name: apikey
      type: apiKey
