@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Geomark Web Service REST API
@base https://apps.gov.bc.ca/pub/geomark
@version 4.1.2
@endpoints 7
@toc geomarks(7)

@endpoint POST /geomarks/new
@returns(200)
@errors {302, 400, 500}

@endpoint POST /geomarks/copy
@required {geomarkUrl: str}
@optional {allowOverlap: bool(false/true)=false, bufferMetres: int, bufferSegments: int=8, bufferMitreLimit: int=5, bufferCap: str(ROUND/SQUARE/FLAT)=ROUND, bufferJoin: str(ROUND/MITRE/BEVEL)=ROUND, callback: str, redirectUrl: str, failureRedirectUrl: str, resultFormat: str(json/xml/kml/kmz/shp/shpz/geojson/gml/gpkg/wkt)}
@returns(200)
@errors {302, 400, 500}

@endpoint GET /geomarks/{geomarkId}/boundingBox.{fileFormatExtension}
@required {geomarkId: str, fileFormatExtension: str(json/xml/kml/kmz/shp/shpz/geojson/gml/gpkg/wkt)}
@optional {srid: int(4326/3005/3857/26907/26908/26909/26910/26911)=4326}
@returns(200)
@errors {400, 404, 500}

@endpoint GET /geomarks/{geomarkId}/feature.{fileFormatExtension}
@required {geomarkId: str, fileFormatExtension: str(json/xml/kml/kmz/shp/shpz/geojson/gml/gpkg/wkt)}
@optional {srid: int(4326/3005/3857/26907/26908/26909/26910/26911)=4326}
@returns(200)
@errors {400, 404, 500}

@endpoint GET /geomarks/{geomarkId}.{fileFormatExtension}
@required {geomarkId: str, fileFormatExtension: str(json/xml/kml/kmz/shp/shpz/geojson/gml/gpkg/wkt)}
@optional {srid: int(4326/3005/3857/26907/26908/26909/26910/26911)=4326}
@returns(200)
@errors {404, 500}

@endpoint GET /geomarks/{geomarkId}/parts.{fileFormatExtension}
@required {geomarkId: str, fileFormatExtension: str(json/xml/kml/kmz/shp/shpz/geojson/gml/gpkg/wkt)}
@optional {srid: int(4326/3005/3857/26907/26908/26909/26910/26911)=4326}
@returns(200)
@errors {400, 404, 500}

@endpoint GET /geomarks/{geomarkId}/point.{fileFormatExtension}
@required {geomarkId: str, fileFormatExtension: str(json/xml/kml/kmz/shp/shpz/geojson/gml/gpkg/wkt)}
@optional {srid: int(4326/3005/3857/26907/26908/26909/26910/26911)=4326}
@returns(200)
@errors {400, 404, 500}

@end
