Added parameters to addressdb api endpoints and changed them to POST

This commit is contained in:
Frank Schubert
2022-09-28 18:04:24 +02:00
parent 55c37bdb37
commit 7147c25737
4 changed files with 170 additions and 101 deletions

View File

@@ -2,9 +2,6 @@ openapi: 3.0.1
info:
title: thetool Preorder API
description: API Dokumentation für thetool Vorbestellung
contact:
name: thetool Development Team
email: thetool-api-support@xinon.at
license:
name: Apache 2.0 License
url: http://www.apache.org/licenses/LICENSE-2.0.html
@@ -14,34 +11,38 @@ servers:
- url: https://thetool.xinon.at/api/v1
tags:
- name: addressdb
description: Abfrage von GWR Daten
description: Abfrage von GWR-Daten
- name: preorder
description: Informationen zum Netzgebiet und Speichern von Vorbestellungen
paths:
/addressdb/findAddress:
post:
get:
tags:
- addressdb
summary: Adressen suchen
description: Sucht nach Adressen
description: Sucht nach Adressen. Retourniert Adressen mit Wohneinheiten
operationId: findAddresses
requestBody:
description: |
addressSearchRequest object
Parameter müssen mindestens 3 Zeichen lang sein
`street` ist erforderlich
`zip` muss mindestens 2 Zeichen lang sein
required: true
content:
'application/json':
schema:
$ref: '#/components/schemas/Address'
'application/x-www-form-urlencoded':
schema:
$ref: '#/components/schemas/Address'
parameters:
- name: street
description: Straße Suchbegriff
in: query
schema:
type: string
- name: zip
description: Postleitzahl Suchbegriff
in: query
schema:
type: string
- name: city
description: Stadt Suchbegriff
in: query
schema:
type: string
- name: housenumber
description: Hausnummer Suchbegriff
in: query
schema:
type: string
responses:
'200':
description: Successful operation
@@ -67,22 +68,28 @@ paths:
'401':
description: Unauthorized
/addressdb/findStreet:
post:
get:
tags:
- addressdb
summary: Straßen suchen
description: Sucht nach Straßen
operationId: findStreets
requestBody:
description: addressComponentSearchRequest object. Parameter `search` muss mindestens 3 Zeichen lang sein.
required: true
content:
'application/json':
schema:
$ref: '#/components/schemas/addressComponentSearchRequest'
'application/x-www-form-urlencoded':
schema:
$ref: '#/components/schemas/addressComponentSearchRequest'
parameters:
- name: street
description: Straße Suchbegriff
in: query
schema:
type: string
- name: zip
description: Postleitzahl Suchbegriff
in: query
schema:
type: string
- name: city
description: Stadt Suchbegriff
in: query
schema:
type: string
responses:
'200':
description: Successful operation
@@ -108,22 +115,18 @@ paths:
'401':
description: Unauthorized
/addressdb/findZip:
post:
get:
tags:
- addressdb
summary: Postleitzahlen suchen
description: Sucht nach Postleitzahlen
operationId: findZips
requestBody:
description: zipSearchRequest object. Parameter `search` muss mindestens 2 Zeichen lang sein.
required: true
content:
'application/json':
schema:
$ref: '#/components/schemas/zipComponentSearchRequest'
'application/x-www-form-urlencoded':
schema:
$ref: '#/components/schemas/zipComponentSearchRequest'
parameters:
- name: zip
description: Postleitzahl Suchbegriff
in: query
schema:
type: string
responses:
'200':
description: Successful operation
@@ -149,22 +152,23 @@ paths:
'401':
description: Unauthorized
/addressdb/findCity:
post:
get:
tags:
- addressdb
summary: Ortschaften suchen
description: Sucht nach Ortschaften
summary: Gemeinden suchen
description: Sucht nach Gemeinden
operationId: findCity
requestBody:
description: addressComponentSearchRequest object. Parameter `search` muss mindestens 3 Zeichen lang sein.
required: true
content:
'application/json':
schema:
$ref: '#/components/schemas/addressComponentSearchRequest'
'application/x-www-form-urlencoded':
schema:
$ref: '#/components/schemas/addressComponentSearchRequest'
parameters:
- name: zip
description: Postleitzahl Suchbegriff
in: query
schema:
type: string
- name: city
description: Stadt Suchbegriff
in: query
schema:
type: string
responses:
'200':
description: Successful operation
@@ -315,20 +319,6 @@ paths:
# description: Vorbestellung nicht gefunden
components:
schemas:
addressComponentSearchRequest:
type: object
properties:
search:
type: string
description: Suchbegriff von mindestens 3 Zeichen Länge
minLength: 3
zipComponentSearchRequest:
type: object
properties:
search:
type: string
description: Suchbegriff von mindestens 2 Zeichen Länge
minLength: 2
Zips:
type: array
items:
@@ -359,7 +349,7 @@ components:
description: PLZ
city:
type: string
description: Ortschaft
description: Gemeinde
required:
- street
addressResponse:
@@ -434,7 +424,7 @@ components:
| apartment | Wohneinheit in Mehrparteienhaus
| business | Gewerbebetrieb |
connectionCount:
type: int
type: integer
default: 1
description: Anzahl Anschlüsse für Rabatt bei mehreren Anschlüssen in Mehrfamilienhaus
nullable: true
@@ -558,13 +548,12 @@ components:
type: object
properties:
id:
type: int
type: integer
description: status ID
example: 220
text:
type: string
description: Statustext
example: Tiefbau abgeschlossen, Leitungsbau ausständig
securitySchemes:
api_key_header: