doc/tmpl/new.html
changeset 72 e7b44716a564
child 73 f2f247a5b6c9
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/tmpl/new.html	Tue Dec 06 19:46:00 2011 +0100
@@ -0,0 +1,1015 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+"http://www.w3.org/TR/html4/strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:xi="http://www.w3.org/2001/XInclude"
+	xmlns:py="http://genshi.edgewall.org/">
+	<xi:include href="layout.tmpl" />
+	<head>
+		<title>api docs new</title>
+	</head>
+	<body>
+		<title>geplante API Dokumentation</title>
+		<div class="item">
+			<p>
+
+			</p>
+			<ol>
+				<li value="1">1. <a href="#api-intro">Einführung</a></li>
+				<li value="2">2. 
+				<a href="#api-interfaces">Interfaces</a>
+				<ol>
+					<li value="2.1">2.1 <a href="#interface-xmlrpc">XML-RPC</a></li>
+					<li value="2.2">2.2 <a href="#interface-xml">XML</a></li>
+					<li value="2.3">2.3 <a href="#interface-json">JSON</a></li>
+					<li value="2.4">2.4 <a href="#interface-jsonp">JSONP</a></li>
+					<li value="2.5">2.5 <a href="#interface-php">PHP</a></li>
+				</ol>
+				</li>
+				<li value="3">3. 
+				<a href="#api-methods">Methoden</a>
+				<ol>
+					<li value="3.1">3.1 <a href="#method-route">Route</a></li>
+					<li value="3.2">3.2 <a href="#method-dist">Dist</a></li>
+					<li value="3.3">3.3 <a href="#method-geocode">Geocode</a></li>
+					<li value="3.4">3.4 <a href="#method-sms">SMS</a></li>
+					<li value="3.5">3.5 <a href="#method-bank">Bank</a></li>
+					<li value="3.6">3.6 <a href="#method-bank">Boxcar</a></li>
+					<li value="3.7">3.7 <a href="#method-postcode-match">Postcode-Match</a></li>
+					<li value="3.8">3.8 <a href="#method-postcode-shape">Postcode-Shape</a></li>
+				</ol>				
+				</li>
+				<li value="4">4. <a href="#api-errors">Fehlermeldungen</a></li>
+			</ol>
+		</div>
+		<div class="item" id="api-intro">
+			<h3>Einführung</h3>
+			<p>
+				Die Mesngr API enthält viele Funktionen, die von Fahrradkurierdiensten benötigt werden.
+			</p>
+		</div>
+		<div class="item" id="api-interfaces">
+			<h3>Interfaces</h3>
+			<p>
+				Die Mesngr API stellt verschiedene Interfaces bereit, die unterschiedlich angesprochen werden, aber das selbe tun.
+			</p>
+			<div class="item" id="interface-xmlrpc">
+				<h4>XML-RPC</h4>
+				<p>
+					Interface-URI: <code>http://api.mesngr.de/xmlrpc</code>
+				</p>
+				<p>
+					Die aufgerufene Methode wird dabei im <code>&lt;methodName /&gt;</code> übergeben.
+				</p>
+				<p>
+					Das XML-RPC Interface nimmt die Parameter der aufgerufenen Methode als <code>&lt;struct /&gt;</code> inerhalb des ersten <code>&lt;param /&gt;</code> entgegen, alle weiteren <code>&lt;param /&gt;</code>s werden ignoriert.
+				</p>
+				<p>
+					Zeichen außerhalb des ASCII-Sets sind als HTML Entities zu übergeben.
+				</p>
+			</div>
+			<div class="item" id="interface-xml">
+				<h4>XML</h4>
+				<p>
+					Interface-URI: <code>http://api.mesngr.de/xml/<em>&lt;methode&gt;</em></code>
+				</p>
+				<p>
+					Die aufgerufene Methode wird im Pfad der Interface-URI übergeben.
+				</p>
+				<p>
+					Parameter können via HTTP per GET oder POST im Format <em>application/x-www-form-urlencoded</em> übergeben werden.
+				</p>
+				<p>
+					Die Ausgabe erfolgt als XML Markup.
+				</p>
+			</div>
+			<div class="item" id="interface-json">
+				<h4>JSON</h4>
+				<p>
+					Interface-URI: <code>http://api.mesngr.de/json/<em>&lt;methode&gt;</em></code>
+				</p>
+				<p>
+					Die aufgerufene Methode wird im Pfad der Interface-URI übergeben.
+				</p>
+				<p>
+					Parameter können via HTTP per GET oder POST im Format <em>application/x-www-form-urlencoded</em> oder JSON-Objekt übergeben werden.
+				</p>
+				<p>
+					Die Ausgabe erfolgt als JSON-Objekt.
+				</p>
+			</div>
+			<div class="item" id="interface-json">
+				<h4>JSONP</h4>
+				<p>
+					Interface-URI: <code>http://api.mesngr.de/jsonp/<em>&lt;methode&gt;</em>?callback=&lt;callback&gt;</code>
+				</p>
+				<p>
+					Die aufgerufene Methode wird im Pfad der Interface-URI übergeben.
+				</p>
+				<p>
+					Der Name für die Callback-Methode wird als Parameter Callback übergeben.
+				</p>
+				<p>
+					Parameter können via HTTP per GET im Format <em>application/x-www-form-urlencoded</em> übergeben werden.
+				</p>
+				<p>
+					Die Ausgabe erfolgt als Javascript-Funktionsaufruf mit einem JSON-Objekt als Parameter.
+				</p>
+			</div>
+			<div class="item" id="interface-php">
+				<h4>PHP</h4>
+				<p>
+					Interface-URI: <code>http://api.mesngr.de/php/<em>&lt;methode&gt;</em></code>
+				</p>
+				<p>
+					Die aufgerufene Methode wird im Pfad der Interface-URI übergeben.
+				</p>
+				<p>
+					Parameter können via HTTP per GET oder POST im Format <em>application/x-www-form-urlencoded</em> übergeben werden.
+				</p>
+				<p>
+					Die Ausgabe erfolgt als serialisiertes PHP-Objekt.
+				</p>
+			</div>
+		</div>
+	<div class="item" id="api-methods">
+		<h3>Methoden</h3>
+		<div class="item" id="method-route">
+			<h4>Route</h4>
+			<p><code>route</code></p>
+			<p>
+				Diese Methode ermittelt die Routing-Entfernung zwischen zwei Koordinaten.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>type</td>
+						<td>enum[car,bicycle,foot]</td>
+						<td>Die gewünschte Routing-Methode</td>
+					</tr>
+					<tr>
+						<td>flon</td>
+						<td>float</td>
+						<td>Der Längengrad des Startpunktes</td>
+					</tr>
+					<tr>
+						<td>flat</td>
+						<td>float</td>
+						<td>Der Breitengrad des Startpunktes</td>
+					</tr>
+					<tr>
+						<td>tlon</td>
+						<td>float</td>
+						<td>Der Längengrad des Zielpunktes</td>
+					</tr>
+					<tr>
+						<td>tlat</td>
+						<td>float</td>
+						<td>Der Breitengrad des Zielpunktes</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+					<tr>
+						<td>distance</td>
+						<td>float</td>
+						<td>Die ermittelte Routing-Distanz in km</td>
+					</tr>
+				</tbody>
+			</table>	
+		</div>
+		<div class="item" id="method-dist">
+			<h4>Dist</h4>
+			<p><code>dist</code></p>
+			<p>
+				Diese Methode ermittelt die direkte Entfernung zwischen zwei Koordinaten.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>flon</td>
+						<td>float</td>
+						<td>Der Längengrad des Startpunktes</td>
+					</tr>
+					<tr>
+						<td>flat</td>
+						<td>float</td>
+						<td>Der Breitengrad des Startpunktes</td>
+					</tr>
+					<tr>
+						<td>tlon</td>
+						<td>float</td>
+						<td>Der Längengrad des Zielpunktes</td>
+					</tr>
+					<tr>
+						<td>tlat</td>
+						<td>float</td>
+						<td>Der Breitengrad des Zielpunktes</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+					<tr>
+						<td>distance</td>
+						<td>float</td>
+						<td>Die ermittelte Routing-Distanz in km</td>
+					</tr>
+				</tbody>
+			</table>
+		</div>
+		<div class="item" id="method-geocode">
+			<h4>Geocode</h4>
+			<p><code>geocode</code></p>
+			<p>
+				Ermittelt die Koordinaten zu einer Adresse. Diese Methode ist Kostenpflichtig.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>type</td>
+						<td>enum[fast, complete]</td>
+						<td>Die Eingabemethode. Im Modus <em>fast</em> wird der Parameter <code>number</code> an den Parameter <code>street</code> angehängt sowie der Parameter <code>postcode</code> vor den Parameter <code>city</code>; Die Parameter <code>postcode</code> und <code>number</code> werden dann ignoriert.</td>
+					</tr>
+					<tr>
+						<td>street</td>
+						<td>str</td>
+						<td>Der Straßenname der Adresse</td>
+					</tr>
+					<tr>
+						<td>number</td>
+						<td>str</td>
+						<td>Die Hausnummer der Adresse</td>
+					</tr>
+					<tr>
+						<td>postcode</td>
+						<td>str</td>
+						<td>Die Postleitzahl der Adresse</td>
+					</tr>
+					<tr>
+						<td>city</td>
+						<td>str</td>
+						<td>Die Stadt der Adresse</td>
+					</tr>
+					<tr>
+						<td>country</td>
+						<td>str</td>
+						<td>Das Land der Adresse, ISO 3166</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+					<tr>
+						<td>stage</td>
+						<td>enum[1,2,3]</td>
+						<td>
+							Grad des Erfolges des Geocodings:<br />
+							1 &rarr; Es stehen mehrere mögliche Adressen zur Auswahl.<br />
+							2 &rarr; Eine mögliche Adresse als Korrekturvorschlag.<br />
+							3 &rarr; Die Adresse konnte verifiziert und zugehörige Geokoordinaten ermittelt werden.
+						</td>
+					</tr>
+					<tr>
+						<td>data</td>
+						<td>array</td>
+						<td>
+							Die ermittelten Adressdaten
+						</td>
+					</tr>
+					<tr>
+						<td>data[i]</td>
+						<td>array</td>
+						<td>
+							Ein ermittelter Adressdatensatz
+						</td>
+					</tr>
+					<tr>
+						<td>data[i][street]</td>
+						<td>str</td>
+						<td>Name der Straße</td>
+					</tr>
+					<tr>
+						<td>data[i][nr]</td>
+						<td>str</td>
+						<td>Hausnummer</td>
+					</tr>
+					<tr>
+						<td>data[i][fragment]</td>
+						<td>str</td>
+						<td>Hausnummernzusatz (z.B. <em>a</em> bei <em>12a</em>)</td>
+					</tr>
+					<tr>
+						<td>data[i][postcode]</td>
+						<td>str</td>
+						<td>Postleitzahl</td>
+					</tr>
+					<tr>
+						<td>data[i][city]</td>
+						<td>str</td>
+						<td>Ort</td>
+					</tr>
+					<tr>
+						<td>data[i][country]</td>
+						<td>str[2]</td>
+						<td>Land (gemäß ISO 3166)</td>
+					</tr>
+					<tr>
+						<td>data[i][accuracy]</td>
+						<td>int</td>
+						<td>Genauigkeit (Genau &gt; Ungenau)</td>
+					</tr>
+					<tr>
+						<td>data[i][lat]</td>
+						<td>float</td>
+						<td>Breitengrad</td>
+					</tr>
+					<tr>
+						<td>data[i][lon]</td>
+						<td>float</td>
+						<td>Längengrad</td>
+					</tr>
+				</tbody>
+			</table>		
+		</div>
+		<div class="item" id="method-sms">
+			<h4>SMS</h4>
+			<p><code>sms</code></p>
+			<p>
+				Versendet eine SMS-Nachricht. Diese Methode ist kostenpflichtig.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>from</td>
+						<td>str[11]|tel[16]</td>
+						<td>Der gewünschte Absender (optional)</td>
+					</tr>
+					<tr>
+						<td>to</td>
+						<td>tel[15]</td>
+						<td>Emfänger-Nummer (gemäß ITU-T E.123)</td>
+					</tr>
+					<tr>
+						<td>ref</td>
+						<td>str</td>
+						<td>Referenz für Antworten</td>
+					</tr>
+					<tr>
+						<td>callback</td>
+						<td>str</td>
+						<td>Callback-URL für SMS-Antworten. Noch nicht implementiert.</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+				</tbody>
+			</table>
+		</div>
+		<div class="item" id="method-bank">
+			<h4>Bank</h4>
+			<p><code>bank</code></p>
+			<p>
+				Prüft Bankdaten auf Plausibilität.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>country</td>
+						<td>[de]</td>
+						<td>Das Land des Bankdatenformates</td>
+					</tr>
+					<tr>
+						<td>bank</td>
+						<td>int[8]</td>
+						<td>Die Bankleitzahl</td>
+					</tr>
+					<tr>
+						<td>account</td>
+						<td>int[10]</td>
+						<td>Die Kontonummer (optional)</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+					<tr>
+						<td>bank</td>
+						<td>array</td>
+						<td>Der Bankdatensatz</td>
+					</tr>
+					<tr>
+						<td>bank[id]</td>
+						<td>int[8]</td>
+						<td>Die Bankleitzahl</td>
+					</tr>
+					<tr>
+						<td>bank[name]</td>
+						<td>str</td>
+						<td>Name der Bank</td>
+					</tr>
+					<tr>
+						<td>bank[city]</td>
+						<td>str</td>
+						<td>Stadt</td>
+					</tr>
+					<tr>
+						<td>bank[bic]</td>
+						<td>str</td>
+						<td>Der BIC der Bank</td>
+					</tr>
+					<tr>
+						<td>account</td>
+						<td>array</td>
+						<td>Der Kontodatensatz</td>
+					</tr>
+					<tr>
+						<td>account[id]</td>
+						<td>int[10]</td>
+						<td>Die Kontonummer</td>
+					</tr>
+				</tbody>
+			</table>
+		</div>
+		<div class="item" id="method-bank">
+			<h4>Boxcar</h4>
+			<p><code>boxcar</code></p>
+			<p>
+				Sendet eine Push-Notification via Boxcar. Ist der Boxcar-user nicht subskribiert, wird statt der Nachricht eine Subskriptions-Anfrage gesendet.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>to</td>
+						<td>str</td>
+						<td>E-Mail-Adresse des Boxcar-Accounts</td>
+					</tr>
+					<tr>
+						<td>from</td>
+						<td>str</td>
+						<td>Absender</td>
+					</tr>
+					<tr>
+						<td>message</td>
+						<td>str</td>
+						<td>Die Nachricht</td>
+					</tr>
+					<tr>
+						<td>url</td>
+						<td>str</td>
+						<td>Die URL die aufgerufen werden soll</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+				</tbody>
+			</table>
+		</div>
+		<div class="item" id="method-postcode-match">
+			<h4>Postcode-Match</h4>
+			<p><code>postcodematch</code></p>
+			<p>
+				Liefert die Schwerpunkt-Koordinaten aller Postleizahlengebiete innerhalb eines Bereiches. 
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>bbox_n</td>
+						<td>float</td>
+						<td>Maximale Latitude</td>
+					</tr>
+					<tr>
+						<td>bbox_s</td>
+						<td>float</td>
+						<td>Minimale Latitude</td>
+					</tr>
+					<tr>
+						<td>bbox_e</td>
+						<td>float</td>
+						<td>Maximale Longitude</td>
+					</tr>
+					<tr>
+						<td>bbox_w</td>
+						<td>float</td>
+						<td>Minimale Longitude</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+					<tr>
+						<td>postcodes</td>
+						<td>array</td>
+						<td>Ergebnisse</td>
+					</tr>
+					<tr>
+						<td>postcodes[i]</td>
+						<td>array</td>
+						<td>Ergebnis</td>
+					</tr>
+					<tr>
+						<td>postcodes[i][postcode]</td>
+						<td>str</td>
+						<td>Postleitzahl</td>
+					</tr>
+					<tr>
+						<td>postcodes[i][lat]</td>
+						<td>float</td>
+						<td>Latitude des Schwerpunktes</td>
+					</tr>
+					<tr>
+						<td>postcodes[i][lon]</td>
+						<td>float</td>
+						<td>Longitude des Schwerpunktes</td>
+					</tr>
+				</tbody>
+			</table>
+		</div>
+		<div class="item" id="method-postcode-shape">
+			<h4>Postcode-Shape</h4>
+			<p><code>postcodeshape</code></p>
+			<p>
+				Gibt eine Näherung an die geografische Definition eines Postleitzahlengebietes aus.
+			</p>
+			<h5>Parameter</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>apikey</td>
+						<td>str[20]</td>
+						<td>Der API Key</td>
+					</tr>
+					<tr>
+						<td>postcode</td>
+						<td>str</td>
+						<td>Die Postleitzahl des Gebietes</td>
+					</tr>
+				</tbody>
+			</table>
+			<h5>Ausgabe</h5>
+			<table class="docs">
+				<thead>
+					<tr>
+						<td>Parameter</td>
+						<td>Typ</td>
+						<td>Beschreibung</td>
+					</tr>					
+				</thead>
+				<tbody>
+					<tr>
+						<td>status</td>
+						<td>bool</td>
+						<td>Fehlerindikator</td>
+					</tr>
+					<tr>
+						<td>postcode</td>
+						<td>str</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>center</td>
+						<td>array</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>center[lat]</td>
+						<td>flaot</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>center[lon]</td>
+						<td>flaot</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>bbox</td>
+						<td>array</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>bbox[n]</td>
+						<td>float</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>bbox[s]</td>
+						<td>float</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>bbox[w]</td>
+						<td>float</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>bbox[e]</td>
+						<td>float</td>
+						<td></td>
+					</tr>
+					<tr>
+						<td>shape</td>
+						<td>array</td>
+						<td>Alle Shapes dieses Postleitzahlengebietes</td>
+					</tr>
+					<tr>
+						<td>shape[i]</td>
+						<td>array</td>
+						<td>Ein Shape des Postleitzahlengebietes</td>
+					</tr>
+					<tr>
+						<td>shape[i][j]</td>
+						<td>array</td>
+						<td>Ein Punkt des Shapes</td>
+					</tr>
+					<tr>
+						<td>shape[i][j][lat]</td>
+						<td>array</td>
+						<td>Die Latitude des Punktes</td>
+					</tr>
+					<tr>
+						<td>shape[i][j][lon]</td>
+						<td>array</td>
+						<td>Die Longitude des Punktes</td>
+					</tr>
+				</tbody>
+			</table>
+		</div>
+	</div>
+	<div class="item" id="api-errors">
+		<h3>Fehlercode</h3>
+		<p>
+			Wenn der Ausgabeparameter <code>status</code> einen Fehler indiziert, werden alle weiteren Ausgabeparameter ersetzt durch die Parameter <code>code</code> und <code>msg</code>. 
+		</p>
+		<table class="docs">
+			<thead>
+				<tr>
+					<td>Parameter</td>
+					<td>Typ</td>
+					<td>Beschreibung</td>
+				</tr>					
+			</thead>
+			<tbody>
+				<tr>
+					<td>status</td>
+					<td>bool</td>
+					<td>Fehlerindikator</td>
+				</tr>
+				<tr>
+					<td>code</td>
+					<td>int[3]</td>
+					<td>Fehlercode</td>
+				</tr>
+				<tr>
+					<td>msg</td>
+					<td>str</td>
+					<td>Fehlermeldung</td>
+				</tr>
+				<tr>
+					<td>result</td>
+					<td></td>
+					<td>Optionale weitere Daten</td>
+				</tr>
+			</tbody>
+		</table>
+		<h4>Fehlercodes</h4>
+		<table class="docs">
+			<thead>
+				<tr>
+					<td>Code</td>
+					<td>Bedeutung</td>
+				</tr>					
+			</thead>
+			<tbody>
+				<tr>
+					<td>900</td>
+					<td>Die aufgerufene Methode existiert nicht</td>
+				</tr>
+				<tr>
+					<td>901</td>
+					<td>Der API-Key ist ungültig</td>
+				</tr>
+				<tr>
+					<td>902</td>
+					<td>Fehler in externer API</td>
+				</tr>
+				<tr>
+					<td>903</td>
+					<td>Encoding-Problem: Ein Nicht-UTF-8-Zeichen hat den Parser gestoppt</td>
+				</tr>
+				<tr>
+					<td>904</td>
+					<td>Es wurden keine gültigen JSON-Daten im POST-Request gefunden</td>
+				</tr>
+				<tr>
+					<td>910</td>
+					<td>Ungültige Eingabemethode</td>
+				</tr>
+				<tr>
+					<td>911</td>
+					<td>Die eingegebenen Daten reichen nicht aus, um die Adresse zu bestimmen</td>
+				</tr>
+				<tr>
+					<td>912</td>
+					<td>Die Adresse wurde nicht gefunden</td>
+				</tr>
+				<tr>
+					<td>913</td>
+					<td>Für diese Adresse wurden keine Koordinaten gefunden</td>
+				</tr>
+				<tr>
+					<td>914</td>
+					<td>Die Koordinaten für diese Adresse sind nicht eindeutig</td>
+				</tr>
+				<tr>
+					<td>921</td>
+					<td>Ungültige Koordinaten</td>
+				</tr>
+				<tr>
+					<td>922</td>
+					<td>Keine Route gefunden</td>
+				</tr>
+				<tr>
+					<td>930</td>
+					<td>Keine Verbindung zum Gateway</td>
+				</tr>
+				<tr>
+					<td>931</td>
+					<td>Empfänger fehlerhaft</td>
+				</tr>
+				<tr>
+					<td>932</td>
+					<td>Absenderkennung zu lang</td>
+				</tr>
+				<tr>
+					<td>933</td>
+					<td>Nachrichtentext zu lang</td>
+				</tr>
+				<tr>
+					<td>934</td>
+					<td>Messagetyp nicht korrekt</td>
+				</tr>
+				<tr>
+					<td>935</td>
+					<td>Falscher SMS-Typ</td>
+				</tr>
+				<tr>
+					<td>936</td>
+					<td>Fehler bei Login</td>
+				</tr>
+				<tr>
+					<td>937</td>
+					<td>Guthaben zu gering</td>
+				</tr>
+				<tr>
+					<td>938</td>
+					<td>Netz wird von Route nicht unterstützt</td>
+				</tr>
+				<tr>
+					<td>939</td>
+					<td>Feature nicht über diese Route möglich</td>
+				</tr>
+				<tr>
+					<td>940</td>
+					<td>Ungültige BLZ</td>
+				</tr>
+				<tr>
+					<td>941</td>
+					<td>Ungültige Kontonummer</td>
+				</tr>
+				<tr>
+					<td>942</td>
+					<td>Ungültiges Land</td>
+				</tr>
+				<tr>
+					<td>945</td>
+					<td>Ungültiger Empfänger</td>
+				</tr>
+				<tr>
+					<td>946</td>
+					<td>Keine Nachricht angegeben</td>
+				</tr>
+				<tr>
+					<td>947</td>
+					<td>Der Empfänger ist nicht subskribiert</td>
+				</tr>
+				<tr>
+					<td>948</td>
+					<td>Der Empfänger hat den Dienst abgeschaltet</td>
+				</tr>
+				<tr>
+					<td>950</td>
+					<td>Die Postleitzahl ist ungültig.</td>
+				</tr>
+				<tr>
+					<td>951</td>
+					<td>Für diese Postleitzahl gibt es keine Shapes.</td>
+				</tr>
+				<tr>
+					<td>952</td>
+					<td>In diesem Bereich wurden keine Postleitzahlen gefunden.</td>
+				</tr>
+				<tr>
+					<td>953</td>
+					<td>Dieser Bereich enthält zu viele Postleitzahlen.</td>
+				</tr>
+				
+				<tr>
+					<td>999</td>
+					<td>Unbekannter Fehler</td>
+				</tr>
+			</tbody>
+		</table>
+	</div>
+	</body>
+</html>