Skip to content
Snippets Groups Projects
Commit b8605d94 authored by David Schwarzmann's avatar David Schwarzmann
Browse files

Merge branch 'rename-openapi' into 'main'

Adapt the schema URL for displaying/loading the api spec

Closes #67

See merge request !38
parents 24958b67 806c4b4c
No related branches found
No related tags found
1 merge request!38Adapt the schema URL for displaying/loading the api spec
......@@ -4,8 +4,6 @@
.idea/
dist/
spec/zustelldienst-bundled.yml
# Dependencies
node_modules/
......
......@@ -5,4 +5,4 @@ hide_table_of_contents: true
import ApiSpec from '@site/src/components/ApiSpec'
<ApiSpec gitlabProjectId={"1"} path={"openapi"} artifact={"zustelldienst.yml"} />
<ApiSpec gitlabProjectId={"1"} path={"submission-api"} artifact={"submission-api.yaml"} />
......@@ -12,7 +12,7 @@ Als Voraussetzungen hierfür ist es notwendig, Accounts für [API-Clients im Sel
## Abruf von Access Tokens beim OAuth-Dienst
Fast alle Anfragen an die FIT-Connect Submission API müssen authentifiziert werden.
Hierfür ist ein Access Token notwendig, das beim OAuth-Dienst über die hierfür vorgesehene `Token URL` abgerufen werden kann (siehe Abschnitt `AUTHENTICATION` in der [Schnittstellenspezifikation](../apis/delivery-service)).
Hierfür ist ein Access Token notwendig, das beim OAuth-Dienst über die hierfür vorgesehene `Token URL` abgerufen werden kann (siehe Abschnitt `AUTHENTICATION` in der [Schnittstellenspezifikation](../apis/submission-api)).
Für den Abruf von Access Tokens ist die [Konfiguration eines API-Client im Self-Service-Portal](../account.mdx) nötig.
Das Token kann anschließend bei Anfragen über den `Authorization` Header mitgeschickt werden.
......
......@@ -44,7 +44,7 @@ Weiterhin ist es notwendig, dass die Id der Einreichung und des zugehörigen Vor
```
Die Payload- und Header-Attribute des SET müssen wie oben beschrieben definiert werden (siehe markierte Zeilen).
Im dritten markierten Block wird das SET mit dem Schlüssel signiert und danach kann der serialisierte Wert an den [Zustelldienst](../../apis/delivery-service.mdx#post-/submissions/-submissionId-/events) gesendet werden.
Im dritten markierten Block wird das SET mit dem Schlüssel signiert und danach kann der serialisierte Wert an den [Zustelldienst](../../apis/submission-api.mdx#post-/submissions/-submissionId-/events) gesendet werden.
```java {3-10,12-16,22-24}
try {
......
......@@ -7,7 +7,7 @@ import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
## Eine neue Einreichung anlegen
Das Anlegen einer neuen Einreichung über die API erfordert den Versand einer [HTTP-POST-Nachricht](../../apis/delivery-service.mdx#post-/submissions), die definiert, an welchen Zustellpunkt der Einreichung versendet werden soll und welche Inhalte übermittelt werden sollen.
Das Anlegen einer neuen Einreichung über die API erfordert den Versand einer [HTTP-POST-Nachricht](../../apis/submission-api.mdx#post-/submissions), die definiert, an welchen Zustellpunkt der Einreichung versendet werden soll und welche Inhalte übermittelt werden sollen.
Die Inhalte umfassen hierbei die Identifikatoren der Anlagen als UUIDs und die Information, ob Fachdaten mit versendet werden oder nicht.
Die UUIDs der Anlagen müssen eindeutig sein und werden vom sendenden System festgelegt.
......
......@@ -6,7 +6,7 @@ sidebar_position: 8
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
Die Einreichung kann abgeschlossen werden, indem mit einem PUT auf den Endpunkt [/submissions/{submissionId}](../../apis/delivery-service.mdx#put-/submissions/-submissionId-) der Metadatensatz und der Fachdatensatz hochgeladen wird.
Die Einreichung kann abgeschlossen werden, indem mit einem PUT auf den Endpunkt [/submissions/{submissionId}](../../apis/submission-api.mdx#put-/submissions/-submissionId-) der Metadatensatz und der Fachdatensatz hochgeladen wird.
Diese PUT Methode kann nur folgreich durchgeführt werden, wenn folgende Bedingungen vorliegen:
- Es muss immer ein Metadatensatz hochgeladen werden
......
......@@ -16,7 +16,7 @@ Eine Einreichung, die über die Submission API übermittelt wird, besteht aus dr
- Ein optionaler Fachdatensatz (`data`), der die Daten eines Antrags oder Berichts enthält und einem im Zustellpunkt vorgegebenen Datenschema (`submissionSchema`) entspricht.
- Eine oder mehrere optionale Anlagen (`attachments`) ergänzend zum Fachdatensatz. Die können Nachweise in Form von PDF-Urkunden, Bauanlagen wie XPlanGML-basierte Baupläne oder auch technische Laufzettel vom sendenden System sein.
- Ein obligatorischer Metadatensatz `metadata`), der die Einreichung beschreibt und zusammen mit der Submission API im Rahmen von FIT-Connect standardisiert wird.
Dieser enthält Strukturinformationen zum Fachdatensatz und Anlagen sowie prozessrelevante Informationen wie die Authentizierung des Absenders, Zahlungsinformationen (z.B. von Verfahrensgebühren) oder Rückkanalwünschen.
Dieser enthält Strukturinformationen zum Fachdatensatz und Anlagen sowie prozessrelevante Informationen wie die Authentizierung des Absenders, Zahlungsinformationen (z.B. von Verfahrensgebühren) oder Rückkanalwünschen.
## Wie stimmen sich sendende und empfangende Systeme beim Inhalt einer Einreichung ab?
......@@ -60,7 +60,7 @@ Die Fachschemarefenz ist im Zustellpunkt daher immer einer dazugehörigen Leistu
```
Wenn ein sendendes System die Angaben eines Zustellpunkts ermittelt (bspw. über [GET /destinations/{destinationId}](../apis/delivery-service.mdx#get-/destinations/-destinationId-) oder zukünftig die Routing API), so muss der Fachdatensatz diesem Schema entsprechen.
Wenn ein sendendes System die Angaben eines Zustellpunkts ermittelt (bspw. über [GET /destinations/{destinationId}](../apis/submission-api.mdx#get-/destinations/-destinationId-) oder zukünftig die Routing API), so muss der Fachdatensatz diesem Schema entsprechen.
Wenn mehrere Schemata (bspw. innerhalb des `submissionSchemas` Array) im Zustellpunkt referenziert werden, so muss der Fachdatensatz einem dieser referenzierten Schemata entsprechen.
## Warum muss das sendende System über den Metadatensatz eine Fachschemareferenz mitliefern?
......@@ -82,7 +82,7 @@ Insbesondere wenn ein empfangendes System viele unterschiedliche Schemata über
## Sind Vorgaben für die Anzahl der Anlagen und deren Format möglich?
Aktuell sind keine konkreten Vorgaben für die Anzahl und das Format der Anlagen durch ein empfangendes Sytem über die Angaben im Zustellpunkt möglich.
Aktuell sind keine konkreten Vorgaben für die Anzahl und das Format der Anlagen durch ein empfangendes Sytem über die Angaben im Zustellpunkt möglich.
Aktuell existieren lediglich Vorgaben für die Gesamtgröße einer Einreichung (Fachdatensatz+Anlagen), die den Umfang der Anlagen hinsichtlich der Datengrößen begrenzen.
Für sonstige technische Vorgaben für Anlagen wird aktuell davon ausgegangen, dass die Fachstandards, zu denen ein genutzter Fachdatensatz gehört, technische Vorgaben für Anlagen machen. Ansonsten sollte ein empfangendes System im Mimimum PDF als Format für Anlagen akzeptieren.
......
......@@ -36,35 +36,35 @@ abgebildet. Fachliche schon.
| `type` des technischen Fehlers | Titel laut [httpstatus.es](https://httpstatuses.com/) | Beschreibung |
|------------------------------------------------------------------------|---------------------------------------------------------|--------------|
| https://schema.fitko.de/fit-connect/problems/constraint-violation | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/request-binding-error | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/no-handler-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/problems/missing-request-part | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/missing-request-parameter | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/socket-timeout | 504 Gateway Timeout | |
| https://schema.fitko.de/fit-connect/problems/type-mismatch | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/multipart-error | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/message-not-readable | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/method-not-supported | 405 Method Not Allowed | |
| https://schema.fitko.de/fit-connect/problems/media-type-not-supported | 415 Unsupported Media Type | |
| https://schema.fitko.de/fit-connect/problems/media-type-not-acceptable | 406 Not Acceptable | |
| https://schema.fitko.de/fit-connect/problems/unsupported-operation | 501 Not Implemented | |
| https://schema.fitko.de/fit-connect/problems/invalid-state-transition | 500 Internal Server Error | |
| https://schema.fitko.de/fit-connect/submission-api/problems/constraint-violation | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/request-binding-error | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/no-handler-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/submission-api/problems/missing-request-part | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/missing-request-parameter | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/socket-timeout | 504 Gateway Timeout | |
| https://schema.fitko.de/fit-connect/submission-api/problems/type-mismatch | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/multipart-error | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/message-not-readable | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/method-not-supported | 405 Method Not Allowed | |
| https://schema.fitko.de/fit-connect/submission-api/problems/media-type-not-supported | 415 Unsupported Media Type | |
| https://schema.fitko.de/fit-connect/submission-api/problems/media-type-not-acceptable | 406 Not Acceptable | |
| https://schema.fitko.de/fit-connect/submission-api/problems/unsupported-operation | 501 Not Implemented | |
| https://schema.fitko.de/fit-connect/submission-api/problems/invalid-state-transition | 500 Internal Server Error | |
### Fachliche Fehler
| `type` des fachlichen Fehlers | Titel laut [httpstatus.es](https://httpstatuses.com/) | Beschreibung |
|---------------------------------------------------------------------------|---------------------------------------------------------|--------------|
| https://schema.fitko.de/fit-connect/problems/access-forbidden | 403 Forbidden | |
| https://schema.fitko.de/fit-connect/problems/submission-already-fetched | 410 Gone | |
| https://schema.fitko.de/fit-connect/problems/submission-incomplete | 422 Unprocessable Entity | |
| https://schema.fitko.de/fit-connect/problems/submission-not-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/problems/not-in-acknowledgeable-state | 422 Unprocessable Entity | |
| https://schema.fitko.de/fit-connect/problems/attachment-not-announced | 422 Unprocessable Entity | |
| https://schema.fitko.de/fit-connect/problems/attachment-not-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/problems/destination-not-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/problems/empty-attachment | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/problems/jwk-not-valid | 422 Unprocessable Entity | JWK fachlich nicht zulässig. Details stehen im Feld `detail`. |
| https://schema.fitko.de/fit-connect/submission-api/problems/access-forbidden | 403 Forbidden | |
| https://schema.fitko.de/fit-connect/submission-api/problems/submission-already-fetched | 410 Gone | |
| https://schema.fitko.de/fit-connect/submission-api/problems/submission-incomplete | 422 Unprocessable Entity | |
| https://schema.fitko.de/fit-connect/submission-api/problems/submission-not-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/submission-api/problems/not-in-acknowledgeable-state | 422 Unprocessable Entity | |
| https://schema.fitko.de/fit-connect/submission-api/problems/attachment-not-announced | 422 Unprocessable Entity | |
| https://schema.fitko.de/fit-connect/submission-api/problems/attachment-not-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/submission-api/problems/destination-not-found | 404 Not Found | |
| https://schema.fitko.de/fit-connect/submission-api/problems/empty-attachment | 400 Bad Request | |
| https://schema.fitko.de/fit-connect/submission-api/problems/jwk-not-valid | 422 Unprocessable Entity | JWK fachlich nicht zulässig. Details stehen im Feld `detail`. |
## Verhalten von API Clients
......
......@@ -2,7 +2,7 @@ import React from "react"
import Link from '@docusaurus/Link'
export default ({ to, withMethod='get', children }) => {
const url = `/docs/apis/delivery-service#${withMethod.toLowerCase()}-${to.replace(/[{}]/g, '-')}`
const url = `/docs/apis/submission-api#${withMethod.toLowerCase()}-${to.replace(/[{}]/g, '-')}`
if (children) {
return <Link to={url}>{children}</Link>
} else {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment