Placetel API
Placetel API
Placetel API
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Placetel</strong> <strong>API</strong><br />
Programmierschnittstelle<br />
(Stand: Juni 2012)<br />
www.placetel.de - DIE TELEFONANLAGE AUS DER CLOUD
INHALTSÜBERSICHT<br />
1 Einleitung ............................................................................................................ 3 <br />
1.1 Rahmenbedingungen ......................................................................................................................................... 3 <br />
1.1.1 Technischen Informationen ................................................................................................................... 3 <br />
2 <strong>API</strong> Funktionen ................................................................................................... 4 <br />
2.1.1 Test ..................................................................................................................................................................... 4 <br />
2.1.2 getNumbers ................................................................................................................................................... 4 <br />
2.1.3 getVoIPUsers ............................................................................................................................................... 5 <br />
2.1.4 getPrompts .................................................................................................................................................... 6 <br />
2.1.5 getContacts ................................................................................................................................................... 6 <br />
2.1.6 getIncomingCallsByDay .......................................................................................................................... 7 <br />
2.1.7 getCDRsByDay ........................................................................................................................................... 8 <br />
2.1.8 getRoutingPlans ......................................................................................................................................... 9 <br />
2.1.9 getRouting ..................................................................................................................................................... 9 <br />
2.1.10 initiateCall ................................................................................................................................................... 11 <br />
2.1.11 setRouting_callForward ...................................................................................................................... 12 <br />
2.1.12 setRouting_RoutingPlan .................................................................................................................... 13 <br />
www.placetel.de Dokumentenname Seite 2
1 Einleitung<br />
Dieses Dokument beschreibt die Funktionen der <strong>Placetel</strong> <strong>API</strong>. Die <strong>API</strong> bietet Zugriff<br />
auf grundlegende <strong>Placetel</strong> Funktionen.<br />
1.1 Rahmenbedingungen<br />
Dieses Kapitel definiert die wichtigsten Rahmenbedingungen über den Zugriff auf die<br />
<strong>Placetel</strong> <strong>API</strong>.<br />
- Zugriff auf die <strong>API</strong> Funktionen erhalten Sie mit einem sog. <strong>API</strong> Key. Dieser<br />
Key wird Ihnen nach der Freischaltung der <strong>API</strong> per Mail zugesendet.<br />
- Die <strong>API</strong> erlaubt nur eine Anfrage alle 2 Sekunden. Jede zusätzliche Anfrage<br />
wird mit einer Fehlermeldung beantwortet. Bei höheren Anforderungen<br />
kontaktieren Sie den <strong>Placetel</strong> Service.<br />
- Zudem ist der Zugriff auf 100 Requests pro Tag beschränkt. Bei höheren<br />
Anforderungen kontaktieren Sie den <strong>Placetel</strong> Service.<br />
- Der Zugriff muss über HTTPS erfolgen.<br />
- Parameter werden nur per POST entgegengenommen.<br />
1.1.1 Technischen Informationen<br />
Zugriffswerte Erlaubte Werte Beschreibung<br />
<strong>API</strong> Endpunkt api.placetel.de URL zum Zugriff auf die <strong>API</strong><br />
Protokoll HTTPS Zugang zur <strong>API</strong> erfolgt über<br />
HTTPS<br />
Parameter POST Parameter werden nur über<br />
POST angenommen<br />
api_key<br />
Eigener kundenindividueller<br />
Schlüssel<br />
Der <strong>API</strong> Key wird von <strong>Placetel</strong><br />
zur Verfügung gestellt<br />
Sie versenden ein Kommando an die <strong>Placetel</strong> <strong>API</strong> per HTTPS und POST an den<br />
entsprechenden <strong>API</strong> Endpunkt.<br />
Die <strong>Placetel</strong> Antwort besteht aus einer HTML/XML/JSON Struktur mit den<br />
gewünschten Daten.<br />
Requestart Ergebnis Beschreibung<br />
https://api.placetel.de/test HTML Ergebnisse werden als HTML / Plain<br />
Text formatiert ausgegeben<br />
https://api.placetel.de/test.xml XML Ergebnisse werden als XML<br />
formatiert ausgegeben<br />
https://api.placetel.de/test.json JSON Ergebnisse werden als JSON<br />
ausgegeben<br />
www.placetel.de Dokumentenname Seite 3
2 <strong>API</strong> Funktionen<br />
2.1.1 Test<br />
Testet die Verbindung zur <strong>Placetel</strong> <strong>API</strong>. Der api_key wird hier geprüft.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/test<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/test.xml -d api_key=xyz....<br />
Antwort:<br />
<br />
<br />
1<br />
success<br />
test login successful<br />
<br />
2.1.2 getNumbers<br />
Gibt eine Liste aller aktiven Rufnummern im betreffenden <strong>Placetel</strong> Benutzerkonto<br />
aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getNumbers<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
www.placetel.de Dokumentenname Seite 4
s.u.<br />
Werte siehe Beispiel<br />
„error“ steht für Fehler.<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getNumbers.xml -d api_key=xyz....<br />
Antwort:<br />
<br />
<br />
022123434384<br />
23434384<br />
0221<br />
<br />
<br />
2.1.3 getVoIPUsers<br />
Gibt eine Liste aller VoIP Benutzer im betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getVoIPUsers<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
name z.B. Peter Test Name des VoIP Benutzers<br />
stype<br />
1 | 3 = Standard<br />
VoIP Benutzertyp<br />
2 = BLF<br />
7 = FAX<br />
8 = TRUNK<br />
Uid<br />
z.B.<br />
7772323232@sip.finotel.com<br />
SIP URI des Benutzers<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getVoIPUsers.xml -d api_key=xyz....<br />
Antwort:<br />
<br />
Fax<br />
7<br />
772347324@sip.finotel.com<br />
<br />
<br />
<br />
www.placetel.de Dokumentenname Seite 5
2.1.4 getPrompts<br />
Gibt eine Liste aller Voice Prompts (Ansagen) im betreffenden <strong>Placetel</strong><br />
Benutzerkonto aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getPrompts<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
id z.B. 1,2,1102, ... Eindeutige ID der Ansage<br />
name z.B. Testansage Name der Ansage<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getPrompts.xml -d api_key=xyz....<br />
Antwort:<br />
<br />
10613<br />
Ansage Test 12<br />
<br />
2.1.5 getContacts<br />
Gibt eine Liste aller Kontakte im betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getContacts<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
www.placetel.de Dokumentenname Seite 6
s.u.<br />
Werte siehe Beispiel<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getContacts.xml -d api_key=xyz....<br />
Antwort:<br />
<br />
<br />
02212238238<br />
01712323823<br />
089348348<br />
01513448348<br />
<br />
Peter<br />
Tester<br />
<br />
2.1.6 getIncomingCallsByDay<br />
Gibt eine Liste aller eingegangenen Anrufe pro Tag für das betreffenden <strong>Placetel</strong><br />
Benutzerkonto aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getIncomingCallsByDay<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
year z.B. 2012 Wenn dieser Wert nicht gesetzt<br />
ist wird das aktuelle Jahr<br />
angenommen<br />
month 5 Wenn dieser Wert nicht gesetzt<br />
ist wird der aktuelle Monat<br />
angenommen<br />
day 2 Wenn dieser Wert nicht gesetzt<br />
ist wird der aktuelle Tag<br />
angenommen<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
callType 1 = Voicemail<br />
2 = Verpasster Anruf<br />
3 = Blockierter Anruf<br />
4 = Angenommener Anruf<br />
5 = Fax<br />
s.u.<br />
Werte siehe Beispiel<br />
www.placetel.de Dokumentenname Seite 7
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getIncomingCallsByDay.xml -d api_key=xyz.... -d month=4 -d day=2<br />
Antwort:<br />
<br />
2<br />
<br />
022123823833<br />
2012-04-02T08:10:50Z<br />
022129191999<br />
<br />
2.1.7 getCDRsByDay<br />
Gibt eine Liste aller Anrufe des Einzelverbindungsnachweises pro Tag für das<br />
betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getCDRsByDay<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
year z.B. 2012 Wenn dieser Wert nicht gesetzt<br />
ist wird das aktuelle Jahr<br />
angenommen<br />
month 5 Wenn dieser Wert nicht gesetzt<br />
ist wird der aktuelle Monat<br />
angenommen<br />
day 2 Wenn dieser Wert nicht gesetzt<br />
ist wird der aktuelle Tag<br />
angenommen<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
s.u.<br />
Werte siehe Beispiel<br />
www.placetel.de Dokumentenname Seite 8
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getCDRsByDay.xml -d api_key=xyz.... -d month=4 -d day=2<br />
Antwort:<br />
<br />
0.155<br />
placetel_profi / Germany Mobile - SIP Dialout <br />
77723234234<br />
4<br />
01517334734<br />
2012-04-02T08:40:25Z<br />
<br />
2.1.8 getRoutingPlans<br />
Gibt eine Liste aller Routingpläne für das betreffenden <strong>Placetel</strong> Benutzerkonto aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getRoutingPlans<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
id z.B. 1,2,1012,... Eindeutige ID des Routingplans<br />
name z.B. Testplan Name des Routingplans<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getRoutingPlans.xml -d api_key=xyz....<br />
Antwort:<br />
<br />
1<br />
Testplan<br />
<br />
2.1.9 getRouting<br />
www.placetel.de Dokumentenname Seite 9
Gibt eine Liste der Routingeinstellungen für die betreffende <strong>Placetel</strong> Rufnummern<br />
aus.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/getRoutingPlans<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
number z.B. 0221123456 <strong>Placetel</strong> Rufnummer für die das<br />
Routing bestimmt werden soll<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
routing<br />
1 = Weiterleitung<br />
2 = Fax<br />
3 = Routingplan<br />
5 = IVR<br />
6 = Konferenz<br />
7 = T38 Fax<br />
8 = Warteschlange<br />
9 = Eigene Applikation<br />
10 = Gruppe<br />
routing-settings 1 = Direkte Weiterleitung<br />
3 = Weiterleitung auf Mailbox<br />
4 = Ansage abspielen und<br />
auflegen (forward-voiceprompt-id)<br />
5 = Ansage abspielen und<br />
weiterleiten (forward-voiceprompt-id)<br />
voice-prompt-id z.B. 1,2,... ID der Ansage (siehe<br />
getPrompts)<br />
forward-voice-<br />
z.B. 1,2,...<br />
ID der Ansage (siehe<br />
prompt-id<br />
target1 ... target5<br />
z.B.<br />
77723823@sip.finotel.com<br />
oder<br />
77723823@sip.finotel.com,0<br />
22123823@pstn, ...<br />
getPrompts)<br />
Eins oder mehrere Ziele für die<br />
Weiterleitung der Rufnummer<br />
Wenn mehrere Ziele parallel<br />
klingeln sind diese durch<br />
Komma getrennt. Ziele im<br />
Telefonnetz enden auf @pstn<br />
Klingelzeit pro Ziel<br />
ringing-time1 ... z.B. 5,10,20,....<br />
ringing-time5<br />
routing-plan z.B. 1,2,23,233,... Eindeutige ID des aktiven<br />
Routingplan (siehe<br />
getRoutingplans)<br />
www.placetel.de Dokumentenname Seite 10
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/getRouting.xml -d api_key=xyz.... -d number=0221123456<br />
Antwort:<br />
<br />
12<br />
40<br />
10<br />
120<br />
60<br />
60<br />
1<br />
2<br />
1<br />
77701223445@sip.finotel.com<br />
<br />
<br />
<br />
<br />
11<br />
<br />
2.1.10 initiateCall<br />
Löst einen Callback Anruf auf der gewünschten Sip Nebenstelle aus und verbindet<br />
den Anrufer dann mit der Zielrufnummer.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
/api/initiateCall<br />
api_key<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
sipuid<br />
z.B.<br />
777332423@sip.finotel.com<br />
SIP Nebenstelle die den Anruf<br />
initiieren will<br />
target z.B. 0221123456 Zielrufnummer die angerufen<br />
werden soll<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
Beispiel:<br />
Anfrage:<br />
curl https://api.placetel.de/api/initiateCall.xml -d api_key=xyz.... -d target=0221123456 -d<br />
sipuid=7723723723@sip.finotel.com<br />
www.placetel.de Dokumentenname Seite 11
2.1.11 setRouting_callForward<br />
Ändert das Callrouting für die gewünschte Rufnummer.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
/api/setRouting_callForward<br />
api_key<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
number z.B. 022123434 Rufnummer für die das Routing<br />
angepasst werden soll<br />
routing<br />
1 = Weiterleitung<br />
2 = Fax<br />
3 = Routingplan<br />
5 = IVR<br />
6 = Konferenz<br />
7 = T38 Fax<br />
8 = Warteschlange<br />
9 = Eigene Applikation<br />
10 = Gruppe<br />
routing_settings 1 = Direkte Weiterleitung<br />
3 = Weiterleitung auf Mailbox<br />
4 = Ansage abspielen und<br />
auflegen (forward-voiceprompt-id)<br />
5 = Ansage abspielen und<br />
weiterleiten (forward-voiceprompt-id)<br />
voice_prompt_id z.B. 1,2,... ID der Ansage (siehe<br />
getPrompts)<br />
forward_voiceprompt_id<br />
z.B. 1,2,...<br />
ID der Ansage (siehe<br />
getPrompts)<br />
target1 ... target5 z.B.<br />
77723823@sip.finotel.com<br />
oder<br />
77723823@sip.finotel.com,0<br />
22123823@pstn, ...<br />
Eins oder mehrere Ziele für die<br />
Weiterleitung der Rufnummer<br />
Wenn mehrere Ziele parallel<br />
klingeln sind diese durch<br />
Komma getrennt. Ziele im<br />
Telefonnetz enden auf @pstn<br />
ringing_time1 ... z.B. 5,10,20,....<br />
Klingelzeit pro Ziel<br />
ringing_time5<br />
routing_plan z.B. 1,2,23,233,... Eindeutige ID des aktiven<br />
Routingplan (siehe<br />
getRoutingplans)<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
www.placetel.de Dokumentenname Seite 12
Beispiele:<br />
Anfrage:<br />
Anruf wird zuerst weitergeleitet auf 2 parallele Ziele mit einer Klingelzeit von 10 Sekunden und<br />
danach falls keine Verbindung zustande kommt an eine Mobilfunkrufnummer mit 20 Sekunden<br />
Klingelzeit.<br />
curl https://api.placetel.de/api/setRouting_callForward.xml -d api_key=xyz.... -d routing=1 -d<br />
routing_settings=1 –d target1=777238@sip.finotel.com,0221823@pstn -d ringing_time1=10 –d<br />
target2=0151343242@pstn -d ringing_time2=20 –d number=02212348348<br />
Mailbox mit der Ansage (ID=12) wird aktiviert<br />
curl https://api.placetel.de/api/setRouting_callForward.xml -d api_key=xyz.... -d routing=1 -d<br />
routing_settings=3 –d voice_prompt_id=12 & number=0232232323<br />
Umschaltung der Rufnummer auf den Routingplan mit der ID=26<br />
curl https://api.placetel.de/api/setRouting_callForward.xml -d api_key=xyz.... -d routing=3 -d<br />
routing_plan=26 & number=0232232323<br />
2.1.12 setRouting_RoutingPlan<br />
Ändert den Routingplan für die gewünschte Rufnummer.<br />
Parameter Erlaubte Werte Beschreibung<br />
URL<br />
api_key<br />
/api/setRouting_callForward<br />
Von <strong>Placetel</strong> zur Verfügung<br />
gestellter Zugriffsschlüssel<br />
number z.B. 022123434 Rufnummer für die das Routing<br />
angepasst werden soll<br />
routing_plan z.B. 1,2,23,233,... Eindeutige ID des aktiven<br />
Routingplan (siehe<br />
getRoutingplans)<br />
Rückgabewerte Erlaubte Werte Beschreibung<br />
result -1 | 1 Eine „1“ steht für Ok.<br />
Eine „-1“ für einen Fehler<br />
result-code success| error „success“ steht für erfolgreich.<br />
„error“ steht für Fehler.<br />
www.placetel.de Dokumentenname Seite 13
Beispiele:<br />
Anfrage:<br />
Umschaltung der Rufnummer auf den Routingplan mit der ID=26<br />
curl https://api.placetel.de/api/setRouting_RoutingPlan.xml -d api_key=xyz.... -d routing_plan=26 &<br />
number=0232232323<br />
www.placetel.de Dokumentenname Seite 14
<strong>Placetel</strong>.de<br />
Die <strong>Placetel</strong>-Telefonanlage aus der Cloud gehört zum innovativen Produktportfolio der finocom<br />
AG. Die finocom AG zählt zu den führenden Unternehmen im Bereich sprachbasierter Cloud-<br />
Services für Geschäftskunden.<br />
finocom AG<br />
Gustav-Heinemann-Ufer 58<br />
50968 Köln<br />
E-Mail: info@placetel.de<br />
Tel.: 0221/29 19 1999<br />
www.placetel.de - DIE TELEFONANLAGE AUS DER CLOUD<br />
www.placetel.de Dokumentenname Seite 15<br />
www.0800.de