Erfahre alles zu API Gateways in unserem kostenlosen eBook.
Öffentliche APIs und Beispiel REST Web Services
Eine Übersicht unserer public APIs findest auf der OpenAPI Übersicht unseres API Gateways.
Viel Spaß beim Experimentieren und Testen. Melde dich gerne bei Problemen und mit Anregungen bei mit(bayer@predic8.de).
Fruitshop REST API
Das Fruit Shop API wurde gemäß den REST Prinzipien erstellt und dient als Design Vorlage für RESTful APIs. Die API ist mit OpenAPI beschrieben und bietet eine Swagger UI zum experimentieren an. Du kannst nicht nur GET Abfragen durchführen, sondern auch über POST, PUT und DELETE die Daten des APIs verändern. Du benötigst dafür keine Zugangsdaten.
Traue dich und setze die folgende POST Abfrage ab:
curl -v -X POST "https://api.predic8.de/shop/v2/products" \
-H "Content-Type: application/json" \
-d '{"name":"Dauerlutscher","price":1.99}'
Die Daten des APIs werden regelmäßig zurückgesetzt, so dass du nichts kaputt machen kannst, und wenn doch haben wir einen Fehler gemacht :-).
- Liste der Produkte
GET https://api.predic8.de/shop/v2/products - Einzelnes Produkt
GET https://api.predic8.de/shop/v2/products/13 - Photo eines Produktes
GET https://api.predic8.de/shop/v2/products/13/image - Einzelner Hersteller
GET https://api.predic8.de/shop/v2/vendors/3 - Eine Bestellung
GET https://api.predic8.de/shop/v2/orders/4
Beispiele für POST, PUT und PATCH findest du hier.
API zum Schutz vor Datenverlust
Mit der Data Loss Prevention API kannst du Informationen zu bestimmten Datenfeldern abrufen. So erfährst du, wie Inhalte typischerweise eingestuft werden – zum Beispiel als personenbezogen oder vertraulich. Diese Einstufung kann ein API Gateway nutzen, um sensible Daten zu maskieren und dadurch Datenverlust zu verhindern.
GET https://api.predic8.de/dlp/fields/age
GET https://api.predic8.de/dlp/fields/gender
GET https://api.predic8.de/dlp/fields/address
Mehrere Felder lassen sich auch in einer Anfrage prüfen:
curl -X 'POST' \
'https://api.predic8.de/dlp/fields' \
-H 'Content-Type: application/json' \
-d '{ "fieldNames": [ "email", "card_number", "last_name" ] }'
Quellen
Architectural Styles and
the Design of Network-based Software Architectures
Dissertation von Thomas Roy Fielding