Zugriff auf Konto und Projekt
Verwenden Sie ein aktiviertes API-Konto über HTTPS von einer zulässigen IP-Adresse aus. Das Projekt muss diesem Konto gehören und darf nicht gelöscht sein. Verwenden Sie die eindeutige Projekt-ID aus dem Ablauf für Portierungsaufträge, nicht die numerische Datenbank-ID oder eine Rufnummer. Kodieren Sie die Projekt-ID beim Erstellen einer Anfrage für die Verwendung in einer URL.
Anfrage
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
"https://api.multitel.net/v3/lnp/project/$PROJECT_ID"Diese Antwort vertraulich behandeln
Die vollständige Antwort enthält Abrechnungsinformationen des abgebenden Anbieters, darunter den gespeicherten Wert für billing_pin, das Abrechnungskonto sowie Angaben zu Telefon, Anschrift, Unternehmen und autorisierter Kontaktperson. Die API maskiert diese Felder nicht. Fordern Sie nur den Status oder die Rufnummernliste an, wenn dies für Ihren Ablauf ausreicht. Speichern Sie die vollständige Detailantwort weder im Browserspeicher noch in Analysesystemen, öffentlichen Protokollen oder Screenshots für den Support, und zeigen Sie nur die Felder an, die ein berechtigter Kunde benötigt.
Aufbau der Antwort
Fiktives Beispiel mit ausgewählten Feldern; die Antwort kann zusätzliche Felder enthalten.
{
"status": {
"code": 200,
"msg": "Project Detail"
},
"response": {
"project": {
"id": 11,
"uniqueid": "PROJECT_EXAMPLE",
"project_name": "Example transfer",
"location": "US",
"status": 0,
"status_str": "Pending"
},
"counts": {
"total": 0,
"pending": 0,
"in_progress": 0,
"completed": 0,
"rejected": 0
},
"numbers": [],
"events": [],
"uploads": []
}
}Dieses bewusst unvollständige Beispiel lässt sämtliche Zugangsdaten für die Abrechnung und personenbezogenen Kontaktangaben aus. Dass sie im Beispiel fehlen, bedeutet nicht, dass sie in der tatsächlichen Antwort unkenntlich gemacht werden.
| Abschnitt | Inhalt |
|---|---|
| project | Numerische Datensatz-ID, eindeutige Projekt-ID, Projektname, Standort, gespeicherte Abrechnungs-, Kontakt- und Adressdaten, Erstellungszeitpunkt und abgeleiteter Status. Das bisherige Feld für den abgebenden Anbieter wird loosing_carrier geschrieben. |
| counts | Gesamtzahl der Rufnummerndatensätze sowie Zähler für Pending, In Progress, Completed und Rejected. |
| numbers | Dieselbe Feldauswahl für Rufnummern wie beim Endpunkt für die Rufnummernliste des Projekts, einschließlich Kundenkommentaren und gespeicherten Terminierungswerten. |
| events | Gespeicherte Ereignisdatensätze sowie Felder mit unverarbeiteten und geparsten Nutzdaten, vorbehaltlich der Sichtbarkeits- und Formatbeschränkungen des Ereignisendpunkts. |
| uploads | Dokumentmetadaten: numerische ID, upload_type, file_name, file_extension, date_created und ein relativer Wert für download_url. Auch diese URL erfordert eine Authentifizierung mit dem Konto. |
Zusammenfassung und Metadaten interpretieren
Bei der Ableitung des Status hat In Progress Vorrang, gefolgt von Pending, Completed und Rejected; als Rückfallwert dient Pending. Ein zusammenfassender Status von Completed kann auch dann vorliegen, wenn einzelne Rufnummern abgelehnt wurden. Prüfen Sie die Zähler und den Status der einzelnen Rufnummern, statt davon auszugehen, dass die Portierung jeder Rufnummer abgeschlossen ist.
Die Antwort enthält Dokumentmetadaten, keine Dateiinhalte. Sie bietet weder eine Seitennavigation noch einen Cursor für inkrementelle Abfragen. Die Detail- und Listenabfragen sind getrennte Lesevorgänge und bilden keinen garantiert transaktional konsistenten Datenstand. Datumsangaben bleiben in ihrer gespeicherten Form; eine Zeitzonenumrechnung ist nicht dokumentiert. Verwenden Sie für Projektrouten uniqueid; die numerische Projekt-ID kann nicht stattdessen verwendet werden.
Fehler und Einschränkungen
Prüfen Sie sowohl die HTTP-Antwort als auch status.code/status.msg. Bei einem fehlenden, gelöschten oder nicht zum Konto gehörenden Projekt wird der API-Code 404 mit der Meldung zurückgegeben, dass das Projekt nicht gefunden wurde. Authentifizierung und Beschränkungen für die Quell-IP gelten ebenfalls. Die Beispiele führen keine tatsächliche Anfrage aus, und eine erfolgreiche Antwort belegt nicht, dass ein Anbieter eine Portierung angenommen oder abgeschlossen hat.
Auswirkungen und Ablauf
Dies ist die kanonische Detailroute, die von der Ansicht für Portierungsaufträge im aktuellen Portal verwendet wird. Das Portal ordnet Felder für seine Benutzeroberfläche zu und verwendet eine eigene kundenspezifische Feldauswahl; gehen Sie nicht davon aus, dass die unverarbeitete API-Antwort mit den JSON-Daten oder der Darstellung des Portals identisch ist. Der geprüfte Detail-Handler verändert das Projekt nicht und löst weder direkt eine Anfrage an einen Anbieter noch eine Belastung aus.