diff --git a/public/docs/preorder-api.yaml b/public/docs/preorder-api.yaml index f03e23ea2..d50220191 100644 --- a/public/docs/preorder-api.yaml +++ b/public/docs/preorder-api.yaml @@ -14,6 +14,8 @@ servers: tags: - name: addressdb description: Abfrage von GWR Daten + - name: preorder + description: Informationen zum Netzgebiet und Speichern von Vorbestellungen paths: /addressdb/findAddress: post: @@ -186,6 +188,50 @@ paths: Parameter missing or malformed '401': description: Unauthorized + /preorder: + post: + tags: + - preorder + summary: Vorbestellung registrieren + description: Registriert eine Vorbestellung + operationId: submitPreorder + requestBody: + description: PreorderRequest object + required: true + content: + 'application/json': + schema: + $ref: '#/components/schemas/preorderRequest' + 'application/x-www-form-urlencoded': + schema: + $ref: '#/components/schemas/preorderRequest' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + type: object + properties: + status: + type: string + description: Status string + example: OK + result: + type: object + properties: + code: + type: string + description: Code für Statusabfrage + '400': + description: | + Bad Request + + Parameter missing or malformed + '401': + description: Unauthorized + '404': + description: Adresse oder Wohneinheit nicht gefunden components: schemas: addressComponentSearchRequest: @@ -235,6 +281,81 @@ components: description: Ortschaft required: - street + preorderRequest: + type: object + properties: + type: + type: string + enum: [provision, order] + desciption: Vorbestelltyp (`provision` = Vorsorgeanschluss, `order` = Vollanschluss) + address: + type: object + properties: + street: + type: string + description: Strasse der Anschlussadresse + housenumber: + type: string + description: Hausnummer der Anschlussadresse + zip: + type: string + description: PLZ der Anschlussadresse + city: + type: string + description: Ort der Anschlussadresse + block: + type: string + description: Block der Anschlussadresse + stock: + type: string + description: Stock der Anschlussadresse + stiege: + type: string + description: Stiege der Anschlussadresse + tuer: + type: string + description: Tür der Anschlussadresse + required: + - street + - housenumber + - zip + - city + customer: + type: object + properties: + company: + type: string + description: Firmenname Kunde + uid: + type: string + description: UID (wenn Firmenkunde) + firstname: + type: string + description: Vorname Kunde + lastname: + type: string + description: Nachname Kunde + street: + type: string + description: Straße Kunde + zip: + type: string + description: PLZ Kunde + city: + type: string + description: Ort Kunde + phone: + type: string + description: Telefonnummer Kunde + email: + type: string + description: Emailadresse Kunde + required: + - firstname + - lastname + - street + - zip + - city securitySchemes: api_key_header: type: apiKey