Wiki-Quellcode von Schnittstellen

Version 98.1 von MACH ProForms GmbH am 09.12.2024

Zeige letzte Bearbeiter
1 Die MACH ProForms GmbH setzt bei der Produktstrategie auf den API-First Ansatz. D.h., dass perspektivisch alle Funktionen über eine API erreichbar und ansteuerbar sind.
2
3 ![[Schnittstellen|@Schnittstellen.jpg]]
4
5 # Übersicht der API's
6
7 ## Aktuelle API's
8
9 * Die Dokumentation zum Anlegen von „[[API-Keys|Main.02_FSSchnittstellen.09_API-Key]]“ für Nutzung der Schnittstellen
10 * Die Dokumentation der „[[Server-Information-API|Main.02_FSSchnittstellen.10_ServerInformationAPI]]“
11 * Die Dokumentation der „[[Search-API|Main.02_FSSchnittstellen.03_SearchAPI]]“
12 * Die Dokumentation der „[[Release-API|Main.02_FSSchnittstellen.02_ReleaseAPI]]“
13 * Die Dokumentation der „[[Submission-API|Main.02_FSSchnittstellen.01_SubmissionAPI]]“
14 * Die Dokumentation der „[[Error-API|Main.02_FSSchnittstellen.04_ErrorAPI]]“
15
16 ## Veraltete API's
17
18 * Die Dokumentation der „[[Search-API-Metaform|Main.02_FSSchnittstellen.06_SearchAPIMetaform]]“
19 * Die Dokumentation der „[[Massenverarbeitung von Formular-Eingängen-API|Main.02_FSSchnittstellen.08_MassenverarbeitungAPI]]“
20 * Die Dokumentation der „[[CMS-Schnittstelle|Main.02_FSSchnittstellen.05_CMSSchnittstelle]]“
21 * Die Dokumentation der „[[PDF Structure-API|Main.02_FSSchnittstellen.07_PDFStructureAPI]]“
22
23 # Versionierung
24
25 Grundsätzlich legen wir unsere API's für eine möglichst lange Betriebsphase und somit für eine lange Versionskompatibilität aus. Im Nachfolgenden finden Sie unsere Vorgehensweise im Detail.
26
27 Wir behalten (soweit technisch möglich) immer zwei Versionen online. Sobald eine neue Version hinzukommt, wird die älteste Version mit einem zeitlichen Horizont von mindestens 6 Monaten abgekündigt. Nach der Abkündigung wird die Version und alle beinhalteten Minor-Versionen nicht mehr erreichbar sein.
28
29 Eine neue **Major-Version (1.x)** kann Änderungen beinhalten, welche nicht mehr abwärtskompatibel sein müssen (Abhängig von Ihrer Implementierung). Dies sind z.B.:
30
31 * Authentifizierungsmethoden
32 * Umbenennung und Löschung von Endpunkten
33 * Löschung von HTTP-Methoden an vorhandenen Endpunkten
34 * Umbenennung und Löschung von Parametern
35 * Restrukturierung des Response-Objekt
36
37 Eine neue **Minor-Version (x.1)** ist per Definition abwärtskompatibel zur **Major-Version**. Dabei können sich aber folgende Dinge ändern:
38
39 * Zusätzliche Endpunkte
40 * Zusätzliche HTTP-Methoden an Endpunkten
41 * Weitere (optionale) Parameter für eine Abfrage (z.B. Filterfunktion)
42 * Erweitertes Response-Objekt
43
44 # Versionshistorie
45
46 Zu jeder API finden Sie als Unterknoten jeweils den "Release-Notes"-Artikel. Beispiel [[Submission-API|doc:.01_SubmissionAPI.Release-Notes.WebHome]].