Any questions or comments concerning this service can be sent to cangeo@crim.ca.
31 March 2014: Initial release for project iteration 2.
31 May 2014: New release for final iteration:
31 May 2015: Maintenance due to change in Google Map API:
11 February 2016:
The image processing system (AutoCarto) is a proprietary software developed at CRIM. Some packages or libraries developed by external entities are used in the service; here is a summary of their respective licenses:
Who authorizes releases: Samuel Foucher (CRIM, VISI team).
Release validation procedure: the data produced by the new release is inspected manually before public release.
Release documentation : Release changes are documented in this document.
The proposed service is based on a software developed in the Vision and Imaging Team at CRIM. It takes remote sensing imagery (usually SPOT or Landsat) as input and tries to update the shape of existing waterbodies as available in the NRCan database. The image processing is performed offline once new Landsat-8 images are identified.
This document describes the web service interfaces for the exchange of updated of the outline of inland waterbodies available within the Canvec database. The specification defines services names, query parameters and expected results. The service can be accessed using the following URL : http://cangeo.crim.ca/hydro
The information content is updated on a monthly basis:
The services will be invoked using a subset of REST and HTTP methods. In particular, all services using the HTTP GET method. The service provides results organized according to the National Topographic System at 1:50k scale. The following URI pattern is to be used for each tile
cangeo.crim.ca/hydro/tiles/<1000k>/<250k>/<50k>/last.<format>
For instance for the NTS tile #032h01 would be:
cangeo.crim.ca/hydro/tiles/032/h/01/last
For a general query of the system:
cangeo.crim.ca/hydro/tiles/last
The service is available on the TCP/IP port 80.
We recommend to use Google Earth in order to visualize the kml and kmz files, the menu “Add/Network Link” can then be used to load the remote files directly. Note that since February 2015, Google map does not support direct kml loading anymore.
tiles/all - to request an overview of all NTS tiles. Useful to get a specific tile request.
Available requests are :
cangeo.crim.ca/hydro/tiles/all cangeo.crim.ca/hydro/tiles/all.xml cangeo.crim.ca/hydro/tiles/all.kml cangeo.crim.ca/hydro/tiles/all.kmz
The first two will retrieve the data in xml format and the two other as a kml file or a zipped kmz file. See the next chapter for more information on responses formats. You should only note that no rss are available for these requests.
tiles/last – to request the latest information for a tile available within the last 30 days
Example of requests:
cangeo.crim.ca/hydro/tiles/last cangeo.crim.ca/hydro/tiles/032/h/01/last
For instance, in Google Earth, we can form 2 network links using the link http://cangeo.crim.ca/hydro/tiles/all.kml to show the entire NTS system and http://cangeo.crim.ca/hydro/tiles/last.kml to show the latest updated tiles:
In order to navigate the content, we suggest to add a network link in Google Earth for http://cangeo.crim.ca/hydro/tiles/last.kml, then zoom in on a tile of interest, click on the yellow pin at the center and an information bubble should appear:
Clicking on on the “kmz” link will load the corresponding kmz file for this tile:
You can then consult object attributes by clicking on each object:
For the IMAGE_ID attribute, a “kmz” link is also available that will give you a preview of the Landsat-8 images (at a degraded resolution):
If you click on the image, an information bubble with the link “Full metadata” will give access to the image attributes:
images/last – to request the latest information about the imagery processed within the last 30 days
cangeo.crim.ca/hydro/images/last
The system supports five response formats (XML, GeoRSS, KML, KMZ, GeoJson and ESRI Shapefile). The format is specified as an extension of the 'last' request (one of : xml, xml, kml, kmz, json, shp). If no extension is given, an XML response is returned, unless that the header specifies a valid alternative type via the Accept field (one of : application/xml, application/rss+xml, application/kml, application/kmz, application/json or application/zip). If an extension is given the Accept field is ignored, thus the extension type has precedence.
There is some valid requests:
cangeo.crim.ca/hydro/tiles/last cangeo.crim.ca/hydro/tiles/last.xml cangeo.crim.ca/hydro/tiles/last.rss cangeo.crim.ca/hydro/tiles/last.kml cangeo.crim.ca/hydro/tiles/last.kmz cangeo.crim.ca/hydro/tiles/last.json cangeo.crim.ca/hydro/tiles/032/h/01/last cangeo.crim.ca/hydro/tiles/032/h/01/last.xml cangeo.crim.ca/hydro/tiles/032/h/01/last.rss cangeo.crim.ca/hydro/tiles/032/h/01/last.kml cangeo.crim.ca/hydro/tiles/032/h/01/last.kmz cangeo.crim.ca/hydro/tiles/032/h/01/last.json cangeo.crim.ca/hydro/tiles/032/h/01/last.shp
By default, the service returns a response in XML format, with a root element kml respecting the namespace given here http://www.opengis.net/kml/2.2. The geographical data is encoded using the KML syntax conforming to the mime type : 'application/vnd.google-earth.kml+xml'. In that case, all the information is returned so the file may get large depending on the query.
<kml xmlns="http://www.opengis.net/kml/2.2"> <Document><Folder><name>032a04</name> <Placemark> <Style><LineStyle><color>ff0000ff</color></LineStyle><PolyStyle><fill>0</fill></PolyStyle></Style> <ExtendedData><SchemaData schemaUrl="#032a04_261"> <SimpleData name="ACCURACY">22</SimpleData> <SimpleData name="ACQTECH">5</SimpleData> <SimpleData name="CODE">1481262</SimpleData> <SimpleData name="DATANAME">032A04</SimpleData> <SimpleData name="DEFINITION">-1</SimpleData> <SimpleData name="ID">32a4c79a258844cfa7934a6b69aeb65c</SimpleData> <SimpleData name="ISOLATED">0</SimpleData> <SimpleData name="LAKCONCOD">-1</SimpleData> <SimpleData name="LAKLANG">-1</SimpleData> <SimpleData name="PERMANENCY">1</SimpleData> <SimpleData name="PROVIDER">2</SimpleData> <SimpleData name="RIVCONCOD">-1</SimpleData> <SimpleData name="RIVLANG">-1</SimpleData> <SimpleData name="THEME">HD</SimpleData> <SimpleData name="VALDATE">1976</SimpleData> <SimpleData name="AC_SUCCESS">1</SimpleData> <SimpleData name="AC_COMMON">0.737350767481524</SimpleData> <SimpleData name="AC_ADDS">0.166714042069358</SimpleData> <SimpleData name="AC_SUPS">0.262649232518476</SimpleData> <SimpleData name="AC_CONF">0</SimpleData> <SimpleData name="IMAGE_ID">LC80150272013271LGN00</SimpleData> <SimpleData name="CENTRE_X">-73.966871962079594</SimpleData> <SimpleData name="CENTRE_Y">48.241107486944884</SimpleData> </SchemaData> </ExtendedData> <MultiGeometry> <Polygon> <outerBoundaryIs> <LinearRing> <coordinates>-73.988316198636511,48.250881857562064 -73.988297565725958,48.251826373252321 -73.988095527398116,48.251824595322901 -73.987683460191775,48.252225830713186 -73.986673261072283,48.252216932067022 -73.986675927285262,48.252082001340902 -73.985870438787359,48.251939945372776 -73.985673737805087,48.251668301790978 -73.984262147939475,48.251520885952736 -73.984264820430553,48.251385955310894 -73.98183770677187,48.251499442392188 -73.981835027884856,48.251634372929743 -73.981430953570182,48.251630794017132 -73.981428273600727,48.251765724534557 -73.980620123082801,48.251758562416462 -73.980617440968174,48.251893492896855 -73.978799098676291,48.251877357291718 -73.978801785573182,48.251742426887304 -73.97779159876012,48.25173345028189 -73.97801514754893,48.250655803229378 -73.976600916458906,48.250643224033148 -73.976603609022291,48.250508293692135 -73.976202237843793,48.250369766131385 -73.976213012070261,48.249830044788922 -73.978036657747566,48.24957635993507 -73.978047412371751,48.249036638208821 -73.977845385675096,48.249034842347022 -73.97805816667919,48.248496916429872 -73.977856142107612,48.248495120601895 -73.977861520205067,48.248225259709557 -73.977659496715816,48.24822346354361 -73.977468233453678,48.247681945266237 -73.978481027720107,48.247555993662765 -73.978478340373982,48.24769092415243 -73.978680361817425,48.247692718865025 -73.978674988128304,48.247962579851347 -73.978472965622373,48.247960785121847 -73.978470278216903,48.248095715601607 -73.978672301254079,48.248097510339555 -73.978669614360058,48.248232440824495 -73.978871637948274,48.248234235216003 -73.97886895156573,48.248369165706087 -73.979070975704985,48.248370959751163 -73.979466969557919,48.248779338303152 -73.979668995350281,48.248781131308895 -73.979671679667078,48.248646200794909 -73.980679124608542,48.2487900910142 -73.980681806268976,48.248655160458021 -73.981085857047987,48.248658741839023 -73.981088537626135,48.2485238112627 -73.98189663729589,48.248530969732286 -73.981893958842804,48.24866590034231 -73.982298009858553,48.24866947746461 -73.982295332448288,48.248804408088198 -73.983100761536562,48.248946488761682 -73.983095410867719,48.249216350059733 -73.984102877064046,48.249360210411282 -73.984100204336855,48.24949514109413 -73.984302233239262,48.249496925979315 -73.984698277585153,48.249905286789378 -73.985304369310143,48.249910637261692 -73.985307038908545,48.24977570653833 -73.987731401200875,48.2497970763851 -73.987728737978173,48.249932007209082 -73.9883321689383,48.250072272556281 -73.988321522148837,48.250611995906638 -73.988119488603132,48.250610218052557 -73.988114164028119,48.25088007969125 -73.988316198636511,48.250881857562064 </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </MultiGeometry> </Placemark> </Folder> </Document> </kml>
GeoRSS is also an xml format but that is directly compatible with RSS readers and also Google Map. This is a small file that gives only an overview of the information. We use the extension rss in the request (last.rss). The geographical information is encoded in the GeoJSON format. Depending on the level of the query, different information are displayed, they are 2 levels:
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:georss="http://www.georss.org/georss" slick-uniqueid="3"> <div> <a id="slick_uniqueid"/> </div> <title>Last_tiles</title> <id>Last_tiles</id> <updated>2013-09-28T15:46:19Z</updated> <author> <name>CRIM</name> </author> <entry> <title>032f05</title> <id>032f05</id> <updated>2013-09-17T16:04:09Z</updated> <published>2013-09-17T16:04:09Z</published> <content type="html"> Last Update: 2013-09-17T16:04:09Z<br/><a href="http://geo-ti.crim.ca/feeds/50k/032/f/05/Last.kml">Download kml</a> | <a href="https://maps.google.com/maps?q=http://geo-ti.crim.ca/feeds/50k/032/f/05/Last.xml?2014-02-27T13:00:24-05:00">View Details</a> </content> <georss:point>49.375 -77.75</georss:point> <georss:polygon> 49.25 -78 49.267 -78 49.283 -78 49.3 -78 49.317 -78 49.333 -78 49.35 -78 49.367 -78 49.383 -78 49.4 -78 49.417 -78 49.433 -78 49.45 -78 49.467 -78 49.483 -78 49.5 -78 49.5 -77.983 49.5 -77.967 49.5 -77.95 49.5 -77.933 49.5 -77.917 49.5 -77.9 49.5 -77.883 49.5 -77.867 49.5 -77.85 49.5 -77.833 49.5 -77.817 49.5 -77.8 49.5 -77.783 49.5 -77.767 49.5 -77.75 49.5 -77.733 49.5 -77.717 49.5 -77.7 49.5 -77.683 49.5 -77.667 49.5 -77.65 49.5 -77.633 49.5 -77.617 49.5 -77.6 49.5 -77.583 49.5 -77.567 49.5 -77.55 49.5 -77.533 49.5 -77.517 49.5 -77.5 49.483 -77.5 49.467 -77.5 49.45 -77.5 49.433 -77.5 49.417 -77.5 49.4 -77.5 49.383 -77.5 49.367 -77.5 49.35 -77.5 49.333 -77.5 49.317 -77.5 49.3 -77.5 49.283 -77.5 49.267 -77.5 49.25 -77.5 49.25 -77.517 49.25 -77.533 49.25 -77.55 49.25 -77.567 49.25 -77.583 49.25 -77.6 49.25 -77.617 49.25 -77.633 49.25 -77.65 49.25 -77.667 49.25 -77.683 49.25 -77.7 49.25 -77.717 49.25 -77.733 49.25 -77.75 49.25 -77.767 49.25 -77.783 49.25 -77.8 49.25 -77.817 49.25 -77.833 49.25 -77.85 49.25 -77.867 49.25 -77.883 49.25 -77.9 49.25 -77.917 49.25 -77.933 49.25 -77.95 49.25 -77.967 49.25 -77.983 49.25 -78 </georss:polygon> </entry> </feed>
The geojson format is also available.
The specification of this format can be accessed here : https://wiki.corpo.crim.ca/doku.php and a sample of the format can be seen below.
{ "type" : "FeatureCollection", "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } }, "features": [ { "type": "Feature", "properties": { "Name": "66f6921e705c4c8c9cfbd917fa8c38cd", "Description": "<table border=\"1\" cellpadding=\"2\" cellspacing=\"0 ..." }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -65.048175258758761, 48.284188877093285 ], [ -65.048213019520745, 48.285132930418726 ], [ -65.047000587592478, 48.285154526219316 ], [ -65.046984413733838, 48.284749931653799 ], [ -65.046782343200732, 48.284753529661096 ], [ -65.046760780736804, 48.284214070121827 ], [ -65.046558712289141, 48.284217667706528 ], [ -65.046739218907959, 48.283674610524436 ], [ -65.047552876323991, 48.283795081745232 ], [ -65.047765729206461, 48.28406121206644 ], [ -65.048175258758761, 48.284188877093285 ] ] ] } }, { "type": "Feature", "properties": { "Name": "44e488c773c843bfbc8352bf924ff159", "Description": "<table border=\"1\" cellpadding=\"2\" cellspacing=\"0 ..." }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -65.225155661209641, 48.36889435260656 ], [ -65.224965035693515, 48.369167963173062 ], [ -65.224560274021044, 48.369175794387388 ], [ -65.224566150113091, 48.369310641649953 ], [ -65.224363768678373, 48.369314556741877 ], [ -65.224369644280216, 48.369449404019178 ], [ -65.224167262268679, 48.369453318773751 ], [ -65.224173137380319, 48.369588166065775 ], [ -65.223970754791964, 48.369592080482988 ], [ -65.223583610278396, 48.370004450269725 ], [ -65.222976457191933, 48.370016189417775 ], [ -65.222988201402643, 48.370285884189514 ], [ -65.222785815886823, 48.37028979656413 ], [ -65.222791687523582, 48.370424643962849 ], [ -65.222184529115808, 48.370436379007188 ], [ -65.222178659079688, 48.370301531553203 ], [ -65.221768018732789, 48.370174505605775 ], [ -65.221345644889155, 48.369777783076565 ], [ -65.220940877390177, 48.369785601630028 ], [ -65.220935010771584, 48.369650754047029 ], [ -65.220530244166682, 48.369658571140519 ], [ -65.220524378658368, 48.36952372351702 ], [ -65.219304218743147, 48.369412318410603 ], [ -65.219292494344913, 48.369142622924265 ], [ -65.2190901128523, 48.36914652872904 ], [ -65.219078389693934, 48.368876833191081 ], [ -65.218876009225127, 48.368880738603295 ], [ -65.218840843988048, 48.368071651790025 ], [ -65.218227852804091, 48.367948517690714 ], [ -65.21822199372609, 48.367813669816663 ], [ -65.217394917399005, 48.367424739185267 ], [ -65.21738906062761, 48.367289891222853 ], [ -65.21759143499699, 48.367285988521601 ], [ -65.217568006209405, 48.366746596708367 ], [ -65.217770378401795, 48.366742693724873 ], [ -65.21796103428251, 48.366469094530245 ], [ -65.219175259869488, 48.366445667244548 ], [ -65.219181121182771, 48.366580515063788 ], [ -65.220008196777385, 48.366969432899509 ], [ -65.22001406039729, 48.367104280630336 ], [ -65.220841150755575, 48.36749319221434 ], [ -65.221066991557265, 48.368028673902018 ], [ -65.221269368349596, 48.368024764686673 ], [ -65.221275235516202, 48.368159612277402 ], [ -65.221477612798751, 48.368155702687901 ], [ -65.222108222021575, 48.368683361815947 ], [ -65.222917738735731, 48.368667715336315 ], [ -65.223131862217997, 48.368933497636128 ], [ -65.223733128542122, 48.368786910515468 ], [ -65.223947256739265, 48.369052691218926 ], [ -65.224149637193591, 48.369048776875417 ], [ -65.224340266704132, 48.368775167595551 ], [ -65.225155661209641, 48.36889435260656 ] ] ] } }, ... ] }
The Keyhole Markup Language (KML) is a xml format proposed by Google. This format is ideal for displaying geographic information and is used exclusively as soon as we reach the individual waterbody object (see Figure 3). This response type can also be selected for the 'last' request as shown with the previous response type.
<?xml version='1.0' encoding='UTF-8'?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document> <Schema name="" id="autocarto"> <SimpleField name="ACCURACY" type="float"/> <SimpleField name="ACQTECH" type="int"/> <SimpleField name="CODE" type="float"/> <SimpleField name="DATANAME" type="string"/> <SimpleField name="DEFINITION" type="int"/> <SimpleField name="ID" type="string"/> <SimpleField name="ISOLATED" type="int"/> <SimpleField name="LAKCONCOD" type="float"/> <SimpleField name="LAKGEODB" type="string"/> <SimpleField name="LAKLANG" type="int"/> <SimpleField name="LAKNAMEEN" type="string"/> <SimpleField name="LAKNAMEFR" type="string"/> <SimpleField name="LAKNAMEID" type="string"/> <SimpleField name="PERMANENCY" type="int"/> <SimpleField name="PROVIDER" type="int"/> <SimpleField name="RIVCONCOD" type="float"/> <SimpleField name="RIVGEODB" type="string"/> <SimpleField name="RIVLANG" type="int"/> <SimpleField name="RIVNAMEEN" type="string"/> <SimpleField name="RIVNAMEFR" type="string"/> <SimpleField name="RIVNAMEID" type="string"/> <SimpleField name="THEME" type="string"/> <SimpleField name="VALDATE" type="string"/> <SimpleField name="AC_SUCCESS" type="int"/> <SimpleField name="AC_COMMON" type="float"/> <SimpleField name="AC_ADDS" type="float"/> <SimpleField name="AC_SUPS" type="float"/> <SimpleField name="AC_CONF" type="int"/> <SimpleField name="IMAGE_ID" type="string"/> <SimpleField name="CENTRE_X" type="float"/> <SimpleField name="CENTRE_Y" type="float"/> <SimpleField name="IMAGE_DATETIME" type="string"/> </Schema> <Placemark> <Style> <LineStyle> <color>ff0000ff</color> </LineStyle> <PolyStyle> <fill>0</fill> </PolyStyle> </Style> <name>32a4c79a258844cfa7934a6b69aeb65c</name> <Snippet maxLines="1">32a4c79a258844cfa7934a6b69aeb65c</Snippet> <description><![CDATA[<table border="1" cellpadding="2" cellspacing="0"><tr><td>ACCURACY</td><td>22</td></tr><tr><td>ACQTECH</td><td>5</td></tr><tr><td>CODE</td><td>1481262</td></tr><tr><td>DATANAME</td><td>032A04</td></tr><tr><td>DEFINITION</td><td>-1</td></tr><tr><td>ID</td><td>32a4c79a258844cfa7934a6b69aeb65c</td></tr><tr><td>ISOLATED</td><td>0</td></tr><tr><td>LAKCONCOD</td><td>-1</td></tr><tr><td>LAKLANG</td><td>-1</td></tr><tr><td>PERMANENCY</td><td>1</td></tr><tr><td>PROVIDER</td><td>2</td></tr><tr><td>RIVCONCOD</td><td>-1</td></tr><tr><td>RIVLANG</td><td>-1</td></tr><tr><td>THEME</td><td>HD</td></tr><tr><td>VALDATE</td><td>1976</td></tr><tr><td>AC_SUCCESS</td><td>1</td></tr><tr><td>AC_COMMON</td><td>0.737350767481524</td></tr><tr><td>AC_ADDS</td><td>0.166714042069358</td></tr><tr><td>AC_SUPS</td><td>0.262649232518476</td></tr><tr><td>AC_CONF</td><td>0</td></tr><tr><td>IMAGE_ID</td><td>LC80150272013271LGN00</td></tr><tr><td>CENTRE_X</td><td>-73.966871962079594</td></tr><tr><td>CENTRE_Y</td><td>48.241107486944884</td></tr><tr><td>IMAGE_DATETIME</td><td>2013-09-28T15:45:55Z</td></tr></table>]]></description> <ExtendedData> <SchemaData schemaUrl="#autocarto"> <SimpleData name="ACCURACY">22</SimpleData> <SimpleData name="ACQTECH">5</SimpleData> <SimpleData name="CODE">1481262</SimpleData> <SimpleData name="DATANAME">032A04</SimpleData> <SimpleData name="DEFINITION">-1</SimpleData> <SimpleData name="ID">32a4c79a258844cfa7934a6b69aeb65c</SimpleData> <SimpleData name="ISOLATED">0</SimpleData> <SimpleData name="LAKCONCOD">-1</SimpleData> <SimpleData name="LAKLANG">-1</SimpleData> <SimpleData name="PERMANENCY">1</SimpleData> <SimpleData name="PROVIDER">2</SimpleData> <SimpleData name="RIVCONCOD">-1</SimpleData> <SimpleData name="RIVLANG">-1</SimpleData> <SimpleData name="THEME">HD</SimpleData> <SimpleData name="VALDATE">1976</SimpleData> <SimpleData name="AC_SUCCESS">1</SimpleData> <SimpleData name="AC_COMMON">0.737350767481524</SimpleData> <SimpleData name="AC_ADDS">0.166714042069358</SimpleData> <SimpleData name="AC_SUPS">0.262649232518476</SimpleData> <SimpleData name="AC_CONF">0</SimpleData> <SimpleData name="IMAGE_ID">LC80150272013271LGN00</SimpleData> <SimpleData name="CENTRE_X">-73.966871962079594</SimpleData> <SimpleData name="CENTRE_Y">48.241107486944884</SimpleData> <SimpleData name="IMAGE_DATETIME">2013-09-28T15:45:55Z</SimpleData> </SchemaData> </ExtendedData> <MultiGeometry> <Polygon> <outerBoundaryIs> <LinearRing> <coordinates>-73.965829924957106,48.243664171824051 -73.965827204704198,48.243799101870245 -73.965625199407853,48.243797284685137 -73.965627920191892,48.243662354647498 -73.965829924957106,48.243664171824051</coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </MultiGeometry> </Placemark> </Document> </kml>
Same format as above but in a zipped format which reduce the size of the data.
A zipped format containing all files required by ESRI Shapefile standard.
The Canarie API is defined in the following document: https://collaboration.canarie.ca/elgg/file/download/849
It covers:
List of existing Canarie services: https://science.canarie.ca/researchmiddleware/services/list/main.html
The CANGEO system returns an exceptions in the HTTP response body when something goes wrong. The format can be one of the following ones: 'text/html', 'application/json' or 'application/xml'. Based on the header Accept field, html would have precedence over json and json over xml which will be the default one if the Accept field is empty. It should be note that the extension of the url (ex.: last.xml) isn't used for the type of response since even parsing the url could cause an exception and thus the response type would be undefined.
The following fields are given when an exception occurs:
Field | Description |
---|---|
Status | The HTTP status code for the exception (see table below) |
Message | The description of the HTTP status code |
Code* | An internal error code which is more specific on the exception |
More_info* | More information on the internal error code (Contextual) |
*Theses fields may not be present if the exception occurs outside of the service core scripts.
In xml, the response appears as a <RestException> element within the <CanGeoResponse> root tag:
<CanGeoResponse> <RestException> <Status>404</Status> <Message>The requested resource was not found</Message> <Code>-5</Code> <MoreInfo>The required file isn't found on server (It is possible that the requested info doesn't exist). The file '50k/999/p/16/Last.kml' cannot be found on server.</MoreInfo> </RestException> </CanGeoResponse>
In json, the response contains the same fields like this:
{ Code: -5 Message: "The requested resource was not found" More_info: "The required file isn't found on server (It is possible that the requested info doesn't exist). The file '50k/999/p/16/Last.kml' cannot be found on server." Status: 404 }
And finally in html it will look like this:
HTML status that can be returned by the service :
Code | Description |
---|---|
200 | Successful request, results follow |
204 | Successful request, no content : Return for the /source url since it is not available |
400 | Bad request due to improper specifications, unrecognized parameter, parameter value out of range, etc. |
404 | The requested resource was not found |
405 | Method not allowed |
500 | Internal server error |
503 | Service temporarily unavailable |