From bce8ddcefcf02c27c2698d2e2603b9cd06ff7ff8 Mon Sep 17 00:00:00 2001 From: Nico Kroll Date: Thu, 2 May 2024 09:01:23 +0200 Subject: [PATCH] First draft of our decisions --- src/v2/README.md | 62 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/src/v2/README.md b/src/v2/README.md index eb9ab70..fd85dcf 100644 --- a/src/v2/README.md +++ b/src/v2/README.md @@ -1 +1,63 @@ *Currently under heavy development* + +## Overview + +Our API follows the REST-API-Principles. + +# URI structure / Products + +We will have a bunch of use cases. Some API consumers want to develop +- an appointment making service +- a shop integration with prices, stocks and more +- create and update orders +- update vehicle information +- many more cases... + +Because of the variety of requirements, we offer different API products. The naming results to "/api//...". This allows us to provide different views of the same resource depending on your use case and permissions. + +# Domain + +We as [PRM Software AG](https://prm-ag.de) offer you this API for our customers and act in that case as a service provider. For requesting the data of a trader, it is neccessary to get the permissions of each trader. + +Each trader has it's own domain or a generated one by us. The base-URI could be: +- https://example-store.de/ +- https://onlineservices.prod.rz2.prm-ag.de/asd8s76df9/ + +# Methods + +With each call you'll interact with ressources. The verb you do will be the HTTP method. +- GET /api/core/users -> Retrieve all customers +- GET /api/core/users/1 -> Retrieve data of customer 1 +- GET /api/core/users/1/permissions -> Retrieve all permissions of customer 1 +- DELETE /api/core/users/1 -> Delete customer 1 +- BAN /api/core/users/1 -> Ban customer 1 +- NOTIFY-GTC-VIOLANCE /api/core/users/1 -> Notifies customer 1 for a violation of the terms and conditions + +# Authentication + +# Errors + +# Rate Limiting + +# Pagination + +# Sorting + +# Response Resolution + +# Caching + + + + + +## TODO + +GET /api/shop/vehicles +GET /api/tyrepro/vehicles +GET /api/tiretask/vehicles +GET /api/openitem/vehicles +GET /api/rdks/vehicles + +GET /api/vehicles/shopview +GET /api/vehicles/tyreproview